aboutsummaryrefslogtreecommitdiff
path: root/body/fltk-widgets-boxes.adb
diff options
context:
space:
mode:
Diffstat (limited to 'body/fltk-widgets-boxes.adb')
-rw-r--r--body/fltk-widgets-boxes.adb30
1 files changed, 30 insertions, 0 deletions
diff --git a/body/fltk-widgets-boxes.adb b/body/fltk-widgets-boxes.adb
index e412131..efe6e54 100644
--- a/body/fltk-widgets-boxes.adb
+++ b/body/fltk-widgets-boxes.adb
@@ -17,6 +17,8 @@ package body FLTK.Widgets.Boxes is
-- Functions From C --
------------------------
+ -- Allocation --
+
function new_fl_box
(X, Y, W, H : in Interfaces.C.int;
Text : in Interfaces.C.char_array)
@@ -39,6 +41,8 @@ package body FLTK.Widgets.Boxes is
+ -- Drawing, Events --
+
procedure fl_box_draw
(W : in Storage.Integer_Address);
pragma Import (C, fl_box_draw, "fl_box_draw");
@@ -82,6 +86,30 @@ package body FLTK.Widgets.Boxes is
-- Constructors --
--------------------
+ -- Hole successfully dug out of
+ procedure box_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, box_extra_init_hook, "box_extra_init_hook");
+
+ procedure box_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_Box : Box;
+ for My_Box'Address use Storage.To_Address (Ada_Obj);
+ pragma Import (Ada, My_Box);
+ begin
+ Extra_Init
+ (My_Box,
+ Integer (X), Integer (Y),
+ Integer (W), Integer (H),
+ Interfaces.C.Strings.Value (C_Str));
+ end box_extra_init_hook;
+
+
procedure Extra_Init
(This : in out Box;
X, Y, W, H : in Integer;
@@ -170,6 +198,8 @@ package body FLTK.Widgets.Boxes is
-- API Subprograms --
-----------------------
+ -- Drawing, Events --
+
procedure Draw
(This : in out Box) is
begin