com.vlsolutions.swing.tabbedpane

Class JTabbedPaneSmartIcon

Implemented Interfaces:
Cloneable, Icon

public class JTabbedPaneSmartIcon
extends java.lang.Object
implements Icon, Cloneable

An Icon allowing the use of closeable tabs by simulating the entire tabpane tab-painting.

As JTabbedPanes cannot use any JComponents as tab selectors (the access if protected and we just have a label, an icon and a tooltip), we have to rely on tricks to bypass them.

Constructor Summary

JTabbedPaneSmartIcon(Icon icon, String label, SmartIconJButton[] otherIcons)
Constructs a new smart icon with a given set of additional buttons

Method Summary

Object
clone()
JTabbedPaneSmartIcon
copy()
Creates a shalow copy of this icon
Icon
getIcon()
Return the tab icon
int
getIconHeight()
Returns the height of this icon
int
getIconWidth()
Returns the width of this icon
String
getLabel()
Return the tab label
String
getLocalTooltipText()
Return the local tooltip of this icon (the one associated with inner mouse movements)
SmartIconJButton
getSmartButton(int index)
String
getTooltipText()
Return the tooltip of this icon
boolean
onMouseExited(MouseEvent e)
Process the mouse exited event.
boolean
onMouseMoved(MouseEvent e)
Process the mouse moved event.
boolean
onMousePressed(MouseEvent e)
Process the mouse pressed event.
boolean
onMouseReleased(MouseEvent e)
Process the mouse released event.
void
paintIcon(Component c, Graphics g, int x, int y)
paints the icon (and the associated label and sub-icons)
void
setIcon(Icon icon)
Update the main icon (left) to be displayed on the tab
void
setIconForTabbedPane(JTabbedPane container)
Specify which container will use this icon.
void
setLabel(String label)
Update the label to be displayed on the tab
void
setSmartButton(int index, SmartIconJButton btn)
void
setTooltipText(String tooltip)
Update the tooltip of this icon

Constructor Details

JTabbedPaneSmartIcon

public JTabbedPaneSmartIcon(Icon icon,
                            String label,
                            SmartIconJButton[] otherIcons)
Constructs a new smart icon with a given set of additional buttons

Method Details

clone

public Object clone()

copy

public JTabbedPaneSmartIcon copy()
Creates a shalow copy of this icon

getIcon

public Icon getIcon()
Return the tab icon

getIconHeight

public int getIconHeight()
Returns the height of this icon

getIconWidth

public int getIconWidth()
Returns the width of this icon

getLabel

public String getLabel()
Return the tab label

getLocalTooltipText

public String getLocalTooltipText()
Return the local tooltip of this icon (the one associated with inner mouse movements)

getSmartButton

public SmartIconJButton getSmartButton(int index)

getTooltipText

public String getTooltipText()
Return the tooltip of this icon

onMouseExited

public boolean onMouseExited(MouseEvent e)
Process the mouse exited event.

Mouse coordinates are given relative to this icon


onMouseMoved

public boolean onMouseMoved(MouseEvent e)
Process the mouse moved event.

Mouse coordinates are given relative to this icon


onMousePressed

public boolean onMousePressed(MouseEvent e)
Process the mouse pressed event.

Mouse coordinates are given relative to this icon


onMouseReleased

public boolean onMouseReleased(MouseEvent e)
Process the mouse released event.

Mouse coordinates are given relative to this icon


paintIcon

public void paintIcon(Component c,
                      Graphics g,
                      int x,
                      int y)
paints the icon (and the associated label and sub-icons)

setIcon

public void setIcon(Icon icon)
Update the main icon (left) to be displayed on the tab

setIconForTabbedPane

public void setIconForTabbedPane(JTabbedPane container)
Specify which container will use this icon.

If the icon is shared between containers, please provide at least one as this allows the icon to properly estimate its dimension.


setLabel

public void setLabel(String label)
Update the label to be displayed on the tab

setSmartButton

public void setSmartButton(int index,
                           SmartIconJButton btn)

setTooltipText

public void setTooltipText(String tooltip)
Update the tooltip of this icon

© Copyright 2004-2006 VLSolutions. All Rights Reserved.
www.vlsolutions.com : Java Components - Smart Client Applications