summary refs log tree commit diff stats
path: root/lib/wrappers
diff options
context:
space:
mode:
authorDominik Picheta <dominikpicheta@googlemail.com>2013-06-22 19:42:26 +0100
committerDominik Picheta <dominikpicheta@googlemail.com>2013-06-22 19:42:26 +0100
commit317675d5e574acc038a67723e8654b0efcd532e7 (patch)
tree03c15200c8a92ccf3834d4d8cbad08cb6a891c6a /lib/wrappers
parentd23d14897a6249dd6b03c7fc525f42bfac2b6700 (diff)
downloadNim-317675d5e574acc038a67723e8654b0efcd532e7.tar.gz
Changed the type of gboolean to a distinct cint.
Diffstat (limited to 'lib/wrappers')
-rw-r--r--lib/wrappers/gtk/glib2.nim8
-rw-r--r--lib/wrappers/gtk/gtk2.nim2
2 files changed, 9 insertions, 1 deletions
diff --git a/lib/wrappers/gtk/glib2.nim b/lib/wrappers/gtk/glib2.nim
index 4151ba954..3fa672c85 100644
--- a/lib/wrappers/gtk/glib2.nim
+++ b/lib/wrappers/gtk/glib2.nim
@@ -27,7 +27,7 @@ type
   gshort* = cshort
   glong* = clong
   gint* = cint
-  gboolean* = bool
+  gboolean* = distinct gint
   guchar* = char
   gushort* = int16
   gulong* = int
@@ -173,6 +173,12 @@ type
   TGBoxedFreeFunc* = proc (boxed: gpointer){.cdecl.}
   PGsource = pointer          # I don't know and don't care
 
+converter gbool*(nimbool: bool): gboolean =
+  return ord(nimbool).gboolean
+
+converter toBool*(gbool: gboolean): bool =
+  return int(gbool) == 1
+
 const 
   G_TYPE_FUNDAMENTAL_SHIFT* = 2
   G_TYPE_FUNDAMENTAL_MAX* = 255 shl G_TYPE_FUNDAMENTAL_SHIFT
diff --git a/lib/wrappers/gtk/gtk2.nim b/lib/wrappers/gtk/gtk2.nim
index 6b418024e..63e69130a 100644
--- a/lib/wrappers/gtk/gtk2.nim
+++ b/lib/wrappers/gtk/gtk2.nim
@@ -2,6 +2,8 @@
 import 
   glib2, atk, pango, gdk2pixbuf, gdk2
 
+export gbool, toBool
+
 when defined(win32): 
   const 
     lib = "libgtk-win32-2.0-0.dll"