diff options
author | Jed Barber <jjbarber@y7mail.com> | 2016-11-11 10:53:05 +1100 |
---|---|---|
committer | Jed Barber <jjbarber@y7mail.com> | 2016-11-11 10:53:05 +1100 |
commit | bf5b67dee0d61996c3937dd8b255d5fcf2198973 (patch) | |
tree | 0a53efae21ee2abba5b1f24fb0488dd022477286 /src/fltk_binding/fltk-widgets.adb | |
parent | 646bb5b98226ecfcee8b02d669b9cef5d00bbded (diff) |
Simplified widget callbacks
Diffstat (limited to 'src/fltk_binding/fltk-widgets.adb')
-rw-r--r-- | src/fltk_binding/fltk-widgets.adb | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/fltk_binding/fltk-widgets.adb b/src/fltk_binding/fltk-widgets.adb index 256b8e6..9ec2350 100644 --- a/src/fltk_binding/fltk-widgets.adb +++ b/src/fltk_binding/fltk-widgets.adb @@ -242,7 +242,7 @@ package body FLTK.Widgets is Ada_Widget : access Widget'Class := Widget_Convert.To_Pointer (U); begin - Ada_Widget.Callback.Call (Ada_Widget.all); + Ada_Widget.Callback.all (Ada_Widget.all); end Callback_Hook; @@ -250,10 +250,12 @@ package body FLTK.Widgets is procedure Set_Callback (This : in out Widget; - Func : not null access Widget_Callback'Class) is + Func : in Widget_Callback) is begin - This.Callback := Func; - fl_widget_set_callback (This.Void_Ptr, Callback_Hook'Address); + if Func /= null then + This.Callback := Func; + fl_widget_set_callback (This.Void_Ptr, Callback_Hook'Address); + end if; end Set_Callback; |