Module org.autogui
Package org.autogui.swing
Class GuiSwingViewDocumentEditor.PropertyDocumentTextPane
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.text.JTextComponent
javax.swing.JEditorPane
javax.swing.JTextPane
org.autogui.swing.GuiSwingViewDocumentEditor.PropertyDocumentTextPane
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
,Scrollable
,GuiMappingContext.SourceUpdateListener
,GuiSwingView.SettingsWindowClient
,GuiSwingView.ValuePane<Object>
,GuiSwingViewDocumentEditor.WrapLineSupport
,GuiSwingPrefsSupports.PreferencesUpdateSupport
- Direct Known Subclasses:
LambdaProperty.LambdaDocumentTextPane
- Enclosing class:
GuiSwingViewDocumentEditor
public static class GuiSwingViewDocumentEditor.PropertyDocumentTextPane
extends JTextPane
implements GuiMappingContext.SourceUpdateListener, GuiSwingView.ValuePane<Object>, GuiSwingView.SettingsWindowClient, GuiSwingPrefsSupports.PreferencesUpdateSupport, GuiSwingViewDocumentEditor.WrapLineSupport
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JEditorPane
JEditorPane.AccessibleJEditorPane, JEditorPane.AccessibleJEditorPaneHTML, JEditorPane.JEditorPaneAccessibleHypertextSupport
Nested classes/interfaces inherited from class javax.swing.text.JTextComponent
JTextComponent.AccessibleJTextComponent, JTextComponent.DropLocation, JTextComponent.KeyBinding
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected GuiMappingContext
protected MenuBuilder.MenuLabel
protected LineNumberPane
protected PopupExtension
protected SettingsWindow
protected GuiSwingView.SpecifierManager
protected GuiTaskClock
protected boolean
Fields inherited from class javax.swing.JEditorPane
HONOR_DISPLAY_PROPERTIES, W3C_LENGTH_UNITS
Fields inherited from class javax.swing.text.JTextComponent
DEFAULT_KEYMAP, FOCUS_ACCELERATOR_KEY
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
-
Constructor Summary
ConstructorsConstructorDescriptionPropertyDocumentTextPane
(GuiMappingContext context, GuiSwingView.SpecifierManager specifierManager) -
Method Summary
Modifier and TypeMethodDescriptionboolean
a typical implementation if there are no dynamic items becomes like the following code:a typical implementation becomes like the following code:protected void
void
loadSwingPreferences
(GuiPreferences prefs, GuiSwingPrefsApplyOptions options) a sub-class which wraps another value-pane should overrides the method in order to omit needless value setting.void
for each component, the method is called before refreshing in order to clear the view-clock.void
only save the component itself, not including children.void
setDocument
(Document doc) void
setKeyStrokeString
(String keyStrokeString) set the key-stroke info.void
void
setSettingsWindow
(SettingsWindow settingWindow) at initialization of the root-pane, the method will be called for existing sub-panes.void
setSwingViewValue
(Object value) update GUI display, and it does NOT update the target model value.void
setSwingViewValue
(Object value, GuiTaskClock clock) update if the clock is newer than the current view-clock of the pane.void
update the GUI display and the model.void
setSwingViewValueWithUpdate
(Object value, GuiTaskClock clock) update the GUI display and the model if the clock is newer than the current view-clock of the pane.void
setWrapLine
(boolean wrapLine) void
for each component, at the end of the process, this method will be calledvoid
update
(GuiMappingContext cause, Object newValue, GuiTaskClock contextClock) Methods inherited from class javax.swing.JTextPane
addStyle, createDefaultEditorKit, getCharacterAttributes, getInputAttributes, getLogicalStyle, getParagraphAttributes, getStyle, getStyledDocument, getStyledEditorKit, getUIClassID, insertComponent, insertIcon, paramString, removeStyle, replaceSelection, setCharacterAttributes, setEditorKit, setLogicalStyle, setParagraphAttributes, setStyledDocument
Methods inherited from class javax.swing.JEditorPane
addHyperlinkListener, createEditorKitForContentType, fireHyperlinkUpdate, getAccessibleContext, getContentType, getEditorKit, getEditorKitClassNameForContentType, getEditorKitForContentType, getHyperlinkListeners, getPage, getScrollableTracksViewportHeight, getStream, getText, read, registerEditorKitForContentType, registerEditorKitForContentType, removeHyperlinkListener, scrollToReference, setContentType, setEditorKitForContentType, setPage, setPage, setText
Methods inherited from class javax.swing.text.JTextComponent
addCaretListener, addInputMethodListener, addKeymap, copy, cut, fireCaretUpdate, getActions, getCaret, getCaretColor, getCaretListeners, getCaretPosition, getDisabledTextColor, getDocument, getDragEnabled, getDropLocation, getDropMode, getFocusAccelerator, getHighlighter, getInputMethodRequests, getKeymap, getKeymap, getMargin, getNavigationFilter, getPreferredScrollableViewportSize, getPrintable, getScrollableBlockIncrement, getScrollableUnitIncrement, getSelectedText, getSelectedTextColor, getSelectionColor, getSelectionEnd, getSelectionStart, getText, getToolTipText, getUI, isEditable, loadKeymap, modelToView, modelToView2D, moveCaretPosition, paste, print, print, print, processInputMethodEvent, read, removeCaretListener, removeKeymap, removeNotify, restoreComposedText, saveComposedText, select, selectAll, setCaret, setCaretColor, setCaretPosition, setComponentOrientation, setDisabledTextColor, setDragEnabled, setDropMode, setEditable, setFocusAccelerator, setHighlighter, setKeymap, setMargin, setNavigationFilter, setSelectedTextColor, setSelectionColor, setSelectionEnd, setSelectionStart, setUI, updateUI, viewToModel, viewToModel2D, write
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, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, 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, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, 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, 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, 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, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, 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
Methods inherited from interface org.autogui.swing.GuiSwingView.ValuePane
addSwingEditFinishHandler, asSwingViewComponent, executeContextTask, getActionByContext, getActionByName, getChildByName, getDescendantActionByContext, getDescendantByContext, getDescendantByValue, getDescendantByValueIf, getPrefsJsonSupported, getSwingFocusKeyStroke, isSwingCurrentValueSupported, isSwingEditable, loadSwingPreferences, refreshByContext, requestSwingViewFocus, setPrefsJsonSupported, setSwingViewHistoryValue, setSwingViewValueForTable, updateSwingViewSource, updateSwingViewSourceFromRoot, wrapSwingNamed, wrapSwingPane, wrapSwingProperty, wrapSwingScrollPane
-
Field Details
-
context
-
specifierManager
-
popup
-
wrapLine
protected boolean wrapLine -
settingPane
-
settingsWindow
-
infoLabel
-
viewClock
-
lineNumberPane
-
settingAction
-
-
Constructor Details
-
PropertyDocumentTextPane
public PropertyDocumentTextPane(GuiMappingContext context, GuiSwingView.SpecifierManager specifierManager)
-
-
Method Details
-
getSettingAction
-
setDocument
- Overrides:
setDocument
in classJTextPane
-
installLineNumberPane
protected void installLineNumberPane() -
getSwingStaticMenuItems
Description copied from interface:GuiSwingView.ValuePane
a typical implementation becomes like the following code:if (menuItems == null) { menuItems =
PopupCategorized
.getMenuItems(actions, menus); } return menuItems;the method returns original menu items for the pane. so, if a wrapper pane has a wrapped sub-pane added as a child component, it should not include items of the wrapped sub-pane.
- Specified by:
getSwingStaticMenuItems
in interfaceGuiSwingView.ValuePane<Object>
- Returns:
- a list of actions (or menu-components) statically determined, that should be always same instances
-
getSwingMenuBuilder
Description copied from interface:GuiSwingView.ValuePane
a typical implementation if there are no dynamic items becomes like the following code:if (popup == null) { popup = new
PopupExtension
(this, newPopupCategorized
(this::getSwingStaticMenuItems)); } return popup.getMenuBuilder();- Specified by:
getSwingMenuBuilder
in interfaceGuiSwingView.ValuePane<Object>
- Returns:
- a menu builder
-
update
- Specified by:
update
in interfaceGuiMappingContext.SourceUpdateListener
-
getSwingViewValue
- Specified by:
getSwingViewValue
in interfaceGuiSwingView.ValuePane<Object>
- Returns:
- basically, the source value of the context, held by the component without touching the context.
-
setSwingViewValue
Description copied from interface:GuiSwingView.ValuePane
update GUI display, and it does NOT update the target model value. processed under the event thread. also increment the view-clock.- Specified by:
setSwingViewValue
in interfaceGuiSwingView.ValuePane<Object>
- Parameters:
value
- the new value
-
setSwingViewValueWithUpdate
Description copied from interface:GuiSwingView.ValuePane
update the GUI display and the model. processed under the event thread. also increment the view-clock- Specified by:
setSwingViewValueWithUpdate
in interfaceGuiSwingView.ValuePane<Object>
- Parameters:
value
- the new value
-
setSwingViewValue
Description copied from interface:GuiSwingView.ValuePane
update if the clock is newer than the current view-clock of the pane. the view-clock becomes the given clock. Note: instead,GuiSwingView.ValuePane.setSwingViewValue(Object)
increments the current clock- Specified by:
setSwingViewValue
in interfaceGuiSwingView.ValuePane<Object>
- Parameters:
value
- the new valueclock
- the clock of the value: if the clock is newer than the current view-clock of the pane, it can update
-
setSwingViewValueWithUpdate
Description copied from interface:GuiSwingView.ValuePane
update the GUI display and the model if the clock is newer than the current view-clock of the pane. the view-clock becomes the given clock.- Specified by:
setSwingViewValueWithUpdate
in interfaceGuiSwingView.ValuePane<Object>
- Parameters:
value
- the new valueclock
- the clock of the value
-
getScrollableTracksViewportWidth
public boolean getScrollableTracksViewportWidth()- Specified by:
getScrollableTracksViewportWidth
in interfaceScrollable
- Overrides:
getScrollableTracksViewportWidth
in classJEditorPane
-
setWrapLine
public void setWrapLine(boolean wrapLine) - Specified by:
setWrapLine
in interfaceGuiSwingViewDocumentEditor.WrapLineSupport
-
getPreferredSize
- Overrides:
getPreferredSize
in classJEditorPane
-
getSwingViewContext
- Specified by:
getSwingViewContext
in interfaceGuiSwingView.ValuePane<Object>
-
getSettingPane
-
saveSwingPreferences
Description copied from interface:GuiSwingView.ValuePane
only save the component itself, not including children. it can useGuiSwingView.savePreferencesDefault(JComponent, GuiPreferences)
- Specified by:
saveSwingPreferences
in interfaceGuiSwingView.ValuePane<Object>
- Parameters:
prefs
- target prefs or ancestor of the target; actual target can be obtained byGuiPreferences.getDescendant(GuiMappingContext)
-
loadSwingPreferences
Description copied from interface:GuiSwingView.ValuePane
a sub-class which wraps another value-pane should overrides the method in order to omit needless value setting. it can useGuiSwingView.loadPreferencesDefault(JComponent, GuiPreferences)
- Specified by:
loadSwingPreferences
in interfaceGuiSwingView.ValuePane<Object>
- Parameters:
prefs
- target prefs or ancestor of the target; actual target can be obtained byGuiPreferences.getDescendant(GuiMappingContext)
options
- options for applying
-
setSettingsWindow
Description copied from interface:GuiSwingView.SettingsWindowClient
at initialization of the root-pane, the method will be called for existing sub-panes. a dynamically created view needs to be manually set by those panes.- Specified by:
setSettingsWindow
in interfaceGuiSwingView.SettingsWindowClient
- Parameters:
settingWindow
- a settings-window from the root-pane, which will be disposed at closing of the main window
-
getSettingsWindow
- Specified by:
getSettingsWindow
in interfaceGuiSwingView.SettingsWindowClient
-
shutdownSwingView
public void shutdownSwingView()Description copied from interface:GuiSwingView.ValuePane
for each component, at the end of the process, this method will be called- Specified by:
shutdownSwingView
in interfaceGuiSwingView.ValuePane<Object>
-
setPreferencesUpdater
- Specified by:
setPreferencesUpdater
in interfaceGuiSwingPrefsSupports.PreferencesUpdateSupport
-
getSpecifier
- Specified by:
getSpecifier
in interfaceGuiSwingView.ValuePane<Object>
- Returns:
- the specifier for the context value, typically obtained from
GuiSwingView.SpecifierManager
-
setKeyStrokeString
Description copied from interface:GuiSwingView.ValuePane
set the key-stroke info. to the pane as a guide- Specified by:
setKeyStrokeString
in interfaceGuiSwingView.ValuePane<Object>
- Parameters:
keyStrokeString
- the key stroke info to be set.
-
prepareForRefresh
public void prepareForRefresh()Description copied from interface:GuiSwingView.ValuePane
for each component, the method is called before refreshing in order to clear the view-clock.- Specified by:
prepareForRefresh
in interfaceGuiSwingView.ValuePane<Object>
-