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_COMMANDsent whenever the current (topmost) child window changes; the message data is an integer indicating the new current window's index.
Switcher options
SWITCHER_HCOLLAPSECollapse horizontally to width of current child
SWITCHER_VCOLLAPSECollapse vertically to height of current child
Message identifiers
ID_OPEN_FIRSTx
ID_OPEN_SECONDx
ID_OPEN_THIRDx
ID_OPEN_FOURTHx
ID_OPEN_FIFTHx
ID_OPEN_SIXTHx
ID_OPEN_SEVENTHx
ID_OPEN_EIGHTHx
ID_OPEN_NINETHx
ID_OPEN_TENTHx
ID_OPEN_LASTx
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:
pthe parent window for this switcher Fox::FXComposite
optsswitcher options [Integer]
xinitial x-position [Integer]
yinitial y-position [Integer]
widthinitial width [Integer]
heightinitial height [Integer]
padLeftinternal padding on the left side, in pixels [Integer]
padRightinternal padding on the right side, in pixels [Integer]
padTopinternal padding on the top side, in pixels [Integer]
padBottominternal 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 |