Next: Declaring and Using Up: Chaining Methods Previous: The ConstructWidget Method

 

The SetBindings Method

In your interface, you want to handle a lot of events in the subwidgets that make up your mega-widget. For instance, when somebody presses the button in a TixArrowButton widget, you want the button to handle the event. The SetBindings method is used to creates event bindings for the components inside the mega-widget. In our TixArrowButton example, we use the bind command to specify that the method tixArrowButton:IncrCount should be called each time when the user presses the first mouse button. As a result, we can count the number of times the user has pressed on the button.

proc tixArrowButton:SetBindings {w} {
    upvar #0 $w data

    tixChainMethod $w SetBindings

    bind $data(w:button) <1> \
        "tixArrowButton:IncrCount $w"
}

proc tixArrowButton:IncrCount {w} {
    upvar #0 $w data

    incr data(count)
}


http://tix.sourceforge.net