|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.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.widgets.Decorations
org.eclipse.swt.widgets.Shell
public class Shell
Instances of this class represent the "windows"
which the desktop or "window manager" is managing.
Instances that do not have a parent (that is, they
are built using the constructor, which takes a
Display
as the argument) are described
as top level shells. Instances that do have
a parent are described as secondary or
dialog shells.
Instances are always displayed in one of the maximized, minimized or normal states:
RESIZE
) until it is
no longer maximized.
The modality of an instance may be specified using
style bits. The modality style bits are used to determine
whether input is blocked for other shells on the display.
The PRIMARY_MODAL
style allows an instance to block
input to its parent. The APPLICATION_MODAL
style
allows an instance to block input to every other shell in the
display. The SYSTEM_MODAL
style allows an instance
to block input to all shells, including shells belonging to
different applications.
Note: The styles supported by this class are treated
as HINTs, since the window manager for the
desktop on which the instance is visible has ultimate
control over the appearance and behavior of decorations
and modality. For example, some window managers only
support resizable windows and will always assume the
RESIZE style, even if it is not set. In addition, if a
modality style is not supported, it is "upgraded" to a
more restrictive modality style that is supported. For
example, if PRIMARY_MODAL
is not supported,
it would be upgraded to APPLICATION_MODAL
.
A modality style may also be "downgraded" to a less
restrictive style. For example, most operating systems
no longer support SYSTEM_MODAL
because
it can freeze up the desktop, so this is typically
downgraded to APPLICATION_MODAL
.
SWT
provides two "convenience constants"
for the most commonly required style combinations:
SHELL_TRIM
CLOSE | TITLE | MIN | MAX | RESIZE
)
DIALOG_TRIM
TITLE | CLOSE | BORDER
)
Note: Only one of the styles APPLICATION_MODAL, MODELESS, PRIMARY_MODAL and SYSTEM_MODAL may be specified.
IMPORTANT: This class is not intended to be subclassed.
Decorations
,
SWT
,
Shell snippets,
SWT Example: ControlExample,
Sample code and further informationField Summary |
---|
Fields inherited from class org.eclipse.swt.widgets.Composite |
---|
embeddedHandle |
Fields inherited from class org.eclipse.swt.widgets.Widget |
---|
handle |
Constructor Summary | |
---|---|
Shell()
Constructs a new instance of this class. |
|
Shell(Display display)
Constructs a new instance of this class given only the display to create it on. |
|
Shell(Display display,
int style)
Constructs a new instance of this class given the display to create it on and a style value describing its behavior and appearance. |
|
Shell(int style)
Constructs a new instance of this class given only the style value describing its behavior and appearance. |
|
Shell(Shell parent)
Constructs a new instance of this class given only its parent. |
|
Shell(Shell parent,
int style)
Constructs a new instance of this class given its parent and a style value describing its behavior and appearance. |
Method Summary | |
---|---|
void |
addShellListener(ShellListener listener)
Adds the listener to the collection of listeners who will be notified when operations are performed on the receiver, by sending the listener one of the messages defined in the ShellListener interface. |
void |
close()
Requests that the window manager close the receiver in the same way it would be closed when the user clicks on the "close box" or performs some other platform specific key or mouse combination that indicates the window should be removed. |
Rectangle |
computeTrim(int x,
int y,
int width,
int height)
Given a desired client area for the receiver (as described by the arguments), returns the bounding rectangle which would be required to produce that client area. |
void |
dispose()
Disposes of the operating system resources associated with the receiver and all its descendants. |
void |
forceActive()
If the receiver is visible, moves it to the top of the drawing order for the display on which it was created (so that all other shells on that display, which are not the receiver's children will be drawn behind it) and forces the window manager to make the shell active. |
int |
getAlpha()
Returns the receiver's alpha value. |
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. |
boolean |
getFullScreen()
Returns true if the receiver is currently
in fullscreen state, and false otherwise. |
int |
getImeInputMode()
Returns the receiver's input method editor mode. |
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. |
boolean |
getMaximized()
Returns true if the receiver is currently
maximized, and false otherwise. |
Point |
getMinimumSize()
Returns a point describing the minimum receiver's size. |
Region |
getRegion()
Returns the region that defines the shape of the shell, or null if the shell has the default shape. |
Shell[] |
getShells()
Returns an array containing all shells which are descendants of the receiver. |
Point |
getSize()
Returns a point describing the receiver's size. |
boolean |
getVisible()
Returns true if the receiver is visible, and
false otherwise. |
static Shell |
gtk_new(Display display,
long handle)
|
static Shell |
internal_new(Display display,
long handle)
Invokes platform specific functionality to allocate a new shell that is not embedded. |
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 |
isVisible()
Returns true if the receiver is visible and all
ancestors up to and including the receiver's nearest ancestor
shell are visible. |
void |
open()
Moves the receiver to the top of the drawing order for the display on which it was created (so that all other shells on that display, which are not the receiver's children will be drawn behind it), marks it visible, sets the focus and asks the window manager to make the shell active. |
boolean |
print(GC gc)
Prints the receiver and all children. |
void |
removeShellListener(ShellListener listener)
Removes the listener from the collection of listeners who will be notified when operations are performed on the receiver. |
void |
setActive()
If the receiver is visible, moves it to the top of the drawing order for the display on which it was created (so that all other shells on that display, which are not the receiver's children will be drawn behind it) and asks the window manager to make the shell active |
void |
setAlpha(int alpha)
Sets the receiver's alpha value which must be between 0 (transparent) and 255 (opaque). |
void |
setEnabled(boolean enabled)
Enables the receiver if the argument is true ,
and disables it otherwise. |
void |
setFullScreen(boolean fullScreen)
Sets the full screen state of the receiver. |
void |
setImeInputMode(int mode)
Sets the input method editor mode to the argument which should be the result of bitwise OR'ing together one or more of the following constants defined in class SWT :
NONE , ROMAN , DBCS ,
PHONETIC , NATIVE , ALPHA . |
void |
setMaximized(boolean maximized)
Sets the maximized state of the receiver. |
void |
setMenuBar(Menu menu)
Sets the receiver's menu bar to the argument, which may be null. |
void |
setMinimized(boolean minimized)
Sets the minimized stated of the receiver. |
void |
setMinimumSize(int width,
int height)
Sets the receiver's minimum size to the size specified by the arguments. |
void |
setMinimumSize(Point size)
Sets the receiver's minimum size to the size specified by the argument. |
void |
setRegion(Region region)
Sets the shape of the shell to the region specified by the argument. |
void |
setText(java.lang.String string)
Sets the receiver's text, which is the string that the window manager will typically display as the receiver's title, to the argument, which must not be null. |
void |
setVisible(boolean visible)
Marks the receiver as visible if the argument is true ,
and marks it invisible otherwise. |
Methods inherited from class org.eclipse.swt.widgets.Decorations |
---|
checkSubclass, getDefaultButton, getImage, getImages, getMenuBar, getMinimized, getText, isReparentable, setDefaultButton, setImage, setImages |
Methods inherited from class org.eclipse.swt.widgets.Canvas |
---|
drawBackground, getCaret, getIME, scroll, setCaret, setFont, setIME |
Methods inherited from class org.eclipse.swt.widgets.Composite |
---|
changed, computeSize, getBackgroundMode, getChildren, getClientArea, getLayout, getLayoutDeferred, getTabList, isLayoutDeferred, layout, layout, layout, layout, setBackgroundMode, setFocus, setLayout, setLayoutDeferred, setTabList |
Methods inherited from class org.eclipse.swt.widgets.Scrollable |
---|
getBorderWidth, getHorizontalBar, getVerticalBar |
Methods inherited from class org.eclipse.swt.widgets.Widget |
---|
addDisposeListener, addListener, checkWidget, getData, getData, getDisplay, getListeners, 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 |
---|
public Shell()
Shell((Display) null)
.
SWTException
- public Shell(int style)
Shell((Display) null, style)
.
The style value is either one of the style constants defined in
class SWT
which is applicable to instances of this
class, or must be built by bitwise OR'ing together
(that is, using the int
"|" operator) two or more
of those SWT
style constants. The class description
lists the style constants that are applicable to the class.
Style bits are also inherited from superclasses.
style
- the style of control to construct
SWTException
- SWT.BORDER
,
SWT.CLOSE
,
SWT.MIN
,
SWT.MAX
,
SWT.RESIZE
,
SWT.TITLE
,
SWT.NO_TRIM
,
SWT.SHELL_TRIM
,
SWT.DIALOG_TRIM
,
SWT.MODELESS
,
SWT.PRIMARY_MODAL
,
SWT.APPLICATION_MODAL
,
SWT.SYSTEM_MODAL
public Shell(Display display)
SWT.SHELL_TRIM
.
Note: Currently, null can be passed in for the display argument. This has the effect of creating the shell on the currently active display if there is one. If there is no current display, the shell is created on a "default" display. Passing in null as the display argument is not considered to be good coding style, and may not be supported in a future release of SWT.
display
- the display to create the shell on
SWTException
- public Shell(Display display, int style)
The style value is either one of the style constants defined in
class SWT
which is applicable to instances of this
class, or must be built by bitwise OR'ing together
(that is, using the int
"|" operator) two or more
of those SWT
style constants. The class description
lists the style constants that are applicable to the class.
Style bits are also inherited from superclasses.
Note: Currently, null can be passed in for the display argument. This has the effect of creating the shell on the currently active display if there is one. If there is no current display, the shell is created on a "default" display. Passing in null as the display argument is not considered to be good coding style, and may not be supported in a future release of SWT.
display
- the display to create the shell onstyle
- the style of control to construct
SWTException
- SWT.BORDER
,
SWT.CLOSE
,
SWT.MIN
,
SWT.MAX
,
SWT.RESIZE
,
SWT.TITLE
,
SWT.NO_TRIM
,
SWT.SHELL_TRIM
,
SWT.DIALOG_TRIM
,
SWT.MODELESS
,
SWT.PRIMARY_MODAL
,
SWT.APPLICATION_MODAL
,
SWT.SYSTEM_MODAL
public Shell(Shell parent)
SWT.DIALOG_TRIM
.
Note: Currently, null can be passed in for the parent. This has the effect of creating the shell on the currently active display if there is one. If there is no current display, the shell is created on a "default" display. Passing in null as the parent is not considered to be good coding style, and may not be supported in a future release of SWT.
parent
- a shell which will be the parent of the new instance
java.lang.IllegalArgumentException
- SWTException
- public Shell(Shell parent, int style)
The style value is either one of the style constants defined in
class SWT
which is applicable to instances of this
class, or must be built by bitwise OR'ing together
(that is, using the int
"|" operator) two or more
of those SWT
style constants. The class description
lists the style constants that are applicable to the class.
Style bits are also inherited from superclasses.
Note: Currently, null can be passed in for the parent. This has the effect of creating the shell on the currently active display if there is one. If there is no current display, the shell is created on a "default" display. Passing in null as the parent is not considered to be good coding style, and may not be supported in a future release of SWT.
parent
- a shell which will be the parent of the new instancestyle
- the style of control to construct
java.lang.IllegalArgumentException
- SWTException
- SWT.BORDER
,
SWT.CLOSE
,
SWT.MIN
,
SWT.MAX
,
SWT.RESIZE
,
SWT.TITLE
,
SWT.NO_TRIM
,
SWT.SHELL_TRIM
,
SWT.DIALOG_TRIM
,
SWT.ON_TOP
,
SWT.TOOL
,
SWT.MODELESS
,
SWT.PRIMARY_MODAL
,
SWT.APPLICATION_MODAL
,
SWT.SYSTEM_MODAL
Method Detail |
---|
public static Shell gtk_new(Display display, long handle)
public static Shell internal_new(Display display, long handle)
IMPORTANT: This method is not part of the public
API for Shell
. It is marked public only so that it
can be shared within the packages provided by SWT. It is not
available on all platforms, and should never be called from
application code.
display
- the display for the shellhandle
- the handle for the shell
public void addShellListener(ShellListener listener)
ShellListener
interface.
listener
- the listener which should be notified
java.lang.IllegalArgumentException
- SWTException
- ShellListener
,
removeShellListener(org.eclipse.swt.events.ShellListener)
public void close()
SWTException
- SWT.Close
,
dispose()
public Rectangle computeTrim(int x, int y, int width, int height)
Scrollable
In other words, it returns a rectangle such that, if the receiver's bounds were set to that rectangle, the area of the receiver which is capable of displaying data (that is, not covered by the "trimmings") would be the rectangle described by the arguments (relative to the receiver's parent).
computeTrim
in class Scrollable
x
- the desired x coordinate of the client areay
- the desired y coordinate of the client areawidth
- the desired width of the client areaheight
- the desired height of the client area
Scrollable.getClientArea()
public boolean isEnabled()
Control
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.
isEnabled
in class Control
Control.getEnabled()
public boolean isVisible()
Control
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.
isVisible
in class Control
Control.getVisible()
public int getAlpha()
SWTException
- public boolean getFullScreen()
true
if the receiver is currently
in fullscreen state, and false otherwise.
SWTException
- public Point getLocation()
Control
getLocation
in class Control
public boolean getMaximized()
Decorations
true
if the receiver is currently
maximized, and false otherwise.
getMaximized
in class Decorations
Decorations.setMaximized(boolean)
public Point getMinimumSize()
SWTException
- public Point getSize()
Control
getSize
in class Control
public boolean getVisible()
Control
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.
getVisible
in class Control
public Region getRegion()
getRegion
in class Control
SWTException
- public int getImeInputMode()
SWT
:
NONE
, ROMAN
, DBCS
,
PHONETIC
, NATIVE
, ALPHA
.
SWTException
- SWT
public Shell[] getShells()
SWTException
- public void open()
SWTException
- Control.moveAbove(org.eclipse.swt.widgets.Control)
,
Control.setFocus()
,
Control.setVisible(boolean)
,
Display.getActiveShell()
,
Decorations.setDefaultButton(Button)
,
setActive()
,
forceActive()
public boolean print(GC gc)
Control
print
in class Control
gc
- the gc where the drawing occurs
true
if the operation was successful and false
otherwisepublic void removeShellListener(ShellListener listener)
listener
- the listener which should no longer be notified
java.lang.IllegalArgumentException
- SWTException
- ShellListener
,
addShellListener(org.eclipse.swt.events.ShellListener)
public void setActive()
SWTException
- Control.moveAbove(org.eclipse.swt.widgets.Control)
,
Control.setFocus()
,
Control.setVisible(boolean)
,
Display.getActiveShell()
,
Decorations.setDefaultButton(Button)
,
open()
,
setActive()
public void setAlpha(int alpha)
This operation requires the operating system's advanced widgets subsystem which may not be available on some platforms.
alpha
- the alpha value
SWTException
- public void setEnabled(boolean enabled)
Control
true
,
and disables it otherwise. A disabled control is typically
not selectable from the user interface and draws with an
inactive or "grayed" look.
setEnabled
in class Control
enabled
- the new enabled statepublic void setFullScreen(boolean fullScreen)
true
causes the receiver
to switch to the full screen state, and if the argument is
false
and the receiver was previously switched
into full screen state, causes the receiver to switch back
to either the maximmized or normal states.
Note: The result of intermixing calls to setFullScreen(true)
,
setMaximized(true)
and setMinimized(true)
will
vary by platform. Typically, the behavior will match the platform user's
expectations, but not always. This should be avoided if possible.
fullScreen
- the new fullscreen state
SWTException
- public void setImeInputMode(int mode)
SWT
:
NONE
, ROMAN
, DBCS
,
PHONETIC
, NATIVE
, ALPHA
.
mode
- the new IME mode
SWTException
- SWT
public void setMaximized(boolean maximized)
Decorations
true
causes the receiver
to switch to the maximized state, and if the argument is
false
and the receiver was previously maximized,
causes the receiver to switch back to either the minimized
or normal states.
Note: The result of intermixing calls to setMaximized(true)
and setMinimized(true)
will vary by platform. Typically,
the behavior will match the platform user's expectations, but not
always. This should be avoided if possible.
setMaximized
in class Decorations
maximized
- the new maximized stateDecorations.setMinimized(boolean)
public void setMenuBar(Menu menu)
Decorations
setMenuBar
in class Decorations
menu
- the new menu barpublic void setMinimized(boolean minimized)
Decorations
true
causes the receiver
to switch to the minimized state, and if the argument is
false
and the receiver was previously minimized,
causes the receiver to switch back to either the maximized
or normal states.
Note: The result of intermixing calls to setMaximized(true)
and setMinimized(true)
will vary by platform. Typically,
the behavior will match the platform user's expectations, but not
always. This should be avoided if possible.
setMinimized
in class Decorations
minimized
- the new maximized stateDecorations.setMaximized(boolean)
public void setMinimumSize(int width, int height)
width
- the new minimum width for the receiverheight
- the new minimum height for the receiver
SWTException
- public void setMinimumSize(Point size)
size
- the new minimum size for the receiver
java.lang.IllegalArgumentException
- SWTException
- public void setRegion(Region region)
setRegion
in class Control
region
- the region that defines the shape of the shell (or null)
java.lang.IllegalArgumentException
- SWTException
- public void setText(java.lang.String string)
Decorations
setText
in class Decorations
string
- the new textpublic void setVisible(boolean visible)
Control
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.
setVisible
in class Control
visible
- the new visibility statepublic void dispose()
Widget
true
when sent the message isDisposed()
.
Any internal connections between the widgets in the tree will
have been removed to facilitate garbage collection.
NOTE: This method is not called recursively on the descendants
of the receiver. This means that, widget implementers can not
detect when a widget is being disposed of by re-implementing
this method, but should instead listen for the Dispose
event.
dispose
in class Widget
Widget.addDisposeListener(org.eclipse.swt.events.DisposeListener)
,
Widget.removeDisposeListener(org.eclipse.swt.events.DisposeListener)
,
Widget.checkWidget()
public void forceActive()
SWTException
- Control.moveAbove(org.eclipse.swt.widgets.Control)
,
Control.setFocus()
,
Control.setVisible(boolean)
,
Display.getActiveShell()
,
Decorations.setDefaultButton(Button)
,
open()
,
setActive()
public Rectangle getBounds()
Control
getBounds
in class Control
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |