]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/html/faqgtk.htm
call SetLegacyWMProperties last, it calls gtk_widget_realize, which will lead to...
[wxWidgets.git] / docs / html / faqgtk.htm
index 54bbdb5c10d3d10e9e46783c0421d448f32c5ada..7dc802657da429ea59126b6d036e3ee31f30c6be 100644 (file)
@@ -2,7 +2,7 @@
 <HTML>
 
 <HEAD>
-<TITLE>wxWindows 2 for GTK FAQ</TITLE>
+<TITLE>wxWidgets for GTK FAQ</TITLE>
 </HEAD>
 
 <BODY BGCOLOR=#FFFFFF TEXT=#000000 VLINK="#00376A" LINK="#00529C" ALINK="#313063">
@@ -13,7 +13,7 @@
 <tr>
 <td bgcolor="#004080" align=left height=24 background="images/bluetitlegradient.gif">
 <font size=+1 face="Arial, Lucida Sans, Helvetica" color="#FFFFFF">
-<b>wxWindows 2 for GTK FAQ</b>
+<b>wxWidgets for GTK FAQ</b>
 </font>
 </td>
 </tr>
 
 <P>
 
-See also <a href="faq.htm">top-level FAQ page</a>.
+See also <a href="faq.htm">top-level FAQ page</a> 
+and <a href="faqunx.htm">Unix FAQ page</a>.
 <hr>
 <h3>List of questions in this category</h3>
-<li><a href="#wxgtk">What is wxWindows 2 for GTK?</a></li>
+
+<ul>
+<li><a href="#wxgtk">What is wxWidgets for GTK+?</a></li>
+<li><a href="#locale">Why doesn&#39;t reading floating point numbers work when using wxWidgets?</a></li>
 <li><a href="#gnome">Does wxGTK have GNOME support?</a></li>
 <li><a href="#redhat">Warning about GTK libraries supplied with RedHat</a></li>
-<li><a href="#wxgtk">What is wxWindows 2 for GTK?</a></li>
-<li><a href="#bincompat">What range of Intel Linux platforms will a given application binary be usable on?</li>
+<li><a href="#bincompat">What range of Intel Linux platforms will a given application binary be usable on?</a></li>
+<li><a href="#static">Can I statically link the GTK+ library?</a></li>
+<li><a href="#charinframe">Why does my simple program using <tt>EVT_CHAR</tt> not work?</a></li>
+<li><a href="#debugging">How do I trace the cause of an X11 error such as BadMatch?</a></li>
+</ul>
 
 <hr>
 
-wxWindows 2 for GTK is a port of wxWindows to the <a href="http://www.gimp.org/gtk" target=_top>GTK+ toolkit</a>,
-which is freely available for most flavours of Unix with X. wxWindows 2 for GTK is
+<h3><a name="wxgtk">What is wxWidgets for GTK?</a></h3>
+
+wxWidgets for GTK is a port of wxWidgets to the <a href="http://www.gimp.org/gtk" target=_top>GTK+ toolkit</a>,
+which is freely available for most flavours of Unix with X. wxWidgets for GTK is
 often abbreviated to wxGTK. wxGTK has a separate home page <a href="http://www.freiburg.linux.de/~wxxt" target=_top>here</a>.
 <P>
 
+<h3><a name="locale">Why doesn&#39;t reading floating point numbers work when using wxWidgets?</a></h3>
+
+If your program reads the floating point numbers in the format <tt>123.45</tt>
+from a file, it may suddenly start returning just <tt>123</tt> instead of the
+correct value on some systems -- which is all the more mysterious as the same
+code in a standalone program works just fine.
+
+<p>
+The explanation is that GTK+ changes the current locale on program startup. If
+the decimal point character in the current locale is not the period (for
+example, it is comma in the French locale), all the standard C functions won&#39;t
+recognize the numbers such as above as floating point ones any more.
+
+<p>
+The solution is to either use your own function for reading the floating point
+numbers (probably the best one) or to call <tt>setlocale(LC_NUMERIC, "C")</tt>
+before reading from file and restore the old locale back afterwards if needed.
+
 <h3><a name="gnome">Does wxGTK have GNOME support?</a></h3>
 
 Currently wxGTK does not have any features that would involve dependence on any desktop
@@ -46,10 +73,10 @@ so may be added without dependence on libraries. Other features may be supported
 future, probably as a separate library.
 <P>
 
-<h3><a name="redhat">Warning about GTK libraries supplied with RedHat</a></h3>
+<h3><a name="redhat">Warning about GTK+ libraries supplied with RedHat</a></h3>
 
-It seems that some versions of RedHat include a badly patched version of GTK (not wxGTK)
-which causes some trouble with wxWindows&#39; socket code. Common symptoms are that when
+It seems that some versions of RedHat include a badly patched version of GTK+ (not wxGTK)
+which causes some trouble with wxWidgets&#39; socket code. Common symptoms are that when
 a client tries to establish a connection to an existing server which refuses the request,
 the client will get notified twice, first getting a LOST event and then a CONNECT event.
 This problem can be solved by updating GTK with an official distribution of the library.
@@ -59,13 +86,38 @@ This problem can be solved by updating GTK with an official distribution of the
 
 Robert Roebling replies:<P>
 
-"The important thing is the libc version that your app
+&#34;The important thing is the libc version that your app
 is linked against. The most recent version is 2.2.5
 and programs linked against it will not run with version
 2.1.X so that you will fare best if you compile your app
 on a 2.1.X system. It will then run on practically all
 Linux distros (if you link you app statically against
-the image libraries and std C++ lib)."
+the image libraries and std C++ lib).&#34;
+<P>
+
+<h3><a name="#static">Can I statically link the GTK+ library?</a></h3>
+
+No, this is not possible. It leads to crashes in GTK+.
+<P>
+
+<h3><a name="#charinframe">Why does my simple program using
+<tt>EVT_CHAR</tt> not work?</a></h3>
+
+In wxGTK, the frames never get focus and so can never receive <tt>CHAR</tt>
+nor <tt>KEY</tt> events so an <tt>EVT_CHAR</tt> handler for a frame will be
+never called. To receive these events, you should create a <tt>wxPanel</tt>
+inside the frame and register the key event handlers for the panel, not the
+frame.
+
+<p>
+
+<h3><a name="#debugging">How do I trace the cause of an X11 error such as BadMatch?</h3>
+
+When a fatal X11 error occurs, the application quits with no stack trace.
+To find out where the problem is, put a breakpoint on g_log (<tt>b g_log</tt>
+in gdb).
+
+<p>
 
 </font>