Class HorizontalGridLineVisualSet<T>
java.lang.Object
com.amalgamasimulation.charts.visualsets.VisualSet<T>
com.amalgamasimulation.charts.visualsets.AbstractGridLineVisualSet<T>
com.amalgamasimulation.charts.visualsets.HorizontalGridLineVisualSet<T>
- Type Parameters:
T- visual set data elements type
- All Implemented Interfaces:
IClipboardTextPropertyOwner<String>,IUpdatePolicyPropertyOwner,IAbstractChartVisualSet,IBarChartVisualSet,ILineChartVisualSet
public class HorizontalGridLineVisualSet<T>
extends AbstractGridLineVisualSet<T>
implements ILineChartVisualSet, IBarChartVisualSet
Visual set for drawing grid lines.
Can be drawn on AbstractLineChart or AbstractBarChart.
Usually used to indicate some threshold values on the Y-axis.
- Author:
- Aleksey Kirillov
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionclassInternal class that represents visual element for horizontal grid data element.Nested classes/interfaces inherited from class com.amalgamasimulation.charts.visualsets.AbstractGridLineVisualSet
AbstractGridLineVisualSet.AbstractGridLineVisualElement, AbstractGridLineVisualSet.GridLineLabelPosition, AbstractGridLineVisualSet.GridLineLabelSideNested classes/interfaces inherited from class com.amalgamasimulation.charts.visualsets.VisualSet
VisualSet.ContextMenuHandler<T>, VisualSet.UpdatePolicy, VisualSet.VisualElement -
Field Summary
Fields inherited from class com.amalgamasimulation.charts.visualsets.VisualSet
argumentExtractor, contentsToBeginArguments, contentsToEndArguments, contentsToVisualElements, contextMenuHandlers, dataElementsProvider, listeners, maxArgument, maxValueCache, minArgument, minValueCache, mouseEnterHandlers, mouseExitHandlers, mousePressedHandlers, mouseTransparent, name, needsUpdate, oldContentsList, tooltipTextExtractor, updatePolicy, visibilityChangeHandlers, visualElementsList -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddContextMenuHandler(VisualSet.ContextMenuHandler<T> contextMenuHandler) Adds the action to be executed every time a context menu for given data element is called.addMouseEnterHandler(BiConsumer<T, javafx.scene.input.MouseEvent> handler) Adds the action to be executed every time mouse enters to any visual element borders.addMouseExitHandler(BiConsumer<T, javafx.scene.input.MouseEvent> handler) Adds the action to be executed every time the mouse exits the previously entered element's bounds.addMousePressedHandler(BiConsumer<T, javafx.scene.input.MouseEvent> handler) Adds the action to be executed every time a mouse button is pressed.addVisibilityChangeHandler(Consumer<VisibilityChangeDescriptor<? extends IAbstractChartVisualSet>> visibilityChangeHandler) Adds the action to be executed every time the visibility of this VisualSet is changed.createVisualElement(T contents) Creates a new instance ofVisualSet<T>.VisualElementcorresponding to the current VisualSet type.getVisualElements(boolean recalculationRequired) Returns the list of visual elements corresponding to current data elements.setClipboardText(Function<String, String> clipboardTextExtractor) Sets the the conversion method from string representations of each plot value into text that will be copied to clipboard.setLabelText(Function<T, String> labelTextExtractor, Function<T, Double> labelTextSizeExtractor, Function<T, Color> labelTextColorExtractor, Function<T, AbstractGridLineVisualSet.GridLineLabelPosition> labelTextPositionExtractor, Function<T, AbstractGridLineVisualSet.GridLineLabelSide> labelTextSideExtractor) Sets the labels of the grid lines representing plot data elements.setLineColor(Function<T, Color> lineColorExtractor) Sets the line color of the lines representing plot data elements.setLineWidth(Function<T, Double> lineWidthExtractor) Sets the width of the grid lines representing plot data elements, in pixels.setMouseTransparent(boolean mouseTransparent) Sets the value of the property mouseTransparent.setTooltipText(Function<T, String> tooltipTextExtractor) Adds tooltip text to display when the mouse is hovered over a visual element representing given data element.setUpdatePolicy(VisualSet.UpdatePolicy updatePolicy) Sets the newVisualSet.UpdatePolicyi.e.Methods inherited from class com.amalgamasimulation.charts.visualsets.AbstractGridLineVisualSet
getClipboardText, getLabelColor, getLabelFontSize, getLabelText, getLabelTextPosition, getLabelTextSide, getLineColor, getLineWidth, getValueMethods inherited from class com.amalgamasimulation.charts.visualsets.VisualSet
addVisualElement, addVisualElement, addVisualSetChangeHandler, clearDependencies, getArgument, getContents, getContextMenuHandlers, getDataElements, getInjectionIndex, getMaxArgument, getMinArgument, getMouseEnterHandlers, getMouseExitHandlers, getMousePressedHandlers, getName, getTooltipText, getUpdatePolicy, getVisibilityChangeHandlers, getVisibleVisualElementIndex, getVisibleVisualElementsCount, isMouseTransparent, isNeedsUpdate, recalculateVisualElements, removeContextMenuHandler, removeMouseEnterHandler, removeMouseExitHandler, removeMousePressedHandler, removeVisibilityChangeHandler, removeVisualElement, removeVisualSetChangeHandler, sortVisualElements, toString, update, updateMinMaxArgumentsValuesMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.amalgamasimulation.charts.visualsets.types.IAbstractChartVisualSet
addVisualSetChangeHandler, getContents, getMaxArgument, getMinArgument, getName, getUpdatePolicy, getVisibilityChangeHandlers, getVisibleVisualElementsCount, isMouseTransparent, removeVisibilityChangeHandler, removeVisualSetChangeHandler
-
Constructor Details
-
HorizontalGridLineVisualSet
public HorizontalGridLineVisualSet(String name, Supplier<List<T>> dataElementsProvider, Function<T, Double> argumentExtractor) Constructs a HorizontalGridLineVisualSet with given name, data elements and arguments extractor, i.e. a function that specifies the rule for extracting an argument from a data element.- Parameters:
name- visual set name is used to sort and name the visual sets on the chartdataElementsProvider- data elements list provider. The provider is invalidated every time the chart is beging redrawnargumentExtractor- a function that specifies the rule for extracting an argument from a data element
-
-
Method Details
-
setLineColor
Description copied from class:AbstractGridLineVisualSetSets the line color of the lines representing plot data elements. The color of each element is set independently of the color of other elements. Transparent and semi-transparent colors are allowed.- Overrides:
setLineColorin classAbstractGridLineVisualSet<T>- Parameters:
lineColorExtractor- new line color of the plot- Returns:
- reference to this object
-
setLineWidth
Description copied from class:AbstractGridLineVisualSetSets the width of the grid lines representing plot data elements, in pixels. The width of each grid line is set independently of the width of other grid lines.- Overrides:
setLineWidthin classAbstractGridLineVisualSet<T>- Parameters:
lineWidthExtractor- new line width of the plot, in pixels- Returns:
- reference to this object
-
setTooltipText
Description copied from class:VisualSetAdds tooltip text to display when the mouse is hovered over a visual element representing given data element.- Overrides:
setTooltipTextin classAbstractGridLineVisualSet<T>- Parameters:
tooltipTextExtractor- a function that specifies the rule for extracting a tooltip text from a data element- Returns:
- reference to this object
-
setClipboardText
public HorizontalGridLineVisualSet<T> setClipboardText(Function<String, String> clipboardTextExtractor) Description copied from class:AbstractGridLineVisualSetSets the the conversion method from string representations of each plot value into text that will be copied to clipboard.- Specified by:
setClipboardTextin interfaceIClipboardTextPropertyOwner<T>- Overrides:
setClipboardTextin classAbstractGridLineVisualSet<T>- Parameters:
clipboardTextExtractor- an extractor that converts the string representations of each plot data element into text that will be copied to the clipboard- Returns:
- reference to this object
-
setLabelText
public HorizontalGridLineVisualSet<T> setLabelText(Function<T, String> labelTextExtractor, Function<T, Double> labelTextSizeExtractor, Function<T, Color> labelTextColorExtractor, Function<T, AbstractGridLineVisualSet.GridLineLabelPosition> labelTextPositionExtractor, Function<T, AbstractGridLineVisualSet.GridLineLabelSide> labelTextSideExtractor) Description copied from class:AbstractGridLineVisualSetSets the labels of the grid lines representing plot data elements. The label of each grid line is set independently of the labels of other grid lines. The label will not be displayed if the specified text is empty.- Overrides:
setLabelTextin classAbstractGridLineVisualSet<T>- Parameters:
labelTextExtractor- the text of the labellabelTextSizeExtractor- the font size of the labellabelTextColorExtractor- the color of the labellabelTextPositionExtractor- theAbstractGridLineVisualSet.GridLineLabelPositionof the labellabelTextSideExtractor- theAbstractGridLineVisualSet.GridLineLabelSideof the label- Returns:
- reference to this object
-
addContextMenuHandler
public HorizontalGridLineVisualSet<T> addContextMenuHandler(VisualSet.ContextMenuHandler<T> contextMenuHandler) Description copied from class:VisualSetAdds the action to be executed every time a context menu for given data element is called.- Overrides:
addContextMenuHandlerin classVisualSet<T>- Parameters:
contextMenuHandler- context menu call action- Returns:
- reference to this object
-
addMouseEnterHandler
public HorizontalGridLineVisualSet<T> addMouseEnterHandler(BiConsumer<T, javafx.scene.input.MouseEvent> handler) Description copied from class:VisualSetAdds the action to be executed every time mouse enters to any visual element borders.- Overrides:
addMouseEnterHandlerin classVisualSet<T>- Parameters:
handler- new mouse enter action- Returns:
- reference to this object
-
addMouseExitHandler
public HorizontalGridLineVisualSet<T> addMouseExitHandler(BiConsumer<T, javafx.scene.input.MouseEvent> handler) Description copied from class:VisualSetAdds the action to be executed every time the mouse exits the previously entered element's bounds.- Overrides:
addMouseExitHandlerin classVisualSet<T>- Parameters:
handler- new mouse exit action- Returns:
- reference to this object
-
addMousePressedHandler
public HorizontalGridLineVisualSet<T> addMousePressedHandler(BiConsumer<T, javafx.scene.input.MouseEvent> handler) Description copied from class:VisualSetAdds the action to be executed every time a mouse button is pressed.- Overrides:
addMousePressedHandlerin classVisualSet<T>- Parameters:
handler- new mouse button pressed action- Returns:
- reference to this object
-
addVisibilityChangeHandler
public HorizontalGridLineVisualSet<T> addVisibilityChangeHandler(Consumer<VisibilityChangeDescriptor<? extends IAbstractChartVisualSet>> visibilityChangeHandler) Description copied from interface:IAbstractChartVisualSetAdds the action to be executed every time the visibility of this VisualSet is changed.- Specified by:
addVisibilityChangeHandlerin interfaceIAbstractChartVisualSet- Overrides:
addVisibilityChangeHandlerin classVisualSet<T>- Parameters:
visibilityChangeHandler- visibility change action- Returns:
- reference to this object
-
setMouseTransparent
Description copied from interface:IAbstractChartVisualSetSets the value of the property mouseTransparent. If true, this VisualSet is completely transparent to mouse events. When choosing target for mouse event, VisualSets with mouseTransparent set to true won't be taken into account.- Specified by:
setMouseTransparentin interfaceIAbstractChartVisualSet- Overrides:
setMouseTransparentin classVisualSet<T>- Parameters:
mouseTransparent- new value of property mouseTransparent- Returns:
- reference to this object
-
getVisualElements
public List<HorizontalGridLineVisualSet<T>.HorizontalGridLineVisualElement> getVisualElements(boolean recalculationRequired) Description copied from interface:IAbstractChartVisualSetReturns the list of visual elements corresponding to current data elements. Cannot be changed by the user.- Specified by:
getVisualElementsin interfaceIAbstractChartVisualSet- Specified by:
getVisualElementsin interfaceIBarChartVisualSet- Specified by:
getVisualElementsin interfaceILineChartVisualSet- Overrides:
getVisualElementsin classVisualSet<T>- Parameters:
recalculationRequired- flag of the need to recalculate the visual elements- Returns:
- the list of visual elements corresponding to current data elements
-
createVisualElement
public HorizontalGridLineVisualSet<T>.HorizontalGridLineVisualElement createVisualElement(T contents) Description copied from class:VisualSetCreates a new instance ofVisualSet<T>.VisualElementcorresponding to the current VisualSet type.- Specified by:
createVisualElementin classVisualSet<T>- Parameters:
contents- data element for which theVisualSet<T>.VisualElementis being checked- Returns:
- a new instance of
VisualSet<T>.VisualElementcorresponding to the current VisualSet type
-
setUpdatePolicy
Description copied from interface:IAbstractChartVisualSetSets the newVisualSet.UpdatePolicyi.e. the VisualSet update control rule.- Specified by:
setUpdatePolicyin interfaceIAbstractChartVisualSet- Specified by:
setUpdatePolicyin interfaceIUpdatePolicyPropertyOwner- Overrides:
setUpdatePolicyin classVisualSet<T>- Parameters:
updatePolicy- newVisualSet.UpdatePolicyi.e. the VisualSet update control rule- Returns:
- reference to this object
-