Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members

FX::FXMDIChild Class Reference

The MDI child window contains the application work area in a Multiple Document Interface application. More...

#include <FXMDIChild.h>

Inheritance diagram for FX::FXMDIChild:
FX::FXComposite FX::FXWindow FX::FXDrawable FX::FXId FX::FXObject

List of all members.

Public Member Functions

long onPaint (FXObject *, FXSelector, void *)
long onEnter (FXObject *, FXSelector, void *)
long onLeave (FXObject *, FXSelector, void *)
long onFocusSelf (FXObject *, FXSelector, void *)
long onFocusIn (FXObject *, FXSelector, void *)
long onFocusOut (FXObject *, FXSelector, void *)
long onRightBtnPress (FXObject *, FXSelector, void *)
long onRightBtnRelease (FXObject *, FXSelector, void *)
long onLeftBtnPress (FXObject *, FXSelector, void *)
long onLeftBtnRelease (FXObject *, FXSelector, void *)
long onMiddleBtnPress (FXObject *, FXSelector, void *)
long onMiddleBtnRelease (FXObject *, FXSelector, void *)
long onMotion (FXObject *, FXSelector, void *)
long onSelected (FXObject *, FXSelector, void *)
long onDeselected (FXObject *, FXSelector, void *)
long onCmdClose (FXObject *, FXSelector, void *)
long onUpdClose (FXObject *, FXSelector, void *)
long onCmdRestore (FXObject *, FXSelector, void *)
long onUpdRestore (FXObject *, FXSelector, void *)
long onUpdMaximize (FXObject *, FXSelector, void *)
long onUpdMinimize (FXObject *, FXSelector, void *)
long onCmdMaximize (FXObject *, FXSelector, void *)
long onCmdMinimize (FXObject *, FXSelector, void *)
long onUpdWindow (FXObject *, FXSelector, void *)
long onUpdMenuRestore (FXObject *, FXSelector, void *)
long onUpdMenuMinimize (FXObject *, FXSelector, void *)
long onUpdMenuClose (FXObject *, FXSelector, void *)
long onUpdMenuWindow (FXObject *, FXSelector, void *)
long onCmdSetStringValue (FXObject *, FXSelector, void *)
long onCmdGetStringValue (FXObject *, FXSelector, void *)
long onCmdSetIconValue (FXObject *, FXSelector, void *)
long onCmdGetIconValue (FXObject *, FXSelector, void *)
virtual long onDefault (FXObject *, FXSelector, void *)
 Called for unhandled messages.
 FXMDIChild (FXMDIClient *p, const FXString &name, FXIcon *ic=NULL, FXPopup *pup=NULL, FXuint opts=0, FXint x=0, FXint y=0, FXint w=0, FXint h=0)
 Construct MDI Child window with given name and icon.
virtual void create ()
 Create window.
virtual void detach ()
 Detach window.
virtual void layout ()
 Perform layout.
virtual FXint getDefaultWidth ()
 Return the default width of this window.
virtual FXint getDefaultHeight ()
 Return the default height of this window.
virtual void setFocus ()
 Move the focus to this window.
virtual FXbool canFocus () const
 MDI Child can receive focus.
virtual void move (FXint x, FXint y)
 Move this window to the specified position in the parent's coordinates.
virtual void resize (FXint w, FXint h)
 Resize this window to the specified width and height.
virtual void position (FXint x, FXint y, FXint w, FXint h)
 Move and resize this window in the parent's coordinates.
void setNormalX (FXint x)
 Change normal (restored) position.
void setNormalY (FXint y)
void setNormalWidth (FXint w)
void setNormalHeight (FXint h)
FXint getNormalX () const
 Return normal (restored) position.
FXint getNormalY () const
FXint getNormalWidth () const
FXint getNormalHeight () const
void setIconX (FXint x)
 Change iconified position.
void setIconY (FXint y)
void setIconWidth (FXint w)
void setIconHeight (FXint h)
FXint getIconX () const
 Return iconified position.
FXint getIconY () const
FXint getIconWidth () const
FXint getIconHeight () const
FXWindowcontentWindow () const
 Return content window.
void setTitle (const FXString &name)
 Change MDI Child's title.
FXString getTitle () const
 Get current title.
FXColor getHiliteColor () const
 Get colors.
FXColor getShadowColor () const
FXColor getBaseColor () const
FXColor getBorderColor () const
FXColor getTitleColor () const
FXColor getTitleBackColor () const
void setHiliteColor (FXColor clr)
 Change colors.
void setShadowColor (FXColor clr)
void setBaseColor (FXColor clr)
void setBorderColor (FXColor clr)
void setTitleColor (FXColor clr)
void setTitleBackColor (FXColor clr)
virtual FXbool restore (FXbool notify=false)
 Restore MDI window to normal, return true if restored.
virtual FXbool maximize (FXbool notify=false)
 Maximize MDI window, return true if maximized.
virtual FXbool minimize (FXbool notify=false)
 Minimize/iconify MDI window, return true if minimized.
virtual FXbool close (FXbool notify=false)
 Close MDI window, return true if actually closed.
FXbool isMaximized () const
 Return true if maximized.
FXbool isMinimized () const
 Return true if minimized.
FXIcongetIcon () const
 Get window icon.
void setIcon (FXIcon *icon)
 Set window icon.
FXPopupgetMenu () const
 Get window menu.
void setMenu (FXPopup *menu)
 Set window menu.
void setTracking (FXbool tracking=true)
 Set tracking instead of just outline.
FXbool getTracking () const
 Return true if tracking.
void setFont (FXFont *fnt)
 Set title font.
FXFontgetFont () const
 Get title font.
virtual void save (FXStream &store) const
 Save to stream.
virtual void load (FXStream &store)
 Load from stream.
virtual ~FXMDIChild ()
 Destroy.
- Public Member Functions inherited from FX::FXComposite
long onKeyPress (FXObject *, FXSelector, void *)
long onKeyRelease (FXObject *, FXSelector, void *)
long onFocusNext (FXObject *, FXSelector, void *)
long onFocusPrev (FXObject *, FXSelector, void *)
long onCmdUpdate (FXObject *, FXSelector, void *)
 FXComposite (FXComposite *p, FXuint opts=0, FXint x=0, FXint y=0, FXint w=0, FXint h=0)
 Constructor.
virtual void destroy ()
 Destroy server-side resources.
FXint maxChildWidth () const
 Return the width of the widest child window.
FXint maxChildHeight () const
 Return the height of the tallest child window.
virtual FXbool isComposite () const
 Overrides this virtual function to return true.
virtual ~FXComposite ()
 Destructor.
- Public Member Functions inherited from FX::FXWindow
long onMap (FXObject *, FXSelector, void *)
long onUnmap (FXObject *, FXSelector, void *)
long onConfigure (FXObject *, FXSelector, void *)
long onUpdate (FXObject *, FXSelector, void *)
long onMouseWheel (FXObject *, FXSelector, void *)
long onSpaceBallMotion (FXObject *, FXSelector, void *)
long onSpaceBallButtonPress (FXObject *, FXSelector, void *)
long onSpaceBallButtonRelease (FXObject *, FXSelector, void *)
long onBeginDrag (FXObject *, FXSelector, void *)
long onEndDrag (FXObject *, FXSelector, void *)
long onDragged (FXObject *, FXSelector, void *)
long onUngrabbed (FXObject *, FXSelector, void *)
long onDestroy (FXObject *, FXSelector, void *)
long onSelectionLost (FXObject *, FXSelector, void *)
long onSelectionGained (FXObject *, FXSelector, void *)
long onSelectionRequest (FXObject *, FXSelector, void *)
long onClipboardLost (FXObject *, FXSelector, void *)
long onClipboardGained (FXObject *, FXSelector, void *)
long onClipboardRequest (FXObject *, FXSelector, void *)
long onDNDEnter (FXObject *, FXSelector, void *)
long onDNDLeave (FXObject *, FXSelector, void *)
long onDNDMotion (FXObject *, FXSelector, void *)
long onDNDDrop (FXObject *, FXSelector, void *)
long onDNDRequest (FXObject *, FXSelector, void *)
long onQueryHelp (FXObject *, FXSelector, void *)
long onQueryTip (FXObject *, FXSelector, void *)
long onCmdShow (FXObject *, FXSelector, void *)
long onCmdHide (FXObject *, FXSelector, void *)
long onUpdToggleShown (FXObject *, FXSelector, void *)
long onCmdToggleShown (FXObject *, FXSelector, void *)
long onCmdRaise (FXObject *, FXSelector, void *)
long onCmdLower (FXObject *, FXSelector, void *)
long onCmdEnable (FXObject *, FXSelector, void *)
long onCmdDisable (FXObject *, FXSelector, void *)
long onUpdToggleEnabled (FXObject *, FXSelector, void *)
long onCmdToggleEnabled (FXObject *, FXSelector, void *)
long onUpdYes (FXObject *, FXSelector, void *)
long onCmdDelete (FXObject *, FXSelector, void *)
 FXWindow (FXComposite *p, FXuint opts=0, FXint x=0, FXint y=0, FXint w=0, FXint h=0)
 Constructor.
FXWindowgetParent () const
 Return a pointer to the parent window.
FXWindowgetOwner () const
 Return a pointer to the owner window.
FXWindowgetShell () const
 Return a pointer to the shell window.
FXWindowgetRoot () const
 Return a pointer to the root window.
FXWindowgetNext () const
 Return a pointer to the next (sibling) window, if any.
FXWindowgetPrev () const
 Return a pointer to the previous (sibling) window , if any.
FXWindowgetFirst () const
 Return a pointer to this window's first child window , if any.
FXWindowgetLast () const
 Return a pointer to this window's last child window, if any.
FXWindowgetFocus () const
 Return a pointer to the currently focused child window.
virtual WindowClass getWindowClass () const
 Get window class.
void setKey (FXuint k)
 Change window key.
FXuint getKey () const
 Return window key.
FXWindowgetChildWithKey (FXuint k) const
 Return child window with given window key.
void setTarget (FXObject *t)
 Set the message target object for this window.
FXObjectgetTarget () const
 Get the message target object for this window, if any.
void setSelector (FXSelector sel)
 Set the message identifier for this window.
FXSelector getSelector () const
 Get the message identifier for this window.
FXint getX () const
 Get this window's x-coordinate, in the parent's coordinate system.
FXint getY () const
 Get this window's y-coordinate, in the parent's coordinate system.
virtual FXint getWidthForHeight (FXint givenheight)
 Return width for given height.
virtual FXint getHeightForWidth (FXint givenwidth)
 Return height for given width.
void setX (FXint x)
 Set this window's x-coordinate, in the parent's coordinate system.
void setY (FXint y)
 Set this window's y-coordinate, in the parent's coordinate system.
void setWidth (FXint w)
 Set the window width; and flag the widget as being in need of layout by its parent.
void setHeight (FXint h)
 Set the window height; and flag the widget as being in need of layout by its parent.
void setLayoutHints (FXuint lout)
 Set layout hints for this window.
FXuint getLayoutHints () const
 Get layout hints for this window.
FXAccelTablegetAccelTable () const
 Return a pointer to the accelerator table.
void setAccelTable (FXAccelTable *acceltable)
 Set the accelerator table.
void addHotKey (FXHotKey code)
 Add a hot key.
void remHotKey (FXHotKey code)
 Remove a hot key.
void setHelpTag (const FXString &text)
 Change help tag for this widget.
const FXStringgetHelpTag () const
 Get the help tag for this widget.
FXbool isShell () const
 Return true if window is a shell window.
FXbool isOwnerOf (const FXWindow *window) const
 Return true if specified window is owned by this window.
FXbool isChildOf (const FXWindow *window) const
 Return true if specified window is ancestor of this window.
FXbool containsChild (const FXWindow *child) const
 Return true if this window contains child in its subtree.
FXWindowgetChildAt (FXint x, FXint y) const
 Return the child window at specified coordinates.
FXint numChildren () const
 Return the number of child windows for this window.
FXint indexOfChild (const FXWindow *window) const
 Return the index (starting from zero) of the specified child window, or -1 if the window is not a child or NULL.
FXWindowchildAtIndex (FXint index) const
 Return the child window at specified index, or NULL if the index is negative or out of range.
FXComposeContextgetComposeContext () const
 Return compose context.
void createComposeContext ()
 Create compose context.
void destroyComposeContext ()
 Destroy compose context.
FXbool cursorShown () const
 Is cursor shown.
void showCursor (FXbool flag=true)
 Show or hide the cursor.
void setDefaultCursor (FXCursor *cur)
 Set the default cursor for this window.
FXCursorgetDefaultCursor () const
 Return the default cursor for this window.
void setDragCursor (FXCursor *cur)
 Set the drag cursor for this window.
FXCursorgetDragCursor () const
 Return the drag cursor for this window.
FXbool getCursorPosition (FXint &x, FXint &y, FXuint &buttons) const
 Return the cursor position and mouse button-state.
FXbool setCursorPosition (FXint x, FXint y)
 Warp the cursor to the new position.
FXbool isActive () const
 Return true if the window is active.
FXbool hasFocus () const
 Return true if this window has the focus.
FXbool inFocusChain () const
 Return true if this window is in focus chain.
virtual void killFocus ()
 Remove the focus from this window.
virtual void changeFocus (FXWindow *child)
 Notification that focus moved to new child.
FXbool isDefault () const
 Return true if this is the default window.
virtual void setDefault (FXuchar flag=true)
 This changes the default window which responds to the Return key in a dialog.
FXWindowfindDefault () const
 Find default window among this window's children.
FXbool isInitial () const
 Return true if this is the initial default window.
void setInitial (FXbool flag=true)
 Make this window the initial default window.
FXWindowfindInitial () const
 Find inital default window among this window's children.
FXbool isEnabled () const
 Return true if this window is able to receive mouse and keyboard events.
virtual void enable ()
 Enable the window to receive mouse and keyboard events.
virtual void disable ()
 Disable the window from receiving mouse and keyboard events.
virtual void attach (FXID w)
 Attach foreign window handle to this window.
virtual void setShape (const FXRegion &region)
 Set window shape by means of region.
virtual void setShape (FXBitmap *bitmap)
 Set window shape by means of bitmap.
virtual void setShape (FXIcon *icon)
 Set window shape by means of icon.
virtual void clearShape ()
 Clear window shape.
virtual void raise ()
 Raise this window to the top of the stacking order.
virtual void lower ()
 Lower this window to the bottom of the stacking order.
virtual void recalc ()
 Mark this window's layout as dirty for later layout.
void forceRefresh ()
 Generate a SEL_UPDATE message for the window and its children.
virtual void reparent (FXWindow *father, FXWindow *other=NULL)
 Reparent this window under new father before other.
void scroll (FXint x, FXint y, FXint w, FXint h, FXint dx, FXint dy) const
 Scroll rectangle x,y,w,h by a shift of dx,dy.
void update (FXint x, FXint y, FXint w, FXint h) const
 Mark the specified rectangle to be repainted later.
void update () const
 Mark the entire window to be repainted later.
void repaint (FXint x, FXint y, FXint w, FXint h) const
 Process any outstanding repaint messages immediately, for the given rectangle.
void repaint () const
 Process any outstanding repaint messages immediately.
FXbool grabbed () const
 Return true if the window has been grabbed.
void grab ()
 Grab the mouse to this window; future mouse events will be reported to this window even while the cursor goes outside of this window.
void ungrab ()
 Release the mouse grab.
FXbool grabbedKeyboard () const
 Return true if active grab is in effect.
void grabKeyboard ()
 Grab keyboard device.
void ungrabKeyboard ()
 Ungrab keyboard device.
FXbool shown () const
 Return true if the window is shown.
virtual void show ()
 Show this window.
virtual void hide ()
 Hide this window.
FXbool underCursor () const
 Return true if the window is under the cursor.
FXbool hasSelection () const
 Return true if this window owns the primary selection.
FXbool acquireSelection (const FXDragType *types, FXuint numtypes)
 Try to acquire the primary selection, given a list of drag types.
FXbool releaseSelection ()
 Release the primary selection.
FXbool hasClipboard () const
 Return true if this window owns the clipboard.
FXbool acquireClipboard (const FXDragType *types, FXuint numtypes)
 Try to acquire the clipboard, given a list of drag types.
FXbool releaseClipboard ()
 Release the clipboard.
FXbool isDropEnabled () const
 Return true if this window is able to receive drops.
virtual void dropEnable ()
 Enable this window to receive drops.
virtual void dropDisable ()
 Disable this window from receiving drops.
FXbool isDragging () const
 Return true if a drag operaion has been initiated from this window.
FXbool beginDrag (const FXDragType *types, FXuint numtypes)
 Initiate a drag operation with a list of previously registered drag types.
FXbool handleDrag (FXint x, FXint y, FXDragAction action=DRAG_COPY)
 When dragging, inform the drop-target of the new position and the drag action.
FXDragAction endDrag (FXbool drop=true)
 Terminate the drag operation with or without actually dropping the data Returns the action performed by the target.
FXbool isDropTarget () const
 Return true if this window is the target of a drop.
void setDragRectangle (FXint x, FXint y, FXint w, FXint h, FXbool wantupdates=true) const
 When being dragged over, indicate that no further SEL_DND_MOTION messages are required while the cursor is inside the given rectangle.
void clearDragRectangle () const
 When being dragged over, indicate we want to receive SEL_DND_MOTION messages every time the cursor moves.
void acceptDrop (FXDragAction action=DRAG_ACCEPT) const
 When being dragged over, indicate acceptance or rejection of the dragged data.
FXDragAction didAccept () const
 The target accepted our drop.
void dropFinished (FXDragAction action=DRAG_REJECT) const
 Sent by the drop target in response to SEL_DND_DROP.
FXbool inquireDNDTypes (FXDNDOrigin origin, FXDragType *&types, FXuint &numtypes) const
 When being dragged over, inquire the drag types which are being offered.
FXbool offeredDNDType (FXDNDOrigin origin, FXDragType type) const
 When being dragged over, return true if we are offered the given drag type.
FXDragAction inquireDNDAction () const
 When being dragged over, return the drag action.
FXbool setDNDData (FXDNDOrigin origin, FXDragType type, FXuchar *data, FXuint size) const
 Set DND data; the array must be allocated with allocElms() and ownership is transferred to the system.
FXbool setDNDData (FXDNDOrigin origin, FXDragType type, const FXString &string) const
 Set DND data from string value.
FXbool getDNDData (FXDNDOrigin origin, FXDragType type, FXuchar *&data, FXuint &size) const
 Get DND data; the caller becomes the owner of the array and must free it with freeElms().
FXbool getDNDData (FXDNDOrigin origin, FXDragType type, FXString &string) const
 Get DND data into string value.
virtual FXbool contains (FXint parentx, FXint parenty) const
 Return true if window logically contains the given point.
void translateCoordinatesFrom (FXint &tox, FXint &toy, const FXWindow *fromwindow, FXint fromx, FXint fromy) const
 Translate coordinates from fromwindow's coordinate space to this window's coordinate space.
void translateCoordinatesTo (FXint &tox, FXint &toy, const FXWindow *towindow, FXint fromx, FXint fromy) const
 Translate coordinates from this window's coordinate space to towindow's coordinate space.
virtual void setBackColor (FXColor clr)
 Set window background color.
FXColor getBackColor () const
 Get background color.
virtual FXbool doesSaveUnder () const
 Does save-unders.
virtual const FXchar * tr (const FXchar *text, const FXchar *hint=NULL, FXint count=-1) const FX_FORMAT(2)
 Translate message for localization; using the current FXTranslator, an attempt is made to translate the given message into the current language.
virtual ~FXWindow ()
 Destroy window.
- Public Member Functions inherited from FX::FXDrawable
FXVisualgetVisual () const
 Get the visual.
FXint getWidth () const
 Width of drawable.
FXint getHeight () const
 Height of drawable.
void setVisual (FXVisual *vis)
 Change visual.
virtual ~FXDrawable ()
 Cleanup.
- Public Member Functions inherited from FX::FXId
FXAppgetApp () const
 Get application.
FXID id () const
 Get XID handle.
void setUserData (FXptr ptr)
 Set user data pointer.
FXptr getUserData () const
 Get user data pointer.
virtual ~FXId ()
 Destructor.
- Public Member Functions inherited from FX::FXObject
const FXchar * getClassName () const
 Get class name of some object.
FXbool isMemberOf (const FXMetaClass *metaclass) const
 Check if object is member of metaclass.
virtual long tryHandle (FXObject *sender, FXSelector sel, void *ptr)
 Try handle message safely, catching certain exceptions.
virtual ~FXObject ()
 Virtual destructor.

Protected Types

enum  {
  DRAG_NONE = 0, DRAG_TOP = 1, DRAG_BOTTOM = 2, DRAG_LEFT = 4,
  DRAG_RIGHT = 8, DRAG_TOPLEFT = (DRAG_TOP|DRAG_LEFT), DRAG_TOPRIGHT = (DRAG_TOP|DRAG_RIGHT), DRAG_BOTTOMLEFT = (DRAG_BOTTOM|DRAG_LEFT),
  DRAG_BOTTOMRIGHT = (DRAG_BOTTOM|DRAG_RIGHT), DRAG_INVERTED = 16, DRAG_TITLE = 32
}

Protected Member Functions

void drawRubberBox (FXint x, FXint y, FXint w, FXint h)
void animateRectangles (FXint ox, FXint oy, FXint ow, FXint oh, FXint nx, FXint ny, FXint nw, FXint nh)
FXuchar where (FXint x, FXint y) const
void changeCursor (FXuchar which)
- Protected Member Functions inherited from FX::FXComposite
 FXComposite (FXApp *a, FXVisual *vis)
 FXComposite (FXApp *a, FXWindow *own, FXuint opts, FXint x, FXint y, FXint w, FXint h)
- Protected Member Functions inherited from FX::FXWindow
 FXWindow (FXApp *a, FXVisual *vis)
 FXWindow (FXApp *a, FXWindow *own, FXuint opts, FXint x, FXint y, FXint w, FXint h)
virtual FXbool doesOverrideRedirect () const
void addColormapWindows ()
void remColormapWindows ()
- Protected Member Functions inherited from FX::FXDrawable
 FXDrawable (FXApp *a, FXint w, FXint h)
- Protected Member Functions inherited from FX::FXId
 FXId (FXApp *a)

Protected Attributes

FXString title
FXMenuButtonwindowbtn
FXButtonminimizebtn
FXButtonrestorebtn
FXButtonmaximizebtn
FXButtondeletebtn
FXFontfont
FXColor baseColor
FXColor hiliteColor
FXColor shadowColor
FXColor borderColor
FXColor titleColor
FXColor titleBackColor
FXint iconPosX
FXint iconPosY
FXint iconWidth
FXint iconHeight
FXint normalPosX
FXint normalPosY
FXint normalWidth
FXint normalHeight
FXint spotx
FXint spoty
FXint xoff
FXint yoff
FXint newx
FXint newy
FXint neww
FXint newh
FXuchar mode

Detailed Description

The MDI child window contains the application work area in a Multiple Document Interface application.

GUI Controls are connected to the MDI child via delegation through the MDI client, which forwards messages it receives to the active MDI child. The MDI child itself tries to further delegate messages to its single content window, and if not handled there, to its target object. When the MDI child is maximized, it sends a SEL_MAXIMIZE message; when the MDI child is minimized, it sends a SEL_MINIMIZE message. When it is restored, it sends a SEL_RESTORE message to its target. The MDI child also notifies its target when it becomes the active MDI child, via the SEL_SELECTED message. The void* in the SEL_SELECTED message refers to the previously active MDI child, if any. When an MDI child ceases to be the active window, a SEL_DESELECTED message is sent to its target, and the void* in the SEL_DESELECTED message refers to the newly activated MDI child, if any. Thus, interception of SEL_SELECTED and SEL_DESELECTED allows the target object to determine whether the user switched between MDI windows of the same document (target) or merely between two MDI windows belonging to the same document. When the MDI child is closed, it first sends a SEL_DESELECTED to its target to notify it that it is no longer the active window; next, it sends a SEL_CLOSE message to its target to allow the target to clean up (for example, destroy the document if this was the last window of the document). The target can prevent the MDI child window from being closed by returning 1 from the SEL_CLOSE message handler (objection). If the target returns 0 or does not handle the SEL_CLOSE message, the MDI child will be closed. If the MDI child windows was not closed, the child window will be reselected as the currently active MDI child widget, and a SEL_SELECTED will be sent to its target to notify it of this fact. The SEL_UPDATE message can be used to modify the MDI child's title (via ID_SETSTRINGVALUE), and window icon (via ID_SETICONVALUE).


The documentation for this class was generated from the following file:

Copyright © 1997-2016 Jeroen van der Zijp