Class Control

  • All Implemented Interfaces:
    Adaptable, Drawable
    Direct Known Subclasses:
    Button, Label, Link, ProgressBar, Sash, Scale, Scrollable, Slider

    public abstract class Control
    extends Widget
    implements Drawable
    Control is the abstract superclass of all windowed user interface classes.

    Styles:
    BORDER
    LEFT_TO_RIGHT, RIGHT_TO_LEFT
    Events:
    FocusIn, FocusOut, Help, KeyDown, KeyUp, MouseDoubleClick, MouseDown, MouseUp, Move, Resize, Traverse, MenuDetect

    IMPORTANT: This class is intended to be subclassed only within the SWT implementation.

    Since:
    1.0
    • Constructor Summary

      Constructors 
      Constructor Description
      Control​(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

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addControlListener​(ControlListener listener)
      Adds the listener to the collection of listeners who will be notified when the control is moved or resized, by sending it one of the messages defined in the ControlListener interface.
      void addDragDetectListener​(DragDetectListener listener)
      Adds the listener to the collection of listeners who will be notified when a drag gesture occurs, by sending it one of the messages defined in the DragDetectListener interface.
      void addFocusListener​(FocusListener listener)
      Adds the listener to the collection of listeners who will be notified when the control gains or loses focus, by sending it one of the messages defined in the FocusListener interface.
      void addGestureListener​(GestureListener listener)
      Adds the listener to the collection of listeners who will be notified when gesture events are generated for the control, by sending it one of the messages defined in the GestureListener interface.
      void addHelpListener​(HelpListener listener)
      Adds the listener to the collection of listeners who will be notified when help events are generated for the control, by sending it one of the messages defined in the HelpListener interface.
      void addKeyListener​(KeyListener listener)
      Adds the listener to the collection of listeners who will be notified when keys are pressed and released on the system keyboard, by sending it one of the messages defined in the KeyListener interface.
      void addMenuDetectListener​(MenuDetectListener listener)
      Adds the listener to the collection of listeners who will be notified when the platform-specific context menu trigger has occurred, by sending it one of the messages defined in the MenuDetectListener interface.
      void addMouseListener​(MouseListener listener)
      Adds the listener to the collection of listeners who will be notified when mouse buttons are pressed and released, by sending it one of the messages defined in the MouseListener interface.
      void addTouchListener​(TouchListener listener)
      Adds the listener to the collection of listeners who will be notified when touch events occur, by sending it one of the messages defined in the TouchListener interface.
      void addTraverseListener​(TraverseListener listener)
      Adds the listener to the collection of listeners who will be notified when traversal events occur, by sending it one of the messages defined in the TraverseListener interface.
      Point computeSize​(int wHint, int hHint)
      Returns the preferred size of the receiver.
      Point computeSize​(int wHint, int hHint, boolean changed)
      Returns the preferred size of the receiver.
      boolean forceFocus()
      Forces the receiver to have the keyboard focus, causing all keyboard events to be delivered to it.
      Accessible getAccessible()
      Returns the accessible object for the receiver.
      <T> T getAdapter​(java.lang.Class<T> adapter)
      Implementation of the Adaptable interface.
      Color getBackground()
      Returns the receiver's background color.
      Image getBackgroundImage()
      Returns the receiver's background image.
      int getBorderWidth()
      Returns the receiver's border width.
      Rectangle getBounds()
      Returns a rectangle describing the receiver's size and location relative to its parent (or its display if its parent is null), unless the receiver is a shell.
      Cursor getCursor()
      Returns the receiver's cursor, or null if it has not been set.
      boolean getEnabled()
      Returns true if the receiver is enabled, and false otherwise.
      Font getFont()
      Returns the font that the receiver will use to paint textual information.
      Color getForeground()
      Returns the foreground color that the receiver will use to draw.
      java.lang.Object getLayoutData()
      Returns layout data which is associated with the receiver.
      Point getLocation()
      Returns a point describing the receiver's location relative to its parent (or its display if its parent is null), unless the receiver is a shell.
      Menu getMenu()
      Returns the receiver's pop up menu if it has one, or null if it does not.
      Monitor getMonitor()
      Returns the receiver's monitor.
      int getOrientation()
      Returns the orientation of the receiver, which will be one of the constants SWT.LEFT_TO_RIGHT or SWT.RIGHT_TO_LEFT.
      Composite getParent()
      Returns the receiver's parent, which must be a Composite or null when the receiver is a shell that was created with null or a display for a parent.
      Shell getShell()
      Returns the receiver's shell.
      Point getSize()
      Returns a point describing the receiver's size.
      java.lang.String getToolTipText()
      Returns the receiver's tool tip text, or null if it has not been set.
      boolean getTouchEnabled()
      Returns true if this control is receiving OS-level touch events, otherwise false
      boolean getVisible()
      Returns true if the receiver is visible, and false otherwise.
      boolean isEnabled()
      Returns true if the receiver is enabled and all ancestors up to and including the receiver's nearest ancestor shell are enabled.
      boolean isFocusControl()
      Returns true if the receiver has the user-interface focus, and false otherwise.
      boolean isReparentable()
      Returns true if the underlying operating system supports this reparenting, otherwise false
      boolean isVisible()
      Returns true if the receiver is visible and all ancestors up to and including the receiver's nearest ancestor shell are visible.
      void moveAbove​(Control control)
      Moves the receiver above the specified control in the drawing order.
      void moveBelow​(Control control)
      Moves the receiver below the specified control in the drawing order.
      void pack()
      Causes the receiver to be resized to its preferred size.
      void pack​(boolean changed)
      Causes the receiver to be resized to its preferred size.
      void redraw()
      Causes the entire bounds of the receiver to be marked as needing to be redrawn.
      void redraw​(int x, int y, int width, int height, boolean all)
      Causes the rectangular area of the receiver specified by the arguments to be marked as needing to be redrawn.
      void removeControlListener​(ControlListener listener)
      Removes the listener from the collection of listeners who will be notified when the control is moved or resized.
      void removeDragDetectListener​(DragDetectListener listener)
      Removes the listener from the collection of listeners who will be notified when a drag gesture occurs.
      void removeFocusListener​(FocusListener listener)
      Removes the listener from the collection of listeners who will be notified when the control gains or loses focus.
      void removeGestureListener​(GestureListener listener)
      Removes the listener from the collection of listeners who will be notified when gesture events are generated for the control.
      void removeHelpListener​(HelpListener listener)
      Removes the listener from the collection of listeners who will be notified when the help events are generated for the control.
      void removeKeyListener​(KeyListener listener)
      Removes the listener from the collection of listeners who will be notified when keys are pressed and released on the system keyboard.
      void removeMenuDetectListener​(MenuDetectListener listener)
      Removes the listener from the collection of listeners who will be notified when the platform-specific context menu trigger has occurred.
      void removeMouseListener​(MouseListener listener)
      Removes the listener from the collection of listeners who will be notified when mouse buttons are pressed and released.
      void removeTouchListener​(TouchListener listener)
      Removes the listener from the collection of listeners who will be notified when touch events occur.
      void removeTraverseListener​(TraverseListener listener)
      Removes the listener from the collection of listeners who will be notified when traversal events occur.
      void requestLayout()
      Requests that this control and all of its ancestors be repositioned their layouts at the earliest opportunity.
      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 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 setBounds​(int x, int y, int width, int height)
      Sets the receiver's size and location to the rectangular area specified by the arguments.
      void setBounds​(Rectangle bounds)
      Sets the receiver's size and location to the rectangular area specified by the argument.
      void setCursor​(Cursor cursor)
      Sets the receiver's cursor to the cursor specified by the argument, or to the default cursor for that kind of control if the argument is null.
      void setData​(java.lang.String key, java.lang.Object value)
      Sets the application defined property of the receiver with the specified name to the given value.
      void setEnabled​(boolean enabled)
      Enables the receiver if the argument is true, and disables it otherwise.
      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 setLayoutData​(java.lang.Object layoutData)
      Sets the layout data associated with the receiver to the argument.
      void setLocation​(int x, int y)
      Sets the receiver's location to the point specified by the arguments which are relative to the receiver's parent (or its display if its parent is null), unless the receiver is a shell.
      void setLocation​(Point location)
      Sets the receiver's location to the point specified by the arguments which are relative to the receiver's parent (or its display if its parent is null), unless the receiver is a shell.
      void setMenu​(Menu menu)
      Sets the receiver's pop up menu to the argument.
      void setOrientation​(int orientation)
      Sets the orientation of the receiver, which must be one of the constants SWT.LEFT_TO_RIGHT or SWT.RIGHT_TO_LEFT.
      boolean setParent​(Composite parent)
      Changes the parent of the widget to be the one provided if the underlying operating system supports this feature.
      void setRedraw​(boolean redraw)
      If the argument is false, causes subsequent drawing operations in the receiver to be ignored.
      void setSize​(int width, int height)
      Sets the receiver's size to the point specified by the arguments.
      void setSize​(Point size)
      Sets the receiver's size to the point specified by the argument.
      void setToolTipText​(java.lang.String toolTipText)
      Sets the receiver's tool tip text to the argument, which may be null indicating that no tool tip text should be shown.
      void setTouchEnabled​(boolean enabled)
      Sets whether the receiver should accept touch events.
      void setVisible​(boolean visible)
      Marks the receiver as visible if the argument is true, and marks it invisible otherwise.
      Point toControl​(int x, int y)
      Returns a point which is the result of converting the argument, which is specified in display relative coordinates, to coordinates relative to the receiver.
      Point toControl​(Point point)
      Returns a point which is the result of converting the argument, which is specified in display relative coordinates, to coordinates relative to the receiver.
      Point toDisplay​(int x, int y)
      Returns a point which is the result of converting the argument, which is specified in coordinates relative to the receiver, to display relative coordinates.
      Point toDisplay​(Point point)
      Returns a point which is the result of converting the argument, which is specified in coordinates relative to the receiver, to display relative coordinates.
      void update()
      Forces all outstanding paint requests for the widget to be processed before this method returns.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • Control

        public Control​(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 composite control which will be the parent of the new instance (cannot be null)
        style - the style of control to construct
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the parent is null
        SWTException -
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the parent
        • ERROR_INVALID_SUBCLASS - if this class is not an allowed subclass
        See Also:
        SWT.BORDER, Widget.checkSubclass(), Widget.getStyle()
    • Method Detail

      • getParent

        public Composite getParent()
        Returns the receiver's parent, which must be a Composite or null when the receiver is a shell that was created with null or a display for a parent.
        Returns:
        the receiver's parent
        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
      • getShell

        public Shell getShell()
        Returns the receiver's shell. For all controls other than shells, this simply returns the control's nearest ancestor shell. Shells return themselves, even if they are children of other shells.
        Returns:
        the receiver's shell
        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
        See Also:
        getParent()
      • getMonitor

        public Monitor getMonitor()
        Returns the receiver's monitor.
        Returns:
        the receiver's monitor
        Since:
        1.2
      • setVisible

        public void setVisible​(boolean visible)
        Marks the receiver as visible if the argument is true, and marks it invisible otherwise.

        If one of the receiver's ancestors is not visible or some other condition makes the receiver not visible, marking it visible may not actually cause it to be displayed.

        Parameters:
        visible - the new visibility state
        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
      • isVisible

        public boolean isVisible()
        Returns true if the receiver is visible and all ancestors up to and including the receiver's nearest ancestor shell are visible. Otherwise, false is returned.
        Returns:
        the receiver's visibility state
        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
        See Also:
        getVisible()
      • getVisible

        public boolean getVisible()
        Returns true if the receiver is visible, and false otherwise.

        If one of the receiver's ancestors is not visible or some other condition makes the receiver not visible, this method may still indicate that it is considered visible even though it may not actually be showing.

        Returns:
        the receiver's visibility state
        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
      • setEnabled

        public void setEnabled​(boolean enabled)
        Enables the receiver if the argument is true, and disables it otherwise. A disabled control is typically not selectable from the user interface and draws with an inactive or "grayed" look.
        Parameters:
        enabled - the new enabled state
        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
      • getEnabled

        public boolean getEnabled()
        Returns true if the receiver is enabled, and false otherwise. A disabled control is typically not selectable from the user interface and draws with an inactive or "grayed" look.
        Returns:
        the receiver's enabled state
        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
        See Also:
        isEnabled()
      • isEnabled

        public boolean isEnabled()
        Returns true if the receiver is enabled and all ancestors up to and including the receiver's nearest ancestor shell are enabled. Otherwise, false is returned. A disabled control is typically not selectable from the user interface and draws with an inactive or "grayed" look.
        Returns:
        the receiver's enabled state
        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
        See Also:
        getEnabled()
      • setBackground

        public 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.
        Parameters:
        color - the new color (or null)
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_INVALID_ARGUMENT - if the argument has been disposed
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
      • getBackground

        public Color getBackground()
        Returns the receiver's background color.
        Returns:
        the background color
        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
      • setBackgroundImage

        public 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. The background image is tiled to fill the available space.

        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.

        Parameters:
        image - the new image (or null)
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_INVALID_ARGUMENT - if the argument has been disposed
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.1
      • getBackgroundImage

        public Image getBackgroundImage()
        Returns the receiver's background image.
        Returns:
        the background image
        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
        Since:
        1.1
      • setForeground

        public 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.
        Parameters:
        color - the new color (or null)
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_INVALID_ARGUMENT - if the argument has been disposed
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
      • getForeground

        public Color getForeground()
        Returns the foreground color that the receiver will use to draw.
        Returns:
        the receiver's foreground color
        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)
        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.
        Parameters:
        font - the new font (or null)
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_INVALID_ARGUMENT - if the argument has been disposed
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
      • getFont

        public Font getFont()
        Returns the font that the receiver will use to paint textual information.
        Returns:
        the receiver's font
        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
      • setCursor

        public void setCursor​(Cursor cursor)
        Sets the receiver's cursor to the cursor specified by the argument, or to the default cursor for that kind of control if the argument is null.

        When the mouse pointer passes over a control its appearance is changed to match the control's cursor.

        Parameters:
        cursor - the new cursor (or null)
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_INVALID_ARGUMENT - if the argument has been disposed
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.2
      • getCursor

        public Cursor getCursor()
        Returns the receiver's cursor, or null if it has not been set.

        When the mouse pointer passes over a control its appearance is changed to match the control's cursor.

        Returns:
        the receiver's cursor 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
        Since:
        1.2
      • setFocus

        public boolean setFocus()
        Causes the receiver to have the keyboard focus, such that all keyboard events will be delivered to it. Focus reassignment will respect applicable platform constraints.
        Returns:
        true if the control got focus, and false if it was unable to.
        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
        See Also:
        forceFocus()
      • forceFocus

        public boolean forceFocus()
        Forces the receiver to have the keyboard focus, causing all keyboard events to be delivered to it.
        Returns:
        true if the control got focus, and false if it was unable to.
        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
        See Also:
        setFocus()
      • isFocusControl

        public boolean isFocusControl()
        Returns true if the receiver has the user-interface focus, and false otherwise.
        Returns:
        the receiver's focus state
        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
      • getBounds

        public Rectangle getBounds()
        Returns a rectangle describing the receiver's size and location relative to its parent (or its display if its parent is null), unless the receiver is a shell. In this case, the location is relative to the display.
        Returns:
        the receiver's bounding rectangle
        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
      • setBounds

        public void setBounds​(Rectangle bounds)
        Sets the receiver's size and location to the rectangular area specified by the argument. The x and y fields of the rectangle are relative to the receiver's parent (or its display if its parent is null).

        Note: Attempting to set the width or height of the receiver to a negative number will cause that value to be set to zero instead.

        Parameters:
        bounds - the new bounds for the receiver
        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
      • setBounds

        public void setBounds​(int x,
                              int y,
                              int width,
                              int height)
        Sets the receiver's size and location to the rectangular area specified by the arguments. The x and y arguments are relative to the receiver's parent (or its display if its parent is null), unless the receiver is a shell. In this case, the x and y arguments are relative to the display.

        Note: Attempting to set the width or height of the receiver to a negative number will cause that value to be set to zero instead.

        Parameters:
        x - the new x coordinate for the receiver
        y - the new y coordinate for the receiver
        width - the new width for the receiver
        height - the new height for the receiver
        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
      • setLocation

        public void setLocation​(Point location)
        Sets the receiver's location to the point specified by the arguments which are relative to the receiver's parent (or its display if its parent is null), unless the receiver is a shell. In this case, the point is relative to the display.
        Parameters:
        location - the new location for the receiver
        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
      • setLocation

        public void setLocation​(int x,
                                int y)
        Sets the receiver's location to the point specified by the arguments which are relative to the receiver's parent (or its display if its parent is null), unless the receiver is a shell. In this case, the point is relative to the display.
        Parameters:
        x - the new x coordinate for the receiver
        y - the new y coordinate for the receiver
        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
      • getLocation

        public Point getLocation()
        Returns a point describing the receiver's location relative to its parent (or its display if its parent is null), unless the receiver is a shell. In this case, the point is relative to the display.
        Returns:
        the receiver's location
        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
      • setSize

        public void setSize​(Point size)
        Sets the receiver's size to the point specified by the argument.

        Note: Attempting to set the width or height of the receiver to a negative number will cause them to be set to zero instead.

        Parameters:
        size - the new size for the receiver
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the point is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
      • setSize

        public void setSize​(int width,
                            int height)
        Sets the receiver's size to the point specified by the arguments.

        Note: Attempting to set the width or height of the receiver to a negative number will cause that value to be set to zero instead.

        Parameters:
        width - the new width for the receiver
        height - the new height for the receiver
        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
      • getSize

        public Point getSize()
        Returns a point describing the receiver's size. The x coordinate of the result is the width of the receiver. The y coordinate of the result is the height of the receiver.
        Returns:
        the receiver's size
        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
      • computeSize

        public Point computeSize​(int wHint,
                                 int hHint)
        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.

        Parameters:
        wHint - the width hint (can be SWT.DEFAULT)
        hHint - the height hint (can be SWT.DEFAULT)
        Returns:
        the preferred size of the control
        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
        See Also:
        Layout, getBorderWidth(), getBounds(), getSize(), pack(boolean), "computeTrim, getClientArea for controls that implement them"
      • computeSize

        public Point computeSize​(int wHint,
                                 int hHint,
                                 boolean changed)
        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.

        Parameters:
        wHint - the width hint (can be SWT.DEFAULT)
        hHint - the height hint (can be SWT.DEFAULT)
        changed - true if the control's contents have changed, and false otherwise
        Returns:
        the preferred size of the control.
        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
        See Also:
        Layout, getBorderWidth(), getBounds(), getSize(), pack(boolean), "computeTrim, getClientArea for controls that implement them"
      • pack

        public void pack()
        Causes the receiver to be resized to its preferred size. For a composite, this involves computing the preferred size from its layout, if there is one.
        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
        See Also:
        computeSize(int, int, boolean)
      • pack

        public void pack​(boolean changed)
        Causes the receiver to be resized to its preferred size. For a composite, this involves computing the preferred size from its layout, if there is one.

        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.

        Parameters:
        changed - whether or not the receiver's contents have changed
        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
        See Also:
        computeSize(int, int, boolean)
      • getBorderWidth

        public int getBorderWidth()
        Returns the receiver's border width. Note: When the theming defines different border widths for the four edges, this method returns the maximum border width.
        Returns:
        the border width
        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
      • toControl

        public Point toControl​(int x,
                               int y)
        Returns a point which is the result of converting the argument, which is specified in display relative coordinates, to coordinates relative to the receiver.

        Parameters:
        x - the x coordinate to be translated
        y - the y coordinate to be translated
        Returns:
        the translated coordinates
        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
      • toControl

        public Point toControl​(Point point)
        Returns a point which is the result of converting the argument, which is specified in display relative coordinates, to coordinates relative to the receiver.

        Parameters:
        point - the point to be translated (must not be null)
        Returns:
        the translated coordinates
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the point is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
      • toDisplay

        public Point toDisplay​(int x,
                               int y)
        Returns a point which is the result of converting the argument, which is specified in coordinates relative to the receiver, to display relative coordinates.

        Parameters:
        x - the x coordinate to be translated
        y - the y coordinate to be translated
        Returns:
        the translated coordinates
        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
      • toDisplay

        public Point toDisplay​(Point point)
        Returns a point which is the result of converting the argument, which is specified in coordinates relative to the receiver, to display relative coordinates.

        Parameters:
        point - the point to be translated (must not be null)
        Returns:
        the translated coordinates
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the point is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
      • getLayoutData

        public java.lang.Object getLayoutData()
        Returns layout data which is associated with the receiver.
        Returns:
        the receiver's layout data
        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
      • setLayoutData

        public void setLayoutData​(java.lang.Object layoutData)
        Sets the layout data associated with the receiver to the argument.
        Parameters:
        layoutData - the new layout data for the receiver.
        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
      • setToolTipText

        public void setToolTipText​(java.lang.String toolTipText)
        Sets the receiver's tool tip text to the argument, which may be null indicating that no tool tip text should be shown.
        Parameters:
        toolTipText - the new tool tip text (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
      • getToolTipText

        public java.lang.String getToolTipText()
        Returns the receiver's tool tip text, or null if it has not been set.
        Returns:
        the receiver's tool tip text
        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
      • setMenu

        public void setMenu​(Menu menu)
        Sets the receiver's pop up menu to the argument. All controls may optionally have a pop up menu that is displayed when the user requests one for the control. The sequence of key strokes, button presses and/or button releases that are used to request a pop up menu is platform specific.

        Note: Disposing of a control that has a pop up menu will dispose of the menu. To avoid this behavior, set the menu to null before the control is disposed.

        Parameters:
        menu - the new pop up menu
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_MENU_NOT_POP_UP - the menu is not a pop up menu
        • ERROR_INVALID_PARENT - if the menu is not in the same widget tree
        • ERROR_INVALID_ARGUMENT - if the menu has been disposed
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
      • getMenu

        public Menu getMenu()
        Returns the receiver's pop up menu if it has one, or null if it does not. All controls may optionally have a pop up menu that is displayed when the user requests one for the control. The sequence of key strokes, button presses and/or button releases that are used to request a pop up menu is platform specific.
        Returns:
        the receiver's menu
        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
      • moveAbove

        public void moveAbove​(Control control)
        Moves the receiver above the specified control in the drawing order. If the argument is null, then the receiver is moved to the top of the drawing order. The control at the top of the drawing order will not be covered by other controls even if they occupy intersecting areas.
        Parameters:
        control - the sibling control (or null)
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_INVALID_ARGUMENT - if the control has been disposed
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        See Also:
        moveBelow(org.eclipse.swt.widgets.Control), Composite.getChildren()
      • moveBelow

        public void moveBelow​(Control control)
        Moves the receiver below the specified control in the drawing order. If the argument is null, then the receiver is moved to the bottom of the drawing order. The control at the bottom of the drawing order will be covered by all other controls which occupy intersecting areas.
        Parameters:
        control - the sibling control (or null)
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_INVALID_ARGUMENT - if the control has been disposed
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        See Also:
        moveAbove(org.eclipse.swt.widgets.Control), Composite.getChildren()
      • getAdapter

        public <T> T getAdapter​(java.lang.Class<T> adapter)
        Description copied from class: Widget
        Implementation of the Adaptable interface.

        IMPORTANT: This method is not part of the RWT public API. It is marked public only so that it can be shared within the packages provided by RWT. It should never be accessed from application code.

        Specified by:
        getAdapter in interface Adaptable
        Overrides:
        getAdapter in class Widget
        Parameters:
        adapter - the lookup class
        Returns:
        an object that can be cast to the given class or null if there is no adapter associated with the given class.
      • addControlListener

        public void addControlListener​(ControlListener listener)
        Adds the listener to the collection of listeners who will be notified when the control is moved or resized, by sending it one of the messages defined in the ControlListener interface.
        Parameters:
        listener - the listener which should be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        See Also:
        ControlListener, removeControlListener(org.eclipse.swt.events.ControlListener)
      • removeControlListener

        public void removeControlListener​(ControlListener listener)
        Removes the listener from the collection of listeners who will be notified when the control is moved or resized.
        Parameters:
        listener - the listener which should no longer be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        See Also:
        ControlListener, addControlListener(org.eclipse.swt.events.ControlListener)
      • addMouseListener

        public void addMouseListener​(MouseListener listener)
        Adds the listener to the collection of listeners who will be notified when mouse buttons are pressed and released, by sending it one of the messages defined in the MouseListener interface.
        Parameters:
        listener - the listener which should be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.1
        See Also:
        MouseListener, removeMouseListener(org.eclipse.swt.events.MouseListener)
      • removeMouseListener

        public void removeMouseListener​(MouseListener listener)
        Removes the listener from the collection of listeners who will be notified when mouse buttons are pressed and released.
        Parameters:
        listener - the listener which should no longer be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.1
        See Also:
        MouseListener, addMouseListener(org.eclipse.swt.events.MouseListener)
      • addKeyListener

        public void addKeyListener​(KeyListener listener)
        Adds the listener to the collection of listeners who will be notified when keys are pressed and released on the system keyboard, by sending it one of the messages defined in the KeyListener interface.

        Note: the key events in RWT are not meant for general purpose.

        Parameters:
        listener - the listener which should be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.2
        See Also:
        KeyListener, removeKeyListener(org.eclipse.swt.events.KeyListener)
      • removeKeyListener

        public void removeKeyListener​(KeyListener listener)
        Removes the listener from the collection of listeners who will be notified when keys are pressed and released on the system keyboard.
        Parameters:
        listener - the listener which should no longer be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.2
        See Also:
        KeyListener, addKeyListener(org.eclipse.swt.events.KeyListener)
      • addTraverseListener

        public void addTraverseListener​(TraverseListener listener)
        Adds the listener to the collection of listeners who will be notified when traversal events occur, by sending it one of the messages defined in the TraverseListener interface.
        Parameters:
        listener - the listener which should be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.2
        See Also:
        TraverseListener, removeTraverseListener(org.eclipse.swt.events.TraverseListener)
      • removeTraverseListener

        public void removeTraverseListener​(TraverseListener listener)
        Removes the listener from the collection of listeners who will be notified when traversal events occur.
        Parameters:
        listener - the listener which should no longer be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.2
        See Also:
        TraverseListener, addTraverseListener(org.eclipse.swt.events.TraverseListener)
      • addFocusListener

        public void addFocusListener​(FocusListener listener)
        Adds the listener to the collection of listeners who will be notified when the control gains or loses focus, by sending it one of the messages defined in the FocusListener interface.
        Parameters:
        listener - the listener which should be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        See Also:
        FocusListener, removeFocusListener(org.eclipse.swt.events.FocusListener)
      • removeFocusListener

        public void removeFocusListener​(FocusListener listener)
        Removes the listener from the collection of listeners who will be notified when the control gains or loses focus.
        Parameters:
        listener - the listener which should no longer be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        See Also:
        FocusListener, addFocusListener(org.eclipse.swt.events.FocusListener)
      • addHelpListener

        public void addHelpListener​(HelpListener listener)
        Adds the listener to the collection of listeners who will be notified when help events are generated for the control, by sending it one of the messages defined in the HelpListener interface.
        Parameters:
        listener - the listener which should be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.3
        See Also:
        HelpListener, removeHelpListener(org.eclipse.swt.events.HelpListener)
      • removeHelpListener

        public void removeHelpListener​(HelpListener listener)
        Removes the listener from the collection of listeners who will be notified when the help events are generated for the control.
        Parameters:
        listener - the listener which should no longer be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.3
        See Also:
        HelpListener, addHelpListener(org.eclipse.swt.events.HelpListener)
      • addDragDetectListener

        public void addDragDetectListener​(DragDetectListener listener)
        Adds the listener to the collection of listeners who will be notified when a drag gesture occurs, by sending it one of the messages defined in the DragDetectListener interface.
        Parameters:
        listener - the listener which should be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.3
        See Also:
        DragDetectListener, removeDragDetectListener(org.eclipse.swt.events.DragDetectListener)
      • removeDragDetectListener

        public void removeDragDetectListener​(DragDetectListener listener)
        Removes the listener from the collection of listeners who will be notified when a drag gesture occurs.
        Parameters:
        listener - the listener which should no longer be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.3
        See Also:
        DragDetectListener, addDragDetectListener(org.eclipse.swt.events.DragDetectListener)
      • addMenuDetectListener

        public void addMenuDetectListener​(MenuDetectListener listener)
        Adds the listener to the collection of listeners who will be notified when the platform-specific context menu trigger has occurred, by sending it one of the messages defined in the MenuDetectListener interface.
        Parameters:
        listener - the listener which should be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.3
        See Also:
        MenuDetectListener, removeMenuDetectListener(org.eclipse.swt.events.MenuDetectListener)
      • removeMenuDetectListener

        public void removeMenuDetectListener​(MenuDetectListener listener)
        Removes the listener from the collection of listeners who will be notified when the platform-specific context menu trigger has occurred.
        Parameters:
        listener - the listener which should no longer be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.3
        See Also:
        MenuDetectListener, addMenuDetectListener(org.eclipse.swt.events.MenuDetectListener)
      • requestLayout

        public void requestLayout()
        Requests that this control and all of its ancestors be repositioned their layouts at the earliest opportunity. This should be invoked after modifying the control in order to inform any dependent layouts of the change.

        The control will not be repositioned synchronously. This method is fast-running and only marks the control for future participation in a deferred layout.

        Invoking this method multiple times before the layout occurs is an inexpensive no-op.

        Since:
        3.1
      • setRedraw

        public void setRedraw​(boolean redraw)
        If the argument is false, causes subsequent drawing operations in the receiver to be ignored. No drawing of any kind can occur in the receiver until the flag is set to true. Graphics operations that occurred while the flag was false are lost. When the flag is set to true, the entire widget is marked as needing to be redrawn. Nested calls to this method are stacked.

        Note: This operation is a hint and may not be supported on some platforms or for some widgets.

        Note: With RAP we can't really force a redraw. This is just a fake to enable event notifications that come on OS systems with redraws.

        Parameters:
        redraw - the new redraw state
        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
      • redraw

        public void redraw()
        Causes the entire bounds of the receiver to be marked as needing to be redrawn.

        Note: With RAP we can't really force a redraw. This is just a fake to enable event notifications that come on OS systems with redraws.

        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
      • redraw

        public void redraw​(int x,
                           int y,
                           int width,
                           int height,
                           boolean all)
        Causes the rectangular area of the receiver specified by the arguments to be marked as needing to be redrawn. The next time a paint request is processed, that area of the receiver will be painted, including the background. If the all flag is true, any children of the receiver which intersect with the specified area will also paint their intersecting areas. If the all flag is false, the children will not be painted.
        Parameters:
        x - the x coordinate of the area to draw
        y - the y coordinate of the area to draw
        width - the width of the area to draw
        height - the height of the area to draw
        all - true if children should redraw, and false otherwise
        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
        Since:
        1.3
        See Also:
        update(), PaintListener, SWT.NO_BACKGROUND, SWT.NO_REDRAW_RESIZE, SWT.NO_MERGE_PAINTS, SWT.DOUBLE_BUFFERED
      • update

        public void update()
        Forces all outstanding paint requests for the widget to be processed before this method returns. If there are no outstanding paint request, this method does nothing.

        Note: This method does not cause a redraw.

        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
        Since:
        1.3
      • setParent

        public boolean setParent​(Composite parent)
        Changes the parent of the widget to be the one provided if the underlying operating system supports this feature. Returns true if the parent is successfully changed.
        Parameters:
        parent - the new parent for the control.
        Returns:
        true if the parent is changed and false otherwise.
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_INVALID_ARGUMENT - if the argument has been disposed
        • ERROR_NULL_ARGUMENT - if the parent is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.3
      • isReparentable

        public boolean isReparentable()
        Returns true if the underlying operating system supports this reparenting, otherwise false
        Returns:
        true if the widget can be reparented, otherwise false
        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
        Since:
        1.3
      • setOrientation

        public void setOrientation​(int orientation)
        Sets the orientation of the receiver, which must be one of the constants SWT.LEFT_TO_RIGHT or SWT.RIGHT_TO_LEFT.
        Parameters:
        orientation - new orientation style
        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
        Since:
        1.4
      • getOrientation

        public int getOrientation()
        Returns the orientation of the receiver, which will be one of the constants SWT.LEFT_TO_RIGHT or SWT.RIGHT_TO_LEFT.
        Returns:
        the orientation style
        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
        Since:
        1.4
      • addGestureListener

        public void addGestureListener​(GestureListener listener)
        Adds the listener to the collection of listeners who will be notified when gesture events are generated for the control, by sending it one of the messages defined in the GestureListener interface.
        Parameters:
        listener - the listener which should be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.4
        See Also:
        GestureListener, removeGestureListener(org.eclipse.swt.events.GestureListener)
      • removeGestureListener

        public void removeGestureListener​(GestureListener listener)
        Removes the listener from the collection of listeners who will be notified when gesture events are generated for the control.
        Parameters:
        listener - the listener which should no longer be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.4
        See Also:
        GestureListener, addGestureListener(org.eclipse.swt.events.GestureListener)
      • addTouchListener

        public void addTouchListener​(TouchListener listener)
        Adds the listener to the collection of listeners who will be notified when touch events occur, by sending it one of the messages defined in the TouchListener interface.

        NOTE: You must also call setTouchEnabled to notify the windowing toolkit that you want touch events to be generated.

        Parameters:
        listener - the listener which should be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.4
        See Also:
        TouchListener, removeTouchListener(org.eclipse.swt.events.TouchListener)
      • removeTouchListener

        public void removeTouchListener​(TouchListener listener)
        Removes the listener from the collection of listeners who will be notified when touch events occur.
        Parameters:
        listener - the listener which should no longer be notified
        Throws:
        java.lang.IllegalArgumentException -
        • ERROR_NULL_ARGUMENT - if the listener is null
        SWTException -
        • ERROR_WIDGET_DISPOSED - if the receiver has been disposed
        • ERROR_THREAD_INVALID_ACCESS - if not called from the thread that created the receiver
        Since:
        1.4
        See Also:
        TouchListener, addTouchListener(org.eclipse.swt.events.TouchListener)
      • setTouchEnabled

        public void setTouchEnabled​(boolean enabled)
        Sets whether the receiver should accept touch events. By default, a Control does not accept touch events. No error or exception is thrown if the underlying hardware does not support touch input.
        Parameters:
        enabled - the new touch-enabled state
        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
        Since:
        1.4
      • getTouchEnabled

        public boolean getTouchEnabled()
        Returns true if this control is receiving OS-level touch events, otherwise false

        Note that this method will return false if the current platform does not support touch-based input. If this method does return true, gesture events will not be sent to the control.

        Returns:
        true if the widget is currently receiving touch events; false otherwise.
        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
        Since:
        1.4
      • setData

        public void setData​(java.lang.String key,
                            java.lang.Object value)
        Description copied from class: Widget
        Sets the application defined property of the receiver with the specified name to the given value.

        Applications may associate arbitrary objects with the receiver in this fashion. If the objects stored in the properties need to be notified when the widget is disposed of, it is the application's responsibility to hook the Dispose event on the widget and do so.

        Overrides:
        setData in class Widget
        Parameters:
        key - the name of the property
        value - the new value for the property
        See Also:
        Widget.getData(String)