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



    Sections