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
-
#current ⇒ Object
Current child window’s index [Integer].
-
#switcherStyle ⇒ Object
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
-
#initialize(p, opts = 0, x = 0, y = 0, width = 0, height = 0, padLeft = DEFAULT_SPACING, padRight = DEFAULT_SPACING, padTop = DEFAULT_SPACING, padBottom = DEFAULT_SPACING) ⇒ FXSwitcher
constructor
Return an initialized FXSwitcher instance.
-
#setCurrent(index, notify = false) ⇒ Object
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, #runOnUiThread
Methods inherited from FXObject
#bind, #handle, #load, #save, subclasses
Constructor Details
#initialize(p, opts = 0, x = 0, y = 0, width = 0, height = 0, padLeft = DEFAULT_SPACING, padRight = DEFAULT_SPACING, padTop = DEFAULT_SPACING, padBottom = DEFAULT_SPACING) ⇒ FXSwitcher
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
#current ⇒ Object
Current child window’s index [Integer]
46 47 48 |
# File 'rdoc-sources/FXSwitcher.rb', line 46 def current @current end |
#switcherStyle ⇒ Object
Switcher style flags [Integer]
49 50 51 |
# File 'rdoc-sources/FXSwitcher.rb', line 49 def switcherStyle @switcherStyle end |
Instance Method Details
#setCurrent(index, notify = false) ⇒ Object
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 |