Class: Fox::FXSwitcher
- Inherits:
-
FXPacker
- Object
- FXObject
- FXId
- FXDrawable
- FXWindow
- FXComposite
- FXPacker
- Fox::FXSwitcher
- Defined in:
- rdoc-sources/FXSwitcher.rb
Overview
The FXSwitcher layout manager automatically arranges its child windows such that one of them is placed on top; all other child windows are hidden. Switcher provides a convenient method to conserve screen real-estate by arranging several GUI panels to appear in the same space, depending on context. Switcher ignores all layout hints from its children; all children are stretched according to the switcher layout managers own size. When the SWITCHER_HCOLLAPSE or SWITCHER_VCOLLAPSE options are used, the switcher's default size is based on the width or height of the current child, instead of the maximum width or height of all of the children.
Events
The following messages are sent by FXSwitcher to its target:
SEL_COMMAND |
sent whenever the current (topmost) child window changes; the message data is an integer indicating the new current window's index. |
Switcher options
SWITCHER_HCOLLAPSE |
Collapse horizontally to width of current child |
SWITCHER_VCOLLAPSE |
Collapse vertically to height of current child |
Message identifiers
ID_OPEN_FIRST |
x |
ID_OPEN_SECOND |
x |
ID_OPEN_THIRD |
x |
ID_OPEN_FOURTH |
x |
ID_OPEN_FIFTH |
x |
ID_OPEN_SIXTH |
x |
ID_OPEN_SEVENTH |
x |
ID_OPEN_EIGHTH |
x |
ID_OPEN_NINETH |
x |
ID_OPEN_TENTH |
x |
ID_OPEN_LAST |
x |
Instance Attribute Summary (collapse)
-
- (Object) current
Current child window's index [Integer].
-
- (Object) switcherStyle
Switcher style flags [Integer].
Attributes inherited from FXPacker
#baseColor, #borderColor, #borderWidth, #frameStyle, #hSpacing, #hiliteColor, #packingHints, #padBottom, #padLeft, #padRight, #padTop, #shadowColor, #vSpacing
Attributes inherited from FXWindow
#accelTable, #backColor, #defaultCursor, #dragCursor, #first, #focus, #key, #last, #layoutHints, #next, #numChildren, #owner, #parent, #prev, #root, #selector, #shell, #target, #x, #y
Attributes inherited from FXDrawable
Attributes inherited from FXId
Instance Method Summary (collapse)
-
- (FXSwitcher) initialize(p, opts = 0, x = 0, y = 0, width = 0, height = 0, padLeft = DEFAULT_SPACING, padRight = DEFAULT_SPACING, padTop = DEFAULT_SPACING, padBottom = DEFAULT_SPACING)
constructor
Return an initialized FXSwitcher instance.
-
- (Object) setCurrent(index, notify = false)
Raise the child window at index to the top of the stack.
Methods inherited from FXComposite
#maxChildHeight, #maxChildWidth
Methods inherited from FXWindow
#acceptDrop, #acquireClipboard, #acquireSelection, #active?, #addHotKey, #after?, after?, #before?, before?, #beginDrag, #canFocus?, #changeFocus, #childAtIndex, #childOf?, #children, #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?, #each_child, #each_child_recursive, #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, #linkAfter, #linkBefore, #lower, #move, octetType, octetTypeName, #offeredDNDType?, #position, #raiseWindow, #recalc, #releaseClipboard, #releaseSelection, #remHotKey, #removeChild, #repaint, #reparent, #resize, #scroll, #setCursorPosition, #setDNDData, #setDefault, #setDragRectangle, #setFocus, #setInitial, #setShape, #shell?, #show, #shown?, stringType, textType, textTypeName, #tr, #translateCoordinatesFrom, #translateCoordinatesTo, #underCursor?, #ungrab, #ungrabKeyboard, #update, urilistType, urilistTypeName, utf16Type, utf16TypeName, utf8Type, utf8TypeName, #visible=, #width, #width=
Methods included from Responder2
Methods inherited from FXDrawable
Methods inherited from FXId
#create, #created?, #destroy, #detach
Methods inherited from FXObject
#bind, #handle, #load, #save, subclasses
Constructor Details
- (FXSwitcher) initialize(p, opts = 0, x = 0, y = 0, width = 0, height = 0, padLeft = DEFAULT_SPACING, padRight = DEFAULT_SPACING, padTop = DEFAULT_SPACING, padBottom = DEFAULT_SPACING)
Return an initialized FXSwitcher instance.
Parameters:
p |
the parent window for this switcher Fox::FXComposite |
opts |
switcher options [Integer] |
x |
initial x-position [Integer] |
y |
initial y-position [Integer] |
width |
initial width [Integer] |
height |
initial height [Integer] |
padLeft |
internal padding on the left side, in pixels [Integer] |
padRight |
internal padding on the right side, in pixels [Integer] |
padTop |
internal padding on the top side, in pixels [Integer] |
padBottom |
internal padding on the bottom side, in pixels [Integer] |
67 68 |
# File 'rdoc-sources/FXSwitcher.rb', line 67 def initialize(p, opts=0, x=0, y=0, width=0, height=0, padLeft=DEFAULT_SPACING, padRight=DEFAULT_SPACING, padTop=DEFAULT_SPACING, padBottom=DEFAULT_SPACING) # :yields: theSwitcher end |
Instance Attribute Details
- (Object) current
Current child window's index [Integer]
46 47 48 |
# File 'rdoc-sources/FXSwitcher.rb', line 46 def current @current end |
- (Object) switcherStyle
Switcher style flags [Integer]
49 50 51 |
# File 'rdoc-sources/FXSwitcher.rb', line 49 def switcherStyle @switcherStyle end |
Instance Method Details
- (Object) setCurrent(index, notify = false)
Raise the child window at index to the top of the stack. If notify is true, a SEL_COMMAND message is sent to the switcher's message target Raises IndexError if index is out of bounds.
75 |
# File 'rdoc-sources/FXSwitcher.rb', line 75 def setCurrent(index, notify=false); end |