Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.eclipse.swt.custom
Class CLabel

    java.lang.Object
      org.eclipse.swt.widgets.Widget
          org.eclipse.swt.widgets.Control
              org.eclipse.swt.widgets.Scrollable
                  org.eclipse.swt.widgets.Composite
                      org.eclipse.swt.widgets.Canvas
                          org.eclipse.swt.custom.CLabel

All Implemented Interfaces:
  Drawable

public class CLabel
extends Canvas

A Label which supports aligned text and/or an image and different border styles.

If there is not enough space a CLabel uses the following strategy to fit the information into the available space:

     		ignores the indent in left align mode
     		ignores the image and the gap
     		shortens the text by replacing the center portion of the label with an ellipsis
     		shortens the text by removing the center portion of the label

Styles:
  LEFT, RIGHT, CENTER, SHADOW_IN, SHADOW_OUT, SHADOW_NONE
Events:

IMPORTANT: This class is not intended to be subclassed.

Field Summary

Fields inherited from class org.eclipse.swt.widgets.Control
`handle`

Constructor Summary
`CLabel(Composite parent, int style)` Constructs a new instance of this class given its parent and a style value describing its behavior and appearance.

Method Summary
`Point` | `computeSize(int wHint, int hHint, boolean changed)` Returns the preferred size of the receiver.
`int` | `getAlignment()` Returns the alignment.
`Image` | `getImage()` Return the CLabel's image or `null`.
`String` | `getText()` Return the Label's text.
`String` | `getToolTipText()` Returns the receiver's tool tip text, or null if it has not been set.
`void` | `setAlignment(int align)` Set the alignment of the CLabel.
`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 colours to be drawn in the background of the CLabel.
`void` | `setBackground(Color[] colors, int[] percents, boolean vertical)` Specify a gradient of colours to be drawn in the background of the CLabel.
`void` | `setBackground(Image image)` Set the image to be drawn in the background of the label.
`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` | `setImage(Image image)` Set the label's Image.
`void` | `setText(String text)` Set the label's text.
`void` | `setToolTipText(String string)` Sets the receiver's tool tip text to the argument, which may be null indicating that no tool tip text should be shown.
`protected String` | `shortenText(GC gc, String t, int width)` Shorten the given text `t` so that its length doesn't exceed the given width.

Methods inherited from class org.eclipse.swt.widgets.Canvas
`getCaret, scroll, setCaret`

Methods inherited from class org.eclipse.swt.widgets.Composite
`checkSubclass, getChildren, getLayout, getTabList, layout, layout, setFocus, setLayout, setTabList`

Methods inherited from class org.eclipse.swt.widgets.Scrollable
`computeTrim, getClientArea, getHorizontalBar, getVerticalBar`

Methods inherited from class org.eclipse.swt.widgets.Control
`addControlListener, addFocusListener, addHelpListener, addKeyListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addPaintListener, addTraverseListener, computeSize, forceFocus, getAccessible, getBackground, getBorderWidth, getBounds, getEnabled, getFont, getForeground, getLayoutData, getLocation, getMenu, getMonitor, getParent, getShell, getSize, getVisible, internal_dispose_GC, internal_new_GC, isEnabled, isFocusControl, isReparentable, isVisible, moveAbove, moveBelow, pack, pack, redraw, redraw, removeControlListener, removeFocusListener, removeHelpListener, removeKeyListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removePaintListener, removeTraverseListener, setBounds, setBounds, setCapture, setCursor, setEnabled, setForeground, setLayoutData, setLocation, setLocation, setMenu, setParent, setRedraw, setSize, setSize, setVisible, toControl, toControl, toDisplay, toDisplay, traverse, update`

Methods inherited from class org.eclipse.swt.widgets.Widget
`addDisposeListener, addListener, checkWidget, dispose, getData, getData, getDisplay, getStyle, isDisposed, isListening, notifyListeners, removeDisposeListener, removeListener, removeListener, setData, setData, toString`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### CLabel

    public CLabel(Composite parent,
                  int style)

  Constructs a new instance of this class given its parent and a style value describing its behavior and appearance.

  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.

Parameters:
  `parent` - a widget which will be the parent of the new instance (cannot be null)
  `style` - the style of widget to construct
Throws:
  `IllegalArgumentException` -
  - ERROR_NULL_ARGUMENT - if the parent is null
  `SWTException` -
  - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the parent
See Also:
  `SWT.LEFT`, `SWT.RIGHT`, `SWT.CENTER`, `SWT.SHADOW_IN`, `SWT.SHADOW_OUT`, `SWT.SHADOW_NONE`, `Widget.getStyle()`

Method Detail

### computeSize

    public Point computeSize(int wHint,
                             int hHint,
                             boolean changed)

  Description copied from class: `Control`
  Returns the preferred size of the receiver.

  The preferred size of a control is the size that it would best be displayed at. The width hint and height hint arguments allow the caller to ask a control questions such as "Given a particular width, how high does the control need to be to show all of the contents?" To indicate that the caller does not wish to constrain a particular dimension, the constant `SWT.DEFAULT` is passed for the hint.

  If the changed flag is `true`, it indicates that the receiver's contents have changed, therefore any caches that a layout manager containing the control may have been keeping need to be flushed. When the control is resized, the changed flag will be `false`, so layout manager caches can be retained.

  Overrides:
    `computeSize` in class `Composite`

### getAlignment

    public int getAlignment()

  Returns the alignment. The alignment style (LEFT, CENTER or RIGHT) is returned.

  Returns:
    SWT.LEFT, SWT.RIGHT or SWT.CENTER

### getImage

    public Image getImage()

  Return the CLabel's image or `null`.

  Returns:
    the image of the label or null

### setToolTipText

    public void setToolTipText(String string)

  Description copied from class: `Control`
  Sets the receiver's tool tip text to the argument, which may be null indicating that no tool tip text should be shown.

  Overrides:
    `setToolTipText` in class `Control`
  Parameters:
    `string` - the new tool tip text (or null)

### getText

    public String getText()

  Return the Label's text.

  Returns:
    the text of the label or null

### getToolTipText

    public String getToolTipText()

  Description copied from class: `Control`
  Returns the receiver's tool tip text, or null if it has not been set.

  Overrides:
    `getToolTipText` in class `Control`
  Returns:
    the receiver's tool tip text

### setAlignment

    public void setAlignment(int align)

  Set the alignment of the CLabel. Use the values LEFT, CENTER and RIGHT to align image and text within the available space.

  Parameters:
    `align` - the alignment style of LEFT, RIGHT or CENTER
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
    - ERROR_INVALID_ARGUMENT - if the value of align is not one of SWT.LEFT, SWT.RIGHT or SWT.CENTER

### setBackground

    public void setBackground(Color color)

  Description copied from class: `Control`
  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.

  Overrides:
    `setBackground` in class `Control`
  Parameters:
    `color` - the new color (or null)

### setBackground

    public void setBackground(Color[] colors,
                              int[] percents)

  Specify a gradient of colours to be drawn in the background of the CLabel.

  For example, to draw a gradient that varies from dark blue to blue and then to white and stays white for the right half of the label, use the following call to setBackground:

      	clabel.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});

  Parameters:
    `colors` - an array of Color that specifies the colors to appear in the gradient in order of appearance from 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.
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
    - ERROR_INVALID_ARGUMENT - if the values of colors and percents are not consistant

### setBackground

    public void setBackground(Color[] colors,
                              int[] percents,
                              boolean vertical)

  Specify a gradient of colours to be drawn in the background of the CLabel.

  For example, to draw a gradient that varies from dark blue to white in the vertical, direction use the following call to setBackground:

      	clabel.setBackground(new Color[]{display.getSystemColor(SWT.COLOR_DARK_BLUE),
      		                           display.getSystemColor(SWT.COLOR_WHITE)},
      		                 new int[] {100}, true);

  Parameters:
    `colors` - an array of Color that specifies the colors to appear in the gradient in order of appearance from left/top to right/bottom; 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/height 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.
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
    - ERROR_INVALID_ARGUMENT - if the values of colors and percents are not consistant
  Since:
    3.0

### setBackground

    public void setBackground(Image image)

  Set the image to be drawn in the background of the label.

  Parameters:
    `image` - the image to be drawn in the background
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### setFont

    public void setFont(Font font)

  Description copied from class: `Control`
  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.

  Overrides:
    `setFont` in class `Canvas`

### setImage

    public void setImage(Image image)

  Set the label's Image. The value `null` clears it.

  Parameters:
    `image` - the image to be displayed in the label or null
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### setText

    public void setText(String text)

  Set the label's text. The value `null` clears it.

  Parameters:
    `text` - the text to be displayed in the label or null
  Throws:
    `SWTException` -
    - ERROR_WIDGET_DISPOSED - if the receiver has been disposed
    - ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver

### shortenText

    protected String shortenText(GC gc,
                                 String t,
                                 int width)

  Shorten the given text `t` so that its length doesn't exceed the given width. The default implementation replaces characters in the center of the original string with an ellipsis ("..."). Override if you need a different strategy.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Eclipse Platform Release 3.0
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2004. All rights reserved.