|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectjava.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
org.flexdock.docking.defaults.DefaultDockingPort
org.flexdock.docking.floating.frames.FloatingDockingPort
public class FloatingDockingPort
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class org.flexdock.docking.defaults.DefaultDockingPort |
|---|
DefaultDockingPort.PortLayout |
| Nested classes/interfaces inherited from class javax.swing.JPanel |
|---|
JPanel.AccessibleJPanel |
| 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 |
| Nested classes/interfaces inherited from interface org.flexdock.docking.event.DockingListener |
|---|
DockingListener.Stub |
| Field Summary | |
|---|---|
protected FrameDragListener |
dragListener
|
protected DockingFrame |
frame
|
| Fields inherited from class org.flexdock.docking.defaults.DefaultDockingPort |
|---|
dockingListeners |
| Fields inherited from class javax.swing.JComponent |
|---|
accessibleContext, 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 |
|---|
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
| Fields inherited from interface org.flexdock.docking.DockingPort |
|---|
INITIAL_TAB_POSITION |
| Fields inherited from interface org.flexdock.docking.DockingConstants |
|---|
ACTIVE_WINDOW, BOTTOM, CENTER, CENTER_REGION, CLOSE_ACTION, DEFAULT_PERSISTENCE_KEY, DOCKING_ID, EAST_REGION, HEAVYWEIGHT_DOCKABLES, HORIZONTAL, LEFT, MOUSE_PRESSED, NORTH_REGION, PERMANENT_FOCUS_OWNER, PIN_ACTION, REGION, RIGHT, SOUTH_REGION, TOP, UNINITIALIZED, UNINITIALIZED_RATIO, UNKNOWN_REGION, UNSPECIFIED_SIBLING_PREF, VERTICAL, WEST_REGION |
| Fields inherited from interface java.awt.image.ImageObserver |
|---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
| Constructor Summary | |
|---|---|
FloatingDockingPort(DockingFrame frame,
String persistentId)
|
|
| Method Summary | |
|---|---|
boolean |
dock(Dockable dockable,
String region)
Docks the specified Dockable within the specified region. |
void |
dragStarted(DockingEvent evt)
No operation. |
int |
getDockableCount()
|
protected Set |
getFrameDragSources(Dockable dockable)
|
String |
getRegion(Point p)
Returns the docking region within this DockingPort that contains
the specified Point. |
protected void |
installListeners(Dockable dockable)
|
boolean |
isDockingAllowed(String region,
Component comp)
|
protected void |
toggleListeners(Component comp,
boolean add)
|
boolean |
undock(Component comp)
Undocks the specified Component and returns a boolean indicating
the success of the operation. |
void |
undockingComplete(DockingEvent evt)
No operation. |
protected void |
uninstallListeners(Dockable dockable)
|
| Methods inherited from class javax.swing.JPanel |
|---|
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.flexdock.docking.DockingPort |
|---|
getClientProperty, putClientProperty |
| Field Detail |
|---|
protected DockingFrame frame
protected FrameDragListener dragListener
| Constructor Detail |
|---|
public FloatingDockingPort(DockingFrame frame,
String persistentId)
| Method Detail |
|---|
public String getRegion(Point p)
DefaultDockingPortDockingPort that contains
the specified Point. Valid return values are those regions
defined in DockingConstants and include NORTH_REGION,
SOUTH_REGION, EAST_REGION, WEST_REGION,
CENTER_REGION, and UNKNOWN_REGION.
If location is null, then UNKNOWN_REGION is
returned.
This method gets the RegionChecker for this DockingPort
by calling getRegionChecker(). It then attempts to locate the
Dockable at the specified location by calling
getDockableAt(Point location).
This method defers processing to getRegion(Component c, Point p)
for the current RegionChecker. If a Dockable was found
at the specified Point, then the location of the Point
is translated to the coordinate system of the Component for the
embedded Dockable and that Component and modified
Point are passed into getRegion(Component c, Point p)}
for the current RegionChecker. If no Dockable was found,
then the specified Point is left unmodified and this
DockingPort and the supplied Point are passed to
getRegion(Component c, Point p)} for the current
RegionChecker.
getRegion in interface DockingPortgetRegion in class DefaultDockingPortp - the location within this DockingPort to examine for a
docking region.
DockingPort that contains
the specified PointDefaultDockingPort.getRegionChecker(),
DefaultDockingPort.getDockableAt(Point),
Dockable.getComponent(),
RegionChecker.getRegion(Component, Point)
public boolean isDockingAllowed(String region,
Component comp)
public boolean dock(Dockable dockable,
String region)
DefaultDockingPortDockable within the specified region. The
Component used for docking is returned by calling
getComponent() on the specified Dockable. This method
returns false immediately if the specified Dockable is
null or if
isDockingAllowed(Component comp, String region) returns
false.
If this DockingPort is currently empty, then the Dockable
is docked into the CENTER_REGION, regardless of the supplied
region parameter's value.
If isSingleTabAllowed() returns false and the
DockingPort is emtpy, then the Dockable will be added
directly to the DockingPort and will take up all available space
within the DockingPort. In this case, subsequent calls to
getDockedComponent() will return the dockable Component.
If isSingleTabAllowed() returns true and the
DockingPort is emtpy, then a JTabbedPane will be added
directly to the DockingPort and will take up all available space
within the DockingPort. The dockable Component will be
added as a tab within the tabbed pane. In this case, subsequent calls to
getDockedComponent() will return the JTabbedPane.
If the DockingPort is not empty, and the specified region
is CENTER_REGION, then the dockable Component will be
added to the JTabbedPane returned by getDockedComponent().
If this DockingPort only contained a single dockable
Component without a tabbed pane, then the currently docked
Component is removed, a JTabbedPane is created and added,
and both the old Component and the new one are added to the
JTabbedPane. In this case, subsequent calls to
getDockedComponent() will return the JTabbedPane.
If the DockingPort is not empty, and the specified region
is NORTH_REGION, SOUTH_REGION, EAST_REGION, or
WEST_REGION, then the currently docked Component is
removed and replaced with a JSplitPane. Two new
DefaultDockingPorts are created as sub-ports and are added to
each side of the JSplitPane. The previously docked
Component is docked to the CENTER_REGION of one of the sub-ports
and the new Component is added to the other. In this case,
subsequent calls to getDockedComponent() will return the
JSplitPane. In this fasion, the sub-ports will now be capable of
handling further sub-docking within the layout.
JSplitPane and sub-DockingPort creation are delegated to
the DockingStrategy returned by getDockingStrategy().
Initial splitpane divider location is also controlled by this
DockingStrategy.
dock in interface DockingPortdock in class DefaultDockingPortdockable - the Dockable to be docked within this
DockingPortregion - the region within this DockingPort to dock the
specified Dockable
true if the docking operation was successful,
false otherwise.DockingPort.dock(Dockable, String),
DefaultDockingPort.isDockingAllowed(Component, String),
DefaultDockingPort.getDockedComponent(),
DefaultDockingPort.getDockingStrategy(),
DockingStrategy.createDockingPort(DockingPort),
DockingStrategy.createSplitPane(DockingPort, String),
DockingStrategy.getInitialDividerLocation(DockingPort, JSplitPane),
DockingStrategy.getDividerProportion(DockingPort, JSplitPane)public boolean undock(Component comp)
DefaultDockingPortComponent and returns a boolean indicating
the success of the operation.
Since DefaultDockingPort may only contain one child component,
there i s a container hierarchy to manage tabbed interfaces, split
layouts, and sub-docking. As components are removed from this hierarchy,
the hierarchy itself must be reevaluated. Removing a component from a
child code>DefaultDockingPort} within a JSplitPane renders the
child DefaultDockingPort unnecessary, which, in turn, renders the
notion of splitting the layout with a JSplitPane unnecessary
(since there are no longer two components to split the layout between).
Likewise, removing a child component from a JTabbedPane such that
there is only one child left within the JTabbedPane removes the
need for a tabbed interface to begin with.
This method automatically handles the reevaluation of the container
hierarchy to keep wrapper-container usage at a minimum. Since
DockingManager makes this callback automatic, developers normally
will not need to call this method explicitly. However, when removing a
component from a DefaultDockingPort using application code,
developers should keep in mind to use this method instead of
remove().
undock in interface DockingPortundock in class DefaultDockingPortcomp - the Component to be undocked.
DockingPort.undock(Component comp),
DockingManager.undock(Dockable)public void dragStarted(DockingEvent evt)
DefaultDockingPortDockingListener interface contract.
dragStarted in interface DockingListenerdragStarted in class DefaultDockingPortevt - the DockingEvent to respond to.DockingListener.dragStarted(DockingEvent)public void undockingComplete(DockingEvent evt)
DefaultDockingPortDockingListener interface contract.
undockingComplete in interface DockingListenerundockingComplete in class DefaultDockingPortevt - the DockingEvent to respond to.DockingListener.undockingComplete(DockingEvent)
protected void toggleListeners(Component comp,
boolean add)
protected void installListeners(Dockable dockable)
protected void uninstallListeners(Dockable dockable)
public int getDockableCount()
protected Set getFrameDragSources(Dockable dockable)
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||