diff options
author | Jedidiah Barber <contact@jedbarber.id.au> | 2025-01-21 00:53:56 +1300 |
---|---|---|
committer | Jedidiah Barber <contact@jedbarber.id.au> | 2025-01-21 00:53:56 +1300 |
commit | f9e453e3d456514066e8ecbed9fbac93a588a0d0 (patch) | |
tree | 06587afde830fb324d5ab7372f0f1686c4fd993a /src/fltk-widgets-valuators-counters.adb | |
parent | 67a43ef89ba41ac32b86cda7396c16fffaf691b3 (diff) |
Using the type method is now more consistent
Diffstat (limited to 'src/fltk-widgets-valuators-counters.adb')
-rw-r--r-- | src/fltk-widgets-valuators-counters.adb | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/fltk-widgets-valuators-counters.adb b/src/fltk-widgets-valuators-counters.adb index 619b074..e04e180 100644 --- a/src/fltk-widgets-valuators-counters.adb +++ b/src/fltk-widgets-valuators-counters.adb @@ -309,6 +309,36 @@ package body FLTK.Widgets.Valuators.Counters is end Handle; + + + function Get_Kind + (This : in out Counter) + return Counter_Kind + is + Result : Interfaces.C.unsigned_char := fl_widget_get_type (This.Void_Ptr); + begin + return Counter_Kind'Val (Result); + exception + when Constraint_Error => raise Internal_FLTK_Error with + "Fl_Counter::type returned unexpected unsigned char value of " & + Interfaces.C.unsigned_char'Image (Result); + end Get_Kind; + + + package body Extra is + + procedure Set_Kind + (This : in out Counter; + Value : in Counter_Kind) is + begin + fl_widget_set_type (This.Void_Ptr, Counter_Kind'Pos (Value)); + end Set_Kind; + + pragma Inline (Set_Kind); + + end Extra; + + end FLTK.Widgets.Valuators.Counters; |