From f5f77c762534ed15adc557009d1a645e5fd998a5 Mon Sep 17 00:00:00 2001 From: Jedidiah Barber Date: Sat, 16 Nov 2024 10:30:34 +1300 Subject: Reworked widget init/create subprograms --- src/fltk-widgets-groups-windows-single-menu.adb | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'src/fltk-widgets-groups-windows-single-menu.adb') diff --git a/src/fltk-widgets-groups-windows-single-menu.adb b/src/fltk-widgets-groups-windows-single-menu.adb index c707f97..d1249e7 100644 --- a/src/fltk-widgets-groups-windows-single-menu.adb +++ b/src/fltk-widgets-groups-windows-single-menu.adb @@ -119,6 +119,15 @@ package body FLTK.Widgets.Groups.Windows.Single.Menu is + procedure Extra_Init + (This : in out Menu_Window; + X, Y, W, H : in Integer; + Text : in String) is + begin + Extra_Init (Single_Window (This), X, Y, W, H, Text); + end Extra_Init; + + package body Forge is function Create @@ -133,15 +142,11 @@ package body FLTK.Widgets.Groups.Windows.Single.Menu is Interfaces.C.int (W), Interfaces.C.int (H), Interfaces.C.To_C (Text)); - fl_group_end (This.Void_Ptr); - fl_widget_set_user_data - (This.Void_Ptr, - Storage.To_Integer (Widget_Convert.To_Address (This'Unchecked_Access))); + Extra_Init (This, X, Y, W, H, Text); menu_window_set_draw_hook (This.Void_Ptr, Storage.To_Integer (Draw_Hook'Address)); menu_window_set_handle_hook (This.Void_Ptr, Storage.To_Integer (Handle_Hook'Address)); - fl_widget_set_label (This.Void_Ptr, Interfaces.C.To_C (Text)); end return; end Create; @@ -156,15 +161,11 @@ package body FLTK.Widgets.Groups.Windows.Single.Menu is (Interfaces.C.int (W), Interfaces.C.int (H), Interfaces.C.To_C (Text)); - fl_group_end (This.Void_Ptr); - fl_widget_set_user_data - (This.Void_Ptr, - Storage.To_Integer (Widget_Convert.To_Address (This'Unchecked_Access))); + Extra_Init (This, This.Get_X, This.Get_Y, W, H, Text); menu_window_set_draw_hook (This.Void_Ptr, Storage.To_Integer (Draw_Hook'Address)); menu_window_set_handle_hook (This.Void_Ptr, Storage.To_Integer (Handle_Hook'Address)); - fl_widget_set_label (This.Void_Ptr, Interfaces.C.To_C (Text)); end return; end Create; -- cgit