aboutsummaryrefslogtreecommitdiff
path: root/src/fltk-widgets-menus-menu_buttons.adb
diff options
context:
space:
mode:
Diffstat (limited to 'src/fltk-widgets-menus-menu_buttons.adb')
-rw-r--r--src/fltk-widgets-menus-menu_buttons.adb221
1 files changed, 0 insertions, 221 deletions
diff --git a/src/fltk-widgets-menus-menu_buttons.adb b/src/fltk-widgets-menus-menu_buttons.adb
deleted file mode 100644
index ae9ae75..0000000
--- a/src/fltk-widgets-menus-menu_buttons.adb
+++ /dev/null
@@ -1,221 +0,0 @@
-
-
--- Programmed by Jedidiah Barber
--- Released into the public domain
-
-
-with
-
- Interfaces.C.Strings;
-
-
-package body FLTK.Widgets.Menus.Menu_Buttons is
-
-
- ------------------------
- -- Functions From C --
- ------------------------
-
- function new_fl_menu_button
- (X, Y, W, H : in Interfaces.C.int;
- Text : in Interfaces.C.char_array)
- return Storage.Integer_Address;
- pragma Import (C, new_fl_menu_button, "new_fl_menu_button");
- pragma Inline (new_fl_menu_button);
-
- procedure free_fl_menu_button
- (M : in Storage.Integer_Address);
- pragma Import (C, free_fl_menu_button, "free_fl_menu_button");
- pragma Inline (free_fl_menu_button);
-
-
-
-
- procedure fl_menu_button_type
- (M : in Storage.Integer_Address;
- T : in Interfaces.C.unsigned);
- pragma Import (C, fl_menu_button_type, "fl_menu_button_type");
- pragma Inline (fl_menu_button_type);
-
- function fl_menu_button_popup
- (M : in Storage.Integer_Address)
- return Storage.Integer_Address;
- pragma Import (C, fl_menu_button_popup, "fl_menu_button_popup");
- pragma Inline (fl_menu_button_popup);
-
- function fl_menu_find_index2
- (M, I : in Storage.Integer_Address)
- return Interfaces.C.int;
- pragma Import (C, fl_menu_find_index2, "fl_menu_find_index2");
- pragma Inline (fl_menu_find_index2);
-
-
-
-
- procedure fl_menu_button_draw
- (W : in Storage.Integer_Address);
- pragma Import (C, fl_menu_button_draw, "fl_menu_button_draw");
- pragma Inline (fl_menu_button_draw);
-
- function fl_menu_button_handle
- (W : in Storage.Integer_Address;
- E : in Interfaces.C.int)
- return Interfaces.C.int;
- pragma Import (C, fl_menu_button_handle, "fl_menu_button_handle");
- pragma Inline (fl_menu_button_handle);
-
-
-
-
- -------------------
- -- Destructors --
- -------------------
-
- -- More magic
- procedure menu_button_extra_final_hook
- (Ada_Obj : in Storage.Integer_Address);
- pragma Export (C, menu_button_extra_final_hook, "menu_button_extra_final_hook");
-
- procedure menu_button_extra_final_hook
- (Ada_Obj : in Storage.Integer_Address)
- is
- My_Menu_Button : Menu_Button;
- for My_Menu_Button'Address use Storage.To_Address (Ada_Obj);
- pragma Import (Ada, My_Menu_Button);
- begin
- Extra_Final (My_Menu_Button);
- end menu_button_extra_final_hook;
-
-
- procedure Extra_Final
- (This : in out Menu_Button) is
- begin
- Extra_Final (Menu (This));
- end Extra_Final;
-
-
- procedure Finalize
- (This : in out Menu_Button) is
- begin
- Extra_Final (This);
- if This.Void_Ptr /= Null_Pointer and This.Needs_Dealloc then
- free_fl_menu_button (This.Void_Ptr);
- This.Void_Ptr := Null_Pointer;
- end if;
- end Finalize;
-
-
-
-
- --------------------
- -- Constructors --
- --------------------
-
- -- Long distance telephone call receival
- procedure menu_button_extra_init_hook
- (Ada_Obj : in Storage.Integer_Address;
- X, Y, W, H : in Interfaces.C.int;
- C_Str : in Interfaces.C.Strings.chars_ptr);
- pragma Export (C, menu_button_extra_init_hook, "menu_button_extra_init_hook");
-
- procedure menu_button_extra_init_hook
- (Ada_Obj : in Storage.Integer_Address;
- X, Y, W, H : in Interfaces.C.int;
- C_Str : in Interfaces.C.Strings.chars_ptr)
- is
- My_Menu_Button : Menu_Button;
- for My_Menu_Button'Address use Storage.To_Address (Ada_Obj);
- pragma Import (Ada, My_Menu_Button);
- begin
- Extra_Init
- (My_Menu_Button,
- Integer (X), Integer (Y),
- Integer (W), Integer (H),
- Interfaces.C.Strings.Value (C_Str));
- end menu_button_extra_init_hook;
-
-
- procedure Extra_Init
- (This : in out Menu_Button;
- X, Y, W, H : in Integer;
- Text : in String) is
- begin
- Extra_Init (Menu (This), X, Y, W, H, Text);
- end Extra_Init;
-
-
- procedure Initialize
- (This : in out Menu_Button) is
- begin
- This.Draw_Ptr := fl_menu_button_draw'Address;
- This.Handle_Ptr := fl_menu_button_handle'Address;
- end Initialize;
-
-
- package body Forge is
-
- function Create
- (X, Y, W, H : in Integer;
- Text : in String := "")
- return Menu_Button is
- begin
- return This : Menu_Button do
- This.Void_Ptr := new_fl_menu_button
- (Interfaces.C.int (X),
- Interfaces.C.int (Y),
- Interfaces.C.int (W),
- Interfaces.C.int (H),
- Interfaces.C.To_C (Text));
- Extra_Init (This, X, Y, W, H, Text);
- end return;
- end Create;
-
- end Forge;
-
-
-
-
- -----------------------
- -- API Subprograms --
- -----------------------
-
- procedure Set_Popup_Kind
- (This : in out Menu_Button;
- Pop : in Popup_Buttons) is
- begin
- fl_menu_button_type (This.Void_Ptr, Popup_Buttons'Pos (Pop));
- end Set_Popup_Kind;
-
-
- function Popup
- (This : in out Menu_Button)
- return Extended_Index
- is
- use type Interfaces.C.int;
- Ptr : Storage.Integer_Address := fl_menu_button_popup (This.Void_Ptr);
- begin
- return Extended_Index (fl_menu_find_index2 (This.Void_Ptr, Ptr) + 1);
- end Popup;
-
-
-
-
- procedure Draw
- (This : in out Menu_Button) is
- begin
- Menu (This).Draw;
- end Draw;
-
-
- function Handle
- (This : in out Menu_Button;
- Event : in Event_Kind)
- return Event_Outcome is
- begin
- return Menu (This).Handle (Event);
- end Handle;
-
-
-end FLTK.Widgets.Menus.Menu_Buttons;
-
-