-void Panel::pointer_leave()
-{
- set_pointer_focus(0, 0);
-}
-
-void Panel::key_press(unsigned key, unsigned mod, wchar_t ch)
-{
- if(input_focus)
- input_focus->key_press(key, mod, ch);
-}
-
-void Panel::key_release(unsigned key, unsigned mod)
-{
- if(input_focus)
- input_focus->key_release(key, mod);
-}
-
-void Panel::focus_out()
-{
- set_input_focus(0);
-}
-
-void Panel::child_hidden(Widget &wdg)
-{
- if(&wdg==pointer_focus)
- set_pointer_focus(0, 0);
-}
-
-void Panel::grab_pointer(Widget &wdg)
-{
- if(pointer_grab==0 || pointer_focus==&wdg)
- set_pointer_focus(&wdg, 255);
- else
- throw InvalidState("Pointer is already grabbed");
-}
-
-void Panel::ungrab_pointer(Widget &wdg)