Class | Fox::FXMDIClient |
In: |
rdoc-sources/FXMDIClient.rb
|
Parent: | FXComposite |
The MDI client window manages a number of MDI child windows in a multiple-document interface (MDI) application. MDI child windows usually receive messages from the GUI controls by delegation via the MDI client. This is accomplished by making the MDI client window the target for most GUI controls. The MDI client filters out messages intented for itself, and delegates the remaining messages to its currently active MDI child, if any. If you use the auto-gray or auto-hide feature available in some GUI controls, these controls can be automatically grayed out or hidden when there is no active MDI child. When delegating messages via MDI client to MDI child windows of different types, care should be taken that message ID‘s do not overlap, so that all message ID‘s only map to the intented handlers no matter which MDI child window type is active. The MDI client sends a SEL_CHANGED message to its target when the active MDI child is switched, with the void # pointer refering to the new MDI child. A MDI Window selection dialog can be brought up through the ID_MDI_OVER_X messages; a menu button connected to the MDI client with the ID_MDI_OVER_X message will be automatically grayed out if there are less than X MDI child windows.
The following messages are sent by FXMDIClient to its target:
SEL_CHANGED: | sent when the active child changes; the message data is a reference to the new active child window (or nil if there is none) |
activeChild | [RW] | Active MDI child window, or nil if none [FXMDIChild]. |
cascadeX | [RW] | Cascade offset X [Integer] |
cascadeY | [RW] | Cascade offset Y [Integer] |
Pass message to all MDI Child windows whose target is document, stopping when one of the MDI windows fails to handle the message.
Pass message once to all MDI windows with the same document, stopping when one of the MDI windows fails to handle the message.