Class PaginationV2
- java.lang.Object
-
- javafx.scene.Node
-
- javafx.scene.Parent
-
- javafx.scene.layout.Region
-
- javafx.scene.control.Control
-
- ch.sahits.game.openpatrician.javafx.control.PaginationV2
-
- All Implemented Interfaces:
javafx.css.Styleable,javafx.event.EventTarget,javafx.scene.control.Skinnable
public class PaginationV2 extends javafx.scene.control.ControlPagination control that allows for input text to be spit up on the pages based on the amount of text that can be displayed on one page. The size of the page is controlled by the propertiescontentMaxWidthandcontentMaxHeight. Furthermore this control allows you to define a node for the back and next action. This is especially helpful in the case when applying a transformation on this control. If the propertiesbackButtonNodeandnextButtonNodeare not set, the next and back action will be mapped on the labels. The contents of this Pagination does not react on resizing the component. Instead the size of the contents is controlled by the propertiescontentMaxHeightProperty()andcontentMaxWidthProperty(). However the control will resize itself by expanding to the right and the bottom. To avoid this pack the Pagination into a group and set its managable flag to false.
To include this control in the workflow together with other controls you can define an event handler which will then be executeted when you hit the back button on the first page or the next button on the last page.
This control can only be instantiated using it's builder.- Author:
- Andi Hotz, (c) Sahits GmbH, 2013 Created on Aug 4, 2013
-
-
Constructor Summary
Constructors Constructor Description PaginationV2(javafx.beans.property.StringProperty backButtonLabel, javafx.beans.property.StringProperty nextButtonLabel, javafx.beans.property.ObjectProperty<javafx.scene.Node> backButtonNode, javafx.beans.property.ObjectProperty<javafx.scene.Node> nextButtonNode, javafx.beans.property.ObjectProperty<javafx.event.EventHandler<javafx.scene.input.MouseEvent>> firstLastPageAction, javafx.beans.property.ObjectProperty<ch.sahits.game.openpatrician.utilities.model.Text> text, javafx.beans.property.DoubleProperty contentMaxWidth, javafx.beans.property.DoubleProperty contentMaxHeight, javafx.beans.property.ObjectProperty<javafx.geometry.Insets> paddingLocal, javafx.beans.property.ReadOnlyObjectProperty<javafx.scene.text.Font> navigationLabelFont, javafx.beans.property.ReadOnlyObjectProperty<javafx.scene.text.Font> headerFont, javafx.beans.property.ReadOnlyObjectProperty<javafx.scene.text.Font> paragraphFont, javafx.beans.property.ReadOnlyObjectProperty<javafx.scene.text.Font> centeredFont)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description javafx.beans.property.ReadOnlyStringPropertybackButtonLabelProperty()Property defining the label of the back button.javafx.beans.property.ReadOnlyObjectProperty<javafx.scene.text.Font>centeredFontProperty()javafx.beans.property.ReadOnlyDoublePropertycontentMaxHeightProperty()Retrieve the maximal height of the contentjavafx.beans.property.ReadOnlyDoublePropertycontentMaxWidthProperty()Property containing the maximal width of the content.protected javafx.scene.control.Skin<?>createDefaultSkin()javafx.beans.property.ReadOnlyObjectProperty<javafx.event.EventHandler<javafx.scene.input.MouseEvent>>firstLastPageActionProperty()java.lang.StringgetBackButtonLabel()javafx.scene.NodegetBackButtonNode()Retrieve the node definition to be used for the back button.javafx.scene.text.FontgetCenteredFont()doublegetContentMaxHeight()doublegetContentMaxWidth()javafx.event.EventHandler<javafx.scene.input.MouseEvent>getFirstLastPageAction()javafx.scene.text.FontgetHeaderFont()javafx.scene.text.FontgetNavigationLabelFont()java.lang.StringgetNextButtonLabel()javafx.scene.NodegetNextButtonNode()Retrieve the node definition to be used for the next button.javafx.geometry.InsetsgetPaddingLocal()javafx.scene.text.FontgetParagraphFont()ch.sahits.game.openpatrician.utilities.model.TextgetText()java.lang.StringgetUserAgentStylesheet()javafx.beans.property.ReadOnlyObjectProperty<javafx.scene.text.Font>headerFontProperty()javafx.beans.property.ReadOnlyObjectProperty<javafx.scene.text.Font>navigationLabelFontProperty()javafx.beans.property.ReadOnlyStringPropertynextButtonLabelProperty()Property defining the label of the next button.javafx.beans.property.ReadOnlyObjectProperty<javafx.geometry.Insets>paddingLocalProperty()javafx.beans.property.ReadOnlyObjectProperty<javafx.scene.text.Font>paragraphFontProperty()javafx.beans.property.ReadOnlyObjectProperty<ch.sahits.game.openpatrician.utilities.model.Text>textProperty()Property containing the text content of this control.-
Methods inherited from class javafx.scene.control.Control
computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, contextMenuProperty, executeAccessibleAction, getBaselineOffset, getClassCssMetaData, getContextMenu, getControlCssMetaData, getCssMetaData, getInitialFocusTraversable, getSkin, getTooltip, isResizable, layoutChildren, queryAccessibleAttribute, setContextMenu, setSkin, setTooltip, skinProperty, tooltipProperty
-
Methods inherited from class javafx.scene.layout.Region
backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, getBackground, getBorder, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, getWidth, heightProperty, insetsProperty, isCacheShape, isCenterShape, isScaleShape, isSnapToPixel, layoutInArea, layoutInArea, layoutInArea, layoutInArea, maxHeight, maxHeightProperty, maxWidth, maxWidthProperty, minHeight, minHeightProperty, minWidth, minWidthProperty, opaqueInsetsProperty, paddingProperty, positionInArea, positionInArea, prefHeight, prefHeightProperty, prefWidth, prefWidthProperty, resize, scaleShapeProperty, setBackground, setBorder, setCacheShape, setCenterShape, setHeight, setMaxHeight, setMaxSize, setMaxWidth, setMinHeight, setMinSize, setMinWidth, setOpaqueInsets, setPadding, setPrefHeight, setPrefSize, setPrefWidth, setScaleShape, setShape, setSnapToPixel, setWidth, shapeProperty, snappedBottomInset, snappedLeftInset, snappedRightInset, snappedTopInset, snapPosition, snapPositionX, snapPositionY, snapSize, snapSizeX, snapSizeY, snapSpace, snapSpaceX, snapSpaceY, snapToPixelProperty, widthProperty
-
Methods inherited from class javafx.scene.Parent
getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBounds
-
Methods inherited from class javafx.scene.Node
accessibleHelpProperty, accessibleRoleDescriptionProperty, accessibleRoleProperty, accessibleTextProperty, addEventFilter, addEventHandler, applyCss, autosize, blendModeProperty, boundsInLocalProperty, boundsInParentProperty, buildEventDispatchChain, cacheHintProperty, cacheProperty, clipProperty, computeAreaInScreen, contains, contains, cursorProperty, depthTestProperty, disabledProperty, disableProperty, effectiveNodeOrientationProperty, effectProperty, eventDispatcherProperty, fireEvent, focusedProperty, focusTraversableProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getContentBias, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInitialCursor, getInputMethodRequests, getLayoutBounds, getLayoutX, getLayoutY, getLocalToParentTransform, getLocalToSceneTransform, getNodeOrientation, getOnContextMenuRequested, getOnDragDetected, getOnDragDone, getOnDragDropped, getOnDragEntered, getOnDragExited, getOnDragOver, getOnInputMethodTextChanged, getOnKeyPressed, getOnKeyReleased, getOnKeyTyped, getOnMouseClicked, getOnMouseDragEntered, getOnMouseDragExited, getOnMouseDragged, getOnMouseDragOver, getOnMouseDragReleased, getOnMouseEntered, getOnMouseExited, getOnMouseMoved, getOnMousePressed, getOnMouseReleased, getOnRotate, getOnRotationFinished, getOnRotationStarted, getOnScroll, getOnScrollFinished, getOnScrollStarted, getOnSwipeDown, getOnSwipeLeft, getOnSwipeRight, getOnSwipeUp, getOnTouchMoved, getOnTouchPressed, getOnTouchReleased, getOnTouchStationary, getOnZoom, getOnZoomFinished, getOnZoomStarted, getOpacity, getParent, getProperties, getPseudoClassStates, getRotate, getRotationAxis, getScaleX, getScaleY, getScaleZ, getScene, getStyle, getStyleableParent, getStyleClass, getTransforms, getTranslateX, getTranslateY, getTranslateZ, getTypeSelector, getUserData, getViewOrder, hasProperties, hoverProperty, idProperty, inputMethodRequestsProperty, intersects, intersects, isCache, isDisable, isDisabled, isFocused, isFocusTraversable, isHover, isManaged, isMouseTransparent, isPickOnBounds, isPressed, isVisible, layoutBoundsProperty, layoutXProperty, layoutYProperty, localToParent, localToParent, localToParent, localToParent, localToParent, localToParentTransformProperty, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToSceneTransformProperty, localToScreen, localToScreen, localToScreen, localToScreen, localToScreen, lookupAll, managedProperty, mouseTransparentProperty, nodeOrientationProperty, notifyAccessibleAttributeChanged, onContextMenuRequestedProperty, onDragDetectedProperty, onDragDoneProperty, onDragDroppedProperty, onDragEnteredProperty, onDragExitedProperty, onDragOverProperty, onInputMethodTextChangedProperty, onKeyPressedProperty, onKeyReleasedProperty, onKeyTypedProperty, onMouseClickedProperty, onMouseDragEnteredProperty, onMouseDragExitedProperty, onMouseDraggedProperty, onMouseDragOverProperty, onMouseDragReleasedProperty, onMouseEnteredProperty, onMouseExitedProperty, onMouseMovedProperty, onMousePressedProperty, onMouseReleasedProperty, onRotateProperty, onRotationFinishedProperty, onRotationStartedProperty, onScrollFinishedProperty, onScrollProperty, onScrollStartedProperty, onSwipeDownProperty, onSwipeLeftProperty, onSwipeRightProperty, onSwipeUpProperty, onTouchMovedProperty, onTouchPressedProperty, onTouchReleasedProperty, onTouchStationaryProperty, onZoomFinishedProperty, onZoomProperty, onZoomStartedProperty, opacityProperty, parentProperty, parentToLocal, parentToLocal, parentToLocal, parentToLocal, parentToLocal, pickOnBoundsProperty, pressedProperty, pseudoClassStateChanged, relocate, removeEventFilter, removeEventHandler, requestFocus, resizeRelocate, rotateProperty, rotationAxisProperty, scaleXProperty, scaleYProperty, scaleZProperty, sceneProperty, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, screenToLocal, screenToLocal, screenToLocal, setAccessibleHelp, setAccessibleRole, setAccessibleRoleDescription, setAccessibleText, setBlendMode, setCache, setCacheHint, setClip, setCursor, setDepthTest, setDisable, setDisabled, setEffect, setEventDispatcher, setEventHandler, setFocused, setFocusTraversable, setHover, setId, setInputMethodRequests, setLayoutX, setLayoutY, setManaged, setMouseTransparent, setNodeOrientation, setOnContextMenuRequested, setOnDragDetected, setOnDragDone, setOnDragDropped, setOnDragEntered, setOnDragExited, setOnDragOver, setOnInputMethodTextChanged, setOnKeyPressed, setOnKeyReleased, setOnKeyTyped, setOnMouseClicked, setOnMouseDragEntered, setOnMouseDragExited, setOnMouseDragged, setOnMouseDragOver, setOnMouseDragReleased, setOnMouseEntered, setOnMouseExited, setOnMouseMoved, setOnMousePressed, setOnMouseReleased, setOnRotate, setOnRotationFinished, setOnRotationStarted, setOnScroll, setOnScrollFinished, setOnScrollStarted, setOnSwipeDown, setOnSwipeLeft, setOnSwipeRight, setOnSwipeUp, setOnTouchMoved, setOnTouchPressed, setOnTouchReleased, setOnTouchStationary, setOnZoom, setOnZoomFinished, setOnZoomStarted, setOpacity, setPickOnBounds, setPressed, setRotate, setRotationAxis, setScaleX, setScaleY, setScaleZ, setStyle, setTranslateX, setTranslateY, setTranslateZ, setUserData, setViewOrder, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, toString, translateXProperty, translateYProperty, translateZProperty, usesMirroring, viewOrderProperty, visibleProperty
-
-
-
-
Constructor Detail
-
PaginationV2
public PaginationV2(javafx.beans.property.StringProperty backButtonLabel, javafx.beans.property.StringProperty nextButtonLabel, javafx.beans.property.ObjectProperty<javafx.scene.Node> backButtonNode, javafx.beans.property.ObjectProperty<javafx.scene.Node> nextButtonNode, javafx.beans.property.ObjectProperty<javafx.event.EventHandler<javafx.scene.input.MouseEvent>> firstLastPageAction, javafx.beans.property.ObjectProperty<ch.sahits.game.openpatrician.utilities.model.Text> text, javafx.beans.property.DoubleProperty contentMaxWidth, javafx.beans.property.DoubleProperty contentMaxHeight, javafx.beans.property.ObjectProperty<javafx.geometry.Insets> paddingLocal, javafx.beans.property.ReadOnlyObjectProperty<javafx.scene.text.Font> navigationLabelFont, javafx.beans.property.ReadOnlyObjectProperty<javafx.scene.text.Font> headerFont, javafx.beans.property.ReadOnlyObjectProperty<javafx.scene.text.Font> paragraphFont, javafx.beans.property.ReadOnlyObjectProperty<javafx.scene.text.Font> centeredFont)
-
-
Method Detail
-
getUserAgentStylesheet
public java.lang.String getUserAgentStylesheet()
- Overrides:
getUserAgentStylesheetin classjavafx.scene.layout.Region
-
createDefaultSkin
protected javafx.scene.control.Skin<?> createDefaultSkin()
- Overrides:
createDefaultSkinin classjavafx.scene.control.Control
-
getContentMaxHeight
public double getContentMaxHeight()
-
contentMaxHeightProperty
public javafx.beans.property.ReadOnlyDoubleProperty contentMaxHeightProperty()
Retrieve the maximal height of the content- Returns:
- max height as read only proerty
-
getContentMaxWidth
public double getContentMaxWidth()
-
contentMaxWidthProperty
public javafx.beans.property.ReadOnlyDoubleProperty contentMaxWidthProperty()
Property containing the maximal width of the content.- Returns:
- max width of the content as read only proerty.
-
getText
public ch.sahits.game.openpatrician.utilities.model.Text getText()
-
textProperty
public javafx.beans.property.ReadOnlyObjectProperty<ch.sahits.game.openpatrician.utilities.model.Text> textProperty()
Property containing the text content of this control.- Returns:
- text as read only property
-
getNextButtonLabel
public java.lang.String getNextButtonLabel()
-
nextButtonLabelProperty
public javafx.beans.property.ReadOnlyStringProperty nextButtonLabelProperty()
Property defining the label of the next button. Default is 'next'- Returns:
- next button as read label only property
-
getBackButtonLabel
public java.lang.String getBackButtonLabel()
-
backButtonLabelProperty
public javafx.beans.property.ReadOnlyStringProperty backButtonLabelProperty()
Property defining the label of the back button. Default is 'back'- Returns:
- back button label as read only property
-
getBackButtonNode
public final javafx.scene.Node getBackButtonNode()
Retrieve the node definition to be used for the back button. This method is used by the Skin.- Returns:
- node representing the back button
-
getPaddingLocal
public javafx.geometry.Insets getPaddingLocal()
-
paddingLocalProperty
public javafx.beans.property.ReadOnlyObjectProperty<javafx.geometry.Insets> paddingLocalProperty()
-
getNextButtonNode
public final javafx.scene.Node getNextButtonNode()
Retrieve the node definition to be used for the next button. This method is used by the Skin.- Returns:
- node representing the next button.
-
firstLastPageActionProperty
public javafx.beans.property.ReadOnlyObjectProperty<javafx.event.EventHandler<javafx.scene.input.MouseEvent>> firstLastPageActionProperty()
-
getFirstLastPageAction
public javafx.event.EventHandler<javafx.scene.input.MouseEvent> getFirstLastPageAction()
-
navigationLabelFontProperty
public javafx.beans.property.ReadOnlyObjectProperty<javafx.scene.text.Font> navigationLabelFontProperty()
-
getNavigationLabelFont
public javafx.scene.text.Font getNavigationLabelFont()
-
headerFontProperty
public javafx.beans.property.ReadOnlyObjectProperty<javafx.scene.text.Font> headerFontProperty()
-
getHeaderFont
public javafx.scene.text.Font getHeaderFont()
-
centeredFontProperty
public javafx.beans.property.ReadOnlyObjectProperty<javafx.scene.text.Font> centeredFontProperty()
-
getCenteredFont
public javafx.scene.text.Font getCenteredFont()
-
paragraphFontProperty
public javafx.beans.property.ReadOnlyObjectProperty<javafx.scene.text.Font> paragraphFontProperty()
-
getParagraphFont
public javafx.scene.text.Font getParagraphFont()
-
-