[pygtk] Add gtk.gdk.WINDOWING constant



commit 35ffbf91536c3005b9d5b7e234c716e4ed173e8b
Author: Paul Pogonyshev <pogonyshev gmx net>
Date:   Wed Jun 17 23:57:44 2009 +0300

    Add gtk.gdk.WINDOWING constant
    
    Value is determined using GDK_WINDOWING_* C macros.  Add
    documentation.  Suggested in bug #555112.

 docs/reference/pygtk-gdk-constants.xml |   48 ++++++++++++++++++++++++++++++++
 gtk/gtkmodule.c                        |   12 ++++++++
 2 files changed, 60 insertions(+), 0 deletions(-)
---
diff --git a/docs/reference/pygtk-gdk-constants.xml b/docs/reference/pygtk-gdk-constants.xml
index 486e8f0..f608c6c 100644
--- a/docs/reference/pygtk-gdk-constants.xml
+++ b/docs/reference/pygtk-gdk-constants.xml
@@ -12,6 +12,7 @@
     <title>Synopsis</title>
 
     <programlisting>
+<xref linkend="gdk-windowing-constant" endterm="gdk-windowing-constant-title"></xref>
 <xref linkend="gdk-drag-action-constants" endterm="gdk-drag-action-constants-title"></xref>
 <xref linkend="gdk-device-axis-use" endterm="gdk-device-axis-use-title"></xref>
 <xref linkend="gdk-byte-order-constants" endterm="gdk-byte-order-constants-title"></xref>
@@ -63,6 +64,53 @@
   <refsect1 id="gdk-constants-description">
     <title>Description</title>
 
+    <refsect2 id="gdk-windowing-constant">
+      <title id="gdk-windowing-constant-title">GDK Windowing Constant</title>
+
+      <note>
+        <para>This constant is available in PyGTK 2.16 and above.</para>
+      </note>
+
+      <para>This consntant specifies which windowing backend GDK uses.
+        It is similar to <literal>GDK_WINDOWING_*</literal> C macros.
+        The constant value is one of the following strings (note that
+        all values are lowercase):</para>
+
+      <variablelist>
+        <varlistentry>
+          <term><literal>"x11"</literal></term>
+          <listitem>
+            <simpara>X Window System</simpara>
+          </listitem>
+        </varlistentry>
+        <varlistentry>
+          <term><literal>"win32"</literal></term>
+          <listitem>
+            <simpara>Microsoft Windows API</simpara>
+          </listitem>
+        </varlistentry>
+        <varlistentry>
+          <term><literal>"quartz"</literal></term>
+          <listitem>
+            <simpara>Mac OS X Quartz</simpara>
+          </listitem>
+        </varlistentry>
+        <varlistentry>
+          <term><literal>"directfb"</literal></term>
+          <listitem>
+            <simpara>Direct Frame Buffer on a UNIX-like system</simpara>
+          </listitem>
+        </varlistentry>
+        <varlistentry>
+          <term><literal>"?"</literal></term>
+          <listitem>
+            <simpara>Unknown (this can in theory happen if GTK+
+              library is newer than PyGTK)</simpara>
+          </listitem>
+        </varlistentry>
+      </variablelist>
+    </refsect2>
+
     <refsect2 id="gdk-drag-action-constants">
       <title id="gdk-drag-action-constants-title">GDK Drag Action Constants</title>
 
diff --git a/gtk/gtkmodule.c b/gtk/gtkmodule.c
index 20f0a1f..cf41d6d 100644
--- a/gtk/gtkmodule.c
+++ b/gtk/gtkmodule.c
@@ -246,4 +246,16 @@ init_gtk(void)
     pygdk_register_classes(d);
     pygdk_add_constants(m, "GDK_");
     pygdk_add_extra_constants(m);
+
+#if defined(GDK_WINDOWING_X11)
+    PyModule_AddStringConstant(m, "WINDOWING", "x11");
+#elif defined(GDK_WINDOWING_WIN32)
+    PyModule_AddStringConstant(m, "WINDOWING", "win32");
+#elif defined(GDK_WINDOWING_QUARTZ)
+    PyModule_AddStringConstant(m, "WINDOWING", "quartz");
+#elif defined(GDK_WINDOWING_DIRECTFB)
+    PyModule_AddStringConstant(m, "WINDOWING", "directfb");
+#else
+    PyModule_AddStringConstant(m, "WINDOWING", "?");
+#endif
 }



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]