Class GanttChartBase<R extends Row<?,​?,​?>>

Type Parameters:
R - the type of the rows shown by the Gantt chart (e.g. "Aircraft")
All Implemented Interfaces:
Styleable, EventTarget, Skinnable
Direct Known Subclasses:
GanttChart, GanttChartLite

public abstract class GanttChartBase<R extends Row<?,​?,​?>>
extends FlexGanttFXControl
Abstract base class for all Gantt chart controls. For detailed information please refer to the documentation on those classes.
Since:
1.6
See Also:
GanttChart, GanttChartLite
  • Property Details

  • Constructor Details

    • GanttChartBase

      protected GanttChartBase()
      Constructs a new Gantt Chart control.
      Since:
      1.6
  • Method Details

    • createTimelineScrollBar

      protected TimelineScrollBar createTimelineScrollBar()
      Creates a custom scroll bar that will be used when the scrollbar type specified via scrollBarTypeProperty() is set to GanttChartBase.ScrollBarType.INFINITE. The scroll bar UI is an instance of type PlusMinusSlider.
      Returns:
      the scrollbar used for scrolling infinitely into the past or future
    • createHorizonScrollBar

      protected ScrollBar createHorizonScrollBar()
      Creates a regular scroll bar that will be used when the scrollbar type specified via scrollBarTypeProperty() is set to GanttChartBase.ScrollBarType.FIXED_HORIZON. In this case the properties TimelineModel.horizonStartTimeProperty() and TimelineModel.horizonEndTimeProperty() will be used to compute the min and max value of the scrollbar.
      Returns:
      the scrollbar used for scrolling across the horizon (almost poetic).
      Since:
      11.12.3
    • getUserAgentStylesheet

      public String getUserAgentStylesheet()
      Overrides:
      getUserAgentStylesheet in class Region
    • rowFilterProperty

      public final ObjectProperty<Predicate<R>> rowFilterProperty()
      A predicate used to filter the rows.
      See Also:
      getRowFilter(), setRowFilter(Predicate)
    • setRowFilter

      public final void setRowFilter​(Predicate<R> predicate)
      Sets the value of rowFilterProperty().
      Parameters:
      predicate - the filter predicate
    • getRowFilter

      public final Predicate getRowFilter()
      Returns the value of rowFilterProperty().
      Returns:
      the filter predicate
    • createGraphics

      protected ListViewGraphics<R> createGraphics()
      Creates the graphics view used by the Gantt chart. Applications can override this method to return a customized graphics view.
      Returns:
      a graphics view instance
      Since:
      1.6
    • graphicsHeaderProperty

      public final ObjectProperty<Node> graphicsHeaderProperty()
      A property used to store a node that will be placed above the graphics area instead of the timeline. This can be very useful when, for example, using a DualGanttChartContainer where the users do not want to see two timelines at the same time. The graphics header node could simply be a gray empty area or it could be used as a toolbar control for the secondary Gantt chart.
      Since:
      1.6
      See Also:
      getGraphicsHeader(), setGraphicsHeader(Node)
    • getGraphicsHeader

      public final Node getGraphicsHeader()
      Returns the value of graphicsHeaderProperty().
      Returns:
      the graphics header node
      Since:
      1.6
    • setGraphicsHeader

      public final void setGraphicsHeader​(Node node)
      Sets the value of graphicsHeaderProperty().
      Parameters:
      node - the node used as a header above the graphics area
      Since:
      1.6
    • redrawObservable

      protected void redrawObservable​(Observable property)
    • positionProperty

      public final ObjectProperty<Position> positionProperty()
      A property used to store the position of the Gantt chart in a multi Gantt chart context, for example, inside a DualGanttChartContainer or a MultiGanttChartContainerBase. One of the charts will be the first, some will be in the middle, and one will be the last. The first chart is the owner of the master timeline.
      Since:
      1.6
      See Also:
      getPosition(), setPosition(Position)
    • getPosition

      public final Position getPosition()
      Returns the value of positionProperty().
      Returns:
      the position of the chart
      Since:
      1.6
    • setPosition

      public final void setPosition​(Position position)
      Sets the value of positionProperty().
      Parameters:
      position - the chart position (first, last, middle, only)
    • masterTimelineProperty

      public final ObjectProperty<Timeline> masterTimelineProperty()
      A property used to store a reference to the timeline that is being considered the "master" timeline. This property is needed when several charts are used in combination with each other (see DualGanttChartContainer or MultiGanttChartContainerBase). The master timeline is the one provided by the Gantt chart located at the top of the container (the "first" chart).
      Since:
      1.6
      See Also:
      getMasterTimeline(), setMasterTimeline(Timeline)
    • getMasterTimeline

      public final Timeline getMasterTimeline()
      Returns the value of masterTimelineProperty().
      Returns:
      the master timeline
      Since:
      1.6
    • setMasterTimeline

      public final void setMasterTimeline​(Timeline timeline)
      Sets the value of masterTimelineProperty().
      Parameters:
      timeline - the new master timeline
      Since:
      1.6
    • getTimeline

      public final Timeline getTimeline()
      Returns the Timeline instance, which consists of the Dateline and the Eventline.
      Returns:
      the timeline control
      Since:
      1.6
      See Also:
      createTimeline()
    • createTimeline

      protected Timeline createTimeline()
      Creates the timeline component used by the Gantt chart. Applications can override this method to return a customized timeline.
      Returns:
      the timeline instance
      Since:
      1.6
    • getGraphics

      public final ListViewGraphics<R> getGraphics()
      Returns the graphics view shown on the right-hand side of the Gantt chart. The view is set as the master node on the primary MasterDetailPane instance.
      Returns:
      the graphics view
      Since:
      1.6
      See Also:
      createGraphics()
    • getTimelineScrollBar

      public final TimelineScrollBar getTimelineScrollBar()
      Returns the specialized timeline scrollbar control used for scrolling forward and back in time. The scrollbar becomes visible when the user moves the mouse cursor close to the bottom edge of the graphics area. This scroll bar will be used when the scroll bar type is defined as GanttChartBase.ScrollBarType.INFINITE.
      Returns:
      the timeline scrollbar
      Since:
      1.6
      See Also:
      scrollBarTypeProperty()
    • getHorizonScrollBar

      public final ScrollBar getHorizonScrollBar()
      Returns the scroll bar that will be used when the scrollbar type specified via scrollBarTypeProperty() is set to GanttChartBase.ScrollBarType.FIXED_HORIZON. In this case the properties TimelineModel.horizonStartTimeProperty() and TimelineModel.horizonEndTimeProperty() will be used to compute the min and max value of the scrollbar.
      Returns:
      the timeline scrollbar
      Since:
      11.12.3
      See Also:
      scrollBarTypeProperty(), TimelineModel.horizonStartTimeProperty(), TimelineModel.horizonEndTimeProperty()
    • isAutoHideScrollBar

      public final boolean isAutoHideScrollBar()
      Gets the value of the property autoHideScrollBar.
      Property description:
      Determines if the scrollbar will automatically hide itself if no longer needed. The default is "true". If set to "true", the skin of the Gantt chart will use a HiddenSidesPane instance for the left- and right-hand side. This container support the sliding in and out of controls on the four sides.
      Since:
      11.12.3
    • autoHideScrollBarProperty

      public final BooleanProperty autoHideScrollBarProperty()
      Determines if the scrollbar will automatically hide itself if no longer needed. The default is "true". If set to "true", the skin of the Gantt chart will use a HiddenSidesPane instance for the left- and right-hand side. This container support the sliding in and out of controls on the four sides.
      Since:
      11.12.3
      See Also:
      isAutoHideScrollBar(), setAutoHideScrollBar(boolean)
    • setAutoHideScrollBar

      public final void setAutoHideScrollBar​(boolean autoHideScrollBar)
      Sets the value of the property autoHideScrollBar.
      Property description:
      Determines if the scrollbar will automatically hide itself if no longer needed. The default is "true". If set to "true", the skin of the Gantt chart will use a HiddenSidesPane instance for the left- and right-hand side. This container support the sliding in and out of controls on the four sides.
      Since:
      11.12.3
    • scrollBarTypeProperty

      public final ObjectProperty<GanttChartBase.ScrollBarType> scrollBarTypeProperty()
      Determines whether the application should present a standard scrollbar (like ListView, TableView, or TreeView), a scrollbar for infinite scrolling, or no scrollbar at all.
      Since:
      11.12.3
      See Also:
      getScrollBarType(), setScrollBarType(GanttChartBase.ScrollBarType)
    • getScrollBarType

      public final GanttChartBase.ScrollBarType getScrollBarType()
      Gets the value of the property scrollBarType.
      Property description:
      Determines whether the application should present a standard scrollbar (like ListView, TableView, or TreeView), a scrollbar for infinite scrolling, or no scrollbar at all.
      Since:
      11.12.3
    • setScrollBarType

      public final void setScrollBarType​(GanttChartBase.ScrollBarType scrollBarType)
      Sets the value of the property scrollBarType.
      Property description:
      Determines whether the application should present a standard scrollbar (like ListView, TableView, or TreeView), a scrollbar for infinite scrolling, or no scrollbar at all.
      Since:
      11.12.3
    • getGraphicsMasterDetailPane

      public org.controlsfx.control.MasterDetailPane getGraphicsMasterDetailPane()
      Returns the MasterDetailPane instance that is used to display the ListViewGraphics in the master section and the detail node in the detail section.
      Returns:
      the master detail pane
      Since:
      1.6
    • detailProperty

      public final ObjectProperty<Node> detailProperty()
      A property used to store a node that can be made visible on the right-hand side of the Gantt chart. The node can be used to show any kind of controls that the application might require.
      Since:
      1.6
      See Also:
      getDetail(), setDetail(Node)
    • setDetail

      public final void setDetail​(Node node)
      Sets the value of detailProperty().
      Parameters:
      node - the new detail node
      Since:
      1.6
    • getDetail

      public final Node getDetail()
      Returns the value of detailProperty().
      Returns:
      the detail node
      Since:
      1.6
    • fixedCellSizeProperty

      public final DoubleProperty fixedCellSizeProperty()
      A property used to set a fixed cell size for the rows shown in the table on the left-hand side and the graphics area on the right-hand side.
      Since:
      1.6
      See Also:
      getFixedCellSize(), setFixedCellSize(double)
    • getFixedCellSize

      public final double getFixedCellSize()
      Returns the value of fixedCellSizeProperty().
      Returns:
      the fixed cell size
      Since:
      1.6
    • setFixedCellSize

      public final void setFixedCellSize​(double size)
      Sets the value of fixedCellSizeProperty().
      Parameters:
      size - the fixed cell size
      Since:
      1.6
    • showDetailProperty

      public final BooleanProperty showDetailProperty()
      A property used to control whether the "details" node will be shown or not. This node gets shown on the right-hand side of the Gantt chart and can contain arbitrary content. By default it is used to display a property sheet with the current settings / configuration of the Gantt chart. The detail node is shown by the secondary master detail pane (see getGraphicsMasterDetailPane()).
      Since:
      1.6
      See Also:
      isShowDetail(), setShowDetail(boolean)
    • isShowDetail

      public final boolean isShowDetail()
      Returns the value of showDetailProperty().
      Returns:
      true if the detail node gets shown
      Since:
      1.6
    • setShowDetail

      public final void setShowDetail​(boolean show)
      Sets the value of showDetailProperty().
      Parameters:
      show - if true the detail node will be shown on the right-hand side of the Gantt chart
      Since:
      1.6
    • getLayers

      public final ObservableList<Layer> getLayers()
      Convenience method to return the list of layers registered on the graphics view.
      Returns:
      the layers registered on the graphics area
      Since:
      1.6
      See Also:
      GraphicsBase.getLayers()
    • getLinks

      public final IntervalTree<ActivityLink> getLinks()
      Convenience method to return the list of links registered on the graphics view.
      Returns:
      the links registered on the graphics area
      Since:
      1.6
      See Also:
      GraphicsBase.getLinks()
    • getCalendars

      public final ObservableList<Calendar<?>> getCalendars()
      Convenience method to return the list of calendars registered on the graphics view.
      Returns:
      the calendars registered on the graphics area
      Since:
      1.6
      See Also:
      GraphicsBase.getCalendars()