>
slide: The toolbutton class
class toolbutton : public button { // the toolbutton public: toolbutton(widget* w, char* name) : button(w,name) { text(name); bind(w,name); // the parent becomes the handler pack(); } }; class toolbox : public frame { // the toolbox public: toolbox(widget* w, tablet* t) : c(t), frame(w,"toolbox") { button* b0 = new toolbutton(this,"draw"); button* b1 = new toolbutton(this,"move"); button* b2 = new toolbutton(this,"box"); button* b3 = new toolbutton(this,"circle"); button* b4 = new toolbutton(this,"arrow"); } int operator()() { c->mode( _event->arg(1) ); // transfer to tablet return OK; } private: tablet* c; };