Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/xwt.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhwthomas <hywel.w.thomas@gmail.com>2016-03-07 12:36:04 +0300
committerhwthomas <hywel.w.thomas@gmail.com>2016-03-07 12:36:04 +0300
commit9edc9a1ad1c96290f7f87d4f7240b487ebf45dc3 (patch)
treed105babedb59e839e86fac7f827df3e4e166074c /Xwt.Gtk/Xwt.GtkBackend/Gtk3Extensions.cs
parent46cd5f58118d7ee3d4e0e3761766a577ab7cd5b5 (diff)
[GtkBackend] Add custom Gtk.MissingIcon for Gtk3
Diffstat (limited to 'Xwt.Gtk/Xwt.GtkBackend/Gtk3Extensions.cs')
-rw-r--r--Xwt.Gtk/Xwt.GtkBackend/Gtk3Extensions.cs14
1 files changed, 14 insertions, 0 deletions
diff --git a/Xwt.Gtk/Xwt.GtkBackend/Gtk3Extensions.cs b/Xwt.Gtk/Xwt.GtkBackend/Gtk3Extensions.cs
index cb56aeb0..5a021ff7 100644
--- a/Xwt.Gtk/Xwt.GtkBackend/Gtk3Extensions.cs
+++ b/Xwt.Gtk/Xwt.GtkBackend/Gtk3Extensions.cs
@@ -58,6 +58,20 @@ namespace Xwt.GtkBackend
widget.SetStateFlags(Gtk.StateFlags.Normal, true);
}
+ [DllImport (GtkInterop.LIBGDK, CallingConvention = CallingConvention.Cdecl)]
+ static extern IntPtr gdk_pixbuf_get_from_surface (IntPtr surface, int src_x, int src_y, int width, int height);
+
+ public static Gdk.Pixbuf GetFromSurface (Cairo.Surface surface, int src_x, int src_y, int width, int height)
+ {
+ IntPtr raw_ret = gdk_pixbuf_get_from_surface (surface.Handle, src_x, src_y, width, height);
+ Gdk.Pixbuf ret;
+ if (raw_ret == IntPtr.Zero)
+ ret = null;
+ else
+ ret = (Gdk.Pixbuf)GLib.Object.GetObject (raw_ret);
+ return ret;
+ }
+
[DllImport (GtkInterop.LIBGDK)]
static extern IntPtr gdk_pixbuf_get_from_window(IntPtr win, int src_x, int src_y, int width, int height);