Class AbstractSettings

    • Constructor Detail

      • AbstractSettings

        public AbstractSettings()
    • Method Detail

      • getDateFormat

        public java.lang.String getDateFormat()
        Description copied from interface: ISettings
        The date format to use when displaying dates in string format.
        Specified by:
        getDateFormat in interface ISettings
        Returns:
        Date format. Default is month/day/year.
        See Also:
        DateFormat, DateFormatSymbols
      • getHourDateFormat

        public java.lang.String getHourDateFormat()
        Description copied from interface: ISettings
        The date format to use when displaying dates in string format in the hours view.
        Specified by:
        getHourDateFormat in interface ISettings
        Returns:
        Date format. Default is month/day/year/ hh:mm.
        See Also:
        DateFormat, DateFormatSymbols
      • getMinuteDateFormat

        public java.lang.String getMinuteDateFormat()
        Description copied from interface: ISettings2
        The date format to use when displaying dates in string format in the minutes view.
        Specified by:
        getMinuteDateFormat in interface ISettings2
        Returns:
        Date format. Default is month/day/year/ hh:mm:ss.
        See Also:
        DateFormat, DateFormatSymbols
      • getWeekHeaderTextDisplayFormatTop

        public java.lang.String getWeekHeaderTextDisplayFormatTop()
        Description copied from interface: ISettings
        The SimpleDateFormat of the text shown in the top header for the week view.
        Specified by:
        getWeekHeaderTextDisplayFormatTop in interface ISettings
        Returns:
        SimpleDateFormat string. May not be null.
      • getMonthHeaderTextDisplayFormatTop

        public java.lang.String getMonthHeaderTextDisplayFormatTop()
        Description copied from interface: ISettings
        The SimpleDateFormat of the text shown in the top header for the month view.
        Specified by:
        getMonthHeaderTextDisplayFormatTop in interface ISettings
        Returns:
        SimpleDateFormat string. May not be null.
      • getDayHeaderTextDisplayFormatTop

        public java.lang.String getDayHeaderTextDisplayFormatTop()
        Description copied from interface: ISettings
        The SimpleDateFormat of the text shown in the top header for the day view.
        Specified by:
        getDayHeaderTextDisplayFormatTop in interface ISettings
        Returns:
        SimpleDateFormat string. May not be null.
      • getMinuteHeaderTextDisplayFormatTop

        public java.lang.String getMinuteHeaderTextDisplayFormatTop()
        Description copied from interface: ISettings2
        The SimpleDateFormat of the text shown in the top header for the minute view.
        Specified by:
        getMinuteHeaderTextDisplayFormatTop in interface ISettings2
        Returns:
        SimpleDateFormat string. May not be null.
      • getYearHeaderTextDisplayFormatTop

        public java.lang.String getYearHeaderTextDisplayFormatTop()
        Description copied from interface: ISettings
        The SimpleDateFormat of the text shown in the top header for the year view.
        Specified by:
        getYearHeaderTextDisplayFormatTop in interface ISettings
        Returns:
        SimpleDateFormat string. May not be null.
      • getDayHeaderTextDisplayFormatBottom

        public java.lang.String getDayHeaderTextDisplayFormatBottom()
        Description copied from interface: ISettings
        The SimpleDateFormat of the text shown in the bottom header for the day view.
        Specified by:
        getDayHeaderTextDisplayFormatBottom in interface ISettings
        Returns:
        SimpleDateFormat string. May not be null.
      • getMinuteHeaderTextDisplayFormatBottom

        public java.lang.String getMinuteHeaderTextDisplayFormatBottom()
        Description copied from interface: ISettings2
        The SimpleDateFormat of the text shown in the bottom header for the minute view.
        Specified by:
        getMinuteHeaderTextDisplayFormatBottom in interface ISettings2
        Returns:
        SimpleDateFormat string. May not be null.
      • getMonthHeaderTextDisplayFormatBottom

        public java.lang.String getMonthHeaderTextDisplayFormatBottom()
        Description copied from interface: ISettings
        The SimpleDateFormat of the text shown in the bottom header for the month view.
        Specified by:
        getMonthHeaderTextDisplayFormatBottom in interface ISettings
        Returns:
        SimpleDateFormat string. May not be null.
      • getWeekHeaderTextDisplayFormatBottom

        public java.lang.String getWeekHeaderTextDisplayFormatBottom()
        Description copied from interface: ISettings
        The SimpleDateFormat of the text shown in the bottom header for the week view.
        Specified by:
        getWeekHeaderTextDisplayFormatBottom in interface ISettings
        Returns:
        SimpleDateFormat string. May not be null.
      • getYearHeaderTextDisplayFormatBottom

        public java.lang.String getYearHeaderTextDisplayFormatBottom()
        Description copied from interface: ISettings
        The SimpleDateFormat of the text shown in the bottom header for the year view.
        Specified by:
        getYearHeaderTextDisplayFormatBottom in interface ISettings
        Returns:
        SimpleDateFormat string. May not be null.
      • getDefaultEventColor

        public org.eclipse.swt.graphics.Color getDefaultEventColor()
        Description copied from interface: ISettings
        The default color for an event when there is none set on the event itself.
        Specified by:
        getDefaultEventColor in interface ISettings
        Returns:
        Event color. Default is gray.
      • getDefaultGradientEventColor

        public org.eclipse.swt.graphics.Color getDefaultGradientEventColor()
        Description copied from interface: ISettings
        The default gradient color for an event (if gradients are turned on).
        Specified by:
        getDefaultGradientEventColor in interface ISettings
        Returns:
        Event gradient color. Default is white-ish.
      • showPropertiesMenuOption

        public boolean showPropertiesMenuOption()
        Description copied from interface: ISettings
        Whether to show the properties menu option in the right click menu. When clicked the event will be reported to IGanttEventListener.
        Specified by:
        showPropertiesMenuOption in interface ISettings
        Returns:
        True if to show the menu item. Default is true.
        See Also:
        IGanttEventListener#eventPropertiesSelected(GanttEvent)
      • adjustForLetters

        public boolean adjustForLetters()
        Description copied from interface: ISettings
        Letters have different width. If turned on, this will try to make all day letters appear centered, whereas if turned off, letter width will be ignored.
        Specified by:
        adjustForLetters in interface ISettings
        Returns:
        true if to adjust for letter widths. Default is true.
      • enableAutoScroll

        public boolean enableAutoScroll()
        Description copied from interface: ISettings
        Whether to enable auto scroll which causes the chart to scroll either left or right when events are dragged or resized beyond the bounds of the chart.
        Specified by:
        enableAutoScroll in interface ISettings
        Returns:
        true if to enable. Default is true.
      • enableResizing

        public boolean enableResizing()
        Description copied from interface: ISettings
        Whether event-resizing is turned on or off.
        Specified by:
        enableResizing in interface ISettings
        Returns:
        true if turned on. If turned off, event resizing is not possible. Default is true.
      • getDayHorizontalSpacing

        public int getDayHorizontalSpacing()
        Description copied from interface: ISettings
        Returns the spacing from the top where the day letter is printed.
        Specified by:
        getDayHorizontalSpacing in interface ISettings
        Returns:
        Pixel value. Default is 4.
      • getDayVerticalSpacing

        public int getDayVerticalSpacing()
        Description copied from interface: ISettings
        Returns the space from the left of the border where the day letter is printed.
        Specified by:
        getDayVerticalSpacing in interface ISettings
        Returns:
        Pixel value. Default is 3.
      • getDayWidth

        public int getDayWidth()
        Description copied from interface: ISettings
        Returns the width for each day that is drawn. Zoom levels use multipliers with these numbers.
        Specified by:
        getDayWidth in interface ISettings
        Returns:
        Pixel value. Default is 16.
      • getEventHeight

        public int getEventHeight()
        Description copied from interface: ISettings
        Returns the height for each event, including checkpoints.
        Specified by:
        getEventHeight in interface ISettings
        Returns:
        Pixel value. Default is 12.
      • getEventPercentageBarHeight

        public int getEventPercentageBarHeight()
        Description copied from interface: ISettings
        Returns the height of the bar that is drawn inside the events that represents the percentage done.

        Note: If the event height is an even number, this number does best being odd, and vice versa.

        Specified by:
        getEventPercentageBarHeight in interface ISettings
        Returns:
        Pixel value. Default is 3.
      • getHeaderMonthHeight

        public int getHeaderMonthHeight()
        Description copied from interface: ISettings
        Returns the height of the header section that displays the month names.
        Specified by:
        getHeaderMonthHeight in interface ISettings
        Returns:
        Pixel value. Default is 18.
      • getHeaderDayHeight

        public int getHeaderDayHeight()
        Description copied from interface: ISettings
        Returns the height of the header section that displays the days.
        Specified by:
        getHeaderDayHeight in interface ISettings
        Returns:
        Pixel value. Default is 18.
      • getMonthDayWidth

        public int getMonthDayWidth()
        Description copied from interface: ISettings
        Returns the width for each day that is drawn in the monthly view. Zoom levels use multipliers with these numbers.
        Specified by:
        getMonthDayWidth in interface ISettings
        Returns:
        Pixel value. Default is 6.
      • getResizeBorderSensitivity

        public int getResizeBorderSensitivity()
        Description copied from interface: ISettings
        Returns the number of pixels off each side of an event that is the area for which the resize cursor is shown. If people find it hard to grab events, increase this number.
        Specified by:
        getResizeBorderSensitivity in interface ISettings
        Returns:
        Pixel value. Default is 3.
      • getTextSpacerConnected

        public int getTextSpacerConnected()
        Description copied from interface: ISettings
        Returns the space between the actual event and the text that is written after the event when the event has a connecting line extending from it.
        Specified by:
        getTextSpacerConnected in interface ISettings
        Returns:
        Pixel value. Default is 9.
      • getTextSpacerNonConnected

        public int getTextSpacerNonConnected()
        Description copied from interface: ISettings
        Returns the space between the actual event and the text that is written after the event when the event has no connecting line extending from it.
        Specified by:
        getTextSpacerNonConnected in interface ISettings
        Returns:
        Pixel value. Default is 9.
      • getYearMonthDayWidth

        public int getYearMonthDayWidth()
        Description copied from interface: ISettings
        Returns the width for each day that is drawn in the yearly view. Zoom levels use multipliers with these numbers.

        WARNING: Setting this value below 3 will cause an infinite loop and probable application crash. This happens as internal size calculations end up on 0 width (rounded) values.

        Specified by:
        getYearMonthDayWidth in interface ISettings
        Returns:
        Pixel value. Default is 3.
      • moveLinkedEventsWhenEventsAreMoved

        public boolean moveLinkedEventsWhenEventsAreMoved()
        Description copied from interface: ISettings
        Whether users can hold down SHIFT (or whatever the settings say) to move an event, and all dependent events will move with the selected event.
        Specified by:
        moveLinkedEventsWhenEventsAreMoved in interface ISettings
        Returns:
        true if to move all linked events. Default is true.
        See Also:
        ISettings.getDragAllModifierKey()
      • showArrows

        public boolean showArrows()
        Description copied from interface: ISettings
        If to draw arrows on connecting lines or not.
        Specified by:
        showArrows in interface ISettings
        Returns:
        true if to show arrowheads on connecting lines. Default is true.
      • showBarsIn3D

        public boolean showBarsIn3D()
        Description copied from interface: ISettings
        Whether to show events in 3D (meaning, a drop shadow is drawn below and to the right of the event)
        Specified by:
        showBarsIn3D in interface ISettings
        Returns:
        true if to show events in 3D. Default is true.
      • showBoldScopeText

        public boolean showBoldScopeText()
        Description copied from interface: ISettings
        Whether the name of the scope is drawn in bold or plain.
        Specified by:
        showBoldScopeText in interface ISettings
        Returns:
        true if bold. Default is true.
      • showDateTips

        public boolean showDateTips()
        Description copied from interface: ISettings
        Whether to show date tooltips when events are moved or resized.
        Specified by:
        showDateTips in interface ISettings
        Returns:
        true if to show tooltips. Default is true.
      • showPlannedDates

        public boolean showPlannedDates()
        Description copied from interface: ISettings
        Whether to draw lines that show where the revised dates would have been on the chart (assuming revised dates are set).
        Specified by:
        showPlannedDates in interface ISettings
        Returns:
        true if to draw lines for the revised dates. Default is false.
      • showNumberOfDaysOnBars

        public boolean showNumberOfDaysOnBars()
        Description copied from interface: ISettings
        Whether to show a "plaque" on the event bars that displays a number of how many days the event spans over.
        Specified by:
        showNumberOfDaysOnBars in interface ISettings
        Returns:
        true if to show the plaque. Default is false.
      • showOnlyDependenciesForSelectedItems

        public boolean showOnlyDependenciesForSelectedItems()
        Description copied from interface: ISettings
        Whether to only show the dependency connections only when an event is selected, as opposed to always showing the lines.
        Specified by:
        showOnlyDependenciesForSelectedItems in interface ISettings
        Returns:
        true if to show them only on selections. Default is false.
      • showToolTips

        public boolean showToolTips()
        Description copied from interface: ISettings
        Whether to show tooltips when mouse is lingering over events.
        Specified by:
        showToolTips in interface ISettings
        Returns:
        true if to show tooltips. Default is true.
      • getEventSpacer

        public int getEventSpacer()
        Description copied from interface: ISettings
        Returns the vertical space between each event.
        Specified by:
        getEventSpacer in interface ISettings
        Returns:
        Pixel value. Default is 12.
      • enableDragAndDrop

        public boolean enableDragAndDrop()
        Description copied from interface: ISettings
        Whether event drag-and-drop is turned on or off.
        Specified by:
        enableDragAndDrop in interface ISettings
        Returns:
        true if turned on. If turned off, drag and drop is not possible. Default is true.
      • showZoomLevelBox

        public boolean showZoomLevelBox()
        Description copied from interface: ISettings
        Whether when a user zooms in or out (only via CTRL (or whatever the settings say) + Scroll Wheel) to display a box in the bottom left corner that shows the zoom level.
        Specified by:
        showZoomLevelBox in interface ISettings
        Returns:
        true if to show a box when zooming. Default is true.
        See Also:
        ISettings.getZoomWheelModifierKey()
      • allowInfiniteHorizontalScrollBar

        public boolean allowInfiniteHorizontalScrollBar()
        Description copied from interface: ISettings
        Whether to mimic Microsoft © Project's infinite scrollbar which lets users scroll into the future or past indefinitely. If turned off, the scrollbar will reflect the range of the oldest event's start date, to the latest event end date.
        Specified by:
        allowInfiniteHorizontalScrollBar in interface ISettings
        Returns:
        true if to turn on infinite scrollbar. Default is true.
      • showResizeDateTipOnBorders

        public boolean showResizeDateTipOnBorders()
        Description copied from interface: ISettings
        Whether the date tooltip box (if turned on) when resizing should hug the border of the event on the left or right side or if it should be simply stick somewhat to the event resize location.
        Specified by:
        showResizeDateTipOnBorders in interface ISettings
        Returns:
        true if to stick to the resize sides. Default is true.
      • allowBlankAreaDragAndDropToMoveDates

        public boolean allowBlankAreaDragAndDropToMoveDates()
        Description copied from interface: ISettings
        If true, it lets the move forwards or backwards in time by clicking in a "blank" area and dragging the mouse. Similar to the hand tool in Photoshop or Acrobat.
        Specified by:
        allowBlankAreaDragAndDropToMoveDates in interface ISettings
        Returns:
        true if to allow clear-area drag. Default is true.
      • allowBlankAreaVerticalDragAndDropToMoveChart

        public boolean allowBlankAreaVerticalDragAndDropToMoveChart()
        Description copied from interface: ISettings
        Relies on ISettings.allowBlankAreaDragAndDropToMoveDates() being true. If so, this will additionally determine if the user can blank-area drag the chart in a vertical manner to move the chart in that direction as well.

        Holding down the shift key will double the speed of the vertical drag

        Specified by:
        allowBlankAreaVerticalDragAndDropToMoveChart in interface ISettings
        Returns:
        true to allow clear-area vertical drag. Default is false (as it can be confusing at first try).
      • drawSelectionMarkerAroundSelectedEvent

        public boolean drawSelectionMarkerAroundSelectedEvent()
        Description copied from interface: ISettings
        If true, draws a dotted selection marker around the currently selected event to visualize the selection.
        Specified by:
        drawSelectionMarkerAroundSelectedEvent in interface ISettings
        Returns:
        true if to show a selection marker. Default is true.
      • showMenuItemsOnRightClick

        public boolean showMenuItemsOnRightClick()
        Description copied from interface: ISettings
        Whether to show any menu items at all when right clicking an event or a chart.
        Specified by:
        showMenuItemsOnRightClick in interface ISettings
        Returns:
        true if to show menu items on right click. Default is true.
      • getArrowHeadEventSpacer

        public int getArrowHeadEventSpacer()
        Description copied from interface: ISettings
        Returns the space between the head of the dependency arrowhead and the event.
        Specified by:
        getArrowHeadEventSpacer in interface ISettings
        Returns:
        pixel space. Default is 1.
      • getArrowHeadVerticalAdjuster

        public int getArrowHeadVerticalAdjuster()
        Description copied from interface: ISettings
        If you for some reason wish to move the arrow head up or down vertically, setting a number here will modify the vertical "extra".
        Specified by:
        getArrowHeadVerticalAdjuster in interface ISettings
        Returns:
        pixel length. Default is 0.
      • getStartupCalendarDate

        public java.util.Calendar getStartupCalendarDate()
        Description copied from interface: ISettings
        Returns the position that the calendar should start on when first created. If null, the current date will be used. Please remember to use a Locale when you create your Calendar object, ideally the same as used in the settings ISettings.getDefaultLocale().
        Specified by:
        getStartupCalendarDate in interface ISettings
        Returns:
        Calendar, or null.
      • getCalendarStartupDateOffset

        public int getCalendarStartupDateOffset()
        Description copied from interface: ISettings
        Date offset of the startup date that the calendar should start at. By default, you probably do not want this to be 0 as that will hug the leftmost side of the widget. It's suggested to set a negative value.
        Specified by:
        getCalendarStartupDateOffset in interface ISettings
        Returns:
        date offset in number of days. Default is -4.
      • getMoveAreaNegativeSensitivity

        public int getMoveAreaNegativeSensitivity()
        Description copied from interface: ISettings
        Returns the number of pixels off each side of an event towards the center of it that is ignored when trying to move an event. This is to help resize distinguish from a move cursor and to help users find the two different areas.
        Specified by:
        getMoveAreaNegativeSensitivity in interface ISettings
        Returns:
        Pixel value. Default is 6. Remember that this value is handled in a negative calculation, but it should be a positive value.
      • enableZooming

        public boolean enableZooming()
        Description copied from interface: ISettings
        If zooming in/out should be enabled or disabled.
        Specified by:
        enableZooming in interface ISettings
        Returns:
        true if enabled. Default is true.
      • getLockImage

        public org.eclipse.swt.graphics.Image getLockImage()
        Description copied from interface: ISettings
        Returns the image used for displaying something as locked in the GANTT chart.
        Specified by:
        getLockImage in interface ISettings
        Returns:
        Image or null. Default is the lock_tiny.gif image in the package.
      • getTextDisplayFormat

        public java.lang.String getTextDisplayFormat()
        Description copied from interface: ISettings
        Decides how the string behind the event is displayed. You may override this individually by setting the GanttEvent parameter by the same name.
        • #name# = Name of event
        • #pc# = Percentage complete
        • #sd# = Start date
        • #ed# = End date
        • #rs# = Revised start date
        • #re# = Revised end date
        • #days# = Number of days event spans over
        • #reviseddays# = Number of revised days event spans over
        Specified by:
        getTextDisplayFormat in interface ISettings
        Returns:
        String format. Default is "#name# (#pc#%)"
        See Also:
        GanttEvent.setTextDisplayFormat(String)
      • getRevisedLineSpacer

        public int getRevisedLineSpacer()
        Description copied from interface: ISettings
        The distance from the event top (and event bottom) that is used to draw the line portraying revised start and end dates.
        Specified by:
        getRevisedLineSpacer in interface ISettings
        Returns:
        Pixel spacing. Default is 3.
      • getDefaultAdvandedTooltipHelpImage

        public org.eclipse.swt.graphics.Image getDefaultAdvandedTooltipHelpImage()
        Description copied from interface: ISettings
        The default help image used in the advanced tooltip. Null if none.
        Specified by:
        getDefaultAdvandedTooltipHelpImage in interface ISettings
        Returns:
        Image or null. Default is null.
      • getDefaultAdvandedTooltipImage

        public org.eclipse.swt.graphics.Image getDefaultAdvandedTooltipImage()
        Description copied from interface: ISettings
        The default image used in the advanced tooltip. Null if none.
        Specified by:
        getDefaultAdvandedTooltipImage in interface ISettings
        Returns:
        Image or null. Default is null.
      • roundHourlyEventsOffToNearestHour

        public boolean roundHourlyEventsOffToNearestHour()
        Description copied from interface: ISettings
        Whether to round off minutes on events to nearest hour.
        Specified by:
        roundHourlyEventsOffToNearestHour in interface ISettings
        Returns:
        true if yes. Default is false.
      • getDefaultAdvancedTooltipHelpText

        public java.lang.String getDefaultAdvancedTooltipHelpText()
        Description copied from interface: ISettings
        The default help text shown in the advanced tooltip.
        Specified by:
        getDefaultAdvancedTooltipHelpText in interface ISettings
        Returns:
        String or null. Default is null.
      • getDefaultAdvancedTooltipTitle

        public java.lang.String getDefaultAdvancedTooltipTitle()
        Description copied from interface: ISettings
        The default title text shown in the advanced tooltip.
        Specified by:
        getDefaultAdvancedTooltipTitle in interface ISettings
        Returns:
        String or null. Default is null.
      • getDefaultAdvancedTooltipTextExtended

        public java.lang.String getDefaultAdvancedTooltipTextExtended()
        Description copied from interface: ISettings
        The default extended tooltip shown in the advanced tooltip. Extended tooltips are used when the GanttEvent has revised dates.
        Specified by:
        getDefaultAdvancedTooltipTextExtended in interface ISettings
        Returns:
        String or null. Default is a text showing the dates, revised dates and percentage complete.
      • getDefaultAdvancedTooltipText

        public java.lang.String getDefaultAdvancedTooltipText()
        Description copied from interface: ISettings
        The default tooltip shown in the advanced tooltip. Normal tooltips are used when the GanttEvent has no revised dates and also for scopes, images and checkpoints.
        Specified by:
        getDefaultAdvancedTooltipText in interface ISettings
        Returns:
        String or null. Default is a text showing the dates and percentage complete.
      • getTodayLineStyle

        public int getTodayLineStyle()
        Description copied from interface: ISettings
        The default line style of the line showing where today's date is.
        Specified by:
        getTodayLineStyle in interface ISettings
        Returns:
        SWT.LINE_ style. Default is SWT.LINE_SOLID.
      • getTodayLineWidth

        public int getTodayLineWidth()
        Description copied from interface: ISettings
        The width of the line showing where today's date is.
        Specified by:
        getTodayLineWidth in interface ISettings
        Returns:
        line width. Default is 2.
      • getTodayLineVerticalOffset

        public int getTodayLineVerticalOffset()
        Description copied from interface: ISettings
        The vertical offset from the top for the today line calculated from the bottom part of the header.
        Specified by:
        getTodayLineVerticalOffset in interface ISettings
        Returns:
        Vertical offset. Default is the height of the bottom header.
      • getVerticalTickMarkOffset

        public int getVerticalTickMarkOffset()
        Description copied from interface: ISettings
        The vertical offset from top for the tick marks in the top header.
        Specified by:
        getVerticalTickMarkOffset in interface ISettings
        Returns:
        Default is the height of the top header minus 5.
      • drawHeader

        public boolean drawHeader()
        Description copied from interface: ISettings
        Whether to draw the header or not. If this returns false, all header-related settings will be ignored.
        Specified by:
        drawHeader in interface ISettings
        Returns:
        true if to draw header. Default is true.
      • getEventsTopSpacer

        public int getEventsTopSpacer()
        Description copied from interface: ISettings
        Top spacer between the top pixel and the beginning of the first event. The top pixel will be either the height of the header (if drawn) or 0 if the header is not drawn.
        Specified by:
        getEventsTopSpacer in interface ISettings
        Returns:
        top spacer value. Default is 12.
      • getEventsBottomSpacer

        public int getEventsBottomSpacer()
        Description copied from interface: ISettings
        Bottom spacer between the bottom event and the section divider when using GanttSections. For non GanttSection usage, this setting is ignored.
        Specified by:
        getEventsBottomSpacer in interface ISettings
        Returns:
        bottom spacer value. Default is 12.
      • getSectionBarDividerHeight

        public int getSectionBarDividerHeight()
        Description copied from interface: ISettings
        The height of the bar drawn between sections.
        Specified by:
        getSectionBarDividerHeight in interface ISettings
        Returns:
        height. Default is 5.
      • getSectionBarWidth

        public int getSectionBarWidth()
        Description copied from interface: ISettings
        Width of the section bar.
        Specified by:
        getSectionBarWidth in interface ISettings
        Returns:
        width. Default is 20.
      • getMinimumSectionHeight

        public int getMinimumSectionHeight()
        Description copied from interface: ISettings
        Minimum height of sections. Normally the minimum height is calculated by:

        1. Space the section name takes up vertically
        2. Space all contained events take up including various event spacers.

        If the two calculations above are smaller than the value returned by this method, the height returned from this method will be used.

        Specified by:
        getMinimumSectionHeight in interface ISettings
        Returns:
        minimum section height (larger or equals to zero). Default is 80.
      • drawFullPercentageBar

        public boolean drawFullPercentageBar()
        Description copied from interface: ISettings
        The percentage bar always draws as a line in the center of the event but normally it only draws the part that displays the % complete. If this returns true it will draw that part, but also the remainder. You can set the color for the remainder different than that from the actual percentage complete as well.
        Specified by:
        drawFullPercentageBar in interface ISettings
        Returns:
        true if to draw the entire bar. Default is true.
      • getPercentageBarAlpha

        public int getPercentageBarAlpha()
        Description copied from interface: ISettings
        The Alpha level of the percentage complete bar. Only draws if Alpha is turned on.
        Specified by:
        getPercentageBarAlpha in interface ISettings
        Returns:
        Alpha value. Default is 255.
      • getRemainderPercentageBarAlpha

        public int getRemainderPercentageBarAlpha()
        Description copied from interface: ISettings
        The Alpha level of the remaining percentage complete bar. Only draws if Alpha is turned on.
        Specified by:
        getRemainderPercentageBarAlpha in interface ISettings
        Returns:
        Alpha value. Default is 70.
      • getAdvancedTooltipXOffset

        public int getAdvancedTooltipXOffset()
        Description copied from interface: ISettings
        Advanced tooltips are shells and by default they pop up where the mouse pointer is. To not block the pointer, an offset is used.
        Specified by:
        getAdvancedTooltipXOffset in interface ISettings
        Returns:
        horizontal offset. Default is 15.
      • getZoomWheelModifierKey

        public int getZoomWheelModifierKey()
        Description copied from interface: ISettings
        The keyboard modifier key combined with the scroll wheel to make the chart zoom.
        Specified by:
        getZoomWheelModifierKey in interface ISettings
        Returns:
        Keyboard modifier. Default is SWT.MOD1 (usually the CTRL key)
      • getDefaultLocale

        public java.util.Locale getDefaultLocale()
        Description copied from interface: ISettings
        Locale used for calendars and wherever needed.
        Specified by:
        getDefaultLocale in interface ISettings
        Returns:
        Locale. Default is Locale.getDefault().
      • getUseAdvancedTooltips

        public boolean getUseAdvancedTooltips()
        Description copied from interface: ISettings
        Whether to use Advanced Tooltips by default.
        Specified by:
        getUseAdvancedTooltips in interface ISettings
        Returns:
        True whether to use advanced tooltips. Default is true.
      • useSplitArrowConnections

        public boolean useSplitArrowConnections()
        Description copied from interface: ISettings
        If you plan on using reverse dependencies, you may want to flag this to true. This makes normal connections draw the arrow to the top left corner of the target event, and if it's a reverse dependency, it draw the arrow to the bottom left of target events. That way any overlapping event don't have arrows drawing in the exact same spot which makes it much easier to view the chart.
        Specified by:
        useSplitArrowConnections in interface ISettings
        Returns:
        true to split arrows. Default is false.
      • getReverseDependencyLineHorizontalSpacer

        public int getReverseDependencyLineHorizontalSpacer()
        Description copied from interface: ISettings
        If you plan on using reverse dependencies, this value will be interesting. If this value returns 0 and you have both a normal-direction dependency and a reverse one, their vertical lines will overlap. By setting this value to greater than zero that vertical line will be spaced out for reverse dependencies. The value is how much extra it will be spaced.
        Specified by:
        getReverseDependencyLineHorizontalSpacer in interface ISettings
        Returns:
        spacer value. Default is 2.
      • drawVerticalLines

        public boolean drawVerticalLines()
        Description copied from interface: ISettings
        The vertical lines are the lines that divide days and weeks etc.
        Specified by:
        drawVerticalLines in interface ISettings
        Returns:
        true if to draw vertical lines. Default is true.
        See Also:
        GanttComposite#setDrawVerticalLinesOverride(Boolean)
      • drawHorizontalLines

        public boolean drawHorizontalLines()
        Description copied from interface: ISettings
        Whether to draw horizontal lines between the events. Useful for where you have a tree/table on the left and wish events to be easier to see when they are lined up with the tree items.
        Specified by:
        drawHorizontalLines in interface ISettings
        Returns:
        true to show horizontal lines. Default is false;
        See Also:
        GanttComposite#setDrawHorizontalLinesOverride(Boolean)
      • getSectionSide

        public int getSectionSide()
        Description copied from interface: ISettings
        Which side the section bar should be drawn on.

        You may use one of SWT.LEFT or SWT.RIGHT.
        Specified by:
        getSectionSide in interface ISettings
        Returns:
        section bar side. Default is SWT.LEFT.
      • drawLockedDateMarks

        public boolean drawLockedDateMarks()
        Description copied from interface: ISettings
        When dates are locked down to a certain day, the chart will draw a special marker on the lock start and end dates to point out that it's locked between certain constraints.
        Specified by:
        drawLockedDateMarks in interface ISettings
        Returns:
        Whether to draw markers for date-range-locked events. Default is true.
      • showDateTipsOnScrolling

        public boolean showDateTipsOnScrolling()
        Description copied from interface: ISettings
        Whether to show a date tooltip when scrolling horizontally (changing dates) and vertically. The tooltip will show just above the bottom horizontal toolbar. Note that if showDateTips() returns false, this tip will not show.
        Specified by:
        showDateTipsOnScrolling in interface ISettings
        Returns:
        true whether to show date tooltips when scrolling through dates. Default is true.
        See Also:
        ISettings.showDateTips()
      • drawFillsToBottomWhenUsingGanttSections

        public boolean drawFillsToBottomWhenUsingGanttSections()
        Description copied from interface: ISettings
        Whether to draw fills and vertical lines etc to the bottom when GanttSections are used.
        Specified by:
        drawFillsToBottomWhenUsingGanttSections in interface ISettings
        Returns:
        true to draw everything all the way down. Default is false.
      • drawGanttSectionBarToBottom

        public boolean drawGanttSectionBarToBottom()
        Description copied from interface: ISettings
        Whether the GanttSection bar should draw all the way down or not.
        Specified by:
        drawGanttSectionBarToBottom in interface ISettings
        Returns:
        true to draw all the way down. Default is false.
      • lockHeaderOnVerticalScroll

        public boolean lockHeaderOnVerticalScroll()
        Description copied from interface: ISettings
        Whether the header should always be visible regardless of vertical scroll position. Basically a "fixed header" feature.
        Specified by:
        lockHeaderOnVerticalScroll in interface ISettings
        Returns:
        true whether to lock the header. Default is false.
      • allowScopeMenu

        public boolean allowScopeMenu()
        Description copied from interface: ISettings
        Whether scopes can show a right click menu or not. By default scopes are non-active objects that simply draw according to their children. By allowing a menu to be shown on the scope you can still perform custom events if you so wish (such as show/hide all children).
        Specified by:
        allowScopeMenu in interface ISettings
        Returns:
        true to allow menus on scopes. Default is false.
        See Also:
        GanttEvent.getMenu(), GanttEvent.showAllChildren(), GanttEvent.hideAllChildren()
      • allowHeaderSelection

        public boolean allowHeaderSelection()
        Description copied from interface: ISettings
        Whether selecting dates in the header is allowed by clicking the date. Events will be fired on selection events. Note that not all views have this feature, only those that actually show full dates, as that's where it makes most sense.
        Specified by:
        allowHeaderSelection in interface ISettings
        Returns:
        true to allow header selection. Default is true.
      • zoomToMousePointerDateOnWheelZooming

        public boolean zoomToMousePointerDateOnWheelZooming()
        Description copied from interface: ISettings
        When you zoom in with the mouse, it can either act as a normal zoom (uses leftmost date as start date) or it can zoom in where the mouse pointer is at the time of the zoom in. For some the first make more sense than the other and vice versa. Default is that the zoom in is where the mouse pointer is (true).
        Specified by:
        zoomToMousePointerDateOnWheelZooming in interface ISettings
      • getDDayRootCalendar

        public java.util.Calendar getDDayRootCalendar()
        Description copied from interface: ISettings
        It's highly suggested you use the default implementation of this method. Basically, this method needs to return a zeroed-down calendar (hours, minutes etc) that will be used as the D-day root calendar. As D-days aren't dates (except internally), this Calendar simply needs to be any "stable" date. By default it uses January 1st, [current year], 0h 0m 0s 0ms. (it uses the current year as days-between calculations otherwise get very large).
        Specified by:
        getDDayRootCalendar in interface ISettings
        Returns:
        Calendar
      • getDDaySplitCount

        public int getDDaySplitCount()
        Description copied from interface: ISettings
        The value where D-days have their "weeks" so to speak, this is used to calculate the numbers shown in both headers, where the top header is displaying each "set" whereas the bottom one shows numbers from 0 to the number returned by this method.
        Specified by:
        getDDaySplitCount in interface ISettings
        Returns:
        Split count number. Default is 10 which shows sets from 0 to 9.
      • drawEventsDownToTheHourAndMinute

        public boolean drawEventsDownToTheHourAndMinute()
        Description copied from interface: ISettings
        If this returns true, events are never rounded up to their nearest hour/minute when shown in the chart, but will always show down to the minute even in any mid-zoomed and fully-zoomed out view (this does not do anything to the normal minute view). Default is false.
        Specified by:
        drawEventsDownToTheHourAndMinute in interface ISettings
        Returns:
        true to draw event location down to the hour and minute
      • moveAndResizeOnlyDependentEventsThatAreLaterThanLinkedMoveEvent

        public boolean moveAndResizeOnlyDependentEventsThatAreLaterThanLinkedMoveEvent()
        Description copied from interface: ISettings
        If this returns true, only linked events that come after the source drag event (time/date-wise) will be moved/resized (normally all linked events are moved/resized regardless of time/date).
        Specified by:
        moveAndResizeOnlyDependentEventsThatAreLaterThanLinkedMoveEvent in interface ISettings
        Returns:
        true to only move/resize "later" events on dependent linked event moves/resizes. Default is false.
      • forceMouseWheelVerticalScroll

        public boolean forceMouseWheelVerticalScroll()
        Description copied from interface: ISettings
        In SWT 3.5 it seems the mousewheel is not interpreted the same as in previous versions. If you notice that when scrolling the mousewheel the chart does not actually scroll vertically, flag this to true to force it to scroll the chart. This is forced to true on *NIX machines (not Mac).
        Specified by:
        forceMouseWheelVerticalScroll in interface ISettings
        Returns:
        true to force the mousewheel to scroll the chart. Default is false.
        See Also:
        ISettings.scrollChartVerticallyOnMouseWheel()
      • getSectionTextSpacer

        public int getSectionTextSpacer()
        Description copied from interface: ISettings
        If the name of any section is so large that it basically defines the size of the section, this value is used to space out the text slightly so that the section borders don't hug the text. If you want to save on some real-estate set this value to 0.
        Specified by:
        getSectionTextSpacer in interface ISettings
        Returns:
        Default is 30.
      • getPhasesHeaderHeight

        public int getPhasesHeaderHeight()
        Description copied from interface: ISettings
        When drawing GanttPhases this is the header height used for displaying the names of these phases.
        Specified by:
        getPhasesHeaderHeight in interface ISettings
        Returns:
        Default is 18
      • allowPhaseOverlap

        public boolean allowPhaseOverlap()
        Description copied from interface: ISettings
        When phases are resized or moved, whether an overlap resize/move should be accepted or not. If false (default), a resize will simply stop at the next phase border, whereas a move that is dropped on top of a different phase will be undone (no event is fired for this).
        Specified by:
        allowPhaseOverlap in interface ISettings
        Returns:
        Default is false
      • getVerticalDragResistance

        public int getVerticalDragResistance()
        Description copied from interface: ISettings
        For events that can be dragged vertically, this is the "resistance" in pixels before the event "lets go" of it's horizontal location. Once it's let go it will stick to the mouse cursor.
        Specified by:
        getVerticalDragResistance in interface ISettings
        Returns:
        A pixel range of resistance. Default is 15px.
      • onVerticalDragDropShowInsertMarker

        public boolean onVerticalDragDropShowInsertMarker()
        Description copied from interface: ISettings
        Whether an insert marker should be shown for where the dragged event will end up when a vertical drag/drop is in progress.
        Specified by:
        onVerticalDragDropShowInsertMarker in interface ISettings
        Returns:
        true to show a marker. Default is true.
      • scaleImageToDayWidth

        public boolean scaleImageToDayWidth()
        Description copied from interface: ISettings
        Whether to allow an image to exceed the width of one day when zooming in / out.
        Specified by:
        scaleImageToDayWidth in interface ISettings
        Returns:
        true to keep within day width. Default is true.
      • allowArrowKeysToScrollChart

        public boolean allowArrowKeysToScrollChart()
        Description copied from interface: ISettings
        Whether arrow keys are enabled to scroll chart left/right/up/down.
        Specified by:
        allowArrowKeysToScrollChart in interface ISettings
        Returns:
        true to allow arrow keys to move the chart. Default is false.
      • getNumberOfDaysToAppendForEndOfDay

        public int getNumberOfDaysToAppendForEndOfDay()
        Description copied from interface: ISettings
        Normally a day is calculated as day_starts->day_ends, which means that to make an event that starts and ends on the same day count as "anything", +1 is added by default to make the event actually show up on the chart. Should you for some reason need to override this, change this number to 0 or whatever you may need.
        Specified by:
        getNumberOfDaysToAppendForEndOfDay in interface ISettings
        Returns:
        Number of days to count for a start and end date that is the same date. Default is 1.
      • scrollChartVerticallyOnMouseWheel

        public boolean scrollChartVerticallyOnMouseWheel()
        Description copied from interface: ISettings
        Whether the chart should scroll vertically when the mouse wheel is used. If you notice excessive scrolling on SWT versions earlier than 3.5, you may want to turn this off
        Specified by:
        scrollChartVerticallyOnMouseWheel in interface ISettings
        Returns:
        true to scroll chart vertically. Default is true.
      • getPeriodStart

        public java.util.Calendar getPeriodStart()
        Description copied from interface: ISettings
        Specify a period start. Returning another value than null will result in rendering an additional line to the chart indicating a period start in the gantt itself.
        Specified by:
        getPeriodStart in interface ISettings
        Returns:
      • getPeriodEnd

        public java.util.Calendar getPeriodEnd()
        Description copied from interface: ISettings
        Specify a period end. Returning another value than null will result in rendering an additional line to the chart indicating a period end in the gantt itself.
        Specified by:
        getPeriodEnd in interface ISettings
        Returns:
      • shiftHorizontalCenteredEventString

        public boolean shiftHorizontalCenteredEventString()
        Description copied from interface: ISettings
        If you want to show the event String within the event rectangle by setting the horizontalTextLocation of the GanttEvent to SWT.CENTER, there are cases that break the visualization. If your event String is longer than the event in the Gantt, it will look quite strange.

        If this method returns true, the AbstractPaintManager will shift the rendering of the event String to the right if the String length is greater than the event rectangle.

        Specified by:
        shiftHorizontalCenteredEventString in interface ISettings
        Returns:
        true if the event String should be shifted, false if not
      • enableAddEvent

        public boolean enableAddEvent()
        Specified by:
        enableAddEvent in interface ISettings
        Returns:
        true to enable the menu action for adding an event to the GanttChart, false if this action should not be available to the user.
      • drawEventString

        public boolean drawEventString()
        Description copied from interface: ISettings
        Global configuration to specify if the text of GanttEvents should be rendered or not. It is also possible to configure this per GanttEvent via _showText property.
        Specified by:
        drawEventString in interface ISettings
        Returns:
        true if the event text should be rendered, false if not.
      • alwaysDragAllEvents

        public boolean alwaysDragAllEvents()
        Description copied from interface: ISettings
        The default behaviour in GanttChart on moving an event is that only the current dragged event is moved unless you press the SHIFT key. If there are more events selected, still only the dragged one is moved if the SHIFT key is not pressed. With this configuration it is possible to specify if the old default behavior should be used or if all currently selected events should be moved even if the SHIFT key is not pressed.
        Specified by:
        alwaysDragAllEvents in interface ISettings
        Returns:
        true if all selected events should be moved by dragging on of them false if only the current dragged event should be moved.
      • printSelectedVerticallyComplete

        public boolean printSelectedVerticallyComplete()
        Description copied from interface: ISettings
        On printing a GanttChart it is possible to select to print only the selected area. For GanttChart this means to print the currently visible area. By default currently visible means vertically AND horizontally visible. This configuration allows to specify whether the vertical part should extend to the whole chart and only the horizontal area should be limited for the visible part.
        Specified by:
        printSelectedVerticallyComplete in interface ISettings
        Returns:
        true if the printed chart should contain the whole chart vertically but only the horizontal visible part of the chart, false if only the visible part of the chart should be printed, horizontally AND vertically
      • printFooter

        public boolean printFooter()
        Description copied from interface: ISettings
        Configure whether a footer should be added to the print pages or not. The footer contains the page number and the date when the print was requested.
        Specified by:
        printFooter in interface ISettings
        Returns:
        true if a footer should be added to the print pages, false if not
      • drawSectionBar

        public boolean drawSectionBar()
        Description copied from interface: ISettings
        Configure whether the section bar should be rendered. It only makes sense to not render the section bar if the section details are enabled.
        Specified by:
        drawSectionBar in interface ISettings
        Returns:
        true if the section bar should be rendered, false if not
      • drawSectionDetails

        public boolean drawSectionDetails()
        Description copied from interface: ISettings
        Configure whether there should be an additional area to the section bar that shows additional section detail information.
        Specified by:
        drawSectionDetails in interface ISettings
        Returns:
        true if additional section detail information should be rendered, false if not
      • getSectionDetailWidth

        public int getSectionDetailWidth()
        Specified by:
        getSectionDetailWidth in interface ISettings
        Returns:
        The width of the section detail area.
      • getSectionDetailTitle

        public java.lang.String getSectionDetailTitle()
        Description copied from interface: ISettings
        The section detail area title that should be rendered in the section detail area.
        Specified by:
        getSectionDetailTitle in interface ISettings
        Returns:
        String or null. Default is a bold black text showing the section name.
      • getSectionDetailText

        public java.lang.String getSectionDetailText()
        Description copied from interface: ISettings
        The detail information that should be rendered in the section detail area.
        Specified by:
        getSectionDetailText in interface ISettings
        Returns:
        String or null. Default is to show the number of events in that section.
      • showSectionDetailMore

        public boolean showSectionDetailMore()
        Specified by:
        showSectionDetailMore in interface ISettings
        Returns:
        true if there should be a "more [+]" shown in the section detail area which allows to register a listener against to show more informations by e.g. opening a dialog.
      • showHolidayToolTips

        public boolean showHolidayToolTips()
        Description copied from interface: ISettings
        Configure whether a tooltip pops up when hovering the mouse over a holiday
        Specified by:
        showHolidayToolTips in interface ISettings
        Returns:
        true to show a "holiday" popup with the configured name of the holiday, false if not (default)
      • enableTodayLineUpdater

        public boolean enableTodayLineUpdater()
        Description copied from interface: ISettings2
        Start the updating tread for TodayLine (red line marking current time)
        Specified by:
        enableTodayLineUpdater in interface ISettings2
        Returns:
        true Start Thread false Skip Thread