|
||||||||||
| 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.util.BackgroundPanel
bibliothek.gui.dock.util.ConfiguredBackgroundPanel
bibliothek.gui.dock.title.AbstractMultiDockTitle
@FrameworkOnly public abstract class AbstractMultiDockTitle
An abstract implementation of DockTitle. This title can have an icon and some text, but it does not
show buttons for DockActions.
Clients should make use of AbstractDockTitle which is also the super-class for all the DockTitles that
are used by the framework.
| 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 bibliothek.gui.dock.title.DockTitle |
|---|
ORIENTATION_STRATEGY |
| Fields inherited from interface java.awt.image.ImageObserver |
|---|
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
| Constructor Summary | |
|---|---|
protected |
AbstractMultiDockTitle()
Constructor which does not do anything. |
|
AbstractMultiDockTitle(Dockable dockable,
DockTitleVersion origin)
Standard constructor |
| Method Summary | |
|---|---|
protected void |
addColor(AbstractDockColor color)
Adds a color to the list of colors, this title will ensure that color gets connected to a ColorManager as soon
as this title is bound. |
protected void |
addConditionalFont(String id,
Path kind,
Condition condition,
FontModifier backup)
Adds a new conditional font to this title, the conditional font will be applied to setFont(Font) when its condition
is met. |
protected void |
addFont(AbstractDockFont font)
Adds a font to the list of fonts, this title will ensure that font gets connected to a FontManager as soon
as this title is bound. |
void |
addMouseInputListener(MouseInputListener listener)
Adds a listener to this representative, it is not defined what to do with that listener, but most subclasses would just add the listener to their component. |
void |
bind()
Called before this title is displayed. |
void |
changed(DockTitleEvent event)
Called if a property changed that might be important for painting this title. |
protected BasicTitleViewItem<JComponent> |
createItemFor(DockAction action,
Dockable dockable)
Creates a new item for action which will be shown on this title. |
void |
doLayout()
|
protected void |
doTitleLayout()
Updates the layout (position and size of all children) of this title. |
Dockable |
getDockable()
Gets the owner of this title. |
DockElement |
getElement()
Gets the element which is represented by this. |
protected Icon |
getIcon()
Gets the icon of this title. |
Rectangle |
getIconBounds()
Gets the location and the size of the icon. |
int |
getIconTextGap()
Gets the number of pixels to paint between icon and text |
protected Insets |
getInnerInsets()
Gets the insets that have to be applied between the border and the content (icon, text, actions) of this title. |
protected OrientedLabel |
getLabel()
Grants access to the OrientedLabel which paints the title text. |
Dimension |
getMinimumSize()
|
DockTitle.Orientation |
getOrientation()
Gets the current orientation. |
DockTitleVersion |
getOrigin()
Gets information about how this title was created. |
Point |
getPopupLocation(Point click,
boolean popupTrigger)
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. |
protected void |
init(Dockable dockable,
DockTitleVersion origin)
Initializer called by the constructor. |
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 boolean |
isDisabled()
Tells whether this title is disabled, a disabled title does not react to any user input. |
boolean |
isUsedAsTitle()
Tells whether this DockElementRepresentative is used as title.Some modules grant more rights to titles than to non-titles, i.e. |
void |
paintBackground(Graphics g)
Invokes the standard algorithm that paints the background of the component. |
protected void |
paintBackground(Graphics g,
JComponent component)
Paints the whole background of this title. |
void |
paintForeground(Graphics g)
Invokes the standard algorithm that paints the foreground of the component. |
protected void |
paintForeground(Graphics g,
JComponent component)
Paints the whole foreground of this title. |
protected void |
paintIcon(Graphics g,
JComponent component)
Paints the icon of this title. |
protected void |
removeAllConditionalFonts()
Removes all fonts which were set using addConditionalFont(String, Path, Condition, FontModifier) |
protected void |
removeColor(AbstractDockColor color)
Removes a color from this title |
protected void |
removeFont(AbstractDockFont font)
Removes a font from this title. |
void |
removeMouseInputListener(MouseInputListener listener)
Removes a listener from this representative. |
void |
setActive(boolean active)
Sets whether this title should be painted as focused or not. |
void |
setBackground(Color fg)
|
void |
setBorder(String key,
Border border)
Sets the border and the BorderModifier that should be used by this title. |
protected void |
setDisabled(boolean disabled)
Tells this title whether it should be disabled or not. |
void |
setFont(Font font)
|
void |
setFontModifier(FontModifier modifier)
|
void |
setForeground(Color fg)
|
protected void |
setIcon(Icon icon)
Sets the icon of this title. |
void |
setIconTextGap(int iconTextGap)
Sets the number of pixels to paint between icon and text. |
void |
setOrientation(DockTitle.Orientation orientation)
Sets the orientation of this title. |
protected void |
setText(String text)
Sets the text of this title. |
protected void |
setTooltip(String text)
Sets the tooltip that will be shown on this title. |
boolean |
shouldFocus()
Tells whether a click onto this component should transfer the focus either to this component or to the Dockable. |
boolean |
shouldTransfersFocus()
Tells whether a click onto this component should transfer the focus to the Dockable or not. |
protected Insets |
titleInsets()
Gets the Insets of this title, tells how much space is not to be covered
by children Components. |
void |
unbind()
The reverse of DockTitle.bind(). |
protected void |
updateFonts()
Checks the state of this title and may replace the font of the title. |
protected void |
updateIcon()
Called when the icon of this title should be updated. |
protected void |
updateText()
Called when the text of this title should be updated. |
protected void |
updateTooltip()
Called when the tooltip of this title should be updated. |
| Methods inherited from class bibliothek.gui.dock.util.ConfiguredBackgroundPanel |
|---|
configure |
| Methods inherited from class bibliothek.gui.dock.util.BackgroundPanel |
|---|
getBackgroundAlgorithm, getComponent, getTransparency, paint, paintBorder, paintChildren, paintComponent, paintOverlay, setBackground, setTransparency |
| 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 bibliothek.gui.dock.title.DockTitle |
|---|
getComponent |
| Constructor Detail |
|---|
public AbstractMultiDockTitle(Dockable dockable,
DockTitleVersion origin)
dockable - The Dockable whose title this will beorigin - The version which was used to create this titleprotected AbstractMultiDockTitle()
init(Dockable, DockTitleVersion) to initialize
the title.
| Method Detail |
|---|
protected void init(Dockable dockable,
DockTitleVersion origin)
dockable - The Dockable whose title this will beorigin - The version which was used to create this titlepublic void setIconTextGap(int iconTextGap)
iconTextGap - the number of pixels to paintpublic int getIconTextGap()
protected void addColor(AbstractDockColor color)
color gets connected to a ColorManager as soon
as this title is bound.
color - the new colorprotected void removeColor(AbstractDockColor color)
color - the color to removeprotected void addFont(AbstractDockFont font)
font gets connected to a FontManager as soon
as this title is bound.
font - the new fontprotected void removeFont(AbstractDockFont font)
font - the font to remove
protected void addConditionalFont(String id,
Path kind,
Condition condition,
FontModifier backup)
setFont(Font) when its condition
is met. If there is more than one font whose condition is met, then the
first one that was registered is used.
id - the id of the font which is to be usedkind - what kind of title this iscondition - the condition to metbackup - to be used when there is not font set in the FontManagerprotected void removeAllConditionalFonts()
addConditionalFont(String, Path, Condition, FontModifier)
public Rectangle getIconBounds()
null if no icon is registeredprotected void setDisabled(boolean disabled)
DisablingStrategy
changes. A disabled title should react to any InputEvent, and should be painted differently than an
enabled title.
disabled - whether this title is disabledisDisabled()protected boolean isDisabled()
setDisabled(boolean)public void paintBackground(Graphics g)
PaintableComponent
paintBackground in interface PaintableComponentpaintBackground in class BackgroundPanelg - the graphics context to use, null to just inform
this component that the background should not be painted automatically
protected void paintBackground(Graphics g,
JComponent component)
component.
g - the graphics context used to paintcomponent - the Component which represents this titlepublic void paintForeground(Graphics g)
PaintableComponent
paintForeground in interface PaintableComponentpaintForeground in class BackgroundPanelg - the graphics context to use, null to just inform
this component that the foreground should not be painted automatically
protected void paintForeground(Graphics g,
JComponent component)
g - the graphics context to usecomponent - the Component which represents this title
protected void paintIcon(Graphics g,
JComponent component)
g - the graphics context to usecomponent - the Component which represents this titleprotected void setIcon(Icon icon)
icon - the icon, can be nullprotected Icon getIcon()
nullsetIcon(Icon)protected OrientedLabel getLabel()
OrientedLabel which paints the title text.
nullprotected void setText(String text)
text - the text or nullprotected String getText()
protected void setTooltip(String text)
text - the new tooltip, can be nullpublic void setOrientation(DockTitle.Orientation orientation)
DockTitle
setOrientation in interface DockTitleorientation - the orientationpublic DockTitle.Orientation getOrientation()
getOrientation in interface DockTitlesetOrientation(bibliothek.gui.dock.title.DockTitle.Orientation)public DockTitleVersion getOrigin()
DockTitleDockTitleVersion can be used
to create a DockTitleRequest which should create the same title again. If this title
was not created through the regular methods, then this method is allowed
to return null. However, some features will only work correctly
if this value is not null.
getOrigin in interface DockTitlenullpublic void setForeground(Color fg)
setForeground in class JComponentpublic void setBackground(Color fg)
setBackground in class JComponentpublic void setFont(Font font)
setFont in class JComponentpublic void setFontModifier(FontModifier modifier)
public Dimension getMinimumSize()
getMinimumSize in class JComponent
public void setBorder(String key,
Border border)
BorderModifier that should be used by this title.
key - the identifier of the modifier or nullborder - the default title, can be nullprotected Insets getInnerInsets()
nullprotected Insets titleInsets()
Insets of this title, tells how much space is not to be covered
by children Components.
nullpublic void doLayout()
doLayout in class Containerprotected void doTitleLayout()
public void addMouseInputListener(MouseInputListener listener)
DockElementRepresentativecomponent. It is valid to do nothing.
addMouseInputListener in interface DockElementRepresentativeaddMouseInputListener in interface DockTitlelistener - the new listenerpublic void removeMouseInputListener(MouseInputListener listener)
DockElementRepresentative
removeMouseInputListener in interface DockElementRepresentativeremoveMouseInputListener in interface DockTitlelistener - the listener to remove
public Point getPopupLocation(Point click,
boolean popupTrigger)
DockElementRepresentativeclick with the mouse. If yes, then the top left edge
of the popup should be returned, otherwise null should be
returned.
getPopupLocation in interface DockElementRepresentativeclick - the location where the user clicked with the mousepopupTrigger - whether the invocation is the systems popup trigger
or not. Many implementations of this method will return click
in case of true, and null in case of false
null if no
popup-menu should be openedpublic Dockable getDockable()
DockTitle
getDockable in interface DockTitlepublic DockElement getElement()
DockElementRepresentativethis.
The result of this method must not change.
getElement in interface DockElementRepresentativenullpublic boolean isUsedAsTitle()
DockElementRepresentativeDockElementRepresentative is used as title.DockRelocator can allow drag & drop only for titles.Dockable should have only one element that is a title,
so if in doubt return false.
isUsedAsTitle in interface DockElementRepresentativetrue if this representative should be seen as titlepublic boolean shouldTransfersFocus()
DockElementRepresentativeDockable or not. If this
object is a Dockable, then a result of true might change the currently focused item
of itself. This property is ignored if DockElementRepresentative.shouldFocus() returns false.
shouldTransfersFocus in interface DockElementRepresentativepublic boolean shouldFocus()
DockElementRepresentativeDockable.
shouldFocus in interface DockElementRepresentativetrue if clicking this component should influence focuspublic void setActive(boolean active)
active - true if the Dockable of this title
has the focus.public void changed(DockTitleEvent event)
DockTitleDockTitleEvent to transmit more information
to this title than DockTitleEvent would allow.
changed in interface DockTitleevent - information about the current statepublic boolean isActive()
DockTitlechanged.
isActive in interface DockTitlepublic 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
public void bind()
DockTitleowner.
If the title wants to show some 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 DockTitlepublic void unbind()
DockTitleDockTitle.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 DockTitleprotected void updateIcon()
setIcon(Icon) directly, it always calls this method
which then calls setIcon(Icon) (the only exception: on
unbinding the icon is set to null)
protected void updateText()
setText(String) directly, it always calls this method
which then calls setText(String) (the only exception: on
unbinding the text is set to null)
protected void updateTooltip()
setTooltip(String) directly, it always
calls this method which then calls setTooltip(String) (the
only exception: on unbinding the tooltip is set to null)
public boolean isBound()
Dockable or not.
bound, false
otherwiseprotected void updateFonts()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||