|
||||||||||
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
bibliothek.gui.dock.title.AbstractDockTitle
public class AbstractDockTitle
An abstract implementation of DockTitle
. This title can have
an icon, a title-text and some small buttons to display actions
.
The icon is at the top or left edge, the text in the middle, and the actions
at the lower or the right edge of the title. If the orientation of the
title is set to vertical
, the text will be rotated
by 90 degrees.
This title has also an ActionPopup
which will appear when the user
presses the right mouse-button. The popup shows a list of all actions known
to this title.
The whole logic a DockTitle
needs is implemented in this class,
but subclasses may add graphical features - like a border or another
background.
Subclasses may override getInnerInsets()
to add a space between
border and contents of this title.
Nested Class Summary |
---|
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.BltBufferStrategy, Component.FlipBufferStrategy |
Nested classes/interfaces inherited from interface bibliothek.gui.dock.title.DockTitle |
---|
DockTitle.Orientation |
Field Summary |
---|
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 java.awt.image.ImageObserver |
---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
Constructor Summary | |
---|---|
AbstractDockTitle(Dockable dockable,
DockTitleVersion origin)
Constructs a new title |
|
AbstractDockTitle(Dockable dockable,
DockTitleVersion origin,
boolean showMiniButtons)
Standard constructor |
Method Summary | |
---|---|
void |
addMouseInputListener(MouseInputListener listener)
Adds a listener to all Components of this title
which are visible and which may be "grabbed" by the mouse. |
void |
bind()
Called before the title is displayed. |
void |
changed(DockTitleEvent event)
Called if a property (of this title, of the owner or anything else) has changed. |
protected BasicTitleViewItem<JComponent> |
createItemFor(DockAction action,
Dockable dockable)
Creates a new item for action which will be shown on this title. |
void |
doLayout()
|
protected DockActionSource |
getActionSourceFor(Dockable dockable)
Gets a list of all actions which will be shown on this title. |
Component |
getComponent()
Gets a Component which represents the DockTitle . |
Dockable |
getDockable()
Gets the owner of this title. |
protected Icon |
getIcon()
Gets the icon of this title. |
Rectangle |
getIconBounds()
Gets the location and the size of the icon. |
protected Insets |
getInnerInsets()
Gets the insets that have to be applied between the border and the content of this title. |
Dimension |
getMinimumSize()
|
DockTitle.Orientation |
getOrientation()
Gets the current orientation. |
DockTitleVersion |
getOrigin()
Gets the version which was used to create this title. |
Point |
getPopupLocation(Point click)
Tells whether a popup menu should be opened when the user clicks at click with the mouse. |
Dimension |
getPreferredSize()
|
protected String |
getText()
Gets the text which is shown on this title. |
boolean |
isActive()
Tells whether this title is selected (active) or not. |
boolean |
isBound()
Tells whether this title is bound to a Dockable or not. |
protected void |
paintBackground(Graphics g,
JComponent component)
Paints the whole background of this title. |
void |
paintComponent(Graphics g)
|
void |
removeMouseInputListener(MouseInputListener listener)
Removes a listener. |
void |
setActive(boolean active)
Sets whether this title should be painted as focused or not. |
void |
setBackground(Color fg)
|
void |
setForeground(Color fg)
|
protected void |
setIcon(Icon icon)
Sets the icon of this title. |
void |
setOrientation(DockTitle.Orientation orientation)
Sets the orientation of this title. |
protected void |
setText(String text)
Sets the text of this title. |
void |
unbind()
The reverse of DockTitle.bind() . |
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 |
Constructor Detail |
---|
public AbstractDockTitle(Dockable dockable, DockTitleVersion origin)
dockable
- the Dockable which is the owner of this titleorigin
- the version which was used to create this titlepublic AbstractDockTitle(Dockable dockable, DockTitleVersion origin, boolean showMiniButtons)
dockable
- The Dockable whose title this will beorigin
- The version which was used to create this titleshowMiniButtons
- true
if the actions of the Dockable
should be shown, false
if they should not be visibleMethod Detail |
---|
public void paintComponent(Graphics g)
paintComponent
in class JComponent
public Rectangle getIconBounds()
null
if no icon is registeredprotected void paintBackground(Graphics g, JComponent component)
component
.
g
- the graphics context used to paintcomponent
- the Component which represents this titleprotected void setIcon(Icon icon)
icon
- the icon, can be null
protected Icon getIcon()
null
setIcon(Icon)
protected void setText(String text)
text
- the text or nullprotected String getText()
public void setOrientation(DockTitle.Orientation orientation)
DockTitle
setOrientation
in interface DockTitle
orientation
- the orientationpublic DockTitle.Orientation getOrientation()
getOrientation
in interface DockTitle
setOrientation(bibliothek.gui.dock.title.DockTitle.Orientation)
public DockTitleVersion getOrigin()
DockTitle
null
. However, some features will only work correctly
if this value is not null
.
getOrigin
in interface DockTitle
null
public void setForeground(Color fg)
setForeground
in class JComponent
public void setBackground(Color fg)
setBackground
in class JComponent
public Dimension getMinimumSize()
getMinimumSize
in class JComponent
protected Insets getInnerInsets()
null
public void doLayout()
doLayout
in class Container
public Component getComponent()
DockTitle
DockTitle
.
The Component is displayed aside the owner of this title.
This method must always return the same Component.
getComponent
in interface DockTitle
public void addMouseInputListener(MouseInputListener listener)
DockTitle
Components
of this title
which are visible and which may be "grabbed" by the mouse.
addMouseInputListener
in interface DockTitle
listener
- the new listenerpublic void removeMouseInputListener(MouseInputListener listener)
DockTitle
removeMouseInputListener
in interface DockTitle
listener
- the listener to removepublic Point getPopupLocation(Point click)
DockTitle
click
with the mouse. If yes, then the top left edge
of the popup should be returned, otherwise null
should be
returned.
getPopupLocation
in interface DockTitle
click
- the location where the user clicked with the mouse
null
if no
popup-menu should be openedpublic Dockable getDockable()
DockTitle
getDockable
in interface DockTitle
public void setActive(boolean active)
active
- true
if the Dockable
of this title
has the focus.public void changed(DockTitleEvent event)
DockTitle
changed
in interface DockTitle
event
- information about the current statepublic boolean isActive()
DockTitle
changed
.
isActive
in interface DockTitle
public Dimension getPreferredSize()
getPreferredSize
in class JComponent
protected BasicTitleViewItem<JComponent> createItemFor(DockAction action, Dockable dockable)
action
which will be shown on this title.
action
- The action which will be triggered by the buttondockable
- The Dockable
which will be affected by the action
protected DockActionSource getActionSourceFor(Dockable dockable)
dockable
- the owner of the actions
public void bind()
DockTitle
DockActions
(see the method
DockController.listOffers(Dockable)
), then this method
should bind
them too.Dockable.bind(DockTitle)
. The DockController
will call the bind-method, as soon as the Dockable knows the controller.
bind
in interface DockTitle
public void unbind()
DockTitle
DockTitle.bind()
. The title should remove any connections
to other objects and unbind
its
DockActions.Dockable.unbind(DockTitle)
. The DockController
will call the unbind-method before the Dockable looses the controller.
unbind
in interface DockTitle
public boolean isBound()
Dockable
or not.
bound
, false
otherwise
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |