aboutsummaryrefslogtreecommitdiff
path: root/body/fltk-widgets-groups-text_displays.adb
diff options
context:
space:
mode:
Diffstat (limited to 'body/fltk-widgets-groups-text_displays.adb')
-rw-r--r--body/fltk-widgets-groups-text_displays.adb80
1 files changed, 42 insertions, 38 deletions
diff --git a/body/fltk-widgets-groups-text_displays.adb b/body/fltk-widgets-groups-text_displays.adb
index 7fda2fd..ac1f6e9 100644
--- a/body/fltk-widgets-groups-text_displays.adb
+++ b/body/fltk-widgets-groups-text_displays.adb
@@ -9,8 +9,7 @@ with
Ada.Assertions,
Ada.Characters.Latin_1,
Ada.Unchecked_Conversion,
- Interfaces.C.Strings,
- FLTK.Text_Buffers;
+ Interfaces.C.Strings;
use type
@@ -50,11 +49,11 @@ package body FLTK.Widgets.Groups.Text_Displays is
-- Buffers --
- function fl_text_display_get_buffer
- (TD : in Storage.Integer_Address)
- return Storage.Integer_Address;
- pragma Import (C, fl_text_display_get_buffer, "fl_text_display_get_buffer");
- pragma Inline (fl_text_display_get_buffer);
+ -- function fl_text_display_get_buffer
+ -- (TD : in Storage.Integer_Address)
+ -- return Storage.Integer_Address;
+ -- pragma Import (C, fl_text_display_get_buffer, "fl_text_display_get_buffer");
+ -- pragma Inline (fl_text_display_get_buffer);
procedure fl_text_display_set_buffer
(TD, TB : in Storage.Integer_Address);
@@ -834,7 +833,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
is
use Styles; -- for maximum stylin'
- Ada_Widget : access Text_Display'Class :=
+ Ada_Widget : constant access Text_Display'Class :=
Text_Display_Convert.To_Pointer (Storage.To_Address (D));
begin
if Ada_Widget.Style_Callback /= null then
@@ -1010,7 +1009,9 @@ package body FLTK.Widgets.Groups.Text_Displays is
fl_text_display_highlight_data
(This.Void_Ptr,
Wrapper (Buff).Void_Ptr,
- Storage.To_Integer (Table (Table'First)'Address),
+ (if Table'Length > 0
+ then Storage.To_Integer (Table (Table'First)'Address)
+ else Null_Pointer),
Table'Length);
end Highlight_Data;
@@ -1026,7 +1027,9 @@ package body FLTK.Widgets.Groups.Text_Displays is
fl_text_display_highlight_data2
(This.Void_Ptr,
Wrapper (Buff).Void_Ptr,
- Storage.To_Integer (Table (Table'First)'Address),
+ (if Table'Length > 0
+ then Storage.To_Integer (Table (Table'First)'Address)
+ else Null_Pointer),
Table'Length,
Interfaces.C.To_C (Unfinished),
Storage.To_Integer (Style_Hook'Address),
@@ -1041,7 +1044,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
Line_Index : in Natural)
return Styles.Style_Info
is
- Result : Interfaces.C.int := fl_text_display_position_style
+ Result : constant Interfaces.C.int := fl_text_display_position_style
(This.Void_Ptr,
Interfaces.C.int (Line_Start),
Interfaces.C.int (Line_Length),
@@ -1134,7 +1137,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
X : in Integer)
return Natural
is
- Result : Interfaces.C.int := fl_text_display_find_x
+ Result : constant Interfaces.C.int := fl_text_display_find_x
(This.Void_Ptr,
Interfaces.C.To_C (Text),
Text'Length,
@@ -1155,7 +1158,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
return Natural
is
C_Line_Num : Interfaces.C.int;
- Result : Interfaces.C.int := fl_text_display_position_to_line
+ Result : constant Interfaces.C.int := fl_text_display_position_to_line
(This.Void_Ptr,
Interfaces.C.int (Position),
C_Line_Num);
@@ -1179,7 +1182,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
return Natural
is
C_Line_Num : Interfaces.C.int;
- Result : Interfaces.C.int := fl_text_display_position_to_line
+ Result : constant Interfaces.C.int := fl_text_display_position_to_line
(This.Void_Ptr,
Interfaces.C.int (Position),
C_Line_Num);
@@ -1204,7 +1207,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
Column : out Natural)
is
C_Line_Num, C_Column : Interfaces.C.int;
- Result : Interfaces.C.int := fl_text_display_position_to_linecol
+ Result : constant Interfaces.C.int := fl_text_display_position_to_linecol
(This.Void_Ptr,
Interfaces.C.int (Position),
C_Line_Num, C_Column);
@@ -1231,7 +1234,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
Displayed : out Boolean)
is
C_Line_Num, C_Column : Interfaces.C.int;
- Result : Interfaces.C.int := fl_text_display_position_to_linecol
+ Result : constant Interfaces.C.int := fl_text_display_position_to_linecol
(This.Void_Ptr,
Interfaces.C.int (Position),
C_Line_Num, C_Column);
@@ -1257,7 +1260,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
Kind : in Position_Kind := Character_Position)
return Natural
is
- Result : Interfaces.C.int := fl_text_display_xy_to_position
+ Result : constant Interfaces.C.int := fl_text_display_xy_to_position
(This.Void_Ptr,
Interfaces.C.int (X),
Interfaces.C.int (Y),
@@ -1493,7 +1496,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
Row : in Natural)
return Natural
is
- Result : Interfaces.C.int := fl_text_display_wrapped_row
+ Result : constant Interfaces.C.int := fl_text_display_wrapped_row
(This.Void_Ptr,
Interfaces.C.int (Row));
begin
@@ -1510,7 +1513,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
Row, Column : in Natural)
return Natural
is
- Result : Interfaces.C.int := fl_text_display_wrapped_column
+ Result : constant Interfaces.C.int := fl_text_display_wrapped_column
(This.Void_Ptr,
Interfaces.C.int (Row),
Interfaces.C.int (Column));
@@ -1528,7 +1531,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
Line_End : in Natural)
return Boolean
is
- Result : Interfaces.C.int := fl_text_display_wrap_uses_character
+ Result : constant Interfaces.C.int := fl_text_display_wrap_uses_character
(This.Void_Ptr,
Interfaces.C.int (Line_End));
begin
@@ -1693,7 +1696,8 @@ package body FLTK.Widgets.Groups.Text_Displays is
(This : in Text_Display)
return Natural
is
- Result : Interfaces.C.int := fl_text_display_get_absolute_top_line_number (This.Void_Ptr);
+ Result : constant Interfaces.C.int :=
+ fl_text_display_get_absolute_top_line_number (This.Void_Ptr);
begin
return Natural (Result);
exception
@@ -1715,7 +1719,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
(This : in Text_Display)
return Boolean
is
- Result : Interfaces.C.int := fl_text_display_maintaining_absolute_top_line_number
+ Result : constant Interfaces.C.int := fl_text_display_maintaining_absolute_top_line_number
(This.Void_Ptr);
begin
return Boolean'Val (Result);
@@ -1741,7 +1745,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
(This : in Text_Display)
return Boolean
is
- Result : Interfaces.C.int := fl_text_display_empty_vlines (This.Void_Ptr);
+ Result : constant Interfaces.C.int := fl_text_display_empty_vlines (This.Void_Ptr);
begin
return Boolean'Val (Result);
exception
@@ -1755,7 +1759,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
(This : in Text_Display)
return Natural
is
- Result : Interfaces.C.int := fl_text_display_longest_vline (This.Void_Ptr);
+ Result : constant Interfaces.C.int := fl_text_display_longest_vline (This.Void_Ptr);
begin
return Natural (Result);
exception
@@ -1770,7 +1774,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
Line : in Natural)
return Natural
is
- Result : Interfaces.C.int := fl_text_display_vline_length
+ Result : constant Interfaces.C.int := fl_text_display_vline_length
(This.Void_Ptr,
Interfaces.C.int (Line));
begin
@@ -1898,7 +1902,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
(This : in Text_Display)
return String
is
- Result : Interfaces.C.Strings.chars_ptr :=
+ Result : constant Interfaces.C.Strings.chars_ptr :=
fl_text_display_get_linenumber_format (This.Void_Ptr);
begin
if Result = Interfaces.C.Strings.Null_Ptr then
@@ -1941,7 +1945,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
Line : in Natural)
return Natural
is
- Result : Interfaces.C.int := fl_text_display_measure_vline
+ Result : constant Interfaces.C.int := fl_text_display_measure_vline
(This.Void_Ptr,
Interfaces.C.int (Line));
begin
@@ -1974,7 +1978,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
procedure Move_Down
(This : in out Text_Display)
is
- Result : Interfaces.C.int := fl_text_display_move_down (This.Void_Ptr);
+ Result : constant Interfaces.C.int := fl_text_display_move_down (This.Void_Ptr);
begin
pragma Assert (Result in 0 .. 1);
exception
@@ -1988,7 +1992,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
(This : in out Text_Display)
return Boolean
is
- Result : Interfaces.C.int := fl_text_display_move_down (This.Void_Ptr);
+ Result : constant Interfaces.C.int := fl_text_display_move_down (This.Void_Ptr);
begin
return Boolean'Val (Result);
exception
@@ -2001,7 +2005,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
procedure Move_Left
(This : in out Text_Display)
is
- Result : Interfaces.C.int := fl_text_display_move_left (This.Void_Ptr);
+ Result : constant Interfaces.C.int := fl_text_display_move_left (This.Void_Ptr);
begin
pragma Assert (Result in 0 .. 1);
exception
@@ -2015,7 +2019,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
(This : in out Text_Display)
return Boolean
is
- Result : Interfaces.C.int := fl_text_display_move_left (This.Void_Ptr);
+ Result : constant Interfaces.C.int := fl_text_display_move_left (This.Void_Ptr);
begin
return Boolean'Val (Result);
exception
@@ -2028,7 +2032,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
procedure Move_Right
(This : in out Text_Display)
is
- Result : Interfaces.C.int := fl_text_display_move_right (This.Void_Ptr);
+ Result : constant Interfaces.C.int := fl_text_display_move_right (This.Void_Ptr);
begin
pragma Assert (Result in 0 .. 1);
exception
@@ -2042,7 +2046,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
(This : in out Text_Display)
return Boolean
is
- Result : Interfaces.C.int := fl_text_display_move_right (This.Void_Ptr);
+ Result : constant Interfaces.C.int := fl_text_display_move_right (This.Void_Ptr);
begin
return Boolean'Val (Result);
exception
@@ -2055,7 +2059,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
procedure Move_Up
(This : in out Text_Display)
is
- Result : Interfaces.C.int := fl_text_display_move_up (This.Void_Ptr);
+ Result : constant Interfaces.C.int := fl_text_display_move_up (This.Void_Ptr);
begin
pragma Assert (Result in 0 .. 1);
exception
@@ -2069,7 +2073,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
(This : in out Text_Display)
return Boolean
is
- Result : Interfaces.C.int := fl_text_display_move_up (This.Void_Ptr);
+ Result : constant Interfaces.C.int := fl_text_display_move_up (This.Void_Ptr);
begin
return Boolean'Val (Result);
exception
@@ -2101,7 +2105,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
Pixel : in Natural := 0)
return Boolean
is
- Result : Interfaces.C.int := fl_text_display_scroll2
+ Result : constant Interfaces.C.int := fl_text_display_scroll2
(This.Void_Ptr,
Interfaces.C.int (Line),
Interfaces.C.int (Pixel));
@@ -2172,7 +2176,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
(This : in Text_Display)
return Key_Combo is
begin
- return To_Ada (fl_text_display_get_shortcut (This.Void_Ptr));
+ return To_Ada (Interfaces.C.unsigned (fl_text_display_get_shortcut (This.Void_Ptr)));
end Get_Shortcut;
@@ -2180,7 +2184,7 @@ package body FLTK.Widgets.Groups.Text_Displays is
(This : in out Text_Display;
Value : in Key_Combo) is
begin
- fl_text_display_set_shortcut (This.Void_Ptr, To_C (Value));
+ fl_text_display_set_shortcut (This.Void_Ptr, Interfaces.C.int (To_C (Value)));
end Set_Shortcut;