]> git.saurik.com Git - wxWidgets.git/commitdiff
wxToolTip modifications: wxUSE_TOOLTIPS setting (default: on) added and
authorVadim Zeitlin <vadim@wxwidgets.org>
Mon, 1 Feb 1999 14:40:53 +0000 (14:40 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Mon, 1 Feb 1999 14:40:53 +0000 (14:40 +0000)
the interface changed slightly to be even more consistent with wxMSW

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1554 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

23 files changed:
configure
configure.in
include/wx/gtk/checkbox.h
include/wx/gtk/checklst.h
include/wx/gtk/listbox.h
include/wx/gtk/tooltip.h
include/wx/gtk/window.h
include/wx/gtk1/checkbox.h
include/wx/gtk1/checklst.h
include/wx/gtk1/listbox.h
include/wx/gtk1/tooltip.h
include/wx/gtk1/window.h
setup/setup.hin
src/gtk/checkbox.cpp
src/gtk/checklst.cpp
src/gtk/listbox.cpp
src/gtk/tooltip.cpp
src/gtk/window.cpp
src/gtk1/checkbox.cpp
src/gtk1/checklst.cpp
src/gtk1/listbox.cpp
src/gtk1/tooltip.cpp
src/gtk1/window.cpp

index 7e4dd540fdb4721758ad2083e7d3954ff4b0e6e0..d61bfc6624f3fa428cf655726c07a8a7704d5a90 100755 (executable)
--- a/configure
+++ b/configure
@@ -78,6 +78,8 @@ ac_help="$ac_help
 ac_help="$ac_help
 **--with-clipboard        use wxClipboard classes"
 ac_help="$ac_help
+**--with-tooltips         use tooltips"
+ac_help="$ac_help
 **--with-dnd              use Drag'n'Drop classes"
 ac_help="$ac_help
 **--with-mdi              use multiple document interface architecture"
@@ -681,7 +683,7 @@ SEARCH_LIB="`echo "$SEARCH_INCLUDE" | sed s/include/lib/g` \
 # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:685: checking for $ac_word" >&5
+echo "configure:687: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -710,7 +712,7 @@ if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:714: checking for $ac_word" >&5
+echo "configure:716: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -758,7 +760,7 @@ fi
 fi
 
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:762: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:764: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
 
 ac_ext=c
 # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -768,11 +770,11 @@ ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS
 cross_compiling=$ac_cv_prog_cc_cross
 
 cat > conftest.$ac_ext <<EOF
-#line 772 "configure"
+#line 774 "configure"
 #include "confdefs.h"
 main(){return(0);}
 EOF
-if { (eval echo configure:776: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:778: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   ac_cv_prog_cc_works=yes
   # If we can't run a trivial program, we are probably using a cross compiler.
   if (./conftest; exit) 2>/dev/null; then
@@ -792,12 +794,12 @@ if test $ac_cv_prog_cc_works = no; then
   { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
 fi
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:796: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:798: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
 cross_compiling=$ac_cv_prog_cc_cross
 
 echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:801: checking whether we are using GNU C" >&5
+echo "configure:803: checking whether we are using GNU C" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -806,7 +808,7 @@ else
   yes;
 #endif
 EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:810: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:812: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
   ac_cv_prog_gcc=yes
 else
   ac_cv_prog_gcc=no
@@ -821,7 +823,7 @@ if test $ac_cv_prog_gcc = yes; then
   ac_save_CFLAGS="$CFLAGS"
   CFLAGS=
   echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:825: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:827: checking whether ${CC-cc} accepts -g" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -853,10 +855,10 @@ CFLAGS=`echo "$CFLAGS" | sed 's/-g//g'`
 
 if test "x$CC" != xcc; then
   echo $ac_n "checking whether $CC and cc understand -c and -o together""... $ac_c" 1>&6
-echo "configure:857: checking whether $CC and cc understand -c and -o together" >&5
+echo "configure:859: checking whether $CC and cc understand -c and -o together" >&5
 else
   echo $ac_n "checking whether cc understands -c and -o together""... $ac_c" 1>&6
-echo "configure:860: checking whether cc understands -c and -o together" >&5
+echo "configure:862: checking whether cc understands -c and -o together" >&5
 fi
 set dummy $CC; ac_cc="`echo $2 |
                       sed -e 's/[^a-zA-Z0-9_]/_/g' -e 's/^[0-9]/_/'`"
@@ -868,16 +870,16 @@ else
 # We do the test twice because some compilers refuse to overwrite an
 # existing .o file with -o, though they will create one.
 ac_try='${CC-cc} -c conftest.c -o conftest.o 1>&5'
-if { (eval echo configure:872: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } &&
-   test -f conftest.o && { (eval echo configure:873: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; };
+if { (eval echo configure:874: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } &&
+   test -f conftest.o && { (eval echo configure:875: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; };
 then
   eval ac_cv_prog_cc_${ac_cc}_c_o=yes
   if test "x$CC" != xcc; then
     # Test first that cc exists at all.
-    if { ac_try='cc -c conftest.c 1>&5'; { (eval echo configure:878: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
+    if { ac_try='cc -c conftest.c 1>&5'; { (eval echo configure:880: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
       ac_try='cc -c conftest.c -o conftest.o 1>&5'
-      if { (eval echo configure:880: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } &&
-        test -f conftest.o && { (eval echo configure:881: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; };
+      if { (eval echo configure:882: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } &&
+        test -f conftest.o && { (eval echo configure:883: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; };
       then
         # cc works too.
         :
@@ -904,7 +906,7 @@ EOF
 fi
 
 echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:908: checking how to run the C preprocessor" >&5
+echo "configure:910: checking how to run the C preprocessor" >&5
 # On Suns, sometimes $CPP names a directory.
 if test -n "$CPP" && test -d "$CPP"; then
   CPP=
@@ -919,13 +921,13 @@ else
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp.
   cat > conftest.$ac_ext <<EOF
-#line 923 "configure"
+#line 925 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:929: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:931: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   :
@@ -936,13 +938,13 @@ else
   rm -rf conftest*
   CPP="${CC-cc} -E -traditional-cpp"
   cat > conftest.$ac_ext <<EOF
-#line 940 "configure"
+#line 942 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:946: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:948: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   :
@@ -966,13 +968,13 @@ echo "$ac_t""$CPP" 1>&6
 
 if test $ac_cv_prog_gcc = yes; then
     echo $ac_n "checking whether ${CC-cc} needs -traditional""... $ac_c" 1>&6
-echo "configure:970: checking whether ${CC-cc} needs -traditional" >&5
+echo "configure:972: checking whether ${CC-cc} needs -traditional" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_gcc_traditional'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
     ac_pattern="Autoconf.*'x'"
   cat > conftest.$ac_ext <<EOF
-#line 976 "configure"
+#line 978 "configure"
 #include "confdefs.h"
 #include <sgtty.h>
 Autoconf TIOCGETP
@@ -990,7 +992,7 @@ rm -f conftest*
 
   if test $ac_cv_prog_gcc_traditional = no; then
     cat > conftest.$ac_ext <<EOF
-#line 994 "configure"
+#line 996 "configure"
 #include "confdefs.h"
 #include <termio.h>
 Autoconf TCGETA
@@ -1019,7 +1021,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1023: checking for $ac_word" >&5
+echo "configure:1025: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CXX'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1050,7 +1052,7 @@ test -n "$CXX" || CXX="gcc"
 
 
 echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1054: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5
+echo "configure:1056: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) works" >&5
 
 ac_ext=C
 # CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1060,11 +1062,11 @@ ac_link='${CXX-g++} -o conftest $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $L
 cross_compiling=$ac_cv_prog_cxx_cross
 
 cat > conftest.$ac_ext <<EOF
-#line 1064 "configure"
+#line 1066 "configure"
 #include "confdefs.h"
 main(){return(0);}
 EOF
-if { (eval echo configure:1068: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:1070: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   ac_cv_prog_cxx_works=yes
   # If we can't run a trivial program, we are probably using a cross compiler.
   if (./conftest; exit) 2>/dev/null; then
@@ -1090,12 +1092,12 @@ if test $ac_cv_prog_cxx_works = no; then
   { echo "configure: error: installation or configuration problem: C++ compiler cannot create executables." 1>&2; exit 1; }
 fi
 echo $ac_n "checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1094: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1096: checking whether the C++ compiler ($CXX $CXXFLAGS $LDFLAGS) is a cross-compiler" >&5
 echo "$ac_t""$ac_cv_prog_cxx_cross" 1>&6
 cross_compiling=$ac_cv_prog_cxx_cross
 
 echo $ac_n "checking whether we are using GNU C++""... $ac_c" 1>&6
-echo "configure:1099: checking whether we are using GNU C++" >&5
+echo "configure:1101: checking whether we are using GNU C++" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_gxx'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1104,7 +1106,7 @@ else
   yes;
 #endif
 EOF
-if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:1108: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CXX-g++} -E conftest.C'; { (eval echo configure:1110: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
   ac_cv_prog_gxx=yes
 else
   ac_cv_prog_gxx=no
@@ -1119,7 +1121,7 @@ if test $ac_cv_prog_gxx = yes; then
   ac_save_CXXFLAGS="$CXXFLAGS"
   CXXFLAGS=
   echo $ac_n "checking whether ${CXX-g++} accepts -g""... $ac_c" 1>&6
-echo "configure:1123: checking whether ${CXX-g++} accepts -g" >&5
+echo "configure:1125: checking whether ${CXX-g++} accepts -g" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_cxx_g'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1147,7 +1149,7 @@ else
 fi
 
 echo $ac_n "checking how to run the C++ preprocessor""... $ac_c" 1>&6
-echo "configure:1151: checking how to run the C++ preprocessor" >&5
+echo "configure:1153: checking how to run the C++ preprocessor" >&5
 if test -z "$CXXCPP"; then
 if eval "test \"`echo '$''{'ac_cv_prog_CXXCPP'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1160,12 +1162,12 @@ ac_link='${CXX-g++} -o conftest $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $L
 cross_compiling=$ac_cv_prog_cxx_cross
   CXXCPP="${CXX-g++} -E"
   cat > conftest.$ac_ext <<EOF
-#line 1164 "configure"
+#line 1166 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1169: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1171: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   :
@@ -1197,7 +1199,7 @@ CXXFLAGS=`echo "$CXXFLAGS" | sed 's/-g//g'`
 # Extract the first word of "ranlib", so it can be a program name with args.
 set dummy ranlib; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1201: checking for $ac_word" >&5
+echo "configure:1203: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1227,7 +1229,7 @@ fi
 # Extract the first word of "ar", so it can be a program name with args.
 set dummy ar; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1231: checking for $ac_word" >&5
+echo "configure:1233: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1284,7 +1286,7 @@ ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
 # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
 # ./install, which can be erroneously created by make from ./install.sh.
 echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:1288: checking for a BSD compatible install" >&5
+echo "configure:1290: checking for a BSD compatible install" >&5
 if test -z "$INSTALL"; then
 if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1335,7 +1337,7 @@ test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
 
 echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:1339: checking whether ln -s works" >&5
+echo "configure:1341: checking whether ln -s works" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1361,7 +1363,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1365: checking for $ac_word" >&5
+echo "configure:1367: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_AWK'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1391,7 +1393,7 @@ done
 
 
 echo $ac_n "checking "make for VPATH support"""... $ac_c" 1>&6
-echo "configure:1395: checking "make for VPATH support"" >&5
+echo "configure:1397: checking "make for VPATH support"" >&5
 cat - << EOF > confMake
 check : file
        cp \$? \$@
@@ -1421,7 +1423,7 @@ fi
 # Uses ac_ vars as temps to allow command line to override cache and checks.
 # --without-x overrides everything else, but does not touch the cache.
 echo $ac_n "checking for X""... $ac_c" 1>&6
-echo "configure:1425: checking for X" >&5
+echo "configure:1427: checking for X" >&5
 
 # Check whether --with-x or --without-x was given.
 if test "${with_x+set}" = set; then
@@ -1483,12 +1485,12 @@ if test "$ac_x_includes" = NO; then
 
   # First, try using that file with no special directory specified.
 cat > conftest.$ac_ext <<EOF
-#line 1487 "configure"
+#line 1489 "configure"
 #include "confdefs.h"
 #include <$x_direct_test_include>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1492: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1494: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -1557,14 +1559,14 @@ if test "$ac_x_libraries" = NO; then
   ac_save_LIBS="$LIBS"
   LIBS="-l$x_direct_test_library $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 1561 "configure"
+#line 1563 "configure"
 #include "confdefs.h"
 
 int main() {
 ${x_direct_test_function}()
 ; return 0; }
 EOF
-if { (eval echo configure:1568: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:1570: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   LIBS="$ac_save_LIBS"
 # We can link X programs with no special library path.
@@ -1670,17 +1672,17 @@ else
     case "`(uname -sr) 2>/dev/null`" in
     "SunOS 5"*)
       echo $ac_n "checking whether -R must be followed by a space""... $ac_c" 1>&6
-echo "configure:1674: checking whether -R must be followed by a space" >&5
+echo "configure:1676: checking whether -R must be followed by a space" >&5
       ac_xsave_LIBS="$LIBS"; LIBS="$LIBS -R$x_libraries"
       cat > conftest.$ac_ext <<EOF
-#line 1677 "configure"
+#line 1679 "configure"
 #include "confdefs.h"
 
 int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:1684: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:1686: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   ac_R_nospace=yes
 else
@@ -1696,14 +1698,14 @@ rm -f conftest*
       else
        LIBS="$ac_xsave_LIBS -R $x_libraries"
        cat > conftest.$ac_ext <<EOF
-#line 1700 "configure"
+#line 1702 "configure"
 #include "confdefs.h"
 
 int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:1707: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:1709: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   ac_R_space=yes
 else
@@ -1735,7 +1737,7 @@ rm -f conftest*
     # libraries were built with DECnet support.  And karl@cs.umb.edu says
     # the Alpha needs dnet_stub (dnet does not exist).
     echo $ac_n "checking for dnet_ntoa in -ldnet""... $ac_c" 1>&6
-echo "configure:1739: checking for dnet_ntoa in -ldnet" >&5
+echo "configure:1741: checking for dnet_ntoa in -ldnet" >&5
 ac_lib_var=`echo dnet'_'dnet_ntoa | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1743,7 +1745,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldnet  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 1747 "configure"
+#line 1749 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -1754,7 +1756,7 @@ int main() {
 dnet_ntoa()
 ; return 0; }
 EOF
-if { (eval echo configure:1758: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:1760: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -1776,7 +1778,7 @@ fi
 
     if test $ac_cv_lib_dnet_dnet_ntoa = no; then
       echo $ac_n "checking for dnet_ntoa in -ldnet_stub""... $ac_c" 1>&6
-echo "configure:1780: checking for dnet_ntoa in -ldnet_stub" >&5
+echo "configure:1782: checking for dnet_ntoa in -ldnet_stub" >&5
 ac_lib_var=`echo dnet_stub'_'dnet_ntoa | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1784,7 +1786,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldnet_stub  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 1788 "configure"
+#line 1790 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -1795,7 +1797,7 @@ int main() {
 dnet_ntoa()
 ; return 0; }
 EOF
-if { (eval echo configure:1799: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:1801: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -1824,12 +1826,12 @@ fi
     # The nsl library prevents programs from opening the X display
     # on Irix 5.2, according to dickey@clark.net.
     echo $ac_n "checking for gethostbyname""... $ac_c" 1>&6
-echo "configure:1828: checking for gethostbyname" >&5
+echo "configure:1830: checking for gethostbyname" >&5
 if eval "test \"`echo '$''{'ac_cv_func_gethostbyname'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1833 "configure"
+#line 1835 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char gethostbyname(); below.  */
@@ -1852,7 +1854,7 @@ gethostbyname();
 
 ; return 0; }
 EOF
-if { (eval echo configure:1856: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:1858: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_gethostbyname=yes"
 else
@@ -1873,7 +1875,7 @@ fi
 
     if test $ac_cv_func_gethostbyname = no; then
       echo $ac_n "checking for gethostbyname in -lnsl""... $ac_c" 1>&6
-echo "configure:1877: checking for gethostbyname in -lnsl" >&5
+echo "configure:1879: checking for gethostbyname in -lnsl" >&5
 ac_lib_var=`echo nsl'_'gethostbyname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1881,7 +1883,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 1885 "configure"
+#line 1887 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -1892,7 +1894,7 @@ int main() {
 gethostbyname()
 ; return 0; }
 EOF
-if { (eval echo configure:1896: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:1898: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -1922,12 +1924,12 @@ fi
     # -lsocket must be given before -lnsl if both are needed.
     # We assume that if connect needs -lnsl, so does gethostbyname.
     echo $ac_n "checking for connect""... $ac_c" 1>&6
-echo "configure:1926: checking for connect" >&5
+echo "configure:1928: checking for connect" >&5
 if eval "test \"`echo '$''{'ac_cv_func_connect'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1931 "configure"
+#line 1933 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char connect(); below.  */
@@ -1950,7 +1952,7 @@ connect();
 
 ; return 0; }
 EOF
-if { (eval echo configure:1954: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:1956: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_connect=yes"
 else
@@ -1971,7 +1973,7 @@ fi
 
     if test $ac_cv_func_connect = no; then
       echo $ac_n "checking for connect in -lsocket""... $ac_c" 1>&6
-echo "configure:1975: checking for connect in -lsocket" >&5
+echo "configure:1977: checking for connect in -lsocket" >&5
 ac_lib_var=`echo socket'_'connect | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1979,7 +1981,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lsocket $X_EXTRA_LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 1983 "configure"
+#line 1985 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -1990,7 +1992,7 @@ int main() {
 connect()
 ; return 0; }
 EOF
-if { (eval echo configure:1994: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:1996: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2014,12 +2016,12 @@ fi
 
     # gomez@mi.uni-erlangen.de says -lposix is necessary on A/UX.
     echo $ac_n "checking for remove""... $ac_c" 1>&6
-echo "configure:2018: checking for remove" >&5
+echo "configure:2020: checking for remove" >&5
 if eval "test \"`echo '$''{'ac_cv_func_remove'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2023 "configure"
+#line 2025 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char remove(); below.  */
@@ -2042,7 +2044,7 @@ remove();
 
 ; return 0; }
 EOF
-if { (eval echo configure:2046: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2048: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_remove=yes"
 else
@@ -2063,7 +2065,7 @@ fi
 
     if test $ac_cv_func_remove = no; then
       echo $ac_n "checking for remove in -lposix""... $ac_c" 1>&6
-echo "configure:2067: checking for remove in -lposix" >&5
+echo "configure:2069: checking for remove in -lposix" >&5
 ac_lib_var=`echo posix'_'remove | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2071,7 +2073,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lposix  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2075 "configure"
+#line 2077 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -2082,7 +2084,7 @@ int main() {
 remove()
 ; return 0; }
 EOF
-if { (eval echo configure:2086: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2088: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2106,12 +2108,12 @@ fi
 
     # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
     echo $ac_n "checking for shmat""... $ac_c" 1>&6
-echo "configure:2110: checking for shmat" >&5
+echo "configure:2112: checking for shmat" >&5
 if eval "test \"`echo '$''{'ac_cv_func_shmat'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2115 "configure"
+#line 2117 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char shmat(); below.  */
@@ -2134,7 +2136,7 @@ shmat();
 
 ; return 0; }
 EOF
-if { (eval echo configure:2138: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2140: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_shmat=yes"
 else
@@ -2155,7 +2157,7 @@ fi
 
     if test $ac_cv_func_shmat = no; then
       echo $ac_n "checking for shmat in -lipc""... $ac_c" 1>&6
-echo "configure:2159: checking for shmat in -lipc" >&5
+echo "configure:2161: checking for shmat in -lipc" >&5
 ac_lib_var=`echo ipc'_'shmat | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2163,7 +2165,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lipc  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2167 "configure"
+#line 2169 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -2174,7 +2176,7 @@ int main() {
 shmat()
 ; return 0; }
 EOF
-if { (eval echo configure:2178: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2180: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2207,7 +2209,7 @@ fi
   # libraries we check for below, so use a different variable.
   #  --interran@uluru.Stanford.EDU, kb@cs.umb.edu.
   echo $ac_n "checking for IceConnectionNumber in -lICE""... $ac_c" 1>&6
-echo "configure:2211: checking for IceConnectionNumber in -lICE" >&5
+echo "configure:2213: checking for IceConnectionNumber in -lICE" >&5
 ac_lib_var=`echo ICE'_'IceConnectionNumber | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2215,7 +2217,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lICE  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2219 "configure"
+#line 2221 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -2226,7 +2228,7 @@ int main() {
 IceConnectionNumber()
 ; return 0; }
 EOF
-if { (eval echo configure:2230: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2232: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2256,12 +2258,12 @@ for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6
-echo "configure:2260: checking for $ac_hdr that defines DIR" >&5
+echo "configure:2262: checking for $ac_hdr that defines DIR" >&5
 if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2265 "configure"
+#line 2267 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <$ac_hdr>
@@ -2269,7 +2271,7 @@ int main() {
 DIR *dirp = 0;
 ; return 0; }
 EOF
-if { (eval echo configure:2273: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2275: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval "ac_cv_header_dirent_$ac_safe=yes"
 else
@@ -2294,7 +2296,7 @@ done
 # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
 if test $ac_header_dirent = dirent.h; then
 echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6
-echo "configure:2298: checking for opendir in -ldir" >&5
+echo "configure:2300: checking for opendir in -ldir" >&5
 ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2302,7 +2304,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldir  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2306 "configure"
+#line 2308 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -2313,7 +2315,7 @@ int main() {
 opendir()
 ; return 0; }
 EOF
-if { (eval echo configure:2317: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2319: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2335,7 +2337,7 @@ fi
 
 else
 echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6
-echo "configure:2339: checking for opendir in -lx" >&5
+echo "configure:2341: checking for opendir in -lx" >&5
 ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2343,7 +2345,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lx  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2347 "configure"
+#line 2349 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -2354,7 +2356,7 @@ int main() {
 opendir()
 ; return 0; }
 EOF
-if { (eval echo configure:2358: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2360: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2377,12 +2379,12 @@ fi
 fi
 
 echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:2381: checking for ANSI C header files" >&5
+echo "configure:2383: checking for ANSI C header files" >&5
 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2386 "configure"
+#line 2388 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 #include <stdarg.h>
@@ -2390,7 +2392,7 @@ else
 #include <float.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2394: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2396: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2407,7 +2409,7 @@ rm -f conftest*
 if test $ac_cv_header_stdc = yes; then
   # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 2411 "configure"
+#line 2413 "configure"
 #include "confdefs.h"
 #include <string.h>
 EOF
@@ -2425,7 +2427,7 @@ fi
 if test $ac_cv_header_stdc = yes; then
   # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 2429 "configure"
+#line 2431 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 EOF
@@ -2446,7 +2448,7 @@ if test "$cross_compiling" = yes; then
   :
 else
   cat > conftest.$ac_ext <<EOF
-#line 2450 "configure"
+#line 2452 "configure"
 #include "confdefs.h"
 #include <ctype.h>
 #define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
@@ -2457,7 +2459,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
 exit (0); }
 
 EOF
-if { (eval echo configure:2461: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:2463: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   :
 else
@@ -2481,12 +2483,12 @@ EOF
 fi
 
 echo $ac_n "checking for sys/wait.h that is POSIX.1 compatible""... $ac_c" 1>&6
-echo "configure:2485: checking for sys/wait.h that is POSIX.1 compatible" >&5
+echo "configure:2487: checking for sys/wait.h that is POSIX.1 compatible" >&5
 if eval "test \"`echo '$''{'ac_cv_header_sys_wait_h'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2490 "configure"
+#line 2492 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/wait.h>
@@ -2502,7 +2504,7 @@ wait (&s);
 s = WIFEXITED (s) ? WEXITSTATUS (s) : 1;
 ; return 0; }
 EOF
-if { (eval echo configure:2506: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2508: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_header_sys_wait_h=yes
 else
@@ -2526,17 +2528,17 @@ for ac_hdr in fcntl.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2530: checking for $ac_hdr" >&5
+echo "configure:2532: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2535 "configure"
+#line 2537 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2540: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2542: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2566,17 +2568,17 @@ for ac_hdr in limits.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2570: checking for $ac_hdr" >&5
+echo "configure:2572: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2575 "configure"
+#line 2577 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2580: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2582: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2606,17 +2608,17 @@ for ac_hdr in sys/file.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2610: checking for $ac_hdr" >&5
+echo "configure:2612: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2615 "configure"
+#line 2617 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2620: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2622: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2646,17 +2648,17 @@ for ac_hdr in sys/time.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2650: checking for $ac_hdr" >&5
+echo "configure:2652: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2655 "configure"
+#line 2657 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2660: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2662: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2686,17 +2688,17 @@ for ac_hdr in unistd.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2690: checking for $ac_hdr" >&5
+echo "configure:2692: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2695 "configure"
+#line 2697 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2700: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2702: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2726,17 +2728,17 @@ for ac_hdr in fnmatch.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2730: checking for $ac_hdr" >&5
+echo "configure:2732: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2735 "configure"
+#line 2737 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2740: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2742: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2766,17 +2768,17 @@ for ac_hdr in linux/joystick.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2770: checking for $ac_hdr" >&5
+echo "configure:2772: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2775 "configure"
+#line 2777 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2780: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2782: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2809,12 +2811,12 @@ fi
 
 
 echo $ac_n "checking for vprintf""... $ac_c" 1>&6
-echo "configure:2813: checking for vprintf" >&5
+echo "configure:2815: checking for vprintf" >&5
 if eval "test \"`echo '$''{'ac_cv_func_vprintf'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2818 "configure"
+#line 2820 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char vprintf(); below.  */
@@ -2837,7 +2839,7 @@ vprintf();
 
 ; return 0; }
 EOF
-if { (eval echo configure:2841: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2843: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_vprintf=yes"
 else
@@ -2861,12 +2863,12 @@ fi
 
 if test "$ac_cv_func_vprintf" != yes; then
 echo $ac_n "checking for _doprnt""... $ac_c" 1>&6
-echo "configure:2865: checking for _doprnt" >&5
+echo "configure:2867: checking for _doprnt" >&5
 if eval "test \"`echo '$''{'ac_cv_func__doprnt'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2870 "configure"
+#line 2872 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char _doprnt(); below.  */
@@ -2889,7 +2891,7 @@ _doprnt();
 
 ; return 0; }
 EOF
-if { (eval echo configure:2893: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2895: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func__doprnt=yes"
 else
@@ -2914,12 +2916,12 @@ fi
 fi
 
 echo $ac_n "checking for vsnprintf""... $ac_c" 1>&6
-echo "configure:2918: checking for vsnprintf" >&5
+echo "configure:2920: checking for vsnprintf" >&5
 if eval "test \"`echo '$''{'ac_cv_func_vsnprintf'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2923 "configure"
+#line 2925 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char vsnprintf(); below.  */
@@ -2942,7 +2944,7 @@ vsnprintf();
 
 ; return 0; }
 EOF
-if { (eval echo configure:2946: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:2948: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_vsnprintf=yes"
 else
@@ -2974,17 +2976,17 @@ for ac_hdr in iostream
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2978: checking for $ac_hdr" >&5
+echo "configure:2980: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2983 "configure"
+#line 2985 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2988: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2990: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -3025,12 +3027,12 @@ cross_compiling=$ac_cv_prog_cc_cross
 
 
 echo $ac_n "checking for uid_t in sys/types.h""... $ac_c" 1>&6
-echo "configure:3029: checking for uid_t in sys/types.h" >&5
+echo "configure:3031: checking for uid_t in sys/types.h" >&5
 if eval "test \"`echo '$''{'ac_cv_type_uid_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3034 "configure"
+#line 3036 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 EOF
@@ -3059,7 +3061,7 @@ EOF
 fi
 
 echo $ac_n "checking type of array argument to getgroups""... $ac_c" 1>&6
-echo "configure:3063: checking type of array argument to getgroups" >&5
+echo "configure:3065: checking type of array argument to getgroups" >&5
 if eval "test \"`echo '$''{'ac_cv_type_getgroups'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3067,7 +3069,7 @@ else
   ac_cv_type_getgroups=cross
 else
   cat > conftest.$ac_ext <<EOF
-#line 3071 "configure"
+#line 3073 "configure"
 #include "confdefs.h"
 
 /* Thanks to Mike Rendell for this test.  */
@@ -3092,7 +3094,7 @@ main()
 }
 
 EOF
-if { (eval echo configure:3096: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:3098: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
     ac_cv_type_getgroups=gid_t
 else
@@ -3106,7 +3108,7 @@ fi
 
 if test $ac_cv_type_getgroups = cross; then
         cat > conftest.$ac_ext <<EOF
-#line 3110 "configure"
+#line 3112 "configure"
 #include "confdefs.h"
 #include <unistd.h>
 EOF
@@ -3130,12 +3132,12 @@ EOF
 
 
 echo $ac_n "checking for mode_t""... $ac_c" 1>&6
-echo "configure:3134: checking for mode_t" >&5
+echo "configure:3136: checking for mode_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_mode_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3139 "configure"
+#line 3141 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -3163,12 +3165,12 @@ EOF
 fi
 
 echo $ac_n "checking for off_t""... $ac_c" 1>&6
-echo "configure:3167: checking for off_t" >&5
+echo "configure:3169: checking for off_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_off_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3172 "configure"
+#line 3174 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -3196,12 +3198,12 @@ EOF
 fi
 
 echo $ac_n "checking for pid_t""... $ac_c" 1>&6
-echo "configure:3200: checking for pid_t" >&5
+echo "configure:3202: checking for pid_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3205 "configure"
+#line 3207 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -3229,12 +3231,12 @@ EOF
 fi
 
 echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6
-echo "configure:3233: checking return type of signal handlers" >&5
+echo "configure:3235: checking return type of signal handlers" >&5
 if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3238 "configure"
+#line 3240 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <signal.h>
@@ -3251,7 +3253,7 @@ int main() {
 int i;
 ; return 0; }
 EOF
-if { (eval echo configure:3255: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3257: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_type_signal=void
 else
@@ -3270,12 +3272,12 @@ EOF
 
 
 echo $ac_n "checking for size_t""... $ac_c" 1>&6
-echo "configure:3274: checking for size_t" >&5
+echo "configure:3276: checking for size_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3279 "configure"
+#line 3281 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -3303,12 +3305,12 @@ EOF
 fi
 
 echo $ac_n "checking for uid_t in sys/types.h""... $ac_c" 1>&6
-echo "configure:3307: checking for uid_t in sys/types.h" >&5
+echo "configure:3309: checking for uid_t in sys/types.h" >&5
 if eval "test \"`echo '$''{'ac_cv_type_uid_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3312 "configure"
+#line 3314 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 EOF
@@ -3339,12 +3341,12 @@ fi
 
 
 echo $ac_n "checking whether stat file-mode macros are broken""... $ac_c" 1>&6
-echo "configure:3343: checking whether stat file-mode macros are broken" >&5
+echo "configure:3345: checking whether stat file-mode macros are broken" >&5
 if eval "test \"`echo '$''{'ac_cv_header_stat_broken'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3348 "configure"
+#line 3350 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/stat.h>
@@ -3395,12 +3397,12 @@ EOF
 fi
 
 echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6
-echo "configure:3399: checking whether time.h and sys/time.h may both be included" >&5
+echo "configure:3401: checking whether time.h and sys/time.h may both be included" >&5
 if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3404 "configure"
+#line 3406 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/time.h>
@@ -3409,7 +3411,7 @@ int main() {
 struct tm *tp;
 ; return 0; }
 EOF
-if { (eval echo configure:3413: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3415: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_header_time=yes
 else
@@ -3430,12 +3432,12 @@ EOF
 fi
 
 echo $ac_n "checking for st_blksize in struct stat""... $ac_c" 1>&6
-echo "configure:3434: checking for st_blksize in struct stat" >&5
+echo "configure:3436: checking for st_blksize in struct stat" >&5
 if eval "test \"`echo '$''{'ac_cv_struct_st_blksize'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3439 "configure"
+#line 3441 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/stat.h>
@@ -3443,7 +3445,7 @@ int main() {
 struct stat s; s.st_blksize;
 ; return 0; }
 EOF
-if { (eval echo configure:3447: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3449: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_struct_st_blksize=yes
 else
@@ -3464,12 +3466,12 @@ EOF
 fi
  
 echo $ac_n "checking for st_blocks in struct stat""... $ac_c" 1>&6
-echo "configure:3468: checking for st_blocks in struct stat" >&5
+echo "configure:3470: checking for st_blocks in struct stat" >&5
 if eval "test \"`echo '$''{'ac_cv_struct_st_blocks'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3473 "configure"
+#line 3475 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/stat.h>
@@ -3477,7 +3479,7 @@ int main() {
 struct stat s; s.st_blocks;
 ; return 0; }
 EOF
-if { (eval echo configure:3481: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3483: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_struct_st_blocks=yes
 else
@@ -3500,12 +3502,12 @@ else
 fi
  
 echo $ac_n "checking for st_rdev in struct stat""... $ac_c" 1>&6
-echo "configure:3504: checking for st_rdev in struct stat" >&5
+echo "configure:3506: checking for st_rdev in struct stat" >&5
 if eval "test \"`echo '$''{'ac_cv_struct_st_rdev'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3509 "configure"
+#line 3511 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/stat.h>
@@ -3513,7 +3515,7 @@ int main() {
 struct stat s; s.st_rdev;
 ; return 0; }
 EOF
-if { (eval echo configure:3517: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3519: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_struct_st_rdev=yes
 else
@@ -3534,12 +3536,12 @@ EOF
 fi
  
 echo $ac_n "checking whether struct tm is in sys/time.h or time.h""... $ac_c" 1>&6
-echo "configure:3538: checking whether struct tm is in sys/time.h or time.h" >&5
+echo "configure:3540: checking whether struct tm is in sys/time.h or time.h" >&5
 if eval "test \"`echo '$''{'ac_cv_struct_tm'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3543 "configure"
+#line 3545 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <time.h>
@@ -3547,7 +3549,7 @@ int main() {
 struct tm *tp; tp->tm_sec;
 ; return 0; }
 EOF
-if { (eval echo configure:3551: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3553: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_struct_tm=time.h
 else
@@ -3568,12 +3570,12 @@ EOF
 fi
 
 echo $ac_n "checking for tm_zone in struct tm""... $ac_c" 1>&6
-echo "configure:3572: checking for tm_zone in struct tm" >&5
+echo "configure:3574: checking for tm_zone in struct tm" >&5
 if eval "test \"`echo '$''{'ac_cv_struct_tm_zone'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3577 "configure"
+#line 3579 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <$ac_cv_struct_tm>
@@ -3581,7 +3583,7 @@ int main() {
 struct tm tm; tm.tm_zone;
 ; return 0; }
 EOF
-if { (eval echo configure:3585: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3587: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_struct_tm_zone=yes
 else
@@ -3601,12 +3603,12 @@ EOF
 
 else
   echo $ac_n "checking for tzname""... $ac_c" 1>&6
-echo "configure:3605: checking for tzname" >&5
+echo "configure:3607: checking for tzname" >&5
 if eval "test \"`echo '$''{'ac_cv_var_tzname'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3610 "configure"
+#line 3612 "configure"
 #include "confdefs.h"
 #include <time.h>
 #ifndef tzname /* For SGI.  */
@@ -3616,7 +3618,7 @@ int main() {
 atoi(*tzname);
 ; return 0; }
 EOF
-if { (eval echo configure:3620: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:3622: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   ac_cv_var_tzname=yes
 else
@@ -3640,12 +3642,12 @@ fi
 
 
 echo $ac_n "checking for working const""... $ac_c" 1>&6
-echo "configure:3644: checking for working const" >&5
+echo "configure:3646: checking for working const" >&5
 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3649 "configure"
+#line 3651 "configure"
 #include "confdefs.h"
 
 int main() {
@@ -3694,7 +3696,7 @@ ccp = (char const *const *) p;
 
 ; return 0; }
 EOF
-if { (eval echo configure:3698: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3700: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_c_const=yes
 else
@@ -3715,21 +3717,21 @@ EOF
 fi
 
 echo $ac_n "checking for inline""... $ac_c" 1>&6
-echo "configure:3719: checking for inline" >&5
+echo "configure:3721: checking for inline" >&5
 if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   ac_cv_c_inline=no
 for ac_kw in inline __inline__ __inline; do
   cat > conftest.$ac_ext <<EOF
-#line 3726 "configure"
+#line 3728 "configure"
 #include "confdefs.h"
 
 int main() {
 } $ac_kw foo() {
 ; return 0; }
 EOF
-if { (eval echo configure:3733: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3735: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_c_inline=$ac_kw; break
 else
@@ -3755,14 +3757,14 @@ EOF
 esac
 
 echo $ac_n "checking whether char is unsigned""... $ac_c" 1>&6
-echo "configure:3759: checking whether char is unsigned" >&5
+echo "configure:3761: checking whether char is unsigned" >&5
 if eval "test \"`echo '$''{'ac_cv_c_char_unsigned'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   if test "$GCC" = yes; then
   # GCC predefines this symbol on systems where it applies.
 cat > conftest.$ac_ext <<EOF
-#line 3766 "configure"
+#line 3768 "configure"
 #include "confdefs.h"
 #ifdef __CHAR_UNSIGNED__
   yes
@@ -3784,7 +3786,7 @@ if test "$cross_compiling" = yes; then
     { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
 else
   cat > conftest.$ac_ext <<EOF
-#line 3788 "configure"
+#line 3790 "configure"
 #include "confdefs.h"
 /* volatile prevents gcc2 from optimizing the test away on sparcs.  */
 #if !defined(__STDC__) || __STDC__ != 1
@@ -3794,7 +3796,7 @@ main() {
   volatile char c = 255; exit(c < 0);
 }
 EOF
-if { (eval echo configure:3798: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:3800: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   ac_cv_c_char_unsigned=yes
 else
@@ -3818,7 +3820,7 @@ EOF
 fi
 
 echo $ac_n "checking for long double""... $ac_c" 1>&6
-echo "configure:3822: checking for long double" >&5
+echo "configure:3824: checking for long double" >&5
 if eval "test \"`echo '$''{'ac_cv_c_long_double'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3829,7 +3831,7 @@ if test "$cross_compiling" = yes; then
     { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
 else
   cat > conftest.$ac_ext <<EOF
-#line 3833 "configure"
+#line 3835 "configure"
 #include "confdefs.h"
 int main() {
 /* The Stardent Vistra knows sizeof(long double), but does not support it.  */
@@ -3837,7 +3839,7 @@ long double foo = 0.0;
 /* On Ultrix 4.3 cc, long double is 4 and double is 8.  */
 exit(sizeof(long double) < sizeof(double)); }
 EOF
-if { (eval echo configure:3841: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:3843: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   ac_cv_c_long_double=yes
 else
@@ -3862,14 +3864,14 @@ fi
 
 
 echo $ac_n "checking whether byte ordering is bigendian""... $ac_c" 1>&6
-echo "configure:3866: checking whether byte ordering is bigendian" >&5
+echo "configure:3868: checking whether byte ordering is bigendian" >&5
 if eval "test \"`echo '$''{'ac_cv_c_bigendian'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   ac_cv_c_bigendian=unknown
 # See if sys/param.h defines the BYTE_ORDER macro.
 cat > conftest.$ac_ext <<EOF
-#line 3873 "configure"
+#line 3875 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/param.h>
@@ -3880,11 +3882,11 @@ int main() {
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:3884: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3886: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   # It does; now see whether it defined to BIG_ENDIAN or not.
 cat > conftest.$ac_ext <<EOF
-#line 3888 "configure"
+#line 3890 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/param.h>
@@ -3895,7 +3897,7 @@ int main() {
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:3899: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3901: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_c_bigendian=yes
 else
@@ -3915,7 +3917,7 @@ if test "$cross_compiling" = yes; then
     { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
 else
   cat > conftest.$ac_ext <<EOF
-#line 3919 "configure"
+#line 3921 "configure"
 #include "confdefs.h"
 main () {
   /* Are we little or big endian?  From Harbison&Steele.  */
@@ -3928,7 +3930,7 @@ main () {
   exit (u.c[sizeof (long) - 1] == 1);
 }
 EOF
-if { (eval echo configure:3932: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:3934: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   ac_cv_c_bigendian=no
 else
@@ -3953,7 +3955,7 @@ fi
 
 
 echo $ac_n "checking size of int *""... $ac_c" 1>&6
-echo "configure:3957: checking size of int *" >&5
+echo "configure:3959: checking size of int *" >&5
 if eval "test \"`echo '$''{'ac_cv_sizeof_int_p'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3961,7 +3963,7 @@ else
     { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
 else
   cat > conftest.$ac_ext <<EOF
-#line 3965 "configure"
+#line 3967 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 main()
@@ -3972,7 +3974,7 @@ main()
   exit(0);
 }
 EOF
-if { (eval echo configure:3976: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:3978: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   ac_cv_sizeof_int_p=`cat conftestval`
 else
@@ -3992,7 +3994,7 @@ EOF
 
 
 echo $ac_n "checking size of int""... $ac_c" 1>&6
-echo "configure:3996: checking size of int" >&5
+echo "configure:3998: checking size of int" >&5
 if eval "test \"`echo '$''{'ac_cv_sizeof_int'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4000,7 +4002,7 @@ else
     { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
 else
   cat > conftest.$ac_ext <<EOF
-#line 4004 "configure"
+#line 4006 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 main()
@@ -4011,7 +4013,7 @@ main()
   exit(0);
 }
 EOF
-if { (eval echo configure:4015: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:4017: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   ac_cv_sizeof_int=`cat conftestval`
 else
@@ -4031,7 +4033,7 @@ EOF
 
 
 echo $ac_n "checking size of long""... $ac_c" 1>&6
-echo "configure:4035: checking size of long" >&5
+echo "configure:4037: checking size of long" >&5
 if eval "test \"`echo '$''{'ac_cv_sizeof_long'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4039,7 +4041,7 @@ else
     { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
 else
   cat > conftest.$ac_ext <<EOF
-#line 4043 "configure"
+#line 4045 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 main()
@@ -4050,7 +4052,7 @@ main()
   exit(0);
 }
 EOF
-if { (eval echo configure:4054: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:4056: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   ac_cv_sizeof_long=`cat conftestval`
 else
@@ -4074,7 +4076,7 @@ EOF
 
 
 echo $ac_n "checking for long file names""... $ac_c" 1>&6
-echo "configure:4078: checking for long file names" >&5
+echo "configure:4080: checking for long file names" >&5
 if eval "test \"`echo '$''{'ac_cv_sys_long_file_names'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4125,7 +4127,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4129: checking for $ac_word" >&5
+echo "configure:4131: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_YACC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4158,7 +4160,7 @@ test -n "$YACC" || YACC="yacc"
 # Extract the first word of "flex", so it can be a program name with args.
 set dummy flex; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4162: checking for $ac_word" >&5
+echo "configure:4164: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_LEX'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4191,7 +4193,7 @@ then
   *) ac_lib=l ;;
   esac
   echo $ac_n "checking for yywrap in -l$ac_lib""... $ac_c" 1>&6
-echo "configure:4195: checking for yywrap in -l$ac_lib" >&5
+echo "configure:4197: checking for yywrap in -l$ac_lib" >&5
 ac_lib_var=`echo $ac_lib'_'yywrap | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4199,7 +4201,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-l$ac_lib  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4203 "configure"
+#line 4205 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4210,7 +4212,7 @@ int main() {
 yywrap()
 ; return 0; }
 EOF
-if { (eval echo configure:4214: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4216: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4233,7 +4235,7 @@ fi
 fi
 
 echo $ac_n "checking lex output file root""... $ac_c" 1>&6
-echo "configure:4237: checking lex output file root" >&5
+echo "configure:4239: checking lex output file root" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_lex_root'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4254,7 +4256,7 @@ echo "$ac_t""$ac_cv_prog_lex_root" 1>&6
 LEX_OUTPUT_ROOT=$ac_cv_prog_lex_root
 
 echo $ac_n "checking whether yytext is a pointer""... $ac_c" 1>&6
-echo "configure:4258: checking whether yytext is a pointer" >&5
+echo "configure:4260: checking whether yytext is a pointer" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_lex_yytext_pointer'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4266,14 +4268,14 @@ echo 'extern char *yytext;' >>$LEX_OUTPUT_ROOT.c
 ac_save_LIBS="$LIBS"
 LIBS="$LIBS $LEXLIB"
 cat > conftest.$ac_ext <<EOF
-#line 4270 "configure"
+#line 4272 "configure"
 #include "confdefs.h"
 `cat $LEX_OUTPUT_ROOT.c`
 int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:4277: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4279: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   ac_cv_prog_lex_yytext_pointer=yes
 else
@@ -4300,12 +4302,12 @@ DL_LIBRARY=
 for ac_func in dlopen
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:4304: checking for $ac_func" >&5
+echo "configure:4306: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4309 "configure"
+#line 4311 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -4328,7 +4330,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:4332: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4334: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -4353,7 +4355,7 @@ EOF
 else
   echo "$ac_t""no" 1>&6
 echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6
-echo "configure:4357: checking for dlopen in -ldl" >&5
+echo "configure:4359: checking for dlopen in -ldl" >&5
 ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4361,7 +4363,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldl  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4365 "configure"
+#line 4367 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4372,7 +4374,7 @@ int main() {
 dlopen()
 ; return 0; }
 EOF
-if { (eval echo configure:4376: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4378: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4394,7 +4396,7 @@ EOF
 else
   echo "$ac_t""no" 1>&6
 echo $ac_n "checking for dld_link in -ldld""... $ac_c" 1>&6
-echo "configure:4398: checking for dld_link in -ldld" >&5
+echo "configure:4400: checking for dld_link in -ldld" >&5
 ac_lib_var=`echo dld'_'dld_link | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4402,7 +4404,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldld  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4406 "configure"
+#line 4408 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4413,7 +4415,7 @@ int main() {
 dld_link()
 ; return 0; }
 EOF
-if { (eval echo configure:4417: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4419: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4437,12 +4439,12 @@ else
 for ac_func in shl_load
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:4441: checking for $ac_func" >&5
+echo "configure:4443: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4446 "configure"
+#line 4448 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -4465,7 +4467,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:4469: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4471: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -4505,7 +4507,7 @@ done
 
 
 echo $ac_n "checking for underscore before symbols""... $ac_c" 1>&6
-echo "configure:4509: checking for underscore before symbols" >&5
+echo "configure:4511: checking for underscore before symbols" >&5
 if eval "test \"`echo '$''{'libltdl_cv_uscore'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4527,7 +4529,7 @@ if test x"$libltdl_cv_uscore" = xyes; then
   if test x"$ac_cv_func_dlopen" = xyes ||
      test x"$ac_cv_lib_dl_dlopen" = xyes ; then
        echo $ac_n "checking whether we have to add an underscore for dlsym""... $ac_c" 1>&6
-echo "configure:4531: checking whether we have to add an underscore for dlsym" >&5
+echo "configure:4533: checking whether we have to add an underscore for dlsym" >&5
 if eval "test \"`echo '$''{'libltdl_cv_need_uscore'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4536,7 +4538,7 @@ else
 
 else
   cat > conftest.$ac_ext <<EOF
-#line 4540 "configure"
+#line 4542 "configure"
 #include "confdefs.h"
 
 #include <dlfcn.h>
@@ -4547,7 +4549,7 @@ main() { void *self, *ptr1, *ptr2; self=dlopen(NULL,RTLD_LAZY);
     if(ptr1 && !ptr2) exit(0); } exit(1); } 
 
 EOF
-if { (eval echo configure:4551: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:4553: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   libltdl_cv_need_uscore=no
 else
@@ -4576,12 +4578,12 @@ fi
 for ac_func in strerror
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:4580: checking for $ac_func" >&5
+echo "configure:4582: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4585 "configure"
+#line 4587 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -4604,7 +4606,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:4608: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4610: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -4641,7 +4643,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
 fi
 
 echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:4645: checking host system type" >&5
+echo "configure:4647: checking host system type" >&5
 
 host_alias=$host
 case "$host_alias" in
@@ -4867,6 +4869,7 @@ DEFAULT_wxUSE_POSTSCRIPT=1
 DEFAULT_wxUSE_IPC=1
 DEFAULT_wxUSE_RESOURCES=1
 DEFAULT_wxUSE_CLIPBOARD=1
+DEFAULT_wxUSE_TOOLTIPS=1
 DEFAULT_wxUSE_DRAG_AND_DROP=1
 
 DEFAULT_wxUSE_MDI_ARCHITECTURE=1
@@ -4884,7 +4887,7 @@ DEFAULT_wxUSE_WCSRTOMBS=0
 
 
 echo $ac_n "checking "for gtk"""... $ac_c" 1>&6
-echo "configure:4888: checking "for gtk"" >&5
+echo "configure:4891: checking "for gtk"" >&5
 # Check whether --with-gtk or --without-gtk was given.
 if test "${with_gtk+set}" = set; then
   withval="$with_gtk"
@@ -4914,7 +4917,7 @@ fi
 
 
 echo $ac_n "checking "for qt"""... $ac_c" 1>&6
-echo "configure:4918: checking "for qt"" >&5
+echo "configure:4921: checking "for qt"" >&5
 # Check whether --with-qt or --without-qt was given.
 if test "${with_qt+set}" = set; then
   withval="$with_qt"
@@ -4944,7 +4947,7 @@ fi
 
 
 echo $ac_n "checking "for motif"""... $ac_c" 1>&6
-echo "configure:4948: checking "for motif"" >&5
+echo "configure:4951: checking "for motif"" >&5
 # Check whether --with-motif or --without-motif was given.
 if test "${with_motif+set}" = set; then
   withval="$with_motif"
@@ -4975,7 +4978,7 @@ fi
 
 
 echo $ac_n "checking "for shared"""... $ac_c" 1>&6
-echo "configure:4979: checking "for shared"" >&5
+echo "configure:4982: checking "for shared"" >&5
 # Check whether --with-shared or --without-shared was given.
 if test "${with_shared+set}" = set; then
   withval="$with_shared"
@@ -5005,7 +5008,7 @@ fi
 
 
 echo $ac_n "checking "for optimise"""... $ac_c" 1>&6
-echo "configure:5009: checking "for optimise"" >&5
+echo "configure:5012: checking "for optimise"" >&5
 # Check whether --with-optimise or --without-optimise was given.
 if test "${with_optimise+set}" = set; then
   withval="$with_optimise"
@@ -5035,7 +5038,7 @@ fi
 
 
 echo $ac_n "checking "for debug_flag"""... $ac_c" 1>&6
-echo "configure:5039: checking "for debug_flag"" >&5
+echo "configure:5042: checking "for debug_flag"" >&5
 # Check whether --with-debug_flag or --without-debug_flag was given.
 if test "${with_debug_flag+set}" = set; then
   withval="$with_debug_flag"
@@ -5065,7 +5068,7 @@ fi
 
 
 echo $ac_n "checking "for debug_info"""... $ac_c" 1>&6
-echo "configure:5069: checking "for debug_info"" >&5
+echo "configure:5072: checking "for debug_info"" >&5
 # Check whether --with-debug_info or --without-debug_info was given.
 if test "${with_debug_info+set}" = set; then
   withval="$with_debug_info"
@@ -5095,7 +5098,7 @@ fi
 
 
 echo $ac_n "checking "for debug_gdb"""... $ac_c" 1>&6
-echo "configure:5099: checking "for debug_gdb"" >&5
+echo "configure:5102: checking "for debug_gdb"" >&5
 # Check whether --with-debug_gdb or --without-debug_gdb was given.
 if test "${with_debug_gdb+set}" = set; then
   withval="$with_debug_gdb"
@@ -5125,7 +5128,7 @@ fi
 
 
 echo $ac_n "checking "for mem_tracing"""... $ac_c" 1>&6
-echo "configure:5129: checking "for mem_tracing"" >&5
+echo "configure:5132: checking "for mem_tracing"" >&5
 # Check whether --with-mem_tracing or --without-mem_tracing was given.
 if test "${with_mem_tracing+set}" = set; then
   withval="$with_mem_tracing"
@@ -5155,7 +5158,7 @@ fi
 
 
 echo $ac_n "checking "for dmalloc"""... $ac_c" 1>&6
-echo "configure:5159: checking "for dmalloc"" >&5
+echo "configure:5162: checking "for dmalloc"" >&5
 # Check whether --with-dmalloc or --without-dmalloc was given.
 if test "${with_dmalloc+set}" = set; then
   withval="$with_dmalloc"
@@ -5185,7 +5188,7 @@ fi
 
 
 echo $ac_n "checking "for profile"""... $ac_c" 1>&6
-echo "configure:5189: checking "for profile"" >&5
+echo "configure:5192: checking "for profile"" >&5
 # Check whether --with-profile or --without-profile was given.
 if test "${with_profile+set}" = set; then
   withval="$with_profile"
@@ -5215,7 +5218,7 @@ fi
 
 
 echo $ac_n "checking "for apple_ieee"""... $ac_c" 1>&6
-echo "configure:5219: checking "for apple_ieee"" >&5
+echo "configure:5222: checking "for apple_ieee"" >&5
 # Check whether --with-apple_ieee or --without-apple_ieee was given.
 if test "${with_apple_ieee+set}" = set; then
   withval="$with_apple_ieee"
@@ -5245,7 +5248,7 @@ fi
 
 
 echo $ac_n "checking "for threads"""... $ac_c" 1>&6
-echo "configure:5249: checking "for threads"" >&5
+echo "configure:5252: checking "for threads"" >&5
 # Check whether --with-threads or --without-threads was given.
 if test "${with_threads+set}" = set; then
   withval="$with_threads"
@@ -5276,7 +5279,7 @@ fi
 
 
 echo $ac_n "checking "for zlib"""... $ac_c" 1>&6
-echo "configure:5280: checking "for zlib"" >&5
+echo "configure:5283: checking "for zlib"" >&5
 # Check whether --with-zlib or --without-zlib was given.
 if test "${with_zlib+set}" = set; then
   withval="$with_zlib"
@@ -5306,7 +5309,7 @@ fi
 
 
 echo $ac_n "checking "for libpng"""... $ac_c" 1>&6
-echo "configure:5310: checking "for libpng"" >&5
+echo "configure:5313: checking "for libpng"" >&5
 # Check whether --with-libpng or --without-libpng was given.
 if test "${with_libpng+set}" = set; then
   withval="$with_libpng"
@@ -5336,7 +5339,7 @@ fi
 
 
 echo $ac_n "checking "for odbc"""... $ac_c" 1>&6
-echo "configure:5340: checking "for odbc"" >&5
+echo "configure:5343: checking "for odbc"" >&5
 # Check whether --with-odbc or --without-odbc was given.
 if test "${with_odbc+set}" = set; then
   withval="$with_odbc"
@@ -5367,7 +5370,7 @@ fi
 
 
 echo $ac_n "checking "for timedate"""... $ac_c" 1>&6
-echo "configure:5371: checking "for timedate"" >&5
+echo "configure:5374: checking "for timedate"" >&5
 # Check whether --with-timedate or --without-timedate was given.
 if test "${with_timedate+set}" = set; then
   withval="$with_timedate"
@@ -5397,7 +5400,7 @@ fi
 
 
 echo $ac_n "checking "for intl"""... $ac_c" 1>&6
-echo "configure:5401: checking "for intl"" >&5
+echo "configure:5404: checking "for intl"" >&5
 # Check whether --with-intl or --without-intl was given.
 if test "${with_intl+set}" = set; then
   withval="$with_intl"
@@ -5427,7 +5430,7 @@ fi
 
 
 echo $ac_n "checking "for config"""... $ac_c" 1>&6
-echo "configure:5431: checking "for config"" >&5
+echo "configure:5434: checking "for config"" >&5
 # Check whether --with-config or --without-config was given.
 if test "${with_config+set}" = set; then
   withval="$with_config"
@@ -5457,7 +5460,7 @@ fi
 
 
 echo $ac_n "checking "for streams"""... $ac_c" 1>&6
-echo "configure:5461: checking "for streams"" >&5
+echo "configure:5464: checking "for streams"" >&5
 # Check whether --with-streams or --without-streams was given.
 if test "${with_streams+set}" = set; then
   withval="$with_streams"
@@ -5487,7 +5490,7 @@ fi
 
 
 echo $ac_n "checking "for serial"""... $ac_c" 1>&6
-echo "configure:5491: checking "for serial"" >&5
+echo "configure:5494: checking "for serial"" >&5
 # Check whether --with-serial or --without-serial was given.
 if test "${with_serial+set}" = set; then
   withval="$with_serial"
@@ -5518,7 +5521,7 @@ fi
 
 
 echo $ac_n "checking "for afmfonts"""... $ac_c" 1>&6
-echo "configure:5522: checking "for afmfonts"" >&5
+echo "configure:5525: checking "for afmfonts"" >&5
 # Check whether --with-afmfonts or --without-afmfonts was given.
 if test "${with_afmfonts+set}" = set; then
   withval="$with_afmfonts"
@@ -5548,7 +5551,7 @@ fi
 
 
 echo $ac_n "checking "for normalized"""... $ac_c" 1>&6
-echo "configure:5552: checking "for normalized"" >&5
+echo "configure:5555: checking "for normalized"" >&5
 # Check whether --with-normalized or --without-normalized was given.
 if test "${with_normalized+set}" = set; then
   withval="$with_normalized"
@@ -5578,7 +5581,7 @@ fi
 
 
 echo $ac_n "checking "for postscript"""... $ac_c" 1>&6
-echo "configure:5582: checking "for postscript"" >&5
+echo "configure:5585: checking "for postscript"" >&5
 # Check whether --with-postscript or --without-postscript was given.
 if test "${with_postscript+set}" = set; then
   withval="$with_postscript"
@@ -5609,7 +5612,7 @@ fi
 
 
 echo $ac_n "checking "for unicode"""... $ac_c" 1>&6
-echo "configure:5613: checking "for unicode"" >&5
+echo "configure:5616: checking "for unicode"" >&5
 # Check whether --with-unicode or --without-unicode was given.
 if test "${with_unicode+set}" = set; then
   withval="$with_unicode"
@@ -5639,7 +5642,7 @@ fi
 
 
 echo $ac_n "checking "for wcsrtombs"""... $ac_c" 1>&6
-echo "configure:5643: checking "for wcsrtombs"" >&5
+echo "configure:5646: checking "for wcsrtombs"" >&5
 # Check whether --with-wcsrtombs or --without-wcsrtombs was given.
 if test "${with_wcsrtombs+set}" = set; then
   withval="$with_wcsrtombs"
@@ -5670,7 +5673,7 @@ fi
 
 
 echo $ac_n "checking "for wxresources"""... $ac_c" 1>&6
-echo "configure:5674: checking "for wxresources"" >&5
+echo "configure:5677: checking "for wxresources"" >&5
 # Check whether --with-wxresources or --without-wxresources was given.
 if test "${with_wxresources+set}" = set; then
   withval="$with_wxresources"
@@ -5700,7 +5703,7 @@ fi
 
 
 echo $ac_n "checking "for prologio"""... $ac_c" 1>&6
-echo "configure:5704: checking "for prologio"" >&5
+echo "configure:5707: checking "for prologio"" >&5
 # Check whether --with-prologio or --without-prologio was given.
 if test "${with_prologio+set}" = set; then
   withval="$with_prologio"
@@ -5730,7 +5733,7 @@ fi
 
 
 echo $ac_n "checking "for RPC"""... $ac_c" 1>&6
-echo "configure:5734: checking "for RPC"" >&5
+echo "configure:5737: checking "for RPC"" >&5
 # Check whether --with-rpc or --without-rpc was given.
 if test "${with_rpc+set}" = set; then
   withval="$with_rpc"
@@ -5761,7 +5764,7 @@ fi
 
 
 echo $ac_n "checking "for IPC"""... $ac_c" 1>&6
-echo "configure:5765: checking "for IPC"" >&5
+echo "configure:5768: checking "for IPC"" >&5
 # Check whether --with-ipc or --without-ipc was given.
 if test "${with_ipc+set}" = set; then
   withval="$with_ipc"
@@ -5791,7 +5794,7 @@ fi
 
 
 echo $ac_n "checking "for resources"""... $ac_c" 1>&6
-echo "configure:5795: checking "for resources"" >&5
+echo "configure:5798: checking "for resources"" >&5
 # Check whether --with-resources or --without-resources was given.
 if test "${with_resources+set}" = set; then
   withval="$with_resources"
@@ -5821,7 +5824,7 @@ fi
 
 
 echo $ac_n "checking "for clipboard"""... $ac_c" 1>&6
-echo "configure:5825: checking "for clipboard"" >&5
+echo "configure:5828: checking "for clipboard"" >&5
 # Check whether --with-clipboard or --without-clipboard was given.
 if test "${with_clipboard+set}" = set; then
   withval="$with_clipboard"
@@ -5850,8 +5853,38 @@ fi
 
 
 
+echo $ac_n "checking "for tooltips"""... $ac_c" 1>&6
+echo "configure:5858: checking "for tooltips"" >&5
+# Check whether --with-tooltips or --without-tooltips was given.
+if test "${with_tooltips+set}" = set; then
+  withval="$with_tooltips"
+  if test "x$with_tooltips" = xyes; then
+  ac_cv_use_tooltips='wxUSE_TOOLTIPS="1"'
+else
+  ac_cv_use_tooltips='wxUSE_TOOLTIPS="0"'
+fi
+else
+  
+  LINE=`grep "wxUSE_TOOLTIPS" ${OSTYPE}.system.cache`
+  if test "x$LINE" != x ; then
+    eval "DEFAULT_$LINE"
+  fi
+  ac_cv_use_tooltips='wxUSE_TOOLTIPS='$DEFAULT_wxUSE_TOOLTIPS
+
+fi
+
+eval "$ac_cv_use_tooltips"
+echo $ac_cv_use_tooltips >> ${OSTYPE}.system.cache.tmp
+if test "$wxUSE_TOOLTIPS" = 1; then
+  echo "$ac_t""yes" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+
+
 echo $ac_n "checking "for dnd"""... $ac_c" 1>&6
-echo "configure:5855: checking "for dnd"" >&5
+echo "configure:5888: checking "for dnd"" >&5
 # Check whether --with-dnd or --without-dnd was given.
 if test "${with_dnd+set}" = set; then
   withval="$with_dnd"
@@ -5882,7 +5915,7 @@ fi
 
 
 echo $ac_n "checking "for mdi"""... $ac_c" 1>&6
-echo "configure:5886: checking "for mdi"" >&5
+echo "configure:5919: checking "for mdi"" >&5
 # Check whether --with-mdi or --without-mdi was given.
 if test "${with_mdi+set}" = set; then
   withval="$with_mdi"
@@ -5912,7 +5945,7 @@ fi
 
 
 echo $ac_n "checking "for docview"""... $ac_c" 1>&6
-echo "configure:5916: checking "for docview"" >&5
+echo "configure:5949: checking "for docview"" >&5
 # Check whether --with-docview or --without-docview was given.
 if test "${with_docview+set}" = set; then
   withval="$with_docview"
@@ -5942,7 +5975,7 @@ fi
 
 
 echo $ac_n "checking "for printarch"""... $ac_c" 1>&6
-echo "configure:5946: checking "for printarch"" >&5
+echo "configure:5979: checking "for printarch"" >&5
 # Check whether --with-printarch or --without-printarch was given.
 if test "${with_printarch+set}" = set; then
   withval="$with_printarch"
@@ -5972,7 +6005,7 @@ fi
 
 
 echo $ac_n "checking "for help"""... $ac_c" 1>&6
-echo "configure:5976: checking "for help"" >&5
+echo "configure:6009: checking "for help"" >&5
 # Check whether --with-help or --without-help was given.
 if test "${with_help+set}" = set; then
   withval="$with_help"
@@ -6010,7 +6043,7 @@ fi
 
 if test "$USE_LINUX" = 1; then
        echo $ac_n "checking for gettext in -lc""... $ac_c" 1>&6
-echo "configure:6014: checking for gettext in -lc" >&5
+echo "configure:6047: checking for gettext in -lc" >&5
 ac_lib_var=`echo c'_'gettext | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6018,7 +6051,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lc  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6022 "configure"
+#line 6055 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6029,7 +6062,7 @@ int main() {
 gettext()
 ; return 0; }
 EOF
-if { (eval echo configure:6033: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6066: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6100,7 +6133,7 @@ fi
   # Extract the first word of "gtk-config", so it can be a program name with args.
 set dummy gtk-config; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6104: checking for $ac_word" >&5
+echo "configure:6137: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_GTK_CONFIG'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6131,7 +6164,7 @@ fi
 
   min_gtk_version=1.0.4
   echo $ac_n "checking for GTK - version >= $min_gtk_version""... $ac_c" 1>&6
-echo "configure:6135: checking for GTK - version >= $min_gtk_version" >&5
+echo "configure:6168: checking for GTK - version >= $min_gtk_version" >&5
   no_gtk=""
   if test "$GTK_CONFIG" != "no" ; then
     GTK_CFLAGS=`$GTK_CONFIG --cflags`
@@ -6144,7 +6177,7 @@ echo "configure:6135: checking for GTK - version >= $min_gtk_version" >&5
   echo $ac_n "cross compiling; assumed OK... $ac_c"
 else
   cat > conftest.$ac_ext <<EOF
-#line 6148 "configure"
+#line 6181 "configure"
 #include "confdefs.h"
 
 #include <gtk/gtk.h>
@@ -6168,7 +6201,7 @@ main ()
 }
 
 EOF
-if { (eval echo configure:6172: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:6205: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   :
 else
@@ -6208,7 +6241,7 @@ fi
 
 if test "$wxUSE_QT" = 1; then
    echo $ac_n "checking for Qt includes""... $ac_c" 1>&6
-echo "configure:6212: checking for Qt includes" >&5
+echo "configure:6245: checking for Qt includes" >&5
    
 ac_find_includes=
 for ac_dir in $SEARCH_INCLUDE;
@@ -6222,7 +6255,7 @@ for ac_dir in $SEARCH_INCLUDE;
    if test "$ac_find_includes" != "" ; then
      echo "$ac_t""found $ac_find_includes" 1>&6
      echo $ac_n "checking for Qt library""... $ac_c" 1>&6
-echo "configure:6226: checking for Qt library" >&5
+echo "configure:6259: checking for Qt library" >&5
      
 ac_find_libraries=
 for ac_dir in $SEARCH_LIB;
@@ -6273,7 +6306,7 @@ fi
 
 if test "$wxUSE_MOTIF" = 1; then
    echo $ac_n "checking for Motif/Lesstif includes""... $ac_c" 1>&6
-echo "configure:6277: checking for Motif/Lesstif includes" >&5
+echo "configure:6310: checking for Motif/Lesstif includes" >&5
    
 ac_find_includes=
 for ac_dir in $SEARCH_INCLUDE;
@@ -6287,7 +6320,7 @@ for ac_dir in $SEARCH_INCLUDE;
    if test "$ac_find_includes" != "" ; then
      echo "$ac_t""found $ac_find_includes" 1>&6
      echo $ac_n "checking for Motif/Lesstif library""... $ac_c" 1>&6
-echo "configure:6291: checking for Motif/Lesstif library" >&5
+echo "configure:6324: checking for Motif/Lesstif library" >&5
      
 ac_find_libraries=
 for ac_dir in $SEARCH_LIB;
@@ -6324,7 +6357,7 @@ for ac_dir in $SEARCH_LIB;
        CHECK_INCLUDE="$CHECK_INCLUDE $ac_path_to_include"
        echo "$ac_t""found at $ac_find_libraries" 1>&6
        echo $ac_n "checking for Xt library""... $ac_c" 1>&6
-echo "configure:6328: checking for Xt library" >&5
+echo "configure:6361: checking for Xt library" >&5
        
 ac_find_libraries=
 for ac_dir in $SEARCH_LIB;
@@ -6350,7 +6383,7 @@ for ac_dir in $SEARCH_LIB;
          CHECK_LINK="$CHECK_LIB $ac_path_to_link"
          echo "$ac_t""found at $ac_find_libraries" 1>&6
          echo $ac_n "checking for Xpm library""... $ac_c" 1>&6
-echo "configure:6354: checking for Xpm library" >&5
+echo "configure:6387: checking for Xpm library" >&5
          
 ac_find_libraries=
 for ac_dir in $SEARCH_LIB;
@@ -6660,6 +6693,13 @@ EOF
 
 fi
 
+if test "$wxUSE_TOOLTIPS" = 1 ; then
+  cat >> confdefs.h <<EOF
+#define wxUSE_TOOLTIPS $wxUSE_TOOLTIPS
+EOF
+
+fi
+
 if test "$wxUSE_DRAG_AND_DROP" = 1 ; then
   cat >> confdefs.h <<EOF
 #define wxUSE_DRAG_AND_DROP $wxUSE_DRAG_AND_DROP
@@ -6686,7 +6726,7 @@ if test "$wxUSE_THREADS" = "1"; then
 
      
      echo $ac_n "checking for pthread_create in -lpthread-0.7""... $ac_c" 1>&6
-echo "configure:6690: checking for pthread_create in -lpthread-0.7" >&5
+echo "configure:6730: checking for pthread_create in -lpthread-0.7" >&5
 ac_lib_var=`echo pthread-0.7'_'pthread_create | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6694,7 +6734,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lpthread-0.7  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6698 "configure"
+#line 6738 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6705,7 +6745,7 @@ int main() {
 pthread_create()
 ; return 0; }
 EOF
-if { (eval echo configure:6709: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6749: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6729,17 +6769,17 @@ else
 
        ac_safe=`echo "sys/prctl.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for sys/prctl.h""... $ac_c" 1>&6
-echo "configure:6733: checking for sys/prctl.h" >&5
+echo "configure:6773: checking for sys/prctl.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6738 "configure"
+#line 6778 "configure"
 #include "confdefs.h"
 #include <sys/prctl.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:6743: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:6783: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -6765,7 +6805,7 @@ fi
 
           
      echo $ac_n "checking for pthread_setcanceltype in -lpthread""... $ac_c" 1>&6
-echo "configure:6769: checking for pthread_setcanceltype in -lpthread" >&5
+echo "configure:6809: checking for pthread_setcanceltype in -lpthread" >&5
 ac_lib_var=`echo pthread'_'pthread_setcanceltype | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6773,7 +6813,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lpthread  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6777 "configure"
+#line 6817 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6784,7 +6824,7 @@ int main() {
 pthread_setcanceltype()
 ; return 0; }
 EOF
-if { (eval echo configure:6788: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6828: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6820,7 +6860,7 @@ EOF
 
     
     echo $ac_n "checking for printf in -lposix4""... $ac_c" 1>&6
-echo "configure:6824: checking for printf in -lposix4" >&5
+echo "configure:6864: checking for printf in -lposix4" >&5
 ac_lib_var=`echo posix4'_'printf | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6828,7 +6868,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lposix4  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6832 "configure"
+#line 6872 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6839,7 +6879,7 @@ int main() {
 printf()
 ; return 0; }
 EOF
-if { (eval echo configure:6843: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6883: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
index c40297ad141c83b1ba6c9a36819d5b44b3871284..9b03996b5dc6c68aa5ea5ff43ef09f082ded9e47 100644 (file)
@@ -764,6 +764,7 @@ DEFAULT_wxUSE_POSTSCRIPT=1
 DEFAULT_wxUSE_IPC=1
 DEFAULT_wxUSE_RESOURCES=1
 DEFAULT_wxUSE_CLIPBOARD=1
+DEFAULT_wxUSE_TOOLTIPS=1
 DEFAULT_wxUSE_DRAG_AND_DROP=1
 
 DEFAULT_wxUSE_MDI_ARCHITECTURE=1
@@ -938,6 +939,10 @@ AC_OVERRIDES(clipboard,clipboard,
 **--with-clipboard        use wxClipboard classes,
 wxUSE_CLIPBOARD)
 
+AC_OVERRIDES(tooltips,tooltips,
+**--with-tooltips         use tooltips,
+wxUSE_TOOLTIPS)
+
 AC_OVERRIDES(dnd,dnd,
 **--with-dnd              use Drag'n'Drop classes,
 wxUSE_DRAG_AND_DROP)
@@ -1282,6 +1287,10 @@ if test "$wxUSE_CLIPBOARD" = 1 ; then
   AC_DEFINE_UNQUOTED(wxUSE_CLIPBOARD,$wxUSE_CLIPBOARD)
 fi
 
+if test "$wxUSE_TOOLTIPS" = 1 ; then
+  AC_DEFINE_UNQUOTED(wxUSE_TOOLTIPS,$wxUSE_TOOLTIPS)
+fi
+
 if test "$wxUSE_DRAG_AND_DROP" = 1 ; then
   AC_DEFINE_UNQUOTED(wxUSE_DRAG_AND_DROP,$wxUSE_DRAG_AND_DROP)
 fi
index f883cf78c9821e21f05350f39e4dbc13e4cca325..3737b9eb952b38de45bd2addc37a15420db12e91 100644 (file)
@@ -4,7 +4,7 @@
 // Author:      Robert Roebling
 // Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 
@@ -38,33 +38,32 @@ extern const char *wxCheckBoxNameStr;
 
 class wxCheckBox: public wxControl
 {
-  DECLARE_DYNAMIC_CLASS(wxCheckBox)
-
-  public:
+DECLARE_DYNAMIC_CLASS(wxCheckBox)
 
+public:
     wxCheckBox(void);
-    inline wxCheckBox( wxWindow *parent, wxWindowID id, const wxString& label,
-           const wxPoint& pos = wxDefaultPosition,
-           const wxSize& size = wxDefaultSize, long style = 0,
-           const wxValidator& validator = wxDefaultValidator,
-           const wxString& name = wxCheckBoxNameStr)
+    wxCheckBox( wxWindow *parent, wxWindowID id, const wxString& label,
+            const wxPoint& pos = wxDefaultPosition,
+            const wxSize& size = wxDefaultSize, long style = 0,
+            const wxValidator& validator = wxDefaultValidator,
+            const wxString& name = wxCheckBoxNameStr)
     {
-      Create(parent, id, label, pos, size, style, validator, name);
+        Create(parent, id, label, pos, size, style, validator, name);
     }
     bool Create( wxWindow *parent, wxWindowID id, const wxString& label,
-           const wxPoint& pos = wxDefaultPosition,
-           const wxSize& size = wxDefaultSize, long style = 0,
-           const wxValidator& validator = wxDefaultValidator,
-           const wxString& name = wxCheckBoxNameStr );
+            const wxPoint& pos = wxDefaultPosition,
+            const wxSize& size = wxDefaultSize, long style = 0,
+            const wxValidator& validator = wxDefaultValidator,
+            const wxString& name = wxCheckBoxNameStr );
     void SetValue( bool state );
     bool GetValue() const;
-    
+
     void SetLabel( const wxString& label );
     void Enable( bool enable );
-    
-  // implementation        
-  
-    void ApplyWidgetStyle();    
+
+    // implementation
+
+    void ApplyWidgetStyle();
 
     bool   m_blockFirstEvent;
 };
index 4331972d9fe60b4ce3b6e386c6795df1234548f5..41417e2af40a69d810b8b9446e18944b2a3ee4d7 100644 (file)
@@ -2,7 +2,7 @@
 // Name:        checklst.h
 // Purpose:     wxCheckListBox class
 // Author:      Robert Roebling
-// Modified by: 
+// Modified by:
 // RCS-ID:      $Id$
 // Copyright:   (c) 1998 Robert Roebling
 // Licence:     wxWindows licence
@@ -33,25 +33,24 @@ class wxCheckListBox;
 
 class wxCheckListBox : public wxListBox
 {
-  DECLARE_DYNAMIC_CLASS(wxCheckListBox)
-public:
-
-  wxCheckListBox();
-  wxCheckListBox(wxWindow *parent, wxWindowID id,
-                 const wxPoint& pos = wxDefaultPosition,
-                 const wxSize& size = wxDefaultSize,
-                 int nStrings = 0, 
-                 const wxString choices[] = (wxString[]) NULL,
-                 long style = 0,
-                 const wxValidator& validator = wxDefaultValidator,
-                 const wxString& name = wxListBoxNameStr);
-
-  bool IsChecked( int index ) const;
-  void Check( int index, bool check = TRUE );
-  
-  int GetItemHeight();
+DECLARE_DYNAMIC_CLASS(wxCheckListBox)
 
+public:
+    wxCheckListBox();
+    wxCheckListBox(wxWindow *parent, wxWindowID id,
+            const wxPoint& pos = wxDefaultPosition,
+            const wxSize& size = wxDefaultSize,
+            int nStrings = 0,
+            const wxString choices[] = (wxString[]) NULL,
+            long style = 0,
+            const wxValidator& validator = wxDefaultValidator,
+            const wxString& name = wxListBoxNameStr);
+
+    bool IsChecked( int index ) const;
+    void Check( int index, bool check = TRUE );
+
+    int GetItemHeight() const;
 };
 
-#endif 
+#endif
         //__GTKCHECKLISTH__
index 41b5e1b229d3654f7fff582a1c5027e53cc5081d..2a5f428da1a75343b65a1c9b29383639908df0d6 100644 (file)
@@ -1,10 +1,10 @@
 /////////////////////////////////////////////////////////////////////////////
 // Name:        listbox.h
-// Purpose:
+// Purpose:     wxListBox class declaration
 // Author:      Robert Roebling
 // Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 
@@ -39,75 +39,78 @@ extern const char *wxListBoxNameStr;
 
 class wxListBox : public wxControl
 {
-  DECLARE_DYNAMIC_CLASS(wxListBox)
+DECLARE_DYNAMIC_CLASS(wxListBox)
 
 public:
+    wxListBox();
+    wxListBox( wxWindow *parent, wxWindowID id,
+            const wxPoint& pos = wxDefaultPosition,
+            const wxSize& size = wxDefaultSize,
+            int n = 0, const wxString choices[] = (const wxString *) NULL,
+            long style = 0,
+            const wxValidator& validator = wxDefaultValidator,
+            const wxString& name = wxListBoxNameStr )
+    {
+        m_hasCheckBoxes = FALSE;
+        Create(parent, id, pos, size, n, choices, style, validator, name);
+    }
+    virtual ~wxListBox();
+
+    bool Create(wxWindow *parent, wxWindowID id,
+                const wxPoint& pos = wxDefaultPosition,
+                const wxSize& size = wxDefaultSize,
+                int n = 0, const wxString choices[] = (const wxString *) NULL,
+                long style = 0,
+                const wxValidator& validator = wxDefaultValidator,
+                const wxString& name = wxListBoxNameStr);
+
+    void Append( const wxString &item );
+    void Append( const wxString &item, void* clientData );
+    void Append( const wxString &item, wxClientData* clientData );
+
+    void SetClientData( int n, void* clientData );
+    void* GetClientData( int n );
+    void SetClientObject( int n, wxClientData* clientData );
+    wxClientData* GetClientObject( int n );
+
+    void Clear();
+    void Delete( int n );
+
+    void Deselect( int n );
+    int FindString( const wxString &item ) const;
+    int GetSelection(void) const;
+    int GetSelections( class wxArrayInt &) const;
+    wxString GetString( int n ) const;
+    wxString GetStringSelection(void) const;
+    int Number();
+    bool Selected( int n );
+    void Set( int n, const wxString *choices );
+    void SetFirstItem( int n );
+    void SetFirstItem( const wxString &item );
+    void SetSelection( int n, bool select = TRUE );
+    void SetString( int n, const wxString &string );
+    void SetStringSelection( const wxString &string, bool select = TRUE );
 
-  wxListBox();
-  inline wxListBox( wxWindow *parent, wxWindowID id,
-                    const wxPoint& pos = wxDefaultPosition,
-                    const wxSize& size = wxDefaultSize,
-                    int n = 0, const wxString choices[] = (const wxString *) NULL,
-                    long style = 0,
-                    const wxValidator& validator = wxDefaultValidator,
-                   const wxString& name = wxListBoxNameStr )
-  {
-      m_hasCheckBoxes = FALSE;
-      Create(parent, id, pos, size, n, choices, style, validator, name);
-  }
-  ~wxListBox();
-  bool Create( wxWindow *parent, wxWindowID id,
-               const wxPoint& pos = wxDefaultPosition,
-               const wxSize& size = wxDefaultSize,
-               int n = 0, const wxString choices[] = (const wxString *) NULL,
-               long style = 0,
-               const wxValidator& validator = wxDefaultValidator,
-               const wxString& name = wxListBoxNameStr );
-              
-  void Append( const wxString &item );
-  void Append( const wxString &item, void* clientData );
-  void Append( const wxString &item, wxClientData* clientData );
-  
-  void SetClientData( int n, void* clientData );
-  void* GetClientData( int n );
-  void SetClientObject( int n, wxClientData* clientData );
-  wxClientData* GetClientObject( int n );
-              
-  void Clear();
-  void Delete( int n );
-  
-  void Deselect( int n );
-  int FindString( const wxString &item ) const;
-  int GetSelection(void) const;
-  int GetSelections( class wxArrayInt &) const;
-  wxString GetString( int n ) const;
-  wxString GetStringSelection(void) const;
-  int Number();
-  bool Selected( int n );
-  void Set( int n, const wxString *choices );
-  void SetFirstItem( int n );
-  void SetFirstItem( const wxString &item );
-  void SetSelection( int n, bool select = TRUE );
-  void SetString( int n, const wxString &string );
-  void SetStringSelection( const wxString &string, bool select = TRUE );
-    
 #if wxUSE_DRAG_AND_DROP
-  void SetDropTarget( wxDropTarget *dropTarget );
+    void SetDropTarget( wxDropTarget *dropTarget );
 #endif
 
-// implementation
-    
-  void AppendCommon( const wxString &item );
-  int GetIndex( GtkWidget *item ) const;
-  GtkWidget *GetConnectWidget();
-  bool IsOwnGtkWindow( GdkWindow *window );
-  void ApplyWidgetStyle();
-  void ApplyToolTip( GtkTooltips *tips, const char *tip );
-    
-  GtkList   *m_list;
-  wxList     m_clientDataList;
-  wxList     m_clientObjectList;
-  bool       m_hasCheckBoxes;
+    // implementation
+
+    void AppendCommon( const wxString &item );
+    int GetIndex( GtkWidget *item ) const;
+    GtkWidget *GetConnectWidget();
+    bool IsOwnGtkWindow( GdkWindow *window );
+    void ApplyWidgetStyle();
+
+#if wxUSE_TOOLTIPS
+    void ApplyToolTip( GtkTooltips *tips, const char *tip );
+#endif // wxUSE_TOOLTIPS
+
+    GtkList   *m_list;
+    wxList     m_clientDataList;
+    wxList     m_clientObjectList;
+    bool       m_hasCheckBoxes;
 };
 
 #endif // __GTKLISTBOXH__
index 299f0945b22ddc60d2b389292726f769e109a208..eed23861118164bb799f4e56f20b9d75ddbb7aaf 100644 (file)
@@ -1,53 +1,56 @@
 /////////////////////////////////////////////////////////////////////////////
 // Name:        tooltip.h
-// Purpose:
+// Purpose:     wxToolTip class
 // Author:      Robert Roebling
 // Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __GTKTOOLTIPH__
 #define __GTKTOOLTIPH__
 
 #ifdef __GNUG__
-#pragma interface
+    #pragma interface
 #endif
 
 #include "wx/defs.h"
+#include "wx/string.h"
 #include "wx/object.h"
-#include "wx/window.h"
 
 //-----------------------------------------------------------------------------
-// classes
+// forward declarations
 //-----------------------------------------------------------------------------
 
 class wxToolTip;
+class wxWindow;
 
 //-----------------------------------------------------------------------------
 // wxToolTip
 //-----------------------------------------------------------------------------
 
-class wxToolTip: public wxObject
+class wxToolTip : public wxObject
 {
 public:
-  
-    wxToolTip( const wxString &tip );
-    
-    void SetTip( const wxString &tip );
-    wxString GetTip() const;
-    wxWindow *GetWindow() const;
-    bool Ok() const;
-    
+    // globally change the tooltip parameters
     static void Enable( bool flag );
     static void SetDelay( long msecs );
 
-  // implementation
-    
+    wxToolTip( const wxString &tip );
+
+    // get/set the tooltip text
+    void SetTip( const wxString &tip );
+    wxString GetTip() const { return m_text; }
+
+    wxWindow *GetWindow() const { return m_window; }
+    bool IsOk() const { return m_window != NULL; }
+
+    // implementation
+    void Apply( wxWindow *win );
+
+private:
     wxString     m_text;
     wxWindow    *m_window;
-    
-    void Apply( wxWindow *win );
 };
 
 #endif // __GTKTOOLTIPH__
index 4d8ae64bc54165cdd0ab56b6e4a502896a93ac4f..1f1985b579d97d153adf46a5f90a6e98fa9917fc 100644 (file)
@@ -146,23 +146,23 @@ public:
   virtual void SetSize( int x, int y, int width, int height,
     int sizeFlags = wxSIZE_AUTO );
   virtual void SetSize( int width, int height );
-  
+
   virtual void Move( int x, int y );
-  
+
   virtual void GetSize( int *width, int *height ) const;
   wxSize GetSize() const { int w, h; GetSize(& w, & h); return wxSize(w, h); }
-  
+
   virtual void SetClientSize( int const width, int const height );
-  
+
   virtual void GetClientSize( int *width, int *height ) const;
   wxSize GetClientSize() const { int w, h; GetClientSize(& w, & h); return wxSize(w, h); }
-  
+
   virtual void GetPosition( int *x, int *y ) const;
   wxPoint GetPosition() const { int w, h; GetPosition(& w, & h); return wxPoint(w, h); }
-  
+
   wxRect GetRect() const
     { int x, y, w, h; GetPosition(& x, & y); GetSize(& w, & h); return wxRect(x, y, w, h); }
-    
+
   virtual void Centre( int direction = wxHORIZONTAL );
   inline void Center(int direction = wxHORIZONTAL) { Centre(direction); }
   virtual void Fit();
@@ -188,7 +188,7 @@ public:
 
   virtual void SetFocus();
   static wxWindow *FindFocus();
-  
+
   virtual void AddChild( wxWindow *child );
   wxList& GetChildren() { return m_children; }
 
@@ -226,12 +226,14 @@ public:
   wxWindowID GetId() const;
 
   void SetCursor( const wxCursor &cursor );
-  
+
   void WarpPointer(int x, int y);
-  
-  virtual void SetToolTip( const wxString &tip );
+
+#if wxUSE_TOOLTIPS
+  void SetToolTip( const wxString &tip );
   virtual void SetToolTip( wxToolTip *tip );
-  virtual wxToolTip* GetToolTip();
+  wxToolTip* GetToolTip() const { return m_toolTip; }
+#endif // wxUSE_TOOLTIPS
 
   virtual void Refresh( bool eraseBackground = TRUE, const wxRect *rect = (const wxRect *) NULL );
   virtual void Clear();
@@ -326,20 +328,20 @@ public:
   bool HasVMT();
 
   virtual void OnInternalIdle();
-  
+
   /* used by all classes in the widget creation process */
-  
+
   void PreCreation( wxWindow *parent, wxWindowID id, const wxPoint &pos,
                     const wxSize &size, long style, const wxString &name );
   void PostCreation();
-  
+
   /* the methods below are required because many native widgets
      are composed of several subwidgets and setting a style for
-     the widget means setting it for all subwidgets as well. 
+     the widget means setting it for all subwidgets as well.
      also, it is nor clear, which native widget is the top
      widget where (most of) the input goes. even tooltips have
      to be applied to all subwidgets. */
-  
+
   virtual GtkWidget* GetConnectWidget();
   virtual bool IsOwnGtkWindow( GdkWindow *window );
   void ConnectWidget( GtkWidget *widget );
@@ -347,8 +349,10 @@ public:
   GtkStyle *GetWidgetStyle();
   void SetWidgetStyle();
   virtual void ApplyWidgetStyle();
-  
+
+#if wxUSE_TOOLTIPS
   virtual void ApplyToolTip( GtkTooltips *tips, const char *tip );
+#endif // wxUSE_TOOLTIPS
 
   /* private member variables */
 
@@ -377,7 +381,10 @@ public:
   wxAcceleratorTable   m_acceleratorTable;
   wxClientData        *m_clientObject;
   void                *m_clientData;
+
+#if wxUSE_TOOLTIPS
   wxToolTip           *m_toolTip;
+#endif // wxUSE_TOOLTIPS
 
   GtkWidget           *m_widget;
   GtkWidget           *m_wxwindow;
index f883cf78c9821e21f05350f39e4dbc13e4cca325..3737b9eb952b38de45bd2addc37a15420db12e91 100644 (file)
@@ -4,7 +4,7 @@
 // Author:      Robert Roebling
 // Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 
@@ -38,33 +38,32 @@ extern const char *wxCheckBoxNameStr;
 
 class wxCheckBox: public wxControl
 {
-  DECLARE_DYNAMIC_CLASS(wxCheckBox)
-
-  public:
+DECLARE_DYNAMIC_CLASS(wxCheckBox)
 
+public:
     wxCheckBox(void);
-    inline wxCheckBox( wxWindow *parent, wxWindowID id, const wxString& label,
-           const wxPoint& pos = wxDefaultPosition,
-           const wxSize& size = wxDefaultSize, long style = 0,
-           const wxValidator& validator = wxDefaultValidator,
-           const wxString& name = wxCheckBoxNameStr)
+    wxCheckBox( wxWindow *parent, wxWindowID id, const wxString& label,
+            const wxPoint& pos = wxDefaultPosition,
+            const wxSize& size = wxDefaultSize, long style = 0,
+            const wxValidator& validator = wxDefaultValidator,
+            const wxString& name = wxCheckBoxNameStr)
     {
-      Create(parent, id, label, pos, size, style, validator, name);
+        Create(parent, id, label, pos, size, style, validator, name);
     }
     bool Create( wxWindow *parent, wxWindowID id, const wxString& label,
-           const wxPoint& pos = wxDefaultPosition,
-           const wxSize& size = wxDefaultSize, long style = 0,
-           const wxValidator& validator = wxDefaultValidator,
-           const wxString& name = wxCheckBoxNameStr );
+            const wxPoint& pos = wxDefaultPosition,
+            const wxSize& size = wxDefaultSize, long style = 0,
+            const wxValidator& validator = wxDefaultValidator,
+            const wxString& name = wxCheckBoxNameStr );
     void SetValue( bool state );
     bool GetValue() const;
-    
+
     void SetLabel( const wxString& label );
     void Enable( bool enable );
-    
-  // implementation        
-  
-    void ApplyWidgetStyle();    
+
+    // implementation
+
+    void ApplyWidgetStyle();
 
     bool   m_blockFirstEvent;
 };
index 4331972d9fe60b4ce3b6e386c6795df1234548f5..41417e2af40a69d810b8b9446e18944b2a3ee4d7 100644 (file)
@@ -2,7 +2,7 @@
 // Name:        checklst.h
 // Purpose:     wxCheckListBox class
 // Author:      Robert Roebling
-// Modified by: 
+// Modified by:
 // RCS-ID:      $Id$
 // Copyright:   (c) 1998 Robert Roebling
 // Licence:     wxWindows licence
@@ -33,25 +33,24 @@ class wxCheckListBox;
 
 class wxCheckListBox : public wxListBox
 {
-  DECLARE_DYNAMIC_CLASS(wxCheckListBox)
-public:
-
-  wxCheckListBox();
-  wxCheckListBox(wxWindow *parent, wxWindowID id,
-                 const wxPoint& pos = wxDefaultPosition,
-                 const wxSize& size = wxDefaultSize,
-                 int nStrings = 0, 
-                 const wxString choices[] = (wxString[]) NULL,
-                 long style = 0,
-                 const wxValidator& validator = wxDefaultValidator,
-                 const wxString& name = wxListBoxNameStr);
-
-  bool IsChecked( int index ) const;
-  void Check( int index, bool check = TRUE );
-  
-  int GetItemHeight();
+DECLARE_DYNAMIC_CLASS(wxCheckListBox)
 
+public:
+    wxCheckListBox();
+    wxCheckListBox(wxWindow *parent, wxWindowID id,
+            const wxPoint& pos = wxDefaultPosition,
+            const wxSize& size = wxDefaultSize,
+            int nStrings = 0,
+            const wxString choices[] = (wxString[]) NULL,
+            long style = 0,
+            const wxValidator& validator = wxDefaultValidator,
+            const wxString& name = wxListBoxNameStr);
+
+    bool IsChecked( int index ) const;
+    void Check( int index, bool check = TRUE );
+
+    int GetItemHeight() const;
 };
 
-#endif 
+#endif
         //__GTKCHECKLISTH__
index 41b5e1b229d3654f7fff582a1c5027e53cc5081d..2a5f428da1a75343b65a1c9b29383639908df0d6 100644 (file)
@@ -1,10 +1,10 @@
 /////////////////////////////////////////////////////////////////////////////
 // Name:        listbox.h
-// Purpose:
+// Purpose:     wxListBox class declaration
 // Author:      Robert Roebling
 // Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 
@@ -39,75 +39,78 @@ extern const char *wxListBoxNameStr;
 
 class wxListBox : public wxControl
 {
-  DECLARE_DYNAMIC_CLASS(wxListBox)
+DECLARE_DYNAMIC_CLASS(wxListBox)
 
 public:
+    wxListBox();
+    wxListBox( wxWindow *parent, wxWindowID id,
+            const wxPoint& pos = wxDefaultPosition,
+            const wxSize& size = wxDefaultSize,
+            int n = 0, const wxString choices[] = (const wxString *) NULL,
+            long style = 0,
+            const wxValidator& validator = wxDefaultValidator,
+            const wxString& name = wxListBoxNameStr )
+    {
+        m_hasCheckBoxes = FALSE;
+        Create(parent, id, pos, size, n, choices, style, validator, name);
+    }
+    virtual ~wxListBox();
+
+    bool Create(wxWindow *parent, wxWindowID id,
+                const wxPoint& pos = wxDefaultPosition,
+                const wxSize& size = wxDefaultSize,
+                int n = 0, const wxString choices[] = (const wxString *) NULL,
+                long style = 0,
+                const wxValidator& validator = wxDefaultValidator,
+                const wxString& name = wxListBoxNameStr);
+
+    void Append( const wxString &item );
+    void Append( const wxString &item, void* clientData );
+    void Append( const wxString &item, wxClientData* clientData );
+
+    void SetClientData( int n, void* clientData );
+    void* GetClientData( int n );
+    void SetClientObject( int n, wxClientData* clientData );
+    wxClientData* GetClientObject( int n );
+
+    void Clear();
+    void Delete( int n );
+
+    void Deselect( int n );
+    int FindString( const wxString &item ) const;
+    int GetSelection(void) const;
+    int GetSelections( class wxArrayInt &) const;
+    wxString GetString( int n ) const;
+    wxString GetStringSelection(void) const;
+    int Number();
+    bool Selected( int n );
+    void Set( int n, const wxString *choices );
+    void SetFirstItem( int n );
+    void SetFirstItem( const wxString &item );
+    void SetSelection( int n, bool select = TRUE );
+    void SetString( int n, const wxString &string );
+    void SetStringSelection( const wxString &string, bool select = TRUE );
 
-  wxListBox();
-  inline wxListBox( wxWindow *parent, wxWindowID id,
-                    const wxPoint& pos = wxDefaultPosition,
-                    const wxSize& size = wxDefaultSize,
-                    int n = 0, const wxString choices[] = (const wxString *) NULL,
-                    long style = 0,
-                    const wxValidator& validator = wxDefaultValidator,
-                   const wxString& name = wxListBoxNameStr )
-  {
-      m_hasCheckBoxes = FALSE;
-      Create(parent, id, pos, size, n, choices, style, validator, name);
-  }
-  ~wxListBox();
-  bool Create( wxWindow *parent, wxWindowID id,
-               const wxPoint& pos = wxDefaultPosition,
-               const wxSize& size = wxDefaultSize,
-               int n = 0, const wxString choices[] = (const wxString *) NULL,
-               long style = 0,
-               const wxValidator& validator = wxDefaultValidator,
-               const wxString& name = wxListBoxNameStr );
-              
-  void Append( const wxString &item );
-  void Append( const wxString &item, void* clientData );
-  void Append( const wxString &item, wxClientData* clientData );
-  
-  void SetClientData( int n, void* clientData );
-  void* GetClientData( int n );
-  void SetClientObject( int n, wxClientData* clientData );
-  wxClientData* GetClientObject( int n );
-              
-  void Clear();
-  void Delete( int n );
-  
-  void Deselect( int n );
-  int FindString( const wxString &item ) const;
-  int GetSelection(void) const;
-  int GetSelections( class wxArrayInt &) const;
-  wxString GetString( int n ) const;
-  wxString GetStringSelection(void) const;
-  int Number();
-  bool Selected( int n );
-  void Set( int n, const wxString *choices );
-  void SetFirstItem( int n );
-  void SetFirstItem( const wxString &item );
-  void SetSelection( int n, bool select = TRUE );
-  void SetString( int n, const wxString &string );
-  void SetStringSelection( const wxString &string, bool select = TRUE );
-    
 #if wxUSE_DRAG_AND_DROP
-  void SetDropTarget( wxDropTarget *dropTarget );
+    void SetDropTarget( wxDropTarget *dropTarget );
 #endif
 
-// implementation
-    
-  void AppendCommon( const wxString &item );
-  int GetIndex( GtkWidget *item ) const;
-  GtkWidget *GetConnectWidget();
-  bool IsOwnGtkWindow( GdkWindow *window );
-  void ApplyWidgetStyle();
-  void ApplyToolTip( GtkTooltips *tips, const char *tip );
-    
-  GtkList   *m_list;
-  wxList     m_clientDataList;
-  wxList     m_clientObjectList;
-  bool       m_hasCheckBoxes;
+    // implementation
+
+    void AppendCommon( const wxString &item );
+    int GetIndex( GtkWidget *item ) const;
+    GtkWidget *GetConnectWidget();
+    bool IsOwnGtkWindow( GdkWindow *window );
+    void ApplyWidgetStyle();
+
+#if wxUSE_TOOLTIPS
+    void ApplyToolTip( GtkTooltips *tips, const char *tip );
+#endif // wxUSE_TOOLTIPS
+
+    GtkList   *m_list;
+    wxList     m_clientDataList;
+    wxList     m_clientObjectList;
+    bool       m_hasCheckBoxes;
 };
 
 #endif // __GTKLISTBOXH__
index 299f0945b22ddc60d2b389292726f769e109a208..eed23861118164bb799f4e56f20b9d75ddbb7aaf 100644 (file)
@@ -1,53 +1,56 @@
 /////////////////////////////////////////////////////////////////////////////
 // Name:        tooltip.h
-// Purpose:
+// Purpose:     wxToolTip class
 // Author:      Robert Roebling
 // Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __GTKTOOLTIPH__
 #define __GTKTOOLTIPH__
 
 #ifdef __GNUG__
-#pragma interface
+    #pragma interface
 #endif
 
 #include "wx/defs.h"
+#include "wx/string.h"
 #include "wx/object.h"
-#include "wx/window.h"
 
 //-----------------------------------------------------------------------------
-// classes
+// forward declarations
 //-----------------------------------------------------------------------------
 
 class wxToolTip;
+class wxWindow;
 
 //-----------------------------------------------------------------------------
 // wxToolTip
 //-----------------------------------------------------------------------------
 
-class wxToolTip: public wxObject
+class wxToolTip : public wxObject
 {
 public:
-  
-    wxToolTip( const wxString &tip );
-    
-    void SetTip( const wxString &tip );
-    wxString GetTip() const;
-    wxWindow *GetWindow() const;
-    bool Ok() const;
-    
+    // globally change the tooltip parameters
     static void Enable( bool flag );
     static void SetDelay( long msecs );
 
-  // implementation
-    
+    wxToolTip( const wxString &tip );
+
+    // get/set the tooltip text
+    void SetTip( const wxString &tip );
+    wxString GetTip() const { return m_text; }
+
+    wxWindow *GetWindow() const { return m_window; }
+    bool IsOk() const { return m_window != NULL; }
+
+    // implementation
+    void Apply( wxWindow *win );
+
+private:
     wxString     m_text;
     wxWindow    *m_window;
-    
-    void Apply( wxWindow *win );
 };
 
 #endif // __GTKTOOLTIPH__
index 4d8ae64bc54165cdd0ab56b6e4a502896a93ac4f..1f1985b579d97d153adf46a5f90a6e98fa9917fc 100644 (file)
@@ -146,23 +146,23 @@ public:
   virtual void SetSize( int x, int y, int width, int height,
     int sizeFlags = wxSIZE_AUTO );
   virtual void SetSize( int width, int height );
-  
+
   virtual void Move( int x, int y );
-  
+
   virtual void GetSize( int *width, int *height ) const;
   wxSize GetSize() const { int w, h; GetSize(& w, & h); return wxSize(w, h); }
-  
+
   virtual void SetClientSize( int const width, int const height );
-  
+
   virtual void GetClientSize( int *width, int *height ) const;
   wxSize GetClientSize() const { int w, h; GetClientSize(& w, & h); return wxSize(w, h); }
-  
+
   virtual void GetPosition( int *x, int *y ) const;
   wxPoint GetPosition() const { int w, h; GetPosition(& w, & h); return wxPoint(w, h); }
-  
+
   wxRect GetRect() const
     { int x, y, w, h; GetPosition(& x, & y); GetSize(& w, & h); return wxRect(x, y, w, h); }
-    
+
   virtual void Centre( int direction = wxHORIZONTAL );
   inline void Center(int direction = wxHORIZONTAL) { Centre(direction); }
   virtual void Fit();
@@ -188,7 +188,7 @@ public:
 
   virtual void SetFocus();
   static wxWindow *FindFocus();
-  
+
   virtual void AddChild( wxWindow *child );
   wxList& GetChildren() { return m_children; }
 
@@ -226,12 +226,14 @@ public:
   wxWindowID GetId() const;
 
   void SetCursor( const wxCursor &cursor );
-  
+
   void WarpPointer(int x, int y);
-  
-  virtual void SetToolTip( const wxString &tip );
+
+#if wxUSE_TOOLTIPS
+  void SetToolTip( const wxString &tip );
   virtual void SetToolTip( wxToolTip *tip );
-  virtual wxToolTip* GetToolTip();
+  wxToolTip* GetToolTip() const { return m_toolTip; }
+#endif // wxUSE_TOOLTIPS
 
   virtual void Refresh( bool eraseBackground = TRUE, const wxRect *rect = (const wxRect *) NULL );
   virtual void Clear();
@@ -326,20 +328,20 @@ public:
   bool HasVMT();
 
   virtual void OnInternalIdle();
-  
+
   /* used by all classes in the widget creation process */
-  
+
   void PreCreation( wxWindow *parent, wxWindowID id, const wxPoint &pos,
                     const wxSize &size, long style, const wxString &name );
   void PostCreation();
-  
+
   /* the methods below are required because many native widgets
      are composed of several subwidgets and setting a style for
-     the widget means setting it for all subwidgets as well. 
+     the widget means setting it for all subwidgets as well.
      also, it is nor clear, which native widget is the top
      widget where (most of) the input goes. even tooltips have
      to be applied to all subwidgets. */
-  
+
   virtual GtkWidget* GetConnectWidget();
   virtual bool IsOwnGtkWindow( GdkWindow *window );
   void ConnectWidget( GtkWidget *widget );
@@ -347,8 +349,10 @@ public:
   GtkStyle *GetWidgetStyle();
   void SetWidgetStyle();
   virtual void ApplyWidgetStyle();
-  
+
+#if wxUSE_TOOLTIPS
   virtual void ApplyToolTip( GtkTooltips *tips, const char *tip );
+#endif // wxUSE_TOOLTIPS
 
   /* private member variables */
 
@@ -377,7 +381,10 @@ public:
   wxAcceleratorTable   m_acceleratorTable;
   wxClientData        *m_clientObject;
   void                *m_clientData;
+
+#if wxUSE_TOOLTIPS
   wxToolTip           *m_toolTip;
+#endif // wxUSE_TOOLTIPS
 
   GtkWidget           *m_widget;
   GtkWidget           *m_wxwindow;
index eed96dd6e1a9da85387f85aba270cbbb364f859d..90d10cd77f8116e8e46e4df7065825b5148d5ded 100644 (file)
  * Use clipboard
  */
 #define wxUSE_CLIPBOARD 0
+/*
+ * Use tooltips
+ */
+#define wxUSE_TOOLTIPS 0
 /*
  * Use dnd
  */
index 85425761d04dd7aa896f47ae64d22f69b533377a..c3fa1a8749cd2c29a0427a2689e7bb3f9c4e5f3d 100644 (file)
@@ -4,7 +4,7 @@
 // Author:      Robert Roebling
 // Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 
@@ -30,15 +30,15 @@ extern bool   g_blockEventsOnDrag;
 static void gtk_checkbox_clicked_callback( GtkWidget *WXUNUSED(widget), wxCheckBox *cb )
 {
     if (!cb->HasVMT()) return;
-  
+
     if (cb->m_blockFirstEvent)
     {
         cb->m_blockFirstEvent = FALSE;
         return;
-    } 
-  
+    }
+
     if (g_blockEventsOnDrag) return;
-  
+
     wxCommandEvent event(wxEVT_COMMAND_CHECKBOX_CLICKED, cb->GetId());
     event.SetInt( cb->GetValue() );
     event.SetEventObject(cb);
@@ -56,50 +56,50 @@ wxCheckBox::wxCheckBox(void)
 }
 
 bool wxCheckBox::Create(  wxWindow *parent, wxWindowID id, const wxString &label,
-      const wxPoint &pos, const wxSize &size, 
+      const wxPoint &pos, const wxSize &size,
       long style, const wxValidator& validator, const wxString &name )
 {
     m_needParent = TRUE;
     m_acceptsFocus = TRUE;
-  
+
     PreCreation( parent, id, pos, size, style, name );
 
     SetValidator( validator );
 
     m_widget = gtk_check_button_new_with_label( m_label );
+
     m_blockFirstEvent = FALSE;
-  
+
     wxSize newSize = size;
     if (newSize.x == -1) newSize.x = 25+gdk_string_measure( m_widget->style->font, label );
     if (newSize.y == -1) newSize.y = 26;
     SetSize( newSize.x, newSize.y );
-   
-    gtk_signal_connect( GTK_OBJECT(m_widget), "clicked", 
+
+    gtk_signal_connect( GTK_OBJECT(m_widget), "clicked",
       GTK_SIGNAL_FUNC(gtk_checkbox_clicked_callback), (gpointer*)this );
-    
+
     m_parent->AddChild( this );
 
     (m_parent->m_insertCallback)( m_parent, this );
-  
+
     PostCreation();
-  
+
     gtk_widget_realize( GTK_BUTTON( m_widget )->child );
-  
+
     SetLabel( label );
 
     SetBackgroundColour( parent->GetBackgroundColour() );
     SetForegroundColour( parent->GetForegroundColour() );
 
     Show( TRUE );
-    
+
     return TRUE;
 }
 
 void wxCheckBox::SetValue( bool state )
 {
     wxCHECK_RET( m_widget != NULL, "invalid checkbox" );
-    
+
     if ( state == GetValue() )
         return;
 
@@ -122,7 +122,7 @@ void wxCheckBox::SetLabel( const wxString& label )
     wxCHECK_RET( m_widget != NULL, "invalid checkbox" );
 
     wxControl::SetLabel( label );
-  
+
     gtk_label_set( GTK_LABEL( GTK_BUTTON(m_widget)->child ), GetLabel() );
 }
 
@@ -131,7 +131,7 @@ void wxCheckBox::Enable( bool enable )
     wxCHECK_RET( m_widget != NULL, "invalid checkbox" );
 
     wxControl::Enable( enable );
-  
+
     gtk_widget_set_sensitive( GTK_BUTTON(m_widget)->child, enable );
 }
 
index 82fb96dc1a419b24100cf89fa17acc2e2ba17873..3eaf62c54bcf9ac740a009e5abd6bdd20c292efb 100644 (file)
@@ -4,7 +4,7 @@
 // Author:      Robert Roebling
 // Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
@@ -31,7 +31,7 @@ wxCheckListBox::wxCheckListBox() :
 wxCheckListBox::wxCheckListBox(wxWindow *parent, wxWindowID id,
                  const wxPoint& pos,
                  const wxSize& size,
-                 int nStrings, 
+                 int nStrings,
                  const wxString choices[],
                  long style,
                  const wxValidator& validator,
@@ -44,18 +44,18 @@ wxCheckListBox::wxCheckListBox(wxWindow *parent, wxWindowID id,
 bool wxCheckListBox::IsChecked( int index ) const
 {
     wxCHECK_MSG( m_list != NULL, FALSE, "invalid checklistbox" );
-  
+
     GList *child = g_list_nth( m_list->children, index );
     if (child)
     {
         GtkBin *bin = GTK_BIN( child->data );
         GtkLabel *label = GTK_LABEL( bin->child );
-       
-       wxString str = label->label;
-    
+
+        wxString str = label->label;
+
         return (str[1] == 'X');
     }
-    
+
     wxFAIL_MSG("wrong checklistbox index");
     return FALSE;
 }
@@ -63,31 +63,32 @@ bool wxCheckListBox::IsChecked( int index ) const
 void wxCheckListBox::Check( int index, bool check )
 {
     wxCHECK_RET( m_list != NULL, "invalid checklistbox" );
-  
+
     GList *child = g_list_nth( m_list->children, index );
     if (child)
     {
         GtkBin *bin = GTK_BIN( child->data );
         GtkLabel *label = GTK_LABEL( bin->child );
-       
-       wxString str = label->label;
-    
+
+        wxString str = label->label;
+
         if (check == (str[1] == 'X')) return;
-       
-       if (check)
-           str.SetChar( 1, 'X' );
-       else
-           str.SetChar( 1, '-' );
-           
-       gtk_label_set( label, str );
-           
-       return;
+
+        if (check)
+            str.SetChar( 1, 'X' );
+        else
+            str.SetChar( 1, '-' );
+
+        gtk_label_set( label, str );
+
+        return;
     }
-    
+
     wxFAIL_MSG("wrong checklistbox index");
 }
 
-int wxCheckListBox::GetItemHeight()
+int wxCheckListBox::GetItemHeight() const
 {
+    // FIXME
     return 22;
 }
index db10f19582989a3ef716c144c2c92dc39cdad354..9571b5e29b60eafef19f478d18b08b2ca23854e1 100644 (file)
@@ -47,7 +47,7 @@ extern bool   g_blockEventsOnScroll;
 // "button_press_event"
 //-----------------------------------------------------------------------------
 
-static gint 
+static gint
 gtk_listbox_button_press_callback( GtkWidget *widget, GdkEventButton *gdk_event, wxListBox *listbox )
 {
     if (g_blockEventsOnDrag) return FALSE;
@@ -56,24 +56,24 @@ gtk_listbox_button_press_callback( GtkWidget *widget, GdkEventButton *gdk_event,
     if (!listbox->HasVMT()) return FALSE;
 
     int sel = listbox->GetIndex( widget );
-    
+
     if ((listbox->m_hasCheckBoxes) && (gdk_event->x < 15) && (gdk_event->type != GDK_2BUTTON_PRESS))
     {
         wxCheckListBox *clb = (wxCheckListBox *)listbox;
-    
+
         clb->Check( sel, !clb->IsChecked(sel) );
-    
+
         wxCommandEvent event( wxEVT_COMMAND_CHECKLISTBOX_TOGGLED, listbox->GetId() );
         event.SetEventObject( listbox );
         event.SetInt( sel );
         listbox->GetEventHandler()->ProcessEvent( event );
     }
-    
+
     if (gdk_event->type == GDK_2BUTTON_PRESS)
     {
         wxCommandEvent event( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, listbox->GetId() );
         event.SetEventObject( listbox );
-       
+
         wxArrayInt aSelections;
         int count = listbox->GetSelections(aSelections);
         if ( count > 0 )
@@ -90,7 +90,7 @@ gtk_listbox_button_press_callback( GtkWidget *widget, GdkEventButton *gdk_event,
         }
 
         listbox->GetEventHandler()->ProcessEvent( event );
-       
+
         if (event.m_commandString) delete[] event.m_commandString ;
     }
 
@@ -101,7 +101,7 @@ gtk_listbox_button_press_callback( GtkWidget *widget, GdkEventButton *gdk_event,
 // "key_press_event"
 //-----------------------------------------------------------------------------
 
-static gint 
+static gint
 gtk_listbox_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_event, wxListBox *listbox )
 {
     if (g_blockEventsOnDrag) return FALSE;
@@ -109,18 +109,18 @@ gtk_listbox_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_event, wxLis
     if (!listbox->HasVMT()) return FALSE;
 
     if (gdk_event->keyval != ' ') return FALSE;
-    
+
     int sel = listbox->GetIndex( widget );
-    
+
     wxCheckListBox *clb = (wxCheckListBox *)listbox;
-    
+
     clb->Check( sel, !clb->IsChecked(sel) );
-    
+
     wxCommandEvent event( wxEVT_COMMAND_CHECKLISTBOX_TOGGLED, listbox->GetId() );
     event.SetEventObject( listbox );
     event.SetInt( sel );
     listbox->GetEventHandler()->ProcessEvent( event );
-       
+
     return FALSE;
 }
 
@@ -183,7 +183,7 @@ bool wxListBox::Create( wxWindow *parent, wxWindowID id,
     m_widget = gtk_scrolled_window_new( (GtkAdjustment*) NULL, (GtkAdjustment*) NULL );
     gtk_scrolled_window_set_policy( GTK_SCROLLED_WINDOW(m_widget),
       GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC );
-      
+
     m_list = GTK_LIST( gtk_list_new() );
 
     GtkSelectionMode mode = GTK_SELECTION_BROWSE;
@@ -202,7 +202,7 @@ bool wxListBox::Create( wxWindow *parent, wxWindowID id,
 
 #ifdef __WXDEBUG__
     debug_focus_in( m_widget, "wxListBox::m_widget", name );
-    
+
     debug_focus_in( GTK_WIDGET(m_list), "wxListBox::m_list", name );
 
     GtkScrolledWindow *s_window = GTK_SCROLLED_WINDOW(m_widget);
@@ -230,24 +230,24 @@ bool wxListBox::Create( wxWindow *parent, wxWindowID id,
     {
         m_clientDataList.Append( (wxObject*) NULL );
         m_clientObjectList.Append( (wxObject*) NULL );
-  
+
         GtkWidget *list_item;
-       
-       if (m_hasCheckBoxes)
-       {
+
+        if (m_hasCheckBoxes)
+        {
             wxString str = "[-] ";
-           str += choices[i];
+            str += choices[i];
             list_item = gtk_list_item_new_with_label( str );
-       }
-       else
-       {
+        }
+        else
+        {
             list_item = gtk_list_item_new_with_label( choices[i] );
-       }
+        }
 
 #ifdef __WXDEBUG__
         debug_focus_in( list_item, "wxListBox::list_item", name );
-#endif    
-    
+#endif
+
         gtk_container_add( GTK_CONTAINER(m_list), list_item );
 
         gtk_signal_connect( GTK_OBJECT(list_item), "select",
@@ -257,28 +257,28 @@ bool wxListBox::Create( wxWindow *parent, wxWindowID id,
             gtk_signal_connect( GTK_OBJECT(list_item), "deselect",
               GTK_SIGNAL_FUNC(gtk_listitem_select_callback), (gpointer)this );
 
-        gtk_signal_connect( GTK_OBJECT(list_item), 
-                           "button_press_event",
-                            (GtkSignalFunc)gtk_listbox_button_press_callback, 
-                           (gpointer) this );
-       
-       if (m_hasCheckBoxes)
-       {
-            gtk_signal_connect( GTK_OBJECT(list_item), 
-                           "key_press_event",
-                            (GtkSignalFunc)gtk_listbox_key_press_callback, 
-                           (gpointer)this );
-       }
-       
-        ConnectWidget( list_item );    
-       
+        gtk_signal_connect( GTK_OBJECT(list_item),
+                            "button_press_event",
+                            (GtkSignalFunc)gtk_listbox_button_press_callback,
+                            (gpointer) this );
+
+        if (m_hasCheckBoxes)
+        {
+            gtk_signal_connect( GTK_OBJECT(list_item),
+                            "key_press_event",
+                            (GtkSignalFunc)gtk_listbox_key_press_callback,
+                            (gpointer)this );
+        }
+
+        ConnectWidget( list_item );
+
         gtk_widget_show( list_item );
     }
 
     m_parent->AddChild( this );
 
     (m_parent->m_insertCallback)( m_parent, this );
-  
+
     PostCreation();
 
     gtk_widget_realize( GTK_WIDGET(m_list) );
@@ -299,13 +299,13 @@ wxListBox::~wxListBox()
 void wxListBox::AppendCommon( const wxString &item )
 {
     wxCHECK_RET( m_list != NULL, "invalid listbox" );
-  
+
     GtkWidget *list_item;
-    
+
     if (m_hasCheckBoxes)
     {
         wxString str = "[-] ";
-       str += item;
+        str += item;
         list_item = gtk_list_item_new_with_label( str );
     }
     else
@@ -323,20 +323,20 @@ void wxListBox::AppendCommon( const wxString &item )
     gtk_container_add( GTK_CONTAINER(m_list), list_item );
 
     if (m_widgetStyle) ApplyWidgetStyle();
-  
-    gtk_signal_connect( GTK_OBJECT(list_item), 
-                       "button_press_event",
-                        (GtkSignalFunc)gtk_listbox_button_press_callback, 
-                       (gpointer) this );
-    
+
+    gtk_signal_connect( GTK_OBJECT(list_item),
+                        "button_press_event",
+                        (GtkSignalFunc)gtk_listbox_button_press_callback,
+                        (gpointer) this );
+
     if (m_hasCheckBoxes)
     {
-       gtk_signal_connect( GTK_OBJECT(list_item), 
-                       "key_press_event",
-                        (GtkSignalFunc)gtk_listbox_key_press_callback, 
-                       (gpointer)this );
+       gtk_signal_connect( GTK_OBJECT(list_item),
+                        "key_press_event",
+                        (GtkSignalFunc)gtk_listbox_key_press_callback,
+                        (gpointer)this );
     }
-       
+
     gtk_widget_show( list_item );
 
     ConnectWidget( list_item );
@@ -354,7 +354,7 @@ void wxListBox::Append( const wxString &item )
 {
     m_clientDataList.Append( (wxObject*) NULL );
     m_clientObjectList.Append( (wxObject*) NULL );
-  
+
     AppendCommon( item );
 }
 
@@ -362,7 +362,7 @@ void wxListBox::Append( const wxString &item, void *clientData )
 {
     m_clientDataList.Append( (wxObject*) clientData );
     m_clientObjectList.Append( (wxObject*) NULL );
-  
+
     AppendCommon( item );
 }
 
@@ -370,50 +370,50 @@ void wxListBox::Append( const wxString &item, wxClientData *clientData )
 {
     m_clientObjectList.Append( (wxObject*) clientData );
     m_clientDataList.Append( (wxObject*) NULL );
-  
+
     AppendCommon( item );
 }
 
 void wxListBox::SetClientData( int n, void* clientData )
 {
     wxCHECK_RET( m_widget != NULL, "invalid combobox" );
-  
+
     wxNode *node = m_clientDataList.Nth( n );
     if (!node) return;
-  
+
     node->SetData( (wxObject*) clientData );
 }
 
 void* wxListBox::GetClientData( int n )
 {
     wxCHECK_MSG( m_widget != NULL, NULL, "invalid combobox" );
-  
+
     wxNode *node = m_clientDataList.Nth( n );
     if (!node) return NULL;
-    
+
     return node->Data();
 }
 
 void wxListBox::SetClientObject( int n, wxClientData* clientData )
 {
     wxCHECK_RET( m_widget != NULL, "invalid combobox" );
-    
+
     wxNode *node = m_clientObjectList.Nth( n );
     if (!node) return;
-  
+
     wxClientData *cd = (wxClientData*) node->Data();
     if (cd) delete cd;
-  
+
     node->SetData( (wxObject*) clientData );
 }
 
 wxClientData* wxListBox::GetClientObject( int n )
 {
     wxCHECK_MSG( m_widget != NULL, (wxClientData*)NULL, "invalid combobox" );
-  
+
     wxNode *node = m_clientObjectList.Nth( n );
     if (!node) return (wxClientData*) NULL;
-    
+
     return (wxClientData*) node->Data();
 }
 
@@ -431,7 +431,7 @@ void wxListBox::Clear()
         node = node->Next();
     }
     m_clientObjectList.Clear();
-    
+
     m_clientDataList.Clear();
 }
 
@@ -454,7 +454,7 @@ void wxListBox::Delete( int n )
         if (cd) delete cd;
         m_clientObjectList.DeleteNode( node );
     }
-    
+
     node = m_clientDataList.Nth( n );
     if (node)
     {
@@ -472,19 +472,19 @@ void wxListBox::Deselect( int n )
 int wxListBox::FindString( const wxString &item ) const
 {
     wxCHECK_MSG( m_list != NULL, -1, "invalid listbox" );
-  
+
     GList *child = m_list->children;
     int count = 0;
     while (child)
     {
         GtkBin *bin = GTK_BIN( child->data );
         GtkLabel *label = GTK_LABEL( bin->child );
-       
-       wxString str = label->label;
-       if (m_hasCheckBoxes) str.Remove( 0, 4 );
-       
+
+        wxString str = label->label;
+        if (m_hasCheckBoxes) str.Remove( 0, 4 );
+
         if (str == item) return count;
-       
+
         count++;
         child = child->next;
     }
@@ -497,7 +497,7 @@ int wxListBox::FindString( const wxString &item ) const
 int wxListBox::GetSelection() const
 {
     wxCHECK_MSG( m_list != NULL, -1, "invalid listbox" );
-  
+
     GList *child = m_list->children;
     int count = 0;
     while (child)
@@ -512,7 +512,7 @@ int wxListBox::GetSelection() const
 int wxListBox::GetSelections( wxArrayInt& aSelections ) const
 {
     wxCHECK_MSG( m_list != NULL, -1, "invalid listbox" );
-  
+
     // get the number of selected items first
     GList *child = m_list->children;
     int count = 0;
@@ -524,7 +524,7 @@ int wxListBox::GetSelections( wxArrayInt& aSelections ) const
 
     aSelections.Empty();
 
-    if (count > 0) 
+    if (count > 0)
     {
         // now fill the list
         aSelections.Alloc(count); // optimization attempt
@@ -542,16 +542,16 @@ int wxListBox::GetSelections( wxArrayInt& aSelections ) const
 wxString wxListBox::GetString( int n ) const
 {
     wxCHECK_MSG( m_list != NULL, "", "invalid listbox" );
-  
+
     GList *child = g_list_nth( m_list->children, n );
     if (child)
     {
         GtkBin *bin = GTK_BIN( child->data );
         GtkLabel *label = GTK_LABEL( bin->child );
-       
-       wxString str = label->label;
-       if (m_hasCheckBoxes) str.Remove( 0, 4 );
-       
+
+        wxString str = label->label;
+        if (m_hasCheckBoxes) str.Remove( 0, 4 );
+
         return str;
     }
     wxFAIL_MSG("wrong listbox index");
@@ -561,19 +561,19 @@ wxString wxListBox::GetString( int n ) const
 wxString wxListBox::GetStringSelection() const
 {
     wxCHECK_MSG( m_list != NULL, "", "invalid listbox" );
-  
+
     GList *selection = m_list->selection;
     if (selection)
     {
         GtkBin *bin = GTK_BIN( selection->data );
         GtkLabel *label = GTK_LABEL( bin->child );
-       
-       wxString str = label->label;
-       if (m_hasCheckBoxes) str.Remove( 0, 4 );
-       
+
+        wxString str = label->label;
+        if (m_hasCheckBoxes) str.Remove( 0, 4 );
+
         return str;
     }
-    
+
     wxFAIL_MSG("no listbox selection available");
     return "";
 }
@@ -581,7 +581,7 @@ wxString wxListBox::GetStringSelection() const
 int wxListBox::Number()
 {
     wxCHECK_MSG( m_list != NULL, -1, "invalid listbox" );
-  
+
     GList *child = m_list->children;
     int count = 0;
     while (child) { count++; child = child->next; }
@@ -591,7 +591,7 @@ int wxListBox::Number()
 bool wxListBox::Selected( int n )
 {
     wxCHECK_MSG( m_list != NULL, FALSE, "invalid listbox" );
-  
+
     GList *target = g_list_nth( m_list->children, n );
     if (target)
     {
@@ -624,7 +624,7 @@ void wxListBox::SetFirstItem( const wxString &WXUNUSED(item) )
 void wxListBox::SetSelection( int n, bool select )
 {
     wxCHECK_RET( m_list != NULL, "invalid listbox" );
-  
+
     if (select)
         gtk_list_select_item( m_list, n );
     else
@@ -634,29 +634,29 @@ void wxListBox::SetSelection( int n, bool select )
 void wxListBox::SetString( int n, const wxString &string )
 {
     wxCHECK_RET( m_list != NULL, "invalid listbox" );
-  
+
     GList *child = g_list_nth( m_list->children, n );
     if (child)
     {
         GtkBin *bin = GTK_BIN( child->data );
         GtkLabel *label = GTK_LABEL( bin->child );
-       
-       wxString str;
-       if (m_hasCheckBoxes) str += "[-] ";
-       str += string;
-       
+
+        wxString str;
+        if (m_hasCheckBoxes) str += "[-] ";
+        str += string;
+
         gtk_label_set( label, str );
     }
     else
     {
         wxFAIL_MSG("wrong listbox index");
-    } 
+    }
 }
 
 void wxListBox::SetStringSelection( const wxString &string, bool select )
 {
     wxCHECK_RET( m_list != NULL, "invalid listbox" );
-  
+
     SetSelection( FindString(string), select );
 }
 
@@ -676,6 +676,7 @@ int wxListBox::GetIndex( GtkWidget *item ) const
     return -1;
 }
 
+#if wxUSE_TOOLTIPS
 void wxListBox::ApplyToolTip( GtkTooltips *tips, const char *tip )
 {
     GList *child = m_list->children;
@@ -685,24 +686,25 @@ void wxListBox::ApplyToolTip( GtkTooltips *tips, const char *tip )
         child = child->next;
     }
 }
+#endif // wxUSE_TOOLTIPS
 
 #if wxUSE_DRAG_AND_DROP
 void wxListBox::SetDropTarget( wxDropTarget *dropTarget )
 {
     wxCHECK_RET( m_list != NULL, "invalid listbox" );
-  
+
 #ifndef NEW_GTK_DND_CODE
     if (m_dropTarget)
     {
         GList *child = m_list->children;
         while (child)
         {
-           m_dropTarget->UnregisterWidget( GTK_WIDGET( child->data ) );
+            m_dropTarget->UnregisterWidget( GTK_WIDGET( child->data ) );
             child = child->next;
         }
     }
 #endif
-    
+
     wxWindow::SetDropTarget( dropTarget );
 
 #ifndef NEW_GTK_DND_CODE
@@ -711,7 +713,7 @@ void wxListBox::SetDropTarget( wxDropTarget *dropTarget )
         GList *child = m_list->children;
         while (child)
         {
-           m_dropTarget->RegisterWidget( GTK_WIDGET( child->data ) );
+            m_dropTarget->RegisterWidget( GTK_WIDGET( child->data ) );
             child = child->next;
         }
     }
@@ -742,7 +744,7 @@ bool wxListBox::IsOwnGtkWindow( GdkWindow *window )
 void wxListBox::ApplyWidgetStyle()
 {
     SetWidgetStyle();
-  
+
     if (m_backgroundColour.Ok())
     {
         GdkWindow *window = GTK_WIDGET(m_list)->window;
@@ -750,16 +752,16 @@ void wxListBox::ApplyWidgetStyle()
         gdk_window_set_background( window, m_backgroundColour.GetColor() );
         gdk_window_clear( window );
     }
-      
+
     GList *child = m_list->children;
     while (child)
     {
         gtk_widget_set_style( GTK_WIDGET(child->data), m_widgetStyle );
-       
+
         GtkBin *bin = GTK_BIN( child->data );
         GtkWidget *label = GTK_WIDGET( bin->child );
         gtk_widget_set_style( label, m_widgetStyle );
-       
+
         child = child->next;
     }
 }
index 44759110bfc0c378c24c95b2c768984740e40f5d..dde56c65eeb758a637cffda48f8e8c7ca426b271 100644 (file)
@@ -1,16 +1,17 @@
 /////////////////////////////////////////////////////////////////////////////
 // Name:        tooltip.cpp
-// Purpose:
+// Purpose:     wxToolTip implementation
 // Author:      Robert Roebling
 // Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
-#pragma implementation "tooltip.h"
+    #pragma implementation "tooltip.h"
 #endif
 
+#include "wx/window.h"
 #include "wx/tooltip.h"
 
 #include "gtk/gtk.h"
@@ -23,7 +24,7 @@
 static GtkTooltips *ss_tooltips = (GtkTooltips*) NULL;
 static GdkColor     ss_bg;
 static GdkColor     ss_fg;
-    
+
 //-----------------------------------------------------------------------------
 // wxToolTip
 //-----------------------------------------------------------------------------
@@ -34,16 +35,6 @@ wxToolTip::wxToolTip( const wxString &tip )
     m_window = (wxWindow*) NULL;
 }
 
-bool wxToolTip::Ok() const
-{
-    return (m_window);
-}
-
-wxString wxToolTip::GetTip() const
-{
-    return m_text;
-}
-
 void wxToolTip::SetTip( const wxString &tip )
 {
     m_text = tip;
@@ -57,22 +48,22 @@ void wxToolTip::Apply( wxWindow *win )
     if (!ss_tooltips)
     {
         ss_tooltips = gtk_tooltips_new();
-       
-        ss_fg.red = 0; 
+
+        ss_fg.red = 0;
         ss_fg.green = 0;
         ss_fg.blue = 0;
         gdk_color_alloc( gtk_widget_get_default_colormap(), &ss_fg );
-       
+
         ss_bg.red = 65535;
         ss_bg.green = 65535;
         ss_bg.blue = 50000;
         gdk_color_alloc( gtk_widget_get_default_colormap(), &ss_bg );
-       
-       gtk_tooltips_set_colors( ss_tooltips, &ss_bg, &ss_fg );
+
+        gtk_tooltips_set_colors( ss_tooltips, &ss_bg, &ss_fg );
     }
-    
+
     m_window = win;
-    
+
     if (m_text.IsEmpty())
         m_window->ApplyToolTip( ss_tooltips, (char*) NULL );
     else
@@ -82,7 +73,7 @@ void wxToolTip::Apply( wxWindow *win )
 void wxToolTip::Enable( bool flag )
 {
     if (!ss_tooltips) return;
-    
+
     if (flag)
         gtk_tooltips_enable( ss_tooltips );
     else
@@ -92,7 +83,7 @@ void wxToolTip::Enable( bool flag )
 void wxToolTip::SetDelay( long msecs )
 {
     if (!ss_tooltips) return;
-    
+
     gtk_tooltips_set_delay( ss_tooltips, msecs );
 }
 
index 69d0c5f2a913b8484e2000d2e8c7d13ec031d5d5..b76cdfa686991863daf66a23bd3c149613525ff7 100644 (file)
 
 #ifdef __WXDEBUG__
 
-static gint gtk_debug_focus_in_callback( GtkWidget *WXUNUSED(widget), 
-                                         GdkEvent *WXUNUSED(event), 
-                                        const char *name )
+static gint gtk_debug_focus_in_callback( GtkWidget *WXUNUSED(widget),
+                                         GdkEvent *WXUNUSED(event),
+                                         const char *name )
 {
     printf( "FOCUS NOW AT: " );
     printf( name );
     printf( "\n" );
-    
+
     return FALSE;
 }
 
@@ -150,9 +150,9 @@ void debug_focus_in( GtkWidget* widget, const char* name, const char *window )
     wxString tmp = name;
     tmp += " FROM ";
     tmp += window;
-    
+
     char *s = new char[tmp.Length()+1];
-    
+
     strcpy( s, WXSTRINGCAST tmp );
 
     gtk_signal_connect( GTK_OBJECT(widget), "focus_in_event",
@@ -345,38 +345,38 @@ static gint gtk_window_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_e
             ancestor = ancestor->GetParent();
         }
     }
-    
+
     // win is a control: tab can be propagated up
     if ((!ret) && (gdk_event->keyval == GDK_Tab))
     {
         wxNavigationKeyEvent new_event;
         new_event.SetDirection( !(gdk_event->state & GDK_SHIFT_MASK) );
-       new_event.SetWindowChange( FALSE );
+        new_event.SetWindowChange( FALSE );
         new_event.SetCurrentFocus( win );
-       ret = win->GetEventHandler()->ProcessEvent( new_event );
+        ret = win->GetEventHandler()->ProcessEvent( new_event );
     }
-    
+
 /*
     // win is a panel: up can be propagated to the panel
     if ((!ret) && (win->m_wxwindow) && (win->m_parent) && (win->m_parent->AcceptsFocus()) &&
         (gdk_event->keyval == GDK_Up))
     {
         win->m_parent->SetFocus();
-       ret = TRUE;
+        ret = TRUE;
     }
-    
+
     // win is a panel: left/right can be propagated to the panel
-    if ((!ret) && (win->m_wxwindow) && 
-        ((gdk_event->keyval == GDK_Right) || (gdk_event->keyval == GDK_Left) || 
+    if ((!ret) && (win->m_wxwindow) &&
+        ((gdk_event->keyval == GDK_Right) || (gdk_event->keyval == GDK_Left) ||
          (gdk_event->keyval == GDK_Up) || (gdk_event->keyval == GDK_Down)))
     {
         wxNavigationKeyEvent new_event;
         new_event.SetDirection( (gdk_event->keyval == GDK_Right) || (gdk_event->keyval == GDK_Down) );
         new_event.SetCurrentFocus( win );
-       ret = win->GetEventHandler()->ProcessEvent( new_event );
+        ret = win->GetEventHandler()->ProcessEvent( new_event );
     }
 */
-    
+
     if (ret)
     {
         gtk_signal_emit_stop_by_name( GTK_OBJECT(widget), "key_press_event" );
@@ -588,37 +588,37 @@ static gint gtk_window_button_press_callback( GtkWidget *widget, GdkEventButton
         while (node)
         {
             wxWindow *child = (wxWindow*)node->Data();
-           
-           if (child->m_isStaticBox)
-           {
-               // wxStaticBox is transparent in the box itself
-               int x = event.m_x;
-               int y = event.m_y;
-               int xx1 = child->m_x;
-               int yy1 = child->m_y;
-               int xx2 = child->m_x + child->m_width;
-               int yy2 = child->m_x + child->m_height;
-               
-               // left
-               if (((x >= xx1) && (x <= xx1+10) && (y >= yy1) && (y <= yy2)) ||
-               // right
-                   ((x >= xx2-10) && (x <= xx2) && (y >= yy1) && (y <= yy2)) ||
-               // top
-                   ((x >= xx1) && (x <= xx2) && (y >= yy1) && (y <= yy1+10)) ||
-               // bottom
-                   ((x >= xx1) && (x <= xx2) && (y >= yy2-1) && (y <= yy2)))
-               {
+
+            if (child->m_isStaticBox)
+            {
+                // wxStaticBox is transparent in the box itself
+                int x = event.m_x;
+                int y = event.m_y;
+                int xx1 = child->m_x;
+                int yy1 = child->m_y;
+                int xx2 = child->m_x + child->m_width;
+                int yy2 = child->m_x + child->m_height;
+
+                // left
+                if (((x >= xx1) && (x <= xx1+10) && (y >= yy1) && (y <= yy2)) ||
+                // right
+                    ((x >= xx2-10) && (x <= xx2) && (y >= yy1) && (y <= yy2)) ||
+                // top
+                    ((x >= xx1) && (x <= xx2) && (y >= yy1) && (y <= yy1+10)) ||
+                // bottom
+                    ((x >= xx1) && (x <= xx2) && (y >= yy2-1) && (y <= yy2)))
+                {
                     win = child;
                     event.m_x -= child->m_x;
                     event.m_y -= child->m_y;
                     break;
-               }
-                   
-           }
-           else
-           {
+                }
+
+            }
+            else
+            {
                 if ((child->m_wxwindow == (GtkWidget*) NULL) &&
-                   (child->m_x <= event.m_x) &&
+                    (child->m_x <= event.m_x) &&
                     (child->m_y <= event.m_y) &&
                     (child->m_x+child->m_width  >= event.m_x) &&
                     (child->m_y+child->m_height >= event.m_y))
@@ -627,12 +627,12 @@ static gint gtk_window_button_press_callback( GtkWidget *widget, GdkEventButton
                     event.m_x -= child->m_x;
                     event.m_y -= child->m_y;
                     break;
-               }
+                }
             }
             node = node->Next();
         }
     }
-    
+
     wxPoint pt(win->GetClientAreaOrigin());
     event.m_x -= pt.x;
     event.m_y -= pt.y;
@@ -696,37 +696,37 @@ static gint gtk_window_button_release_callback( GtkWidget *widget, GdkEventButto
         while (node)
         {
             wxWindow *child = (wxWindow*)node->Data();
-           
-           if (child->m_isStaticBox)
-           {
-               // wxStaticBox is transparent in the box itself
-               int x = event.m_x;
-               int y = event.m_y;
-               int xx1 = child->m_x;
-               int yy1 = child->m_y;
-               int xx2 = child->m_x + child->m_width;
-               int yy2 = child->m_x + child->m_height;
-               
-               // left
-               if (((x >= xx1) && (x <= xx1+10) && (y >= yy1) && (y <= yy2)) ||
-               // right
-                   ((x >= xx2-10) && (x <= xx2) && (y >= yy1) && (y <= yy2)) ||
-               // top
-                   ((x >= xx1) && (x <= xx2) && (y >= yy1) && (y <= yy1+10)) ||
-               // bottom
-                   ((x >= xx1) && (x <= xx2) && (y >= yy2-1) && (y <= yy2)))
-               {
+
+            if (child->m_isStaticBox)
+            {
+                // wxStaticBox is transparent in the box itself
+                int x = event.m_x;
+                int y = event.m_y;
+                int xx1 = child->m_x;
+                int yy1 = child->m_y;
+                int xx2 = child->m_x + child->m_width;
+                int yy2 = child->m_x + child->m_height;
+
+                // left
+                if (((x >= xx1) && (x <= xx1+10) && (y >= yy1) && (y <= yy2)) ||
+                // right
+                    ((x >= xx2-10) && (x <= xx2) && (y >= yy1) && (y <= yy2)) ||
+                // top
+                    ((x >= xx1) && (x <= xx2) && (y >= yy1) && (y <= yy1+10)) ||
+                // bottom
+                    ((x >= xx1) && (x <= xx2) && (y >= yy2-1) && (y <= yy2)))
+                {
                     win = child;
                     event.m_x -= child->m_x;
                     event.m_y -= child->m_y;
                     break;
-               }
-                   
-           }
-           else
-           {
+                }
+
+            }
+            else
+            {
                 if ((child->m_wxwindow == (GtkWidget*) NULL) &&
-                   (child->m_x <= event.m_x) &&
+                    (child->m_x <= event.m_x) &&
                     (child->m_y <= event.m_y) &&
                     (child->m_x+child->m_width  >= event.m_x) &&
                     (child->m_y+child->m_height >= event.m_y))
@@ -735,7 +735,7 @@ static gint gtk_window_button_release_callback( GtkWidget *widget, GdkEventButto
                     event.m_x -= child->m_x;
                     event.m_y -= child->m_y;
                     break;
-               }
+                }
             }
             node = node->Next();
         }
@@ -759,7 +759,7 @@ static gint gtk_window_button_release_callback( GtkWidget *widget, GdkEventButto
 
 static gint gtk_window_motion_notify_callback( GtkWidget *widget, GdkEventMotion *gdk_event, wxWindow *win )
 {
-    if (gdk_event->is_hint) 
+    if (gdk_event->is_hint)
     {
        int x = 0;
        int y = 0;
@@ -769,7 +769,7 @@ static gint gtk_window_motion_notify_callback( GtkWidget *widget, GdkEventMotion
        gdk_event->y = y;
        gdk_event->state = state;
     }
-    
+
     if (!win->IsOwnGtkWindow( gdk_event->window )) return TRUE;
 
     if (g_blockEventsOnDrag) return TRUE;
@@ -805,37 +805,37 @@ static gint gtk_window_motion_notify_callback( GtkWidget *widget, GdkEventMotion
         while (node)
         {
             wxWindow *child = (wxWindow*)node->Data();
-           
-           if (child->m_isStaticBox)
-           {
-               // wxStaticBox is transparent in the box itself
-               int x = event.m_x;
-               int y = event.m_y;
-               int xx1 = child->m_x;
-               int yy1 = child->m_y;
-               int xx2 = child->m_x + child->m_width;
-               int yy2 = child->m_x + child->m_height;
-               
-               // left
-               if (((x >= xx1) && (x <= xx1+10) && (y >= yy1) && (y <= yy2)) ||
-               // right
-                   ((x >= xx2-10) && (x <= xx2) && (y >= yy1) && (y <= yy2)) ||
-               // top
-                   ((x >= xx1) && (x <= xx2) && (y >= yy1) && (y <= yy1+10)) ||
-               // bottom
-                   ((x >= xx1) && (x <= xx2) && (y >= yy2-1) && (y <= yy2)))
-               {
+
+            if (child->m_isStaticBox)
+            {
+                // wxStaticBox is transparent in the box itself
+                int x = event.m_x;
+                int y = event.m_y;
+                int xx1 = child->m_x;
+                int yy1 = child->m_y;
+                int xx2 = child->m_x + child->m_width;
+                int yy2 = child->m_x + child->m_height;
+
+                // left
+                if (((x >= xx1) && (x <= xx1+10) && (y >= yy1) && (y <= yy2)) ||
+                // right
+                    ((x >= xx2-10) && (x <= xx2) && (y >= yy1) && (y <= yy2)) ||
+                // top
+                    ((x >= xx1) && (x <= xx2) && (y >= yy1) && (y <= yy1+10)) ||
+                // bottom
+                    ((x >= xx1) && (x <= xx2) && (y >= yy2-1) && (y <= yy2)))
+                {
                     win = child;
                     event.m_x -= child->m_x;
                     event.m_y -= child->m_y;
                     break;
-               }
-                   
-           }
-           else
-           {
+                }
+
+            }
+            else
+            {
                 if ((child->m_wxwindow == (GtkWidget*) NULL) &&
-                   (child->m_x <= event.m_x) &&
+                    (child->m_x <= event.m_x) &&
                     (child->m_y <= event.m_y) &&
                     (child->m_x+child->m_width  >= event.m_x) &&
                     (child->m_y+child->m_height >= event.m_y))
@@ -844,7 +844,7 @@ static gint gtk_window_motion_notify_callback( GtkWidget *widget, GdkEventMotion
                     event.m_x -= child->m_x;
                     event.m_y -= child->m_y;
                     break;
-               }
+                }
             }
             node = node->Next();
         }
@@ -869,9 +869,9 @@ static gint gtk_window_motion_notify_callback( GtkWidget *widget, GdkEventMotion
 static gint gtk_window_focus_in_callback( GtkWidget *widget, GdkEvent *WXUNUSED(event), wxWindow *win )
 {
     if (g_blockEventsOnDrag) return TRUE;
-    
+
     g_focusWindow = win;
-    
+
     if (win->m_wxwindow)
     {
         if (GTK_WIDGET_CAN_FOCUS(win->m_wxwindow))
@@ -961,13 +961,13 @@ static gint gtk_window_enter_callback( GtkWidget *widget, GdkEventCrossing *gdk_
 
     wxMouseEvent event( wxEVT_ENTER_WINDOW );
     event.SetEventObject( win );
-    
+
     int x = 0;
     int y = 0;
     GdkModifierType state = (GdkModifierType)0;
-    
+
     gdk_window_get_pointer( widget->window, &x, &y, &state );
-    
+
     event.m_shiftDown = (state & GDK_SHIFT_MASK);
     event.m_controlDown = (state & GDK_CONTROL_MASK);
     event.m_altDown = (state & GDK_MOD1_MASK);
@@ -978,7 +978,7 @@ static gint gtk_window_enter_callback( GtkWidget *widget, GdkEventCrossing *gdk_
 
     event.m_x = (long)x;
     event.m_y = (long)y;
-    
+
     wxPoint pt(win->GetClientAreaOrigin());
     event.m_x -= pt.x;
     event.m_y -= pt.y;
@@ -1017,9 +1017,9 @@ static gint gtk_window_leave_callback( GtkWidget *widget, GdkEventCrossing *gdk_
     int x = 0;
     int y = 0;
     GdkModifierType state = (GdkModifierType)0;
-    
+
     gdk_window_get_pointer( widget->window, &x, &y, &state );
-    
+
     event.m_shiftDown = (state & GDK_SHIFT_MASK);
     event.m_controlDown = (state & GDK_CONTROL_MASK);
     event.m_altDown = (state & GDK_MOD1_MASK);
@@ -1030,7 +1030,7 @@ static gint gtk_window_leave_callback( GtkWidget *widget, GdkEventCrossing *gdk_
 
     event.m_x = (long)x;
     event.m_y = (long)y;
-    
+
     wxPoint pt(win->GetClientAreaOrigin());
     event.m_x -= pt.x;
     event.m_y -= pt.y;
@@ -1191,7 +1191,7 @@ static void gtk_window_hscroll_change_callback( GtkWidget *WXUNUSED(widget), wxW
 
 static gint gtk_scrollbar_button_press_callback( GtkRange *WXUNUSED(widget),
                                                  GdkEventButton *WXUNUSED(gdk_event),
-                                                wxWindow *win )
+                                                 wxWindow *win )
 {
 //  don't test here as we can release the mouse while being over
 //  a different window then the slider
@@ -1210,7 +1210,7 @@ static gint gtk_scrollbar_button_press_callback( GtkRange *WXUNUSED(widget),
 
 static gint gtk_scrollbar_button_release_callback( GtkRange *widget,
                                                    GdkEventButton *WXUNUSED(gdk_event),
-                                                  wxWindow *win )
+                                                   wxWindow *win )
 {
 
 //  don't test here as we can release the mouse while being over
@@ -1246,23 +1246,23 @@ static void wxInsertChildInWindow( wxWindow* parent, wxWindow* child )
 {
     gtk_myfixed_put( GTK_MYFIXED(parent->m_wxwindow),
                      GTK_WIDGET(child->m_widget),
-                    child->m_x,
-                    child->m_y );
+                       child->m_x,
+                     child->m_y );
 
     gtk_widget_set_usize( GTK_WIDGET(child->m_widget),
                           child->m_width,
-                         child->m_height );
-                         
+                          child->m_height );
+
     if (wxIS_KIND_OF(parent,wxFrame))
     {
         parent->m_sizeSet = FALSE;
     }
-    
+
     if (parent->m_windowStyle & wxTAB_TRAVERSAL)
     {
         /* we now allow a window to get the focus as long as it
-          doesn't have any children. */
-        GTK_WIDGET_UNSET_FLAGS( parent->m_wxwindow, GTK_CAN_FOCUS );  
+           doesn't have any children. */
+        GTK_WIDGET_UNSET_FLAGS( parent->m_wxwindow, GTK_CAN_FOCUS );
     }
 }
 
@@ -1347,11 +1347,13 @@ wxWindow::wxWindow()
 
     m_clientObject = (wxClientData*) NULL;
     m_clientData = NULL;
-    
+
     m_isStaticBox = FALSE;
     m_acceptsFocus = FALSE;
-    
+
+#if wxUSE_TOOLTIPS
     m_toolTip = (wxToolTip*) NULL;
+#endif // wxUSE_TOOLTIPS
 }
 
 wxWindow::wxWindow( wxWindow *parent, wxWindowID id,
@@ -1374,7 +1376,7 @@ bool wxWindow::Create( wxWindow *parent, wxWindowID id,
 
     m_widget = gtk_scrolled_window_new( (GtkAdjustment *) NULL, (GtkAdjustment *) NULL );
     GTK_WIDGET_UNSET_FLAGS( m_widget, GTK_CAN_FOCUS );
-    
+
 #ifdef __WXDEBUG__
     debug_focus_in( m_widget, "wxWindow::m_widget", name );
 #endif
@@ -1431,8 +1433,8 @@ bool wxWindow::Create( wxWindow *parent, wxWindowID id,
     if (m_windowStyle & wxTAB_TRAVERSAL)
     {
         /* we now allow a window to get the focus as long as it
-          doesn't have any children. */
-        GTK_WIDGET_SET_FLAGS( m_wxwindow, GTK_CAN_FOCUS );  
+           doesn't have any children. */
+        GTK_WIDGET_SET_FLAGS( m_wxwindow, GTK_CAN_FOCUS );
         m_acceptsFocus = FALSE;
     }
     else
@@ -1509,10 +1511,12 @@ wxWindow::~wxWindow()
     m_hasVMT = FALSE;
 
 #if wxUSE_DRAG_AND_DROP
-    if (m_dropTarget) delete m_dropTarget;
+    wxDELETE(m_dropTarget);
 #endif
 
-    if (m_toolTip) delete m_toolTip;
+#if wxUSE_TOOLTIPS
+    wxDELETE(m_toolTip);
+#endif // wxUSE_TOOLTIPS
 
     if (m_parent) m_parent->RemoveChild( this );
     if (m_widget) Show( FALSE );
@@ -1641,9 +1645,12 @@ void wxWindow::PreCreation( wxWindow *parent, wxWindowID id,
 
     m_clientObject = (wxClientData*)NULL;
     m_clientData = NULL;
-    
+
     m_isStaticBox = FALSE;
+
+#if wxUSE_TOOLTIPS
     m_toolTip = (wxToolTip*) NULL;
+#endif // wxUSE_TOOLTIPS
 }
 
 void wxWindow::PostCreation()
@@ -2089,7 +2096,7 @@ void wxWindow::Fit()
 
         node = node->Next();
     }
-    
+
     SetClientSize(maxX + 7, maxY + 14);
 }
 
@@ -2116,9 +2123,9 @@ bool wxWindow::Show( bool show )
         gtk_widget_show( m_widget );
     else
         gtk_widget_hide( m_widget );
-       
+
     m_isShown = show;
-    
+
     return TRUE;
 }
 
@@ -2127,7 +2134,7 @@ void wxWindow::Enable( bool enable )
     wxCHECK_RET( (m_widget != NULL), "invalid window" );
 
     m_isEnabled = enable;
-    
+
     gtk_widget_set_sensitive( m_widget, enable );
     if (m_wxwindow) gtk_widget_set_sensitive( m_wxwindow, enable );
 }
@@ -2139,7 +2146,7 @@ int wxWindow::GetCharHeight() const
     wxCHECK_MSG( m_font.Ok(), 12, "invalid font" );
 
     GdkFont *font = m_font.GetInternalFont( 1.0 );
-    
+
     return font->ascent + font->descent;
 }
 
@@ -2150,7 +2157,7 @@ int wxWindow::GetCharWidth() const
     wxCHECK_MSG( m_font.Ok(), 8, "invalid font" );
 
     GdkFont *font = m_font.GetInternalFont( 1.0 );
-    
+
     return gdk_string_width( font, "H" );
 }
 
@@ -2172,7 +2179,7 @@ void wxWindow::GetTextExtent( const wxString& string, int *x, int *y,
 void wxWindow::MakeModal( bool modal )
 {
     return;
-    
+
     // Disable all other windows
     if (this->IsKindOf(CLASSINFO(wxDialog)) || this->IsKindOf(CLASSINFO(wxFrame)))
     {
@@ -2190,7 +2197,7 @@ void wxWindow::MakeModal( bool modal )
 void wxWindow::OnKeyDown( wxKeyEvent &event )
 {
     event.SetEventType( wxEVT_CHAR );
-    
+
     if (!GetEventHandler()->ProcessEvent( event ))
     {
         event.Skip();
@@ -2200,7 +2207,7 @@ void wxWindow::OnKeyDown( wxKeyEvent &event )
 void wxWindow::SetFocus()
 {
     wxCHECK_RET( (m_widget != NULL), "invalid window" );
-    
+
     GtkWidget *connect_widget = GetConnectWidget();
     if (connect_widget)
     {
@@ -2208,13 +2215,13 @@ void wxWindow::SetFocus()
         {
             gtk_widget_grab_focus (connect_widget);
         }
-       else if (GTK_IS_CONTAINER(connect_widget))
-       {
-           gtk_container_focus( GTK_CONTAINER(connect_widget), GTK_DIR_TAB_FORWARD );
-       }
-       else
-       {
-       }
+        else if (GTK_IS_CONTAINER(connect_widget))
+        {
+            gtk_container_focus( GTK_CONTAINER(connect_widget), GTK_DIR_TAB_FORWARD );
+        }
+        else
+        {
+        }
     }
 }
 
@@ -2244,7 +2251,7 @@ void wxWindow::AddChild( wxWindow *child )
 wxWindow *wxWindow::ReParent( wxWindow *newParent )
 {
     wxCHECK_MSG( (m_widget != NULL), (wxWindow*) NULL, "invalid window" );
-    
+
     wxWindow *oldParent = GetParent();
 
     if (oldParent) oldParent->RemoveChild( this );
@@ -2418,12 +2425,12 @@ void wxWindow::Refresh( bool eraseBackground, const wxRect *rect )
             Clear();
         }
     }
-    
+
     if (!rect)
     {
         if (m_wxwindow)
             gtk_widget_draw( m_wxwindow, (GdkRectangle*) NULL );
-       else
+        else
             gtk_widget_draw( m_widget, (GdkRectangle*) NULL );
     }
     else
@@ -2473,6 +2480,7 @@ void wxWindow::Clear()
     if (m_wxwindow && m_wxwindow->window) gdk_window_clear( m_wxwindow->window );
 }
 
+#if wxUSE_TOOLTIPS
 void wxWindow::SetToolTip( const wxString &tip )
 {
     if (m_toolTip)
@@ -2481,15 +2489,11 @@ void wxWindow::SetToolTip( const wxString &tip )
     }
     else
     {
-        m_toolTip = new wxToolTip( tip );
-       m_toolTip->Apply( this );
-    }
-    
-    if (tip.IsEmpty())
-    {
-        delete m_toolTip;
-       m_toolTip = (wxToolTip*) NULL;
+        SetToolTip( new wxToolTip( tip ) );
     }
+
+    // setting empty tooltip text does not remove the tooltip any more for
+    // wxMSW compatibility - use SetToolTip((wxToolTip *)NULL) for this
 }
 
 void wxWindow::SetToolTip( wxToolTip *tip )
@@ -2499,21 +2503,18 @@ void wxWindow::SetToolTip( wxToolTip *tip )
         m_toolTip->SetTip( (char*) NULL );
         delete m_toolTip;
     }
-    
+
     m_toolTip = tip;
-    
-    if (m_toolTip) m_toolTip->Apply( this );
+
+    if (m_toolTip)
+        m_toolTip->Apply( this );
 }
 
 void wxWindow::ApplyToolTip( GtkTooltips *tips, const char *tip )
 {
     gtk_tooltips_set_tip( tips, GetConnectWidget(), tip, (gchar*) NULL );
 }
-
-wxToolTip* wxWindow::GetToolTip()
-{
-    return m_toolTip;
-}
+#endif // wxUSE_TOOLTIPS
 
 wxColour wxWindow::GetBackgroundColour() const
 {
@@ -2538,14 +2539,14 @@ void wxWindow::SetBackgroundColour( const wxColour &colour )
     }
 
     wxColour sysbg = wxSystemSettings::GetSystemColour( wxSYS_COLOUR_BTNFACE );
-    if (sysbg.Red() == colour.Red() && 
-        sysbg.Green() == colour.Green() && 
+    if (sysbg.Red() == colour.Red() &&
+        sysbg.Green() == colour.Green() &&
         sysbg.Blue() == colour.Blue())
     {
         m_backgroundColour = wxNullColour;
         ApplyWidgetStyle();
-       m_backgroundColour = sysbg;
-    } 
+        m_backgroundColour = sysbg;
+    }
     else
     {
         ApplyWidgetStyle();
@@ -2567,14 +2568,14 @@ void wxWindow::SetForegroundColour( const wxColour &colour )
     if (!m_foregroundColour.Ok()) return;
 
     wxColour sysbg = wxSystemSettings::GetSystemColour( wxSYS_COLOUR_BTNFACE );
-    if (sysbg.Red() == colour.Red() && 
-        sysbg.Green() == colour.Green() && 
+    if (sysbg.Red() == colour.Red() &&
+        sysbg.Green() == colour.Green() &&
         sysbg.Blue() == colour.Blue())
     {
         m_backgroundColour = wxNullColour;
         ApplyWidgetStyle();
-       m_backgroundColour = sysbg;
-    } 
+        m_backgroundColour = sysbg;
+    }
     else
     {
         ApplyWidgetStyle();
@@ -2634,9 +2635,9 @@ bool wxWindow::Validate()
     {
         wxWindow *child = (wxWindow *)node->Data();
         if (child->GetValidator() && /* child->GetValidator()->Ok() && */ !child->GetValidator()->Validate(this))
-        { 
-           return FALSE; 
-       }
+        {
+            return FALSE;
+        }
         node = node->Next();
     }
     return TRUE;
@@ -2670,9 +2671,9 @@ bool wxWindow::TransferDataFromWindow()
     {
         wxWindow *child = (wxWindow *)node->Data();
         if ( child->GetValidator() && /* child->GetValidator()->Ok() && */ !child->GetValidator()->TransferFromWindow() )
-        { 
-           return FALSE; 
-       }
+        {
+            return FALSE;
+        }
         node = node->Next();
     }
     return TRUE;
@@ -2706,8 +2707,8 @@ static void SetInvokingWindow( wxMenu *menu, wxWindow *win )
         wxMenuItem *menuitem = (wxMenuItem*)node->Data();
         if (menuitem->IsSubMenu())
         {
-           SetInvokingWindow( menuitem->GetSubMenu(), win );
-       }
+            SetInvokingWindow( menuitem->GetSubMenu(), win );
+        }
         node = node->Next();
     }
 }
@@ -2729,10 +2730,10 @@ bool wxWindow::PopupMenu( wxMenu *menu, int x, int y )
     wxCHECK_MSG( menu != NULL, FALSE, "invalid popup-menu" );
 
     SetInvokingWindow( menu, this );
-    
+
     gs_pop_x = x;
     gs_pop_y = y;
-    
+
     gtk_menu_popup(
                   GTK_MENU(menu->m_menu),
                   (GtkWidget *) NULL,          // parent menu shell
@@ -2792,14 +2793,14 @@ void wxWindow::SetFont( const wxFont &font )
         m_font = *wxSWISS_FONT;
 
     wxColour sysbg = wxSystemSettings::GetSystemColour( wxSYS_COLOUR_BTNFACE );
-    if (sysbg.Red() == m_backgroundColour.Red() && 
-        sysbg.Green() == m_backgroundColour.Green() && 
+    if (sysbg.Red() == m_backgroundColour.Red() &&
+        sysbg.Green() == m_backgroundColour.Green() &&
         sysbg.Blue() == m_backgroundColour.Blue())
     {
         m_backgroundColour = wxNullColour;
         ApplyWidgetStyle();
-       m_backgroundColour = sysbg;
-    } 
+        m_backgroundColour = sysbg;
+    }
     else
     {
         ApplyWidgetStyle();
@@ -2829,9 +2830,9 @@ void wxWindow::CaptureMouse()
                          (GDK_BUTTON_PRESS_MASK |
                           GDK_BUTTON_RELEASE_MASK |
                           GDK_POINTER_MOTION_MASK),
-                      (GdkWindow *) NULL, 
-                     (GdkCursor *) NULL, 
-                     GDK_CURRENT_TIME );
+                      (GdkWindow *) NULL,
+                      (GdkCursor *) NULL,
+                      GDK_CURRENT_TIME );
     g_capturing = TRUE;
 }
 
@@ -3000,7 +3001,7 @@ void wxWindow::SetScrollPos( int orient, int pos, bool WXUNUSED(refresh) )
         if (fpos > m_vAdjust->upper - m_vAdjust->page_size) fpos = m_vAdjust->upper - m_vAdjust->page_size;
         if (fpos < 0.0) fpos = 0.0;
         m_oldVerticalPos = fpos;
-    
+
         if (fabs(fpos-m_vAdjust->value) < 0.2) return;
         m_vAdjust->value = fpos;
     }
@@ -3407,9 +3408,9 @@ void wxWindow::SetConstraintSizes(bool recurse)
     winName = "unnamed";
   else
     winName = GetName();
-    wxLogDebug( "Constraint(s) not satisfied for window of type %s, name %s:\n", 
-                (const char *)windowClass, 
-               (const char *)winName);
+    wxLogDebug( "Constraint(s) not satisfied for window of type %s, name %s:\n",
+                (const char *)windowClass,
+                (const char *)winName);
     if (!constr->left.GetDone()) wxLogDebug( "  unsatisfied 'left' constraint.\n" );
     if (!constr->right.GetDone()) wxLogDebug( "  unsatisfied 'right' constraint.\n" );
     if (!constr->width.GetDone()) wxLogDebug( "  unsatisfied 'width' constraint.\n" );
index 85425761d04dd7aa896f47ae64d22f69b533377a..c3fa1a8749cd2c29a0427a2689e7bb3f9c4e5f3d 100644 (file)
@@ -4,7 +4,7 @@
 // Author:      Robert Roebling
 // Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 
@@ -30,15 +30,15 @@ extern bool   g_blockEventsOnDrag;
 static void gtk_checkbox_clicked_callback( GtkWidget *WXUNUSED(widget), wxCheckBox *cb )
 {
     if (!cb->HasVMT()) return;
-  
+
     if (cb->m_blockFirstEvent)
     {
         cb->m_blockFirstEvent = FALSE;
         return;
-    } 
-  
+    }
+
     if (g_blockEventsOnDrag) return;
-  
+
     wxCommandEvent event(wxEVT_COMMAND_CHECKBOX_CLICKED, cb->GetId());
     event.SetInt( cb->GetValue() );
     event.SetEventObject(cb);
@@ -56,50 +56,50 @@ wxCheckBox::wxCheckBox(void)
 }
 
 bool wxCheckBox::Create(  wxWindow *parent, wxWindowID id, const wxString &label,
-      const wxPoint &pos, const wxSize &size, 
+      const wxPoint &pos, const wxSize &size,
       long style, const wxValidator& validator, const wxString &name )
 {
     m_needParent = TRUE;
     m_acceptsFocus = TRUE;
-  
+
     PreCreation( parent, id, pos, size, style, name );
 
     SetValidator( validator );
 
     m_widget = gtk_check_button_new_with_label( m_label );
+
     m_blockFirstEvent = FALSE;
-  
+
     wxSize newSize = size;
     if (newSize.x == -1) newSize.x = 25+gdk_string_measure( m_widget->style->font, label );
     if (newSize.y == -1) newSize.y = 26;
     SetSize( newSize.x, newSize.y );
-   
-    gtk_signal_connect( GTK_OBJECT(m_widget), "clicked", 
+
+    gtk_signal_connect( GTK_OBJECT(m_widget), "clicked",
       GTK_SIGNAL_FUNC(gtk_checkbox_clicked_callback), (gpointer*)this );
-    
+
     m_parent->AddChild( this );
 
     (m_parent->m_insertCallback)( m_parent, this );
-  
+
     PostCreation();
-  
+
     gtk_widget_realize( GTK_BUTTON( m_widget )->child );
-  
+
     SetLabel( label );
 
     SetBackgroundColour( parent->GetBackgroundColour() );
     SetForegroundColour( parent->GetForegroundColour() );
 
     Show( TRUE );
-    
+
     return TRUE;
 }
 
 void wxCheckBox::SetValue( bool state )
 {
     wxCHECK_RET( m_widget != NULL, "invalid checkbox" );
-    
+
     if ( state == GetValue() )
         return;
 
@@ -122,7 +122,7 @@ void wxCheckBox::SetLabel( const wxString& label )
     wxCHECK_RET( m_widget != NULL, "invalid checkbox" );
 
     wxControl::SetLabel( label );
-  
+
     gtk_label_set( GTK_LABEL( GTK_BUTTON(m_widget)->child ), GetLabel() );
 }
 
@@ -131,7 +131,7 @@ void wxCheckBox::Enable( bool enable )
     wxCHECK_RET( m_widget != NULL, "invalid checkbox" );
 
     wxControl::Enable( enable );
-  
+
     gtk_widget_set_sensitive( GTK_BUTTON(m_widget)->child, enable );
 }
 
index 82fb96dc1a419b24100cf89fa17acc2e2ba17873..3eaf62c54bcf9ac740a009e5abd6bdd20c292efb 100644 (file)
@@ -4,7 +4,7 @@
 // Author:      Robert Roebling
 // Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
@@ -31,7 +31,7 @@ wxCheckListBox::wxCheckListBox() :
 wxCheckListBox::wxCheckListBox(wxWindow *parent, wxWindowID id,
                  const wxPoint& pos,
                  const wxSize& size,
-                 int nStrings, 
+                 int nStrings,
                  const wxString choices[],
                  long style,
                  const wxValidator& validator,
@@ -44,18 +44,18 @@ wxCheckListBox::wxCheckListBox(wxWindow *parent, wxWindowID id,
 bool wxCheckListBox::IsChecked( int index ) const
 {
     wxCHECK_MSG( m_list != NULL, FALSE, "invalid checklistbox" );
-  
+
     GList *child = g_list_nth( m_list->children, index );
     if (child)
     {
         GtkBin *bin = GTK_BIN( child->data );
         GtkLabel *label = GTK_LABEL( bin->child );
-       
-       wxString str = label->label;
-    
+
+        wxString str = label->label;
+
         return (str[1] == 'X');
     }
-    
+
     wxFAIL_MSG("wrong checklistbox index");
     return FALSE;
 }
@@ -63,31 +63,32 @@ bool wxCheckListBox::IsChecked( int index ) const
 void wxCheckListBox::Check( int index, bool check )
 {
     wxCHECK_RET( m_list != NULL, "invalid checklistbox" );
-  
+
     GList *child = g_list_nth( m_list->children, index );
     if (child)
     {
         GtkBin *bin = GTK_BIN( child->data );
         GtkLabel *label = GTK_LABEL( bin->child );
-       
-       wxString str = label->label;
-    
+
+        wxString str = label->label;
+
         if (check == (str[1] == 'X')) return;
-       
-       if (check)
-           str.SetChar( 1, 'X' );
-       else
-           str.SetChar( 1, '-' );
-           
-       gtk_label_set( label, str );
-           
-       return;
+
+        if (check)
+            str.SetChar( 1, 'X' );
+        else
+            str.SetChar( 1, '-' );
+
+        gtk_label_set( label, str );
+
+        return;
     }
-    
+
     wxFAIL_MSG("wrong checklistbox index");
 }
 
-int wxCheckListBox::GetItemHeight()
+int wxCheckListBox::GetItemHeight() const
 {
+    // FIXME
     return 22;
 }
index db10f19582989a3ef716c144c2c92dc39cdad354..9571b5e29b60eafef19f478d18b08b2ca23854e1 100644 (file)
@@ -47,7 +47,7 @@ extern bool   g_blockEventsOnScroll;
 // "button_press_event"
 //-----------------------------------------------------------------------------
 
-static gint 
+static gint
 gtk_listbox_button_press_callback( GtkWidget *widget, GdkEventButton *gdk_event, wxListBox *listbox )
 {
     if (g_blockEventsOnDrag) return FALSE;
@@ -56,24 +56,24 @@ gtk_listbox_button_press_callback( GtkWidget *widget, GdkEventButton *gdk_event,
     if (!listbox->HasVMT()) return FALSE;
 
     int sel = listbox->GetIndex( widget );
-    
+
     if ((listbox->m_hasCheckBoxes) && (gdk_event->x < 15) && (gdk_event->type != GDK_2BUTTON_PRESS))
     {
         wxCheckListBox *clb = (wxCheckListBox *)listbox;
-    
+
         clb->Check( sel, !clb->IsChecked(sel) );
-    
+
         wxCommandEvent event( wxEVT_COMMAND_CHECKLISTBOX_TOGGLED, listbox->GetId() );
         event.SetEventObject( listbox );
         event.SetInt( sel );
         listbox->GetEventHandler()->ProcessEvent( event );
     }
-    
+
     if (gdk_event->type == GDK_2BUTTON_PRESS)
     {
         wxCommandEvent event( wxEVT_COMMAND_LISTBOX_DOUBLECLICKED, listbox->GetId() );
         event.SetEventObject( listbox );
-       
+
         wxArrayInt aSelections;
         int count = listbox->GetSelections(aSelections);
         if ( count > 0 )
@@ -90,7 +90,7 @@ gtk_listbox_button_press_callback( GtkWidget *widget, GdkEventButton *gdk_event,
         }
 
         listbox->GetEventHandler()->ProcessEvent( event );
-       
+
         if (event.m_commandString) delete[] event.m_commandString ;
     }
 
@@ -101,7 +101,7 @@ gtk_listbox_button_press_callback( GtkWidget *widget, GdkEventButton *gdk_event,
 // "key_press_event"
 //-----------------------------------------------------------------------------
 
-static gint 
+static gint
 gtk_listbox_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_event, wxListBox *listbox )
 {
     if (g_blockEventsOnDrag) return FALSE;
@@ -109,18 +109,18 @@ gtk_listbox_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_event, wxLis
     if (!listbox->HasVMT()) return FALSE;
 
     if (gdk_event->keyval != ' ') return FALSE;
-    
+
     int sel = listbox->GetIndex( widget );
-    
+
     wxCheckListBox *clb = (wxCheckListBox *)listbox;
-    
+
     clb->Check( sel, !clb->IsChecked(sel) );
-    
+
     wxCommandEvent event( wxEVT_COMMAND_CHECKLISTBOX_TOGGLED, listbox->GetId() );
     event.SetEventObject( listbox );
     event.SetInt( sel );
     listbox->GetEventHandler()->ProcessEvent( event );
-       
+
     return FALSE;
 }
 
@@ -183,7 +183,7 @@ bool wxListBox::Create( wxWindow *parent, wxWindowID id,
     m_widget = gtk_scrolled_window_new( (GtkAdjustment*) NULL, (GtkAdjustment*) NULL );
     gtk_scrolled_window_set_policy( GTK_SCROLLED_WINDOW(m_widget),
       GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC );
-      
+
     m_list = GTK_LIST( gtk_list_new() );
 
     GtkSelectionMode mode = GTK_SELECTION_BROWSE;
@@ -202,7 +202,7 @@ bool wxListBox::Create( wxWindow *parent, wxWindowID id,
 
 #ifdef __WXDEBUG__
     debug_focus_in( m_widget, "wxListBox::m_widget", name );
-    
+
     debug_focus_in( GTK_WIDGET(m_list), "wxListBox::m_list", name );
 
     GtkScrolledWindow *s_window = GTK_SCROLLED_WINDOW(m_widget);
@@ -230,24 +230,24 @@ bool wxListBox::Create( wxWindow *parent, wxWindowID id,
     {
         m_clientDataList.Append( (wxObject*) NULL );
         m_clientObjectList.Append( (wxObject*) NULL );
-  
+
         GtkWidget *list_item;
-       
-       if (m_hasCheckBoxes)
-       {
+
+        if (m_hasCheckBoxes)
+        {
             wxString str = "[-] ";
-           str += choices[i];
+            str += choices[i];
             list_item = gtk_list_item_new_with_label( str );
-       }
-       else
-       {
+        }
+        else
+        {
             list_item = gtk_list_item_new_with_label( choices[i] );
-       }
+        }
 
 #ifdef __WXDEBUG__
         debug_focus_in( list_item, "wxListBox::list_item", name );
-#endif    
-    
+#endif
+
         gtk_container_add( GTK_CONTAINER(m_list), list_item );
 
         gtk_signal_connect( GTK_OBJECT(list_item), "select",
@@ -257,28 +257,28 @@ bool wxListBox::Create( wxWindow *parent, wxWindowID id,
             gtk_signal_connect( GTK_OBJECT(list_item), "deselect",
               GTK_SIGNAL_FUNC(gtk_listitem_select_callback), (gpointer)this );
 
-        gtk_signal_connect( GTK_OBJECT(list_item), 
-                           "button_press_event",
-                            (GtkSignalFunc)gtk_listbox_button_press_callback, 
-                           (gpointer) this );
-       
-       if (m_hasCheckBoxes)
-       {
-            gtk_signal_connect( GTK_OBJECT(list_item), 
-                           "key_press_event",
-                            (GtkSignalFunc)gtk_listbox_key_press_callback, 
-                           (gpointer)this );
-       }
-       
-        ConnectWidget( list_item );    
-       
+        gtk_signal_connect( GTK_OBJECT(list_item),
+                            "button_press_event",
+                            (GtkSignalFunc)gtk_listbox_button_press_callback,
+                            (gpointer) this );
+
+        if (m_hasCheckBoxes)
+        {
+            gtk_signal_connect( GTK_OBJECT(list_item),
+                            "key_press_event",
+                            (GtkSignalFunc)gtk_listbox_key_press_callback,
+                            (gpointer)this );
+        }
+
+        ConnectWidget( list_item );
+
         gtk_widget_show( list_item );
     }
 
     m_parent->AddChild( this );
 
     (m_parent->m_insertCallback)( m_parent, this );
-  
+
     PostCreation();
 
     gtk_widget_realize( GTK_WIDGET(m_list) );
@@ -299,13 +299,13 @@ wxListBox::~wxListBox()
 void wxListBox::AppendCommon( const wxString &item )
 {
     wxCHECK_RET( m_list != NULL, "invalid listbox" );
-  
+
     GtkWidget *list_item;
-    
+
     if (m_hasCheckBoxes)
     {
         wxString str = "[-] ";
-       str += item;
+        str += item;
         list_item = gtk_list_item_new_with_label( str );
     }
     else
@@ -323,20 +323,20 @@ void wxListBox::AppendCommon( const wxString &item )
     gtk_container_add( GTK_CONTAINER(m_list), list_item );
 
     if (m_widgetStyle) ApplyWidgetStyle();
-  
-    gtk_signal_connect( GTK_OBJECT(list_item), 
-                       "button_press_event",
-                        (GtkSignalFunc)gtk_listbox_button_press_callback, 
-                       (gpointer) this );
-    
+
+    gtk_signal_connect( GTK_OBJECT(list_item),
+                        "button_press_event",
+                        (GtkSignalFunc)gtk_listbox_button_press_callback,
+                        (gpointer) this );
+
     if (m_hasCheckBoxes)
     {
-       gtk_signal_connect( GTK_OBJECT(list_item), 
-                       "key_press_event",
-                        (GtkSignalFunc)gtk_listbox_key_press_callback, 
-                       (gpointer)this );
+       gtk_signal_connect( GTK_OBJECT(list_item),
+                        "key_press_event",
+                        (GtkSignalFunc)gtk_listbox_key_press_callback,
+                        (gpointer)this );
     }
-       
+
     gtk_widget_show( list_item );
 
     ConnectWidget( list_item );
@@ -354,7 +354,7 @@ void wxListBox::Append( const wxString &item )
 {
     m_clientDataList.Append( (wxObject*) NULL );
     m_clientObjectList.Append( (wxObject*) NULL );
-  
+
     AppendCommon( item );
 }
 
@@ -362,7 +362,7 @@ void wxListBox::Append( const wxString &item, void *clientData )
 {
     m_clientDataList.Append( (wxObject*) clientData );
     m_clientObjectList.Append( (wxObject*) NULL );
-  
+
     AppendCommon( item );
 }
 
@@ -370,50 +370,50 @@ void wxListBox::Append( const wxString &item, wxClientData *clientData )
 {
     m_clientObjectList.Append( (wxObject*) clientData );
     m_clientDataList.Append( (wxObject*) NULL );
-  
+
     AppendCommon( item );
 }
 
 void wxListBox::SetClientData( int n, void* clientData )
 {
     wxCHECK_RET( m_widget != NULL, "invalid combobox" );
-  
+
     wxNode *node = m_clientDataList.Nth( n );
     if (!node) return;
-  
+
     node->SetData( (wxObject*) clientData );
 }
 
 void* wxListBox::GetClientData( int n )
 {
     wxCHECK_MSG( m_widget != NULL, NULL, "invalid combobox" );
-  
+
     wxNode *node = m_clientDataList.Nth( n );
     if (!node) return NULL;
-    
+
     return node->Data();
 }
 
 void wxListBox::SetClientObject( int n, wxClientData* clientData )
 {
     wxCHECK_RET( m_widget != NULL, "invalid combobox" );
-    
+
     wxNode *node = m_clientObjectList.Nth( n );
     if (!node) return;
-  
+
     wxClientData *cd = (wxClientData*) node->Data();
     if (cd) delete cd;
-  
+
     node->SetData( (wxObject*) clientData );
 }
 
 wxClientData* wxListBox::GetClientObject( int n )
 {
     wxCHECK_MSG( m_widget != NULL, (wxClientData*)NULL, "invalid combobox" );
-  
+
     wxNode *node = m_clientObjectList.Nth( n );
     if (!node) return (wxClientData*) NULL;
-    
+
     return (wxClientData*) node->Data();
 }
 
@@ -431,7 +431,7 @@ void wxListBox::Clear()
         node = node->Next();
     }
     m_clientObjectList.Clear();
-    
+
     m_clientDataList.Clear();
 }
 
@@ -454,7 +454,7 @@ void wxListBox::Delete( int n )
         if (cd) delete cd;
         m_clientObjectList.DeleteNode( node );
     }
-    
+
     node = m_clientDataList.Nth( n );
     if (node)
     {
@@ -472,19 +472,19 @@ void wxListBox::Deselect( int n )
 int wxListBox::FindString( const wxString &item ) const
 {
     wxCHECK_MSG( m_list != NULL, -1, "invalid listbox" );
-  
+
     GList *child = m_list->children;
     int count = 0;
     while (child)
     {
         GtkBin *bin = GTK_BIN( child->data );
         GtkLabel *label = GTK_LABEL( bin->child );
-       
-       wxString str = label->label;
-       if (m_hasCheckBoxes) str.Remove( 0, 4 );
-       
+
+        wxString str = label->label;
+        if (m_hasCheckBoxes) str.Remove( 0, 4 );
+
         if (str == item) return count;
-       
+
         count++;
         child = child->next;
     }
@@ -497,7 +497,7 @@ int wxListBox::FindString( const wxString &item ) const
 int wxListBox::GetSelection() const
 {
     wxCHECK_MSG( m_list != NULL, -1, "invalid listbox" );
-  
+
     GList *child = m_list->children;
     int count = 0;
     while (child)
@@ -512,7 +512,7 @@ int wxListBox::GetSelection() const
 int wxListBox::GetSelections( wxArrayInt& aSelections ) const
 {
     wxCHECK_MSG( m_list != NULL, -1, "invalid listbox" );
-  
+
     // get the number of selected items first
     GList *child = m_list->children;
     int count = 0;
@@ -524,7 +524,7 @@ int wxListBox::GetSelections( wxArrayInt& aSelections ) const
 
     aSelections.Empty();
 
-    if (count > 0) 
+    if (count > 0)
     {
         // now fill the list
         aSelections.Alloc(count); // optimization attempt
@@ -542,16 +542,16 @@ int wxListBox::GetSelections( wxArrayInt& aSelections ) const
 wxString wxListBox::GetString( int n ) const
 {
     wxCHECK_MSG( m_list != NULL, "", "invalid listbox" );
-  
+
     GList *child = g_list_nth( m_list->children, n );
     if (child)
     {
         GtkBin *bin = GTK_BIN( child->data );
         GtkLabel *label = GTK_LABEL( bin->child );
-       
-       wxString str = label->label;
-       if (m_hasCheckBoxes) str.Remove( 0, 4 );
-       
+
+        wxString str = label->label;
+        if (m_hasCheckBoxes) str.Remove( 0, 4 );
+
         return str;
     }
     wxFAIL_MSG("wrong listbox index");
@@ -561,19 +561,19 @@ wxString wxListBox::GetString( int n ) const
 wxString wxListBox::GetStringSelection() const
 {
     wxCHECK_MSG( m_list != NULL, "", "invalid listbox" );
-  
+
     GList *selection = m_list->selection;
     if (selection)
     {
         GtkBin *bin = GTK_BIN( selection->data );
         GtkLabel *label = GTK_LABEL( bin->child );
-       
-       wxString str = label->label;
-       if (m_hasCheckBoxes) str.Remove( 0, 4 );
-       
+
+        wxString str = label->label;
+        if (m_hasCheckBoxes) str.Remove( 0, 4 );
+
         return str;
     }
-    
+
     wxFAIL_MSG("no listbox selection available");
     return "";
 }
@@ -581,7 +581,7 @@ wxString wxListBox::GetStringSelection() const
 int wxListBox::Number()
 {
     wxCHECK_MSG( m_list != NULL, -1, "invalid listbox" );
-  
+
     GList *child = m_list->children;
     int count = 0;
     while (child) { count++; child = child->next; }
@@ -591,7 +591,7 @@ int wxListBox::Number()
 bool wxListBox::Selected( int n )
 {
     wxCHECK_MSG( m_list != NULL, FALSE, "invalid listbox" );
-  
+
     GList *target = g_list_nth( m_list->children, n );
     if (target)
     {
@@ -624,7 +624,7 @@ void wxListBox::SetFirstItem( const wxString &WXUNUSED(item) )
 void wxListBox::SetSelection( int n, bool select )
 {
     wxCHECK_RET( m_list != NULL, "invalid listbox" );
-  
+
     if (select)
         gtk_list_select_item( m_list, n );
     else
@@ -634,29 +634,29 @@ void wxListBox::SetSelection( int n, bool select )
 void wxListBox::SetString( int n, const wxString &string )
 {
     wxCHECK_RET( m_list != NULL, "invalid listbox" );
-  
+
     GList *child = g_list_nth( m_list->children, n );
     if (child)
     {
         GtkBin *bin = GTK_BIN( child->data );
         GtkLabel *label = GTK_LABEL( bin->child );
-       
-       wxString str;
-       if (m_hasCheckBoxes) str += "[-] ";
-       str += string;
-       
+
+        wxString str;
+        if (m_hasCheckBoxes) str += "[-] ";
+        str += string;
+
         gtk_label_set( label, str );
     }
     else
     {
         wxFAIL_MSG("wrong listbox index");
-    } 
+    }
 }
 
 void wxListBox::SetStringSelection( const wxString &string, bool select )
 {
     wxCHECK_RET( m_list != NULL, "invalid listbox" );
-  
+
     SetSelection( FindString(string), select );
 }
 
@@ -676,6 +676,7 @@ int wxListBox::GetIndex( GtkWidget *item ) const
     return -1;
 }
 
+#if wxUSE_TOOLTIPS
 void wxListBox::ApplyToolTip( GtkTooltips *tips, const char *tip )
 {
     GList *child = m_list->children;
@@ -685,24 +686,25 @@ void wxListBox::ApplyToolTip( GtkTooltips *tips, const char *tip )
         child = child->next;
     }
 }
+#endif // wxUSE_TOOLTIPS
 
 #if wxUSE_DRAG_AND_DROP
 void wxListBox::SetDropTarget( wxDropTarget *dropTarget )
 {
     wxCHECK_RET( m_list != NULL, "invalid listbox" );
-  
+
 #ifndef NEW_GTK_DND_CODE
     if (m_dropTarget)
     {
         GList *child = m_list->children;
         while (child)
         {
-           m_dropTarget->UnregisterWidget( GTK_WIDGET( child->data ) );
+            m_dropTarget->UnregisterWidget( GTK_WIDGET( child->data ) );
             child = child->next;
         }
     }
 #endif
-    
+
     wxWindow::SetDropTarget( dropTarget );
 
 #ifndef NEW_GTK_DND_CODE
@@ -711,7 +713,7 @@ void wxListBox::SetDropTarget( wxDropTarget *dropTarget )
         GList *child = m_list->children;
         while (child)
         {
-           m_dropTarget->RegisterWidget( GTK_WIDGET( child->data ) );
+            m_dropTarget->RegisterWidget( GTK_WIDGET( child->data ) );
             child = child->next;
         }
     }
@@ -742,7 +744,7 @@ bool wxListBox::IsOwnGtkWindow( GdkWindow *window )
 void wxListBox::ApplyWidgetStyle()
 {
     SetWidgetStyle();
-  
+
     if (m_backgroundColour.Ok())
     {
         GdkWindow *window = GTK_WIDGET(m_list)->window;
@@ -750,16 +752,16 @@ void wxListBox::ApplyWidgetStyle()
         gdk_window_set_background( window, m_backgroundColour.GetColor() );
         gdk_window_clear( window );
     }
-      
+
     GList *child = m_list->children;
     while (child)
     {
         gtk_widget_set_style( GTK_WIDGET(child->data), m_widgetStyle );
-       
+
         GtkBin *bin = GTK_BIN( child->data );
         GtkWidget *label = GTK_WIDGET( bin->child );
         gtk_widget_set_style( label, m_widgetStyle );
-       
+
         child = child->next;
     }
 }
index 44759110bfc0c378c24c95b2c768984740e40f5d..dde56c65eeb758a637cffda48f8e8c7ca426b271 100644 (file)
@@ -1,16 +1,17 @@
 /////////////////////////////////////////////////////////////////////////////
 // Name:        tooltip.cpp
-// Purpose:
+// Purpose:     wxToolTip implementation
 // Author:      Robert Roebling
 // Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
-// Licence:    wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
-#pragma implementation "tooltip.h"
+    #pragma implementation "tooltip.h"
 #endif
 
+#include "wx/window.h"
 #include "wx/tooltip.h"
 
 #include "gtk/gtk.h"
@@ -23,7 +24,7 @@
 static GtkTooltips *ss_tooltips = (GtkTooltips*) NULL;
 static GdkColor     ss_bg;
 static GdkColor     ss_fg;
-    
+
 //-----------------------------------------------------------------------------
 // wxToolTip
 //-----------------------------------------------------------------------------
@@ -34,16 +35,6 @@ wxToolTip::wxToolTip( const wxString &tip )
     m_window = (wxWindow*) NULL;
 }
 
-bool wxToolTip::Ok() const
-{
-    return (m_window);
-}
-
-wxString wxToolTip::GetTip() const
-{
-    return m_text;
-}
-
 void wxToolTip::SetTip( const wxString &tip )
 {
     m_text = tip;
@@ -57,22 +48,22 @@ void wxToolTip::Apply( wxWindow *win )
     if (!ss_tooltips)
     {
         ss_tooltips = gtk_tooltips_new();
-       
-        ss_fg.red = 0; 
+
+        ss_fg.red = 0;
         ss_fg.green = 0;
         ss_fg.blue = 0;
         gdk_color_alloc( gtk_widget_get_default_colormap(), &ss_fg );
-       
+
         ss_bg.red = 65535;
         ss_bg.green = 65535;
         ss_bg.blue = 50000;
         gdk_color_alloc( gtk_widget_get_default_colormap(), &ss_bg );
-       
-       gtk_tooltips_set_colors( ss_tooltips, &ss_bg, &ss_fg );
+
+        gtk_tooltips_set_colors( ss_tooltips, &ss_bg, &ss_fg );
     }
-    
+
     m_window = win;
-    
+
     if (m_text.IsEmpty())
         m_window->ApplyToolTip( ss_tooltips, (char*) NULL );
     else
@@ -82,7 +73,7 @@ void wxToolTip::Apply( wxWindow *win )
 void wxToolTip::Enable( bool flag )
 {
     if (!ss_tooltips) return;
-    
+
     if (flag)
         gtk_tooltips_enable( ss_tooltips );
     else
@@ -92,7 +83,7 @@ void wxToolTip::Enable( bool flag )
 void wxToolTip::SetDelay( long msecs )
 {
     if (!ss_tooltips) return;
-    
+
     gtk_tooltips_set_delay( ss_tooltips, msecs );
 }
 
index 69d0c5f2a913b8484e2000d2e8c7d13ec031d5d5..b76cdfa686991863daf66a23bd3c149613525ff7 100644 (file)
 
 #ifdef __WXDEBUG__
 
-static gint gtk_debug_focus_in_callback( GtkWidget *WXUNUSED(widget), 
-                                         GdkEvent *WXUNUSED(event), 
-                                        const char *name )
+static gint gtk_debug_focus_in_callback( GtkWidget *WXUNUSED(widget),
+                                         GdkEvent *WXUNUSED(event),
+                                         const char *name )
 {
     printf( "FOCUS NOW AT: " );
     printf( name );
     printf( "\n" );
-    
+
     return FALSE;
 }
 
@@ -150,9 +150,9 @@ void debug_focus_in( GtkWidget* widget, const char* name, const char *window )
     wxString tmp = name;
     tmp += " FROM ";
     tmp += window;
-    
+
     char *s = new char[tmp.Length()+1];
-    
+
     strcpy( s, WXSTRINGCAST tmp );
 
     gtk_signal_connect( GTK_OBJECT(widget), "focus_in_event",
@@ -345,38 +345,38 @@ static gint gtk_window_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_e
             ancestor = ancestor->GetParent();
         }
     }
-    
+
     // win is a control: tab can be propagated up
     if ((!ret) && (gdk_event->keyval == GDK_Tab))
     {
         wxNavigationKeyEvent new_event;
         new_event.SetDirection( !(gdk_event->state & GDK_SHIFT_MASK) );
-       new_event.SetWindowChange( FALSE );
+        new_event.SetWindowChange( FALSE );
         new_event.SetCurrentFocus( win );
-       ret = win->GetEventHandler()->ProcessEvent( new_event );
+        ret = win->GetEventHandler()->ProcessEvent( new_event );
     }
-    
+
 /*
     // win is a panel: up can be propagated to the panel
     if ((!ret) && (win->m_wxwindow) && (win->m_parent) && (win->m_parent->AcceptsFocus()) &&
         (gdk_event->keyval == GDK_Up))
     {
         win->m_parent->SetFocus();
-       ret = TRUE;
+        ret = TRUE;
     }
-    
+
     // win is a panel: left/right can be propagated to the panel
-    if ((!ret) && (win->m_wxwindow) && 
-        ((gdk_event->keyval == GDK_Right) || (gdk_event->keyval == GDK_Left) || 
+    if ((!ret) && (win->m_wxwindow) &&
+        ((gdk_event->keyval == GDK_Right) || (gdk_event->keyval == GDK_Left) ||
          (gdk_event->keyval == GDK_Up) || (gdk_event->keyval == GDK_Down)))
     {
         wxNavigationKeyEvent new_event;
         new_event.SetDirection( (gdk_event->keyval == GDK_Right) || (gdk_event->keyval == GDK_Down) );
         new_event.SetCurrentFocus( win );
-       ret = win->GetEventHandler()->ProcessEvent( new_event );
+        ret = win->GetEventHandler()->ProcessEvent( new_event );
     }
 */
-    
+
     if (ret)
     {
         gtk_signal_emit_stop_by_name( GTK_OBJECT(widget), "key_press_event" );
@@ -588,37 +588,37 @@ static gint gtk_window_button_press_callback( GtkWidget *widget, GdkEventButton
         while (node)
         {
             wxWindow *child = (wxWindow*)node->Data();
-           
-           if (child->m_isStaticBox)
-           {
-               // wxStaticBox is transparent in the box itself
-               int x = event.m_x;
-               int y = event.m_y;
-               int xx1 = child->m_x;
-               int yy1 = child->m_y;
-               int xx2 = child->m_x + child->m_width;
-               int yy2 = child->m_x + child->m_height;
-               
-               // left
-               if (((x >= xx1) && (x <= xx1+10) && (y >= yy1) && (y <= yy2)) ||
-               // right
-                   ((x >= xx2-10) && (x <= xx2) && (y >= yy1) && (y <= yy2)) ||
-               // top
-                   ((x >= xx1) && (x <= xx2) && (y >= yy1) && (y <= yy1+10)) ||
-               // bottom
-                   ((x >= xx1) && (x <= xx2) && (y >= yy2-1) && (y <= yy2)))
-               {
+
+            if (child->m_isStaticBox)
+            {
+                // wxStaticBox is transparent in the box itself
+                int x = event.m_x;
+                int y = event.m_y;
+                int xx1 = child->m_x;
+                int yy1 = child->m_y;
+                int xx2 = child->m_x + child->m_width;
+                int yy2 = child->m_x + child->m_height;
+
+                // left
+                if (((x >= xx1) && (x <= xx1+10) && (y >= yy1) && (y <= yy2)) ||
+                // right
+                    ((x >= xx2-10) && (x <= xx2) && (y >= yy1) && (y <= yy2)) ||
+                // top
+                    ((x >= xx1) && (x <= xx2) && (y >= yy1) && (y <= yy1+10)) ||
+                // bottom
+                    ((x >= xx1) && (x <= xx2) && (y >= yy2-1) && (y <= yy2)))
+                {
                     win = child;
                     event.m_x -= child->m_x;
                     event.m_y -= child->m_y;
                     break;
-               }
-                   
-           }
-           else
-           {
+                }
+
+            }
+            else
+            {
                 if ((child->m_wxwindow == (GtkWidget*) NULL) &&
-                   (child->m_x <= event.m_x) &&
+                    (child->m_x <= event.m_x) &&
                     (child->m_y <= event.m_y) &&
                     (child->m_x+child->m_width  >= event.m_x) &&
                     (child->m_y+child->m_height >= event.m_y))
@@ -627,12 +627,12 @@ static gint gtk_window_button_press_callback( GtkWidget *widget, GdkEventButton
                     event.m_x -= child->m_x;
                     event.m_y -= child->m_y;
                     break;
-               }
+                }
             }
             node = node->Next();
         }
     }
-    
+
     wxPoint pt(win->GetClientAreaOrigin());
     event.m_x -= pt.x;
     event.m_y -= pt.y;
@@ -696,37 +696,37 @@ static gint gtk_window_button_release_callback( GtkWidget *widget, GdkEventButto
         while (node)
         {
             wxWindow *child = (wxWindow*)node->Data();
-           
-           if (child->m_isStaticBox)
-           {
-               // wxStaticBox is transparent in the box itself
-               int x = event.m_x;
-               int y = event.m_y;
-               int xx1 = child->m_x;
-               int yy1 = child->m_y;
-               int xx2 = child->m_x + child->m_width;
-               int yy2 = child->m_x + child->m_height;
-               
-               // left
-               if (((x >= xx1) && (x <= xx1+10) && (y >= yy1) && (y <= yy2)) ||
-               // right
-                   ((x >= xx2-10) && (x <= xx2) && (y >= yy1) && (y <= yy2)) ||
-               // top
-                   ((x >= xx1) && (x <= xx2) && (y >= yy1) && (y <= yy1+10)) ||
-               // bottom
-                   ((x >= xx1) && (x <= xx2) && (y >= yy2-1) && (y <= yy2)))
-               {
+
+            if (child->m_isStaticBox)
+            {
+                // wxStaticBox is transparent in the box itself
+                int x = event.m_x;
+                int y = event.m_y;
+                int xx1 = child->m_x;
+                int yy1 = child->m_y;
+                int xx2 = child->m_x + child->m_width;
+                int yy2 = child->m_x + child->m_height;
+
+                // left
+                if (((x >= xx1) && (x <= xx1+10) && (y >= yy1) && (y <= yy2)) ||
+                // right
+                    ((x >= xx2-10) && (x <= xx2) && (y >= yy1) && (y <= yy2)) ||
+                // top
+                    ((x >= xx1) && (x <= xx2) && (y >= yy1) && (y <= yy1+10)) ||
+                // bottom
+                    ((x >= xx1) && (x <= xx2) && (y >= yy2-1) && (y <= yy2)))
+                {
                     win = child;
                     event.m_x -= child->m_x;
                     event.m_y -= child->m_y;
                     break;
-               }
-                   
-           }
-           else
-           {
+                }
+
+            }
+            else
+            {
                 if ((child->m_wxwindow == (GtkWidget*) NULL) &&
-                   (child->m_x <= event.m_x) &&
+                    (child->m_x <= event.m_x) &&
                     (child->m_y <= event.m_y) &&
                     (child->m_x+child->m_width  >= event.m_x) &&
                     (child->m_y+child->m_height >= event.m_y))
@@ -735,7 +735,7 @@ static gint gtk_window_button_release_callback( GtkWidget *widget, GdkEventButto
                     event.m_x -= child->m_x;
                     event.m_y -= child->m_y;
                     break;
-               }
+                }
             }
             node = node->Next();
         }
@@ -759,7 +759,7 @@ static gint gtk_window_button_release_callback( GtkWidget *widget, GdkEventButto
 
 static gint gtk_window_motion_notify_callback( GtkWidget *widget, GdkEventMotion *gdk_event, wxWindow *win )
 {
-    if (gdk_event->is_hint) 
+    if (gdk_event->is_hint)
     {
        int x = 0;
        int y = 0;
@@ -769,7 +769,7 @@ static gint gtk_window_motion_notify_callback( GtkWidget *widget, GdkEventMotion
        gdk_event->y = y;
        gdk_event->state = state;
     }
-    
+
     if (!win->IsOwnGtkWindow( gdk_event->window )) return TRUE;
 
     if (g_blockEventsOnDrag) return TRUE;
@@ -805,37 +805,37 @@ static gint gtk_window_motion_notify_callback( GtkWidget *widget, GdkEventMotion
         while (node)
         {
             wxWindow *child = (wxWindow*)node->Data();
-           
-           if (child->m_isStaticBox)
-           {
-               // wxStaticBox is transparent in the box itself
-               int x = event.m_x;
-               int y = event.m_y;
-               int xx1 = child->m_x;
-               int yy1 = child->m_y;
-               int xx2 = child->m_x + child->m_width;
-               int yy2 = child->m_x + child->m_height;
-               
-               // left
-               if (((x >= xx1) && (x <= xx1+10) && (y >= yy1) && (y <= yy2)) ||
-               // right
-                   ((x >= xx2-10) && (x <= xx2) && (y >= yy1) && (y <= yy2)) ||
-               // top
-                   ((x >= xx1) && (x <= xx2) && (y >= yy1) && (y <= yy1+10)) ||
-               // bottom
-                   ((x >= xx1) && (x <= xx2) && (y >= yy2-1) && (y <= yy2)))
-               {
+
+            if (child->m_isStaticBox)
+            {
+                // wxStaticBox is transparent in the box itself
+                int x = event.m_x;
+                int y = event.m_y;
+                int xx1 = child->m_x;
+                int yy1 = child->m_y;
+                int xx2 = child->m_x + child->m_width;
+                int yy2 = child->m_x + child->m_height;
+
+                // left
+                if (((x >= xx1) && (x <= xx1+10) && (y >= yy1) && (y <= yy2)) ||
+                // right
+                    ((x >= xx2-10) && (x <= xx2) && (y >= yy1) && (y <= yy2)) ||
+                // top
+                    ((x >= xx1) && (x <= xx2) && (y >= yy1) && (y <= yy1+10)) ||
+                // bottom
+                    ((x >= xx1) && (x <= xx2) && (y >= yy2-1) && (y <= yy2)))
+                {
                     win = child;
                     event.m_x -= child->m_x;
                     event.m_y -= child->m_y;
                     break;
-               }
-                   
-           }
-           else
-           {
+                }
+
+            }
+            else
+            {
                 if ((child->m_wxwindow == (GtkWidget*) NULL) &&
-                   (child->m_x <= event.m_x) &&
+                    (child->m_x <= event.m_x) &&
                     (child->m_y <= event.m_y) &&
                     (child->m_x+child->m_width  >= event.m_x) &&
                     (child->m_y+child->m_height >= event.m_y))
@@ -844,7 +844,7 @@ static gint gtk_window_motion_notify_callback( GtkWidget *widget, GdkEventMotion
                     event.m_x -= child->m_x;
                     event.m_y -= child->m_y;
                     break;
-               }
+                }
             }
             node = node->Next();
         }
@@ -869,9 +869,9 @@ static gint gtk_window_motion_notify_callback( GtkWidget *widget, GdkEventMotion
 static gint gtk_window_focus_in_callback( GtkWidget *widget, GdkEvent *WXUNUSED(event), wxWindow *win )
 {
     if (g_blockEventsOnDrag) return TRUE;
-    
+
     g_focusWindow = win;
-    
+
     if (win->m_wxwindow)
     {
         if (GTK_WIDGET_CAN_FOCUS(win->m_wxwindow))
@@ -961,13 +961,13 @@ static gint gtk_window_enter_callback( GtkWidget *widget, GdkEventCrossing *gdk_
 
     wxMouseEvent event( wxEVT_ENTER_WINDOW );
     event.SetEventObject( win );
-    
+
     int x = 0;
     int y = 0;
     GdkModifierType state = (GdkModifierType)0;
-    
+
     gdk_window_get_pointer( widget->window, &x, &y, &state );
-    
+
     event.m_shiftDown = (state & GDK_SHIFT_MASK);
     event.m_controlDown = (state & GDK_CONTROL_MASK);
     event.m_altDown = (state & GDK_MOD1_MASK);
@@ -978,7 +978,7 @@ static gint gtk_window_enter_callback( GtkWidget *widget, GdkEventCrossing *gdk_
 
     event.m_x = (long)x;
     event.m_y = (long)y;
-    
+
     wxPoint pt(win->GetClientAreaOrigin());
     event.m_x -= pt.x;
     event.m_y -= pt.y;
@@ -1017,9 +1017,9 @@ static gint gtk_window_leave_callback( GtkWidget *widget, GdkEventCrossing *gdk_
     int x = 0;
     int y = 0;
     GdkModifierType state = (GdkModifierType)0;
-    
+
     gdk_window_get_pointer( widget->window, &x, &y, &state );
-    
+
     event.m_shiftDown = (state & GDK_SHIFT_MASK);
     event.m_controlDown = (state & GDK_CONTROL_MASK);
     event.m_altDown = (state & GDK_MOD1_MASK);
@@ -1030,7 +1030,7 @@ static gint gtk_window_leave_callback( GtkWidget *widget, GdkEventCrossing *gdk_
 
     event.m_x = (long)x;
     event.m_y = (long)y;
-    
+
     wxPoint pt(win->GetClientAreaOrigin());
     event.m_x -= pt.x;
     event.m_y -= pt.y;
@@ -1191,7 +1191,7 @@ static void gtk_window_hscroll_change_callback( GtkWidget *WXUNUSED(widget), wxW
 
 static gint gtk_scrollbar_button_press_callback( GtkRange *WXUNUSED(widget),
                                                  GdkEventButton *WXUNUSED(gdk_event),
-                                                wxWindow *win )
+                                                 wxWindow *win )
 {
 //  don't test here as we can release the mouse while being over
 //  a different window then the slider
@@ -1210,7 +1210,7 @@ static gint gtk_scrollbar_button_press_callback( GtkRange *WXUNUSED(widget),
 
 static gint gtk_scrollbar_button_release_callback( GtkRange *widget,
                                                    GdkEventButton *WXUNUSED(gdk_event),
-                                                  wxWindow *win )
+                                                   wxWindow *win )
 {
 
 //  don't test here as we can release the mouse while being over
@@ -1246,23 +1246,23 @@ static void wxInsertChildInWindow( wxWindow* parent, wxWindow* child )
 {
     gtk_myfixed_put( GTK_MYFIXED(parent->m_wxwindow),
                      GTK_WIDGET(child->m_widget),
-                    child->m_x,
-                    child->m_y );
+                       child->m_x,
+                     child->m_y );
 
     gtk_widget_set_usize( GTK_WIDGET(child->m_widget),
                           child->m_width,
-                         child->m_height );
-                         
+                          child->m_height );
+
     if (wxIS_KIND_OF(parent,wxFrame))
     {
         parent->m_sizeSet = FALSE;
     }
-    
+
     if (parent->m_windowStyle & wxTAB_TRAVERSAL)
     {
         /* we now allow a window to get the focus as long as it
-          doesn't have any children. */
-        GTK_WIDGET_UNSET_FLAGS( parent->m_wxwindow, GTK_CAN_FOCUS );  
+           doesn't have any children. */
+        GTK_WIDGET_UNSET_FLAGS( parent->m_wxwindow, GTK_CAN_FOCUS );
     }
 }
 
@@ -1347,11 +1347,13 @@ wxWindow::wxWindow()
 
     m_clientObject = (wxClientData*) NULL;
     m_clientData = NULL;
-    
+
     m_isStaticBox = FALSE;
     m_acceptsFocus = FALSE;
-    
+
+#if wxUSE_TOOLTIPS
     m_toolTip = (wxToolTip*) NULL;
+#endif // wxUSE_TOOLTIPS
 }
 
 wxWindow::wxWindow( wxWindow *parent, wxWindowID id,
@@ -1374,7 +1376,7 @@ bool wxWindow::Create( wxWindow *parent, wxWindowID id,
 
     m_widget = gtk_scrolled_window_new( (GtkAdjustment *) NULL, (GtkAdjustment *) NULL );
     GTK_WIDGET_UNSET_FLAGS( m_widget, GTK_CAN_FOCUS );
-    
+
 #ifdef __WXDEBUG__
     debug_focus_in( m_widget, "wxWindow::m_widget", name );
 #endif
@@ -1431,8 +1433,8 @@ bool wxWindow::Create( wxWindow *parent, wxWindowID id,
     if (m_windowStyle & wxTAB_TRAVERSAL)
     {
         /* we now allow a window to get the focus as long as it
-          doesn't have any children. */
-        GTK_WIDGET_SET_FLAGS( m_wxwindow, GTK_CAN_FOCUS );  
+           doesn't have any children. */
+        GTK_WIDGET_SET_FLAGS( m_wxwindow, GTK_CAN_FOCUS );
         m_acceptsFocus = FALSE;
     }
     else
@@ -1509,10 +1511,12 @@ wxWindow::~wxWindow()
     m_hasVMT = FALSE;
 
 #if wxUSE_DRAG_AND_DROP
-    if (m_dropTarget) delete m_dropTarget;
+    wxDELETE(m_dropTarget);
 #endif
 
-    if (m_toolTip) delete m_toolTip;
+#if wxUSE_TOOLTIPS
+    wxDELETE(m_toolTip);
+#endif // wxUSE_TOOLTIPS
 
     if (m_parent) m_parent->RemoveChild( this );
     if (m_widget) Show( FALSE );
@@ -1641,9 +1645,12 @@ void wxWindow::PreCreation( wxWindow *parent, wxWindowID id,
 
     m_clientObject = (wxClientData*)NULL;
     m_clientData = NULL;
-    
+
     m_isStaticBox = FALSE;
+
+#if wxUSE_TOOLTIPS
     m_toolTip = (wxToolTip*) NULL;
+#endif // wxUSE_TOOLTIPS
 }
 
 void wxWindow::PostCreation()
@@ -2089,7 +2096,7 @@ void wxWindow::Fit()
 
         node = node->Next();
     }
-    
+
     SetClientSize(maxX + 7, maxY + 14);
 }
 
@@ -2116,9 +2123,9 @@ bool wxWindow::Show( bool show )
         gtk_widget_show( m_widget );
     else
         gtk_widget_hide( m_widget );
-       
+
     m_isShown = show;
-    
+
     return TRUE;
 }
 
@@ -2127,7 +2134,7 @@ void wxWindow::Enable( bool enable )
     wxCHECK_RET( (m_widget != NULL), "invalid window" );
 
     m_isEnabled = enable;
-    
+
     gtk_widget_set_sensitive( m_widget, enable );
     if (m_wxwindow) gtk_widget_set_sensitive( m_wxwindow, enable );
 }
@@ -2139,7 +2146,7 @@ int wxWindow::GetCharHeight() const
     wxCHECK_MSG( m_font.Ok(), 12, "invalid font" );
 
     GdkFont *font = m_font.GetInternalFont( 1.0 );
-    
+
     return font->ascent + font->descent;
 }
 
@@ -2150,7 +2157,7 @@ int wxWindow::GetCharWidth() const
     wxCHECK_MSG( m_font.Ok(), 8, "invalid font" );
 
     GdkFont *font = m_font.GetInternalFont( 1.0 );
-    
+
     return gdk_string_width( font, "H" );
 }
 
@@ -2172,7 +2179,7 @@ void wxWindow::GetTextExtent( const wxString& string, int *x, int *y,
 void wxWindow::MakeModal( bool modal )
 {
     return;
-    
+
     // Disable all other windows
     if (this->IsKindOf(CLASSINFO(wxDialog)) || this->IsKindOf(CLASSINFO(wxFrame)))
     {
@@ -2190,7 +2197,7 @@ void wxWindow::MakeModal( bool modal )
 void wxWindow::OnKeyDown( wxKeyEvent &event )
 {
     event.SetEventType( wxEVT_CHAR );
-    
+
     if (!GetEventHandler()->ProcessEvent( event ))
     {
         event.Skip();
@@ -2200,7 +2207,7 @@ void wxWindow::OnKeyDown( wxKeyEvent &event )
 void wxWindow::SetFocus()
 {
     wxCHECK_RET( (m_widget != NULL), "invalid window" );
-    
+
     GtkWidget *connect_widget = GetConnectWidget();
     if (connect_widget)
     {
@@ -2208,13 +2215,13 @@ void wxWindow::SetFocus()
         {
             gtk_widget_grab_focus (connect_widget);
         }
-       else if (GTK_IS_CONTAINER(connect_widget))
-       {
-           gtk_container_focus( GTK_CONTAINER(connect_widget), GTK_DIR_TAB_FORWARD );
-       }
-       else
-       {
-       }
+        else if (GTK_IS_CONTAINER(connect_widget))
+        {
+            gtk_container_focus( GTK_CONTAINER(connect_widget), GTK_DIR_TAB_FORWARD );
+        }
+        else
+        {
+        }
     }
 }
 
@@ -2244,7 +2251,7 @@ void wxWindow::AddChild( wxWindow *child )
 wxWindow *wxWindow::ReParent( wxWindow *newParent )
 {
     wxCHECK_MSG( (m_widget != NULL), (wxWindow*) NULL, "invalid window" );
-    
+
     wxWindow *oldParent = GetParent();
 
     if (oldParent) oldParent->RemoveChild( this );
@@ -2418,12 +2425,12 @@ void wxWindow::Refresh( bool eraseBackground, const wxRect *rect )
             Clear();
         }
     }
-    
+
     if (!rect)
     {
         if (m_wxwindow)
             gtk_widget_draw( m_wxwindow, (GdkRectangle*) NULL );
-       else
+        else
             gtk_widget_draw( m_widget, (GdkRectangle*) NULL );
     }
     else
@@ -2473,6 +2480,7 @@ void wxWindow::Clear()
     if (m_wxwindow && m_wxwindow->window) gdk_window_clear( m_wxwindow->window );
 }
 
+#if wxUSE_TOOLTIPS
 void wxWindow::SetToolTip( const wxString &tip )
 {
     if (m_toolTip)
@@ -2481,15 +2489,11 @@ void wxWindow::SetToolTip( const wxString &tip )
     }
     else
     {
-        m_toolTip = new wxToolTip( tip );
-       m_toolTip->Apply( this );
-    }
-    
-    if (tip.IsEmpty())
-    {
-        delete m_toolTip;
-       m_toolTip = (wxToolTip*) NULL;
+        SetToolTip( new wxToolTip( tip ) );
     }
+
+    // setting empty tooltip text does not remove the tooltip any more for
+    // wxMSW compatibility - use SetToolTip((wxToolTip *)NULL) for this
 }
 
 void wxWindow::SetToolTip( wxToolTip *tip )
@@ -2499,21 +2503,18 @@ void wxWindow::SetToolTip( wxToolTip *tip )
         m_toolTip->SetTip( (char*) NULL );
         delete m_toolTip;
     }
-    
+
     m_toolTip = tip;
-    
-    if (m_toolTip) m_toolTip->Apply( this );
+
+    if (m_toolTip)
+        m_toolTip->Apply( this );
 }
 
 void wxWindow::ApplyToolTip( GtkTooltips *tips, const char *tip )
 {
     gtk_tooltips_set_tip( tips, GetConnectWidget(), tip, (gchar*) NULL );
 }
-
-wxToolTip* wxWindow::GetToolTip()
-{
-    return m_toolTip;
-}
+#endif // wxUSE_TOOLTIPS
 
 wxColour wxWindow::GetBackgroundColour() const
 {
@@ -2538,14 +2539,14 @@ void wxWindow::SetBackgroundColour( const wxColour &colour )
     }
 
     wxColour sysbg = wxSystemSettings::GetSystemColour( wxSYS_COLOUR_BTNFACE );
-    if (sysbg.Red() == colour.Red() && 
-        sysbg.Green() == colour.Green() && 
+    if (sysbg.Red() == colour.Red() &&
+        sysbg.Green() == colour.Green() &&
         sysbg.Blue() == colour.Blue())
     {
         m_backgroundColour = wxNullColour;
         ApplyWidgetStyle();
-       m_backgroundColour = sysbg;
-    } 
+        m_backgroundColour = sysbg;
+    }
     else
     {
         ApplyWidgetStyle();
@@ -2567,14 +2568,14 @@ void wxWindow::SetForegroundColour( const wxColour &colour )
     if (!m_foregroundColour.Ok()) return;
 
     wxColour sysbg = wxSystemSettings::GetSystemColour( wxSYS_COLOUR_BTNFACE );
-    if (sysbg.Red() == colour.Red() && 
-        sysbg.Green() == colour.Green() && 
+    if (sysbg.Red() == colour.Red() &&
+        sysbg.Green() == colour.Green() &&
         sysbg.Blue() == colour.Blue())
     {
         m_backgroundColour = wxNullColour;
         ApplyWidgetStyle();
-       m_backgroundColour = sysbg;
-    } 
+        m_backgroundColour = sysbg;
+    }
     else
     {
         ApplyWidgetStyle();
@@ -2634,9 +2635,9 @@ bool wxWindow::Validate()
     {
         wxWindow *child = (wxWindow *)node->Data();
         if (child->GetValidator() && /* child->GetValidator()->Ok() && */ !child->GetValidator()->Validate(this))
-        { 
-           return FALSE; 
-       }
+        {
+            return FALSE;
+        }
         node = node->Next();
     }
     return TRUE;
@@ -2670,9 +2671,9 @@ bool wxWindow::TransferDataFromWindow()
     {
         wxWindow *child = (wxWindow *)node->Data();
         if ( child->GetValidator() && /* child->GetValidator()->Ok() && */ !child->GetValidator()->TransferFromWindow() )
-        { 
-           return FALSE; 
-       }
+        {
+            return FALSE;
+        }
         node = node->Next();
     }
     return TRUE;
@@ -2706,8 +2707,8 @@ static void SetInvokingWindow( wxMenu *menu, wxWindow *win )
         wxMenuItem *menuitem = (wxMenuItem*)node->Data();
         if (menuitem->IsSubMenu())
         {
-           SetInvokingWindow( menuitem->GetSubMenu(), win );
-       }
+            SetInvokingWindow( menuitem->GetSubMenu(), win );
+        }
         node = node->Next();
     }
 }
@@ -2729,10 +2730,10 @@ bool wxWindow::PopupMenu( wxMenu *menu, int x, int y )
     wxCHECK_MSG( menu != NULL, FALSE, "invalid popup-menu" );
 
     SetInvokingWindow( menu, this );
-    
+
     gs_pop_x = x;
     gs_pop_y = y;
-    
+
     gtk_menu_popup(
                   GTK_MENU(menu->m_menu),
                   (GtkWidget *) NULL,          // parent menu shell
@@ -2792,14 +2793,14 @@ void wxWindow::SetFont( const wxFont &font )
         m_font = *wxSWISS_FONT;
 
     wxColour sysbg = wxSystemSettings::GetSystemColour( wxSYS_COLOUR_BTNFACE );
-    if (sysbg.Red() == m_backgroundColour.Red() && 
-        sysbg.Green() == m_backgroundColour.Green() && 
+    if (sysbg.Red() == m_backgroundColour.Red() &&
+        sysbg.Green() == m_backgroundColour.Green() &&
         sysbg.Blue() == m_backgroundColour.Blue())
     {
         m_backgroundColour = wxNullColour;
         ApplyWidgetStyle();
-       m_backgroundColour = sysbg;
-    } 
+        m_backgroundColour = sysbg;
+    }
     else
     {
         ApplyWidgetStyle();
@@ -2829,9 +2830,9 @@ void wxWindow::CaptureMouse()
                          (GDK_BUTTON_PRESS_MASK |
                           GDK_BUTTON_RELEASE_MASK |
                           GDK_POINTER_MOTION_MASK),
-                      (GdkWindow *) NULL, 
-                     (GdkCursor *) NULL, 
-                     GDK_CURRENT_TIME );
+                      (GdkWindow *) NULL,
+                      (GdkCursor *) NULL,
+                      GDK_CURRENT_TIME );
     g_capturing = TRUE;
 }
 
@@ -3000,7 +3001,7 @@ void wxWindow::SetScrollPos( int orient, int pos, bool WXUNUSED(refresh) )
         if (fpos > m_vAdjust->upper - m_vAdjust->page_size) fpos = m_vAdjust->upper - m_vAdjust->page_size;
         if (fpos < 0.0) fpos = 0.0;
         m_oldVerticalPos = fpos;
-    
+
         if (fabs(fpos-m_vAdjust->value) < 0.2) return;
         m_vAdjust->value = fpos;
     }
@@ -3407,9 +3408,9 @@ void wxWindow::SetConstraintSizes(bool recurse)
     winName = "unnamed";
   else
     winName = GetName();
-    wxLogDebug( "Constraint(s) not satisfied for window of type %s, name %s:\n", 
-                (const char *)windowClass, 
-               (const char *)winName);
+    wxLogDebug( "Constraint(s) not satisfied for window of type %s, name %s:\n",
+                (const char *)windowClass,
+                (const char *)winName);
     if (!constr->left.GetDone()) wxLogDebug( "  unsatisfied 'left' constraint.\n" );
     if (!constr->right.GetDone()) wxLogDebug( "  unsatisfied 'right' constraint.\n" );
     if (!constr->width.GetDone()) wxLogDebug( "  unsatisfied 'width' constraint.\n" );