diff options
Diffstat (limited to 'src/fltk-devices-surfaces-image.ads')
-rw-r--r-- | src/fltk-devices-surfaces-image.ads | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/src/fltk-devices-surfaces-image.ads b/src/fltk-devices-surfaces-image.ads new file mode 100644 index 0000000..1c7e383 --- /dev/null +++ b/src/fltk-devices-surfaces-image.ads @@ -0,0 +1,74 @@ + + +with + + FLTK.Images.RGB, + FLTK.Widgets.Groups.Windows; + + +package FLTK.Devices.Surfaces.Image is + + + type Image_Surface is new Surface_Device with private; + + + + + package Forge is + + function Create + (W, H : in Integer; + Highres : in Boolean := False) + return Image_Surface; + + end Forge; + + + + + function Is_Highres + (This : in Image_Surface) + return Boolean; + + + + + procedure Draw_Widget + (This : in out Image_Surface; + Item : in FLTK.Widgets.Widget'Class; + Offset_X, Offset_Y : in Integer := 0); + + procedure Draw_Decorated_Window + (This : in out Image_Surface; + Item : in FLTK.Widgets.Groups.Windows.Window'Class; + Offset_X, Offset_Y : in Integer := 0); + + + + + function Get_Image + (This : in Image_Surface) + return FLTK.Images.RGB.RGB_Image; + + -- Get_Highres_Image + + + + + procedure Set_Current + (This : in out Image_Surface); + + +private + + + type Image_Surface is new Surface_Device with record + High : Boolean := False; + end record; + + overriding procedure Finalize + (This : in out Image_Surface); + + +end FLTK.Devices.Surfaces.Image; + |