Class CustomTabPanel

  • All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible
    Direct Known Subclasses:
    ScrollableCustomTabPanel

    public class CustomTabPanel
    extends javax.swing.JPanel
    This class represents a tab in the TabbedCustomDialog class. This tab component hosts all the various methods for adding controls to a tab.
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class javax.swing.JPanel

        javax.swing.JPanel.AccessibleJPanel
      • Nested classes/interfaces inherited from class javax.swing.JComponent

        javax.swing.JComponent.AccessibleJComponent
      • Nested classes/interfaces inherited from class java.awt.Container

        java.awt.Container.AccessibleAWTContainer
      • Nested classes/interfaces inherited from class java.awt.Component

        java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected java.util.Map<java.lang.String,​javax.swing.ButtonGroup> buttonGroups  
      protected int CONTROL_COLUMN_WIDTH  
      protected java.lang.String label  
      protected int LABEL_COLUMN_WIDTH  
      protected TabbedCustomDialog owner  
      • Fields inherited from class javax.swing.JComponent

        listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
      • Fields inherited from class java.awt.Component

        accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
      • Fields inherited from interface java.awt.image.ImageObserver

        ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void addBasicLabelledComponent​(java.lang.String label, java.awt.Component component)  
      protected void addBasicLabelledComponent​(java.lang.String label, java.awt.Component component, boolean fillVertical)  
      protected void addBasicLabelledComponent​(java.lang.String label, java.awt.Component component, boolean fillVertical, boolean fillHorizontal)  
      protected void addComponent​(java.awt.Component component, int col)  
      protected void addComponent​(java.awt.Component component, int row, int col, int width, int height)  
      protected void addComponent​(java.awt.Component component, int row, int col, int width, int height, boolean fillVertical)  
      protected void addComponent​(java.awt.Component component, int row, int col, int width, int height, double weightx, double weighty)  
      protected void addComponent​(java.awt.Component component, java.awt.GridBagConstraints c)  
      protected void addComponents​(java.awt.Component leftComponent, java.awt.Component rightComponent)  
      CustomTabPanel appendBatchExporterLoadFileSettings​(java.lang.String identifier)
      Appends a control with controls used to provide loadfile export settings, as passed to BatchExporter.addLoadFile(String, Map).
      CustomTabPanel appendBatchExporterNativeSettings​(java.lang.String identifier)
      Appends a control with controls used to provide native export settings, as passed to BatchExporter.addProduct(String, Map) for the "native" product.
      CustomTabPanel appendBatchExporterPdfSettings​(java.lang.String identifier)
      Appends a control with controls used to provide PDF export settings, as passed to BatchExporter.addProduct(String, Map) for the "pdf" product.
      CustomTabPanel appendBatchExporterTextSettings​(java.lang.String identifier)
      Appends a control with controls used to provide text export settings, as passed to BatchExporter.addProduct(String, Map) for the "text" product.
      CustomTabPanel appendBatchExporterTraversalSettings​(java.lang.String identifier)
      Appends a control with controls used to provide traversal settings, as passed to BatchExporter.setTraversalOptions(Map).
      CustomTabPanel appendButton​(java.lang.String identifier, java.lang.String controlLabel, java.awt.event.ActionListener actionListener)
      Appends a JButton control with the specified label and attaches the provided action listener to the button.
      ButtonRow appendButtonRow​(java.lang.String identifier)  
      CustomTabPanel appendCheckableTextField​(java.lang.String checkBoxId, boolean isChecked, java.lang.String textFieldId, java.lang.String textFieldDefault, java.lang.String controlLabel)
      Appends a text field with an associated check box.
      CustomTabPanel appendCheckBox​(java.lang.String identifier, java.lang.String controlLabel, boolean isChecked)
      Appends a check box control to the tab.
      CustomTabPanel appendCheckBoxes​(java.lang.String identifierA, java.lang.String controlLabelA, boolean isCheckedA, java.lang.String identifierB, java.lang.String controlLabelB, boolean isCheckedB)
      Appends 2 check boxes, in a single row, to the tab.
      <T> CustomTabPanel appendChoiceTable​(java.lang.String identifier, java.lang.String controlLabel, java.util.List<Choice<T>> choices)
      Appends a control which allows the user to select multiple choices.
      CustomTabPanel appendComboBox​(java.lang.String identifier, java.lang.String controlLabel, java.util.Collection<java.lang.String> choices)
      Appends a combo box control allowing a user to select one of many choices.
      CustomTabPanel appendComboBox​(java.lang.String identifier, java.lang.String controlLabel, java.util.Collection<java.lang.String> choices, java.lang.Runnable callback)
      Appends a combo box control allowing a user to select one of many choices.
      CustomTabPanel appendComboItemBox​(java.lang.String identifier, java.lang.String controlLabel, java.util.List<ComboItem> choices, java.lang.Runnable callback)
      Appends a combo box control which takes a list of ComboItem instances, allowing you to have each entry represent a specific value while having a separate value as the labeled choice displayed in the combo box.
      CustomTabPanel appendCsvTable​(java.lang.String identifier, java.util.List<java.lang.String> headers)
      Appends a table control with the specified headers, which is capable of importing a CSV with the same headers.
      CustomTabPanel appendCsvTable​(java.lang.String identifier, java.util.List<java.lang.String> headers, java.lang.String defaultImportDirectory)
      Appends a table control with the specified headers, which is capable of importing a CSV with the same headers.
      CustomTabPanel appendDatePicker​(java.lang.String identifier, java.lang.String controlLabel)
      Appends a date picker field control to the dialog with the default date being today's date.
      CustomTabPanel appendDatePicker​(java.lang.String identifier, java.lang.String controlLabel, java.lang.Object defaultDate)
      Appends a date picker field control to the dialog
      CustomTabPanel appendDirectoryChooser​(java.lang.String identifier, java.lang.String controlLabel)
      Appends a control which allows a user to select a directory.
      CustomTabPanel appendDirectoryChooser​(java.lang.String identifier, java.lang.String controlLabel, PathSelectedCallback callback)
      Appends a control which allows a user to select a directory.
      CustomTabPanel appendDirectoryChooser​(java.lang.String identifier, java.lang.String controlLabel, java.lang.String initialDirectory)
      Appends a control which allows a user to select a directory.
      CustomTabPanel appendDirectoryChooser​(java.lang.String identifier, java.lang.String controlLabel, java.lang.String initialDirectory, PathSelectedCallback callback)
      Appends a control which allows a user to select a directory.
      CustomTabPanel appendDynamicTable​(java.lang.String identifier, java.lang.String controlLabel, java.util.List<java.lang.String> headers, java.util.List<java.lang.Object> records, DynamicTableValueCallback callback)
      Appends a fairly flexible table control to the tab.
      CustomTabPanel appendFormattedInformation​(java.lang.String identifier, java.lang.String controlLabel, java.lang.String text)
      Appends a read only text area control for you to place some user information similar to appendInformation(String, String, String).
      CustomTabPanel appendHeader​(java.lang.String text)
      Appends a header label that spans 2 columns.
      CustomTabPanel appendImage​(java.io.File imageFile)
      Appends an image to the tab
      CustomTabPanel appendImage​(java.lang.String imageFile)
      Appends an image to the tab
      CustomTabPanel appendInformation​(java.lang.String identifier, java.lang.String controlLabel, java.lang.String text)
      Appends a read only text area control for you to place some user information.
      CustomTabPanel appendLabel​(java.lang.String identifier, java.lang.String text)
      Appends a label that spans 2 columns.
      CustomTabPanel appendLocalWorkerSettings​(java.lang.String identifier)
      Appends a control with controls used to provide worker settings, as passed to ParallelProcessingConfigurable.setParallelProcessingSettings(Map).
      CustomTabPanel appendMultipleChoiceComboBox​(java.lang.String identifier, java.lang.String controlLabel, java.util.List<java.lang.String> choices)
      Appends a combo box which allows you to select multiple choices from its drop down list by checking them.
      CustomTabPanel appendMultipleChoiceComboBox​(java.lang.String identifier, java.lang.String controlLabel, java.util.List<java.lang.String> choices, java.util.List<java.lang.String> defaultCheckedChoices)
      Appends a combo box which allows you to select multiple choices from its drop down list by checking them.
      CustomTabPanel appendOcrSettings​(java.lang.String identifier)
      Appends a control with controls used to provide OCR settings, as passed to OcrProcessor.
      CustomTabPanel appendOpenFileChooser​(java.lang.String identifier, java.lang.String controlLabel, java.lang.String fileTypeName, java.lang.String fileExtension)
      Appends a control which allows a user to select a file to open.
      CustomTabPanel appendOpenFileChooser​(java.lang.String identifier, java.lang.String controlLabel, java.lang.String fileTypeName, java.lang.String fileExtension, PathSelectedCallback callback)
      Appends a control which allows a user to select a file to open.
      CustomTabPanel appendOpenFileChooser​(java.lang.String identifier, java.lang.String controlLabel, java.lang.String fileTypeName, java.lang.String fileExtension, java.lang.String initialDirectory)
      Appends a control which allows a user to select a file to open.
      CustomTabPanel appendOpenFileChooser​(java.lang.String identifier, java.lang.String controlLabel, java.lang.String fileTypeName, java.lang.String fileExtension, java.lang.String initialDirectory, PathSelectedCallback callback)
      Appends a control which allows a user to select a file to open.
      CustomTabPanel appendPasswordField​(java.lang.String identifier, java.lang.String controlLabel, java.lang.String text)
      Appends a password text field control to the dialog.
      CustomTabPanel appendPathList​(java.lang.String identifier)
      Appends a list box allowing the user to specify multiple file and directory paths.
      CustomTabPanel appendPathList​(java.lang.String identifier, java.util.List<java.lang.String> initialPaths)
      Appends a list box allowing the user to specify multiple file and directory paths.
      CustomTabPanel appendRadioButton​(java.lang.String identifier, java.lang.String controlLabel, java.lang.String radioButtonGroupName, boolean isChecked)
      Appends a radio button control to the dialog.
      CustomTabPanel appendRadioButtonGroup​(java.lang.String groupLabel, java.lang.String radioButtonGroupName, java.util.Map<java.lang.String,​java.lang.String> radioButtonChoices)  
      CustomTabPanel appendRadioButtonLeft​(java.lang.String identifier, java.lang.String controlLabel, java.lang.String radioButtonGroupName, boolean isChecked)  
      CustomTabPanel appendSaveFileChooser​(java.lang.String identifier, java.lang.String controlLabel, java.lang.String fileTypeName, java.lang.String fileExtension)
      Appends a control which allows a user to select a file to save.
      CustomTabPanel appendSaveFileChooser​(java.lang.String identifier, java.lang.String controlLabel, java.lang.String fileTypeName, java.lang.String fileExtension, java.lang.String initialDirectory)
      Appends a control which allows a user to select a file to save.
      CustomTabPanel appendSearchableComboBox​(java.lang.String identifier, java.lang.String controlLabel, java.util.Collection<java.lang.String> choices)
      Appends a combo box control allowing a user to select one of many choices and allows for filtering choices by typing in a value.
      CustomTabPanel appendSeparator​(java.lang.String label)
      Appends a separator that spans 2 columns.
      CustomTabPanel appendSlider​(java.lang.String identifier, java.lang.String controlLabel)
      Creates a new slider control that lets the user specify a value in the range 0 to 100 with an initial value of 50.
      CustomTabPanel appendSlider​(java.lang.String identifier, java.lang.String controlLabel, double initialValue)
      Creates a new slider control that lets the user specify a value within the range of 0.0 to 1.0.
      CustomTabPanel appendSlider​(java.lang.String identifier, java.lang.String controlLabel, double initialValue, double min, double max)
      Creates a new slider control that lets the user specify a value within a range using doubles.
      CustomTabPanel appendSlider​(java.lang.String identifier, java.lang.String controlLabel, int initialValue)
      Creates a new slider control that lets the user specify a value in the range 0 to 100.
      CustomTabPanel appendSlider​(java.lang.String identifier, java.lang.String controlLabel, int initialValue, int min, int max)
      Creates a new slider control that lets the user specify a value within a range using integers.
      CustomTabPanel appendSpinner​(java.lang.String identifier, java.lang.String controlLabel)
      Creates a up/down number picker control (known in Java as a Spinner).
      CustomTabPanel appendSpinner​(java.lang.String identifier, java.lang.String controlLabel, int initialValue)
      Creates a up/down number picker control (known in Java as a Spinner).
      CustomTabPanel appendSpinner​(java.lang.String identifier, java.lang.String controlLabel, int initialValue, int min, int max)
      Creates a up/down number picker control (known in Java as a Spinner).
      CustomTabPanel appendSpinner​(java.lang.String identifier, java.lang.String controlLabel, int initialValue, int min, int max, int step)
      Creates a up/down number picker control (known in Java as a Spinner).
      CustomTabPanel appendStringChoiceTable​(java.lang.String identifier, java.lang.String controlLabel, java.util.Collection<java.lang.String> choices)
      Appends a control which allows the user to select multiple choices.
      CustomTabPanel appendStringList​(java.lang.String identifier)
      Appends a list box allowing the user to specify string values.
      CustomTabPanel appendStringList​(java.lang.String identifier, boolean editable)
      Appends a list box allowing the user to specify string values.
      CustomTabPanel appendStringList​(java.lang.String identifier, java.util.List<java.lang.String> initialValues)
      Appends a list box allowing the user to specify string values.
      CustomTabPanel appendStringList​(java.lang.String identifier, java.util.List<java.lang.String> initialValues, boolean editable)
      Appends a list box allowing the user to specify string values.
      CustomTabPanel appendTextArea​(java.lang.String identifier, java.lang.String controlLabel, java.lang.String text)
      Appends a text area control to the dialog.
      CustomTabPanel appendTextField​(java.lang.String identifier, java.lang.String controlLabel, java.lang.String text)
      Appends a text field control to the dialog.
      protected CustomTabPanel buildGenericSlider​(java.lang.String identifier, java.lang.String controlLabel, javax.swing.BoundedRangeModel model, java.util.function.Consumer<javax.swing.JLabel> displayAdapter)
      Put together the UI for a Slider control
      void doNotSerialize​(java.lang.String identifier)
      Allows you to specify that a particular control's value should not be serialized in calls to toMap(boolean) with a value of true (meaning it is generating map of setting for generating JSON).
      void enabledIfAnyChecked​(java.lang.String dependentControlIdentifier, java.lang.String... targetCheckableIdentifiers)
      Similar to enabledOnlyWhenChecked(String, String), this method registers event handlers on one or more checkable controls such that a given dependent control is only enabled when at least one of the specified target checkable controls are checked.
      void enabledOnlyWhenAllChecked​(java.lang.String dependentControlIdentifier, java.lang.String... targetCheckableIdentifiers)
      Similar to enabledOnlyWhenChecked(String, String), this method registers event handlers on one or more checkable controls such that a given dependent control is only enabled when all of the specified target checkable controls are checked.
      void enabledOnlyWhenChecked​(java.lang.String dependentControlIdentifier, java.lang.String targetCheckableIdentifier)
      Registers an event handle such that a given control is only enabled when another checkable control is checked.
      void enabledOnlyWhenNoneChecked​(java.lang.String dependentControlIdentifier, java.lang.String... targetCheckableIdentifiers)
      Similar to enabledOnlyWhenChecked(String, String), this method registers event handlers on one or more checkable controls such that a given dependent control is only enabled when none of the specified target checkable controls are checked.
      void enabledOnlyWhenNotChecked​(java.lang.String dependentControlIdentifier, java.lang.String targetCheckableIdentifier)
      Registers an event handle such that a given control is only enabled when another checkable control is not checked.
      int getChoiceTableHeight()  
      java.awt.Component getControl​(java.lang.String identifier)
      Allows you to get the actual Java Swing control.
      java.lang.String getLabel()
      Gets the label of this tab.
      java.lang.String getText​(java.lang.String identifier)
      Gets the text present in a TextField or PasswordField.
      boolean isChecked​(java.lang.String identifier)
      Gets whether a particular Checkbox or RadioButton is checked.
      protected javax.swing.JLabel makeComponentLabel​(java.lang.String text)  
      protected java.awt.GridBagConstraints makeLabelConstraintsForNextRow()  
      void setChecked​(java.lang.String identifier, boolean isChecked)
      Sets whether a particular Checkbox or RadioButton is checked.
      void setChoiceTableHeight​(int choiceTableHeight)  
      void setDate​(java.lang.String identifier, java.lang.Object value)
      Sets the date contained in a date picker control previously added through a call to appendDatePicker(String, String) or appendDatePicker(String, String, Object).
      void setEnabled​(boolean value)  
      void setLabel​(java.lang.String label)
      Sets the label of this tab.
      void setText​(java.lang.String identifier, java.lang.String text)
      Sets the text present in a TextField or PasswordField.
      java.lang.String toJson()
      Gets a JSON String equivalent of the dialog's values.
      java.util.Map<java.lang.String,​java.lang.Object> toMap()
      Returns a Map of the control values.
      java.util.Map<java.lang.String,​java.lang.Object> toMap​(boolean forJsonCreation)
      Returns a Map of the control values.
      void trackComponent​(java.lang.String identifier, java.awt.Component component)
      Registers control to be tracked which is important to ensuring that control values are able to be passed back to script and eligible for being saved to or loaded from JSON.
      void whenDeserializing​(java.lang.String identifier, ControlDeserializationHandler handler)
      Allows you to specify code which customizes how a particular control's value is deserialized.
      void whenSerializing​(java.lang.String identifier, ControlSerializationHandler handler)
      Allows you to specify code which customizes how a particular control's value is serialized.
      void whenTextChanged​(java.lang.String identifier, java.util.function.Consumer<java.lang.String> callback)
      Registers a callback which is notified when a particular text control's value is modified.
      • Methods inherited from class javax.swing.JPanel

        getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
      • Methods inherited from class javax.swing.JComponent

        addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
      • Methods inherited from class java.awt.Container

        add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
      • Methods inherited from class java.awt.Component

        action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • label

        protected java.lang.String label
      • buttonGroups

        protected java.util.Map<java.lang.String,​javax.swing.ButtonGroup> buttonGroups
      • LABEL_COLUMN_WIDTH

        protected int LABEL_COLUMN_WIDTH
      • CONTROL_COLUMN_WIDTH

        protected int CONTROL_COLUMN_WIDTH
    • Constructor Detail

      • CustomTabPanel

        protected CustomTabPanel()
      • CustomTabPanel

        public CustomTabPanel​(java.lang.String label,
                              TabbedCustomDialog owner)
    • Method Detail

      • addBasicLabelledComponent

        protected void addBasicLabelledComponent​(java.lang.String label,
                                                 java.awt.Component component)
      • addBasicLabelledComponent

        protected void addBasicLabelledComponent​(java.lang.String label,
                                                 java.awt.Component component,
                                                 boolean fillVertical)
      • makeLabelConstraintsForNextRow

        protected java.awt.GridBagConstraints makeLabelConstraintsForNextRow()
      • makeComponentLabel

        protected javax.swing.JLabel makeComponentLabel​(java.lang.String text)
      • addBasicLabelledComponent

        protected void addBasicLabelledComponent​(java.lang.String label,
                                                 java.awt.Component component,
                                                 boolean fillVertical,
                                                 boolean fillHorizontal)
      • addComponent

        protected void addComponent​(java.awt.Component component,
                                    int col)
      • addComponents

        protected void addComponents​(java.awt.Component leftComponent,
                                     java.awt.Component rightComponent)
      • addComponent

        protected void addComponent​(java.awt.Component component,
                                    int row,
                                    int col,
                                    int width,
                                    int height)
      • addComponent

        protected void addComponent​(java.awt.Component component,
                                    int row,
                                    int col,
                                    int width,
                                    int height,
                                    boolean fillVertical)
      • addComponent

        protected void addComponent​(java.awt.Component component,
                                    int row,
                                    int col,
                                    int width,
                                    int height,
                                    double weightx,
                                    double weighty)
      • addComponent

        protected void addComponent​(java.awt.Component component,
                                    java.awt.GridBagConstraints c)
      • trackComponent

        public void trackComponent​(java.lang.String identifier,
                                   java.awt.Component component)
                            throws java.lang.Exception
        Registers control to be tracked which is important to ensuring that control values are able to be passed back to script and eligible for being saved to or loaded from JSON.
        Parameters:
        identifier - Unique identifier associated with this control
        component - The actual control
        Throws:
        java.lang.Exception - Thrown is something goes wrong
      • appendCheckBox

        public CustomTabPanel appendCheckBox​(java.lang.String identifier,
                                             java.lang.String controlLabel,
                                             boolean isChecked)
                                      throws java.lang.Exception
        Appends a check box control to the tab. Calls to getControl(String) should cast result to JCheckBox.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        isChecked - Whether this is checked initially.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendCheckBoxes

        public CustomTabPanel appendCheckBoxes​(java.lang.String identifierA,
                                               java.lang.String controlLabelA,
                                               boolean isCheckedA,
                                               java.lang.String identifierB,
                                               java.lang.String controlLabelB,
                                               boolean isCheckedB)
                                        throws java.lang.Exception
        Appends 2 check boxes, in a single row, to the tab.
        Parameters:
        identifierA - The unique identifier for the first check box.
        controlLabelA - The label for the first checkbox.
        isCheckedA - Whether the first check box is checked by default.
        identifierB - The unique identifier of the second check box.
        controlLabelB - The label for the second checkbox.
        isCheckedB - Whether the second check box is checked by default.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if a provided identifier has already been used.
      • appendRadioButton

        public CustomTabPanel appendRadioButton​(java.lang.String identifier,
                                                java.lang.String controlLabel,
                                                java.lang.String radioButtonGroupName,
                                                boolean isChecked)
                                         throws java.lang.Exception
        Appends a radio button control to the dialog. Calls to getControl(String) should cast result to JRadioButton.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        radioButtonGroupName - The name of the radio button group to assign this to. The group determines what other radio buttons are unchecked when a given radio button is checked.
        isChecked - Whether this is checked initially.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendRadioButtonLeft

        public CustomTabPanel appendRadioButtonLeft​(java.lang.String identifier,
                                                    java.lang.String controlLabel,
                                                    java.lang.String radioButtonGroupName,
                                                    boolean isChecked)
                                             throws java.lang.Exception
        Throws:
        java.lang.Exception
      • appendRadioButtonGroup

        public CustomTabPanel appendRadioButtonGroup​(java.lang.String groupLabel,
                                                     java.lang.String radioButtonGroupName,
                                                     java.util.Map<java.lang.String,​java.lang.String> radioButtonChoices)
                                              throws java.lang.Exception
        Throws:
        java.lang.Exception
      • appendHeader

        public CustomTabPanel appendHeader​(java.lang.String text)
        Appends a header label that spans 2 columns.
        Parameters:
        text - The text of the label.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
      • appendLabel

        public CustomTabPanel appendLabel​(java.lang.String identifier,
                                          java.lang.String text)
                                   throws java.lang.Exception
        Appends a label that spans 2 columns.
        Parameters:
        identifier - The unique identifier for this control.
        text - The text of the label.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if this identifier has already been used
      • appendImage

        public CustomTabPanel appendImage​(java.io.File imageFile)
        Appends an image to the tab
        Parameters:
        imageFile - File object representing the image file on disk
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
      • appendImage

        public CustomTabPanel appendImage​(java.lang.String imageFile)
        Appends an image to the tab
        Parameters:
        imageFile - String representing path to the image file on disk
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
      • appendSeparator

        public CustomTabPanel appendSeparator​(java.lang.String label)
        Appends a separator that spans 2 columns.
        Parameters:
        label - Label text that will appear in the center of the separator.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
      • appendTextField

        public CustomTabPanel appendTextField​(java.lang.String identifier,
                                              java.lang.String controlLabel,
                                              java.lang.String text)
                                       throws java.lang.Exception
        Appends a text field control to the dialog. Calls to getControl(String) should cast result to JTextField.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        text - The initial text this text field should contain.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendCheckableTextField

        public CustomTabPanel appendCheckableTextField​(java.lang.String checkBoxId,
                                                       boolean isChecked,
                                                       java.lang.String textFieldId,
                                                       java.lang.String textFieldDefault,
                                                       java.lang.String controlLabel)
                                                throws java.lang.Exception
        Appends a text field with an associated check box. Text field is enabled/disabled based on whether check box is checked.
        Parameters:
        checkBoxId - The unique identifier of the check box.
        isChecked - Whether the check box is checked by default.
        textFieldId - The unique identifier of the text field.
        textFieldDefault - The default text of the text field.
        controlLabel - The label of the control.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if a provided identifier has already been used.
      • appendButton

        public CustomTabPanel appendButton​(java.lang.String identifier,
                                           java.lang.String controlLabel,
                                           java.awt.event.ActionListener actionListener)
                                    throws java.lang.Exception
        Appends a JButton control with the specified label and attaches the provided action listener to the button. From Ruby pass a block to add a handler to the button.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label text of the button
        actionListener - The action listener to attach to the button.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendButtonRow

        public ButtonRow appendButtonRow​(java.lang.String identifier)
      • buildGenericSlider

        protected CustomTabPanel buildGenericSlider​(java.lang.String identifier,
                                                    java.lang.String controlLabel,
                                                    javax.swing.BoundedRangeModel model,
                                                    java.util.function.Consumer<javax.swing.JLabel> displayAdapter)
                                             throws java.lang.Exception
        Put together the UI for a Slider control

        This method doesn't know about the underlying data or its type. But given the name, label, the data model which does know this information, and a callback that can translate into a JLabel text, this method can construct the visual UI.

        Parameters:
        identifier - The unique identifier for this control, used to modify the control or get its result value
        controlLabel - String to display in the UI to label this control
        model - The BoundedRangeModel which controls and stores the value and its range limits
        displayAdapter - A Consumer which can take a JLabel and display the model's current value in it. The consumer will need its own reference to the model, as it will not get the model from this callback.
        Returns:
        this CustomTabPanel instance to allow method chaining
        Throws:
        java.lang.Exception - if the identifier has already been used
      • appendSlider

        public CustomTabPanel appendSlider​(java.lang.String identifier,
                                           java.lang.String controlLabel,
                                           double initialValue,
                                           double min,
                                           double max)
                                    throws java.lang.Exception
        Creates a new slider control that lets the user specify a value within a range using doubles.

        A slider is best used for setting a value over a long, continuous range where precision may not be most important. For example, on a scale of 0 to 10,000 selecting 15 or 16 isn't all that important, but moving along the range of that length of scale would be.

        This method uses doubles for storage, and allows the selection of numbers up to 5 decimal places deep. Behind the spinner is an instance of DoubleBoundedRangeModel which stores the range and value and can be used to update the field. This can be retrieved using:

             panel = panel.appendSlider(identifier, label, 0.0, 0.0, 1.0);
             JSlider slider = (JSlider)panel.getControl(identifier);
             DoubleBoundedRangeModel model = slider.getModel();
         
        Parameters:
        identifier - The unique identifier for this control, used to modify the control or get its result value
        controlLabel - String to display in the UI to label this control
        initialValue - The initial position for slider and resulting value
        min - The minimum assignable value
        max - The maximum assignable value
        Returns:
        this CustomTabPanel instance to allow method chaining
        Throws:
        java.lang.Exception - if the identifier has already been used
      • appendSlider

        public CustomTabPanel appendSlider​(java.lang.String identifier,
                                           java.lang.String controlLabel,
                                           double initialValue)
                                    throws java.lang.Exception
        Creates a new slider control that lets the user specify a value within the range of 0.0 to 1.0.

        A slider is best used for setting a value over a long, continuous range where precision may not be most important. For example, on a scale of 0 to 10,000 selecting 15 or 16 isn't all that important, but moving along the range of that length of scale would be.

        This method uses doubles for storage, and allows the selection of numbers from 0 to 1 with up to 5 decimal places precision. Behind the spinner is an instance of DoubleBoundedRangeModel which stores the range and value and can be used to update the field. This can be retrieved using:

             panel = panel.appendSlider(identifier, label, 0.0);
             JSlider slider = (JSlider)panel.getControl(identifier);
             DoubleBoundedRangeModel model = (DoubleBoundedRangeModel)slider.getModel();
         
        Parameters:
        identifier - The unique identifier for this control, used to modify the control or get its result value
        controlLabel - String to display in the UI to label this control
        initialValue - The initial position for slider and resulting value
        Returns:
        this CustomTabPanel instance to allow method chaining
        Throws:
        java.lang.Exception - if the identifier has already been used
      • appendSlider

        public CustomTabPanel appendSlider​(java.lang.String identifier,
                                           java.lang.String controlLabel,
                                           int initialValue,
                                           int min,
                                           int max)
                                    throws java.lang.Exception
        Creates a new slider control that lets the user specify a value within a range using integers.

        A slider is best used for setting a value over a long, continuous range where precision may not be most important. For example, on a scale of 0 to 10,000 selecting 15 or 16 isn't all that important, but moving along the range of that length of scale would be.

        This method uses ints for storage Behind the spinner is an instance of DefaultBoundedRangeModel which stores the range and value and can be used to update the field. This can be retrieved using:

             panel = panel.appendSlider(identifier, label, 10, 0, 100);
             JSlider slider = (JSlider)panel.getControl(identifier);
             BoundedRangeModel model = slider.getModel();
         
        Parameters:
        identifier - The unique identifier for this control, used to modify the control or get its result value
        controlLabel - String to display in the UI to label this control
        initialValue - The initial position for slider and resulting value
        min - The minimum assignable value
        max - The maximum assignable value
        Returns:
        this CustomTabPanel instance to allow method chaining
        Throws:
        java.lang.Exception - if the identifier has already been used
      • appendSlider

        public CustomTabPanel appendSlider​(java.lang.String identifier,
                                           java.lang.String controlLabel,
                                           int initialValue)
                                    throws java.lang.Exception
        Creates a new slider control that lets the user specify a value in the range 0 to 100.

        A slider is best used for setting a value over a long, continuous range where precision may not be most important. For example, on a scale of 0 to 10,000 selecting 15 or 16 isn't all that important, but moving along the range of that length of scale would be.

        This method uses ints for storage Behind the spinner is an instance of DefaultBoundedRangeModel which stores the range and value and can be used to update the field. This can be retrieved using:

             panel = panel.appendSlider(identifier, label, 10);
             JSlider slider = (JSlider)panel.getControl(identifier);
             BoundedRangeModel model = slider.getModel();
         
        Parameters:
        identifier - The unique identifier for this control, used to modify the control or get its result value
        controlLabel - String to display in the UI to label this control
        initialValue - The initial position for slider and resulting value
        Returns:
        this CustomTabPanel instance to allow method chaining
        Throws:
        java.lang.Exception - if the identifier has already been used
      • appendSlider

        public CustomTabPanel appendSlider​(java.lang.String identifier,
                                           java.lang.String controlLabel)
                                    throws java.lang.Exception
        Creates a new slider control that lets the user specify a value in the range 0 to 100 with an initial value of 50.

        A slider is best used for setting a value over a long, continuous range where precision may not be most important. For example, on a scale of 0 to 10,000 selecting 15 or 16 isn't all that important, but moving along the range of that length of scale would be.

        This method uses ints for storage Behind the spinner is an instance of DefaultBoundedRangeModel which stores the range and value and can be used to update the field. This can be retrieved using:

             panel = panel.appendSlider(identifier, label);
             JSlider slider = (JSlider)panel.getControl(identifier);
             BoundedRangeModel model = slider.getModel();
         
        Parameters:
        identifier - The unique identifier for this control, used to modify the control or get its result value
        controlLabel - String to display in the UI to label this control
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - if the identifier has already been used
      • appendSpinner

        public CustomTabPanel appendSpinner​(java.lang.String identifier,
                                            java.lang.String controlLabel,
                                            int initialValue,
                                            int min,
                                            int max,
                                            int step)
                                     throws java.lang.Exception
        Creates a up/down number picker control (known in Java as a Spinner).
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        initialValue - Initial value for the control.
        min - The minimum value for the control.
        max - The maximum value for the control.
        step - Determines the "step" value, which determines how much up/down buttons increment.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendSpinner

        public CustomTabPanel appendSpinner​(java.lang.String identifier,
                                            java.lang.String controlLabel,
                                            int initialValue,
                                            int min,
                                            int max)
                                     throws java.lang.Exception
        Creates a up/down number picker control (known in Java as a Spinner). Uses a default step of 1.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        initialValue - Initial value for the control.
        min - The minimum value for the control.
        max - The maximum value for the control.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendSpinner

        public CustomTabPanel appendSpinner​(java.lang.String identifier,
                                            java.lang.String controlLabel,
                                            int initialValue)
                                     throws java.lang.Exception
        Creates a up/down number picker control (known in Java as a Spinner). Uses a default step of 1, a minimum of 0 and a maximum of Integer.MAX_VALUE.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        initialValue - Initial value for the control.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendSpinner

        public CustomTabPanel appendSpinner​(java.lang.String identifier,
                                            java.lang.String controlLabel)
                                     throws java.lang.Exception
        Creates a up/down number picker control (known in Java as a Spinner). Uses a default step of 1, a minimum of 0 , a maximum of Integer.MAX_VALUE and an initial value of 0.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendDatePicker

        public CustomTabPanel appendDatePicker​(java.lang.String identifier,
                                               java.lang.String controlLabel,
                                               java.lang.Object defaultDate)
                                        throws java.lang.Exception
        Appends a date picker field control to the dialog
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        defaultDate - The default date to display. Can be null for no default, a java.util.Date object or a String in the format "yyyymmdd".
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendDatePicker

        public CustomTabPanel appendDatePicker​(java.lang.String identifier,
                                               java.lang.String controlLabel)
                                        throws java.lang.Exception
        Appends a date picker field control to the dialog with the default date being today's date.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendTextArea

        public CustomTabPanel appendTextArea​(java.lang.String identifier,
                                             java.lang.String controlLabel,
                                             java.lang.String text)
                                      throws java.lang.Exception
        Appends a text area control to the dialog. Calls to getControl(String) should cast result to JTextArea.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        text - The initial text this text area should contain.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendInformation

        public CustomTabPanel appendInformation​(java.lang.String identifier,
                                                java.lang.String controlLabel,
                                                java.lang.String text)
                                         throws java.lang.Exception
        Appends a read only text area control for you to place some user information. Calls to getControl(String) should cast result to JTextArea.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        text - The initial text this text area should contain.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendFormattedInformation

        public CustomTabPanel appendFormattedInformation​(java.lang.String identifier,
                                                         java.lang.String controlLabel,
                                                         java.lang.String text)
                                                  throws java.lang.Exception
        Appends a read only text area control for you to place some user information similar to appendInformation(String, String, String). This method differs from appendInformation(String, String, String) in that the created text area will be assigned a monospaced font to preserve formatting of the provided text. Calls to getControl(String) should cast result to JTextArea.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        text - The initial text this text area should contain.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendLocalWorkerSettings

        public CustomTabPanel appendLocalWorkerSettings​(java.lang.String identifier)
                                                 throws java.lang.Exception
        Appends a control with controls used to provide worker settings, as passed to ParallelProcessingConfigurable.setParallelProcessingSettings(Map).
        Parameters:
        identifier - The unique identifier of this control. Note values of nested controls will be returns as a Map under this identifier.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendBatchExporterTraversalSettings

        public CustomTabPanel appendBatchExporterTraversalSettings​(java.lang.String identifier)
                                                            throws java.lang.Exception
        Appends a control with controls used to provide traversal settings, as passed to BatchExporter.setTraversalOptions(Map).
        Parameters:
        identifier - The unique identifier of this control. Note values of nested controls will be returns as a Map under this identifier.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendBatchExporterNativeSettings

        public CustomTabPanel appendBatchExporterNativeSettings​(java.lang.String identifier)
                                                         throws java.lang.Exception
        Appends a control with controls used to provide native export settings, as passed to BatchExporter.addProduct(String, Map) for the "native" product.
        Parameters:
        identifier - The unique identifier of this control. Note values of nested controls will be returns as a Map under this identifier.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendBatchExporterTextSettings

        public CustomTabPanel appendBatchExporterTextSettings​(java.lang.String identifier)
                                                       throws java.lang.Exception
        Appends a control with controls used to provide text export settings, as passed to BatchExporter.addProduct(String, Map) for the "text" product.
        Parameters:
        identifier - The unique identifier of this control. Note values of nested controls will be returns as a Map under this identifier.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendBatchExporterPdfSettings

        public CustomTabPanel appendBatchExporterPdfSettings​(java.lang.String identifier)
                                                      throws java.lang.Exception
        Appends a control with controls used to provide PDF export settings, as passed to BatchExporter.addProduct(String, Map) for the "pdf" product.
        Parameters:
        identifier - The unique identifier of this control. Note values of nested controls will be returns as a Map under this identifier.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendBatchExporterLoadFileSettings

        public CustomTabPanel appendBatchExporterLoadFileSettings​(java.lang.String identifier)
                                                           throws java.lang.Exception
        Appends a control with controls used to provide loadfile export settings, as passed to BatchExporter.addLoadFile(String, Map).
        Parameters:
        identifier - The unique identifier of this control. Note values of nested controls will be returns as a Map under this identifier.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendOcrSettings

        public CustomTabPanel appendOcrSettings​(java.lang.String identifier)
                                         throws java.lang.Exception
        Appends a control with controls used to provide OCR settings, as passed to OcrProcessor.
        Parameters:
        identifier - The unique identifier of this control. Note values of nested controls will be returns as a Map under this identifier.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendPasswordField

        public CustomTabPanel appendPasswordField​(java.lang.String identifier,
                                                  java.lang.String controlLabel,
                                                  java.lang.String text)
                                           throws java.lang.Exception
        Appends a password text field control to the dialog. Calls to getControl(String) should cast result to JPasswordField.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        text - The initial text this field should contain.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendChoiceTable

        public <T> CustomTabPanel appendChoiceTable​(java.lang.String identifier,
                                                    java.lang.String controlLabel,
                                                    java.util.List<Choice<T>> choices)
                                             throws java.lang.Exception
        Appends a control which allows the user to select multiple choices. See appendStringChoiceTable(String, String, Collection) for a simpler usage.
        Type Parameters:
        T - The data type of the choice values. Allows any value to be supported as a choice value.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        choices - The list of Choice objects to display.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendCsvTable

        public CustomTabPanel appendCsvTable​(java.lang.String identifier,
                                             java.util.List<java.lang.String> headers)
                                      throws java.lang.Exception
        Appends a table control with the specified headers, which is capable of importing a CSV with the same headers.
        Parameters:
        identifier - The unique identifier for this control.
        headers - List of headers for the table. Also determines import CSV columns.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendCsvTable

        public CustomTabPanel appendCsvTable​(java.lang.String identifier,
                                             java.util.List<java.lang.String> headers,
                                             java.lang.String defaultImportDirectory)
                                      throws java.lang.Exception
        Appends a table control with the specified headers, which is capable of importing a CSV with the same headers.
        Parameters:
        identifier - The unique identifier for this control.
        headers - List of headers for the table. Also determines import CSV columns.
        defaultImportDirectory - Directory path that should be default directory opened when user clicks import.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendDynamicTable

        public CustomTabPanel appendDynamicTable​(java.lang.String identifier,
                                                 java.lang.String controlLabel,
                                                 java.util.List<java.lang.String> headers,
                                                 java.util.List<java.lang.Object> records,
                                                 DynamicTableValueCallback callback)
                                          throws java.lang.Exception
        Appends a fairly flexible table control to the tab. Table control relies on provided callback to get column values and optionally write column value changes back to underlying row objects.
         
         # Define what the headers will be
         headers = [
         	"First",
         	"Last",
         	"Location",
         	"Occupation",
         ]
         
         # Define the records which will be displayed, this can essentially look
         # like whatever you want as later the callback we define will be responsible
         # for getting/setting values for individual records
         records = [
         	{first: "Luke", last: "Skywalker", location: "Tatooine", occupation: "Moisture Farmer"},
         	{first: "Beru", last: "Lars", location: "Tatooine", occupation: "Moisture Farmer"},
         	{first: "Owen", last: "Lars", location: "Tatooine", occupation: "Moisture Farmer"},
         	{first: "Obi-wan", last: "Kenobi", location: "Tatooine", occupation: "Hermit"},
         ]
         
         # Now we add the dynamic table, configuring headers, records and callback which will get/set cell values
         # Method signature
         # public CustomTabPanel appendDynamicTable(String identifier, String controlLabel, List<String> headers,
         # 	List<Object> records, DynamicTableValueCallback callback)
         #
         # Callback signature
         # interact(Object record, int i, boolean setValue, Object aValue)
         #
         main_tab.appendDynamicTable("characters_table","Characters",headers,records) do |record, column_index, setting_value, value|
         	# record: The current record the table wants to interact with from the records array
         	# column_index: The column index the table wants to interact with
         	# setting_value: True if the table wishes to set a new value for this record/column index, false if reading the current value
         	# value: If setting_value is true, the value the table wishes to store back on the item
         
         	# Debugging messages
         	show_debug = false
         	if show_debug
         		if setting_value
         			puts "Setting column #{column_index} with value '#{value}' in object:\n#{record.inspect}"
         		else
         			puts "Getting column #{column_index} in object:\n#{record.inspect}"
         		end
         	end
         
         	if setting_value
         		# Logic for setting values
         		case column_index
         		when 0
         			# Example of modifying value before storing it
         			record[:first] = value.capitalize
         		when 1
         			record[:last] = value.capitalize
         		when 2
         			record[:location] = value
         		when 3
         			record[:occupation] = value
         		end
         	else
         		# Logic for getting values
         		case column_index
         		when 0
         			next record[:first]
         		when 1
         			next record[:last]
         		when 2
         			next record[:location]
         		when 3
         			next record[:occupation]
         		end
         	end
         end
         
         
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        headers - List of headers for this control.
        records - A List of objects representing each row in the table. Can be any object provided callback is able to get values from.
        callback - A callback which is responsible for reading and potentially writing values associated to each column in the table.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendStringChoiceTable

        public CustomTabPanel appendStringChoiceTable​(java.lang.String identifier,
                                                      java.lang.String controlLabel,
                                                      java.util.Collection<java.lang.String> choices)
                                               throws java.lang.Exception
        Appends a control which allows the user to select multiple choices. Calls to getControl(String) should cast result to ChoiceTableControl<String>.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        choices - The collection of String choices to display.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendComboBox

        public CustomTabPanel appendComboBox​(java.lang.String identifier,
                                             java.lang.String controlLabel,
                                             java.util.Collection<java.lang.String> choices,
                                             java.lang.Runnable callback)
                                      throws java.lang.Exception
        Appends a combo box control allowing a user to select one of many choices.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        choices - A collection of strings which will be the available choices
        callback - Optional (may be null) callback which will be invoked when the combo box value changes
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendSearchableComboBox

        public CustomTabPanel appendSearchableComboBox​(java.lang.String identifier,
                                                       java.lang.String controlLabel,
                                                       java.util.Collection<java.lang.String> choices)
                                                throws java.lang.Exception
        Appends a combo box control allowing a user to select one of many choices and allows for filtering choices by typing in a value.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        choices - A collection of strings which will be the available choices
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendComboBox

        public CustomTabPanel appendComboBox​(java.lang.String identifier,
                                             java.lang.String controlLabel,
                                             java.util.Collection<java.lang.String> choices)
                                      throws java.lang.Exception
        Appends a combo box control allowing a user to select one of many choices.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        choices - A collection of strings which will be the available choices
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendComboItemBox

        public CustomTabPanel appendComboItemBox​(java.lang.String identifier,
                                                 java.lang.String controlLabel,
                                                 java.util.List<ComboItem> choices,
                                                 java.lang.Runnable callback)
                                          throws java.lang.Exception
        Appends a combo box control which takes a list of ComboItem instances, allowing you to have each entry represent a specific value while having a separate value as the labeled choice displayed in the combo box.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        choices - A collection of ComboItem objects to be used as the choices.
        callback - Optional (may be null) callback which will be invoked when the combo box value changes.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendMultipleChoiceComboBox

        public CustomTabPanel appendMultipleChoiceComboBox​(java.lang.String identifier,
                                                           java.lang.String controlLabel,
                                                           java.util.List<java.lang.String> choices,
                                                           java.util.List<java.lang.String> defaultCheckedChoices)
                                                    throws java.lang.Exception
        Appends a combo box which allows you to select multiple choices from its drop down list by checking them.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        choices - A List of String choices
        defaultCheckedChoices - A List of String choices to be checked initially
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendMultipleChoiceComboBox

        public CustomTabPanel appendMultipleChoiceComboBox​(java.lang.String identifier,
                                                           java.lang.String controlLabel,
                                                           java.util.List<java.lang.String> choices)
                                                    throws java.lang.Exception
        Appends a combo box which allows you to select multiple choices from its drop down list by checking them. Starts off with no choices initially checked.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        choices - A List of String choices
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - May throw an exception if the provided identifier has already been used.
      • appendDirectoryChooser

        public CustomTabPanel appendDirectoryChooser​(java.lang.String identifier,
                                                     java.lang.String controlLabel)
                                              throws java.lang.Exception
        Appends a control which allows a user to select a directory.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendDirectoryChooser

        public CustomTabPanel appendDirectoryChooser​(java.lang.String identifier,
                                                     java.lang.String controlLabel,
                                                     java.lang.String initialDirectory)
                                              throws java.lang.Exception
        Appends a control which allows a user to select a directory.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        initialDirectory - A string containing a directory path which will be the initially selected directory when selection dialog is shown.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendDirectoryChooser

        public CustomTabPanel appendDirectoryChooser​(java.lang.String identifier,
                                                     java.lang.String controlLabel,
                                                     PathSelectedCallback callback)
                                              throws java.lang.Exception
        Appends a control which allows a user to select a directory.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        callback - Callback which will be invoked when user selects a file using the choose button
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendDirectoryChooser

        public CustomTabPanel appendDirectoryChooser​(java.lang.String identifier,
                                                     java.lang.String controlLabel,
                                                     java.lang.String initialDirectory,
                                                     PathSelectedCallback callback)
                                              throws java.lang.Exception
        Appends a control which allows a user to select a directory.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        initialDirectory - A string containing a directory path which will be the initially selected directory when selection dialog is shown.
        callback - Callback which will be invoked when user selects a file using the choose button
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendOpenFileChooser

        public CustomTabPanel appendOpenFileChooser​(java.lang.String identifier,
                                                    java.lang.String controlLabel,
                                                    java.lang.String fileTypeName,
                                                    java.lang.String fileExtension)
                                             throws java.lang.Exception
        Appends a control which allows a user to select a file to open.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        fileTypeName - The name portion of the file type filter.
        fileExtension - The extension (without period) to filter the visible files on.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendOpenFileChooser

        public CustomTabPanel appendOpenFileChooser​(java.lang.String identifier,
                                                    java.lang.String controlLabel,
                                                    java.lang.String fileTypeName,
                                                    java.lang.String fileExtension,
                                                    java.lang.String initialDirectory)
                                             throws java.lang.Exception
        Appends a control which allows a user to select a file to open.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        fileTypeName - The name portion of the file type filter.
        fileExtension - The extension (without period) to filter the visible files on.
        initialDirectory - A string containing a directory path which will be the initially selected directory when selection dialog is shown.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendOpenFileChooser

        public CustomTabPanel appendOpenFileChooser​(java.lang.String identifier,
                                                    java.lang.String controlLabel,
                                                    java.lang.String fileTypeName,
                                                    java.lang.String fileExtension,
                                                    PathSelectedCallback callback)
                                             throws java.lang.Exception
        Appends a control which allows a user to select a file to open.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        fileTypeName - The name portion of the file type filter.
        fileExtension - The extension (without period) to filter the visible files on.
        callback - Callback which will be invoked when user selects a file using the choose button
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendOpenFileChooser

        public CustomTabPanel appendOpenFileChooser​(java.lang.String identifier,
                                                    java.lang.String controlLabel,
                                                    java.lang.String fileTypeName,
                                                    java.lang.String fileExtension,
                                                    java.lang.String initialDirectory,
                                                    PathSelectedCallback callback)
                                             throws java.lang.Exception
        Appends a control which allows a user to select a file to open.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        fileTypeName - The name portion of the file type filter.
        fileExtension - The extension (without period) to filter the visible files on.
        initialDirectory - A string containing a directory path which will be the initially selected directory when selection dialog is shown.
        callback - Callback which will be invoked when user selects a file using the choose button
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendSaveFileChooser

        public CustomTabPanel appendSaveFileChooser​(java.lang.String identifier,
                                                    java.lang.String controlLabel,
                                                    java.lang.String fileTypeName,
                                                    java.lang.String fileExtension)
                                             throws java.lang.Exception
        Appends a control which allows a user to select a file to save.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        fileTypeName - The name portion of the file type filter.
        fileExtension - The extension (without period) to filter the visible files on.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendSaveFileChooser

        public CustomTabPanel appendSaveFileChooser​(java.lang.String identifier,
                                                    java.lang.String controlLabel,
                                                    java.lang.String fileTypeName,
                                                    java.lang.String fileExtension,
                                                    java.lang.String initialDirectory)
                                             throws java.lang.Exception
        Appends a control which allows a user to select a file to save.
        Parameters:
        identifier - The unique identifier for this control.
        controlLabel - The label for this control.
        fileTypeName - The name portion of the file type filter.
        fileExtension - The extension (without period) to filter the visible files on.
        initialDirectory - A string containing a directory path which will be the initially selected directory when selection dialog is shown.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendPathList

        public CustomTabPanel appendPathList​(java.lang.String identifier,
                                             java.util.List<java.lang.String> initialPaths)
                                      throws java.lang.Exception
        Appends a list box allowing the user to specify multiple file and directory paths.
        Parameters:
        identifier - The unique identifier for this control.
        initialPaths - Initial values to populate the list with, can be null.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendPathList

        public CustomTabPanel appendPathList​(java.lang.String identifier)
                                      throws java.lang.Exception
        Appends a list box allowing the user to specify multiple file and directory paths.
        Parameters:
        identifier - The unique identifier for this control.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendStringList

        public CustomTabPanel appendStringList​(java.lang.String identifier,
                                               java.util.List<java.lang.String> initialValues)
                                        throws java.lang.Exception
        Appends a list box allowing the user to specify string values.
        Parameters:
        identifier - The unique identifier for this control.
        initialValues - Initial values to populate the list with, can be null.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendStringList

        public CustomTabPanel appendStringList​(java.lang.String identifier,
                                               java.util.List<java.lang.String> initialValues,
                                               boolean editable)
                                        throws java.lang.Exception
        Appends a list box allowing the user to specify string values.
        Parameters:
        identifier - The unique identifier for this control.
        initialValues - Initial values to populate the list with, can be null.
        editable - Whether the user is able to edit entries in the list.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendStringList

        public CustomTabPanel appendStringList​(java.lang.String identifier)
                                        throws java.lang.Exception
        Appends a list box allowing the user to specify string values.
        Parameters:
        identifier - The unique identifier for this control.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • appendStringList

        public CustomTabPanel appendStringList​(java.lang.String identifier,
                                               boolean editable)
                                        throws java.lang.Exception
        Appends a list box allowing the user to specify string values.
        Parameters:
        identifier - The unique identifier for this control.
        editable - Whether the user is able to edit entries in the list.
        Returns:
        Returns this CustomTabPanel instance to allow for method chaining.
        Throws:
        java.lang.Exception - Exception May throw an exception if the provided identifier has already been used.
      • enabledOnlyWhenChecked

        public void enabledOnlyWhenChecked​(java.lang.String dependentControlIdentifier,
                                           java.lang.String targetCheckableIdentifier)
                                    throws java.lang.Exception
        Registers an event handle such that a given control is only enabled when another checkable control is checked.
        Parameters:
        dependentControlIdentifier - The identifier of the already added control for which the enabled state depends on another checkable control.
        targetCheckableIdentifier - The identifier of the already added checkable control which will determine the enabled state of the dependent control.
        Throws:
        java.lang.Exception - This could be caused by various things such as invalid identifiers or the identifier provided in targetCheckableIdentifier does not point to a checkable control (CheckBox or RadioButton).
      • enabledOnlyWhenAllChecked

        public void enabledOnlyWhenAllChecked​(java.lang.String dependentControlIdentifier,
                                              java.lang.String... targetCheckableIdentifiers)
                                       throws java.lang.Exception
        Similar to enabledOnlyWhenChecked(String, String), this method registers event handlers on one or more checkable controls such that a given dependent control is only enabled when all of the specified target checkable controls are checked.
        Parameters:
        dependentControlIdentifier - The identifier of the already added control for which the enabled state depends on another checkable control.
        targetCheckableIdentifiers - The identifier of the one or more already added checkable controls which will determine the enabled state of the dependent control.
        Throws:
        java.lang.Exception - This could be caused by various things such as invalid identifiers or the identifier provided in targetCheckableIdentifier does not point to a checkable control (CheckBox or RadioButton).
      • enabledOnlyWhenNoneChecked

        public void enabledOnlyWhenNoneChecked​(java.lang.String dependentControlIdentifier,
                                               java.lang.String... targetCheckableIdentifiers)
                                        throws java.lang.Exception
        Similar to enabledOnlyWhenChecked(String, String), this method registers event handlers on one or more checkable controls such that a given dependent control is only enabled when none of the specified target checkable controls are checked.
        Parameters:
        dependentControlIdentifier - The identifier of the already added control for which the enabled state depends on another checkable control.
        targetCheckableIdentifiers - The identifier of the one or more already added checkable controls which will determine the enabled state of the dependent control.
        Throws:
        java.lang.Exception - This could be caused by various things such as invalid identifiers or the identifier provided in targetCheckableIdentifier does not point to a checkable control (CheckBox or RadioButton).
      • enabledIfAnyChecked

        public void enabledIfAnyChecked​(java.lang.String dependentControlIdentifier,
                                        java.lang.String... targetCheckableIdentifiers)
                                 throws java.lang.Exception
        Similar to enabledOnlyWhenChecked(String, String), this method registers event handlers on one or more checkable controls such that a given dependent control is only enabled when at least one of the specified target checkable controls are checked.
        Parameters:
        dependentControlIdentifier - The identifier of the already added control for which the enabled state depends on another checkable control.
        targetCheckableIdentifiers - The identifier of the one or more already added checkable controls which will determine the enabled state of the dependent control.
        Throws:
        java.lang.Exception - This could be caused by various things such as invalid identifiers or the identifier provided in targetCheckableIdentifier does not point to a checkable control (CheckBox or RadioButton).
      • enabledOnlyWhenNotChecked

        public void enabledOnlyWhenNotChecked​(java.lang.String dependentControlIdentifier,
                                              java.lang.String targetCheckableIdentifier)
                                       throws java.lang.Exception
        Registers an event handle such that a given control is only enabled when another checkable control is not checked.
        Parameters:
        dependentControlIdentifier - The identifier of the already added control for which the enabled state depends on another checkable control.
        targetCheckableIdentifier - The identifier of the already added checkable control which will determine the enabled state of the dependent control.
        Throws:
        java.lang.Exception - This could be caused by various things such as invalid identifiers or the identifier provided in targetCheckableIdentifier does not point to a checkable control (CheckBox or RadioButton).
      • isChecked

        public boolean isChecked​(java.lang.String identifier)
                          throws java.lang.Exception
        Gets whether a particular Checkbox or RadioButton is checked.
        Parameters:
        identifier - The unique identifier assigned to the control when it was appended to this dialog.
        Returns:
        True if the control is checked, false otherwise.
        Throws:
        java.lang.Exception - Thrown if identifier is invalid or identifier does not refer to a Checkbox or RadioButton.
      • setChecked

        public void setChecked​(java.lang.String identifier,
                               boolean isChecked)
                        throws java.lang.Exception
        Sets whether a particular Checkbox or RadioButton is checked.
        Parameters:
        identifier - The unique identifier assigned to the control when it was appended to this dialog.
        isChecked - True to check the control, false to uncheck the control.
        Throws:
        java.lang.Exception - Thrown if identifier is invalid or identifier does not refer to a Checkbox or RadioButton.
      • getText

        public java.lang.String getText​(java.lang.String identifier)
                                 throws java.lang.Exception
        Gets the text present in a TextField or PasswordField.
        Parameters:
        identifier - The unique identifier assigned to the control when it was appended to this dialog.
        Returns:
        The text present in the control.
        Throws:
        java.lang.Exception - Thrown if identifier is invalid or identifier does not refer to a TextField or PasswordField.
      • setText

        public void setText​(java.lang.String identifier,
                            java.lang.String text)
                     throws java.lang.Exception
        Sets the text present in a TextField or PasswordField.
        Parameters:
        identifier - The unique identifier assigned to the control when it was appended to this dialog.
        text - The text value to set.
        Throws:
        java.lang.Exception - Thrown if identifier is invalid or identifier does not refer to a TextField or PasswordField.
      • setDate

        public void setDate​(java.lang.String identifier,
                            java.lang.Object value)
                     throws java.lang.Exception
        Sets the date contained in a date picker control previously added through a call to appendDatePicker(String, String) or appendDatePicker(String, String, Object).
        Parameters:
        identifier - The unique identifier of the previously added date picker control.
        value - The value to set the date picker to. Accepts values of Date, DateTime or a date String formatted "yyyyMMdd".
        Throws:
        java.lang.Exception - May be thrown if identifier does not point to a valid/existing control or date format string is invalid.
      • getControl

        public java.awt.Component getControl​(java.lang.String identifier)
        Allows you to get the actual Java Swing control. You will likely need to cast it to the appropriate type before use.
        Parameters:
        identifier - The unique identifier assigned to the control when it was appended to this dialog.
        Returns:
        The control as base class Component. See documentation for various append methods for control types.
      • toMap

        public java.util.Map<java.lang.String,​java.lang.Object> toMap()
        Returns a Map of the control values.
        Returns:
        Map where the assigned identifier is the key and the control's value is the value.
      • toMap

        public java.util.Map<java.lang.String,​java.lang.Object> toMap​(boolean forJsonCreation)
        Returns a Map of the control values.
        Parameters:
        forJsonCreation - Set to true if the output is intended to be serialized to JSON. Some of the values in the map may be generated differently to better cooperate with what JSON is capable of storing.
        Returns:
        Map where the assigned identifier is the key and the control's value is the value.
      • toJson

        public java.lang.String toJson()
        Gets a JSON String equivalent of the dialog's values. This is a convenience method for calling toMap() and then converting that Map to a JSON string.
        Returns:
        A JSON string representation of the dialogs values (based on the Map returned by toMap()).
      • getChoiceTableHeight

        public int getChoiceTableHeight()
        Returns:
        The height of choice table controls
      • setChoiceTableHeight

        public void setChoiceTableHeight​(int choiceTableHeight)
        Parameters:
        choiceTableHeight - The choiceTableHeight to set
      • getLabel

        public java.lang.String getLabel()
        Gets the label of this tab.
        Returns:
        The label of this tab.
      • setLabel

        public void setLabel​(java.lang.String label)
        Sets the label of this tab.
        Parameters:
        label - The label to set.
      • whenSerializing

        public void whenSerializing​(java.lang.String identifier,
                                    ControlSerializationHandler handler)
        Allows you to specify code which customizes how a particular control's value is serialized.
        Parameters:
        identifier - The unique identifier of the control to which you are providing custom serialization logic for.
        handler - Provides logic regarding how to serialize the control's value.
      • whenDeserializing

        public void whenDeserializing​(java.lang.String identifier,
                                      ControlDeserializationHandler handler)
        Allows you to specify code which customizes how a particular control's value is deserialized.
        Parameters:
        identifier - The unique identifier of the control to which you are providing custom deserialization logic for.
        handler - Provides logic regarding how to deserialize the control's value.
      • setEnabled

        public void setEnabled​(boolean value)
        Overrides:
        setEnabled in class javax.swing.JComponent
      • doNotSerialize

        public void doNotSerialize​(java.lang.String identifier)
        Allows you to specify that a particular control's value should not be serialized in calls to toMap(boolean) with a value of true (meaning it is generating map of setting for generating JSON).
        Parameters:
        identifier - The unique identified of the control to be skipped.
      • whenTextChanged

        public void whenTextChanged​(java.lang.String identifier,
                                    java.util.function.Consumer<java.lang.String> callback)
                             throws java.lang.Exception
        Registers a callback which is notified when a particular text control's value is modified.
        Parameters:
        identifier - The unique of identifier of the text control to monitor.
        callback - Callback invoked when the text control's value is modified.
        Throws:
        java.lang.Exception - May be thrown if identifier does not refer to a supported/existing control.