E
- the type of the workspace component.public abstract class GuiComponent<E extends WorkspaceComponent>
extends javax.swing.JPanel
WorkspaceComponent
.javax.swing.JPanel.AccessibleJPanel
javax.swing.JComponent.AccessibleJComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Constructor and Description |
---|
GuiComponent(GenericFrame frame,
E workspaceComponent)
Construct a workspace component.
|
Modifier and Type | Method and Description |
---|---|
void |
close()
Closes this view.
|
protected abstract void |
closing()
Perform cleanup after closing.
|
SimbrainDesktop |
getDesktop() |
java.lang.String |
getName()
Return name of underlying component.
|
GenericFrame |
getParentFrame()
Returns the parent from of this view.
|
java.lang.String |
getSimpleName()
Retrieves a simple version of a component name from its class, e.g.
|
E |
getWorkspaceComponent()
Returns the workspace component wrapped by this instance.
|
static GuiComponent<?> |
open(WorkspaceComponent component,
java.io.InputStream istream,
java.lang.String name)
Creates a new desktop component from the provided stream.
|
void |
postAddInit()
If any initialization is needed after adding this component to workspace.
|
void |
save()
Save vs.
|
void |
save(java.io.OutputStream ostream)
Writes the bounds of this desktop component to the provided stream.
|
void |
setDesktop(SimbrainDesktop desktop)
TODO: This should really be set at construction time, but that would
require deep changes so this should suffice for now.
|
void |
setParentFrame(GenericFrame parentFrame)
Sets the parent frame of this view.
|
void |
setTitle(java.lang.String name) |
boolean |
showHasChangedDialog()
Checks to see if anything has changed and then offers to save if true.
|
void |
showOpenFileDialog()
Calls up a dialog for opening a workspace component.
|
void |
showSaveFileDialog()
Show the dialog for saving a workspace component.
|
protected void |
update()
Optional gui update method, which can be overridden for custom GUI update
needs.
|
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
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, update
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, getParent, getPeer, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
public GuiComponent(GenericFrame frame, E workspaceComponent)
frame
- the parent frame.workspaceComponent
- the component to wrap.public void postAddInit()
public void close()
protected abstract void closing()
protected void update()
public void showOpenFileDialog()
public void showSaveFileDialog()
public void save()
public void save(java.io.OutputStream ostream) throws java.io.IOException
ostream
- the stream to write tojava.io.IOException
- if an IO error occurspublic static GuiComponent<?> open(WorkspaceComponent component, java.io.InputStream istream, java.lang.String name)
component
- the component to create the desktop component for.istream
- the inputstream containing the serialized data.name
- the name of the desktop component.public boolean showHasChangedDialog()
public java.lang.String getName()
getName
in class java.awt.Component
public void setTitle(java.lang.String name)
name
- the name to setpublic java.lang.String getSimpleName()
public E getWorkspaceComponent()
public void setParentFrame(GenericFrame parentFrame)
parentFrame
- the new parent.public GenericFrame getParentFrame()
public SimbrainDesktop getDesktop()
public void setDesktop(SimbrainDesktop desktop)
desktop
- the desktop to set