Class JavaFXParallelCoordinatesView<Row,C>

java.lang.Object
com.macrofocus.high_d.parallelcoordinates.AbstractParallelCoordinatesView<javafx.scene.Node,javafx.scene.paint.Color,Row,C>
com.macrofocus.high_d.parallelcoordinates.javafx.JavaFXParallelCoordinatesView<Row,C>
All Implemented Interfaces:
com.macrofocus.crossplatform.CPComponent<javafx.scene.Node>, com.macrofocus.crossplatform.CPInteractiveComponent<javafx.scene.Node>, ParallelCoordinatesView<javafx.scene.Node,javafx.scene.paint.Color,Row,C>

public class JavaFXParallelCoordinatesView<Row,C> extends AbstractParallelCoordinatesView<javafx.scene.Node,javafx.scene.paint.Color,Row,C>
Provides a view for a ParallelCoordinatesModel
  • Constructor Details

    • JavaFXParallelCoordinatesView

      public JavaFXParallelCoordinatesView()
    • JavaFXParallelCoordinatesView

      public JavaFXParallelCoordinatesView(ParallelCoordinatesModel model)
  • Method Details

    • setStyleClass

      public void setStyleClass(String... styleClasses)
    • addMouseListener

      public void addMouseListener(com.macrofocus.crossplatform.CPCanvas.MouseListener l)
    • addMouseMotionListener

      public void addMouseMotionListener(com.macrofocus.crossplatform.CPCanvas.MouseMotionListener l)
    • removeMouseListener

      public void removeMouseListener(com.macrofocus.crossplatform.CPCanvas.MouseListener l)
    • removeMouseMotionListener

      public void removeMouseMotionListener(com.macrofocus.crossplatform.CPCanvas.MouseMotionListener l)
    • getNativeComponent

      public javafx.scene.Node getNativeComponent()
    • getWidth

      public int getWidth()
    • getHeight

      public int getHeight()
    • isShowTiming

      public boolean isShowTiming()
      Description copied from interface: ParallelCoordinatesView
      Returns whether information about refresh rate should be displayed.
      Returns:
      true to display refresh rate information, false otherwise
    • setShowTiming

      public void setShowTiming(boolean showTiming)
      Description copied from interface: ParallelCoordinatesView
      Sets whether information about refresh rate should be displayed.
      Parameters:
      showTiming - true to display refresh rate information, false otherwise
    • setLicenseModel

      public void setLicenseModel(LicenseModel licenseModel)
    • getParallelCoordinatesLayout

      public ParallelCoordinatesLayout getParallelCoordinatesLayout()
      Returns the class responsible for laying out the components of the parallel coordinates plot.
      Returns:
      the layout engine
    • getModel

      public ParallelCoordinatesModel getModel()
      Returns the ParallelCoordinatesModel that provides the data displayed by this ParallelCoordinatesView.
      Returns:
      the ParallelCoordinatesModel that provides the data displayed by this ParallelCoordinatesView
      See Also:
    • setModel

      public void setModel(ParallelCoordinatesModel model)
      Sets the data model and registers with it for listener notifications from the new data model.
      Parameters:
      model - the new data model
      See Also:
    • runLayout

      public void runLayout()
    • createDummyAxisView

      protected com.macrofocus.high_d.axis.AxisView createDummyAxisView()
    • getAxisX

      public int getAxisX(com.macrofocus.high_d.axis.group.AxisGroupModel axisGroup, com.macrofocus.high_d.axis.AxisModel axisModel)
      Gets the position along the X axis of an axis.
      axisModel - the axis
      Returns:
      its position along the X axis
    • getHeaderAxisGroupMaximumHeight

      public int getHeaderAxisGroupMaximumHeight()
    • getHeaderAxisMaximumHeight

      public int getHeaderAxisMaximumHeight()
    • startDragging

      public void startDragging(com.macrofocus.high_d.axis.AxisView axisView)
      Start dragging an axis.
      Specified by:
      startDragging in interface ParallelCoordinatesView<javafx.scene.Node,javafx.scene.paint.Color,Row,C>
      Overrides:
      startDragging in class AbstractParallelCoordinatesView<javafx.scene.Node,javafx.scene.paint.Color,Row,C>
      Parameters:
      axisView - the axis to drag
    • dragAxisTo

      public void dragAxisTo(com.macrofocus.high_d.axis.AxisView axisView, int location)
      Drags divider to right location. If it's continuous layout, really drag the divider; if not, only drag the shadow.
      Specified by:
      dragAxisTo in interface ParallelCoordinatesView<javafx.scene.Node,javafx.scene.paint.Color,Row,C>
      Overrides:
      dragAxisTo in class AbstractParallelCoordinatesView<javafx.scene.Node,javafx.scene.paint.Color,Row,C>
      Parameters:
      axisView - the axis
      location - new location
    • stopDragging

      public void stopDragging(com.macrofocus.high_d.axis.AxisView axisView)
      Stop dragging an axis. This will usually trigger a layout of the parallel coordinates plot.
      Specified by:
      stopDragging in interface ParallelCoordinatesView<javafx.scene.Node,javafx.scene.paint.Color,Row,C>
      Overrides:
      stopDragging in class AbstractParallelCoordinatesView<javafx.scene.Node,javafx.scene.paint.Color,Row,C>
      Parameters:
      axisView - the axis that has been dragged
    • getAxisComponents

      public JavaFXAxisComponents getAxisComponents(com.macrofocus.high_d.axis.AxisModel axisModel)
    • createAxisMouseListener

      protected void createAxisMouseListener(javafx.scene.control.Button label)
    • createAxisHeaderView

      protected javafx.scene.control.Button createAxisHeaderView(com.macrofocus.high_d.axis.AxisModel axisModel)
    • createAxisView

      protected com.macrofocus.high_d.axis.AxisView createAxisView(com.macrofocus.high_d.axis.AxisModel axisModel)
    • getLabel

      public com.macrofocus.crossplatform.CPComponent<javafx.scene.control.Button> getLabel(com.macrofocus.high_d.axis.AxisModel axisModel)
    • getAndInstallAxisView

      public com.macrofocus.high_d.axis.AxisView getAndInstallAxisView(com.macrofocus.high_d.axis.AxisModel axisModel)
    • getAxisView

      public com.macrofocus.high_d.axis.AxisView getAxisView(com.macrofocus.high_d.axis.AxisModel axisModel)
      Description copied from interface: ParallelCoordinatesView
      Gets the view associated with a given axis.
      Parameters:
      axisModel - the axis
      Returns:
    • getAxisGroupView

      public com.macrofocus.high_d.axis.group.AxisGroupView getAxisGroupView(com.macrofocus.high_d.axis.group.AxisGroupModel axisGroup)
    • waitUntilReady

      public void waitUntilReady()
      Wait until the parallel coordinates plot has been fully rendered.
    • getClosestRow

      public Row getClosestRow(int x, int y)
    • getRows

      public Collection<Row> getRows(com.macrofocus.geom.Rectangle2D rect)
      Description copied from interface: ParallelCoordinatesView
      Returns the nodes overlapping the specified rectangle.
      Parameters:
      rect - the rectangle in screen coordinates
      Returns:
      the list of nodes
    • isSelectionMode

      public boolean isSelectionMode()
    • setSelectionMode

      public void setSelectionMode(boolean value)
    • setShowFiltered

      public void setShowFiltered(MutableProperty<Boolean> showFiltered)
    • setRendering

      public void setRendering(MutableProperty<com.macrofocus.crossplatform.CPCanvas.Rendering> rendering)
    • setAntialiasing

      public void setAntialiasing(MutableProperty<Boolean> antialiasing)
    • setGeometry

      public void setGeometry(MutableProperty<Geometry> geometry)