From b3f9e96403aa5cb9d7db2330aa579356d1d58b6f Mon Sep 17 00:00:00 2001 From: Jedidiah Barber Date: Mon, 23 Dec 2024 17:02:34 +1300 Subject: Tweaked the names of Surface_Device subhierarchy --- src/fltk-devices-surface-copy.ads | 82 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 src/fltk-devices-surface-copy.ads (limited to 'src/fltk-devices-surface-copy.ads') diff --git a/src/fltk-devices-surface-copy.ads b/src/fltk-devices-surface-copy.ads new file mode 100644 index 0000000..f5069c5 --- /dev/null +++ b/src/fltk-devices-surface-copy.ads @@ -0,0 +1,82 @@ + + +-- Programmed by Jedidiah Barber +-- Released into the public domain + + +with + + FLTK.Widgets.Groups.Windows; + + +package FLTK.Devices.Surface.Copy is + + + type Copy_Surface is new Surface_Device with private; + + type Copy_Surface_Reference (Data : not null access Copy_Surface'Class) is + limited null record with Implicit_Dereference => Data; + + + + + package Forge is + + function Create + (W, H : in Natural) + return Copy_Surface; + + end Forge; + + + + + function Get_W + (This : in Copy_Surface) + return Integer; + + function Get_H + (This : in Copy_Surface) + return Integer; + + + + + procedure Draw_Widget + (This : in out Copy_Surface; + Item : in FLTK.Widgets.Widget'Class; + Offset_X, Offset_Y : in Integer := 0); + + procedure Draw_Decorated_Window + (This : in out Copy_Surface; + Item : in FLTK.Widgets.Groups.Windows.Window'Class; + Offset_X, Offset_Y : in Integer := 0); + + + + + procedure Set_Current + (This : in out Copy_Surface); + + +private + + + type Copy_Surface is new Surface_Device with null record; + + overriding procedure Finalize + (This : in out Copy_Surface); + + + pragma Inline (Get_W); + pragma Inline (Get_H); + + pragma Inline (Draw_Widget); + pragma Inline (Draw_Decorated_Window); + + pragma Inline (Set_Current); + + +end FLTK.Devices.Surface.Copy; + + -- cgit