aboutsummaryrefslogtreecommitdiff
path: root/body/fltk-widgets-inputs-text-file.adb
diff options
context:
space:
mode:
Diffstat (limited to 'body/fltk-widgets-inputs-text-file.adb')
-rw-r--r--body/fltk-widgets-inputs-text-file.adb32
1 files changed, 24 insertions, 8 deletions
diff --git a/body/fltk-widgets-inputs-text-file.adb b/body/fltk-widgets-inputs-text-file.adb
index c7e4919..42c4961 100644
--- a/body/fltk-widgets-inputs-text-file.adb
+++ b/body/fltk-widgets-inputs-text-file.adb
@@ -28,6 +28,8 @@ package body FLTK.Widgets.Inputs.Text.File is
-- Functions From C --
------------------------
+ -- Allocation --
+
function new_fl_file_input
(X, Y, W, H : in Interfaces.C.int;
Text : in Interfaces.C.char_array)
@@ -43,6 +45,8 @@ package body FLTK.Widgets.Inputs.Text.File is
+ -- Settings --
+
function fl_file_input_get_down_box
(F : in Storage.Integer_Address)
return Interfaces.C.int;
@@ -70,6 +74,8 @@ package body FLTK.Widgets.Inputs.Text.File is
+ -- Text Field --
+
function fl_file_input_get_value
(F : in Storage.Integer_Address)
return Interfaces.C.Strings.chars_ptr;
@@ -87,6 +93,8 @@ package body FLTK.Widgets.Inputs.Text.File is
+ -- Drawing, Events --
+
procedure fl_file_input_draw
(W : in Storage.Integer_Address);
pragma Import (C, fl_file_input_draw, "fl_file_input_draw");
@@ -156,11 +164,11 @@ package body FLTK.Widgets.Inputs.Text.File is
begin
return This : File_Input do
This.Void_Ptr := new_fl_file_input
- (Interfaces.C.int (X),
- Interfaces.C.int (Y),
- Interfaces.C.int (W),
- Interfaces.C.int (H),
- Interfaces.C.To_C (Text));
+ (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;
@@ -186,6 +194,8 @@ package body FLTK.Widgets.Inputs.Text.File is
-- API Subprograms --
-----------------------
+ -- Settings --
+
function Get_Down_Box
(This : in File_Input)
return Box_Kind is
@@ -220,11 +230,13 @@ package body FLTK.Widgets.Inputs.Text.File is
+ -- Text Field --
+
function Get_Value
(This : in File_Input)
return String
is
- Ptr : Interfaces.C.Strings.chars_ptr := fl_file_input_get_value (This.Void_Ptr);
+ Ptr : constant Interfaces.C.Strings.chars_ptr := fl_file_input_get_value (This.Void_Ptr);
begin
if Ptr = Interfaces.C.Strings.Null_Ptr then
return "";
@@ -239,18 +251,22 @@ package body FLTK.Widgets.Inputs.Text.File is
(This : in out File_Input;
To : in String)
is
- Result : Interfaces.C.int := fl_file_input_set_value
+ Result : constant Interfaces.C.int := fl_file_input_set_value
(This.Void_Ptr,
Interfaces.C.To_C (To), To'Length);
begin
pragma Assert (Result /= 0);
exception
- when Chk.Assertion_Error => raise Internal_FLTK_Error;
+ when Chk.Assertion_Error => raise Internal_FLTK_Error with
+ "Fl_File_Input::value returned unexpected int value of " &
+ Interfaces.C.int'Image (Result);
end Set_Value;
+ -- Drawing, Events --
+
procedure Draw
(This : in out File_Input) is
begin