From 48f31d9f71523aa9cc027c16e5c8cd48ff1e792a Mon Sep 17 00:00:00 2001 From: Jed Barber Date: Tue, 6 Sep 2016 00:12:05 +1000 Subject: Getting things back into a compilable order --- src/fltk_binding/fltk-menu_items.ads | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) (limited to 'src/fltk_binding/fltk-menu_items.ads') diff --git a/src/fltk_binding/fltk-menu_items.ads b/src/fltk_binding/fltk-menu_items.ads index 8cade15..5e0751f 100644 --- a/src/fltk_binding/fltk-menu_items.ads +++ b/src/fltk_binding/fltk-menu_items.ads @@ -11,8 +11,8 @@ package FLTK.Menu_Items is type Shortcut_Key is private; - subtype Pressable_Key is range Character'Val(32) .. Character'Val(126); - function Create (Key : Pressable_Key) return Shortcut_Key; + subtype Pressable_Key is Character range Character'Val (32) .. Character'Val (126); + function Shortcut (Key : Pressable_Key) return Shortcut_Key; No_Key : constant Shortcut_Key; @@ -20,9 +20,10 @@ package FLTK.Menu_Items is function "+" (Left, Right : in Modifier_Key) return Modifier_Key; function "+" (Left : in Modifier_Key; Right : in Pressable_Key) return Shortcut_Key; function "+" (Left : in Modifier_Key; Right : in Shortcut_Key) return Shortcut_Key; - Mod_None : constant Modifier_Key; - Mod_Ctrl : constant Modifier_Key; - Mod_Alt : constant Modifier_Key; + Mod_None : constant Modifier_Key; + Mod_Shift : constant Modifier_Key; + Mod_Ctrl : constant Modifier_Key; + Mod_Alt : constant Modifier_Key; type Menu_Flag is private; @@ -48,29 +49,31 @@ package FLTK.Menu_Items is private + -- these values designed to align with FLTK enumeration types + type Modifier_Key is new Interfaces.Unsigned_8; + Mod_None : constant Modifier_Key := 2#0000#; + Mod_Shift : constant Modifier_Key := 2#0001#; + Mod_Ctrl : constant Modifier_Key := 2#0100#; + Mod_Alt : constant Modifier_Key := 2#1000#; + + type Shortcut_Key is record Modifier : Modifier_Key; Keypress : Character; end record; No_Key : constant Shortcut_Key := - (Modifer => Mod_None, Keypress => Character'Val(0)); - - - type Modifier_Key is Interfaces.Unsigned_2; - Mod_None : constant Modifier_Key := 2#00#; - Mod_Ctrl : constant Modifier_Key := 2#01#; - Mod_Alt : constant Modifier_Key := 2#10#; + (Modifier => Mod_None, Keypress => Character'Val (0)); - type Menu_Flag is Interfaces.Unsigned_8; + type Menu_Flag is new Interfaces.Unsigned_8; Flag_Normal : constant Menu_Flag := 2#00000000#; Flag_Inactive : constant Menu_Flag := 2#00000001#; Flag_Toggle : constant Menu_Flag := 2#00000010#; Flag_Value : constant Menu_Flag := 2#00000100#; Flag_Radio : constant Menu_Flag := 2#00001000#; Flag_Invisible : constant Menu_Flag := 2#00010000#; - -- Flag_Submenu_Pointer is currently unused + -- Flag_Submenu_Pointer is currently unused Flag_Submenu : constant Menu_Flag := 2#01000000#; Flag_Divider : constant Menu_Flag := 2#10000000#; -- cgit