net.infonode.tabbedpanel.titledtab
public class TitledTab extends Tab implements IconProvider
A TitledTab is a tab that has support for text, icon and a custom Swing component (called title component). Titled tab supports several properties that makes it possible to change the look (borders, colors, insets), layout (up, down, left, right).
Titled tab has a line based layout, i.e. the text, icon and title component are laid out in a line. The layout of the tab can be rotated, i.e. the text and the icon will be rotated 90, 180 or 270 degrees. The title component will not be rotated but moved so that the line layout will persist.
A titled tab has 3 rendering states:
Note: If only the normal state properties have been configured, the highlighted and disabled state will automatically use the same properties as for the normal state, see {@link TitledTabProperties} and {@link TitledTabStateProperties}.
TitledTab implements the {@link net.infonode.gui.icon.IconProvider} interface and overloads toString() so that both text and icon for the normal state is shown in the tab drop down list in a tabbed panel.
TitledTab supports mouse hovering. A {@link HoverListener} can be set in the {@link TitledTabProperties}. The hover listener receives a {@link HoverEvent} when the mouse enters or exits the tab. The hover event's source will be the affected titled tab.
Version: $Revision: 1.88 $
See Also: TitledTabProperties TitledTabStateProperties
Constructor Summary | |
---|---|
TitledTab(String text, Icon icon, JComponent contentComponent, JComponent titleComponent)
Constructs a TitledTab with a text, icon, content component and title component.
|
Method Summary | |
---|---|
void | addMouseListener(MouseListener l)
Adds a MouseListener to receive mouse events from this TitledTab.
|
void | addMouseMotionListener(MouseMotionListener l)
Adds a MouseMotionListener to receive mouse events from this TitledTab.
|
boolean | contains(int x, int y) |
JComponent | getDisabledStateTitleComponent()
Gets the title component for the disabled state
|
JComponent | getHighlightedStateTitleComponent()
Gets the title component for the highlighted state
|
Icon | getIcon()
Gets the icon for the normal state
|
MouseListener[] | getMouseListeners()
Gets the mouse listeners
|
MouseMotionListener[] | getMouseMotionListeners()
Gets the mouse motion listeners
|
JComponent | getNormalStateTitleComponent()
Gets the title component for the normal state
|
TitledTabProperties | getProperties()
Gets the TitledTabProperties
|
Shape | getShape()
Gets the Shape for the current active rendering state.
|
String | getText()
Gets the text for the normal state
|
boolean | inside(int x, int y) |
void | removeMouseListener(MouseListener l)
Removes a MouseListener
|
void | removeMouseMotionListener(MouseMotionListener l)
Removes a MouseMotionListener
|
void | setDisabledStateTitleComponent(JComponent titleComponent)
Sets the disabled state title component
|
void | setEnabled(boolean enabled) Sets if this TitledTab should be enabled or disabled Note: since ITP 1.5.0 this method will change the enabled property in the {@link TitledTabProperties} for this tab. |
void | setHighlighted(boolean highlighted) Sets if this TitledTab should be highlighted or not. Note: This will only have effect if this TitledTab is enabled and a member of a tabbed panel. |
void | setHighlightedStateTitleComponent(JComponent titleComponent)
Sets the highlighted state title component
|
void | setIcon(Icon icon)
Sets the icon for the normal state
|
void | setNormalStateTitleComponent(JComponent titleComponent)
Sets the normal state title component
|
void | setOpaque(boolean opaque) |
protected void | setTabbedPanel(TabbedPanel tabbedPanel) |
void | setText(String text)
Sets the text for the normal state
|
void | setTitleComponent(JComponent titleComponent) Sets the title component. This method is a convenience method for setting the same title component for all states. |
void | setUI(PanelUI ui) |
String | toString()
Gets the text for the normal state.
|
void | updateUI() |
Parameters: text text or null for no text. The text will be applied to the normal state properties icon icon or null for no icon. The icon will be applied to the normal state properties contentComponent content component or null for no content component titleComponent title component or null for no title component. The title component will be applied to all the states
See Also: TabFactory
Parameters: l the MouseListener
Parameters: l the MouseMotionListener
Returns: title component or null if no title component
Returns: title component or null if no title component
Returns: the icon or null if none
Returns: the mouse listeners
Returns: the mouse motion listeners
Returns: title component or null if no title component
Returns: the TitledTabProperties for this TitledTab
Returns: the Shape for the active rendering state, null if no special shape
Since: ITP 1.2.0
Returns: the text or null if no text
Parameters: l the MouseListener to remove
Parameters: l the MouseMotionListener to remove
Parameters: titleComponent the title component or null for no title component
Sets if this TitledTab should be enabled or disabled
Note: since ITP 1.5.0 this method will change the enabled property in the {@link TitledTabProperties} for this tab. Enabled/disabled can be controlled by modifying the property or this method.
Parameters: enabled true for enabled, otherwise false
Sets if this TitledTab should be highlighted or not.
Note: This will only have effect if this TitledTab is enabled and a member of a tabbed panel.
Parameters: highlighted true for highlight, otherwise false
Parameters: titleComponent the title component or null for no title component
Parameters: icon the icon or null for no icon
Parameters: titleComponent the title component or null for no title component
Parameters: text the text or null for no text
Sets the title component.
This method is a convenience method for setting the same title component for all states.
Parameters: titleComponent the title component or null for no title component
Returns: the text or null if no text
Since: ITP 1.1.0
See Also: TitledTab