| javax.swing.JComponent javax.swing.JPanel org.gjt.sp.jedit.gui.DockableWindowManager
DockableWindowManager | public class DockableWindowManager extends JPanel implements EBComponent(Code) | | Keeps track of all dockable windows for a single View, and provides
an API for getting/showing/hiding them.
Each
org.gjt.sp.jedit.View has an instance of this class.
dockables.xml:
Dockable window definitions are read from dockables.xml files
contained inside plugin JARs. A dockable definition file has the following
form:
<?xml version="1.0"?>
<!DOCTYPE DOCKABLES SYSTEM "dockables.dtd">
<DOCKABLES>
<DOCKABLE NAME="dockableName" MOVABLE="TRUE|FALSE">
// Code to create the dockable
</DOCKABLE>
</DOCKABLES>
The MOVABLE attribute specifies the behavior when the docking position of
the dockable window is changed. If MOVABLE is TRUE, the existing instance of
the dockable window is moved to the new docking position, and if the dockable
window implements the DockableWindow interface (see
DockableWindow ),
it is also notified about the change in docking position before it is moved.
If MOVABLE is FALSE, the BeanShell code is invoked to get the instance of
the dockable window to put in the new docking position. Typically, the
BeanShell code returns a new instance of the dockable window, and the state
of the existing instance is not preserved after the change. It is therefore
recommended to set MOVABLE to TRUE for all dockables in order to make them
preserve their state when they are moved. For backward compatibility reasons,
this attribute is set to FALSE by default.
More than one <DOCKABLE> tag may be present. The code that
creates the dockable can reference any BeanShell built-in variable
(see
org.gjt.sp.jedit.BeanShell ), along with a variable
position whose value is one of
DockableWindowManager.FLOATING ,
DockableWindowManager.TOP ,
DockableWindowManager.LEFT ,
DockableWindowManager.BOTTOM ,
and
DockableWindowManager.RIGHT .
The following properties must be defined for each dockable window:
dockableName.title - the string to show on the dockable
button.
dockableName.label - The string to use for generating
menu items and action names.
dockableName.longtitle - (optional) the string to use
in the dockable's floating window title (when it is floating).
If not specified, the dockableName.title property is used.
A number of actions are automatically created for each dockable window:
dockableName - opens the dockable window.
dockableName-toggle - toggles the dockable window's visibility.
dockableName-float - opens the dockable window in a new
floating window.
Note that only the first action needs a label property, the
rest have automatically-generated labels.
Implementation details:
When an instance of this class is initialized by the
org.gjt.sp.jedit.View class, it
iterates through the list of registered dockable windows (from jEdit itself,
and any loaded plugins) and
examines options supplied by the user in the Global
Options dialog box. Any plugins designated for one of the
four docking positions are displayed.
To create an instance of a dockable window, the DockableWindowManager
finds and executes the BeanShell code extracted from the appropriate
dockables.xml file. This code will typically consist of a call
to the constructor of the dockable window component. The result of the
BeanShell expression, typically a newly constructed component, is placed
in a window managed by this class.
See Also: org.gjt.sp.jedit.View.getDockableWindowManager author: Slava Pestov author: John Gellene (API documentation) version: $Id: DockableWindowManager.java 10703 2007-09-21 13:14:03Z shlomy $ since: jEdit 2.6pre3 |
BOTTOM | final public static String BOTTOM(Code) | | Bottom position.
since: jEdit 2.6pre3 |
FLOATING | final public static String FLOATING(Code) | | Floating position.
since: jEdit 2.6pre3 |
LEFT | final public static String LEFT(Code) | | Left position.
since: jEdit 2.6pre3 |
RIGHT | final public static String RIGHT(Code) | | Right position.
since: jEdit 2.6pre3 |
TOP | final public static String TOP(Code) | | Top position.
since: jEdit 2.6pre3 |
resizeRect | Rectangle resizeRect(Code) | | This is the rectangle you drag to resize the split.
It is used with non continuous layout.
|
DockableWindowManager | public DockableWindowManager(View view, DockableWindowFactory factory, View.ViewConfig config)(Code) | | Creates a new dockable window manager.
Parameters: view - The view Parameters: factory - A DockableWindowFactory, usuallyDockableWindowFactory.getInstance() . Parameters: config - A docking configuration since: jEdit 2.6pre3 |
addDockableWindow | public void addDockableWindow(String name)(Code) | | Opens the specified dockable window. As of jEdit 4.0pre1, has the
same effect as calling showDockableWindow().
Parameters: name - The dockable window name since: jEdit 2.6pre3 |
close | public void close()(Code) | | Called when the view is being closed.
since: jEdit 2.6pre3 |
closeCurrentArea | public void closeCurrentArea()(Code) | | Closes the most recently focused dockable.
since: jEdit 4.1pre3 |
closeListener | public KeyListener closeListener(String dockableName)(Code) | | The actionEvent "close-docking-area" by default only works on
windows that are docked. If you want your floatable plugins to also
respond to this event, you need to add key listeners to each component
in your plugin that usually has keyboard focus.
This function returns a key listener which does exactly that.
You should not need to call this method - it is used by FloatingWindowContainer.
Parameters: dockableName - the name of your dockable a KeyListener you can add to that plugin's component. since: jEdit 4.3pre6 |
finishResizing | void finishResizing()(Code) | | |
floatDockableWindow | public JComponent floatDockableWindow(String name)(Code) | | Opens a new instance of the specified dockable window in a floating
container.
Parameters: name - The dockable window name The new dockable window instance since: jEdit 4.1pre2 |
getDockableTitle | public String getDockableTitle(String name)(Code) | | Returns the title of the specified dockable window.
Parameters: name - The name of the dockable window. since: jEdit 4.1pre5 |
getRegisteredDockableWindows | public static String[] getRegisteredDockableWindows()(Code) | | since: jEdit 4.3pre2 |
getView | public View getView()(Code) | | Returns this dockable window manager's view.
since: jEdit 4.0pre2 |
hideDockableWindow | public void hideDockableWindow(String name)(Code) | | Hides the specified dockable window.
Parameters: name - The dockable window name since: jEdit 2.6pre3 |
init | public void init()(Code) | | Initialises dockable window manager. Do not call this method directly.
|
isDockableWindowDocked | public boolean isDockableWindowDocked(String name)(Code) | | Returns if the specified dockable window is docked into the
view.
Parameters: name - The dockable's name since: jEdit 4.0pre2 |
isDockableWindowVisible | public boolean isDockableWindowVisible(String name)(Code) | | Returns if the specified dockable window is visible.
Parameters: name - The dockable window name |
removeDockableWindow | public void removeDockableWindow(String name)(Code) | | Hides the specified dockable window. As of jEdit 4.2pre1, has the
same effect as calling hideDockableWindow().
Parameters: name - The dockable window name since: jEdit 4.2pre1 |
setDockableTitle | public void setDockableTitle(String dockableName, String newTitle)(Code) | | Changes the .longtitle property of a dockable window, which corresponds to the
title shown when it is floating (not docked). Fires a change event that makes sure
all floating dockables change their title.
Parameters: dockableName - the name of the dockable, as specified in the dockables.xml Parameters: newTitle - the new .longtitle you want to see above it. since: 4.3pre5 |
showDockableWindow | public void showDockableWindow(String name)(Code) | | Opens the specified dockable window.
Parameters: name - The dockable window name since: jEdit 2.6pre3 |
toggleDockableWindow | public void toggleDockableWindow(String name)(Code) | | Toggles the visibility of the specified dockable window.
Parameters: name - The dockable window name |
Methods inherited from javax.swing.JComponent | public void addAncestorListener(AncestorListener listener)(Code)(Java Doc) public void addNotify()(Code)(Java Doc) public synchronized void addVetoableChangeListener(VetoableChangeListener listener)(Code)(Java Doc) public void computeVisibleRect(Rectangle visibleRect)(Code)(Java Doc) public boolean contains(int x, int y)(Code)(Java Doc) public JToolTip createToolTip()(Code)(Java Doc) public void disable()(Code)(Java Doc) public void enable()(Code)(Java Doc) public void firePropertyChange(String propertyName, boolean oldValue, boolean newValue)(Code)(Java Doc) public void firePropertyChange(String propertyName, int oldValue, int newValue)(Code)(Java Doc) public void firePropertyChange(String propertyName, char oldValue, char newValue)(Code)(Java Doc) protected void fireVetoableChange(String propertyName, Object oldValue, Object newValue) throws java.beans.PropertyVetoException(Code)(Java Doc) public AccessibleContext getAccessibleContext()(Code)(Java Doc) public ActionListener getActionForKeyStroke(KeyStroke aKeyStroke)(Code)(Java Doc) final public ActionMap getActionMap()(Code)(Java Doc) public float getAlignmentX()(Code)(Java Doc) public float getAlignmentY()(Code)(Java Doc) public AncestorListener[] getAncestorListeners()(Code)(Java Doc) public boolean getAutoscrolls()(Code)(Java Doc) public int getBaseline(int width, int height)(Code)(Java Doc) public BaselineResizeBehavior getBaselineResizeBehavior()(Code)(Java Doc) public Border getBorder()(Code)(Java Doc) public Rectangle getBounds(Rectangle rv)(Code)(Java Doc) final public Object getClientProperty(Object key)(Code)(Java Doc) protected Graphics getComponentGraphics(Graphics g)(Code)(Java Doc) public JPopupMenu getComponentPopupMenu()(Code)(Java Doc) public int getConditionForKeyStroke(KeyStroke aKeyStroke)(Code)(Java Doc) public int getDebugGraphicsOptions()(Code)(Java Doc) public static Locale getDefaultLocale()(Code)(Java Doc) public FontMetrics getFontMetrics(Font font)(Code)(Java Doc) public Graphics getGraphics()(Code)(Java Doc) public int getHeight()(Code)(Java Doc) public boolean getInheritsPopupMenu()(Code)(Java Doc) final public InputMap getInputMap(int condition)(Code)(Java Doc) final public InputMap getInputMap()(Code)(Java Doc) public InputVerifier getInputVerifier()(Code)(Java Doc) public Insets getInsets()(Code)(Java Doc) public Insets getInsets(Insets insets)(Code)(Java Doc) public T[] getListeners(Class<T> listenerType)(Code)(Java Doc) public Point getLocation(Point rv)(Code)(Java Doc) public Dimension getMaximumSize()(Code)(Java Doc) public Dimension getMinimumSize()(Code)(Java Doc) public Component getNextFocusableComponent()(Code)(Java Doc) public Point getPopupLocation(MouseEvent event)(Code)(Java Doc) public Dimension getPreferredSize()(Code)(Java Doc) public KeyStroke[] getRegisteredKeyStrokes()(Code)(Java Doc) public JRootPane getRootPane()(Code)(Java Doc) public Dimension getSize(Dimension rv)(Code)(Java Doc) public Point getToolTipLocation(MouseEvent event)(Code)(Java Doc) public String getToolTipText()(Code)(Java Doc) public String getToolTipText(MouseEvent event)(Code)(Java Doc) public Container getTopLevelAncestor()(Code)(Java Doc) public TransferHandler getTransferHandler()(Code)(Java Doc) public String getUIClassID()(Code)(Java Doc) public boolean getVerifyInputWhenFocusTarget()(Code)(Java Doc) public synchronized VetoableChangeListener[] getVetoableChangeListeners()(Code)(Java Doc) public Rectangle getVisibleRect()(Code)(Java Doc) public int getWidth()(Code)(Java Doc) public int getX()(Code)(Java Doc) public int getY()(Code)(Java Doc) public void grabFocus()(Code)(Java Doc) public boolean isDoubleBuffered()(Code)(Java Doc) public static boolean isLightweightComponent(Component c)(Code)(Java Doc) public boolean isManagingFocus()(Code)(Java Doc) public boolean isOpaque()(Code)(Java Doc) public boolean isOptimizedDrawingEnabled()(Code)(Java Doc) final public boolean isPaintingForPrint()(Code)(Java Doc) public boolean isPaintingTile()(Code)(Java Doc) public boolean isRequestFocusEnabled()(Code)(Java Doc) public boolean isValidateRoot()(Code)(Java Doc) public void paint(Graphics g)(Code)(Java Doc) protected void paintBorder(Graphics g)(Code)(Java Doc) protected void paintChildren(Graphics g)(Code)(Java Doc) protected void paintComponent(Graphics g)(Code)(Java Doc) public void paintImmediately(int x, int y, int w, int h)(Code)(Java Doc) public void paintImmediately(Rectangle r)(Code)(Java Doc) protected String paramString()(Code)(Java Doc) public void print(Graphics g)(Code)(Java Doc) public void printAll(Graphics g)(Code)(Java Doc) protected void printBorder(Graphics g)(Code)(Java Doc) protected void printChildren(Graphics g)(Code)(Java Doc) protected void printComponent(Graphics g)(Code)(Java Doc) protected void processComponentKeyEvent(KeyEvent e)(Code)(Java Doc) protected boolean processKeyBinding(KeyStroke ks, KeyEvent e, int condition, boolean pressed)(Code)(Java Doc) protected void processKeyEvent(KeyEvent e)(Code)(Java Doc) protected void processMouseEvent(MouseEvent e)(Code)(Java Doc) protected void processMouseMotionEvent(MouseEvent e)(Code)(Java Doc) final public void putClientProperty(Object key, Object value)(Code)(Java Doc) public void registerKeyboardAction(ActionListener anAction, String aCommand, KeyStroke aKeyStroke, int aCondition)(Code)(Java Doc) public void registerKeyboardAction(ActionListener anAction, KeyStroke aKeyStroke, int aCondition)(Code)(Java Doc) public void removeAncestorListener(AncestorListener listener)(Code)(Java Doc) public void removeNotify()(Code)(Java Doc) public synchronized void removeVetoableChangeListener(VetoableChangeListener listener)(Code)(Java Doc) public void repaint(long tm, int x, int y, int width, int height)(Code)(Java Doc) public void repaint(Rectangle r)(Code)(Java Doc) public boolean requestDefaultFocus()(Code)(Java Doc) public void requestFocus()(Code)(Java Doc) public boolean requestFocus(boolean temporary)(Code)(Java Doc) public boolean requestFocusInWindow()(Code)(Java Doc) protected boolean requestFocusInWindow(boolean temporary)(Code)(Java Doc) public void resetKeyboardActions()(Code)(Java Doc) public void reshape(int x, int y, int w, int h)(Code)(Java Doc) public void revalidate()(Code)(Java Doc) public void scrollRectToVisible(Rectangle aRect)(Code)(Java Doc) final public void setActionMap(ActionMap am)(Code)(Java Doc) public void setAlignmentX(float alignmentX)(Code)(Java Doc) public void setAlignmentY(float alignmentY)(Code)(Java Doc) public void setAutoscrolls(boolean autoscrolls)(Code)(Java Doc) public void setBackground(Color bg)(Code)(Java Doc) public void setBorder(Border border)(Code)(Java Doc) public void setComponentPopupMenu(JPopupMenu popup)(Code)(Java Doc) public void setDebugGraphicsOptions(int debugOptions)(Code)(Java Doc) public static void setDefaultLocale(Locale l)(Code)(Java Doc) public void setDoubleBuffered(boolean aFlag)(Code)(Java Doc) public void setEnabled(boolean enabled)(Code)(Java Doc) public void setFocusTraversalKeys(int id, Set<? extends AWTKeyStroke> keystrokes)(Code)(Java Doc) public void setFont(Font font)(Code)(Java Doc) public void setForeground(Color fg)(Code)(Java Doc) public void setInheritsPopupMenu(boolean value)(Code)(Java Doc) final public void setInputMap(int condition, InputMap map)(Code)(Java Doc) public void setInputVerifier(InputVerifier inputVerifier)(Code)(Java Doc) public void setMaximumSize(Dimension maximumSize)(Code)(Java Doc) public void setMinimumSize(Dimension minimumSize)(Code)(Java Doc) public void setNextFocusableComponent(Component aComponent)(Code)(Java Doc) public void setOpaque(boolean isOpaque)(Code)(Java Doc) public void setPreferredSize(Dimension preferredSize)(Code)(Java Doc) public void setRequestFocusEnabled(boolean requestFocusEnabled)(Code)(Java Doc) public void setToolTipText(String text)(Code)(Java Doc) public void setTransferHandler(TransferHandler newHandler)(Code)(Java Doc) protected void setUI(ComponentUI newUI)(Code)(Java Doc) public void setVerifyInputWhenFocusTarget(boolean verifyInputWhenFocusTarget)(Code)(Java Doc) public void setVisible(boolean aFlag)(Code)(Java Doc) public void unregisterKeyboardAction(KeyStroke aKeyStroke)(Code)(Java Doc) public void update(Graphics g)(Code)(Java Doc) public void updateUI()(Code)(Java Doc)
|
|
|