Sanel Z. wrote:
> Stan, here it is:
>
> class MyWin : public Fl_Window {
> public:
> MyWin(int W, int H) : Fl_Window(W, H) { }
> int handle(int event) {
> switch(event) {
> case FL_PUSH:
> puts("FL_PUSH");
> return 1;
> case FL_RELEASE:
> puts("FL_RELEASE");
> return 1;
> case FL_KEYDOWN:
> hide();
> default:
> break;
> }
> return 0;
> }
> };
>
> int main() {
> MyWin win(200, 200);
> win.show();
> Fl::flush();
> Fl::grab(&win);
> return Fl::run();
> }
To be fair to FLTK, I would modify handle() to let
Fl_Window actually see the events so it can process them:
int handle(int event) {
int ret = Fl_Window::handle(event); // ** ADDED
switch(event) {
case FL_PUSH:
puts("FL_PUSH");
ret = 1; // **
break;
case FL_RELEASE:
puts("FL_RELEASE");
ret = 1; // **
break;
case FL_KEYDOWN:
hide();
ret = 1; // **
break;
default:
break;
}
return(ret); // **
}
I figure it's not fair to starve any widget of all events..
I hear them gasping for breath whenever I see that.. ;)
_______________________________________________
fltk mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk