From b2aed4668c563b5649614938b22bf417b0b7f0bc Mon Sep 17 00:00:00 2001 From: Jed Barber Date: Wed, 31 May 2017 21:16:34 +1000 Subject: Scroll widgets added --- src/fltk-widgets-groups-scrolls.ads | 78 +++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 src/fltk-widgets-groups-scrolls.ads (limited to 'src/fltk-widgets-groups-scrolls.ads') diff --git a/src/fltk-widgets-groups-scrolls.ads b/src/fltk-widgets-groups-scrolls.ads new file mode 100644 index 0000000..e4ead1b --- /dev/null +++ b/src/fltk-widgets-groups-scrolls.ads @@ -0,0 +1,78 @@ + + +package FLTK.Widgets.Groups.Scrolls is + + + type Scroll is new Group with private; + + + type Scroll_Kind is + (Horizontal, + Vertical, + Both, + Always_On, + Horizontal_Always, + Vertical_Always, + Both_Always); + + + function Create + (X, Y, W, H : in Integer; + Text : in String) + return Scroll; + + + procedure Scroll_To + (This : in out Scroll; + X, Y : in Integer); + + + function Get_Scrollbar_Size + (This : in Scroll) + return Integer; + + + procedure Set_Scrollbar_Size + (This : in out Scroll; + To : in Integer); + + + -- These two functions are far too similar in name and + -- function to the Get_X and Get_Y for Widgets. + function Get_Scroll_X + (This : in Scroll) + return Integer; + + + function Get_Scroll_Y + (This : in Scroll) + return Integer; + + + procedure Set_Type + (This : in out Scroll; + Mode : in Scroll_Kind); + + + procedure Draw + (This : in out Scroll); + + + function Handle + (This : in out Scroll; + Event : in Event_Kind) + return Event_Outcome; + + +private + + + type Scroll is new Group with null record; + + + overriding procedure Finalize + (This : in out Scroll); + + +end FLTK.Widgets.Groups.Scrolls; + -- cgit