|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.awt.Component
java.awt.Container
java.awt.Window
java.awt.Dialog
javax.swing.JDialog
devisor2.grid.GUI.dialogs.DockableDialog
This class is the abstract superclass for our non-modal dockable dialog.
When first displayed, instances of this class' subclasses appear at a
fixed position. They are attached to the MainFrame, meaning that whenever
the MainFrame is moved or resized, they are moved accordingly so that
their relative position remains the same. If necessary, the dialog can
also be undocked when it is moved away from the MainFrame separately by
more than the margin specified in the dockMargin class variable. In
undocked state, the dialog does not follow the MainFrame's movements but
is completely independent. To dock the dialog again, it has to be moved
towards the MainFrame, as soon as the margin is less than the dockMargin,
its position is snapped towards the next docking position. The middle of
the dialog's canvas is considered Event Point.
The whole docking information is made persistent, that means every time
the dialog is shown, the last docking state is restored from the Options
class. If the dialog has been docked before, it appears at its earlier
position, if it was undocked, it appears at its initial position.
Nested Class Summary |
Nested classes inherited from class javax.swing.JDialog |
javax.swing.JDialog.AccessibleJDialog |
Nested classes inherited from class java.awt.Dialog |
java.awt.Dialog.AccessibleAWTDialog |
Nested classes inherited from class java.awt.Window |
java.awt.Window.AccessibleAWTWindow |
Nested classes inherited from class java.awt.Container |
java.awt.Container.AccessibleAWTContainer |
Nested classes inherited from class java.awt.Component |
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy |
Field Summary | |
protected ControlCenter |
cc
reference to the ControlCenter |
protected boolean |
docked
flag to determine the dialogs docking state |
protected int |
dockMargin
the docking margin (in pixels) |
static int |
GAP
constant for the gap between docked dialog and MainFrame |
protected devisor2.grid.GUI.dialogs.DockableDialog.DockableDialogMoveListener |
listener
the listener responsible for trailing the dialog's movements |
protected java.awt.Point |
origin
the location on screen |
protected MainFrame |
parent
reference to the MainFrame of the application |
protected int |
region
the region in which to dock |
Fields inherited from class javax.swing.JDialog |
accessibleContext, rootPane, rootPaneCheckingEnabled |
Fields inherited from class java.awt.Component |
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
Fields inherited from interface javax.swing.WindowConstants |
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE |
Fields inherited from interface java.awt.image.ImageObserver |
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
Constructor Summary | |
DockableDialog(MainFrame parent)
creates a new Dialog |
Method Summary | |
void |
addMoveListener()
adds the move listener |
protected void |
calcDockable()
calculates the dockableArea of the MainFrame and sets the docked flag - the dockable area is calculated by adding the dockMargin value to all four sides of the MainFrame, both on the inside and outside - this partitions the area around the MainFrame's edges into four regions, 1=LEFT, 2=RIGHT, 3=TOP. |
protected java.awt.Point |
calcPosition()
This method repositions the dialog according to the following rules: if docked: - in the left region, the dialog's top right corner is aligned with the parent's top left corner if the origin is above the parent's top border, with the bottom left corner if below, otherwise the dialog is just snapped rightwards. |
int |
getDockMargin()
returns the dockMargin |
abstract java.awt.Point |
getInitialPosition()
returns the initial Position of the dialog |
java.awt.Point |
getPositionOnScreen()
returns the position on the screen |
boolean |
isDocked()
returns if the dialog is docked |
abstract void |
refreshGUI()
this method can be used to update the GUI of the dialog dynamically. |
void |
removeMoveListener()
removes the move listener |
void |
rePosition()
repositions the dialog |
void |
setDocked(boolean dock)
sets the docked variable |
void |
setDockMargin(int delta)
sets the dockMargin |
void |
setPositionOnScreen(java.awt.Point newPosition)
sets the location on the screen |
Methods inherited from class javax.swing.JDialog |
addImpl, createRootPane, dialogInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update |
Methods inherited from class java.awt.Dialog |
addNotify, dispose, getTitle, hide, isModal, isResizable, isUndecorated, setModal, setResizable, setTitle, setUndecorated, show |
Methods inherited from class java.awt.Window |
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, finalize, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, isActive, isFocusableWindow, isFocusCycleRoot, isFocused, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationRelativeTo, toBack, toFront |
Methods inherited from class java.awt.Container |
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, removeNotify, setFocusTraversalKeys, setFocusTraversalPolicy, setFont, transferFocusBackward, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isOpaque, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, size, toString, transferFocus, transferFocusUpCycle |
Methods inherited from class java.lang.Object |
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
protected MainFrame parent
protected ControlCenter cc
protected boolean docked
protected int dockMargin
protected int region
public static final int GAP
protected java.awt.Point origin
protected devisor2.grid.GUI.dialogs.DockableDialog.DockableDialogMoveListener listener
Constructor Detail |
public DockableDialog(MainFrame parent)
parent
- - the mainframe connects the dialog to the rest of the
application.Method Detail |
public void removeMoveListener()
public void addMoveListener()
public void rePosition()
public boolean isDocked()
public void setDocked(boolean dock)
public abstract java.awt.Point getInitialPosition()
public void setDockMargin(int delta)
public int getDockMargin()
public void setPositionOnScreen(java.awt.Point newPosition)
public java.awt.Point getPositionOnScreen()
public abstract void refreshGUI()
protected void calcDockable()
protected java.awt.Point calcPosition()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |