public abstract class CloneableTopComponent extends TopComponent implements Externalizable, TopComponent.Cloneable
Modifier and Type | Class and Description |
---|---|
static class |
CloneableTopComponent.Ref
Keeps track of a group of sister clones.
|
TopComponent.Cloneable, TopComponent.Description, TopComponent.NodeName, TopComponent.OpenActionRegistration, TopComponent.Registration, TopComponent.Registry, TopComponent.SubComponent
JComponent.AccessibleJComponent
Container.AccessibleAWTContainer
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
Modifier and Type | Field and Description |
---|---|
static CloneableTopComponent.Ref |
EMPTY
Empty clone-sister list.
|
CLOSE_EACH, CLOSE_LAST, PERSISTENCE_ALWAYS, PERSISTENCE_NEVER, PERSISTENCE_ONLY_OPENED, PROP_CLOSING_DISABLED, PROP_DND_COPY_DISABLED, PROP_DRAGGING_DISABLED, PROP_KEEP_PREFERRED_SIZE_WHEN_SLIDED_IN, PROP_MAXIMIZATION_DISABLED, PROP_SLIDING_DISABLED, PROP_UNDOCKING_DISABLED
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Constructor and Description |
---|
CloneableTopComponent()
Create a cloneable top component.
|
Modifier and Type | Method and Description |
---|---|
boolean |
canClose()
Unregisters this component from its clone list.
|
boolean |
canClose(Workspace workspace,
boolean last)
This method is called when top component is about to close.
|
Object |
clone()
Clone the top component and register the clone.
|
TopComponent |
cloneComponent()
Clone the top component and register the clone.
|
CloneableTopComponent |
cloneTopComponent()
Clone the top component and register the clone.
|
protected boolean |
closeLast()
Called when the last component in a clone group is closing.
|
protected void |
componentClosed()
Overrides superclass method, adds unregistering from references.
|
protected void |
componentOpened()
Called only when top component was closed on all workspaces before and
now is opened for the first time on some workspace.
|
protected CloneableTopComponent |
createClonedObject()
Called from
CloneableTopComponent.clone() to actually create a new component from this one. |
CloneableTopComponent.Ref |
getReference()
Get a list of all components which are clone-sisters of this one.
|
void |
readExternal(ObjectInput oi)
Deserialize this top component.
|
void |
setReference(CloneableTopComponent.Ref another)
Changes the reference to which this components belongs.
|
void |
writeExternal(ObjectOutput oo)
Serialize this top component.
|
addNotify, associateLookup, availableModes, cancelRequestAttention, close, close, closeNotify, componentActivated, componentDeactivated, componentHidden, componentShowing, getAccessibleContext, getActions, getActivatedNodes, getCloseOperation, getDisplayName, getHelpCtx, getHtmlDisplayName, getIcon, getLookup, getPersistenceType, getRegistry, getShortName, getSubComponents, getSystemActions, getTabPosition, getUndoRedo, isOpened, isOpened, makeBusy, open, open, openAction, openAtTabPosition, openNotify, preferredID, processKeyBinding, requestActive, requestAttention, requestFocus, requestFocusInWindow, requestVisible, setActivatedNodes, setAttentionHighlight, setCloseOperation, setDisplayName, setHtmlDisplayName, setIcon, setName, setToolTipText, toFront, writeReplace
addAncestorListener, 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, getUI, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, 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, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update, updateUI
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
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, transferFocusUpCycle
public static final CloneableTopComponent.Ref EMPTY
public CloneableTopComponent()
public final Object clone()
public final CloneableTopComponent cloneTopComponent()
public final TopComponent cloneComponent()
cloneComponent
in interface TopComponent.Cloneable
protected CloneableTopComponent createClonedObject()
CloneableTopComponent.clone()
to actually create a new component from this one.
The default implementation serializes and deserializes the original and
returns the result.
Subclasses may leave this as is, assuming they have no special needs for the cloned
data besides copying it from one object to the other. If they do, the superclass
method should be called, and the returned object modified appropriately.public final CloneableTopComponent.Ref getReference()
public final void setReference(CloneableTopComponent.Ref another)
another
- the new reference this component should belongprotected void componentOpened()
TopComponent
componentOpened
in class TopComponent
protected void componentClosed()
componentClosed
in class TopComponent
CloneableTopComponent.Ref
public boolean canClose()
TopComponent
is about to close.
Allows subclasses to decide if TopComponent
is ready to close.canClose
in class TopComponent
public boolean canClose(Workspace workspace, boolean last)
TopComponent
canClose
in class TopComponent
workspace
- the workspace on which we are about to close or
null which means that component will be closed
on all workspaces where it is opened (CLOSE_EACH mode)last
- true if this is last workspace where top component is
opened, false otherwise. If close operation is set to
CLOSE_EACH, then this param is always trueprotected boolean closeLast()
true
.
Subclasses may specify some hooks to run.true
if the component is ready to be
closed, false
to cancelpublic void readExternal(ObjectInput oi) throws IOException, ClassNotFoundException
TopComponent
readExternal
in interface Externalizable
readExternal
in class TopComponent
oi
- the stream to deserialize fromIOException
ClassNotFoundException
public void writeExternal(ObjectOutput oo) throws IOException
TopComponent
writeExternal
in interface Externalizable
writeExternal
in class TopComponent
oo
- the stream to serialize toIOException