## org.gnu.gtk
Class Window

    java.lang.Object
      org.gnu.glib.Struct
          org.gnu.glib.GObject
              org.gnu.gtk.GtkObject
                  org.gnu.gtk.Widget
                      org.gnu.gtk.Container
                          org.gnu.gtk.Bin
                              org.gnu.gtk.Window

Direct Known Subclasses:
  Dialog, Plug

public class Window
extends Bin

A Window is a window that can be displayed on the screen. It also is a container that can hold a single child widget. It is common to have the window in Window supply the margin around the window of the contained widget.

Constructor Summary
`Window()` Constructs a top-level Window.
`Window(org.gnu.glib.Handle handle)` Create a new Window with a handle to a native resource returned from a call to the native libraries.
`Window(WindowType windowType)` Construct a new Window object.

Method Summary
`void` `addAccelGroup(AccelGroup accelGroup)` Associate `accesGroup` with the window.
`void` `deiconify()` Asks to deiconify the specified Window.
`void` `destroy()` Destroys a window and releases its native resources.
`void` `fullscreen()`
`boolean` `getAcceptFocus()`
`static Pixbuf[]` `getDefaultIconList()` Gets the icons set by `setDefaultIconList`.
`boolean` `getFocusOnMap()` Gets the value set by `setFocusOnMap(boolean)`.
`Widget` `getFocusWidget()` Retrieves the current focused Widget within the window.
`Gravity` `getGravity()` Gets the value set by `setGravity()`.
`Pixbuf` `getIcon()` Returns the icon representing the Window.
`Pixbuf[]` `getIconList()` Retrieves the list of icons set by setIconList().
`java.lang.String` `getIconName()` Returns the name of the themed icon for the window.
`Point` `getPosition()` Retuns the current position of the window.
`Screen` `getScreen()` Returns the GdkScreen associated with this window.
`Requisition` `getSize()` Returns the current size of a Window.
`boolean` `getSkipPagerHint()` Returns whether the window should appear in the pager.
`boolean` `getSkipTaskbarHint()` Returns whether this window should appear in the task bar.
`java.lang.String` `getTitle()` Returns the title for the Window object
`Window` `getTransientParent()` Fetches the transient parent of this window.
`static Type` `getType()` Retrieve the runtime type used by the GLib library.
`static Window` `getWindow(org.gnu.glib.Handle handle)` Create a new Window with a handle to a native resource returned from a call to the native libraries.
`boolean` `hasToplevelFocus()` Returns whether the input focus is within this Window.
`void` `iconify()` Asks to iconify the Window.
`boolean` `isActive()` Returns whether the window is part of the current active toplevel.
`boolean` `isDestroyed()` Returns true if destroy has previously been called on this object.
`static Window[]` `listToplevelWindows()` Returns a list of all existing toplevel windows.
`void` `maximize()` Asks to maximize the Window so it becomes full-screen.
`void` `move(int x, int y)` Ask the window manager to move the Window to a given location.
`void` `present()` Presents a window to the user.
`void` `removeAccelGroup(AccelGroup accelGroup)` Reverses the effect of `addAccelGroup`.
`void` `resize(int width, int height)` Resizes the Window as if the user had done so, obeying the geometry constraints.
`void` `setAcceptFocus(boolean acceptFocus)`
`static void` `setAutoStartupNotification(boolean setting)`
`void` `setDecorated(boolean setting)` By default Windows are decorated by a titlebar, resize controls, etc.
`static void` `setDefaultIcon(Pixbuf icon)`
`static boolean` `setDefaultIconFromFile(java.lang.String filename)` Sets an icon to be used as fallback for windows that haven't had setIconList() called on them from a file on disk.
`static void` `setDefaultIconList(Pixbuf[] icons)` Sets up the icon representing a Window.
`void` `setDefaultIconName(java.lang.String name)` Sets an icon to be used as fallback for windows that haven't had `setIconList` called on them from a named themed icon.
`void` `setDefaultSize(int width, int height)` Sets the default size for a Window.
`void` `setDefaultWidget(Widget defaultWidget)` The default widget is the widget that is activated when the user presses the Enter key.
`void` `setFocusOnMap(boolean setting)` Windows may set a hint asking the desktop environment not to receive the input focus when the window is mapped.
`void` `setFocusWidget(Widget focus)` If `focus` is not the current focus widget and is focusable, set it as the focus widget for the window.
`void` `setGeometryHints(Widget geometryWidget, Geometry geometry, WindowHints geomMask)` This method sets up hints about how a Window can be resized by the user.
`void` `setGravity(Gravity gravity)` Window gravity defines the meaning of coordinates passed to `move()`.
`void` `setIcon(Pixbuf icon)` Sets up the icon representing a Window.
`boolean` `setIconFromFile(java.lang.String filename)` Sets the icon for this window.
`void` `setIconList(Pixbuf[] icons)` Sets up the icon representing a GtkWindow.
`void` `setIconName(java.lang.String name)` Sets the icon for the window from a named themed icon.
`void` `setKeepAbove(boolean setting)`
`void` `setKeepBelow(boolean setting)`
`void` `setModal(boolean modal)` Sets a window modal or non-modal.
`void` `setPosition(WindowPosition position)` Sets a position constraint for this window.
`void` `setResizable(boolean resizable)` Sets whether the user can resize the window.
`void` `setScreen(Screen screen)` Sets the Screen where the window is displayed; if the window is already mapped, it will be unmapped, and then remapped on the new screen.
`void` `setSkipPagerHint(boolean skipHint)` Set to true to keep the window from appearing in the pager.
`void` `setSkipTaskbarHint(boolean skipHint)` Set to true to keep this window from appearing in the task bar.
`void` `setTitle(java.lang.String title)` Set the title for this Window object
`void` `setTransientParent(Window parent)` Dialog windows should be set transient for the main application window they were spawned from.
`void` `stick()` Asks to stick the window.
`void` `unfullscreen()`
`void` `unmaximize()` Asks to unmaximize the Window so it becomes it normal size.
`void` `unstick()` Asks to unstick the window.

Methods inherited from class org.gnu.gtk.Bin
`getChild`

Methods inherited from class org.gnu.gtk.Container
`add, addListener, getBorderWidth, getChildren, getEventListenerClass, getEventType, getResizeMode, remove, removeListener, resizeChildren, setBorderWidth, setResizeMode`

Methods inherited from class org.gnu.gtk.Widget

`activate, addAccelerator, addEvents, addListener, addListener, addListener, addListener, addListener, addListener, addListener, addListener, addListener, addListener, addListener, canActivateAccel, createContext, createLayout, draw, drawArea, drawArea, finish, getAccessible, getColormap, getContext, getData, getDisplay, getDragData, getExtensionEvents, getModifierStyle, getName, getParent, getParentWindow, getPointer, getRootWindow, getSensitive, getStyle, getToplevel, getWidget, getWindow, grabDefault, grabFocus, hasFocus, hasScreen, hide, hideAll, highlight, highlight, intersect, isAncestor, makeWidget, modifyStyle, popColormap, pushColormap, realize, removeAccelerator, removeListener, removeListener, removeListener, removeListener, removeListener, removeListener, removeListener, removeListener, removeListener, removeListener, removeListener, reparent, setBackgroundColor, setBaseColor, setColormap, setDoubleBuffered, setDragDestination, setDragIcon, setDragIconPixbuf, setDragIconStock, setDragSource, setEvents, setExtensionEvents, setFont, setForegroundColor, setMinimumSize, setName, setNoDragDestination, setNoDragSource, setSensitive, setTextColor, shapeCombineMask, show, showAll, unHighlight, unHighlight`

Methods inherited from class org.gnu.gtk.GtkObject
`sink`

Methods inherited from class org.gnu.glib.GObject

`addEventHandler, addEventHandler, addEventHandler, addEventHandler, addEventHandler, addEventHandler, addListener, collect, freezeNotify, getBooleanProperty, getData, getDoubleProperty, getFloatProperty, getGObjectFromHandle, getIntProperty, getJavaObjectProperty, getLongProperty, getPixbufProperty, getProperty, getStringProperty, hasProperty, notify, removeEventHandler, removeListener, setBooleanProperty, setData, setDoubleProperty, setFloatProperty, setIntProperty, setJavaObjectProperty, setLongProperty, setPixbufProperty, setProperty, setStringProperty, thawNotify`

Methods inherited from class org.gnu.glib.Struct
`equals, getHandle, getNullHandle, hashCode`

Methods inherited from class java.lang.Object
`getClass, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Window

    public Window()

  Constructs a top-level Window. This is the same as calling `new Window(WindowType.TOPLEVEL)`

### Window

    public Window(WindowType windowType)

  Construct a new Window object.

Parameters:
  `windowType` - The type of window to create

### Window

    public Window(org.gnu.glib.Handle handle)

  Create a new Window with a handle to a native resource returned from a call to the native libraries.

Parameters:
  `handle` - The handle that represents a pointer to a native resource.

Method Detail

### getWindow

    public static Window getWindow(org.gnu.glib.Handle handle)

  Create a new Window with a handle to a native resource returned from a call to the native libraries.

  Parameters:
    `handle` - The handle that represents a pointer to a native resource.

### setTitle

    public void setTitle(java.lang.String title)

  Set the title for this Window object

  Parameters:
    `title` - A string containing the title for this Window

### getTitle

    public java.lang.String getTitle()

  Returns the title for the Window object

  Returns:
    A string containing the title.

### setResizable

    public void setResizable(boolean resizable)

  Sets whether the user can resize the window. Windows are user resizable by default.

  Parameters:
    `resizable` - Determines if the window can be resized.

### addAccelGroup

    public void addAccelGroup(AccelGroup accelGroup)

  Associate `accesGroup` with the window.

  Parameters:
    `accelGroup` - The AccelGroup to associate with this window.

### removeAccelGroup

    public void removeAccelGroup(AccelGroup accelGroup)

  Reverses the effect of `addAccelGroup`.

  Parameters:
    `accelGroup` - The AccelGroup to disassociate with this window.

### setModal

    public void setModal(boolean modal)

  Sets a window modal or non-modal.

  Parameters:
    `modal` - Indicates whether the window should be modal or not.

### setDefaultSize

    public void setDefaultSize(int width,
                               int height)

  Sets the default size for a Window. If a Window's natural size is larger than the default, the default will be ignored.

  Parameters:
    `width` - The width to set for the default size.
    `height` - the height to set for the default size.

### setGeometryHints

    public void setGeometryHints(Widget geometryWidget,
                                 Geometry geometry,
                                 WindowHints geomMask)

  This method sets up hints about how a Window can be resized by the user. You can set a minimum and maximum size, allowable resize increments, aspect ratios and more.

  Parameters:
    `geometryWidget` - The Widget the geometry hints will be applied to.
    `geometry` - The geometry information.
    `geomMask` - Mask indicating which fields should be paid attention to.

### setGravity

    public void setGravity(Gravity gravity)

  Window gravity defines the meaning of coordinates passed to `move()`.

  Parameters:
    `gravity` - The window gravity.

### getGravity

    public Gravity getGravity()

  Gets the value set by `setGravity()`.

  Returns:
    The Gravity for the Window.

### setPosition

    public void setPosition(WindowPosition position)

  Sets a position constraint for this window. If the old or new constraint is `WindowPosition.CENTER_ALWAYS`, this will also cause the window to be repositioned to satisfy the new constraint.

  Parameters:
    `position` - A position constraint.

### getFocusWidget

    public Widget getFocusWidget()

  Retrieves the current focused Widget within the window.

  Returns:
    The Widget that has focus.

### setFocusWidget

    public void setFocusWidget(Widget focus)

  If `focus` is not the current focus widget and is focusable, set it as the focus widget for the window.

  Parameters:
    `focus` - The widget to receive focus for the Window.

### setDefaultWidget

    public void setDefaultWidget(Widget defaultWidget)

  The default widget is the widget that is activated when the user presses the Enter key. This method will set defaultWidget to the default widget for the Window.

  Parameters:
    `defaultWidget` - The widget that should become the default widget.

### present

    public void present()

  Presents a window to the user. This may mean raising the window in the stack order, deiconifying it, moving it to the current desktop, and/or giving it the keyboard focus, possibly dependent on the user's platform, window manager, and preferences. If the Window is hidden it will also call `show` as well.

### iconify

    public void iconify()

  Asks to iconify the Window. Note that you shouldn't assume the Window is iconified afterward because other entities could deiconify it again or there may not be a window manager in which case iconification is not possible.

### deiconify

    public void deiconify()

  Asks to deiconify the specified Window.

### stick

    public void stick()

  Asks to stick the window. This means that the window appear on all user desktops. Note that you shouldn't assume that the Window is definately stuck after calling this method. Other entities could unstick the Window or the window manager may not support this feature.

### unstick

    public void unstick()

  Asks to unstick the window.

### maximize

    public void maximize()

  Asks to maximize the Window so it becomes full-screen.

### unmaximize

    public void unmaximize()

  Asks to unmaximize the Window so it becomes it normal size.

### setDecorated

    public void setDecorated(boolean setting)

  By default Windows are decorated by a titlebar, resize controls, etc. Some window managers allow you to disable these decorations, creating a borderless Window. This method allows you to change teh decorated setting for the Window.

  Parameters:
    `setting` - Determines if the Window should be decorated.

### getSize

    public Requisition getSize()

  Returns the current size of a Window. If the window is not onscreen, it returns the size that will be suggested to the window manager for the initial window size.

  Returns:
    The size of the Window.

### getPosition

    public Point getPosition()

  Retuns the current position of the window.

  Returns:
    The position of the window.

### move

    public void move(int x,
                     int y)

  Ask the window manager to move the Window to a given location. Window managers are free to ignore this request. Most window managers ignore the request for the initial window position but honor the request after the window has been shown.

  Parameters:
    `x` - The x coordinate for the move.
    `y` - The y coordinate for the move.

### resize

    public void resize(int width,
                       int height)

  Resizes the Window as if the user had done so, obeying the geometry constraints.

  Parameters:
    `width` - The width for the resized Window.
    `height` - The height for the resized Window.

### setIcon

    public void setIcon(Pixbuf icon)

  Sets up the icon representing a Window. The icon is used when the Window is minimized.

  Parameters:
    `icon` - The Icon to use for this Window.

### getIcon

    public Pixbuf getIcon()

  Returns the icon representing the Window.

### setIconList

    public void setIconList(Pixbuf[] icons)

  Sets up the icon representing a GtkWindow. The icon is used when the window is minimized (also known as iconified). Some window managers or desktop environments may also place it in the window frame, or display it in other contexts. setIconList allows you to pass in the same icon in several hand-drawn sizes. The list should contain the natural sizes your icon is available in; that is, don't scale the image before passing it. Scaling is postponed until the last minute, when the desired final size is known, to allow best quality. By passing several sizes, you may improve the final image quality of the icon, by reducing or eliminating automatic image scaling. Recommended sizes to provide: 16x16, 32x32, 48x48 at minimum, and larger images (64x64, 128x128) if you have them.

### getIconList

    public Pixbuf[] getIconList()

  Retrieves the list of icons set by setIconList(). The list is copied, but the reference count on each member won't be incremented.

### setSkipTaskbarHint

    public void setSkipTaskbarHint(boolean skipHint)

  Set to true to keep this window from appearing in the task bar.

  Parameters:
    `skipHint` -

### getSkipTaskbarHint

    public boolean getSkipTaskbarHint()

  Returns whether this window should appear in the task bar.

### setSkipPagerHint

    public void setSkipPagerHint(boolean skipHint)

  Set to true to keep the window from appearing in the pager.

  Parameters:
    `skipHint` -

### getSkipPagerHint

    public boolean getSkipPagerHint()

  Returns whether the window should appear in the pager.

### setAcceptFocus

    public void setAcceptFocus(boolean acceptFocus)

### getAcceptFocus

    public boolean getAcceptFocus()

### setScreen

    public void setScreen(Screen screen)

  Sets the Screen where the window is displayed; if the window is already mapped, it will be unmapped, and then remapped on the new screen.

  Parameters:
    `screen` - the new screen.

### getScreen

    public Screen getScreen()

  Returns the GdkScreen associated with this window.

  Overrides:
    `getScreen` in class `Widget`

### isActive

    public boolean isActive()

  Returns whether the window is part of the current active toplevel. (That is, the toplevel window receiving keystrokes.) The return value is TRUE if the window is active toplevel itself, but also if it is, say, a `Plug` embedded in the active toplevel. You might use this method if you wanted to draw a widget differently in an active window from a widget in an inactive window.

### hasToplevelFocus

    public boolean hasToplevelFocus()

  Returns whether the input focus is within this Window. For real toplevel windows, this is identical to `isActive()`, but for embedded windows, like `Plug`, the results will differ.

### setIconFromFile

    public boolean setIconFromFile(java.lang.String filename)

  Sets the icon for this window.

  Parameters:
    `filename` - the full path to the icon
  Returns:
    `true` if the icon was sucessfully set, `false` otherwise.

### setDefaultIconFromFile

    public static boolean setDefaultIconFromFile(java.lang.String filename)

  Sets an icon to be used as fallback for windows that haven't had setIconList() called on them from a file on disk.

  Parameters:
    `filename` - the path to the icon
  Returns:
    `true` if it was sucessfully set, `false` otherwise.
  See Also:
    `setIconName(String)`

### setDefaultIcon

    public static void setDefaultIcon(Pixbuf icon)

### setAutoStartupNotification

    public static void setAutoStartupNotification(boolean setting)

### fullscreen

    public void fullscreen()

### unfullscreen

    public void unfullscreen()

### setKeepAbove

    public void setKeepAbove(boolean setting)

### setKeepBelow

    public void setKeepBelow(boolean setting)

### setDefaultIconList

    public static void setDefaultIconList(Pixbuf[] icons)

  Sets up the icon representing a Window. The icon is used when the window is minimized (also known as iconified). Some window managers or desktop environments may also place it in the window frame, or display it in other contexts. This method allows you to pass in the same icon in several hand-drawn sizes. The list should contain the natural sizes your icon is available in; that is, don't scale the image before passing it to GTK+. Scaling is postponed until the last minute, when the desired final size is known, to allow best quality. By passing several sizes, you may improve the final image quality of the icon, by reducing or eliminating automatic image scaling. Recommended sizes to provide: 16x16, 32x32, 48x48 at minimum, and larger images (64x64, 128x128) if you have them. Note that this method sets the icon for all windows in your application in one go.

  Parameters:
    `icons` - the list of icons to use.

### getDefaultIconList

    public static Pixbuf[] getDefaultIconList()

  Gets the icons set by `setDefaultIconList`.

  Returns:
    the list of icons

### listToplevelWindows

    public static Window[] listToplevelWindows()

  Returns a list of all existing toplevel windows.

  Returns:
    the array containing the windows

### setFocusOnMap

    public void setFocusOnMap(boolean setting)

  Windows may set a hint asking the desktop environment not to receive the input focus when the window is mapped. This function sets this hint.

  Parameters:
    `setting` - TRUE to let this window receive input focus on map.

### getFocusOnMap

    public boolean getFocusOnMap()

  Gets the value set by `setFocusOnMap(boolean)`.

  Returns:
    TRUE if window should receive the input focus when mapped.

### setIconName

    public void setIconName(java.lang.String name)

  Sets the icon for the window from a named themed icon. See the docs for `IconTheme` for more details.

  Note that this has nothing to do with the WM_ICON_NAME property which is mentioned in the ICCCM.

  Parameters:
    `name` - The name of the themed icon.

### getIconName

    public java.lang.String getIconName()

  Returns the name of the themed icon for the window.

  Returns:
    The icon name or NULL if the window has no themed icon.

### setDefaultIconName

    public void setDefaultIconName(java.lang.String name)

  Sets an icon to be used as fallback for windows that haven't had `setIconList` called on them from a named themed icon.

  See Also:
    `setIconName(String)`

### getTransientParent

    public Window getTransientParent()

  Fetches the transient parent of this window.

  Returns:
    The transient parent for this window, or null if no transient parent has been set.
  See Also:
    `setTransientParent(Window)`

### setTransientParent

    public void setTransientParent(Window parent)

  Dialog windows should be set transient for the main application window they were spawned from. This allows window managers to, for example, keep the dialog on top of the main window, or center the dialog over the main window. On Windows, this method will put the child window on top of the parent, the same way the window manager would have done in X.

  Parameters:
    `parent` - Transient parent window.

### getType

    public static Type getType()

  Retrieve the runtime type used by the GLib library.

### destroy

    public void destroy()

  Destroys a window and releases its native resources. When a window is destroyed, it will break any references it holds to other objects and it will be removed from the list of toplevels. It is safe to call this method multiple times (the native resources will only be released once). However, no other methods on a window should be called after destroy is called. An ObjectDestroyedException is thrown if this takes place.

  Overrides:
    `destroy` in class `GtkObject`
  See Also:
    `ObjectDestroyedException`

### isDestroyed

    public boolean isDestroyed()

  Returns true if destroy has previously been called on this object.