- drawBackgroundvoid drawBackground(GC gc, int x, int y, int width, int height) 
- Fills the interior of the rectangle specified by the arguments,
with the receiver's background. 
- getCaretCaret getCaret() 
- Returns the caret.
<p>
The caret for the control is automatically hidden
and shown when the control is painted or resized,
when focus is gained or lost and when an the control
is scrolled.  To avoid drawing on top of the caret,
the programmer must hide and show the caret when
drawing in the window any other time.
</p> 
- getIMCaretPosPoint getIMCaretPos() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- getIMEIME getIME() 
- gtk_button_press_eventint gtk_button_press_event(GtkWidget* widget, GdkEventButton* event) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- gtk_commitint gtk_commit(GtkIMContext* imcontext, char* text) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- gtk_expose_eventint gtk_expose_event(GtkWidget* widget, GdkEventExpose* event) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- gtk_focus_in_eventint gtk_focus_in_event(GtkWidget* widget, GdkEventFocus* event) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- gtk_focus_out_eventint gtk_focus_out_event(GtkWidget* widget, GdkEventFocus* event) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- gtk_preedit_changedint gtk_preedit_changed(GtkIMContext* imcontext) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- redrawWidgetvoid redrawWidget(int x, int y, int width, int height, bool redrawAll, bool all, bool trim) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- releaseChildrenvoid releaseChildren(bool destroy) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- scrollvoid scroll(int destX, int destY, int x, int y, int width, int height, bool all) 
- Scrolls a rectangular area of the receiver by first copying
the source area to the destination and then causing the area
of the source which is not covered by the destination to
be repainted. Children that intersect the rectangle are
optionally moved during the operation. In addition, outstanding
paint events are flushed before the source area is copied to
ensure that the contents of the canvas are drawn correctly. 
- setBoundsint setBounds(int x, int y, int width, int height, bool move, bool resize) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- setCaretvoid setCaret(Caret caret) 
- Sets the receiver's caret.
<p>
The caret for the control is automatically hidden
and shown when the control is painted or resized,
when focus is gained or lost and when an the control
is scrolled.  To avoid drawing on top of the caret,
the programmer must hide and show the caret when
drawing in the window any other time.
</p>
@param caret the new caret for the receiver, may be null 
- setFontvoid setFont(Font font) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- setIMEvoid setIME(IME ime) 
- updateCaretvoid updateCaret() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- computeSizealias computeSize = Scrollable.computeSize 
- Undocumented in source. 
- fixStylealias fixStyle = Scrollable.fixStyle 
- Undocumented in source. 
- forceFocusalias forceFocus = Scrollable.forceFocus 
- Undocumented in source. 
- gtk_button_press_eventalias gtk_button_press_event = Scrollable.gtk_button_press_event 
- Undocumented in source. 
- moveAbovealias moveAbove = Scrollable.moveAbove 
- Undocumented in source. 
- moveBelowalias moveBelow = Scrollable.moveBelow 
- Undocumented in source. 
- setBoundsalias setBounds = Scrollable.setBounds 
- Undocumented in source. 
- translateMnemonicalias translateMnemonic = Scrollable.translateMnemonic 
- Undocumented in source. 
- translateTraversalalias translateTraversal = Scrollable.translateTraversal 
- Undocumented in source. 
- embeddedHandlesize_t embeddedHandle; 
- Undocumented in source. 
- imHandle_GtkIMContext* imHandle_; 
- Undocumented in source. 
- socketHandleGtkWidget* socketHandle; 
- Undocumented in source. 
- layout_Layout layout_; 
- Undocumented in source. 
- tabListControl[] tabList; 
- Undocumented in source. 
- layoutCountint layoutCount; 
- backgroundModeint backgroundMode; 
- Undocumented in source. 
- NO_INPUT_METHODString NO_INPUT_METHOD; 
- Undocumented in source. 
- checkStyleint checkStyle(int style) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- _getChildrenControl[] _getChildren() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- _getTabListControl[] _getTabList() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- changedvoid changed(Control[] changed) 
- Clears any data that has been cached by a Layout for all widgets that
are in the parent hierarchy of the changed control up to and including the
receiver.  If an ancestor does not have a layout, it is skipped. 
- checkBufferedvoid checkBuffered() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- checkSubclassvoid checkSubclass() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- childStyleGtkStyle* childStyle() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- computeSizePoint computeSize(int wHint, int hHint, bool changed) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- computeTabListControl[] computeTabList() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- createHandlevoid createHandle(int index) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- createHandlevoid createHandle(int index, bool fixed, bool scrolled) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- deregistervoid deregister() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- drawBackgroundvoid drawBackground(GC gc, int x, int y, int width, int height) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- enableWidgetvoid enableWidget(bool enabled) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- findDeferredControlComposite findDeferredControl() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- findMenusMenu[] findMenus(Control control) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- fixChildrenvoid fixChildren(Shell newShell, Shell oldShell, Decorations newDecorations, Decorations oldDecorations, Menu[] menus) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- fixModalvoid fixModal(GtkWidget* group, GtkWidget* modalGroup) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- fixStylevoid fixStyle() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- fixTabListvoid fixTabList(Control control) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- fixZOrdervoid fixZOrder() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- focusHandleGtkWidget* focusHandle() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- forceFocusbool forceFocus(GtkWidget* focusHandle) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- getBackgroundModeint getBackgroundMode() 
- Returns the receiver's background drawing mode. This
will be one of the following constants defined in class
<code>SWT</code>:
<code>INHERIT_NONE</code>, <code>INHERIT_DEFAULT</code>,
<code>INHERTIT_FORCE</code>. 
- getChildrenControl[] getChildren() 
- Returns a (possibly empty) array containing the receiver's children.
Children are returned in the order that they are drawn.  The topmost
control appears at the beginning of the array.  Subsequent controls
draw beneath this control and appear later in the array.
<p>
Note: This is not the actual structure used by the receiver
to maintain its list of children, so modifying the array will
not affect the receiver.
</p> 
- getChildrenCountint getChildrenCount() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- getClientAreaRectangle getClientArea() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- getClientWidthint getClientWidth() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- getLayoutLayout getLayout() 
- Returns layout which is associated with the receiver, or
null if one has not been set. 
- getLayoutDeferredbool getLayoutDeferred() 
- Returns <code>true</code> if the receiver has deferred
the performing of layout, and <code>false</code> otherwise. 
- getTabListControl[] getTabList() 
- Gets the (possibly empty) tabbing order for the control. 
- gtk_button_press_eventint gtk_button_press_event(GtkWidget* widget, GdkEventButton* event) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- gtk_expose_eventint gtk_expose_event(GtkWidget* widget, GdkEventExpose* eventPtr) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- gtk_key_press_eventint gtk_key_press_event(GtkWidget* widget, GdkEventKey* event) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- gtk_focusint gtk_focus(GtkWidget* widget, ptrdiff_t directionType) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- gtk_focus_in_eventint gtk_focus_in_event(GtkWidget* widget, GdkEventFocus* event) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- gtk_focus_out_eventint gtk_focus_out_event(GtkWidget* widget, GdkEventFocus* event) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- gtk_mapint gtk_map(GtkWidget* widget) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- gtk_realizeint gtk_realize(GtkWidget* widget) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- gtk_scroll_childint gtk_scroll_child(GtkWidget* widget, ptrdiff_t scrollType, ptrdiff_t horizontal) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- gtk_style_setint gtk_style_set(GtkWidget* widget, ptrdiff_t previousStyle) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- hasBorderbool hasBorder() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- hookEventsvoid hookEvents() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- hooksKeysbool hooksKeys() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- imHandleGtkIMContext* imHandle() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- isLayoutDeferredbool isLayoutDeferred() 
- Returns <code>true</code> if the receiver or any ancestor
up to and including the receiver's nearest ancestor shell
has deferred the performing of layouts.  Otherwise, <code>false</code>
is returned. 
- isTabGroupbool isTabGroup() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- layoutvoid layout() 
- If the receiver has a layout, asks the layout to <em>lay out</em>
(that is, set the size and location of) the receiver's children.
If the receiver does not have a layout, do nothing.
<p>
This is equivalent to calling <code>layout(true)</code>.
</p>
<p>
Note: Layout is different from painting. If a child is
moved or resized such that an area in the parent is
exposed, then the parent will paint. If no child is
affected, the parent will not paint.
</p> 
- layoutvoid layout(bool changed) 
- If the receiver has a layout, asks the layout to <em>lay out</em>
(that is, set the size and location of) the receiver's children.
If the argument is <code>true</code> the layout must not rely
on any information it has cached about the immediate children. If it
is <code>false</code> the layout may (potentially) optimize the
work it is doing by assuming that none of the receiver's
children has changed state since the last layout.
If the receiver does not have a layout, do nothing.
<p>
If a child is resized as a result of a call to layout, the
resize event will invoke the layout of the child.  The layout
will cascade down through all child widgets in the receiver's widget
tree until a child is encountered that does not resize.  Note that
a layout due to a resize will not flush any cached information
(same as <code>layout(false)</code>).
</p>
<p>
Note: Layout is different from painting. If a child is
moved or resized such that an area in the parent is
exposed, then the parent will paint. If no child is
affected, the parent will not paint.
</p> 
- layoutvoid layout(bool changed, bool all) 
- If the receiver has a layout, asks the layout to <em>lay out</em>
(that is, set the size and location of) the receiver's children.
If the changed argument is <code>true</code> the layout must not rely
on any information it has cached about its children. If it
is <code>false</code> the layout may (potentially) optimize the
work it is doing by assuming that none of the receiver's
children has changed state since the last layout.
If the all argument is <code>true</code> the layout will cascade down
through all child widgets in the receiver's widget tree, regardless of
whether the child has changed size.  The changed argument is applied to
all layouts.  If the all argument is <code>false</code>, the layout will
<em>not</em> cascade down through all child widgets in the receiver's widget
tree.  However, if a child is resized as a result of a call to layout, the
resize event will invoke the layout of the child.  Note that
a layout due to a resize will not flush any cached information
(same as <code>layout(false)</code>).
</p>
<p>
Note: Layout is different from painting. If a child is
moved or resized such that an area in the parent is
exposed, then the parent will paint. If no child is
affected, the parent will not paint.
</p> 
- layoutvoid layout(Control[] changed) 
- Forces a lay out (that is, sets the size and location) of all widgets that
are in the parent hierarchy of the changed control up to and including the
receiver.  The layouts in the hierarchy must not rely on any information
cached about the changed control or any of its ancestors.  The layout may
(potentially) optimize the work it is doing by assuming that none of the
peers of the changed control have changed state since the last layout.
If an ancestor does not have a layout, skip it.
<p>
Note: Layout is different from painting. If a child is
moved or resized such that an area in the parent is
exposed, then the parent will paint. If no child is
affected, the parent will not paint.
</p> 
- markLayoutvoid markLayout(bool changed, bool all) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- moveAbovevoid moveAbove(GtkWidget* child, GtkWidget* sibling) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- moveBelowalias moveBelow = Scrollable.moveBelow 
- Undocumented in source. 
- moveBelowvoid moveBelow(GtkWidget* child, GtkWidget* sibling) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- moveChildrenvoid moveChildren(int oldWidth) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- minimumSizePoint minimumSize(int wHint, int hHint, bool changed) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- parentingHandleGtkWidget* parentingHandle() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- printWidgetvoid printWidget(GC gc, GdkDrawable* drawable, int depth, int x, int y) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- redrawChildrenvoid redrawChildren() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- registervoid register() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- releaseChildrenvoid releaseChildren(bool destroy) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- releaseHandlevoid releaseHandle() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- releaseWidgetvoid releaseWidget() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- removeControlvoid removeControl(Control control) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- resizeHandlevoid resizeHandle(int width, int height) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- setBackgroundModevoid setBackgroundMode(int mode) 
- Sets the background drawing mode to the argument which should
be one of the following constants defined in class <code>SWT</code>:
<code>INHERIT_NONE</code>, <code>INHERIT_DEFAULT</code>,
<code>INHERIT_FORCE</code>. 
- setBoundsint setBounds(int x, int y, int width, int height, bool move, bool resize) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- setFocusbool setFocus() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- setLayoutvoid setLayout(Layout layout) 
- Sets the layout which is associated with the receiver to be
the argument which may be null. 
- setLayoutDeferredvoid setLayoutDeferred(bool defer) 
- If the argument is <code>true</code>, causes subsequent layout
operations in the receiver or any of its children to be ignored.
No layout of any kind can occur in the receiver or any of its
children until the flag is set to false.
Layout operations that occurred while the flag was
<code>true</code> are remembered and when the flag is set to
<code>false</code>, the layout operations are performed in an
optimized manner.  Nested calls to this method are stacked. 
- setScrollBarVisiblebool setScrollBarVisible(ScrollBar bar, bool visible) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- setTabGroupFocusbool setTabGroupFocus(bool next) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- setTabItemFocusbool setTabItemFocus(bool next) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- setTabListvoid setTabList(Control[] tabList) 
- Sets the tabbing order for the specified controls to
match the order that they occur in the argument list. 
- showWidgetvoid showWidget() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- translateMnemonicbool translateMnemonic(Event event, Control control) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- traversalCodeint traversalCode(int key, GdkEventKey* event) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- translateTraversalbool translateTraversal(GdkEventKey* keyEvent) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- updateBackgroundModevoid updateBackgroundMode() 
- Undocumented in source. Be warned that the author may not have intended to support it. 
- updateLayoutvoid updateLayout(bool all) 
- Undocumented in source. Be warned that the author may not have intended to support it. 
Instances of this class provide a surface for drawing arbitrary graphics. <dl> <dt><b>Styles:</b></dt> <dd>(none)</dd> <dt><b>Events:</b></dt> <dd>(none)</dd> </dl> <p> This class may be subclassed by custom control implementors who are building controls that are <em>not</em> constructed from aggregates of other controls. That is, they are either painted using SWT graphics calls or are handled by native methods. </p>
@see Composite @see <a href="http://www.eclipse.org/swt/snippets/#canvas">Canvas snippets</a> @see <a href="http://www.eclipse.org/swt/examples.php">SWT Example: ControlExample</a> @see <a href="http://www.eclipse.org/swt/">Sample code and further information</a>