public class CTabFolder extends Composite
The item children that may be added to instances of this class
must be of type CTabItem
.
Control
children are created and then set into a
tab item using CTabItem#setControl
.
Note that although this class is a subclass of Composite
,
it does not make sense to set a layout on it.
Note: Only one of the styles TOP and BOTTOM may be specified.
IMPORTANT: This class is not intended to be subclassed.
Modifier and Type | Field and Description |
---|---|
static RGB |
borderInsideRGB
Deprecated.
drop shadow border is no longer drawn in 3.0
|
static RGB |
borderMiddleRGB
Deprecated.
drop shadow border is no longer drawn in 3.0
|
static RGB |
borderOutsideRGB
Deprecated.
drop shadow border is no longer drawn in 3.0
|
int |
marginHeight
marginHeight specifies the number of pixels of vertical margin
that will be placed along the top and bottom edges of the form.
|
int |
marginWidth
marginWidth specifies the number of pixels of horizontal margin
that will be placed along the left and right edges of the form.
|
int |
MIN_TAB_WIDTH
Deprecated.
This field is no longer used. See setMinimumCharacters(int)
|
Constructor and Description |
---|
CTabFolder(Composite parent,
int style)
Constructs a new instance of this class given its parent
and a style value describing its behavior and appearance.
|
Modifier and Type | Method and Description |
---|---|
void |
addCTabFolder2Listener(CTabFolder2Listener listener)
Adds the listener to the collection of listeners who will
be notified when a tab item is closed, minimized, maximized,
restored, or to show the list of items that are not
currently visible.
|
void |
addCTabFolderListener(CTabFolderListener listener)
Deprecated.
use addCTabFolder2Listener(CTabFolder2Listener)
|
void |
addSelectionListener(SelectionListener listener)
Adds the listener to the collection of listeners who will
be notified when the user changes the receiver's selection, by sending
it one of the messages defined in the
SelectionListener
interface. |
Rectangle |
computeTrim(int x,
int y,
int width,
int height)
Given a desired client area for the receiver
(as described by the arguments), returns the bounding
rectangle which would be required to produce that client
area.
|
boolean |
getBorderVisible()
Returns
true if the receiver's border is visible. |
Rectangle |
getClientArea()
Returns a rectangle which describes the area of the
receiver which is capable of displaying data (that is,
not covered by the "trimmings").
|
CTabItem |
getItem(int index)
Return the tab that is located at the specified index.
|
CTabItem |
getItem(Point pt)
Gets the item at a point in the widget.
|
int |
getItemCount()
Return the number of tabs in the folder.
|
CTabItem[] |
getItems()
Return the tab items.
|
boolean |
getMaximized()
Returns
true if the receiver is maximized. |
boolean |
getMaximizeVisible()
Returns
true if the maximize button
is visible. |
boolean |
getMinimized()
Returns
true if the receiver is minimized. |
boolean |
getMinimizeVisible()
Returns
true if the minimize button
is visible. |
int |
getMinimumCharacters()
Returns the number of characters that will
appear in a fully compressed tab.
|
boolean |
getMRUVisible()
Returns
true if the receiver displays most
recently used tabs and false otherwise. |
CTabFolderRenderer |
getRenderer()
Returns the receiver's renderer.
|
CTabItem |
getSelection()
Return the selected tab item, or null if there is no selection.
|
Color |
getSelectionBackground()
Returns the receiver's selection background color.
|
Color |
getSelectionForeground()
Returns the receiver's selection foreground color.
|
int |
getSelectionIndex()
Return the index of the selected tab item, or -1 if there
is no selection.
|
boolean |
getSimple()
Returns
true if the CTabFolder is rendered
with a simple, traditional shape. |
boolean |
getSingle()
Returns
true if the CTabFolder only displays the selected tab
and false if the CTabFolder displays multiple tabs. |
int |
getStyle()
Returns the receiver's style information.
|
int |
getTabHeight()
Returns the height of the tab
|
int |
getTabPosition()
Returns the position of the tab.
|
Control |
getTopRight()
Returns the control in the top right corner of the tab folder.
|
int |
getTopRightAlignment()
Returns the alignment of the top right control.
|
boolean |
getUnselectedCloseVisible()
Returns
true if the close button appears
when the user hovers over an unselected tabs. |
boolean |
getUnselectedImageVisible()
Returns
true if an image appears
in unselected tabs. |
int |
indexOf(CTabItem item)
Return the index of the specified tab or -1 if the tab is not
in the receiver.
|
void |
removeCTabFolder2Listener(CTabFolder2Listener listener)
Removes the listener.
|
void |
removeCTabFolderListener(CTabFolderListener listener)
Deprecated.
see removeCTabFolderCloseListener(CTabFolderListener)
|
void |
removeSelectionListener(SelectionListener listener)
Removes the listener from the collection of listeners who will
be notified when the user changes the receiver's selection.
|
void |
reskin(int flags)
Marks the widget to be skinned.
|
void |
setBackground(Color color)
Sets the receiver's background color to the color specified
by the argument, or to the default system color for the control
if the argument is null.
|
void |
setBackground(Color[] colors,
int[] percents)
Specify a gradient of colors to be drawn in the background of the unselected tabs.
|
void |
setBackground(Color[] colors,
int[] percents,
boolean vertical)
Specify a gradient of colors to be drawn in the background of the unselected tab.
|
void |
setBackgroundImage(Image image)
Sets the receiver's background image to the image specified
by the argument, or to the default system color for the control
if the argument is null.
|
void |
setBorderVisible(boolean show)
Toggle the visibility of the border
|
boolean |
setFocus()
Causes the receiver to have the keyboard focus,
such that all keyboard events will be delivered to it.
|
void |
setFont(Font font)
Sets the font that the receiver will use to paint textual information
to the font specified by the argument, or to the default font for that
kind of control if the argument is null.
|
void |
setForeground(Color color)
Sets the receiver's foreground color to the color specified
by the argument, or to the default system color for the control
if the argument is null.
|
void |
setInsertMark(CTabItem item,
boolean after)
Display an insert marker before or after the specified tab item.
|
void |
setInsertMark(int index,
boolean after)
Display an insert marker before or after the specified tab item.
|
void |
setLayout(Layout layout)
Sets the layout which is associated with the receiver to be
the argument which may be null.
|
void |
setMaximized(boolean maximize)
Sets the maximized state of the receiver.
|
void |
setMaximizeVisible(boolean visible)
Marks the receiver's maximize button as visible if the argument is
true ,
and marks it invisible otherwise. |
void |
setMinimized(boolean minimize)
Sets the minimized state of the receiver.
|
void |
setMinimizeVisible(boolean visible)
Marks the receiver's minimize button as visible if the argument is
true ,
and marks it invisible otherwise. |
void |
setMinimumCharacters(int count)
Sets the minimum number of characters that will
be displayed in a fully compressed tab.
|
void |
setMRUVisible(boolean show)
When there is not enough horizontal space to show all the tabs,
by default, tabs are shown sequentially from left to right in
order of their index.
|
void |
setRenderer(CTabFolderRenderer renderer)
Sets the renderer which is associated with the receiver to be
the argument which may be null.
|
void |
setSelection(CTabItem item)
Set the selection to the tab at the specified item.
|
void |
setSelection(int index)
Set the selection to the tab at the specified index.
|
void |
setSelectionBackground(Color color)
Sets the receiver's selection background color to the color specified
by the argument, or to the default system color for the control
if the argument is null.
|
void |
setSelectionBackground(Color[] colors,
int[] percents)
Specify a gradient of colours to be draw in the background of the selected tab.
|
void |
setSelectionBackground(Color[] colors,
int[] percents,
boolean vertical)
Specify a gradient of colours to be draw in the background of the selected tab.
|
void |
setSelectionBackground(Image image)
Set the image to be drawn in the background of the selected tab.
|
void |
setSelectionForeground(Color color)
Set the foreground color of the selected tab.
|
void |
setSimple(boolean simple)
Sets the shape that the CTabFolder will use to render itself.
|
void |
setSingle(boolean single)
Sets the number of tabs that the CTabFolder should display
|
void |
setTabHeight(int height)
Specify a fixed height for the tab items.
|
void |
setTabPosition(int position)
Specify whether the tabs should appear along the top of the folder
or along the bottom of the folder.
|
void |
setTopRight(Control control)
Set the control that appears in the top right corner of the tab folder.
|
void |
setTopRight(Control control,
int alignment)
Set the control that appears in the top right corner of the tab folder.
|
void |
setUnselectedCloseVisible(boolean visible)
Specify whether the close button appears
when the user hovers over an unselected tabs.
|
void |
setUnselectedImageVisible(boolean visible)
Specify whether the image appears on unselected tabs.
|
void |
showItem(CTabItem item)
Shows the item.
|
void |
showSelection()
Shows the selection.
|
changed, checkSubclass, computeSize, drawBackground, getBackgroundMode, getChildren, getLayout, getLayoutDeferred, getTabList, isLayoutDeferred, layout, layout, layout, layout, layout, setBackgroundMode, setLayoutDeferred, setTabList
getHorizontalBar, getScrollbarsMode, getVerticalBar
addControlListener, addDragDetectListener, addFocusListener, addGestureListener, addHelpListener, addKeyListener, addMenuDetectListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addMouseWheelListener, addPaintListener, addTouchListener, addTraverseListener, computeSize, dragDetect, dragDetect, forceFocus, getAccessible, getBackground, getBackgroundImage, getBorderWidth, getBounds, getCursor, getDragDetect, getEnabled, getFont, getForeground, getLayoutData, getLocation, getMenu, getMonitor, getOrientation, getParent, getRegion, getShell, getSize, getTextDirection, getToolTipText, getTouchEnabled, getVisible, internal_dispose_GC, internal_new_GC, isEnabled, isFocusControl, isReparentable, isVisible, moveAbove, moveBelow, pack, pack, print, redraw, redraw, removeControlListener, removeDragDetectListener, removeFocusListener, removeGestureListener, removeHelpListener, removeKeyListener, removeMenuDetectListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removeMouseWheelListener, removePaintListener, removeTouchListener, removeTraverseListener, setBounds, setBounds, setCapture, setCursor, setDragDetect, setEnabled, setLayoutData, setLocation, setLocation, setMenu, setOrientation, setParent, setRedraw, setRegion, setSize, setSize, setTextDirection, setToolTipText, setTouchEnabled, setVisible, toControl, toControl, toDisplay, toDisplay, traverse, traverse, traverse, update
addDisposeListener, addListener, checkWidget, dispose, getData, getData, getDisplay, getListeners, isDisposed, isListening, notifyListeners, removeDisposeListener, removeListener, removeListener, setData, setData, toString
public int marginWidth
public int marginHeight
@Deprecated public int MIN_TAB_WIDTH
@Deprecated public static RGB borderInsideRGB
@Deprecated public static RGB borderMiddleRGB
@Deprecated public static RGB borderOutsideRGB
public CTabFolder(Composite parent, int style)
The style value is either one of the style constants defined in
class SWT
which is applicable to instances of this
class, or must be built by bitwise OR'ing together
(that is, using the int
"|" operator) two or more
of those SWT
style constants. The class description
lists the style constants that are applicable to the class.
Style bits are also inherited from superclasses.
parent
- a widget which will be the parent of the new instance (cannot be null)style
- the style of widget to constructIllegalArgumentException
- SWTException
- SWT.TOP
,
SWT.BOTTOM
,
SWT.FLAT
,
SWT.BORDER
,
SWT.SINGLE
,
SWT.MULTI
,
getStyle()
public void addCTabFolder2Listener(CTabFolder2Listener listener)
listener
- the listener which should be notifiedIllegalArgumentException
- SWTException
- CTabFolder2Listener
,
removeCTabFolder2Listener(CTabFolder2Listener)
@Deprecated public void addCTabFolderListener(CTabFolderListener listener)
listener
- the listener which should be notifiedIllegalArgumentException
- SWTException
- CTabFolderListener
,
removeCTabFolderListener(CTabFolderListener)
public void addSelectionListener(SelectionListener listener)
SelectionListener
interface.
widgetSelected
is called when the user changes the selected tab.
widgetDefaultSelected
is not called.
listener
- the listener which should be notified when the user changes the receiver's selectionIllegalArgumentException
- SWTException
- SelectionListener
,
removeSelectionListener(org.eclipse.swt.events.SelectionListener)
,
SelectionEvent
public Rectangle computeTrim(int x, int y, int width, int height)
Scrollable
In other words, it returns a rectangle such that, if the receiver's bounds were set to that rectangle, the area of the receiver which is capable of displaying data (that is, not covered by the "trimmings") would be the rectangle described by the arguments (relative to the receiver's parent).
computeTrim
in class Scrollable
x
- the desired x coordinate of the client areay
- the desired y coordinate of the client areawidth
- the desired width of the client areaheight
- the desired height of the client areaScrollable.getClientArea()
public boolean getBorderVisible()
true
if the receiver's border is visible.SWTException
- public Rectangle getClientArea()
Scrollable
getClientArea
in class Scrollable
Scrollable.computeTrim(int, int, int, int)
public CTabItem getItem(int index)
index
- the index of the tab itemIllegalArgumentException
- SWTException
- public CTabItem getItem(Point pt)
pt
- the point in coordinates relative to the CTabFolderSWTException
- public int getItemCount()
SWTException
- public CTabItem[] getItems()
SWTException
- public boolean getMinimized()
true
if the receiver is minimized.SWTException
- public boolean getMinimizeVisible()
true
if the minimize button
is visible.SWTException
- public int getMinimumCharacters()
public boolean getMaximized()
true
if the receiver is maximized.
SWTException
- public boolean getMaximizeVisible()
true
if the maximize button
is visible.SWTException
- public boolean getMRUVisible()
true
if the receiver displays most
recently used tabs and false
otherwise.
When there is not enough horizontal space to show all the tabs, by default, tabs are shown sequentially from left to right in order of their index. When the MRU visibility is turned on, the tabs that are visible will be the tabs most recently selected. Tabs will still maintain their left to right order based on index but only the most recently selected tabs are visible.
For example, consider a CTabFolder that contains "Tab 1", "Tab 2", "Tab 3" and "Tab 4" (in order by index). The user selects "Tab 1" and then "Tab 3". If the CTabFolder is now compressed so that only two tabs are visible, by default, "Tab 2" and "Tab 3" will be shown ("Tab 3" since it is currently selected and "Tab 2" because it is the previous item in index order). If MRU visibility is enabled, the two visible tabs will be "Tab 1" and "Tab 3" (in that order from left to right).
SWTException
- public CTabFolderRenderer getRenderer()
SWTException
- setRenderer(CTabFolderRenderer)
,
CTabFolderRenderer
public CTabItem getSelection()
SWTException
- public Color getSelectionBackground()
SWTException
- public Color getSelectionForeground()
SWTException
- public int getSelectionIndex()
SWTException
- public boolean getSimple()
true
if the CTabFolder is rendered
with a simple, traditional shape.true
if the CTabFolder is rendered with a simple shapepublic boolean getSingle()
true
if the CTabFolder only displays the selected tab
and false
if the CTabFolder displays multiple tabs.true
if the CTabFolder only displays the selected tab and false
if the CTabFolder displays multiple tabspublic int getStyle()
Widget
Note that the value which is returned by this method may
not match the value which was provided to the constructor
when the receiver was created. This can occur when the underlying
operating system does not support a particular combination of
requested styles. For example, if the platform widget used to
implement a particular SWT widget always has scroll bars, the
result of calling this method would always have the
SWT.H_SCROLL
and SWT.V_SCROLL
bits set.
public int getTabHeight()
SWTException
- public int getTabPosition()
SWTException
- public Control getTopRight()
SWTException
- public int getTopRightAlignment()
SWT.RIGHT
or SWT.FILL
SWTException
- public boolean getUnselectedCloseVisible()
true
if the close button appears
when the user hovers over an unselected tabs.true
if the close button appears on unselected tabspublic boolean getUnselectedImageVisible()
true
if an image appears
in unselected tabs.true
if an image appears in unselected tabspublic int indexOf(CTabItem item)
item
- the tab item for which the index is requiredIllegalArgumentException
- SWTException
- public void removeCTabFolder2Listener(CTabFolder2Listener listener)
listener
- the listener which should no longer be notifiedIllegalArgumentException
- SWTException
- addCTabFolder2Listener(CTabFolder2Listener)
@Deprecated public void removeCTabFolderListener(CTabFolderListener listener)
listener
- the listener which should no longer be notifiedIllegalArgumentException
- SWTException
- public void removeSelectionListener(SelectionListener listener)
listener
- the listener which should no longer be notifiedIllegalArgumentException
- SWTException
- SelectionListener
,
addSelectionListener(org.eclipse.swt.events.SelectionListener)
public void reskin(int flags)
Widget
The skin event is sent to the receiver's display when appropriate (usually before the next event
is handled). Widgets are automatically marked for skinning upon creation as well as when its skin
id or class changes. The skin id and/or class can be changed by calling Display.setData(String, Object)
with the keys SWT.SKIN_ID and/or SWT.SKIN_CLASS. Once the skin event is sent to a widget, it
will not be sent again unless reskin(int)
is called on the widget or on an ancestor
while specifying the SWT.ALL
flag.
The parameter flags
may be either:
public void setBackground(Color color)
Control
Note: This operation is a hint and may be overridden by the platform. For example, on Windows the background of a Button cannot be changed.
setBackground
in class Control
color
- the new color (or null)public void setBackground(Color[] colors, int[] percents)
cfolder.setBackground(new Color[]{display.getSystemColor(SWT.COLOR_DARK_BLUE), display.getSystemColor(SWT.COLOR_BLUE), display.getSystemColor(SWT.COLOR_WHITE), display.getSystemColor(SWT.COLOR_WHITE)}, new int[] {25, 50, 100});
colors
- an array of Color that specifies the colors to appear in the gradient
in order of appearance left to right. The value null
clears the
background gradient. The value null
can be used inside the array of
Color to specify the background color.percents
- an array of integers between 0 and 100 specifying the percent of the width
of the widget at which the color should change. The size of the percents
array must be one less than the size of the colors
array.SWTException
- public void setBackground(Color[] colors, int[] percents, boolean vertical)
cfolder.setBackground(new Color[]{display.getSystemColor(SWT.COLOR_DARK_BLUE), display.getSystemColor(SWT.COLOR_BLUE), display.getSystemColor(SWT.COLOR_WHITE), display.getSystemColor(SWT.COLOR_WHITE)}, new int[] {25, 50, 100}, true);
colors
- an array of Color that specifies the colors to appear in the gradient
in order of appearance left to right. The value null
clears the
background gradient. The value null
can be used inside the array of
Color to specify the background color.percents
- an array of integers between 0 and 100 specifying the percent of the width
of the widget at which the color should change. The size of the percents
array must be one less than the size of the colors
array.vertical
- indicate the direction of the gradient. True
is vertical and false
is horizontal.SWTException
- public void setBackgroundImage(Image image)
Control
Note: This operation is a hint and may be overridden by the platform. For example, on Windows the background of a Button cannot be changed.
setBackgroundImage
in class Control
image
- the new image (or null)public void setBorderVisible(boolean show)
show
- true if the border should be displayedSWTException
- public boolean setFocus()
Control
setFocus
in class Composite
true
if the control got focus, and false
if it was unable to.Control.forceFocus()
public void setFont(Font font)
Control
public void setForeground(Color color)
Control
Note: This operation is a hint and may be overridden by the platform.
setForeground
in class Control
color
- the new color (or null)public void setInsertMark(CTabItem item, boolean after)
item
- the item with which the mark is associated or nullafter
- true if the mark should be displayed after the specified itemSWTException
- public void setInsertMark(int index, boolean after)
index
- the index of the item with which the mark is associated or nullafter
- true if the mark should be displayed after the specified itemIllegalArgumentException
- SWTException
- public void setMaximizeVisible(boolean visible)
true
,
and marks it invisible otherwise.visible
- the new visibility stateSWTException
- public void setLayout(Layout layout)
Note: No Layout can be set on this Control because it already manages the size and position of its children.
setLayout
in class Composite
layout
- the receiver's new layout or nullSWTException
- public void setMaximized(boolean maximize)
maximize
- the new maximized stateSWTException
- public void setMinimizeVisible(boolean visible)
true
,
and marks it invisible otherwise.visible
- the new visibility stateSWTException
- public void setMinimized(boolean minimize)
minimize
- the new minimized stateSWTException
- public void setMinimumCharacters(int count)
count
- the minimum number of characters that will be displayed in a fully compressed tabSWTException
- public void setMRUVisible(boolean show)
For example, consider a CTabFolder that contains "Tab 1", "Tab 2", "Tab 3" and "Tab 4" (in order by index). The user selects "Tab 1" and then "Tab 3". If the CTabFolder is now compressed so that only two tabs are visible, by default, "Tab 2" and "Tab 3" will be shown ("Tab 3" since it is currently selected and "Tab 2" because it is the previous item in index order). If MRU visibility is enabled, the two visible tabs will be "Tab 1" and "Tab 3" (in that order from left to right).
show
- the new visibility stateSWTException
- public void setRenderer(CTabFolderRenderer renderer)
renderer
- a new rendererSWTException
- CTabFolderRenderer
public void setSelection(CTabItem item)
item
- the tab item to be selectedIllegalArgumentException
- SWTException
- public void setSelection(int index)
index
- the index of the tab item to be selectedSWTException
- public void setSelectionBackground(Color color)
color
- the new color (or null)IllegalArgumentException
- SWTException
- public void setSelectionBackground(Color[] colors, int[] percents)
cfolder.setBackground(new Color[]{display.getSystemColor(SWT.COLOR_DARK_BLUE), display.getSystemColor(SWT.COLOR_BLUE), display.getSystemColor(SWT.COLOR_WHITE), display.getSystemColor(SWT.COLOR_WHITE)}, new int[] {25, 50, 100});
colors
- an array of Color that specifies the colors to appear in the gradient
in order of appearance left to right. The value null
clears the
background gradient. The value null
can be used inside the array of
Color to specify the background color.percents
- an array of integers between 0 and 100 specifying the percent of the width
of the widget at which the color should change. The size of the percents array must be one
less than the size of the colors array.SWTException
- public void setSelectionBackground(Color[] colors, int[] percents, boolean vertical)
cfolder.setBackground(new Color[]{display.getSystemColor(SWT.COLOR_DARK_BLUE), display.getSystemColor(SWT.COLOR_BLUE), display.getSystemColor(SWT.COLOR_WHITE), display.getSystemColor(SWT.COLOR_WHITE)}, new int[] {25, 50, 100}, true);
colors
- an array of Color that specifies the colors to appear in the gradient
in order of appearance left to right. The value null
clears the
background gradient. The value null
can be used inside the array of
Color to specify the background color.percents
- an array of integers between 0 and 100 specifying the percent of the width
of the widget at which the color should change. The size of the percents array must be one
less than the size of the colors array.vertical
- indicate the direction of the gradient. True is vertical and false is horizontal.SWTException
- public void setSelectionBackground(Image image)
image
- the image to be drawn in the backgroundSWTException
- public void setSelectionForeground(Color color)
color
- the color of the text displayed in the selected tabSWTException
- public void setSimple(boolean simple)
simple
- true
if the CTabFolder should render itself in a simple, traditional styleSWTException
- public void setSingle(boolean single)
single
- true
if only the selected tab should be displayed otherwise, multiple tabs will be shown.SWTException
- public void setTabHeight(int height)
height
- the pixel value of the height or -1SWTException
- public void setTabPosition(int position)
position
- SWT.TOP
for tabs along the top or SWT.BOTTOM
for tabs along the bottomSWTException
- public void setTopRight(Control control)
control
- the control to be displayed in the top right corner or nullSWTException
- public void setTopRight(Control control, int alignment)
The alignment parameter sets the layout of the control in the tab area.
SWT.RIGHT
will cause the control to be positioned on the far
right of the folder and it will have its default size. SWT.FILL
will size the control to fill all the available space to the right of the
last tab. If there is no available space, the control will not be visible.
SWT.RIGHT | SWT.WRAP
will allow the control to wrap below the
tabs if there is not enough available space to the right of the last tab.
control
- the control to be displayed in the top right corner or nullalignment
- SWT.RIGHT
or SWT.FILL
or SWT.RIGHT | SWT.WRAP
SWTException
- public void setUnselectedCloseVisible(boolean visible)
visible
- true
makes the close button appearSWTException
- public void setUnselectedImageVisible(boolean visible)
visible
- true
makes the image appearSWTException
- public void showItem(CTabItem item)
item
- the item to be shownIllegalArgumentException
- SWTException
- showSelection()
public void showSelection()
SWTException
- showItem(CTabItem)
Copyright (c) 2000, 2014 Eclipse Contributors and others. All rights reserved.Guidelines for using Eclipse APIs.