From: Vadim Zeitlin Date: Mon, 1 Feb 1999 14:40:53 +0000 (+0000) Subject: wxToolTip modifications: wxUSE_TOOLTIPS setting (default: on) added and X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/ff8bfdbbb14af4cd77de9d3534b1cd4f7a033137 wxToolTip modifications: wxUSE_TOOLTIPS setting (default: on) added and 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 --- diff --git a/configure b/configure index 7e4dd540fd..d61bfc6624 100755 --- 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 <&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 < 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 < 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 < Autoconf TIOCGETP @@ -990,7 +992,7 @@ rm -f conftest* if test $ac_cv_prog_gcc_traditional = no; then cat > conftest.$ac_ext < 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 <&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 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 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 <&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 <&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 <&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 <&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 <&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 <&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 <&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 <&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 <&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 <&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 <&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 <&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 <&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 <&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 < #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 <&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 <&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 < #include @@ -2390,7 +2392,7 @@ else #include 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 @@ -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 @@ -2446,7 +2448,7 @@ if test "$cross_compiling" = yes; then : else cat > conftest.$ac_ext < #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 < #include @@ -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 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 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 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 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 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 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 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 <&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 <&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 <&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 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 @@ -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 <&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 @@ -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 < #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 < #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 < #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 < #include @@ -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 < #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 @@ -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 < #include @@ -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 < #include @@ -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 < #include @@ -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 < #include @@ -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 < #include @@ -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 < #include @@ -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 < #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 < #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 <&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 <&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 <&2; exit 1; } else cat > conftest.$ac_ext <&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 <&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 < #include @@ -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 < #include @@ -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 <&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 < 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 < 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 < 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 <&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 <&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 <&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 <&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 <&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 <&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 < @@ -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 <&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 <&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 < @@ -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 <> confdefs.h <&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 <&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 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 <&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 <&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 diff --git a/configure.in b/configure.in index c40297ad14..9b03996b5d 100644 --- a/configure.in +++ b/configure.in @@ -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 diff --git a/include/wx/gtk/checkbox.h b/include/wx/gtk/checkbox.h index f883cf78c9..3737b9eb95 100644 --- a/include/wx/gtk/checkbox.h +++ b/include/wx/gtk/checkbox.h @@ -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; }; diff --git a/include/wx/gtk/checklst.h b/include/wx/gtk/checklst.h index 4331972d9f..41417e2af4 100644 --- a/include/wx/gtk/checklst.h +++ b/include/wx/gtk/checklst.h @@ -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__ diff --git a/include/wx/gtk/listbox.h b/include/wx/gtk/listbox.h index 41b5e1b229..2a5f428da1 100644 --- a/include/wx/gtk/listbox.h +++ b/include/wx/gtk/listbox.h @@ -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__ diff --git a/include/wx/gtk/tooltip.h b/include/wx/gtk/tooltip.h index 299f0945b2..eed2386111 100644 --- a/include/wx/gtk/tooltip.h +++ b/include/wx/gtk/tooltip.h @@ -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__ diff --git a/include/wx/gtk/window.h b/include/wx/gtk/window.h index 4d8ae64bc5..1f1985b579 100644 --- a/include/wx/gtk/window.h +++ b/include/wx/gtk/window.h @@ -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; diff --git a/include/wx/gtk1/checkbox.h b/include/wx/gtk1/checkbox.h index f883cf78c9..3737b9eb95 100644 --- a/include/wx/gtk1/checkbox.h +++ b/include/wx/gtk1/checkbox.h @@ -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; }; diff --git a/include/wx/gtk1/checklst.h b/include/wx/gtk1/checklst.h index 4331972d9f..41417e2af4 100644 --- a/include/wx/gtk1/checklst.h +++ b/include/wx/gtk1/checklst.h @@ -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__ diff --git a/include/wx/gtk1/listbox.h b/include/wx/gtk1/listbox.h index 41b5e1b229..2a5f428da1 100644 --- a/include/wx/gtk1/listbox.h +++ b/include/wx/gtk1/listbox.h @@ -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__ diff --git a/include/wx/gtk1/tooltip.h b/include/wx/gtk1/tooltip.h index 299f0945b2..eed2386111 100644 --- a/include/wx/gtk1/tooltip.h +++ b/include/wx/gtk1/tooltip.h @@ -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__ diff --git a/include/wx/gtk1/window.h b/include/wx/gtk1/window.h index 4d8ae64bc5..1f1985b579 100644 --- a/include/wx/gtk1/window.h +++ b/include/wx/gtk1/window.h @@ -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; diff --git a/setup/setup.hin b/setup/setup.hin index eed96dd6e1..90d10cd77f 100644 --- a/setup/setup.hin +++ b/setup/setup.hin @@ -164,6 +164,10 @@ * Use clipboard */ #define wxUSE_CLIPBOARD 0 +/* + * Use tooltips + */ +#define wxUSE_TOOLTIPS 0 /* * Use dnd */ diff --git a/src/gtk/checkbox.cpp b/src/gtk/checkbox.cpp index 85425761d0..c3fa1a8749 100644 --- a/src/gtk/checkbox.cpp +++ b/src/gtk/checkbox.cpp @@ -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 ); } diff --git a/src/gtk/checklst.cpp b/src/gtk/checklst.cpp index 82fb96dc1a..3eaf62c54b 100644 --- a/src/gtk/checklst.cpp +++ b/src/gtk/checklst.cpp @@ -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; } diff --git a/src/gtk/listbox.cpp b/src/gtk/listbox.cpp index db10f19582..9571b5e29b 100644 --- a/src/gtk/listbox.cpp +++ b/src/gtk/listbox.cpp @@ -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; } } diff --git a/src/gtk/tooltip.cpp b/src/gtk/tooltip.cpp index 44759110bf..dde56c65ee 100644 --- a/src/gtk/tooltip.cpp +++ b/src/gtk/tooltip.cpp @@ -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 ); } diff --git a/src/gtk/window.cpp b/src/gtk/window.cpp index 69d0c5f2a9..b76cdfa686 100644 --- a/src/gtk/window.cpp +++ b/src/gtk/window.cpp @@ -132,14 +132,14 @@ #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" ); diff --git a/src/gtk1/checkbox.cpp b/src/gtk1/checkbox.cpp index 85425761d0..c3fa1a8749 100644 --- a/src/gtk1/checkbox.cpp +++ b/src/gtk1/checkbox.cpp @@ -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 ); } diff --git a/src/gtk1/checklst.cpp b/src/gtk1/checklst.cpp index 82fb96dc1a..3eaf62c54b 100644 --- a/src/gtk1/checklst.cpp +++ b/src/gtk1/checklst.cpp @@ -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; } diff --git a/src/gtk1/listbox.cpp b/src/gtk1/listbox.cpp index db10f19582..9571b5e29b 100644 --- a/src/gtk1/listbox.cpp +++ b/src/gtk1/listbox.cpp @@ -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; } } diff --git a/src/gtk1/tooltip.cpp b/src/gtk1/tooltip.cpp index 44759110bf..dde56c65ee 100644 --- a/src/gtk1/tooltip.cpp +++ b/src/gtk1/tooltip.cpp @@ -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 ); } diff --git a/src/gtk1/window.cpp b/src/gtk1/window.cpp index 69d0c5f2a9..b76cdfa686 100644 --- a/src/gtk1/window.cpp +++ b/src/gtk1/window.cpp @@ -132,14 +132,14 @@ #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" );