summaryrefslogtreecommitdiff
path: root/src/fltk-images.adb
diff options
context:
space:
mode:
authorJed Barber <jjbarber@y7mail.com>2017-05-15 11:08:34 +1000
committerJed Barber <jjbarber@y7mail.com>2017-05-15 11:08:34 +1000
commitffc566b41d9dd64b2d571f68458a272f503958c6 (patch)
treee6709cd1c3109e52acea15828f3309174e987c5f /src/fltk-images.adb
parent8262e35fb43d8ab0e1d82d966e3d6bb415a7ade7 (diff)
Most relevant methods for Image now implemented, except for Draw
Diffstat (limited to 'src/fltk-images.adb')
-rw-r--r--src/fltk-images.adb86
1 files changed, 86 insertions, 0 deletions
diff --git a/src/fltk-images.adb b/src/fltk-images.adb
index d719e9c..5d3a1ed 100644
--- a/src/fltk-images.adb
+++ b/src/fltk-images.adb
@@ -17,6 +17,32 @@ package body FLTK.Images is
(I : in System.Address);
pragma Import (C, free_fl_image, "free_fl_image");
+ function fl_image_copy
+ (I : in System.Address;
+ W, H : in Interfaces.C.int)
+ return System.Address;
+ pragma Import (C, fl_image_copy, "fl_image_copy");
+
+ function fl_image_copy2
+ (I : in System.Address)
+ return System.Address;
+ pragma Import (C, fl_image_copy2, "fl_image_copy2");
+
+
+ procedure fl_image_color_average
+ (I : in System.Address;
+ C : in Interfaces.C.int;
+ B : in Interfaces.C.C_float);
+ pragma Import (C, fl_image_color_average, "fl_image_color_average");
+
+ procedure fl_image_desaturate
+ (I : in System.Address);
+ pragma Import (C, fl_image_desaturate, "fl_image_desaturate");
+
+ procedure fl_image_inactive
+ (I : in System.Address);
+ pragma Import (C, fl_image_inactive, "fl_image_inactive");
+
function fl_image_w
(I : in System.Address)
return Interfaces.C.int;
@@ -65,6 +91,66 @@ package body FLTK.Images is
+ function Copy
+ (This : in Image;
+ Width, Height : in Natural)
+ return Image is
+ begin
+ return Copied : Image do
+ Copied.Void_Ptr := fl_image_copy
+ (This.Void_Ptr,
+ Interfaces.C.int (Width),
+ Interfaces.C.int (Height));
+ end return;
+ end Copy;
+
+
+
+
+ function Copy
+ (This : in Image)
+ return Image is
+ begin
+ return Copied : Image do
+ Copied.Void_Ptr := fl_image_copy2 (This.Void_Ptr);
+ end return;
+ end Copy;
+
+
+
+
+ procedure Color_Average
+ (This : in out Image;
+ Col : in Color;
+ Amount : in Blend) is
+ begin
+ fl_image_color_average
+ (This.Void_Ptr,
+ Interfaces.C.int (Col),
+ Interfaces.C.C_float (Amount));
+ end Color_Average;
+
+
+
+
+ procedure Desaturate
+ (This : in out Image) is
+ begin
+ fl_image_desaturate (This.Void_Ptr);
+ end Desaturate;
+
+
+
+
+ procedure Inactive
+ (This : in out Image) is
+ begin
+ fl_image_inactive (This.Void_Ptr);
+ end Inactive;
+
+
+
+
function Get_W
(This : in Image)
return Natural is