java.lang.Object
javafx.scene.Node
javafx.scene.Parent
javafx.scene.layout.Region
javafx.scene.layout.Pane
javafx.scene.layout.VBox
jfxtras.internal.scene.control.skin.agenda.icalendar.base24hour.popup.EditDescriptiveVBox<T>
Type Parameters:
T - subclass of VDisplayable
All Implemented Interfaces:
javafx.css.Styleable, javafx.event.EventTarget
Direct Known Subclasses:
EditDescriptiveLocatableVBox, EditDescriptiveVJournalVBox

public abstract class EditDescriptiveVBox<T extends VDisplayable<T>> extends javafx.scene.layout.VBox
Base controller for editing descriptive properties in a VDisplayable component. Edits the following properties: DateTimeStart, DateTimeEnd, Summary, Description Location, Categories

When a VComponent has a DateTimeStartas a date only (no time) and changes to date/time the control uses ZonedDateTime date/time with DEFAULT_ZONE_ID time zone.

The ICalendarAgenda control has a number of features, including:

  • Property Summary

    Properties inherited from class javafx.scene.layout.VBox

    alignment, fillWidth, spacing

    Properties inherited from class javafx.scene.layout.Region

    background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, width

    Properties inherited from class javafx.scene.Parent

    needsLayout

    Properties inherited from class javafx.scene.Node

    accessibleHelp, accessibleRoleDescription, accessibleRole, accessibleText, blendMode, boundsInLocal, boundsInParent, cacheHint, cache, clip, cursor, depthTest, disabled, disable, effectiveNodeOrientation, effect, eventDispatcher, focused, focusTraversable, hover, id, inputMethodRequests, layoutBounds, layoutX, layoutY, localToParentTransform, localToSceneTransform, managed, mouseTransparent, nodeOrientation, onContextMenuRequested, onDragDetected, onDragDone, onDragDropped, onDragEntered, onDragExited, onDragOver, onInputMethodTextChanged, onKeyPressed, onKeyReleased, onKeyTyped, onMouseClicked, onMouseDragEntered, onMouseDragExited, onMouseDragged, onMouseDragOver, onMouseDragReleased, onMouseEntered, onMouseExited, onMouseMoved, onMousePressed, onMouseReleased, onRotate, onRotationFinished, onRotationStarted, onScrollFinished, onScroll, onScrollStarted, onSwipeDown, onSwipeLeft, onSwipeRight, onSwipeUp, onTouchMoved, onTouchPressed, onTouchReleased, onTouchStationary, onZoomFinished, onZoom, onZoomStarted, opacity, parent, pickOnBounds, pressed, rotate, rotationAxis, scaleX, scaleY, scaleZ, scene, style, translateX, translateY, translateZ, viewOrder, visible
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private javafx.scene.control.Tab
     
    private javafx.scene.control.Button
     
    private javafx.scene.control.Button
     
     
    (package private) javafx.scene.control.TextField
     
    (package private) javafx.beans.value.ChangeListener<? super Temporal>
    Synch recurrence dates when DTSTART is modified (can occur when
    invalid reference
    synchStartDatePickerAndComponent#startDatePicker
    changes
    protected static final LocalTime
     
    (package private) static final ZoneId
     
    private javafx.scene.control.Button
     
    (package private) javafx.scene.control.TextArea
     
    (package private) javafx.scene.control.Label
     
    protected final javafx.util.Callback<Throwable,Void>
     
    private String
     
    (package private) javafx.scene.control.Label
     
    (package private) javafx.scene.control.TextField
     
    private javafx.scene.control.Tab
     
     
    private javafx.scene.control.Button
     
    private javafx.scene.control.Button
     
    (package private) LocalDateTextField
     
    private final javafx.beans.value.ChangeListener<? super LocalDate>
     
    (package private) LocalDateTimeTextField
     
    private final javafx.beans.value.ChangeListener<? super LocalDateTime>
     
    (package private) Temporal
     
    (package private) javafx.beans.property.ObjectProperty<Temporal>
    Contains the actual start recurrence value - Temporal LocalDate or LocalDateTime depending on wholeDayCheckBox
    (package private) javafx.scene.control.TextField
     
    (package private) javafx.scene.layout.GridPane
     
    (package private) T
     
    private javafx.scene.control.CheckBox
     

    Fields inherited from class javafx.scene.layout.Region

    USE_COMPUTED_SIZE, USE_PREF_SIZE

    Fields inherited from class javafx.scene.Node

    BASELINE_OFFSET_SAME_AS_HEIGHT
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
     
    (package private) void
    handleWholeDayChange(T vComponent, Boolean newSelection)
     
    protected void
    invalidCategoryAlert(String newString, int otherMatch)
     
    protected static void
    loadFxml(URL fxmlFile, Object rootController)
     
    void
    setupData(T vComponent, Temporal startRecurrence, Temporal endRecurrence, List<String> categories)
    Provide necessary data to setup
    protected void
    Deprecated.
    (package private) void
    synchRecurrenceDates(Temporal oldValue, Temporal newValue)
     
    (package private) void
    synchStartDate(LocalDate oldValue, LocalDate newValue)
    Update startDateTimeTextField when startDateTextField changes
    (package private) void
    Update startDateTextField when startDateTimeTextField changes

    Methods inherited from class javafx.scene.layout.VBox

    alignmentProperty, clearConstraints, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, fillWidthProperty, getAlignment, getClassCssMetaData, getContentBias, getCssMetaData, getMargin, getSpacing, getVgrow, isFillWidth, layoutChildren, requestLayout, setAlignment, setFillWidth, setMargin, setSpacing, setVgrow, spacingProperty

    Methods inherited from class javafx.scene.layout.Pane

    getChildren

    Methods inherited from class javafx.scene.layout.Region

    backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, computeMaxHeight, computeMaxWidth, getBackground, getBorder, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, getUserAgentStylesheet, getWidth, heightProperty, insetsProperty, isCacheShape, isCenterShape, isResizable, 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

    getBaselineOffset, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, queryAccessibleAttribute, 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, executeAccessibleAction, fireEvent, focusedProperty, focusTraversableProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInitialCursor, getInitialFocusTraversable, 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

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface javafx.css.Styleable

    getStyleableNode
  • Field Details

    • resources

      private ResourceBundle resources
    • DEFAULT_ZONE_ID

      static final ZoneId DEFAULT_ZONE_ID
    • timeGridPane

      javafx.scene.layout.GridPane timeGridPane
    • startDateTimeTextField

      LocalDateTimeTextField startDateTimeTextField
    • startDateTextField

      LocalDateTextField startDateTextField
    • DEFAULT_START_TIME

      protected static final LocalTime DEFAULT_START_TIME
    • endLabel

      javafx.scene.control.Label endLabel
    • wholeDayCheckBox

      private javafx.scene.control.CheckBox wholeDayCheckBox
    • summaryTextField

      javafx.scene.control.TextField summaryTextField
    • descriptionTextArea

      javafx.scene.control.TextArea descriptionTextArea
    • locationLabel

      javafx.scene.control.Label locationLabel
    • locationTextField

      javafx.scene.control.TextField locationTextField
    • categoryTextField

      javafx.scene.control.TextField categoryTextField
    • categorySelectionGridPane

      private CategorySelectionGridPane categorySelectionGridPane
    • saveComponentButton

      private javafx.scene.control.Button saveComponentButton
    • cancelComponentButton

      private javafx.scene.control.Button cancelComponentButton
    • saveRepeatButton

      private javafx.scene.control.Button saveRepeatButton
    • cancelRepeatButton

      private javafx.scene.control.Button cancelRepeatButton
    • deleteComponentButton

      private javafx.scene.control.Button deleteComponentButton
    • appointmentTab

      private javafx.scene.control.Tab appointmentTab
    • repeatableTab

      private javafx.scene.control.Tab repeatableTab
    • startDateTextListener

      private final javafx.beans.value.ChangeListener<? super LocalDate> startDateTextListener
    • startDateTimeTextListener

      private final javafx.beans.value.ChangeListener<? super LocalDateTime> startDateTimeTextListener
    • errorCallback

      protected final javafx.util.Callback<Throwable,Void> errorCallback
    • vComponentEdited

      T extends VDisplayable<T> vComponentEdited
    • initialCategory

      private String initialCategory
    • startOriginalRecurrence

      Temporal startOriginalRecurrence
    • startRecurrenceProperty

      javafx.beans.property.ObjectProperty<Temporal> startRecurrenceProperty
      Contains the actual start recurrence value - Temporal LocalDate or LocalDateTime depending on wholeDayCheckBox
    • dateTimeStartListener

      javafx.beans.value.ChangeListener<? super Temporal> dateTimeStartListener
      Synch recurrence dates when DTSTART is modified (can occur when
      invalid reference
      synchStartDatePickerAndComponent#startDatePicker
      changes
  • Constructor Details

    • EditDescriptiveVBox

      public EditDescriptiveVBox()
  • Method Details

    • getResources

      public ResourceBundle getResources()
    • synchStartDate

      void synchStartDate(LocalDate oldValue, LocalDate newValue)
      Update startDateTimeTextField when startDateTextField changes
    • synchStartDateTime

      void synchStartDateTime(LocalDateTime oldValue, LocalDateTime newValue)
      Update startDateTextField when startDateTimeTextField changes
    • setupData

      public void setupData(T vComponent, Temporal startRecurrence, Temporal endRecurrence, List<String> categories)
      Provide necessary data to setup
      Parameters:
      vComponent - - component to be edited
      startRecurrence - - start of selected recurrence
      endRecurrence - - end of selected recurrence
      categories - - list of category names
    • handleWholeDayChange

      void handleWholeDayChange(T vComponent, Boolean newSelection)
    • synchRecurrenceDates

      void synchRecurrenceDates(Temporal oldValue, Temporal newValue)
    • startRecurrenceChangedAlert

      @Deprecated protected void startRecurrenceChangedAlert(Temporal t1, Temporal t2)
      Deprecated.
    • invalidCategoryAlert

      protected void invalidCategoryAlert(String newString, int otherMatch)
    • loadFxml

      protected static void loadFxml(URL fxmlFile, Object rootController)