From 5aa2cbc50e016fd833b35603c73b0a88692607f3 Mon Sep 17 00:00:00 2001 From: Jed Barber Date: Sat, 24 Mar 2018 14:36:52 +1100 Subject: Added FLTK.Devices.Surfaces --- src/fltk-devices-surfaces.ads | 48 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 src/fltk-devices-surfaces.ads (limited to 'src/fltk-devices-surfaces.ads') diff --git a/src/fltk-devices-surfaces.ads b/src/fltk-devices-surfaces.ads new file mode 100644 index 0000000..da3d0a6 --- /dev/null +++ b/src/fltk-devices-surfaces.ads @@ -0,0 +1,48 @@ + + +with + + FLTK.Devices.Graphics; + + +package FLTK.Devices.Surfaces is + + + type Surface_Device is new Device with private; + + + + + package Forge is + + function Create + (Graphics : in out FLTK.Devices.Graphics.Graphics_Driver) + return Surface_Device; + + end Forge; + + + + + function Get_Current + return access Surface_Device; + + procedure Set_Current + (This : in out Surface_Device); + + +private + + + type Surface_Device is new Device with null record; + + overriding procedure Finalize + (This : in out Surface_Device); + + + Original_Surface : aliased Surface_Device; + Current_Ptr : access Surface_Device := Original_Surface'Access; + + +end FLTK.Devices.Surfaces; + -- cgit