Class Fox::FXDockBar
In: rdoc-sources/FXDockBar.rb
Parent: FXPacker

A dock bar widget can be docked inside a dock site widget, or floated around freely. Users can move, undock, and dock the dock bar widget by means of a handle such as a tool bar grip. When docking, the dock bar sends a SEL_DOCKED message to its target; when undocking, it sends a SEL_FLOATED message. In either case the dock site involved is passed as the message data.

Events

The following messages are sent by FXDockBar to its target:

SEL_DOCKED:sent when the dock bar is docked; the message data is a reference to the new dock site (an FXDockSite instance).
SEL_FLOATED:sent when the dock bar is undocked; the message data is a reference to the previous dock site.

Dock Bar Options

ALLOW_NOWHERE:Don‘t allow docking anywhere
ALLOW_TOP:Docking at the top only
ALLOW_BOTTOM:Docking at the bottom only
ALLOW_LEFT:Docking at the left only
ALLOW_RIGHT:Docking at the right only
ALLOW_HORIZONTAL:Docking at the top and bottom
ALLOW_VERTICAL:Docking at the left and right
ALLOW_EVERYWHERE:Docking can be everywhere

Methods

Attributes

dockingSide  [RW]  Docking side, one of LAYOUT_SIDE_LEFT, LAYOUT_SIDE_RIGHT, LAYOUT_SIDE_TOP or LAYOUT_SIDE_BOTTOM [Integer]

Public Class methods

Construct a non-floatable dock bar. The dock bar can not be undocked.

Parameters:

p:the parent window for this dock bar [FXComposite]
opts:dock bar 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]
hSpacing:horizontal spacing between widgets, in pixels [Integer]
vSpacing:vertical spacing between widgets, in pixels [Integer]

Construct a floatable dock bar, with a default parent p and an alternate parent q. To allow docking and dragging, the default parent p must be of type FXDockSite, and the alternate parent q must be of type FXToolBarShell. Normally, the dock bar is docked under a window p of type FXDockSite. When floated, the toolbar can be docked under window q, which is usually an kind of FXToolBarShell window.

Parameters:

p:the "dry dock" window for this dock bar [FXComposite]
q:the "wet dock" window for this dock bar [FXComposite]
opts:dock bar 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]
hSpacing:horizontal spacing between widgets, in pixels [Integer]
vSpacing:vertical spacing between widgets, in pixels [Integer]

Public Instance methods

Return set of sides where docking is allowed

Change set of sides (a combination of ALLOW_TOP, ALLOW_LEFT, etc.), where docking is allowed. The default is to allow docking on all sides.

Dock the bar against the given side, near the given position relative to the toolbar dock‘s origin.

Dock the bar against the given side, after some other widget. However, if after is -1, it will be docked as the innermost bar just before the work-area, while if after is 0, if will be docked as the outermost bar.

Return true if docked

Return parent when docked.

Set parent when docked. If it was docked, reparent under the new docking window.

Search for dock against given side of main window.

Search for dock close to coordinates (root_x, root_y).

Return true if the dock bar would dock or undock if at locaton (barx, bary).

Undock or float the bar. The initial position of the wet dock is a few pixels below and to the right of the original docked position.

Return parent when floating.

Set parent when floating. If it was undocked, then reparent under the new floating window.

[Validate]