diff options
Diffstat (limited to 'spec/fltk-widgets-groups-scrolls.ads')
-rw-r--r-- | spec/fltk-widgets-groups-scrolls.ads | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/spec/fltk-widgets-groups-scrolls.ads b/spec/fltk-widgets-groups-scrolls.ads index f4cbad0..116fe42 100644 --- a/spec/fltk-widgets-groups-scrolls.ads +++ b/spec/fltk-widgets-groups-scrolls.ads @@ -27,6 +27,25 @@ package FLTK.Widgets.Groups.Scrolls is Both_Always); + type Region is record + X, Y, W, H : Integer; + end record; + + type Scrollbar_Data is record + X, Y, W, H : Integer; + Size, Total : Natural; + First, Position : Integer; + end record; + + type Scroll_Info is record + Child_Box : Region; + Inner_Inc, Inner_Ex : Region; + H_Needed, V_Needed : Boolean; + H_Data, V_Data : Scrollbar_Data; + Scroll_Size : Natural; + end record; + + package Forge is @@ -47,6 +66,8 @@ package FLTK.Widgets.Groups.Scrolls is + -- Attributes -- + function H_Bar (This : in out Scroll) return Valuators.Sliders.Scrollbars.Scrollbar_Reference; @@ -58,12 +79,16 @@ package FLTK.Widgets.Groups.Scrolls is + -- Contents -- + procedure Clear (This : in out Scroll); + -- Scrolling -- + procedure Scroll_To (This : in out Scroll; X, Y : in Integer); @@ -81,6 +106,8 @@ package FLTK.Widgets.Groups.Scrolls is + -- Scrollbar Settings -- + function Get_Scrollbar_Size (This : in Scroll) return Integer; @@ -100,6 +127,25 @@ package FLTK.Widgets.Groups.Scrolls is + -- Dimensions -- + + procedure Resize + (This : in out Scroll; + X, Y, W, H : in Integer); + + procedure Recalculate_Scrollbars + (This : in Scroll; + Data : out Scroll_Info); + + + + + -- Drawing, Events -- + + procedure Bounding_Box + (This : in Scroll; + X, Y, W, H : out Integer); + procedure Draw (This : in out Scroll); @@ -142,6 +188,9 @@ private pragma Inline (Get_Kind); pragma Inline (Set_Kind); + pragma Inline (Resize); + + pragma Inline (Bounding_Box); pragma Inline (Draw); pragma Inline (Handle); |