Class ALcyShapeCustomizerPanel
- All Implemented Interfaces:
ILcdUndoableSource,ILcyCustomizerPanel,ILcdPropertyChangeSource,ImageObserver,MenuContainer,Serializable,Accessible
Abstract class that facilitates the implementation of ILcyCustomizerPanel for
shapes. This class can only be used to edit instances of
TLcyShapeContext.
- Since:
- 8.2
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanelNested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponentNested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
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_WINDOWFields inherited from class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface com.luciad.lucy.gui.customizer.ILcyCustomizerPanel
HINT_PINNED, HORIZONTAL_ALIGNMENT_HINT, LONG_DESCRIPTION, NAME, SHORT_DESCRIPTION, SMALL_ICONFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedALcyShapeCustomizerPanel(ILcdFilter aShapeContextFilter, String aName) Constructs a newALcyGeometryCustomizerPanel. -
Method Summary
Modifier and TypeMethodDescriptionbooleancanSetObject(Object aObject) Returnstrueif and only ifsetObjectwould not throw anIllegalArgumentException.protected ILcdLayergetLayer()Convenience method to return theILcdLayerthat was set by setting aTLcyShapeContextusingsetObject.protected ILcdModelgetModel()Convenience method to return theILcdModelthat was set by setting aTLcyShapeContextusingsetObject.protected ILcdShapegetShape()Convenience method to return the geometry (e.g. polyline) that was set by setting aTLcyShapeContextusingsetObject.protected final TLcyShapeContextReturns theTLcyShapeContextobject that was set on this customizer.protected ILcdViewgetView()Convenience method to return theILcdViewthat was set by setting aTLcyShapeContextusingsetObject.protected booleanReturns whether the panel is editable or not.protected voidCallsupdateCustomizerPanelFromObject( isPanelEditable() ).protected abstract voidupdateCustomizerPanelFromObject(boolean aPanelEditable) This means updating the user interface state according to the current state of the setTLcyShapeContext.Methods inherited from class com.luciad.lucy.gui.customizer.ALcyCustomizerPanel
addUndoableListener, applyChanges, applyChangesImpl, cancelChanges, fireUndoableHappened, getObject, getObjectFilter, getValue, isChangesPending, isChangesValid, putValue, removeUndoableListener, setChangesPending, setChangesValid, setName, setObject, setObjectFilterMethods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUIMethods 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, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, updateMethods 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, validateTreeMethods 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, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycleMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.luciad.util.ILcdPropertyChangeSource
addPropertyChangeListener, removePropertyChangeListenerMethods inherited from interface com.luciad.lucy.gui.customizer.ILcyCustomizerPanel
addPropertyChangeListener, getPropertyChangeListeners, getPropertyChangeListeners, removePropertyChangeListener
-
Constructor Details
-
ALcyShapeCustomizerPanel
Constructs a newALcyGeometryCustomizerPanel.- Parameters:
aShapeContextFilter- TheILcdFilterthat defines which objects are accepted bycanSetObjectandsetObject. See alsoALcyCustomizerPanel.setObjectFilter(com.luciad.util.ILcdFilter)setPaintState}.aName- The name for thisALcyGeometryCustomizerPanel, seeILcyCustomizerPanel.NAME.
-
-
Method Details
-
getView
Convenience method to return theILcdViewthat was set by setting aTLcyShapeContextusingsetObject.- Returns:
- Null if no
TLcyShapeContextis set, theILcdViewrelated to that context object otherwise.
-
getLayer
Convenience method to return theILcdLayerthat was set by setting aTLcyShapeContextusingsetObject.- Returns:
- Null if no
TLcyShapeContextis set, theILcdLayerrelated to that context object otherwise.
-
getModel
Convenience method to return theILcdModelthat was set by setting aTLcyShapeContextusingsetObject.- Returns:
- Null if no
TLcyShapeContextis set, theILcdModelrelated to that context object otherwise.
-
getShape
Convenience method to return the geometry (e.g. polyline) that was set by setting aTLcyShapeContextusingsetObject.- Returns:
- Null if no
TLcyShapeContextobject is set, the geometry (e.g., polyline) related to that context object otherwise.
-
canSetObject
Description copied from class:ALcyCustomizerPanelReturnstrueif and only ifsetObjectwould not throw anIllegalArgumentException. Only acceptsnullor objects that pass the object filter. If the filter itself isnull, all objects are accepted.- Specified by:
canSetObjectin interfaceILcyCustomizerPanel- Overrides:
canSetObjectin classALcyCustomizerPanel- Parameters:
aObject- The object to check.- Returns:
trueifsetObjectwould accept the object,falseif it would throw an exception.
-
getShapeContext
Returns the
TLcyShapeContextobject that was set on this customizer. This context object can be used to retrieve the geometry, layer and view in which the geometry is shown.- Returns:
- The set
TLcyShapeContext. This object can benullwhen this customizer was deinitialized (withsetObject(null)).
-
updateCustomizerPanelFromObject
protected void updateCustomizerPanelFromObject()Calls
updateCustomizerPanelFromObject( isPanelEditable() ).Updates the user interface state according to the current state of the set
Object. This method is called whenever a new object is set usingsetObject, or when the changes are canceled usingcancelChanges.It does not need to take care of
"changesPending".Consider for example that a
TLcyLayerContextis set and a new label text is entered in a text field. When this method is called, the new label text should be cleared and the original label of theILcdLayer(getLabel()) should be put in the text field.- Specified by:
updateCustomizerPanelFromObjectin classALcyCustomizerPanel
-
updateCustomizerPanelFromObject
protected abstract void updateCustomizerPanelFromObject(boolean aPanelEditable) This means updating the user interface state according to the current state of the setTLcyShapeContext. This method is called whenever a new object is set usingsetObject, or when the changes are canceled usingcancelChanges. It does not need to take care of"changesPending". Consider for example that aTLcyShapeContextis set and a new label text is entered in a text field. When this method is called, the new label text should be cleared and the original label of theILcdLayer(getLabel()) should be put in the text field.- Parameters:
aPanelEditable-trueif the panel should be editable,falseotherwise. SeeisPanelEditable()for more information.
-
isPanelEditable
protected boolean isPanelEditable()Returns whether the panel is editable or not. Editable means the values it displays can be modified; for example, the content of a text field can be adapted. Not editable means the values it displays cannot be adapted; for example, a text field should be disabled. The default implementation returns
orgetLayer().isEditableSupported() && getLayer().isEditable()trueifgetLayer()isnull. Override this method to redefine when the panel is editable or not.- Returns:
Trueif the panel should be editable,falseotherwise.
-