Class Fox::FXWindow
In: rdoc-sources/FXWindow.rb
Parent: FXDrawable

Base class for all windows

Events

The following messages are sent by FXWindow to its target:

SEL_MAP:sent when the window is mapped to the screen; the message data is an FXEvent instance.
SEL_UNMAP:sent when the window is unmapped; the message data is an FXEvent instance.
SEL_CONFIGURE:sent when the window‘s size changes; the message data is an FXEvent instance.
SEL_ENTER:sent when the mouse cursor enters this window
SEL_LEAVE:sent when the mouse cursor leaves this window
SEL_FOCUSIN:sent when this window gains the focus
SEL_FOCUSOUT:sent when this window loses the focus
SEL_UPDATE:sent when this window needs an update
SEL_UNGRABBED:sent when this window loses the mouse grab (or capture)

For each of the following keyboard-related events, the message data is an FXEvent instance:

SEL_KEYPRESS:sent when a key is pressed
SEL_KEYRELEASE:sent when a key is released

For each of the following mouse-related events, the message data is an FXEvent instance:

SEL_MOTION:sent when the mouse moves
SEL_LEFTBUTTONPRESS:sent when the left mouse button goes down
SEL_LEFTBUTTONRELEASE:sent when the left mouse button goes up
SEL_MIDDLEBUTTONPRESS:sent when the middle mouse button goes down
SEL_MIDDLEBUTTONRELEASE:sent when the middle mouse button goes up
SEL_RIGHTBUTTONPRESS:sent when the right mouse button goes down
SEL_RIGHTBUTTONRELEASE:sent when the right mouse button goes up
SEL_MOUSEWHEEL:sent when the mouse wheel is scrolled

For each of the following selection-related events, the message data is an FXEvent instance:

SEL_SELECTION_GAINED:sent when this window acquires the selection
SEL_SELECTION_LOST:sent when this window loses the selection
SEL_SELECTION_REQUEST:sent when this window‘s selection is requested

For each of the following clipboard-related events, the message data is an FXEvent instance:

SEL_CLIPBOARD_GAINED:sent when this window acquires the clipboard
SEL_CLIPBOARD_LOST:sent when this window loses the clipboard
SEL_CLIPBOARD_REQUEST:sent when this window‘s clipboard data is requested

For each of the following drag-and-drop events, the message data is an FXEvent instance:

SEL_BEGINDRAG:sent at the beginning of a drag operation
SEL_DRAGGED:sent while stuff is being dragged around
SEL_ENDDRAG:sent at the end of a drag operation
SEL_DND_ENTER:drag-and-drop enter
SEL_DND_LEAVE:drag-and-drop leave
SEL_DND_MOTION:drag-and-drop motion
SEL_DND_DROP:drag-and-drop motion
SEL_DND_REQUEST:drag-and-drop request

Layout hints for child widgets

LAYOUT_NORMAL:Default layout mode
LAYOUT_SIDE_TOP:Pack on top side (default)
LAYOUT_SIDE_BOTTOM:Pack on bottom side
LAYOUT_SIDE_LEFT:Pack on left side
LAYOUT_SIDE_RIGHT:Pack on right side
LAYOUT_FILL_COLUMN:Matrix column is stretchable
LAYOUT_FILL_ROW:Matrix row is stretchable
LAYOUT_LEFT:Stick on left (default)
LAYOUT_RIGHT:Stick on right
LAYOUT_CENTER_X:Center horizontally
LAYOUT_FIX_X:X fixed
LAYOUT_TOP:Stick on top (default)
LAYOUT_BOTTOM:Stick on bottom
LAYOUT_CENTER_Y:Center vertically
LAYOUT_FIX_Y:Y fixed
LAYOUT_FIX_WIDTH:Width fixed
LAYOUT_FIX_HEIGHT:Height fixed
LAYOUT_MIN_WIDTH:Minimum width is the default
LAYOUT_MIN_HEIGHT:Minimum height is the default
LAYOUT_FILL_X:Stretch or shrink horizontally
LAYOUT_FILL_Y:Stretch or shrink vertically
+LAYOUT_FILL:Stretch or shrink in both directions
LAYOUT_EXPLICIT:Explicit placement
LAYOUT_DOCK_SAME:Dock on same galley, if it fits
LAYOUT_DOCK_NEXT:Dock on next galley

Frame border appearance styles (for subclasses)

FRAME_NONE:Default is no frame
FRAME_SUNKEN:Sunken border
FRAME_RAISED:Raised border
FRAME_THICK:Thick border
FRAME_GROOVE:A groove or etched-in border
FRAME_RIDGE:A ridge or embossed border
FRAME_LINE:Simple line border
FRAME_NORMAL:Regular raised/thick border

Packing style (for packers)

PACK_NORMAL:Default is each its own size
PACK_UNIFORM_HEIGHT:Uniform height
PACK_UNIFORM_WIDTH:Uniform width

Message IDs common to most windows

ID_NONE:x
ID_HIDE:x
ID_SHOW:x
ID_TOGGLESHOWN:x
ID_LOWER:x
ID_RAISE:x
ID_DELETE:x
ID_DISABLE:x
ID_ENABLE:x
ID_TOGGLEENABLED:x
ID_UNCHECK:x
ID_CHECK:x
ID_UNKNOWN:x
ID_UPDATE:x
ID_AUTOSCROLL:x
ID_HSCROLLED:x
ID_VSCROLLED:x
ID_SETVALUE:x
ID_SETINTVALUE:x
ID_SETREALVALUE:x
ID_SETSTRINGVALUE:x
ID_SETINTRANGE:x
ID_SETREALRANGE:x
ID_GETINTVALUE:x
ID_GETREALVALUE:x
ID_GETSTRINGVALUE:x
ID_GETINTRANGE:x
ID_GETREALRANGE:x
ID_QUERY_MENU:x
ID_HOTKEY:x
ID_ACCEL:x
ID_UNPOST:x
ID_POST:x
ID_MDI_TILEHORIZONTAL:x
ID_MDI_TILEVERTICAL:x
ID_MDI_CASCADE:x
ID_MDI_MAXIMIZE:x
ID_MDI_MINIMIZE:x
ID_MDI_RESTORE:x
ID_MDI_CLOSE:x
ID_MDI_WINDOW:x
ID_MDI_MENUWINDOW:x
ID_MDI_MENUMINIMIZE:x
ID_MDI_MENURESTORE:x
ID_MDI_MENUCLOSE:x
ID_MDI_NEXT:x
ID_MDI_PREV:x

Methods

acceptDrop   acquireClipboard   acquireSelection   active?   addHotKey   after?   before?   beginDrag   canFocus?   changeFocus   childAtIndex   childOf?   clearDragRectangle   clearShape   colorType   colorTypeName   commonAncestor   composeContext   composite?   contains?   containsChild?   create   createComposeContext   cursorPosition   default?   defaultHeight   defaultWidth   deleteType   deleteTypeName   destroy   destroyComposeContext   detach   didAccept   disable   doesSaveUnder?   dragging?   dropDisable   dropEnable   dropEnabled?   dropFinished   dropTarget?   enable   enabled?   endDrag   forceRefresh   getChildAt   getDNDData   getHeightForWidth   getWidthForHeight   grab   grabKeyboard   grabbed?   grabbedKeyboard?   handleDrag   hasClipboard?   hasFocus?   hasSelection?   height   height=   hide   imageType   inFocusChain?   indexOfChild   initial?   inquireDNDAction   inquireDNDTypes   killFocus   layout   lower   move   new   new   new   octetType   octetTypeName   offeredDNDType?   position   raiseWindow   recalc   releaseClipboard   releaseSelection   remHotKey   removeChild   repaint   repaint   reparent   resize   scroll   setCursorPosition   setDNDData   setDefault   setDragRectangle   setFocus   setInitial   setShape   shell?   show   shown?   stringType   textType   textTypeName   tr   translateCoordinatesFrom   translateCoordinatesTo   underCursor?   ungrab   ungrabKeyboard   update   update   urilistType   urilistTypeName   utf16Type   utf16TypeName   utf8Type   utf8TypeName   visible?   width   width=  

Attributes

accelTable  [RW]  The accelerator table for this window [FXAccelTable]
backColor  [RW]  Window background color [FXColor]
defaultCursor  [RW]  Default cursor for this window [FXCursor]
dragCursor  [RW]  Drag cursor for this window [FXCursor]
first  [R]  This window‘s first child window, if any [FXWindow]
focus  [R]  Currently focused child window, if any [FXWindow]
key  [RW]  Window key [Integer]
last  [R]  This window‘s last child window, if any [FXWindow]
layoutHints  [RW]  Layout hints for this window [Integer]
next  [R]  Next (sibling) window, if any [FXWindow]
numChildren  [R]  Number of child windows for this window [Integer]
owner  [R]  This window‘s owner window [FXWindow]
parent  [R]  This window‘s parent window [FXWindow]
prev  [R]  Previous (sibling) window, if any [FXWindow]
root  [R]  Root window [FXWindow]
selector  [RW]  Message identifier for this window [Integer]
shell  [R]  The shell window for this window [FXWindow]
target  [RW]  Message target object for this window [FXObject]
x  [RW]  This window‘s x-coordinate, in the parent‘s coordinate system [Integer]
y  [RW]  This window‘s y-coordinate, in the parent‘s coordinate system [Integer]

Public Class methods

Return true if sibling a comes after sibling b.

Return true if sibling a comes before sibling b.

Common DND type: Color

Common DND type name: Color

Return the common ancestor of window a and window b.

Common DND type: Delete request

Common DND type name: Delete request

Common DND type: Clipboard image type (pre-registered)

Return an initialized FXWindow instance, for a child window.

Parameters:

p:the parent window for this window [FXComposite]
opts:window options [Integer]
x:initial x-position [Integer]
y:initial y-position [Integer]
width:initial width [Integer]
height:initial height [Integer]

Return an initialized FXWindow instance, for a shell window.

Parameters:

a:an application instance [FXApp]
vis:the visual to use for this window [FXVisual]

Return an initialized FXWindow instance, for an owned window.

Parameters:

a:an application instance [FXApp]
own:the owner window for this window [FXWindow]
opts:window options [Integer]
x:initial x-position [Integer]
y:initial y-position [Integer]
width:initial width [Integer]
height:initial height [Integer]

Common DND type: Raw octet stream

Common DND type name: Raw octet stream

Common DND type: Clipboard text type (pre-registered)

Common DND type: ASCII text request

Common DND type name: ASCII text

Common DND type: URI List

Common DND type name: URI List

Common DND type: UTF-16 text request

Common DND type name: UTF-16 text request

Common DND type: UTF-8 text request

Common DND type name: UTF-8 text request

Public Instance methods

When being dragged over, indicate acceptance or rejection of the dragged data. The action is a constant indicating the suggested drag action, one of:

DRAG_REJECT:reject all drop actions
DRAG_ACCEPT:accept any drop action
DRAG_COPY:accept this drop as a copy
DRAG_MOVE:accept this drop as a move
DRAG_LINK:accept this drop as a link
DRAG_PRIVATE:private

Try to acquire the clipboard, given an array of drag types. Returns true on success.

Try to acquire the primary selection, given an array of drag types. Returns true on success.

Return true if this window is active.

Add this hot key to the closest ancestor‘s accelerator table.

Initiate a drag operation with an array of previously registered drag types

Return true if this window is a control capable of receiving the focus.

Notification that focus moved to a new child window.

Return the child window at specified index. Raises IndexError if index is out of range.

Return true if specified window is ancestor of this window.

When being dragged over, indicate we want to receive SEL_DND_MOTION messages every time the cursor moves

Clear window shape

Return compose context (an FXComposeContext).

Return true if this window is a composite.

Return true if this window logically contains the given point (parentX, parentY).

Return true if this window contains child in its subtree.

Create all of the server-side resources for this window.

Create compose context.

Return the cursor position and mouse button-state as a three-element array.

Return true if this is the default window.

Return the default height of this window

Return the default width of this window

Destroy the server-side resources for this window.

Destroy compose context.

Detach the server-side resources for this window.

Returns DRAG_REJECT when the drop target would not accept the drop; otherwise indicates acceptance by returning one of DRAG_ACCEPT, DRAG_COPY, DRAG_MOVE or DRAG_LINK.

Disable the window from receiving mouse and keyboard events.

Return true if this window does save-unders.

Return true if a drag operation has been initiated from this window

Disable this window from receiving drops

Enable this window to receive drops

Return true if this window is able to receive drops

Sent by the drop target in response to SEL_DND_DROP. The drag action should be the same as the action the drop target reported to the drag source in reponse to the SEL_DND_MOTION message. This function notifies the drag source that its part of the drop transaction is finished, and that it is free to release any resources involved in the drag operation. Calling dropFinished is advisable in cases where the drop target needs to perform complex processing on the data received from the drag source, prior to returning from the SEL_DND_DROP message handler.

Return true if this window is the target of a drop

Enable the window to receive mouse and keyboard events.

Return true if this window is able to receive mouse and keyboard events.

Terminate the drag operation with or without actually dropping the data. Return the action performed by the target.

Generate a SEL_UPDATE message for the window and its children.

Return the child window at specified coordinates (x, y)

Get DND data; the caller becomes the owner of the array. The origin is a constant indicating the origin of the data, one of FROM_SELECTION, FROM_CLIPBOARD or FROM_DRAGNDROP. The type is a previously registered drag type.

Grab the mouse to this window; future mouse events will be reported to this window even while the cursor goes outside of this window

Grab keyboard device

Return true if the window has been grabbed

Return true if active grab is in effect

When dragging, inform the drop target of the new position and the drag action. The action is a constant, one of:

DRAG_REJECT:reject all drop actions
DRAG_ACCEPT:accept any drop action
DRAG_COPY:accept this drop as a copy
DRAG_MOVE:accept this drop as a move
DRAG_LINK:accept this drop as a link
DRAG_PRIVATE:private

Return true if this window owns the clipboard

Return true if this window has the focus.

Return true if this window owns the primary selection

Return the window height (in pixels).

Set the window height; and flag the widget as being in need of layout by its parent. This does not immediately update the server- side representation of the widget.

Hide this window

Return true if this window is in the focus chain.

Return the index (starting from zero) of the specified child window, or -1 if the window is not a child of this window.

Return true if this is the initial default window.

When being dragged over, return the drag action

When being dragged over, inquire the drag types being offered. The origin is a constant indicating the origin of the data, one of FROM_SELECTION, FROM_CLIPBOARD or FROM_DRAGNDROP. Returns an array of drag types.

Remove the focus from this window.

Perform layout immediately.

Lower this window to the bottom of the stacking order.

Move the window immediately, in the parent‘s coordinate system. Update the server representation as well if the window is realized. Perform layout of the children when necessary.

When being dragged over, return true if we are offered the given drag type. The origin is a constant indicating the origin of the data, one of FROM_SELECTION, FROM_CLIPBOARD or FROM_DRAGNDROP. The type is a previously registered drag type.

Move and resize the window immediately, in the parent‘s coordinate system. Update the server representation as well if the window is realized. Perform layout of the children when necessary.

Raise this window to the top of the stacking order.

Mark this window‘s layout as dirty

Release the clipboard. Returns true on success.

Release the primary selection. Returns true on success.

Remove this hot key from the closest ancestor‘s accelerator table.

Remove specified child window

If marked but not yet painted, paint the entire window

Process any outstanding repaint messages immediately, for the given rectangle

Reparent this window under new father window, before other sibling..

Resize the window to the specified width and height immediately, updating the server representation as well, if the window was realized. Perform layout of the children when necessary.

Scroll rectangle (x, y, w, h) by a shift of (dx, dy)

Warp the cursor to the new position (x, y).

Set DND data; ownership is transferred to the system. The origin is a constant indicating the origin of the data, one of FROM_SELECTION, FROM_CLIPBOARD or FROM_DRAGNDROP. The type is a previously registered drag type.

This changes the default window which responds to the Enter key in a dialog. If enable is true, this window becomes the default window; when enable is false, this window will no longer be the default window. Finally, when enable is MAYBE, the default window will revert to the initial default window.

When being dragged over, indicate that no further SEL_DND_MOTION messages are required while the cursor is inside the given rectangle

Move the focus to this window.

Make this window the initial default window.

Set window shape, where shape is either an FXRegion, FXBitmap or FXIcon instance.

Return true if this window is a shell window.

Show this window

Return true if this window is shown.

Translate message for localization; using the current FXTranslator, an attempt is made to translate the given message into the current language. An optional hint may be passed to break any ties in case more than one tranlation is possible for the given message text. In addition, the name of the widget is passed as context name so that controls in a single dialog may be grouped together.

Translate coordinates (fromX, fromY) from fromWindow‘s coordinate system to this window‘s coordinate system. Returns a two-element array containing the coordinates in this window‘s coordinate system.

Translate coordinates (fromX, fromY) from this window‘s coordinate system to toWindow‘s coordinate system. Returns a two-element array containing the coordinates in toWindow‘s coordinate system.

Return true if this window is under the cursor

Release the mouse grab

Ungrab keyboard device

Mark the entire window client area dirty.

Mark the specified rectangle dirty

visible?()

Alias for shown?

Return the window width (in pixels).

Set the window width; and flag the widget as being in need of layout by its parent. This does not immediately update the server- side representation of the widget.

[Validate]