class file_menu : public menubutton { \fbox{file_menu}
public:
file_menu(widget* w, tablet* t)
: c(t), menubutton(w,"file") { (a)
configure("-relief sunken");
text("File");
pack("-side left");
f = new file_handler(c); (b)
(c)
class menu* m = new class menu(this,"menu");
this->menu(m); declares it for the menubutton
m->handler(this); (d)
m->entry("Open");
m->entry("Save");
m->entry("Quit");
}
int operator()() {
if (!strcmp(argv[1],"Quit")) tk->quit(); (e)
else f->dispatch(tk,argc,argv);
return OK;
}
protected:
tablet* c;
file_handler* f;
};