Documentation‎ > ‎Toolbars‎ > ‎

gnocl::handleBox

A widget for detachable window portions.

Synopsis

gnocl::handleBox [-option value...]

Screenshot



Options

-child
type: widget-ID
Widget ID of the child. 
NOTE: This cannot be re-configured after creation. 
-handlePosition
type: integer or one of small, normal or big (default: default)
Position of the handle relative to the child widget.
-onAttached
type: string (default: "")
Tcl script which is executed if the whenever the gnocl::handleBox widget is re-attached to its parent. Before evaluation the following percent strings are substituted:

%w    widget name of the gnocl::handleBox parent
%h    widget name of the gnocl::handleBox itself
-onDetached
type: string (default: "")
Tcl script which is executed if the whenever the gnocl::handleBox widget is detached from its parent. Before evaluation the following percent strings are substituted:

%w    widget name of the gnocl::handleBox parent
%h    widget name of the gnocl::handleBox itself
-shadow
type: ONE OF none, in, out, etchedIn or etchedOut. (default: none)

Defines the appearance of the outline drawn around the gnocl::handlebox handle.
-snapEdge
type: ONE OF top, right , left or bottom. (default: left)

The active edge of the detached box which must be aligned over the box root
container in order to become re-attached.
-tooltip
type: string

Message that appears next to this widget when the mouse pointer is held over it for a short amount of time.

Description


The gnocl::handleBox widget is a container which can be detached from its original parent as a "float window" for relocation on other areas of the screen. The means of detaching or re-attaching the gnocl::handleBox is by clicking and dragging on the widget handle. Once the widget is detached, a visible place-holder remains as the base for re-attachment. When reattaching, the active edge of the float window must be accurately placed over its original place holder. Following an attachment or detachment event, the remaining contents of the gnocl::handleBox parent widget are re-packed.

Commands

id class
Returns the class type for this widget, i.e. handlebox.
id configure [-option value...]
Configures the widget. Option may have any of the values accepted on creation of the widget.
Note: This feature is still under development. 08/08/08
id delete
Deletes the widget and the associated tcl command.

Example

set toolBar1 [gnocl::toolBar]

$toolBar1 add item -text "%#Cut"
$toolBar1 add item -text "%#Copy"
$toolBar1 add item -text "%#Paste"
$toolBar1 add item -text "%#Delete"

set handleBox1 [gnocl::handleBox \

-shadow none \
-handlePosition left \
-snapEdge left \
-tooltip "tear me off" \
-onDetached {puts "Detached %w %h"} \
-onAttached {puts "Attached %w %h"} \
-child $toolBar1
]

set toolBar2 [gnocl::toolBar]


set ent [gnocl::entry]


$toolBar2 add widget $ent

$toolBar2 add item -text "%#Find"

set handleBox2 [gnocl::handleBox \

-shadow none \
-handlePosition left \
-snapEdge left \
-tooltip "tear me off" \
-onDetached {puts "Detached %w %h"} \
-onAttached {puts "Attached %w %h"} \
-child $toolBar2
]

set box [gnocl::box ]


$box add $handleBox1

$box add [gnocl::separator -orientation vertical]
$box add $handleBox2

gnocl::window \

-title "HandleBox" \
-child $box \
-onDelete { exit }
gnocl::mainLoop

results in



Comments