Permalink
Browse files

bind gtk_show_uri

  • Loading branch information...
1 parent bb476df commit 7071df74efaaaa6766d89967a4807c572f6250e2 @StephaneDelcroix StephaneDelcroix committed Jun 16, 2009
Showing with 42 additions and 0 deletions.
  1. +41 −0 Gtk.Sources/Global.cs
  2. +1 −0 Makefile.am
View
@@ -0,0 +1,41 @@
+// GtkBeans.Global.cs
+//
+// Author(s):
+// Stephane Delcroix <stephane@delcroix.org>
+//
+// Copyright (c) 2009 Novell, Inc.
+//
+// This program is free software; you can redistribute it and/or
+// modify it under the terms of version 2 of the Lesser GNU General
+// Public License as published by the Free Software Foundation.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this program; if not, write to the
+// Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+// Boston, MA 02111-1307, USA.
+
+using System;
+using System.Collections;
+using System.Runtime.InteropServices;
+
+namespace GtkBeans {
+ public static class Global {
+ [DllImport("libgtk-win32-2.0-0.dll")]
+ static extern unsafe bool gtk_show_uri(IntPtr screen, IntPtr uri, uint timestamp, out IntPtr error);
+
+ public static unsafe bool ShowUri(Gdk.Screen screen, string uri, uint timestamp) {
+ IntPtr native_uri = GLib.Marshaller.StringToPtrGStrdup (uri);
+ IntPtr error = IntPtr.Zero;
+ bool raw_ret = gtk_show_uri(screen == null ? IntPtr.Zero : screen.Handle, native_uri, timestamp, out error);
+ bool ret = raw_ret;
+ GLib.Marshaller.Free (native_uri);
+ if (error != IntPtr.Zero) throw new GLib.GException (error);
+ return ret;
+ }
+ }
+}
View
@@ -4,6 +4,7 @@ DEBUG = -debug
GTK_SRCS = \
$(srcdir)/Gtk.Sources/Dialog.cs \
+ $(srcdir)/Gtk.Sources/Global.cs \
$(srcdir)/Gtk.Sources/Image.cs \
$(srcdir)/Gtk.Sources/Widget.cs

0 comments on commit 7071df7

Please sign in to comment.