diff options
Diffstat (limited to 'src/fltk-images-rgb.adb')
-rw-r--r-- | src/fltk-images-rgb.adb | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/fltk-images-rgb.adb b/src/fltk-images-rgb.adb index 3bcd01e..8e3e36f 100644 --- a/src/fltk-images-rgb.adb +++ b/src/fltk-images-rgb.adb @@ -16,17 +16,20 @@ package body FLTK.Images.RGB is procedure free_fl_rgb_image (I : in System.Address); pragma Import (C, free_fl_rgb_image, "free_fl_rgb_image"); + pragma Inline (free_fl_rgb_image); function fl_rgb_image_copy (I : in System.Address; W, H : in Interfaces.C.int) return System.Address; pragma Import (C, fl_rgb_image_copy, "fl_rgb_image_copy"); + pragma Inline (fl_rgb_image_copy); function fl_rgb_image_copy2 (I : in System.Address) return System.Address; pragma Import (C, fl_rgb_image_copy2, "fl_rgb_image_copy2"); + pragma Inline (fl_rgb_image_copy2); @@ -36,18 +39,27 @@ package body FLTK.Images.RGB is C : in Interfaces.C.int; B : in Interfaces.C.C_float); pragma Import (C, fl_rgb_image_color_average, "fl_rgb_image_color_average"); + pragma Inline (fl_rgb_image_color_average); procedure fl_rgb_image_desaturate (I : in System.Address); pragma Import (C, fl_rgb_image_desaturate, "fl_rgb_image_desaturate"); + pragma Inline (fl_rgb_image_desaturate); + procedure fl_rgb_image_draw2 + (I : in System.Address; + X, Y : in Interfaces.C.int); + pragma Import (C, fl_rgb_image_draw2, "fl_rgb_image_draw2"); + pragma Inline (fl_rgb_image_draw2); + procedure fl_rgb_image_draw (I : in System.Address; X, Y, W, H, CX, CY : in Interfaces.C.int); pragma Import (C, fl_rgb_image_draw, "fl_rgb_image_draw"); + pragma Inline (fl_rgb_image_draw); @@ -115,6 +127,17 @@ package body FLTK.Images.RGB is procedure Draw + (This : in RGB_Image; + X, Y : in Integer) is + begin + fl_rgb_image_draw2 + (This.Void_Ptr, + Interfaces.C.int (X), + Interfaces.C.int (Y)); + end Draw; + + + procedure Draw (This : in RGB_Image; X, Y, W, H : in Integer; CX, CY : in Integer := 0) is |