second merge of the 2.2 branch (RL)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@7973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Bryan Petty 2000-08-08 06:11:51 +00:00
parent 8fb3bfe20f
commit 3ca6a5f046
138 changed files with 4941 additions and 2278 deletions

17
debian/control.in vendored
View file

@ -1,7 +1,7 @@
Source: wxwindows=V
Section: libs
Priority: optional
Build-Depends: debhelper, flex, bison, libgtk1.2-dev, python-dev (>=1.5), zlib1g-dev, libjpeg62-dev, libpng2-dev, libtiff3g-dev, mesag-dev
Build-Depends: debhelper, flex, bison, libgtk1.2-dev, python-dev (>=1.5.2), zlib1g-dev, libjpeg62-dev, libpng2-dev, libtiff3g-dev, mesag-dev
Maintainer: Ron Lee <ron@debian.org>
Standards-Version: 3.1.1
@ -107,7 +107,7 @@ Description: wxWindows Cross-platform C++ GUI toolkit (GTK+ development)
Package: libwxgtk=V-python
Architecture: any
Section: interpreters
Depends: libwxgtk=V (= ${Source-Version}), python-base (>=1.5), ${shlibs:Depends}
Depends: libwxgtk=V (= ${Source-Version}), python-base (>=1.5.2), ${shlibs:Depends}
Suggests: wxwin=V-doc
Description: wxWindows Cross-platform C++ GUI toolkit (Python binding)
wxWindows is a class library for C++ providing GUI (Graphical User
@ -157,6 +157,19 @@ Description: wxWindows Cross-platform C++ GUI toolkit (header files)
This package provides the common header files required to build applications
using the wxWindows toolkit.
Package: wxwin=V-i18n
Architecture: all
Section: libs
Conflicts: wxwin-i18n
Replaces: wxwin-i18n
Provides: wxwin-i18n
Description: wxWindows Cross-platform C++ GUI toolkit (i18n support)
wxWindows is a class library for C++ providing GUI (Graphical User
Interface) and other facilities on more than one platform. Version =V
currently supports subsets of GTK+, Motif, and MS Windows.
.
This package provides the i18n message catalogs for wxWindows.
Package: wxwin=V-doc
Architecture: all
Section: doc

28
debian/rules vendored
View file

@ -23,6 +23,7 @@ package_gtk_py=libwxgtk$(release)-python
package_gtk_contrib=libwxgtk$(release)-contrib
package_gtk_contrib_dev=libwxgtk$(release)-contrib-dev
package_headers=wxwin$(release)-headers
package_i18n=wxwin$(release)-i18n
package_doc=wxwin$(release)-doc
package_examples=wxwin$(release)-examples
@ -36,6 +37,7 @@ objdir_gtk_debug=objs_gtk_d
objdir_doc_cruft=objs_doc_con
objdir_doc=docs/wxWindows-manual.html
objdir_examples=docs/examples
objdir_i18n=locale
objdirs=$(objdir_wxbase_shared) $(objdir_wxbase_static) $(objdir_wxbase_debug) \
$(objdir_gtk_shared) $(objdir_gtk_static) $(objdir_gtk_debug) \
$(objdir_doc) $(objdir_examples)
@ -44,12 +46,13 @@ build_stamps=build-wxbase-shared-stamp build-wxbase-static-stamp \
build-wxbase-debug-stamp build-gtk-shared-stamp \
build-gtk-static-stamp build-gtk-debug-stamp \
build-contrib-shared-stamp build-contrib-static-stamp \
build-gtk-python-stamp build-examples-stamp build-doc-stamp
build-gtk-python-stamp build-examples-stamp build-doc-stamp \
build-i18n-stamp
install_all=install-wxbase-lib install-wxbase-dev install-wxbase-dbg \
install-gtk-lib install-gtk-dev install-gtk-dbg \
install-gtk-contrib install-gtk-contrib-dev install-gtk-py \
install-headers install-doc install-examples
install-headers install-i18n install-doc install-examples
wxconfig:=$(shell pwd)/$(objdir_gtk_shared)/wx-config \
--prefix=$(shell pwd) \
@ -106,6 +109,10 @@ control-files-stamp: debian/control debian/wxwin-doc.doc-base
echo "generating control file $(package_headers).$$f"; \
cp debian/wxwin-headers.$$f debian/$(package_headers).$$f; \
done;
@for f in dirs docs files; do \
echo "generating control file $(package_i18n).$$f"; \
cp debian/wxwin-i18n.$$f debian/$(package_i18n).$$f; \
done;
@for f in dirs docs doc-base; do \
echo "generating control file $(package_doc).$$f"; \
cp debian/wxwin-doc.$$f debian/$(package_doc).$$f; \
@ -250,6 +257,12 @@ build-examples-stamp:
done;
touch $@
build-i18n-stamp: build-gtk-shared-stamp
dh_testdir
cd $(objdir_i18n) \
&& $(MAKE) allmo
touch $@
clean: debian/control
dh_testdir
dh_testroot
@ -266,6 +279,7 @@ clean: debian/control
rm -f debian/$(package_gtk_contrib).*
rm -f debian/$(package_gtk_contrib_dev).*
rm -f debian/$(package_headers).*
rm -f debian/$(package_i18n).*
rm -f debian/$(package_doc).*
rm -f debian/$(package_examples).*
@ -375,6 +389,14 @@ install-headers: install-gtk-lib
zlib.3 \
png.5
install-i18n: DH_OPTIONS=-p$(package_i18n)
install-i18n: build-i18n-stamp install-gtk-lib
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
dh_movefiles --sourcedir=debian/$(package_gtk_lib)
install-doc: DH_OPTIONS=-p$(package_doc)
install-doc: build-doc-stamp
dh_testdir
@ -461,5 +483,5 @@ binary-doc: control-files-stamp install-doc
binary-wxbase-dbg binary-doc install install-wxbase-lib \
install-wxbase-dev install-wxbase-dbg install-gtk-lib install-gtk-dev \
install-gtk-dbg install-gtk-contrib install-gtk-contrib-dev \
install-gtk-py install-headers install-doc install-examples
install-gtk-py install-headers install-i18n install-doc install-examples

2
debian/wxwin-i18n.dirs vendored Normal file
View file

@ -0,0 +1,2 @@
/usr/share/locale

2
debian/wxwin-i18n.docs vendored Normal file
View file

@ -0,0 +1,2 @@
docs/licence.txt

2
debian/wxwin-i18n.files vendored Normal file
View file

@ -0,0 +1,2 @@
/usr/share/locale/

15
distrib/msw/expdwild.bat Executable file
View file

@ -0,0 +1,15 @@
@echo off
rem Expands wildcards in response file (arg 1) into output file (arg 2)
rem Note: requires ls.exe from GNU-WIN32 distribution, renamed to ls2.exe.
rem Correction: this is too slow, so we're using the built in 'dir'.
set newname=%temp\temp.tmp
sed -e "s/\//\\/g" %1 > %newname
set len=%@LINES[%newname]
rem set len=%@DEC[%len]
do i = 0 to %len by 1
set line=%@LINE[%newname,%i]
if NOT "%line" == "" dir /FB %line >> %2
enddo

27
distrib/msw/filerepl.bat Executable file
View file

@ -0,0 +1,27 @@
@echo off
Rem Replace a string with another string in the given files.
Rem The first argument is the string to be replaced.
Rem The second argument is the replacement string.
Rem The third argument is a file listing the files to be processed.
set keyword=%1
set repl=%2
set files=%3
echo s/%keyword/%repl/g > script.tmp
call %wxwin\distrib\msw\expdwild.bat %3 list.tmp
set len=%@LINES[%files]
do i = 0 to %len by 1
set line=%@LINE[list.tmp,%i]
if "%line" == "**EOF**" enddo
rem echo Cmd: grep %keyword %line
grep %keyword %line > size.tmp
if "%@FILESIZE[size.tmp]" == "0" enddo
sed -f script.tmp %line > file.tmp
move file.tmp %line
enddo
erase script.tmp
erase list.tmp
erase size.tmp
:end

View file

@ -96,7 +96,7 @@ splash.cpp G
splitter.cpp G
statline.cpp G U,R,P
statusbr.cpp G
tabg.cpp G P
tabg.cpp G 16,P
numdlgg.cpp G
tbarsmpl.cpp G
textdlgg.cpp G

View file

@ -79,9 +79,6 @@ LIBTARGET=$(WXLIB)
DUMMYOBJ=$D\dummy.obj
!endif
# Please set these according to the settings in setup.h, so we can include
# the appropriate libraries in wx.lib
# This one overrides the others, to be consistent with the settings in setup.h
MINIMAL_WXWINDOWS_SETUP=0
@ -89,6 +86,9 @@ PERIPH_LIBS=
PERIPH_TARGET=
PERIPH_CLEAN_TARGET=
# Set to 0 if not using GLCanvas (only affects DLL build)
USE_GLCANVAS=1
# These are absolute paths, so that the compiler
# generates correct __FILE__ symbols for debugging.
# Otherwise you don't be able to double-click on a memory

View file

@ -80,8 +80,8 @@ RSC=rc.exe
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MT" /YX /FD /c
# ADD CPP /nologo /MT /W4 /Zi /O2 /I "$(wx)\include" /I "$(wx)\src\zlib" /D "NDEBUG" /D wxUSE_GUI=1 /D WIN95=1 /D "__WIN95__" /D "WIN32" /D "_WIN32" /D WINVER=0x400 /D "__WINDOWS__" /D "__WXMSW__" /D "__WIN32__" /D "_MT" /Yu"wx/wxprec.h" /FD /c
# ADD BASE CPP /nologo /MD /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MT" /YX /FD /c
# ADD CPP /nologo /MD /W4 /Zi /O2 /I "$(wx)\include" /I "$(wx)\src\zlib" /I "$(wx)\src\jpeg" /I "$(wx)\src\png" /I "$(wx)\src\tiff" /D "NDEBUG" /D wxUSE_GUI=1 /D WIN95=1 /D "__WIN95__" /D "WIN32" /D "_WIN32" /D WINVER=0x400 /D "__WINDOWS__" /D "__WXMSW__" /D "__WIN32__" /D "_MT" /Yu"wx/wxprec.h" /FD /c
# ADD BASE RSC /l 0x409
# ADD RSC /l 0x409
BSC32=bscmake.exe
@ -103,8 +103,8 @@ LIB32=link.exe -lib
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MTd /W3 /GX /Z7 /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" -D "_MT" /YX /FD /c
# ADD CPP /nologo /MTd /W4 /Zi /Od /I "$(wx)\include" /I "$(wx)\src\zlib" /D "_DEBUG" /D DEBUG=1 /D WXDEBUG=1 /D "__WXDEBUG__" /D wxUSE_GUI=1 /D "__WIN95__" /D "WIN32" /D "_WIN32" /D WINVER=0x400 /D "__WINDOWS__" /D "__WIN32__" /D "__WXMSW__" /Fr /D "_MT" /Yu"wx/wxprec.h" /FD /c
# ADD BASE CPP /nologo /MDd /W3 /GX /Z7 /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" -D "_MT" /YX /FD /c
# ADD CPP /nologo /MDd /W4 /Zi /Od /I "$(wx)\include" /I "$(wx)\src\zlib" /I "$(wx)\src\jpeg" /I "$(wx)\src\png" /I "$(wx)\src\tiff" /D "_DEBUG" /D DEBUG=1 /D WXDEBUG=1 /D "__WXDEBUG__" /D wxUSE_GUI=1 /D "__WIN95__" /D "WIN32" /D "_WIN32" /D WINVER=0x400 /D "__WINDOWS__" /D "__WIN32__" /D "__WXMSW__" /Fr /D "_MT" /Yu"wx/wxprec.h" /FD /c
# ADD BASE RSC /l 0x409
# ADD RSC /l 0x409
BSC32=bscmake.exe

View file

@ -85,8 +85,8 @@ BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
# ADD LINK32 kernel32.lib user32.lib advapi32.lib wsock32.lib /nologo /version:2.2 /dll /machine:I386
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386 /out:"BaseDllRelease/wxbase221.dll"
# ADD LINK32 kernel32.lib user32.lib advapi32.lib wsock32.lib /nologo /version:2.2 /dll /machine:I386 /out:"BaseDllRelease/wxbase221.dll"
!ELSEIF "$(CFG)" == "wxBaseDll - Win32 Debug"
@ -101,8 +101,8 @@ LINK32=link.exe
# PROP Intermediate_Dir "BaseDllDebug"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "WXBASEDLL_EXPORTS" /YX /FD /GZ /c
# ADD CPP /nologo /MTd /W4 /Gm /ZI /Od /I "$(wx)\include" /I "$(wx)\src\zlib" /D "_DEBUG" /D wxUSE_GUI=0 /D "__WIN95__" /D "WIN32" /D "_WIN32" /D WINVER=0x400 /D "__WINDOWS__" /D "__WIN32__" /D "__WXMSW__" /D "_MT" /D "WXMAKINGDLL" /D "__WXDEBUG__" /Yu"wx/wxprec.h" /FD /GZ /c
# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "WXBASEDLL_EXPORTS" /YX /FD /GZ /c
# ADD CPP /nologo /MTd /W4 /Gm /Zi /Od /I "$(wx)\include" /I "$(wx)\src\zlib" /D "_DEBUG" /D wxUSE_GUI=0 /D "__WIN95__" /D "WIN32" /D "_WIN32" /D WINVER=0x400 /D "__WINDOWS__" /D "__WIN32__" /D "__WXMSW__" /D "_MT" /D "WXMAKINGDLL" /D "__WXDEBUG__" /Yu"wx/wxprec.h" /FD /GZ /c
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG"
@ -111,8 +111,8 @@ BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
# ADD LINK32 kernel32.lib user32.lib advapi32.lib wsock32.lib /nologo /version:2.2 /dll /debug /machine:I386 /pdbtype:sept
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept /out:"BaseDllDebug/wxbase221d.dll"
# ADD LINK32 kernel32.lib user32.lib advapi32.lib wsock32.lib /nologo /version:2.2 /dll /debug /machine:I386 /pdbtype:sept /out:"BaseDllDebug/wxbase221d.dll"
!ENDIF
@ -122,6 +122,10 @@ LINK32=link.exe
# Name "wxBaseDll - Win32 Debug"
# Begin Source File
SOURCE=.\src\common\base.rc
# End Source File
# Begin Source File
SOURCE=.\src\msw\dummydll.cpp
# ADD CPP /Yc"wx/wxprec.h"
# End Source File

View file

@ -83,17 +83,17 @@ RSC=rc.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MD /W4 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "WXWINDLL_EXPORTS" /YX /FD /c
# ADD CPP /nologo /MD /W4 /GX /O2 /I "$(wx)\include" /I "$(wx)\src\zlib" /D "NDEBUG" /D wxUSE_GUI=1 /D "WIN32" /D "_WINDOWS" /D "_USRDLL" /D "WXWINDLL_EXPORTS" /D "__WXMSW__" /D "__WIN95__" /D "__WINDOWS__" /D "__WIN32__" /D "WXMAKINGDLL" /Yu"wx/wxprec.h" /FD /c
# ADD CPP /nologo /MD /W4 /GX /O2 /I "$(wx)\include" /I "$(wx)\src\zlib" /I "$(wx)\src\jpeg" /I "$(wx)\src\png" /I "$(wx)\src\tiff" /D "NDEBUG" /D wxUSE_GUI=1 /D "WIN32" /D "_WINDOWS" /D "_USRDLL" /D "WXWINDLL_EXPORTS" /D "__WXMSW__" /D "__WIN95__" /D "__WINDOWS__" /D "__WIN32__" /D "WXMAKINGDLL" /Yu"wx/wxprec.h" /FD /c
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /i "$(wx)\include" /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib winmm.lib src\png\Release\png.lib src\xpm\Release\xpm.lib src\zlib\Release\zlib.lib /nologo /dll /machine:I386
# ADD LINK32 kernel32.lib user32.lib gdi32.lib advapi32.lib comdlg32.lib shell32.lib ole32.lib oleaut32.lib odbc32.lib uuid.lib rpcrt4.lib comctl32.lib winmm.lib src\png\Release\png.lib src\xpm\Release\xpm.lib src\zlib\Release\zlib.lib /nologo /dll /machine:I386
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib winmm.lib src\jpeg\Release\jpeg.lib src\tiff\Release\tiff.lib src\png\Release\png.lib src\xpm\Release\xpm.lib src\zlib\Release\zlib.lib /nologo /dll /machine:I386 /out:"ReleaseDll/wxmsw221.dll"
# ADD LINK32 kernel32.lib user32.lib gdi32.lib advapi32.lib comdlg32.lib shell32.lib ole32.lib oleaut32.lib odbc32.lib uuid.lib rpcrt4.lib comctl32.lib wsock32.lib winmm.lib src\jpeg\Release\jpeg.lib src\tiff\Release\tiff.lib src\png\Release\png.lib src\xpm\Release\xpm.lib src\zlib\Release\zlib.lib /nologo /dll /machine:I386 /out:"ReleaseDll/wxmsw221.dll"
!ELSEIF "$(CFG)" == "wxWinDll - Win32 Debug"
@ -108,18 +108,18 @@ LINK32=link.exe
# PROP Intermediate_Dir "DebugDLL"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MDd /W4 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "WXWINDLL_EXPORTS" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W4 /Gm /ZI /Od /I "$(wx)\include" /I "$(wx)\src\zlib" /D "_DEBUG" /D "__WXDEBUG__" /D wxUSE_GUI=1 /D "WIN32" /D "_WINDOWS" /D "_USRDLL" /D "WXWINDLL_EXPORTS" /D "__WXMSW__" /D "__WIN95__" /D "__WINDOWS__" /D "__WIN32__" /D "WXMAKINGDLL" /Yu"wx/wxprec.h" /FD /GZ /c
# ADD BASE CPP /nologo /MDd /W4 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "WXWINDLL_EXPORTS" /YX /FD /GZ /c
# ADD CPP /nologo /MDd /W4 /Gm /Zi /Od /I "$(wx)\include" /I "$(wx)\src\zlib" /I "$(wx)\src\jpeg" /I "$(wx)\src\png" /I "$(wx)\src\tiff" /D "_DEBUG" /D "__WXDEBUG__" /D wxUSE_GUI=1 /D "WIN32" /D "_WINDOWS" /D "_USRDLL" /D "WXWINDLL_EXPORTS" /D "__WXMSW__" /D "__WIN95__" /D "__WINDOWS__" /D "__WIN32__" /D "WXMAKINGDLL" /Yu"wx/wxprec.h" /FD /GZ /c
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /i "$(wx)\include" /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib winmm.lib src\png\Debug\png.lib src\xpm\Debug\xpm.lib src\zlib\Debug\zlib.lib /dll /debug /machine:I386 /pdbtype:sept
# ADD LINK32 kernel32.lib user32.lib gdi32.lib advapi32.lib comdlg32.lib shell32.lib ole32.lib oleaut32.lib odbc32.lib uuid.lib rpcrt4.lib comctl32.lib wsock32.lib winmm.lib src\png\Debug\png.lib src\xpm\Debug\xpm.lib src\zlib\Debug\zlib.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib winmm.lib src\jpeg\Debug\jpeg.lib src\tiff\Debug\tiff.lib src\png\Debug\png.lib src\xpm\Debug\xpm.lib src\zlib\Debug\zlib.lib /dll /debug /machine:I386 /pdbtype:sept /out:"DebugDll/wxmsw221d.dll"
# ADD LINK32 kernel32.lib user32.lib gdi32.lib advapi32.lib comdlg32.lib shell32.lib ole32.lib oleaut32.lib odbc32.lib uuid.lib rpcrt4.lib comctl32.lib wsock32.lib winmm.lib src\jpeg\Debug\jpeg.lib src\tiff\Debug\tiff.lib src\png\Debug\png.lib src\xpm\Debug\xpm.lib src\zlib\Debug\zlib.lib /nologo /dll /debug /machine:I386 /pdbtype:sept /out:"DebugDll/wxmsw221d.dll"
!ENDIF
@ -144,10 +144,15 @@ SOURCE=.\src\msw\dummydll.cpp
# Begin Source File
SOURCE=.\src\msw\version.rc
# End Source File
# Begin Source File
SOURCE=.\src\common\y_tab.c
!IF "$(CFG)" == "wxWinDll - Win32 Release"
# ADD CPP /W1
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "wxWinDll - Win32 Debug"

View file

@ -30,20 +30,26 @@
if ( Config("wx") ) {
#! VC 6.0 supports env vars in include path
#! $WXDIR = $ENV{'WX'};
$WXDIR = "\$(WX)";
if ( $ENV{'wx'} ) { $WXDIR = "\$(wx)"; }
else { $WXDIR = "\$(WXWIN)"; }
$TMAKE_INCDIR_WX = $WXDIR . "\\include";
AddIncludePath($TMAKE_INCDIR_WX);
}
if ( Config("dll") ) {
$DLL="Dll";
$DLL_OR_LIB="wxWinDll";
$DLL_SUFFIX="d";
$DLL_OR_LIB=(Config("wxbase") ? "wxbase" : "wxmsw") . "221";
$DLL_FLAGS="/D WXUSINGDLL ";
$EXTRA_LIBS="";
}
else {
$DLL="";
$DLL_SUFFIX="";
$DLL_OR_LIB="wxWindows";
$DLL_FLAGS=" ";
#! actually this depends on the contents of setup.h
$EXTRA_LIBS=Config("wxbase") ? "" : "xpm zlib png jpeg tiff";
}
#! let's be smarter: first of all, if no extension is given, add .lib
@ -64,12 +70,21 @@
if ( Config("wx") ) {
$vc_base_libs .= "comctl32.lib rpcrt4.lib wsock32.lib ";
$vc_link_release = "$WXDIR\\Release$DLL\\$DLL_OR_LIB.lib $WXDIR\\src\\xpm\\Release\\xpm.lib ";
$vc_link_debug = "$WXDIR\\Debug$DLL\\$DLL_OR_LIB.lib $WXDIR\\src\\xpm\\Debug\\xpm.lib ";
$vc_link_release = "$WXDIR\\Release$DLL\\$DLL_OR_LIB.lib ";
$vc_link_debug = "$WXDIR\\Debug$DLL\\$DLL_OR_LIB$DLL_SUFFIX.lib ";
foreach ( split(/ /, $EXTRA_LIBS) ) {
$vc_link_release .= "$WXDIR\\src\\$_\\Release\\$_.lib ";
$vc_link_debug .= "$WXDIR\\src\\$_\\Debug\\$_.lib ";
}
}
$vc_link_release .= '/nologo /subsystem:windows /machine:I386';
$vc_link_debug .= '/nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept';
foreach ( split(/ /, Project('LIBPATH')) ) {
$vc_link_release .= " /libpath:$_\\Release";
$vc_link_debug .= " /libpath:$_\\Debug";
}
$vc_cpp_def_common = '/D "WIN32" /D "_WINDOWS" ' . $DLL_FLAGS;
$vc_cpp_def_release = '/D "NDEBUG" ' . $vc_cpp_def_common;
$vc_cpp_def_debug = '/D "_DEBUG" ' . $vc_cpp_def_common;
@ -79,8 +94,8 @@
$vc_base_libs = 'kernel32.lib user32.lib advapi32.lib ';
if ( Config("wx") ) {
$vc_base_libs .= 'wsock32.lib ';
$vc_link_release = "$WXDIR\\Base${DLL}Release\\wxBase$DLL.lib ";
$vc_link_debug = "$WXDIR\\Base${DLL}Debug\\wxBase$DLL.lib ";
$vc_link_release = "$WXDIR\\Base${DLL}Release\\$DLL_OR_LIB.lib ";
$vc_link_debug = "$WXDIR\\Base${DLL}Debug\\$DLL_OR_LIB" . "d.lib ";
}
$vc_link_release .= '/nologo /subsystem:console /machine:I386';
$vc_link_debug .= '/nologo /subsystem:console /debug /machine:I386 /pdbtype:sept';
@ -205,13 +220,13 @@ RSC=rc.exe
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Output_Dir "Release#$ $text = "$DLL" . '"'
# PROP BASE Intermediate_Dir "Release#$ $text = "$DLL" . '"'
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Output_Dir "Release#$ $text = "$DLL" . '"'
# PROP Intermediate_Dir "Release#$ $text = "$DLL" . '"'
#$ Config("windows") && ($text='# PROP Ignore_Export_Lib 0');
# PROP Target_Dir ""
# ADD BASE CPP #$ Expand("VC_BASE_CPP_RELEASE");
@ -233,13 +248,13 @@ LINK32=link.exe
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Output_Dir "Debug#$ $text = "$DLL" . '"'
# PROP BASE Intermediate_Dir "Debug#$ $text = "$DLL" . '"'
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Output_Dir "Debug#$ $text = "$DLL" . '"'
# PROP Intermediate_Dir "Debug#$ $text = "$DLL" . '"'
#$ Config("windows") && ($text='# PROP Ignore_Export_Lib 0');
# PROP Target_Dir ""
# ADD BASE CPP #$ Expand("VC_BASE_CPP_DEBUG");

9
distrib/msw/vcupdate.bat Executable file
View file

@ -0,0 +1,9 @@
@echo off
Rem Replace the DLL version number in the VC++ project files
input Enter the old version name (e.g. wx22_0): %%oldName
input Enter the new version name (e.g. wx22_1): %%newName
call %wxwin\distrib\msw\filerepl.bat %oldName %newName %wxwin\distrib\msw\vc.rsp
echo Done.

View file

@ -1,4 +1,25 @@
10th July 2000: wxWindows 2.2 released
22nd July 2000: wxWindows 2.2.1 released
Minor build fixes.
Corrected guffow-scrolling so that no surplus expose
events are generated.
Corrected bug in wxMask creation on 16-bit displays.
Minor correction to wxDC::DrawRoundedRectangle.
Added support for <INSERT> and <DELETE> menu accelerators.
Use the wxCommmandEvent::IsChecked() function for checkable
menu items.
Made wxComboBox case-sensitive.
Minor correction to doc-view architecture.
10th July 2000: wxWindows 2.2.0 released
Added code for writing BMP images.

View file

@ -18,6 +18,16 @@ News
</tr>
</table>
<H3>July 28th, 2000</H3><P>
<ul>
<li>Vaclav Slavik has recently written an
<a href="http://www.root.cz/clanek.phtml?id=425" target=_top>article about wxWindows</a> for a Czech ezine.
<li>Hurray! There is a lot of traffic on the wxStudio mailing list, and
Gerd Mueller has offered to make the <a href="http://www.softwarebuero.de" target=_top>WipeOut</a> IDE
open source and merge it with wxStudio.
</ul>
<H3><a name="release2_2_0">July 9th, 2000</H3><P>
<ul>

View file

@ -93,7 +93,9 @@ often don't work.
<tr>
<td bgcolor="#F0F0F0" align=center valign=center rowspan=2>AIX</td>
<td>wxGTK with AIX CC</td><td align=center><IMG SRC="icons/no.gif" ALT=Unknown></td><td><br></td><td><br></td>
<tr> <td>wxMotif with AIX CC</td><td align=center><IMG SRC="icons/no.gif" ALT=Unknown></td><td><br></td><td><br></td>
<tr> <td>wxMotif with xlC (AIX 4.2)</td><td align=center><IMG SRC="icons/yes.gif" ALT=Ok></td>
<td>Bernhard Eck</td>
<td>Some problems with OpenGL and native X server</td>
</tr>
<tr>

View file

@ -36,7 +36,9 @@ which is generated by a wxListBox control.}
\twocolitem{{\bf EVT\_TEXT(id, func)}}{Process a wxEVT\_COMMAND\_TEXT\_UPDATED command,
which is generated by a wxTextCtrl control.}
\twocolitem{{\bf EVT\_TEXT\_ENTER(id, func)}}{Process a wxEVT\_COMMAND\_TEXT\_ENTER command,
which is generated by a wxTextCtrl control.}
which is generated by a wxTextCtrl control. Note that you must use
wxTE\_PROCESS\_ENTER flag when creating the control if you want it to generate
such events.}
\twocolitem{{\bf EVT\_MENU(id, func)}}{Process a wxEVT\_COMMAND\_MENU\_SELECTED command,
which is generated by a menu item.}
\twocolitem{{\bf EVT\_MENU\_RANGE(id1, id2, func)}}{Process a wxEVT\_COMMAND\_MENU\_RANGE command,
@ -117,16 +119,16 @@ Constructor.
\membersection{wxCommandEvent::Checked}
\func{bool}{Checked}{\void}
\constfunc{bool}{Checked}{\void}
Returns TRUE or FALSE for a checkbox selection event.
Deprecated, use \helpref{IsChecked}{wxcommandeventischecked} instead.
\membersection{wxCommandEvent::GetClientData}
\func{void*}{GetClientData}{\void}
Returns client data pointer for a listbox or choice selection event
(not valid for a deselection). Beware, this is not implmented anywhere...
(not valid for a deselection).
\membersection{wxCommandEvent::GetExtraLong}
@ -154,6 +156,16 @@ a deselection).
Returns item string for a listbox or choice selection event (not valid for
a deselection).
\membersection{wxCommandEvent::IsChecked}\label{wxcommandeventischecked}
\constfunc{bool}{IsChecked}{\void}
This method can be used with checkbox and menu events: for the checkboxes, the
method returns {\tt TRUE} for a selection event and {\tt FALSE} for a
deselection one. For the menu events, this method indicates if the menu item
just has become checked or unchecked (and thus only makes sense for checkable
menu items).
\membersection{wxCommandEvent::IsSelection}
\func{bool}{IsSelection}{\void}

View file

@ -23,8 +23,9 @@ A combobox permits a single selection only. Combobox items are numbered from zer
\begin{twocollist}\itemsep=0pt
\twocolitem{\windowstyle{wxCB\_SIMPLE}}{Creates a combobox with a permanently displayed list. Windows only. }
\twocolitem{\windowstyle{wxCB\_DROPDOWN}}{Creates a combobox with a drop-down list.}
\twocolitem{\windowstyle{wxCB\_READONLY}}{Creates a combo box consisting of a drop-down list and static text item
displaying the current selection.}
\twocolitem{\windowstyle{wxCB\_READONLY}}{Same as wxCB\_DROPDOWN but only the
strings specified as the combobox choices can be selected, it is impossible to
select (even from a program) a string which is not in the choices list.}
\twocolitem{\windowstyle{wxCB\_SORT}}{Sorts the entries in the list alphabetically.}
\end{twocollist}
@ -319,6 +320,9 @@ wxPython.}
Sets the text for the combobox text field.
{\bf NB:} For a combobox with {\tt wxCB\_READONLY} style the string must be in
the combobox choices list, otherwise the call to SetValue() is ignored.
\wxheading{Parameters}
\docparam{text}{The text to set.}

View file

@ -3,9 +3,6 @@
Every database object represents an ODBC connection.
The connection may be closed and reopened.
Note: this class is considered obsolete, replaced by the Remstar wxDB/wxTable classes
(documented separately in Word and PDF format, as odbc.doc and odbc.pdf).
\wxheading{Derived from}
\helpref{wxObject}{wxobject}
@ -80,9 +77,9 @@ and disconnects from the current data source.
Commits previous transactions. Not implemented.
\membersection{wxDatabase::ErrorOccurred}
\membersection{wxDatabase::ErrorOccured}
\func{bool}{ErrorOccurred}{\void}
\func{bool}{ErrorOccured}{\void}
Returns TRUE if the last action caused an error.
@ -90,7 +87,7 @@ Returns TRUE if the last action caused an error.
\func{void}{ErrorSnapshot}{\param{HSTMT}{ statement = SQL\_NULL\_HSTMT}}
This function will be called whenever an ODBC error occurred. It stores the
This function will be called whenever an ODBC error occured. It stores the
error related information returned by ODBC. If a statement handle of the
concerning ODBC action is available it should be passed to the function.

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,59 @@
%
% automatically generated by HelpGen from
% grid.h at 11/May/00 18:30:18
%
\section{\class{wxGridCellWorker}}\label{wxgridcellworker}
wxGridCellWorker: common base class for wxGridCellRenderer and
wxGridCellEditor
NB: this is more an implementation convenience than a design issue, so this
class is not documented and is not public at all
\wxheading{Derived from}
No base class
\wxheading{Data structures}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxGridCellWorker::wxGridCellWorker}\label{wxgridcellworkerwxgridcellworker}
\func{}{wxGridCellWorker}{\void}
\membersection{wxGridCellWorker::IncRef}\label{wxgridcellworkerincref}
\func{void}{IncRef}{\void}
this class is ref counted: it is created with ref count of 1, so
calling DecRef() once will delete it. Calling IncRef() allows to lock
it until the matching DecRef() is called
\membersection{wxGridCellWorker::DecRef}\label{wxgridcellworkerdecref}
\func{void}{DecRef}{\void}
\membersection{wxGridCellWorker::SetParameters}\label{wxgridcellworkersetparameters}
\func{void}{SetParameters}{\param{const wxString\& }{params}}
interpret renderer parameters: arbitrary string whose interpretatin is
left to the derived classes
\membersection{wxGridCellWorker::\destruct{wxGridCellWorker}}\label{wxgridcellworkerdtor}
\func{}{\destruct{wxGridCellWorker}}{\void}
virtual dtor for any base class - private because only DecRef() can
delete us

View file

@ -187,6 +187,10 @@ on program start-up to look up colors. This ensures a very fast conversion, but
the image quality won't be perfect (and could be better for photo images using more
sophisticated dithering algorithms).
On Windows, if there is a palette present (set with SetPalette), it will be used when
creating the wxBitmap (most useful in 8-bit display mode). On other platforms,
the palette is currently ignored.
\membersection{wxImage::Copy}\label{wximagecopy}
\constfunc{wxImage}{Copy}{\void}
@ -309,6 +313,15 @@ Gets the green value of the mask colour.
Gets the red value of the mask colour.
\membersection{wxImage::GetPalette}\label{wximagegetpalette}
\constfunc{const wxPalette\&}{GetPalette}{\void}
Returns the palette associated with the image. Currently the palette is only
used in ConvertToBitmap under Windows.
Eventually wxImage handlers will set the palette if one exists in the image file.
\membersection{wxImage::GetSubImage}\label{wximagegetsubimage}
\constfunc{wxImage}{GetSubImage}{\param{const wxRect\&}{ rect}}
@ -653,6 +666,12 @@ used, which is a number between 0 and 100 (0 is terrible, 100 is very good).
\helpref{wxImage::GetOptionInt}{wximagegetoptionint},\rtfsp
\helpref{wxImage::HasOption}{wximagehasoption}
\membersection{wxImage::SetPalette}\label{wximagesetpalette}
\func{void}{SetPalette}{\param{const wxPalette\&}{ palette}}
Associates a palette with the image. Currently, the palette is not used.
\membersection{wxImage::SetRGB}\label{wximagesetrgb}
\func{void}{SetRGB}{\param{int }{x}, \param{int }{y}, \param{unsigned char }{red}, \param{unsigned char }{green}, \param{unsigned char }{blue}}

View file

@ -61,13 +61,6 @@ The destructor, like the constructor, also has global side effects: the previous
set locale is restored and so the changes described in
\helpref{Init}{wxlocaleinit} documentation are rolled back.
\membersection{wxLocale::GetLocale}\label{wxlocalegetlocale}
\constfunc{const char*}{GetLocale}{\void}
Returns the locale name as passed to the constructor or
\helpref{Init()}{wxlocaleinit}.
\membersection{wxLocale::AddCatalog}\label{wxlocaleaddcatalog}
\func{bool}{AddCatalog}{\param{const char }{*szDomain}}
@ -93,6 +86,36 @@ looked up under prefix/<lang>/LC\_MESSAGES, prefix/LC\_MESSAGES and prefix
This only applies to subsequent invocations of AddCatalog()!
\membersection{wxLocale::GetLocale}\label{wxlocalegetlocale}
\constfunc{const char*}{GetLocale}{\void}
Returns the locale name as passed to the constructor or
\helpref{Init()}{wxlocaleinit}.
\membersection{wxLocale::GetName}\label{wxlocalegetname}
\constfunc{const wxString\&}{GetName}{\void}
Returns the current short name for the locale (as given to the constructor or
the Init() function).
\membersection{wxLocale::GetString}\label{wxlocalegetstring}
\constfunc{const char*}{GetString}{\param{const char }{*szOrigString}, \param{const char }{*szDomain = NULL}}
Retrieves the translation for a string in all loaded domains unless the szDomain
parameter is specified (and then only this catalog/domain is searched).
Returns original string if translation is not available
(in this case an error message is generated the first time
a string is not found; use \helpref{wxLogNull}{wxlogoverview} to suppress it).
\wxheading{Remarks}
Domains are searched in the last to first order, i.e. catalogs
added later override those added before.
\membersection{wxLocale::Init}\label{wxlocaleinit}
\func{bool}{Init}{\param{const char }{*szName}, \param{const char }{*szShort = NULL}, \param{const char }{*szLocale = NULL}, \param{bool }{bLoadDefault = TRUE}}
@ -129,26 +152,9 @@ normally corresponds to 'domain' which is more or less the application name.
See also: \helpref{AddCatalog}{wxlocaleaddcatalog}
\membersection{wxLocale::GetName}\label{wxlocalegetname}
\membersection{wxLocale::IsOk}\label{wxlocaleisok}
\constfunc{const wxString\&}{GetName}{\void}
\constfunc{bool}{IsOk}{\void}
Returns the current short name for the locale (as given to the constructor or
the Init() function).
\membersection{wxLocale::GetString}\label{wxlocalegetstring}
\constfunc{const char*}{GetString}{\param{const char }{*szOrigString}, \param{const char }{*szDomain = NULL}}
Retrieves the translation for a string in all loaded domains unless the szDomain
parameter is specified (and then only this catalog/domain is searched).
Returns original string if translation is not available
(in this case an error message is generated the first time
a string is not found; use \helpref{wxLogNull}{wxlogoverview} to suppress it).
\wxheading{Remarks}
Domains are searched in the last to first order, i.e. catalogs
added later override those added before.
Returns TRUE if the locale could be set successfully.

View file

@ -6,6 +6,9 @@ Portable programs should try to use \helpref{wxSpinCtrl}{wxspinctrl} instead
as wxSpinButton is not implemented for all platforms (Win32 and GTK only
currently).
{\bf NB:} the range supported by this control (and wxSpinCtrl) depends on the
platform but is at least {\tt SHRT\_MIN} to {\tt SHRT\_MAX}.
\wxheading{Derived from}
\helpref{wxControl}{wxcontrol}\\

View file

@ -2,8 +2,8 @@
Classes: \helpref{wxLayoutConstraints}{wxlayoutconstraints}, \helpref{wxIndividualLayoutConstraint}{wxindividuallayoutconstraint}.
Objects of class wxLayoutConstraint can be associated with a window to define the
way its subwindows are laid out, with respect to their siblings or parent.
Objects of class wxLayoutConstraint can be associated with a window to define
the way it is laid out, with respect to its siblings or the parent.
The class consists of the following eight constraints of class wxIndividualLayoutConstraint,
some or all of which should be accessed directly to set the appropriate
@ -34,9 +34,12 @@ label).
The constrains calculation is done in \helpref{wxWindow::Layout}{wxwindowlayout}
function which evaluates constraints. To call it you can either call
wxWindow::SetAutoLayout to tell default OnSize handlers to call Layout
automatically whenever the window size changes, or override OnSize and call Layout
yourself.
\helpref{wxWindow::SetAutoLayout}{wxwindowsetautolayout} if the parent window
is a frame, panel or a dialog to tell default OnSize handlers to call Layout
automatically whenever the window size changes, or override OnSize and call
Layout yourself (note that you do have to call
\helpref{Layout}{wxwindowlayout} yourself if the parent window is not a
frame, panel or dialog).
\subsection{Constraint layout: more detail}

View file

@ -189,10 +189,13 @@ allows more "iterator-like" traversal of the list of lines, i.e. you may
write something like:
\begin{verbatim}
for ( str = GetFirstLine(); !Eof(); str = GetNextLine() )
wxTextFile file;
...
for ( str = file.GetFirstLine(); !file.Eof(); str = file.GetNextLine() )
{
// do something with the current line in str
}
// do something with the last line in str
\end{verbatim}
\membersection{wxTextFile::GetNextLine}\label{wxtextfilegetnextline}
@ -212,7 +215,21 @@ Gets the previous line in the file.
\func{wxString\&}{GetLastLine}{\void}
Gets the last line of the file.
Gets the last line of the file. Together with
\helpref{GetPrevLine}{wxtextfilegetprevline} it allows to enumerate the lines
in the file from the end to the beginning like this:
\begin{verbatim}
wxTextFile file;
...
for ( str = file.GetLastLine();
file.GetCurrentLine() > 0;
str = file.GetPrevLine() )
{
// do something with the current line in str
}
// do something with the first line in str
\end{verbatim}
\membersection{wxTextFile::GetLineType}\label{wxtextfilegetlinetype}

View file

@ -168,12 +168,16 @@ Adds a separator for spacing groups of tools.
\membersection{wxToolBar::AddTool}\label{wxtoolbaraddtool}
\func{wxToolBarTool*}{AddTool}{\param{int}{ toolId}, \param{const wxBitmap\&}{ bitmap1},\rtfsp
\param{const wxString\& }{shortHelpString = ""}, \param{const wxString\& }{longHelpString = ""}}
\func{wxToolBarTool*}{AddTool}{\param{int}{ toolId}, \param{const wxBitmap\&}{ bitmap1},\rtfsp
\param{const wxBitmap\&}{ bitmap2 = wxNullBitmap}, \param{bool}{ isToggle = FALSE},\rtfsp
\param{long}{ xPos = -1}, \param{long}{ yPos = -1},\rtfsp
\param{wxObject* }{clientData = NULL}, \param{const wxString\& }{shortHelpString = ""}, \param{const wxString\& }{longHelpString = ""}}
Adds a tool to the toolbar.
Adds a tool to the toolbar. The first (short and most commonly used) version
adds a normal (and not a togglable) button without any associated client data.
\wxheading{Parameters}

View file

@ -19,7 +19,8 @@ functions that take a wxUpdateUIEvent argument.
\twocolwidtha{7cm}
\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf EVT\_UPDATE\_UI(id, func)}}{Process a wxEVT\_UPDATE\_UI event.}
\twocolitem{{\bf EVT\_UPDATE\_UI(id, func)}}{Process a wxEVT\_UPDATE\_UI event for the command with the given id.}
\twocolitem{{\bf EVT\_UPDATE\_UI\_RANGE(id1, id2, func)}}{Process a wxEVT\_UPDATE\_UI event for any command with id included in the given range.}
\end{twocollist}%
\wxheading{Remarks}

View file

@ -45,6 +45,15 @@ For Word RTF:
tex2rtf manual.tex manual.rtf -rtf -twice
If you wish to have a GUI display show the status of what is happening
as the conversion is happening, use the '-interactive' command line
parameter, and then choose FILE|GO from the menu. For example:
tex2rtf manual.tex manual.rtf -rtf -twice -interactive
NOTE: You must be using the latest tex2rtf which was released with
v2.2.0 of wxWindowsto use the -interactive switch
If you wish to generate documentation for wxHTML Help Viewer
(or Windows HTML Help), set htmlWorkshopFiles to true in your
tex2rtf.ini file. See also the wxHTML Notes section in the

View file

@ -5,6 +5,8 @@
// source such as opening and closing the data source.
// Author: Doug Card
// Modified by: George Tasker
// Bart Jourquin
// Mark Johnson
// Mods: Dec, 1998:
// -Added support for SQL statement logging and database cataloging
// April, 1999
@ -42,7 +44,7 @@
// BJO 20000503: introduce new GetColumns members which are more database independant and
// return columns in the order they were created
#define OLD_GETCOLUMNS 1
#define EXPERIMENTAL_WXDB_FUNCTIONS 0
// Use this line for wxWindows v1.x
//#include "wx_ver.h"
@ -51,7 +53,7 @@
#if wxMAJOR_VERSION == 2
#ifdef __GNUG__
#pragma interface "db.h"
#pragma interface "db.h"
#endif
#endif
@ -268,8 +270,8 @@ class WXDLLEXPORT wxDbColFor
public:
wxString s_Field; // Formated String for Output
wxString s_Format[7]; // Formated Objects - TIMESTAMP has the biggest (7)
wxString s_Menge[7]; // Formated Objects - amount of things that can be formatted
int i_Menge[7]; // Formated Objects - TT MM YYYY HH MM SS m
wxString s_Amount[7]; // Formated Objects - amount of things that can be formatted
int i_Amount[7]; // Formated Objects - TT MM YYYY HH MM SS m
int i_Nation; // 0 = timestamp , 1=EU, 2=UK, 3=International, 4=US
int i_dbDataType; // conversion of the 'sqlDataType' to the generic data type used by these classes
SWORD i_sqlDataType;
@ -303,6 +305,9 @@ public:
int FkCol; // Foreign key column 0=No; 1= First Key, 2 = Second Key etc.
char FkTableName[DB_MAX_TABLE_NAME_LEN+1]; // Foreign key table name
wxDbColFor *pColFor; // How should this columns be formatted
wxDbColInf();
~wxDbColInf();
};
@ -316,6 +321,8 @@ public:
char tableRemarks[254+1];
int numCols; // How many Columns does this Table have: GetColumnCount(..);
wxDbColInf *pColInf; // pColInf = NULL ; User can later call GetColumns(..);
wxDbTableInf();
~wxDbTableInf();
};
@ -326,6 +333,9 @@ public:
char schema[128+1];
int numTables; // How many tables does this database have
wxDbTableInf *pTableInf; // pTableInf = new wxDbTableInf[numTables];
wxDbInf();
~wxDbInf();
};
@ -393,7 +403,7 @@ private:
unsigned int nTables;
// Information about logical data types VARCHAR, INTEGER, FLOAT and DATE.
//
//
// This information is obtained from the ODBC driver by use of the
// SQLGetTypeInfo() function. The key piece of information is the
// type name the data source uses for each logical data type.
@ -432,6 +442,9 @@ public:
char databaseName[128]; // Database filename
char outerJoins[2]; // Indicates whether the data source supports outer joins
char procedureSupport[2]; // Indicates whether the data source supports stored procedures
#if EXPERIMENTAL_WXDB_FUNCTIONS // will be added in 2.4
char accessibleTables[2]; // Indicates whether the data source only reports accessible tables in SQLTables.
#endif
UWORD maxConnections; // Maximum # of connections the data source supports
UWORD maxStmts; // Maximum # of HSTMTs per HDBC
UWORD apiConfLvl; // ODBC API conformance level
@ -464,7 +477,7 @@ public:
#if wxODBC_BACKWARD_COMPATABILITY
// Information about logical data types VARCHAR, INTEGER, FLOAT and DATE.
//
//
// This information is obtained from the ODBC driver by use of the
// SQLGetTypeInfo() function. The key piece of information is the
// type name the data source uses for each logical data type.
@ -476,7 +489,7 @@ public:
#endif
// Public member functions
wxDb(HENV &aHenv, bool FwdOnlyCursors=(bool)TRUE);
wxDb(HENV &aHenv, bool FwdOnlyCursors=(bool)wxODBC_FWD_ONLY_CURSORS);
bool Open(char *Dsn, char *Uid, char *AuthStr); // Data Source Name, User ID, Password
void Close(void);
bool CommitTrans(void);
@ -514,6 +527,9 @@ public:
wxDbSqlTypeInfo GetTypeInfDate() {return typeInfDate;}
bool TableExists(const char *tableName, const char *userID=NULL, const char *path=NULL); // Table name can refer to a table, view, alias or synonym
#if EXPERIMENTAL_WXDB_FUNCTIONS // will be added in 2.4
bool TablePrivileges(const char *tableName, const char* priv, const char *userID=NULL, const char *path=NULL); // Table name can refer to a table, view, alias or synonym
#endif
void LogError(const char *errMsg, const char *SQLState = 0) {logError(errMsg, SQLState);}
void SetDebugErrorMessages(bool state) { silent = !state; }
bool SetSqlLogging(wxDbSqlLogState state, const wxChar *filename = SQL_LOG_FILENAME, bool append = FALSE);

View file

@ -3,6 +3,8 @@
// Purpose: Declaration of the wxDbTable class.
// Author: Doug Card
// Modified by: George Tasker
// Bart Jourquin
// Mark Johnson
// Created: 9.96
// RCS-ID: $Id$
// Copyright: (c) 1996 Remstar International, Inc.
@ -33,7 +35,7 @@
#if wxMAJOR_VERSION == 2
#ifdef __GNUG__
#pragma interface "dbtable.h"
#pragma interface "dbtable.h"
#endif
#endif
@ -94,20 +96,20 @@ public:
class WXDLLEXPORT wxDbTable
{
private:
ULONG tableID; // Used for debugging. This can help to match up mismatched constructors/destructors
ULONG tableID; // Used for debugging. This can help to match up mismatched constructors/destructors
// Private member variables
UDWORD cursorType;
bool insertable;
UDWORD cursorType;
bool insertable;
// Private member functions
bool bindInsertParams(void);
bool bindUpdateParams(void);
bool bindCols(HSTMT cursor);
bool getRec(UWORD fetchType);
bool execDelete(const char *pSqlStmt);
bool execUpdate(const char *pSqlStmt);
bool query(int queryType, bool forUpdate, bool distinct, const char *pSqlStmt = 0);
bool bindInsertParams(void);
bool bindUpdateParams(void);
bool bindCols(HSTMT cursor);
bool getRec(UWORD fetchType);
bool execDelete(const char *pSqlStmt);
bool execUpdate(const char *pSqlStmt);
bool query(int queryType, bool forUpdate, bool distinct, const char *pSqlStmt = 0);
#if !wxODBC_BACKWARD_COMPATABILITY
// these were public
@ -188,32 +190,32 @@ public:
bool CreateIndex(const char * idxName, bool unique, int noIdxCols, wxDbIdxDef *pIdxDefs, bool attemptDrop=TRUE);
bool DropIndex(const char * idxName);
// Accessors
// Accessors
// The member variables returned by these accessors are all
// set when the wxDbTable instance is createand cannot be
// changed, hence there is no corresponding SetXxxx function
wxDb *GetDb() { return pDb; }
const char *GetTableName() { return tableName; }
const char *GetQueryTableName() { return queryTableName; }
const char *GetTablePath() { return tablePath; }
wxDb *GetDb() { return pDb; }
const char *GetTableName() { return tableName; }
const char *GetQueryTableName() { return queryTableName; }
const char *GetTablePath() { return tablePath; }
int GetNumberOfColumns() { return noCols; } // number of "defined" columns for this wxDbTable instance
int GetNumberOfColumns() { return noCols; } // number of "defined" columns for this wxDbTable instance
const char *GetFromClause() { return from; }
const char *GetOrderByClause() { return orderBy; }
const char *GetWhereClause() { return where; }
const char *GetFromClause() { return from; }
const char *GetOrderByClause() { return orderBy; }
const char *GetWhereClause() { return where; }
bool IsQueryOnly() { return queryOnly; }
bool IsQueryOnly() { return queryOnly; }
#if wxODBC_BACKWARD_COMPATABILITY
void SetFromClause(const char *From) { from = (char *)From; }
void SetOrderByClause(const char *OrderBy) { orderBy = (char *)OrderBy; }
void SetWhereClause(const char *Where) { where = (char *)Where; }
void SetOrderByClause(const char *OrderBy) { orderBy = (char *)OrderBy; }
void SetWhereClause(const char *Where) { where = (char *)Where; }
#else
void SetFromClause(const wxString& From) { from = From; }
void SetOrderByClause(const wxString& OrderBy) { orderBy = OrderBy; }
void SetWhereClause(const wxString& Where) { where = Where; }
void SetFromClause(const wxString& From) { from = From; }
void SetOrderByClause(const wxString& OrderBy) { orderBy = OrderBy; }
void SetWhereClause(const wxString& Where) { where = Where; }
#endif
int Insert(void);
bool Update(void);

View file

@ -100,8 +100,9 @@
# pragma warning(disable:4100) // unreferenced formal parameter
# pragma warning(disable:4511) // copy ctor couldn't be generated
# pragma warning(disable:4512) // operator=() couldn't be generated
# pragma warning(disable:4699) // Using precompiled header
# pragma warning(disable:4699) // using precompiled header
# pragma warning(disable:4134) // conversion between pointers to members of same class
# pragma warning(disable:4710) // function not inlined
#ifndef WIN32
# pragma warning(disable:4135) // conversion between different integral types
# pragma warning(disable:4769) // assignment of near pointer to long integer

View file

@ -443,7 +443,7 @@ public:
wxString GetString() const { return m_commandString; }
// Get checkbox value
bool Checked() const { return (m_commandInt != 0); }
bool IsChecked() const { return m_commandInt != 0; }
// TRUE if the listbox event was a selection.
bool IsSelection() const { return (m_extraLong != 0); }
@ -456,6 +456,10 @@ public:
void CopyObject(wxObject& obj) const;
#ifdef WXWIN_COMPATIBILITY_2
bool Checked() const { return IsChecked(); }
#endif // WXWIN_COMPATIBILITY_2
public:
wxString m_commandString; // String event argument
int m_commandInt;
@ -1802,15 +1806,17 @@ const wxEventTableEntry theClass::sm_eventTableEntries[] = { \
{ wxEVT_JOY_BUTTON_DOWN, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL },\
{ wxEVT_JOY_BUTTON_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL },\
{ wxEVT_JOY_MOVE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL },\
{ wxEVT_JOY_ZMOVE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL },\
{ wxEVT_JOY_ZMOVE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxJoystickEventFunction) & func, (wxObject *) NULL },
// Idle event
#define EVT_IDLE(func) \
{ wxEVT_IDLE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxIdleEventFunction) & func, (wxObject *) NULL },\
{ wxEVT_IDLE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxIdleEventFunction) & func, (wxObject *) NULL },
// Update UI event
#define EVT_UPDATE_UI(id, func) \
{ wxEVT_UPDATE_UI, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxUpdateUIEventFunction) & func, (wxObject *) NULL },\
{ wxEVT_UPDATE_UI, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxUpdateUIEventFunction) & func, (wxObject *) NULL },
#define EVT_UPDATE_UI_RANGE(id1, id2, func) \
{ wxEVT_UPDATE_UI, id1, id2, (wxObjectEventFunction)(wxEventFunction)(wxUpdateUIEventFunction)&func, (wxObject *) NULL },
// ----------------------------------------------------------------------------
// Global data

View file

@ -77,6 +77,9 @@ public:
// restores old locale
~wxLocale();
// return TRUE if the locale was set successfully
bool IsOk() const { return m_pszOldLocale != NULL; }
// returns locale name
const wxChar *GetLocale() const { return m_strLocale; }
@ -110,7 +113,7 @@ public:
// domains are searched in the last to first order, i.e. catalogs
// added later override those added before.
const wxMB2WXbuf GetString(const wxChar *szOrigString,
const wxChar *szDomain = (const wxChar *) NULL) const;
const wxChar *szDomain = (const wxChar *) NULL) const;
// Returns the current short name for the locale
const wxString& GetName() const { return m_strShort; }
@ -126,7 +129,7 @@ private:
wxLocale *m_pOldLocale; // previous wxLocale
wxMsgCatalog *m_pMsgCat; // pointer to linked list of catalogs
bool m_bConvertEncoding;
};

View file

@ -1,12 +1,12 @@
/////////////////////////////////////////////////////////////////////////////
// Name: minifram.h
// Name: wx/msw/minifram.h
// Purpose: wxMiniFrame class
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_MINIFRAM_H_
@ -20,55 +20,51 @@
#ifdef __WIN32__
class WXDLLEXPORT wxMiniFrame: public wxFrame {
DECLARE_DYNAMIC_CLASS(wxMiniFrame)
class WXDLLEXPORT wxMiniFrame : public wxFrame
{
public:
inline wxMiniFrame(void) {}
inline wxMiniFrame(wxWindow *parent,
wxWindowID id,
const wxString& title,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxDEFAULT_FRAME_STYLE,
const wxString& name = wxFrameNameStr)
wxMiniFrame() { }
wxMiniFrame(wxWindow *parent,
wxWindowID id,
const wxString& title,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxCAPTION | wxCLIP_CHILDREN | wxRESIZE_BORDER,
const wxString& name = wxFrameNameStr)
{
Create(parent, id, title, pos, size, style | wxFRAME_TOOL_WINDOW | wxFRAME_FLOAT_ON_PARENT, name);
}
protected:
DECLARE_DYNAMIC_CLASS(wxMiniFrame)
};
#else
class WXDLLEXPORT wxMiniFrame: public wxFrame {
DECLARE_DYNAMIC_CLASS(wxMiniFrame)
#else // !Win32
class WXDLLEXPORT wxMiniFrame : public wxFrame
{
public:
inline wxMiniFrame(void) {}
inline wxMiniFrame(wxWindow *parent,
wxWindowID id,
const wxString& title,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxDEFAULT_FRAME_STYLE|wxTINY_CAPTION_HORIZ,
const wxString& name = wxFrameNameStr)
wxMiniFrame() { }
wxMiniFrame(wxWindow *parent,
wxWindowID id,
const wxString& title,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxDEFAULT_FRAME_STYLE|wxTINY_CAPTION_HORIZ,
const wxString& name = wxFrameNameStr)
{
Create(parent, id, title, pos, size, style, name);
}
~wxMiniFrame(void);
virtual ~wxMiniFrame();
long MSWDefWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam);
virtual long MSWDefWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam);
protected:
DECLARE_DYNAMIC_CLASS(wxMiniFrame)
};
#endif
#endif // Win32/!Win32
#endif
// _WX_MINIFRAM_H_

View file

@ -100,8 +100,15 @@ public:
#endif // WXWIN_COMPATIBILITY
protected:
// subclass one radio button
void SubclassRadioButton(WXHWND hWndBtn);
// get the max size of radio buttons
wxSize GetMaxButtonSize() const;
// get the total size occupied by the radio box buttons
wxSize GetTotalButtonSize(const wxSize& sizeBtn) const;
WXHWND * m_radioButtons;
int m_majorDim;
int * m_radioWidth; // for bitmaps
@ -114,6 +121,7 @@ protected:
virtual void DoSetSize(int x, int y,
int width, int height,
int sizeFlags = wxSIZE_AUTO);
virtual wxSize DoGetBestSize() const;
};
#endif

View file

@ -6,7 +6,7 @@
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_SETUP_H_
@ -49,6 +49,22 @@
// Recommended setting: 0
#define wxICON_IS_BITMAP 0
// Define as 1 for font size to be backward compatible to 1.63 and earlier.
// 1.64 and later define point sizes to be compatible with Windows.
//
// Default is 0
//
// Recommended setting: 0
#define wxFONT_SIZE_COMPATIBILITY 0
// Set to 0 for accurate dialog units, else 1 to be as per 2.1.16 and before.
// If migrating between versions, your dialogs may seem to shrink.
//
// Default is 1
//
// Recommended setting: 0 (the new calculations are more correct!)
#define wxDIALOG_UNIT_COMPATIBILITY 1
// ----------------------------------------------------------------------------
// debugging settings
// ----------------------------------------------------------------------------
@ -240,14 +256,15 @@
// If wxUSE_DIALUP_MANAGER is 1, compile in wxDialUpManager class which allows
// to connect/disconnect from the network and be notified whenever the dial-up
// network connection is established/terminated.
// network connection is established/terminated. Requires wxUSE_DYNLIB_CLASS.
//
// Default is 1.
//
// Recommended setting: 1
#define wxUSE_DIALUP_MANAGER 1
// Compile in wxLibrary class for run-time DLL loading and function calling
// Compile in wxLibrary class for run-time DLL loading and function calling.
// Required by wxUSE_DIALUP_MANAGER.
//
// This setting is for Win32 only
//
@ -259,33 +276,58 @@
// Set to 1 to use socket classes
#define wxUSE_SOCKETS 1
// Set to 1 to enable virtual file systems
// (needed by wxHTML)
#if wxUSE_GUI
// Set to 1 to enable virtual file systems (required by wxHTML)
#define wxUSE_FILESYSTEM 1
// Set to 1 to enable virtual ZIP filesystem (requires wxUSE_FILESYSTEM)
#define wxUSE_FS_ZIP 1
// Set to 1 to enable virtual Internet filesystem (requires wxUSE_FILESYSTEM)
#define wxUSE_FS_INET 1
// input stream for reading from zip archives
// Set to 1 to compile wxZipInput/OutputStream classes.
#define wxUSE_ZIPSTREAM 1
#define wxUSE_APPLE_IEEE 1
// if enabled, the float codec written by Apple
// will be used to write, in a portable way,
// float on the disk
// Set to 1 to compile wxZlibInput/OutputStream classes. Also required by
// wxUSE_LIBPNG.
#define wxUSE_ZLIB 1
// use wxFile class - required by i18n code, wxConfig and others - recommended
#else // !wxUSE_GUI
// although it is possible to compile all of those in wxBase, this is not done
// by default
#define wxUSE_FILESYSTEM 0
#define wxUSE_FS_ZIP 0
#define wxUSE_FS_INET 0
#define wxUSE_ZIPSTREAM 0
#define wxUSE_ZLIB 0
#endif // wxUSE_GUI/!wxUSE_GUI
// If enabled, the code written by Apple will be used to write, in a portable
// way, float on the disk. See extended.c for the license which is different
// from wxWindows one.
//
// Default is 1.
//
// Recommended setting: 1 unless you don't like the license terms (unlikely)
#define wxUSE_APPLE_IEEE 1
// Use wxFile class.
//
// Default is 1.
//
// Recommended setting: 1 (highly recommended, required i18n code, wxConfig...)
#define wxUSE_FILE 1
// use wxTextFile class: requires wxFile, required by wxConfig
// use wxTextFile class: requires wxFile, required by wxFileConfig
#define wxUSE_TEXTFILE 1
// i18n support: _() macro, wxLocale class. Requires wxFile
// i18n support: _() macro, wxLocale class. Requires wxTextFile.
#define wxUSE_INTL 1
#define wxUSE_DYNAMIC_CLASSES 1
// If 1, enables provision of run-time type information.
// NOW MANDATORY: don't change.
// ----------------------------------------------------------------------------
// Optional controls
// ----------------------------------------------------------------------------
@ -323,7 +365,7 @@
// of disabled controls)
#define wxUSE_CARET 1
#define wxUSE_CHECKBOX 1
#define wxUSE_CHECKLISTBOX 1
#define wxUSE_CHECKLISTBOX 1 // requires wxUSE_OWNER_DRAWN
#define wxUSE_CHOICE 1
#define wxUSE_COMBOBOX 1
#define wxUSE_GAUGE 1
@ -359,7 +401,7 @@
// Default is 1 for both options.
//
// Recommended setting: 1 for wxUSE_NEW_GRID, 0 if you have an old code using
// wxGrid and 100% backwards compatible (with all old wxGrid quirks) is
// wxGrid and 100% backwards compatibality (with all old wxGrid quirks) is
// essential.
//
// WIN16/BC++ resets wxUSE_NEW_GRID to 0 because it exceeds the data limit.
@ -504,42 +546,41 @@
// Use .wxr resource mechanism (requires PrologIO library)
// ----------------------------------------------------------------------------
// Postscript support settings
// postscript support settings
// ----------------------------------------------------------------------------
// Set to 1 for PostScript device context.
#define wxUSE_POSTSCRIPT 0
// 0 for no PostScript device context
#define wxUSE_AFM_FOR_POSTSCRIPT 0
// 1 to use font metric files in GetTextExtent
// Set to 1 to use font metric files in GetTextExtent
#define wxUSE_AFM_FOR_POSTSCRIPT 0
// Set to 0 to disable PostScript print/preview architecture code under Windows
// (just use Windows printing).
#define wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW 1
// Set to 0 to disable PostScript print/preview architecture code
// under Windows (just use Windows printing).
// ----------------------------------------------------------------------------
// database classes
// ----------------------------------------------------------------------------
// Define 1 to use ODBC classes
#define wxUSE_ODBC 0
// Define 1 to use ODBC classes
// For backward compatibility reasons, this parameter now only controls the
// default scrolling method used by cursors. This default behavior can be
// overriden by setting the second param of wxDB::wxDbGetConnection() or
// wxDb() constructor to indicate whether the connection (and any wxDbTable()s
// that use the connection) should support forward only scrolling of cursors,
// or both forward and backward support for backward scrolling cursors is
// dependent on the data source as well as the ODBC driver being used.
#define wxODBC_FWD_ONLY_CURSORS 1
// For backward compatibility reasons, this parameter now only
// controls the default scrolling method used by cursors. This
// default behavior can be overriden by setting the second param
// of wxDB::GetDbConnection() to indicate whether the connection
// (and any wxTable()s that use the connection) should support
// forward only scrolling of cursors, or both forward and backward
// Support for backward scrolling cursors is dependent on the
// data source as well as the ODBC driver being used.
// Default is 0. Set to 1 to use the deprecated classes, enum types, function,
// member variables. With a setting of 1, full backward compatability with the
// 2.0.x release is possible. It is STRONGLY recommended that this be set to 0,
// as future development will be done only on the non-deprecated
// functions/classes/member variables/etc.
#define wxODBC_BACKWARD_COMPATABILITY 0
// Default is 0. Set to 1 to use the deprecated classes, enum
// types, function, member variables. With a setting of 1, full
// backward compatability with the 2.0.x release is possible.
// It is STRONGLY recommended that this be set to 0, as
// future development will be done only on the non-deprecated
// functions/classes/member variables/etc.
// ----------------------------------------------------------------------------
// other compiler (mis)features
@ -565,66 +606,120 @@
// image format support
// ----------------------------------------------------------------------------
#define wxUSE_ZLIB 1
// Use zlib for compression in streams and PNG code
// wxImage supports many different image formats which can be configured at
// compile-time. BMP is always supported, others are optional and can be safely
// disabled if you don't plan to use images in such format sometimes saving
// substantial amount of code in the final library.
//
// Some formats require an extra library which is included in wxWin sources
// which is mentioned if it is the case.
// Set to 1 for PNG format support (requires libpng). Also requires wxUSE_ZLIB.
#define wxUSE_LIBPNG 1
// Use PNG bitmap/image code
// Set to 1 for JPEG format support (requires libjpeg)
#define wxUSE_LIBJPEG 1
// Use JPEG bitmap/image code
// Set to 1 for TIFF format support (requires libtiff)
#define wxUSE_LIBTIFF 1
// Use TIFF bitmap/image code
// Set to 1 for GIF format support
#define wxUSE_GIF 1
// Use GIF bitmap/image code
// Set to 1 for PNM format support
#define wxUSE_PNM 1
// Use PNM bitmap/image code
// Set to 1 for PCX format support
#define wxUSE_PCX 1
// Use PCX bitmap/image code
// ----------------------------------------------------------------------------
// Windows-only settings
// ----------------------------------------------------------------------------
// Make settings compatible with MFC
// Set this to 1 if you want to use wxWindows and MFC in the same program. This
// will override some other settings (see below)
//
// Default is 0.
//
// Recommended setting: 0 unless you really have to use MFC
#define wxUSE_MFC 0
// required for drag-and-drop, clipboard, OLE Automation
// Set this to 1 for generic OLE support: this is required for drag-and-drop,
// clipboard, OLE Automation. Only set it to 0 if your compiler is very old and
// can't compile/doesn't have the OLE headers.
//
// Default is 1.
//
// Recommended setting: 1
#define wxUSE_OLE 1
// Set this to 1 to use Microsoft CTL3D library for "3D-look" under Win16 or NT
// 3.x. This setting is ignored under Win9x and NT 4.0+.
//
// Default is 0 for (most) Win32 (systems), 1 for Win16
//
// Recommended setting: same as default
#if defined(__WIN95__)
#define wxUSE_CTL3D 0
#else
// Define 1 to use Microsoft CTL3D library.
#define wxUSE_CTL3D 1
#endif
// can we use RICHEDIT control?
// Define as 1 to use Microsoft's ItsyBitsy small title bar library, for
// wxMiniFrame. This setting is only used for Win3.1; Win9x and NT use native
// miniframes support instead.
//
// Default is 0 for (most) Win32 (systems), 1 for Win16
//
// Recommended setting: same as default
#if defined(__WIN95__)
#define wxUSE_ITSY_BITSY 0
#else
#define wxUSE_ITSY_BITSY 1
#endif
// Set this to 1 to use RICHEDIT controls for wxTextCtrl with style wxTE_RICH
// which allows to put more than ~32Kb of text in it even under Win9x (NT
// doesn't have such limitation).
//
// Default is 1 for compilers which support it
//
// Recommended setting: 1, only set it to 0 if your compiler doesn't have
// or can't compile <richedit.h>
#if defined(__WIN95__) && !defined(__TWIN32__) && !defined(__GNUWIN32_OLD__)
#define wxUSE_RICHEDIT 1
#else
#define wxUSE_RICHEDIT 0
#endif
#define wxUSE_ITSY_BITSY 1
// Define 1 to use Microsoft's ItsyBitsy
// small title bar library, for wxMiniFrame.
// This setting is only used for Win3.1;
// Win9x and NT use native miniframes
// support instead.
#define wxUSE_BITMAP_MESSAGE 1
// Define 1 to use bitmap messages.
#define wxFONT_SIZE_COMPATIBILITY 0
// Define 1 for font size to be backward compatible
// to 1.63 and earlier. 1.64 and later define point
// sizes to be compatible with Windows.
#define wxDIALOG_UNIT_COMPATIBILITY 0
// Set to 0 for accurate dialog units, else
// 1 to be as per 2.1.16 and before. If migrating
// between versions, your dialogs may seem to shrink.
#define wxUSE_PENWINDOWS 0
// Set to 1 to use PenWindows
// Set this to 1 to enable support for the owner-drawn menu and listboxes. This
// is required by wxUSE_CHECKLISTBOX.
//
// Default is 1.
//
// Recommended setting: 1, set to 0 for a small library size reduction
#define wxUSE_OWNER_DRAWN 1
#define wxUSE_OWNER_DRAWN 1
// Owner-drawn menus and listboxes
// ----------------------------------------------------------------------------
// obsolete settings
// ----------------------------------------------------------------------------
// NB: all settings in this section are obsolete and should not be used/changed
// at all, they will disappear
// Set to 1 to use PenWindows
#define wxUSE_PENWINDOWS 0
// Define 1 to use bitmap messages.
#define wxUSE_BITMAP_MESSAGE 1
// If 1, enables provision of run-time type information.
// NOW MANDATORY: don't change.
#define wxUSE_DYNAMIC_CLASSES 1
// ----------------------------------------------------------------------------
// disable the settings which don't work for some compilers
// ----------------------------------------------------------------------------
#if (defined(__MINGW32__) || defined(__CYGWIN__)) && ((__GNUC__>2) ||((__GNUC__==2) && (__GNUC_MINOR__>=95)))
#ifndef wxUSE_NORLANDER_HEADERS
@ -632,10 +727,6 @@
#endif
#endif
// ----------------------------------------------------------------------------
// disable the settings which don't work for some compilers
// ----------------------------------------------------------------------------
#if defined(__GNUWIN32__)
// These don't work as expected for mingw32 and cygwin32
#undef wxUSE_MEMORY_TRACING
@ -746,7 +837,7 @@
#define wxUSE_MS_HTML_HELP 0
#endif
// wxUSE_DBEUG_NEW_ALWAYS = 1 not compatible with BC++ in DLL mode
// wxUSE_DEBUG_NEW_ALWAYS = 1 not compatible with BC++ in DLL mode
#if defined(__BORLANDC__) && (defined(WXMAKINGDLL) || defined(WXUSINGDLL))
#undef wxUSE_DEBUG_NEW_ALWAYS
#define wxUSE_DEBUG_NEW_ALWAYS 0
@ -811,6 +902,17 @@
#endif // Win16
// ----------------------------------------------------------------------------
// undef the things which don't make sense for wxBase build
// ----------------------------------------------------------------------------
#if !wxUSE_GUI
#undef wxUSE_HTML
#define wxUSE_HTML 0
#endif // !wxUSE_GUI
// ----------------------------------------------------------------------------
// check the settings consistency: do it here to abort compilation immediately
// and not almost in the very end when the relevant file fails to compile and

View file

@ -221,6 +221,16 @@ public:
// toolbar construction
// --------------------
// the most commonly used version of AddTool()
wxToolBarToolBase *AddTool(int id,
const wxBitmap& bitmap,
const wxString& shortHelpString = wxEmptyString,
const wxString& longHelpString = wxEmptyString)
{
return AddTool(id, bitmap, wxNullBitmap, FALSE, NULL,
shortHelpString, longHelpString);
}
// If pushedBitmap is NULL, a reversed version of bitmap is created and
// used as the pushed/toggled image. If toggle is TRUE, the button toggles
// between the two states.

View file

@ -68,8 +68,6 @@ EXPORTS
RemoveAt__14wxArrayOptionsFUi
;wxArrayParams::Insert(const wxCmdLineParam&,unsigned int)
Insert__13wxArrayParamsFRC14wxCmdLineParamUi
;wxArrayOptions::Empty()
Empty__14wxArrayOptionsFv
;wxCmdLineParserData::wxCmdLineParserData()
__ct__19wxCmdLineParserDataFv
;wxCmdLineParser::SetCmdLine(const wxString&)
@ -84,6 +82,8 @@ EXPORTS
Insert__14wxArrayOptionsFRC15wxCmdLineOptionUi
;wxArrayParams::Add(const wxCmdLineParam&)
Add__13wxArrayParamsFRC14wxCmdLineParam
;wxArrayParams::DoEmpty()
DoEmpty__13wxArrayParamsFv
;wxArrayOptions::~wxArrayOptions()
__dt__14wxArrayOptionsFv
;wxCmdLineParser::Usage()
@ -106,12 +106,12 @@ EXPORTS
__dt__15wxCmdLineParserFv
;wxArrayParams::~wxArrayParams()
__dt__13wxArrayParamsFv
;wxArrayParams::Empty()
Empty__13wxArrayParamsFv
;wxArrayParams::operator=(const wxArrayParams&)
__as__13wxArrayParamsFRC13wxArrayParams
;wxCmdLineParser::AddOption(const wxString&,const wxString&,const wxString&,wxCmdLineParamType,int)
AddOption__15wxCmdLineParserFRC8wxStringN2118wxCmdLineParamTypei
;wxArrayOptions::DoEmpty()
DoEmpty__14wxArrayOptionsFv
;wxCmdLineParser::GetParamCount() const
GetParamCount__15wxCmdLineParserCFv
;wxArrayOptions::DoCopy(const wxArrayOptions&)
@ -339,6 +339,8 @@ EXPORTS
GetDays__10wxTimeSpanCFv
;wxDateTime::GetCurrentMonth(wxDateTime::Calendar)
GetCurrentMonth__10wxDateTimeFQ2_10wxDateTime8Calendar
;wxDateTimeArray::DoEmpty()
DoEmpty__15wxDateTimeArrayFv
;wxDateTime::Add(const wxTimeSpan&) const
Add__10wxDateTimeCFRC10wxTimeSpan
;wxDateTime::SetMinute(unsigned short)
@ -379,6 +381,8 @@ EXPORTS
GetHours__10wxTimeSpanCFv
;wxDateTime::GetCurrentYear(wxDateTime::Calendar)
GetCurrentYear__10wxDateTimeFQ2_10wxDateTime8Calendar
;wxDateSpan::Add(const wxDateSpan&)
Add__10wxDateSpanFRC10wxDateSpan
;wxDateTime::SetDay(unsigned short)
SetDay__10wxDateTimeFUs
;wxDateTime::SetHour(unsigned short)
@ -447,8 +451,8 @@ EXPORTS
GetNumberOfDays__10wxDateTimeFiQ2_10wxDateTime8Calendar
;wxDateTime::GetCountry()
GetCountry__10wxDateTimeFv
;wxDateTimeArray::Empty()
Empty__15wxDateTimeArrayFv
;wxDateSpan::Add(const wxDateSpan&) const
Add__10wxDateSpanCFRC10wxDateSpan
;wxDateTime::ParseRfc822Date(const char*)
ParseRfc822Date__10wxDateTimeFPCc
;wxDateTime::ParseTime(const char*)
@ -486,8 +490,12 @@ EXPORTS
__apl__10wxDateTimeFRC10wxTimeSpan
;wxDateTime::operator-=(const wxDateSpan&)
__ami__10wxDateTimeFRC10wxDateSpan
;wxDateSpan::operator-=(const wxDateSpan&)
__ami__10wxDateSpanFRC10wxDateSpan
;wxTimeSpan::Subtract(const wxTimeSpan&) const
Subtract__10wxTimeSpanCFRC10wxTimeSpan
;wxDateSpan::Subtract(const wxDateSpan&) const
Subtract__10wxDateSpanCFRC10wxDateSpan
;wxDateTime::SetToCurrent()
SetToCurrent__10wxDateTimeFv
;wxDateSpan::Negate() const
@ -547,10 +555,14 @@ EXPORTS
__apl__10wxDateSpanFRC10wxDateSpan
;wxDateTime::operator-=(const wxTimeSpan&)
__ami__10wxDateTimeFRC10wxTimeSpan
;wxDateTime::UNow()
UNow__10wxDateTimeFv
;wxDateTime::Today()
Today__10wxDateTimeFv
;wxDateTime::Subtract(const wxTimeSpan&) const
Subtract__10wxDateTimeCFRC10wxTimeSpan
;wxDateSpan::Subtract(const wxDateSpan&)
Subtract__10wxDateSpanFRC10wxDateSpan
;wxDateTime::IsEqualUpTo(const wxDateTime&,const wxTimeSpan&) const
IsEqualUpTo__10wxDateTimeCFRC10wxDateTimeRC10wxTimeSpan
;wxDateTime::GetWeekDay(wxDateTime::WeekDay,int,wxDateTime::Month,int) const
@ -565,12 +577,12 @@ EXPORTS
Add__10wxDateTimeFRC10wxDateSpan
;wxTimeSpan::Abs() const
Abs__10wxTimeSpanCFv
;wxTimeSpan::Format(const char*) const
Format__10wxTimeSpanCFPCc
;wxDateTime::SetToYearDay(unsigned short)
SetToYearDay__10wxDateTimeFUs
;wxDateTime::GetYearDay(unsigned short) const
GetYearDay__10wxDateTimeCFUs
;wxDateTime::SetToYearDay(unsigned short)
SetToYearDay__10wxDateTimeFUs
;wxTimeSpan::Format(const char*) const
Format__10wxTimeSpanCFPCc
;From object file: ..\common\datstrm.cpp
;PUBDEFs (Symbols available from object file):
;wxDataOutputStream::operator<<(unsigned int)
@ -2228,6 +2240,8 @@ EXPORTS
;PUBDEFs (Symbols available from object file):
;wxBMPHandler::sm_classwxBMPHandler
sm_classwxBMPHandler__12wxBMPHandler
;wxBMPHandler::SaveFile(wxImage*,wxOutputStream&,unsigned long)
SaveFile__12wxBMPHandlerFP7wxImageR14wxOutputStreamUl
;wxConstructorForwxBMPHandler()
wxConstructorForwxBMPHandler__Fv
;wxBMPHandler::LoadFile(wxImage*,wxInputStream&,unsigned long,int)
@ -3026,9 +3040,11 @@ EXPORTS
ExpandCommand__10wxFileTypeFRC8wxStringRCQ2_10wxFileType17MessageParameters
;wxMimeTypesManager::IsOfType(const wxString&,const wxString&)
IsOfType__18wxMimeTypesManagerFRC8wxStringT1
;wxArrayFileTypeInfo::DoEmpty()
DoEmpty__19wxArrayFileTypeInfoFv
wxTheMimeTypesManager
;wxArrayFileTypeInfo::~wxArrayFileTypeInfo()
__dt__19wxArrayFileTypeInfoFv
wxTheMimeTypesManager
;wxFileType::wxFileType()
__ct__10wxFileTypeFv
;wxFileType::GetIcon(wxIcon*) const
@ -3057,14 +3073,12 @@ EXPORTS
RemoveAt__19wxArrayFileTypeInfoFUi
;wxMimeTypeCmnModule::sm_classwxMimeTypeCmnModule
sm_classwxMimeTypeCmnModule__19wxMimeTypeCmnModule
;wxArrayFileTypeInfo::Empty()
Empty__19wxArrayFileTypeInfoFv
;wxMimeTypesManager::wxMimeTypesManager()
__ct__18wxMimeTypesManagerFv
;wxConstructorForwxMimeTypeCmnModule()
wxConstructorForwxMimeTypeCmnModule__Fv
;wxMimeTypesManager::~wxMimeTypesManager()
__dt__18wxMimeTypesManagerFv
;wxMimeTypesManager::wxMimeTypesManager()
__ct__18wxMimeTypesManagerFv
;wxArrayFileTypeInfo::operator=(const wxArrayFileTypeInfo&)
__as__19wxArrayFileTypeInfoFRC19wxArrayFileTypeInfo
;wxFileType::GetOpenCommand(wxString*,const wxFileType::MessageParameters&) const
@ -3294,6 +3308,8 @@ EXPORTS
__vft10wxPrintout8wxObject
;wxPrintout::HasPage(int)
HasPage__10wxPrintoutFi
;wxPrinterBase::sm_lastError
sm_lastError__13wxPrinterBase
;wxPrinterBase::sm_abortWindow
sm_abortWindow__13wxPrinterBase
;wxPrintPreviewBase::wxPrintPreviewBase(wxPrintout*,wxPrintout*,wxPrintDialogData*)
@ -3402,13 +3418,13 @@ EXPORTS
PaintPage__18wxPrintPreviewBaseFP8wxWindowR4wxDC
;From object file: ..\common\process.cpp
;PUBDEFs (Symbols available from object file):
;wxProcess::SetPipeStreams(wxInputStream*,wxOutputStream*,wxInputStream*)
SetPipeStreams__9wxProcessFP13wxInputStreamP14wxOutputStreamT1
;wxConstructorForwxProcess()
wxConstructorForwxProcess__Fv
;wxProcess::Init(wxEvtHandler*,int,unsigned long)
Init__9wxProcessFP12wxEvtHandleriUl
__vft9wxProcess8wxObject
;wxProcess::SetPipeStreams(wxInputStream*,wxOutputStream*)
SetPipeStreams__9wxProcessFP13wxInputStreamP14wxOutputStream
;wxProcess::~wxProcess()
__dt__9wxProcessFv
;wxConstructorForwxProcessEvent()
@ -4318,6 +4334,8 @@ EXPORTS
insert__8wxStringFUiRC8wxString
;operator+(const wxString&,const char*)
__pl__FRC8wxStringPCc
;wxArrayString::operator==(const wxArrayString&) const
__eq__13wxArrayStringCFRC13wxArrayString
;wxString::operator=(const wchar_t*)
__as__8wxStringFPCw
;wxString::StartsWith(const char*,wxString*) const
@ -4591,12 +4609,14 @@ EXPORTS
;wxTextInputStream::operator>>(unsigned int&)
__rs__17wxTextInputStreamFRUi
__vft18wxTextOutputStream
;wxTextInputStream::operator>>(wxString&)
__rs__17wxTextInputStreamFR8wxString
;wxTextInputStream::EatEOL(const char&)
EatEOL__17wxTextInputStreamFRCc
;wxTextInputStream::operator>>(short&)
__rs__17wxTextInputStreamFRs
;wxTextInputStream::operator>>(unsigned short&)
__rs__17wxTextInputStreamFRUs
;wxTextInputStream::operator>>(wxString&)
__rs__17wxTextInputStreamFR8wxString
;wxTextOutputStream::operator<<(const wxString&)
__ls__18wxTextOutputStreamFRC8wxString
;wxTextOutputStream::Write8(unsigned char)
@ -4749,6 +4769,8 @@ EXPORTS
wxMessageBox__FRC8wxStringT1lP8wxWindowiT5
;wxNewId()
wxNewId__Fv
;wxExecute(const wxString&,wxArrayString&,wxArrayString&)
wxExecute__FRC8wxStringR13wxArrayStringT2
;wxHexToDec(const wxString&)
wxHexToDec__FRC8wxString
;wxExecute(const wxString&,wxArrayString&)
@ -5665,6 +5687,8 @@ EXPORTS
;wxZipInputStream::OnSysRead(void*,unsigned int)
OnSysRead__16wxZipInputStreamFPvUi
__vft16wxZipInputStream12wxStreamBase
;wxZipInputStream::Eof() const
Eof__16wxZipInputStreamCFv
;From object file: ..\common\zstream.cpp
;PUBDEFs (Symbols available from object file):
;wxZlibInputStream::wxZlibInputStream(wxInputStream&)
@ -5717,6 +5741,8 @@ EXPORTS
Create__14wxCalendarCtrlFP8wxWindowiRC10wxDateTimeRC7wxPointRC6wxSizelRC8wxString
;wxCalendarCtrl::Show(unsigned long)
Show__14wxCalendarCtrlFUl
;wxCalendarEvent::sm_classwxCalendarEvent
sm_classwxCalendarEvent__15wxCalendarEvent
;wxCalendarCtrl::OnDClick(wxMouseEvent&)
OnDClick__14wxCalendarCtrlFR12wxMouseEvent
;wxCalendarCtrl::RefreshDate(const wxDateTime&)
@ -5727,6 +5753,8 @@ EXPORTS
DoSetSize__14wxCalendarCtrlFiN41
;wxMonthComboBox::GetEventTable() const
GetEventTable__15wxMonthComboBoxCFv
;wxConstructorForwxCalendarEvent()
wxConstructorForwxCalendarEvent__Fv
;wxCalendarCtrl::~wxCalendarCtrl()
__dt__14wxCalendarCtrlFv
;wxCalendarCtrl::SetHolidayAttrs()
@ -5815,6 +5843,14 @@ EXPORTS
__dt__7wxCaretFv
;wxCaretTimer::wxCaretTimer(wxCaret*)
__ct__12wxCaretTimerFP7wxCaret
;wxCaret::OnTimer()
OnTimer__7wxCaretFv
;wxCaret::Refresh()
Refresh__7wxCaretFv
;wxCaret::OnSetFocus()
OnSetFocus__7wxCaretFv
;wxCaret::OnKillFocus()
OnKillFocus__7wxCaretFv
;wxCaret::DoShow()
DoShow__7wxCaretFv
;wxCaret::DoHide()
@ -6090,14 +6126,12 @@ EXPORTS
__dt__18wxGenericDragImageFv
;wxGenericDragImage::Create(const wxIcon&,const wxCursor&,const wxPoint&)
Create__18wxGenericDragImageFRC6wxIconRC8wxCursorRC7wxPoint
;wxGenericDragImage::wxGenericDragImage()
__ct__18wxGenericDragImageFv
;wxGenericDragImage::BeginDrag(const wxPoint&,wxWindow*,wxWindow*)
BeginDrag__18wxGenericDragImageFRC7wxPointP8wxWindowT2
;wxGenericDragImage::Show()
Show__18wxGenericDragImageFv
;wxGenericDragImage::Hide()
Hide__18wxGenericDragImageFv
;wxGenericDragImage::BeginDrag(const wxPoint&,wxWindow*,wxWindow*)
BeginDrag__18wxGenericDragImageFRC7wxPointP8wxWindowT2
;wxGenericDragImage::Create(const wxTreeCtrl&,wxTreeItemId&)
Create__18wxGenericDragImageFRC10wxTreeCtrlR12wxTreeItemId
__vft18wxGenericDragImage8wxObject
@ -6113,6 +6147,12 @@ EXPORTS
Init__18wxGenericDragImageFv
;wxGenericDragImage::EndDrag()
EndDrag__18wxGenericDragImageFv
;wxGenericDragImage::UpdateBackingFromWindow(wxDC&,wxMemoryDC&,const wxRect&,const wxRect&) const
UpdateBackingFromWindow__18wxGenericDragImageCFR4wxDCR10wxMemoryDCRC6wxRectT3
;wxGenericDragImage::Create(const wxCursor&,const wxPoint&)
Create__18wxGenericDragImageFRC8wxCursorRC7wxPoint
;wxGenericDragImage::DoDrawImage(wxDC&,const wxPoint&) const
DoDrawImage__18wxGenericDragImageCFR4wxDCRC7wxPoint
;wxGenericDragImage::Create(const wxListCtrl&,long)
Create__18wxGenericDragImageFRC10wxListCtrll
;wxGenericDragImage::sm_classwxGenericDragImage
@ -6504,6 +6544,8 @@ EXPORTS
Replace__11wxImageListFiRC8wxBitmap
;wxImageList::wxImageList(int,int,unsigned long,int)
__ct__11wxImageListFiT1UlT1
;wxImageList::Create(int,int,unsigned long,int)
Create__11wxImageListFiT1UlT1
;wxImageList::~wxImageList()
__dt__11wxImageListFv
;wxImageList::GetSize(int,int&,int&) const
@ -6571,10 +6613,12 @@ EXPORTS
OnIdle__10wxListCtrlFR11wxIdleEvent
;wxListMainWindow::DeleteItem(long)
DeleteItem__16wxListMainWindowFl
;wxListItemData::SetSize(int,int)
SetSize__14wxListItemDataFiT1
;wxListLineDataArray::wxListLineDataArray(const wxListLineDataArray&)
__ct__19wxListLineDataArrayFRC19wxListLineDataArray
;wxListEvent::wxListEvent(int,int)
__ct__11wxListEventFiT1
;wxListItemData::SetSize(int,int)
SetSize__14wxListItemDataFiT1
;wxListLineData::SetItem(int,const wxListItem&)
SetItem__14wxListLineDataFiRC10wxListItem
;wxListMainWindow::SendNotify(wxListLineData*,int)
@ -6640,8 +6684,8 @@ EXPORTS
GetItemRect__16wxListMainWindowFlR6wxRect
;wxListEvent::CopyObject(wxObject&) const
CopyObject__11wxListEventCFR8wxObject
;wxListItemData::IsHit(int,int) const
IsHit__14wxListItemDataCFiT1
;wxListLineDataArray::operator=(const wxListLineDataArray&)
__as__19wxListLineDataArrayFRC19wxListLineDataArray
;wxListLineData::sm_classwxListLineData
sm_classwxListLineData__14wxListLineData
;wxListItem::sm_classwxListItem
@ -6662,6 +6706,8 @@ EXPORTS
SelectLine__16wxListMainWindowFP14wxListLineData
;wxListHeaderData::IsHit(int,int) const
IsHit__16wxListHeaderDataCFiT1
;wxListItemData::IsHit(int,int) const
IsHit__14wxListItemDataCFiT1
;wxListCtrl::InsertItem(wxListItem&)
InsertItem__10wxListCtrlFR10wxListItem
;wxListMainWindow::HitTest(int,int,int&)
@ -6734,20 +6780,24 @@ EXPORTS
OnChar__14wxListTextCtrlFR10wxKeyEvent
;wxListLineData::IsInRect(int,int,const wxRect&)
IsInRect__14wxListLineDataFiT1RC6wxRect
;wxListLineDataArray::Index(const wxListLineData&,unsigned long) const
Index__19wxListLineDataArrayCFRC14wxListLineDataUl
;wxListLineData::Hilight(unsigned long)
Hilight__14wxListLineDataFUl
;wxListCtrl::FindItem(long,const wxString&,unsigned long)
FindItem__10wxListCtrlFlRC8wxStringUl
;wxListLineData::DrawRubberBand(wxDC*,unsigned long)
DrawRubberBand__14wxListLineDataFP4wxDCUl
;wxListItemData::SetPosition(int,int)
SetPosition__14wxListItemDataFiT1
;wxListLineDataArray::RemoveAt(unsigned int)
RemoveAt__19wxListLineDataArrayFUi
;wxListHeaderData::wxListHeaderData(const wxListItem&)
__ct__16wxListHeaderDataFRC10wxListItem
;wxListHeaderData::SetWidth(int)
SetWidth__16wxListHeaderDataFi
;wxListHeaderData::SetPosition(int,int)
SetPosition__16wxListHeaderDataFiT1
;wxListItemData::SetPosition(int,int)
SetPosition__14wxListItemDataFiT1
;wxListCtrl::SetItemState(long,long,long)
SetItemState__10wxListCtrlFlN21
;wxListHeaderData::SetHeight(int)
@ -6851,10 +6901,12 @@ EXPORTS
DeleteItem__10wxListCtrlFl
;wxListLineData::AssignRect(wxRect&,const wxRect&)
AssignRect__14wxListLineDataFR6wxRectRC6wxRect
;wxListItemData::SetImage(int)
SetImage__14wxListItemDataFi
;wxListLineDataArray::DoCopy(const wxListLineDataArray&)
DoCopy__19wxListLineDataArrayFRC19wxListLineDataArray
;wxListMainWindow::UnfocusLine(wxListLineData*)
UnfocusLine__16wxListMainWindowFP14wxListLineData
;wxListItemData::SetImage(int)
SetImage__14wxListItemDataFi
;wxListCtrl::SetColumn(int,wxListItem&)
SetColumn__10wxListCtrlFiR10wxListItem
;wxListLineData::InitItems(int)
@ -6875,8 +6927,8 @@ EXPORTS
DeleteColumn__16wxListMainWindowFi
;wxListLineData::CalculateSize(wxDC*,int)
CalculateSize__14wxListLineDataFP4wxDCi
;wxListMainWindow::GetImageSize(int,int&,int&)
GetImageSize__16wxListMainWindowFiRiT2
;wxListLineDataArray::~wxListLineDataArray()
__dt__19wxListLineDataArrayFv
;wxConstructorForwxListItem()
wxConstructorForwxListItem__Fv
;wxListCtrl::~wxListCtrl()
@ -6893,6 +6945,8 @@ EXPORTS
GetSelectedItemCount__10wxListCtrlCFv
;wxListMainWindow::GetMode() const
GetMode__16wxListMainWindowCFv
;wxListMainWindow::GetImageSize(int,int&,int&)
GetImageSize__16wxListMainWindowFiRiT2
;wxListHeaderWindow::GetEventTable() const
GetEventTable__18wxListHeaderWindowCFv
;wxListCtrl::GetDropTarget() const
@ -6942,12 +6996,14 @@ EXPORTS
EnsureVisible__16wxListMainWindowFl
;wxListCtrl::EnsureVisible(long)
EnsureVisible__10wxListCtrlFl
;wxListItemData::wxListItemData(const wxListItem&)
__ct__14wxListItemDataFRC10wxListItem
;wxListLineDataArray::Add(const wxListLineData&)
Add__19wxListLineDataArrayFRC14wxListLineData
;wxListItemData::sm_classwxListItemData
sm_classwxListItemData__14wxListItemData
;wxListHeaderData::sm_classwxListHeaderData
sm_classwxListHeaderData__16wxListHeaderData
;wxListItemData::wxListItemData(const wxListItem&)
__ct__14wxListItemDataFRC10wxListItem
;wxListMainWindow::SetItem(wxListItem&)
SetItem__16wxListMainWindowFR10wxListItem
;wxListItemData::SetItem(const wxListItem&)
@ -6964,6 +7020,8 @@ EXPORTS
ScrollList__10wxListCtrlFiT1
;wxListLineData::IsHit(int,int)
IsHit__14wxListLineDataFiT1
;wxListLineDataArray::Insert(const wxListLineData&,unsigned int)
Insert__19wxListLineDataArrayFRC14wxListLineDataUi
;wxListMainWindow::InsertItem(wxListItem&)
InsertItem__16wxListMainWindowFR10wxListItem
;wxListCtrl::InsertItem(long,const wxString&,int)
@ -6982,6 +7040,8 @@ EXPORTS
FindItem__10wxListCtrlFlRC7wxPointi
;wxListMainWindow::DeleteLine(wxListLineData*)
DeleteLine__16wxListMainWindowFP14wxListLineData
;wxListLineDataArray::DoEmpty()
DoEmpty__19wxListLineDataArrayFv
;wxConstructorForwxListItemData()
wxConstructorForwxListItemData__Fv
;wxConstructorForwxListHeaderWindow()
@ -7026,6 +7086,8 @@ EXPORTS
__ct__18wxListHeaderWindowFP8wxWindowiP16wxListMainWindowRC7wxPointRC6wxSizelRC8wxString
;wxListMainWindow::wxListMainWindow(wxWindow*,int,const wxPoint&,const wxSize&,long,const wxString&)
__ct__16wxListMainWindowFP8wxWindowiRC7wxPointRC6wxSizelRC8wxString
;wxListHeaderWindow::AdjustDC(wxDC&)
AdjustDC__18wxListHeaderWindowFR4wxDC
;From object file: ..\generic\logg.cpp
;PUBDEFs (Symbols available from object file):
;wxLogDialog::wxLogDialog(wxWindow*,const wxArrayString&,const wxArrayInt&,const wxArrayLong&,const wxString&,long)
@ -7058,6 +7120,8 @@ EXPORTS
Flush__8wxLogGuiFv
;wxLogFrame::DoClose()
DoClose__10wxLogFrameFv
;wxLogDialog::CreateDetailsControls()
CreateDetailsControls__11wxLogDialogFv
;wxLogGui::DoLog(unsigned long,const char*,long)
DoLog__8wxLogGuiFUlPCcl
;wxLogDialog::OnListSelect(wxListEvent&)
@ -7070,6 +7134,8 @@ EXPORTS
__vft11wxLogWindow5wxLog
;wxLogTextCtrl::DoLogString(const char*,long)
DoLogString__13wxLogTextCtrlFPCcl
;wxLogDialog::OnSave(wxCommandEvent&)
OnSave__11wxLogDialogFR14wxCommandEvent
;wxLogFrame::OnCloseWindow(wxCloseEvent&)
OnCloseWindow__10wxLogFrameFR12wxCloseEvent
;wxLogWindow::DoLogString(const char*,long)
@ -7153,6 +7219,8 @@ EXPORTS
SetFocus__7wxPanelFv
;wxPanel::SetFocusToChild()
SetFocusToChild__7wxPanelFv
;wxSetFocusToChild(wxWindow*,wxWindow**)
wxSetFocusToChild__FP8wxWindowPP8wxWindow
;From object file: ..\generic\plot.cpp
;PUBDEFs (Symbols available from object file):
;wxPlotXAxisArea::OnMouse(wxMouseEvent&)
@ -7231,12 +7299,10 @@ EXPORTS
GetAt__12wxPlotWindowFUi
;wxPlotWindow::Delete(wxPlotOnOffCurve*)
Delete__12wxPlotWindowFP16wxPlotOnOffCurve
;wxArrayPlotOnOff::Empty()
Empty__16wxArrayPlotOnOffFv
;wxConstructorForwxPlotYAxisArea()
wxConstructorForwxPlotYAxisArea__Fv
;wxArrayPlotOnOff::wxArrayPlotOnOff(const wxArrayPlotOnOff&)
__ct__16wxArrayPlotOnOffFRC16wxArrayPlotOnOff
;wxConstructorForwxPlotYAxisArea()
wxConstructorForwxPlotYAxisArea__Fv
;wxPlotWindow::RedrawXAxis()
RedrawXAxis__12wxPlotWindowFv
;wxPlotWindow::GetOnOffCurveCount()
@ -7267,12 +7333,14 @@ EXPORTS
sm_classwxPlotXAxisArea__15wxPlotXAxisArea
;wxPlotWindow::Add(wxPlotOnOffCurve*)
Add__12wxPlotWindowFP16wxPlotOnOffCurve
;wxPlotCurve::wxPlotCurve(int,double,double)
__ct__11wxPlotCurveFidT2
;wxArrayPlotOnOff::DoEmpty()
DoEmpty__16wxArrayPlotOnOffFv
;wxConstructorForwxPlotXAxisArea()
wxConstructorForwxPlotXAxisArea__Fv
;wxPlotWindow::~wxPlotWindow()
__dt__12wxPlotWindowFv
;wxPlotCurve::wxPlotCurve(int,double,double)
__ct__11wxPlotCurveFidT2
;wxPlotXAxisArea::GetEventTable() const
GetEventTable__15wxPlotXAxisAreaCFv
;wxPlotArea::GetEventTable() const
@ -8545,8 +8613,8 @@ EXPORTS
OnCompareItems__10wxTreeCtrlFRC12wxTreeItemIdT1
;wxTreeCtrl::CalculateLevel(wxGenericTreeItem*,wxDC&,int,int&)
CalculateLevel__10wxTreeCtrlFP17wxGenericTreeItemR4wxDCiRi
;wxArrayTreeItemIds::Empty()
Empty__18wxArrayTreeItemIdsFv
;wxTreeCtrl::OnRenameAccept()
OnRenameAccept__10wxTreeCtrlFv
;wxConstructorForwxTreeEvent()
wxConstructorForwxTreeEvent__Fv
;wxConstructorForwxTreeCtrl()
@ -8557,8 +8625,6 @@ EXPORTS
SetItemTextColour__10wxTreeCtrlFRC12wxTreeItemIdRC8wxColour
;wxTreeCtrl::SetItemBackgroundColour(const wxTreeItemId&,const wxColour&)
SetItemBackgroundColour__10wxTreeCtrlFRC12wxTreeItemIdRC8wxColour
;wxTreeCtrl::OnRenameAccept()
OnRenameAccept__10wxTreeCtrlFv
;wxTreeCtrl::GetStateImageList() const
GetStateImageList__10wxTreeCtrlCFv
;wxTreeCtrl::GetCount() const
@ -8715,10 +8781,12 @@ EXPORTS
PaintLevel__10wxTreeCtrlFP17wxGenericTreeItemR4wxDCiRi
;wxTreeCtrl::AddRoot(const wxString&,int,int,wxTreeItemData*)
AddRoot__10wxTreeCtrlFRC8wxStringiT2P14wxTreeItemData
;wxTreeCtrl::SetItemImage(const wxTreeItemId&,int,wxTreeItemIcon)
SetItemImage__10wxTreeCtrlFRC12wxTreeItemIdi14wxTreeItemIcon
;wxArrayTreeItemIds::DoEmpty()
DoEmpty__18wxArrayTreeItemIdsFv
;wxArrayTreeItemIds::~wxArrayTreeItemIds()
__dt__18wxArrayTreeItemIdsFv
;wxTreeCtrl::SetItemImage(const wxTreeItemId&,int,wxTreeItemIcon)
SetItemImage__10wxTreeCtrlFRC12wxTreeItemIdi14wxTreeItemIcon
;wxTreeCtrl::SelectItem(const wxTreeItemId&,unsigned long,unsigned long)
SelectItem__10wxTreeCtrlFRC12wxTreeItemIdUlT2
;wxGenericTreeItem::Reset()
@ -8849,8 +8917,8 @@ EXPORTS
__as__18wxHtmlBookRecArrayFRC18wxHtmlBookRecArray
;HP_TagHandler::WriteOut(wxHtmlContentsItem*&,int&)
WriteOut__13HP_TagHandlerFRP18wxHtmlContentsItemRi
;wxHtmlBookRecArray::Empty()
Empty__18wxHtmlBookRecArrayFv
;wxHtmlBookRecArray::DoEmpty()
DoEmpty__18wxHtmlBookRecArrayFv
;wxHtmlBookRecArray::Add(const wxHtmlBookRecord&)
Add__18wxHtmlBookRecArrayFRC16wxHtmlBookRecord
;wxHtmlHelpData::SaveCachedBook(wxHtmlBookRecord*,wxOutputStream*)
@ -9146,8 +9214,8 @@ EXPORTS
DoCopy__16HtmlHistoryArrayFRC16HtmlHistoryArray
;HtmlHistoryArray::Add(const HtmlHistoryItem&)
Add__16HtmlHistoryArrayFRC15HtmlHistoryItem
;HtmlHistoryArray::Empty()
Empty__16HtmlHistoryArrayFv
;HtmlHistoryArray::DoEmpty()
DoEmpty__16HtmlHistoryArrayFv
;wxConstructorForwxHtmlWinModule()
wxConstructorForwxHtmlWinModule__Fv
;wxHtmlWindow::HistoryClear()
@ -9325,14 +9393,14 @@ EXPORTS
__ct__22wxHtmlImageMapAreaCellFQ2_22wxHtmlImageMapAreaCell8celltypeR8wxStringd
;wxHtmlImageMapAreaCell::GetLink(int,int) const
GetLink__22wxHtmlImageMapAreaCellCFiT1
;CoordArray::Empty()
Empty__10CoordArrayFv
;wxHtmlImageMapCell::Find(int,const void*) const
Find__18wxHtmlImageMapCellCFiPCv
;HTML_ModuleImage::sm_classHTML_ModuleImage
sm_classHTML_ModuleImage__16HTML_ModuleImage
;_link_dummy_func_m_image()
_link_dummy_func_m_image__Fv
;CoordArray::DoEmpty()
DoEmpty__10CoordArrayFv
;wxHtmlImageCell::wxHtmlImageCell(wxFSFile*,int,int,double,int,wxString)
__ct__15wxHtmlImageCellFP8wxFSFileiT2dT28wxString
__vft18wxHtmlImageMapCell8wxObject
@ -9529,13 +9597,11 @@ EXPORTS
wxTheApp
;wxApp::sm_classwxApp
sm_classwxApp__5wxApp
;wxMsgArray::Empty()
Empty__10wxMsgArrayFv
;wxConstructorForwxApp()
wxConstructorForwxApp__Fv
;wxWakeUpIdle()
wxWakeUpIdle__Fv
wxSTD_MDICHILDFRAME_ICON
;wxConstructorForwxApp()
wxConstructorForwxApp__Fv
vHabmain
;wxApp::~wxApp()
__dt__5wxAppFv
@ -9573,8 +9639,6 @@ EXPORTS
DoCopy__10wxMsgArrayFRC10wxMsgArray
;wxMsgArray::operator=(const wxMsgArray&)
__as__10wxMsgArrayFRC10wxMsgArray
;wxApp::GetEventTable() const
GetEventTable__5wxAppCFv
;wxYield()
wxYield__Fv
wxSTD_FRAME_ICON
@ -9585,6 +9649,10 @@ EXPORTS
MainLoop__5wxAppFv
;wxApp::Initialized()
Initialized__5wxAppFv
;wxApp::GetEventTable() const
GetEventTable__5wxAppCFv
;wxMsgArray::DoEmpty()
DoEmpty__10wxMsgArrayFv
wxFrameClassNameNoRedraw
;wxSetInstance(unsigned long)
wxSetInstance__FUl
@ -10068,10 +10136,10 @@ EXPORTS
sm_classwxCursor__8wxCursor
;wxCursor::FreeResource(unsigned long)
FreeResource__8wxCursorFUl
;wxCursor::~wxCursor()
__dt__8wxCursorFv
;wxSetCursor(const wxCursor&)
wxSetCursor__FRC8wxCursor
;wxCursor::~wxCursor()
__dt__8wxCursorFv
;wxCursor::wxCursor(const char*,int,int,int,int,const char*)
__ct__8wxCursorFPCciN32T1
__vft15wxCursorRefData15wxObjectRefData
@ -10132,13 +10200,13 @@ EXPORTS
wxITALIC_FONT
wxGREY_BRUSH
wxWHITE
wxHOURGLASS_CURSOR
wxBLACK_PEN
wxScrollBarNameStr
wxSTANDARD_CURSOR
wxMessageBoxCaptionStr
wxHOURGLASS_CURSOR
wxComboBoxNameStr
wxCROSS_CURSOR
wxBLACK_PEN
wxTopLevelWindows
wxTRANSPARENT_BRUSH
wxWHITE_BRUSH
@ -10407,6 +10475,8 @@ EXPORTS
RemoveAt__13wxArrayDCInfoFUi
;wxPaintDC::FindInCache(unsigned int*) const
FindInCache__9wxPaintDCCFPUi
;wxArrayDCInfo::DoEmpty()
DoEmpty__13wxArrayDCInfoFv
;wxWindowDC::~wxWindowDC()
__dt__10wxWindowDCFv
;wxClientDC::~wxClientDC()
@ -10423,8 +10493,6 @@ EXPORTS
wxConstructorForwxClientDC__Fv
;wxWindowDC::wxWindowDC()
__ct__10wxWindowDCFv
;wxArrayDCInfo::Empty()
Empty__13wxArrayDCInfoFv
;wxArrayDCInfo::wxArrayDCInfo(const wxArrayDCInfo&)
__ct__13wxArrayDCInfoFRC13wxArrayDCInfo
;wxWindowDC::sm_classwxWindowDC

View file

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: wxWindows-2.2\n"
"POT-Creation-Date: 2000-07-01 14:41+0200\n"
"POT-Creation-Date: 2000-07-09 00:08+0200\n"
"PO-Revision-Date: 2000-06-17 19:23+0200\n"
"Last-Translator: Vaclav Slavik <v.slavik@volny.cz>\n"
"Language-Team: wxWindows Team <wx-devel@wxwindows.org>\n"
@ -77,20 +77,23 @@ msgstr "#define %s mus
msgid "%i of %i"
msgstr "%i z %i"
#: ../src/common/cmdline.cpp:727
#: ../src/common/cmdline.cpp:735
#, c-format
msgid "%s (or %s)"
msgstr "%s (nebo %s)"
#: ../src/generic/logg.cpp:239
#, c-format
msgid "%s Error"
msgstr "%s - chyba"
#: ../src/generic/logg.cpp:247
#, c-format
msgid "%s Information"
msgstr "%s - informace"
#: ../src/generic/logg.cpp:243
#, c-format
msgid "%s Warning"
msgstr "%s - varování"
@ -173,7 +176,7 @@ msgstr "'%s' obsahuje p
msgid "'%s' is invalid"
msgstr "'%s' je neplatný"
#: ../src/common/cmdline.cpp:649
#: ../src/common/cmdline.cpp:657
#, c-format
msgid "'%s' is not a correct numeric value for option '%s'."
msgstr "'%s' není správná èíselná hodnota pro volbu '%s'."
@ -269,7 +272,7 @@ msgstr "<ADR>"
#: ../src/generic/filedlgg.cpp:323
msgid "<DIR> "
msgstr "<ADR >"
msgstr "<ADR> "
#: ../src/generic/filedlgg.cpp:357
msgid "<LINK>"
@ -331,7 +334,7 @@ msgstr "ABCDEFGabcdefg12345"
msgid "Add current page to bookmarks"
msgstr "Pøidá tuto stránku k zálo¾kám"
#: ../src/generic/colrdlgg.cpp:272
#: ../src/generic/colrdlgg.cpp:269
msgid "Add to custom colours"
msgstr "Pøidat k u¾ivatelským barvám"
@ -660,7 +663,7 @@ msgstr "Nemohu nastavit prioritu vl
msgid "Can't set value of '%s'"
msgstr "Nemohu nastavit hodnotu '%s'"
#: ../src/common/dlgcmn.cpp:148 ../src/common/prntbase.cpp:107
#: ../src/common/dlgcmn.cpp:148 ../src/common/prntbase.cpp:109
#: ../src/generic/dcpsg.cpp:2241 ../src/generic/dirdlgg.cpp:424
#: ../src/generic/filedlgg.cpp:916 ../src/generic/fontdlgg.cpp:257
#: ../src/generic/prntdlgg.cpp:468 ../src/generic/progdlgg.cpp:179
@ -761,7 +764,7 @@ msgstr "Vyberte p
msgid "Clear the log contents"
msgstr "Smazat obsah logu"
#: ../src/common/prntbase.cpp:357 ../src/generic/progdlgg.cpp:307
#: ../src/common/prntbase.cpp:359 ../src/generic/progdlgg.cpp:307
#: ../src/generic/proplist.cpp:518
msgid "Close"
msgstr "Zavøít"
@ -831,15 +834,15 @@ msgstr ""
"Nemohu zjistit id menu '%s'. Pou¾ijte (nenulové) èíslo\n"
"nebo poskytnìte #define (viz. manuál)"
#: ../src/common/prntbase.cpp:709
#: ../src/common/prntbase.cpp:711
msgid "Could not start document preview."
msgstr "Nemohu zobrazit náhled dokumentu."
#: ../src/generic/printps.cpp:200 ../src/msw/printwin.cpp:242
#: ../src/generic/printps.cpp:209 ../src/msw/printwin.cpp:252
msgid "Could not start printing."
msgstr "Nemohu zahájit tisk."
#: ../src/common/wincmn.cpp:777
#: ../src/common/wincmn.cpp:782
msgid "Could not transfer data to window"
msgstr "Nemohu pøenést data do okna."
@ -1000,13 +1003,13 @@ msgid ""
msgstr ""
"Chyba bìhem expanze promìnných prostøedí: chybí '%c' na pozici %d v '%s'."
#: ../src/generic/dcpsg.cpp:1584 ../src/generic/dirdlgg.cpp:268
#: ../src/generic/dirdlgg.cpp:286 ../src/generic/dirdlgg.cpp:297
#: ../src/generic/dirdlgg.cpp:604 ../src/generic/filedlgg.cpp:625
#: ../src/generic/filedlgg.cpp:717 ../src/generic/filedlgg.cpp:731
#: ../src/generic/filedlgg.cpp:744 ../src/generic/filedlgg.cpp:1043
#: ../src/generic/filedlgg.cpp:1092 ../src/generic/helpxlp.cpp:241
#: ../src/gtk/filedlg.cpp:83 ../src/gtk/fontdlg.cpp:72
#: ../src/generic/dirdlgg.cpp:268 ../src/generic/dirdlgg.cpp:286
#: ../src/generic/dirdlgg.cpp:297 ../src/generic/dirdlgg.cpp:604
#: ../src/generic/filedlgg.cpp:625 ../src/generic/filedlgg.cpp:717
#: ../src/generic/filedlgg.cpp:731 ../src/generic/filedlgg.cpp:744
#: ../src/generic/filedlgg.cpp:1043 ../src/generic/filedlgg.cpp:1092
#: ../src/generic/helpxlp.cpp:241 ../src/gtk/filedlg.cpp:83
#: ../src/gtk/fontdlg.cpp:72
msgid "Error"
msgstr "Chyba"
@ -1176,11 +1179,11 @@ msgstr "Nepoda
msgid "Failed to get data from the clipboard"
msgstr "Nelze získat data ze schránky"
#: ../src/common/timercmn.cpp:243
#: ../src/common/timercmn.cpp:237
msgid "Failed to get the UTC system time."
msgstr "Nemohu zjistit systémový UTC èas."
#: ../src/common/timercmn.cpp:195
#: ../src/common/timercmn.cpp:189
msgid "Failed to get the local system time"
msgstr "Nepodaøilo se zjistit místní systémový èas"
@ -1703,12 +1706,12 @@ msgstr "Zak
msgid "Option '%s' requires a value, '=' expected."
msgstr "Volba '%s' vy¾aduje hodnotu, oèekávám '='."
#: ../src/common/cmdline.cpp:609
#: ../src/common/cmdline.cpp:610
#, c-format
msgid "Option '%s' requires a value."
msgstr "Volba '%s' vy¾aduje hodnotu."
#: ../src/common/cmdline.cpp:663
#: ../src/common/cmdline.cpp:671
#, c-format
msgid "Option '%s': '%s' cannot be converted to a date."
msgstr "Volba '%s': '%s' neudává datum."
@ -1757,12 +1760,12 @@ msgstr "PNM: form
msgid "PNM: File seems truncated."
msgstr "PNM: Soubor je nejspí¹ uøíznutý pøed koncem."
#: ../src/common/prntbase.cpp:729
#: ../src/common/prntbase.cpp:731
#, c-format
msgid "Page %d"
msgstr "Strana %d"
#: ../src/common/prntbase.cpp:727
#: ../src/common/prntbase.cpp:729
#, c-format
msgid "Page %d of %d"
msgstr "Strana %d z %d"
@ -1805,7 +1808,7 @@ msgstr "Vyberte pros
msgid "Please choose which ISP do you want to connect to"
msgstr "Prosím vyberte si poskytovatele (ISP), ke kterému se chcete pøipojit"
#: ../src/common/prntbase.cpp:105
#: ../src/common/prntbase.cpp:107
msgid "Please wait..."
msgstr "Èekejte prosím..."
@ -1834,10 +1837,6 @@ msgstr "Pouze n
msgid "Preview:"
msgstr "Náhled:"
#: ../src/html/htmprint.cpp:486
msgid "Previewing"
msgstr "Vytváøím náhled"
#: ../src/html/helpfrm.cpp:512
msgid "Previous page"
msgstr "Pøedchozí stránka"
@ -1846,15 +1845,11 @@ msgstr "P
msgid "Print"
msgstr "Vytisknout"
#: ../src/generic/printps.cpp:200
msgid "Print Error"
msgstr "Chyba tisku"
#: ../src/common/docview.cpp:895
msgid "Print Preview"
msgstr "Náhled tisku"
#: ../src/common/prntbase.cpp:685 ../src/common/prntbase.cpp:709
#: ../src/common/prntbase.cpp:687 ../src/common/prntbase.cpp:711
msgid "Print Preview Failure"
msgstr "Chyba bìhem vytváøení náhledu."
@ -1882,7 +1877,7 @@ msgstr "Vytiskne tuto str
msgid "Print to File"
msgstr "Tisknout do souboru"
#: ../src/common/prntbase.cpp:364
#: ../src/common/prntbase.cpp:366
msgid "Print..."
msgstr "Tisknout..."
@ -1914,21 +1909,20 @@ msgstr "Nastaven
msgid "Printer..."
msgstr "Tiskárna..."
#: ../src/common/prntbase.cpp:104 ../src/common/prntbase.cpp:146
#: ../src/html/htmprint.cpp:507
#: ../src/common/prntbase.cpp:106 ../src/common/prntbase.cpp:148
msgid "Printing"
msgstr "Tisk"
#: ../src/common/prntbase.cpp:118
#: ../src/common/prntbase.cpp:120
msgid "Printing Error"
msgstr "Chyba tisku"
#: ../src/generic/printps.cpp:218
#: ../src/generic/printps.cpp:232
#, c-format
msgid "Printing page %d..."
msgstr "Tisknu stranu %d..."
#: ../src/generic/printps.cpp:185
#: ../src/generic/printps.cpp:192
msgid "Printing..."
msgstr "Tisknu..."
@ -2064,6 +2058,11 @@ msgstr "Vyberte soubor"
msgid "Send to Printer"
msgstr "Poslat na tiskárnu"
#: ../src/common/cmdline.cpp:627
#, c-format
msgid "Separator expected after the option '%s'."
msgstr ""
#: ../src/common/dlgcmn.cpp:138
msgid "Setup"
msgstr "Nastavení"
@ -2113,7 +2112,7 @@ msgstr "Tento soubor nelze otev
msgid "Sorry, could not save this file."
msgstr "Tento soubor nelze ulo¾it."
#: ../src/common/prntbase.cpp:685
#: ../src/common/prntbase.cpp:687
msgid "Sorry, not enough memory to create a preview."
msgstr "Nedostatek pamìti na vytvoøení náhledu."
@ -2214,7 +2213,7 @@ msgstr ""
"Soubor '%s' neexistuje.\n"
"Bude odstranìn ze seznamu nedávno otevøených souborù."
#: ../src/common/cmdline.cpp:753
#: ../src/common/cmdline.cpp:761
#, c-format
msgid "The required parameter '%s' was not specified."
msgstr "Po¾adovaný parametr '%s' nebyl zadán."
@ -2223,7 +2222,7 @@ msgstr "Po
msgid "The text couldn't be saved."
msgstr "Text nelze ulo¾it."
#: ../src/common/cmdline.cpp:732
#: ../src/common/cmdline.cpp:740
#, c-format
msgid "The value for the option '%s' must be specified."
msgstr "Musíte zadat hodnotu volby '%s'."
@ -2237,22 +2236,6 @@ msgstr ""
"Verze Remote Access Service (RAS) na tomto poèítaèi je pøíli¹ stará, prosím "
"upgradujte (chybí tato funkce: %s)."
#: ../src/html/htmprint.cpp:486
msgid ""
"There was a problem previewing.\n"
"Perhaps your current printer is not set correctly?"
msgstr ""
"Pøi vytváøení náhledu se vyskytl problém.\n"
"Mo¾ná nemáte správnì nastavenou tiskárnu?"
#: ../src/html/htmprint.cpp:507
msgid ""
"There was a problem printing.\n"
"Perhaps your current printer is not set correctly?"
msgstr ""
"Pøi tisku se vyskytla chyba.\n"
"Mo¾ná máte ¹patnì nastavenou tiskárnu?"
#: ../src/msw/thread.cpp:1058
msgid ""
"Thread module initialization failed: can not store value in thread local "
@ -2336,7 +2319,7 @@ msgstr "Podtr
msgid "Unexpected end of file whilst parsing resource."
msgstr "Neoèekávaný konec souboru bìhem zpracování resource"
#: ../src/common/cmdline.cpp:704
#: ../src/common/cmdline.cpp:712
#, c-format
msgid "Unexpected parameter '%s'"
msgstr "Neoèekávaný parametr '%s'"
@ -2385,7 +2368,7 @@ msgstr "Nezn
msgid "Unsupported clipboard format."
msgstr "Nepodporovaný formát schránky."
#: ../src/common/cmdline.cpp:789
#: ../src/common/cmdline.cpp:797
#, c-format
msgid "Usage: %s"
msgstr "Pou¾ití: %s"
@ -2748,19 +2731,19 @@ msgstr "katalog pro dom
msgid "ctrl"
msgstr "ctrl"
#: ../src/common/cmdline.cpp:897
#: ../src/common/cmdline.cpp:910
msgid "date"
msgstr "datum"
#: ../src/common/datetime.cpp:3213
#: ../src/common/datetime.cpp:3232
msgid "eighteenth"
msgstr "osmnáctý"
#: ../src/common/datetime.cpp:3203
#: ../src/common/datetime.cpp:3222
msgid "eighth"
msgstr "osmý"
#: ../src/common/datetime.cpp:3206
#: ../src/common/datetime.cpp:3225
msgid "eleventh"
msgstr "jedenáctý"
@ -2778,11 +2761,11 @@ msgstr "nav
msgid "failed to flush the file '%s'"
msgstr "nelze vyprázdnit buffer souboru '%s'"
#: ../src/common/datetime.cpp:3210
#: ../src/common/datetime.cpp:3229
msgid "fifteenth"
msgstr "patnáctý"
#: ../src/common/datetime.cpp:3200
#: ../src/common/datetime.cpp:3219
msgid "fifth"
msgstr "pátý"
@ -2811,19 +2794,19 @@ msgstr "soubor '%s',
msgid "file '%s': unexpected character %c at line %d."
msgstr "soubor '%s': neoèekávaný znak %c na øádku %d."
#: ../src/common/datetime.cpp:3196
#: ../src/common/datetime.cpp:3215
msgid "first"
msgstr "první"
#: ../src/common/datetime.cpp:3209
#: ../src/common/datetime.cpp:3228
msgid "fourteenth"
msgstr "ètrnáctý"
#: ../src/common/datetime.cpp:3199
#: ../src/common/datetime.cpp:3218
msgid "fourth"
msgstr "ètvrtý"
#: ../src/common/timercmn.cpp:239
#: ../src/common/timercmn.cpp:233
msgid "gmtime() failed"
msgstr "gmtime() selhalo"
@ -2857,19 +2840,19 @@ msgstr "hled
msgid "medium"
msgstr "støední"
#: ../src/common/datetime.cpp:3360
#: ../src/common/datetime.cpp:3379
msgid "midnight"
msgstr "Tenké"
#: ../src/common/timercmn.cpp:235
#: ../src/common/timercmn.cpp:229
msgid "mktime() failed"
msgstr "mktime() selhalo"
#: ../src/common/datetime.cpp:3214
#: ../src/common/datetime.cpp:3233
msgid "nineteenth"
msgstr "devatenáctý"
#: ../src/common/datetime.cpp:3204
#: ../src/common/datetime.cpp:3223
msgid "ninth"
msgstr "devátý"
@ -2881,11 +2864,11 @@ msgstr "
msgid "noname"
msgstr "bezejmenná"
#: ../src/common/datetime.cpp:3359
#: ../src/common/datetime.cpp:3378
msgid "noon"
msgstr "poledne"
#: ../src/common/cmdline.cpp:896
#: ../src/common/cmdline.cpp:909
msgid "num"
msgstr "èíslo"
@ -2893,15 +2876,15 @@ msgstr "
msgid "reentrancy problem."
msgstr "problém reentrance."
#: ../src/common/datetime.cpp:3197
#: ../src/common/datetime.cpp:3216
msgid "second"
msgstr "druhý"
#: ../src/common/datetime.cpp:3212
#: ../src/common/datetime.cpp:3231
msgid "seventeenth"
msgstr "sedmnáctý"
#: ../src/common/datetime.cpp:3202
#: ../src/common/datetime.cpp:3221
msgid "seventh"
msgstr "sedmý"
@ -2909,11 +2892,11 @@ msgstr "sedm
msgid "shift"
msgstr "shift"
#: ../src/common/datetime.cpp:3211
#: ../src/common/datetime.cpp:3230
msgid "sixteenth"
msgstr "¹estnáctý"
#: ../src/common/datetime.cpp:3201
#: ../src/common/datetime.cpp:3220
msgid "sixth"
msgstr "¹estý"
@ -2921,11 +2904,11 @@ msgstr "
msgid "small"
msgstr "malé"
#: ../src/common/cmdline.cpp:895
#: ../src/common/cmdline.cpp:908
msgid "str"
msgstr "øetìzec"
#: ../src/common/datetime.cpp:3205
#: ../src/common/datetime.cpp:3224
msgid "tenth"
msgstr "desátý"
@ -2933,27 +2916,27 @@ msgstr "des
msgid "the response to the transaction caused the DDE_FBUSY bit to be set."
msgstr "odpovìï na transakci zpùsobila nastavení bitu DDE_FBUSY."
#: ../src/common/datetime.cpp:3198
#: ../src/common/datetime.cpp:3217
msgid "third"
msgstr "tøetí"
#: ../src/common/datetime.cpp:3208
#: ../src/common/datetime.cpp:3227
msgid "thirteenth"
msgstr "tøináctý"
#: ../src/common/datetime.cpp:3003
#: ../src/common/datetime.cpp:3022
msgid "today"
msgstr "dnes"
#: ../src/common/datetime.cpp:3005
#: ../src/common/datetime.cpp:3024
msgid "tomorrow"
msgstr "vèera"
#: ../src/common/datetime.cpp:3207
#: ../src/common/datetime.cpp:3226
msgid "twelfth"
msgstr "dvanáctý"
#: ../src/common/datetime.cpp:3215
#: ../src/common/datetime.cpp:3234
msgid "twentieth"
msgstr "dvacátý"
@ -3002,7 +2985,7 @@ msgstr "velmi velk
msgid "very small"
msgstr "velmi malé"
#: ../src/common/timercmn.cpp:266
#: ../src/common/timercmn.cpp:260
msgid "wxGetTimeOfDay failed."
msgstr "wxGetTimeOfDay selhalo."
@ -3023,10 +3006,30 @@ msgstr "wxWindows nemohou otev
msgid "wxWindows: error finding temporary file name.\n"
msgstr "wxWindows: chyba pøi hledání jména doèasného souboru.\n"
#: ../src/common/datetime.cpp:3004
#: ../src/common/datetime.cpp:3023
msgid "yesterday"
msgstr "vèera"
#~ msgid "Previewing"
#~ msgstr "Vytváøím náhled"
#~ msgid "Print Error"
#~ msgstr "Chyba tisku"
#~ msgid ""
#~ "There was a problem previewing.\n"
#~ "Perhaps your current printer is not set correctly?"
#~ msgstr ""
#~ "Pøi vytváøení náhledu se vyskytl problém.\n"
#~ "Mo¾ná nemáte správnì nastavenou tiskárnu?"
#~ msgid ""
#~ "There was a problem printing.\n"
#~ "Perhaps your current printer is not set correctly?"
#~ msgstr ""
#~ "Pøi tisku se vyskytla chyba.\n"
#~ "Mo¾ná máte ¹patnì nastavenou tiskárnu?"
#~ msgid "Baltic II (ISO-8859-10)"
#~ msgstr "Baltské II (ISO-8859-10)"

View file

@ -37,11 +37,11 @@
//#define TEST_ARRAYS
//#define TEST_CMDLINE
#define TEST_DATETIME
//#define TEST_DATETIME
//#define TEST_DIR
//#define TEST_DLLLOADER
//#define TEST_EXECUTE
//#define TEST_FILE
#define TEST_FILE
//#define TEST_FILECONF
//#define TEST_HASH
//#define TEST_LIST
@ -53,9 +53,10 @@
//#define TEST_STRINGS
//#define TEST_THREADS
//#define TEST_TIMER
//#define TEST_VCARD
//#define TEST_VCARD -- don't enable this (VZ)
//#define TEST_WCHAR
//#define TEST_ZIP
//#define TEST_ZLIB
// ----------------------------------------------------------------------------
// test class for container objects
@ -367,7 +368,7 @@ static void TestFileRead()
puts("File dump:\n----------");
static const size_t len = 1024;
static const off_t len = 1024;
char buf[len];
for ( ;; )
{
@ -403,6 +404,24 @@ static void TestTextFileRead()
{
printf("Number of lines: %u\n", file.GetLineCount());
printf("Last line: '%s'\n", file.GetLastLine().c_str());
wxString s;
puts("\nDumping the entire file:");
for ( s = file.GetFirstLine(); !file.Eof(); s = file.GetNextLine() )
{
printf("%6u: %s\n", file.GetCurrentLine() + 1, s.c_str());
}
printf("%6u: %s\n", file.GetCurrentLine() + 1, s.c_str());
puts("\nAnd now backwards:");
for ( s = file.GetLastLine();
file.GetCurrentLine() != 0;
s = file.GetPrevLine() )
{
printf("%6u: %s\n", file.GetCurrentLine() + 1, s.c_str());
}
printf("%6u: %s\n", file.GetCurrentLine() + 1, s.c_str());
}
else
{
@ -1643,6 +1662,58 @@ static void TestZipStreamRead()
#endif // TEST_ZIP
// ----------------------------------------------------------------------------
// ZLIB stream
// ----------------------------------------------------------------------------
#ifdef TEST_ZLIB
#include <wx/zstream.h>
#include <wx/wfstream.h>
static const wxChar *FILENAME_GZ = _T("test.gz");
static const char *TEST_DATA = "hello and hello again";
static void TestZlibStreamWrite()
{
puts("*** Testing Zlib stream reading ***\n");
wxFileOutputStream fileOutStream(FILENAME_GZ);
wxZlibOutputStream ostr(fileOutStream, 0);
printf("Compressing the test string... ");
ostr.Write(TEST_DATA, sizeof(TEST_DATA));
if ( !ostr )
{
puts("(ERROR: failed)");
}
else
{
puts("(ok)");
}
puts("\n----- done ------");
}
static void TestZlibStreamRead()
{
puts("*** Testing Zlib stream reading ***\n");
wxFileInputStream fileInStream(FILENAME_GZ);
wxZlibInputStream istr(fileInStream);
printf("Archive size: %u\n", istr.GetSize());
puts("Dumping the file:");
while ( !istr.Eof() )
{
putchar(istr.GetC());
fflush(stdout);
}
puts("\n----- done ------");
}
#endif // TEST_ZLIB
// ----------------------------------------------------------------------------
// date time
// ----------------------------------------------------------------------------
@ -2484,7 +2555,25 @@ static void TestTimeMS()
printf("Now = %s\n", dt1.Format("%H:%M:%S:%l").c_str());
printf("UNow = %s\n", dt2.Format("%H:%M:%S:%l").c_str());
printf("Difference is %s\n", (dt2 - dt1).Format("%l").c_str());
printf("Dummy loop: ");
for ( int i = 0; i < 6000; i++ )
{
//for ( int j = 0; j < 10; j++ )
{
wxString s;
s.Printf("%g", sqrt(i));
}
if ( !(i % 100) )
putchar('.');
}
puts(", done");
dt1 = dt2;
dt2 = wxDateTime::UNow();
printf("UNow = %s\n", dt2.Format("%H:%M:%S:%l").c_str());
printf("Loop executed in %s ms\n", (dt2 - dt1).Format("%l").c_str());
puts("\n*** done ***");
}
@ -3434,7 +3523,8 @@ int main(int argc, char **argv)
#endif // TEST_LOG
#ifdef TEST_FILE
TestFileRead();
if ( 0 )
TestFileRead();
TestTextFileRead();
#endif // TEST_FILE
@ -3524,10 +3614,10 @@ int main(int argc, char **argv)
TestTimeArithmetics();
TestTimeHolidays();
TestTimeFormat();
TestTimeMS();
TestTimeZoneBug();
}
TestTimeMS();
if ( 0 )
TestInteractive();
#endif // TEST_DATETIME
@ -3546,6 +3636,12 @@ int main(int argc, char **argv)
TestZipStreamRead();
#endif // TEST_ZIP
#ifdef TEST_ZLIB
if ( 0 )
TestZlibStreamWrite();
TestZlibStreamRead();
#endif // TEST_ZLIB
wxUninitialize();
return 0;

View file

@ -308,7 +308,7 @@ bool MyApp::OnInit()
// parse the cmd line
int x = 50,
y = 50;
if ( argc == 2 )
if ( argc == 3 )
{
wxSscanf(argv[1], "%d", &x);
wxSscanf(argv[2], "%d", &y);

File diff suppressed because it is too large Load diff

View file

@ -20,9 +20,11 @@
enum DialogModes {mView,mCreate,mEdit,mSearch};
// ID for the menu quit command
#define FILE_CREATE 100
#define FILE_EXIT 199
#define EDIT_PARAMETERS 200
#define FILE_CREATE 100
#define FILE_RECREATE_TABLE 110
#define FILE_RECREATE_INDEXES 120
#define FILE_EXIT 199
#define EDIT_PARAMETERS 200
#define ABOUT_DEMO 300
// this seems to be missing, Robert Roebling (?)
@ -129,11 +131,13 @@ class DatabaseDemoFrame: public wxFrame
void OnCloseWindow(wxCloseEvent& event);
void OnCreate(wxCommandEvent& event);
void OnRecreateTable(wxCommandEvent& event);
void OnRecreateIndexes(wxCommandEvent& event);
void OnExit(wxCommandEvent& event);
void OnEditParameters(wxCommandEvent& event);
void OnAbout(wxCommandEvent& event);
void CreateDataTable();
void CreateDataTable(bool recreate);
void BuildEditorDialog();
void BuildParameterDialog(wxWindow *parent);
@ -147,8 +151,8 @@ DECLARE_EVENT_TABLE()
class CeditorDlg : public wxPanel
{
private:
bool widgetPtrsSet;
wxString saveName;
bool widgetPtrsSet;
wxString saveName;
// Pointers to all widgets on the dialog
wxButton *pCreateBtn, *pEditBtn, *pDeleteBtn, *pCopyBtn, *pSaveBtn, *pCancelBtn;
@ -163,8 +167,9 @@ class CeditorDlg : public wxPanel
wxStaticText *pNativeLangMsg;
public:
enum DialogModes mode;
Ccontact *Contact; // this is the table object that will be being manipulated
bool initialized;
enum DialogModes mode;
Ccontact *Contact; // this is the table object that will be being manipulated
CeditorDlg(wxWindow *parent);
@ -173,6 +178,7 @@ class CeditorDlg : public wxPanel
void OnCommand(wxWindow& win, wxCommandEvent& event);
void OnActivate(bool) {}; // necessary for hot keys
bool Initialize();
void FieldsEditable();
void SetMode(enum DialogModes m);
bool PutData();
@ -343,7 +349,7 @@ class CqueryDlg : public wxDialog
wxStaticBox *pQueryHintGrp;
wxStaticText *pQueryHintMsg;
wxTextCtrl *pFocusTxt;
wxTextCtrl *pFocusTxt;
CqueryDlg(wxWindow *parent, wxDb *pDb, char *tblName[], char *pWhereArg);
~CqueryDlg();

View file

@ -93,9 +93,10 @@ const int LISTDB_NO_SPACES_BETWEEN_COLS = 3;
* NOTE: The value returned by this function is for temporary use only and
* should be copied for long term use
*/
char *GetExtendedDBErrorMsg2(char *ErrFile, int ErrLine)
const char *GetExtendedDBErrorMsg2(char *ErrFile, int ErrLine)
{
static wxString msg;
msg = "";
wxString tStr;
@ -128,12 +129,15 @@ char *GetExtendedDBErrorMsg2(char *ErrFile, int ErrLine)
msg.Append(pDbList->PtrDb->errorList[i]);
if (wxStrcmp(pDbList->PtrDb->errorList[i],"") != 0)
msg.Append("\n");
// Clear the errmsg buffer so the next error will not
// end up showing the previous error that have occurred
wxStrcpy(pDbList->PtrDb->errorList[i],"");
}
}
}
msg += "\n";
return (char*) (const char*) msg;
return /*(char*) (const char*) msg*/msg.c_str();
} // GetExtendedDBErrorMsg
@ -407,8 +411,10 @@ void ClookUpDlg::OnClose(wxCloseEvent& event)
if (lookup2)
delete lookup2;
SetReturnCode(1);
while (wxIsBusy()) wxEndBusyCursor();
event.Skip();
event.Skip();
// return TRUE;

View file

@ -304,7 +304,7 @@ void MyFrame::NumericEntry(wxCommandEvent& WXUNUSED(event) )
void MyFrame::PasswordEntry(wxCommandEvent& WXUNUSED(event))
{
wxString pwd = wxGetPasswordFromUser("Enter password:",
"Passowrd entry dialog",
"Password entry dialog",
"",
this);
if ( !!pwd )

View file

@ -367,7 +367,8 @@ MyCanvas::MyCanvas( MyFrame *parent ) : wxScrolledWindow( parent )
void MyCanvas::DrawTestPoly( int x, int y,wxDC &dc,int transparent )
{
wxBrush* brush4 = new wxBrush(*gs_bmp4);
// wxBrush* brush4 = new wxBrush(*gs_bmp4);
wxBrush* brush4 = new wxBrush(*wxBLACK,wxFDIAGONAL_HATCH);
wxBrush* brush4_mono = new wxBrush(*gs_bmp4_mono);
wxBrush* brush36 = new wxBrush(*gs_bmp36);
@ -1015,6 +1016,7 @@ void MyCanvas::OnPaint(wxPaintEvent &WXUNUSED(event))
{
wxPaintDC dc(this);
PrepareDC(dc);
m_owner->PrepareDC(dc);
dc.SetBackgroundMode( m_owner->m_backgroundMode );
@ -1080,6 +1082,13 @@ void MyCanvas::OnPaint(wxPaintEvent &WXUNUSED(event))
case Show_Ops:
DrawWithLogicalOps(dc);
break;
default:
{
dc.SetPen( *wxBLACK_PEN );
dc.DrawLine( 0,0,100,100 );
}
}
}
@ -1220,12 +1229,12 @@ void MyFrame::OnAbout(wxCommandEvent& WXUNUSED(event))
void MyFrame::OnShow(wxCommandEvent& event)
{
m_canvas->Show((ScreenToShow)(event.GetInt() - MenuShow_First));
m_canvas->Show((ScreenToShow)(event.GetId() - MenuShow_First));
}
void MyFrame::OnOption(wxCommandEvent& event)
{
switch (event.GetInt())
switch (event.GetId())
{
case MapMode_Text:
m_mapMode = wxMM_TEXT;

Binary file not shown.

View file

@ -47,7 +47,9 @@ class MyFrame: public wxFrame
public:
MyFrame();
virtual ~MyFrame() { delete m_menu; }
virtual ~MyFrame();
void LogMenuEvent(const wxCommandEvent& event);
void OnQuit(wxCommandEvent& event);
void OnAbout(wxCommandEvent& event);
@ -88,6 +90,25 @@ private:
DECLARE_EVENT_TABLE()
};
// A small helper class which intercepts all menu events and logs them
class MyEvtHandler : public wxEvtHandler
{
public:
MyEvtHandler(MyFrame *frame) { m_frame = frame; }
void OnMenuEvent(wxCommandEvent& event)
{
m_frame->LogMenuEvent(event);
event.Skip();
}
private:
MyFrame *m_frame;
DECLARE_EVENT_TABLE()
};
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
@ -164,6 +185,10 @@ BEGIN_EVENT_TABLE(MyFrame, wxFrame)
EVT_RIGHT_DOWN(MyFrame::OnRightDown)
END_EVENT_TABLE()
BEGIN_EVENT_TABLE(MyEvtHandler, wxEvtHandler)
EVT_MENU(-1, MyEvtHandler::OnMenuEvent)
END_EVENT_TABLE()
// ============================================================================
// implementation
// ============================================================================
@ -202,7 +227,7 @@ MyFrame::MyFrame()
m_menu = NULL;
m_countDummy = 0;
CreateStatusBar();
CreateStatusBar(2);
// create the menubar
wxMenu *fileMenu = new wxMenu;
@ -267,6 +292,17 @@ MyFrame::MyFrame()
// associate the menu bar with the frame
SetMenuBar(menuBar);
// intercept all menu events and log them in this custom event handler
PushEventHandler(new MyEvtHandler(this));
}
MyFrame::~MyFrame()
{
delete m_menu;
// delete the event handler installed in ctor
PopEventHandler(TRUE);
}
wxMenu *MyFrame::CreateDummyMenu(wxString *title)
@ -302,6 +338,23 @@ wxMenuItem *MyFrame::GetLastMenuItem() const
}
}
void MyFrame::LogMenuEvent(const wxCommandEvent& event)
{
int id = event.GetId();
wxString msg = wxString::Format("Menu command %d", id);
if ( GetMenuBar()->FindItem(id)->IsCheckable() )
{
msg += wxString::Format(" (the item is currently %schecked)",
event.IsChecked() ? "" : "not ");
}
SetStatusText(msg, 1);
}
// ----------------------------------------------------------------------------
// menu callbacks
// ----------------------------------------------------------------------------
void MyFrame::OnQuit(wxCommandEvent& WXUNUSED(event))
{
Close(TRUE);

49
src/common/base.rc Normal file
View file

@ -0,0 +1,49 @@
///////////////////////////////////////////////////////////////////////////////
// Name: src/base/base.rc
// Purpose: contains version info resource for wxBase DLL build
// Author: Vadim Zeitlin
// Modified by:
// Created: 09.07.00
// RCS-ID: $Id$
// Copyright: (c) 2000 Vadim Zeitlin
// Licence: wxWindows license
///////////////////////////////////////////////////////////////////////////////
#include "wx/version.h"
#ifdef _DEBUG
#define DLL_FLAGS 0x1L
#define DLL_SUFFIX "d"
#else
#define DLL_FLAGS 0x0L
#define DLL_SUFFIX ""
#endif
1 VERSIONINFO
FILEVERSION wxMAJOR_VERSION,wxMINOR_VERSION,wxRELEASE_NUMBER,wxBETA_NUMBER
PRODUCTVERSION wxMAJOR_VERSION,wxMINOR_VERSION,wxRELEASE_NUMBER,wxBETA_NUMBER
FILEFLAGSMASK 0x3fL
FILEFLAGS DLL_FLAGS
FILEOS 0x40004L
FILETYPE 0x2L
FILESUBTYPE 0x0L
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "040904b0"
BEGIN
VALUE "Comments", "wxBase (part of Windows) cross-platform framework\0"
VALUE "CompanyName", "wxWindows development team\0"
VALUE "FileDescription", "wxBase is a non GUI part of wxWindows\0"
VALUE "FileVersion", "2.2.1\0"
VALUE "InternalName", "wxBase\0"
VALUE "LegalCopyright", "Copyright © 1993, 2000 wxWindows development team\0"
VALUE "LegalTrademarks", "\0"
VALUE "OriginalFilename", "wxbase221" DLL_SUFFIX ".dll\0"
VALUE "PrivateBuild", "\0"
VALUE "ProductName", "wxWindows\0"
VALUE "ProductVersion", "2.2.1\0"
VALUE "SpecialBuild", "\0"
END
END
END

View file

@ -3044,6 +3044,11 @@ const wxChar *wxDateTime::ParseDate(const wxChar *date)
}
}
// We try to guess what we have here: for each new (numeric) token, we
// determine if it can be a month, day or a year. Of course, there is an
// ambiguity as some numbers may be days as well as months, so we also
// have the ability to back track.
// what do we have?
bool haveDay = FALSE, // the months day?
haveWDay = FALSE, // the day of week?
@ -3063,6 +3068,8 @@ const wxChar *wxDateTime::ParseDate(const wxChar *date)
while ( tok.HasMoreTokens() )
{
wxString token = tok.GetNextToken();
if ( !token )
continue;
// is it a number?
unsigned long val;
@ -3072,111 +3079,54 @@ const wxChar *wxDateTime::ParseDate(const wxChar *date)
bool isDay = FALSE,
isMonth = FALSE,
// only years are counted from 0
isYear = (val == 0) || (val > 31);
if ( !isYear )
isYear = FALSE;
if ( !haveMon && val > 0 && val <= 12 )
{
// may be the month or month day or the year, assume the
// month day by default and fallback to month if the range
// allow it or to the year if our assumption doesn't work
if ( haveDay )
// assume it is month
isMonth = TRUE;
}
else // not the month
{
wxDateTime_t maxDays = haveMon
? GetNumOfDaysInMonth(haveYear ? year : Inv_Year, mon)
: 31;
// can it be day?
if ( (val == 0) || (val > maxDays) )
{
// we already have the day, so may only be a month or year
if ( val > 12 )
{
isYear = TRUE;
}
else
{
isMonth = TRUE;
}
isYear = TRUE;
}
else // it may be day
else
{
isDay = TRUE;
// check the range
if ( haveMon )
{
if ( val > GetNumOfDaysInMonth(haveYear ? year
: Inv_Year,
mon) )
{
// oops, it can't be a day finally
isDay = FALSE;
if ( val > 12 )
{
isYear = TRUE;
}
else
{
isMonth = TRUE;
}
}
}
}
}
// remember that we have this and stop the scan if it's the second
// time we find this, except for the day logic (see there)
if ( isYear )
{
if ( haveYear )
{
break;
}
haveYear = TRUE;
// no roll over - 99 means 99, not 1999 for us
year = (wxDateTime_t)val;
}
else if ( isMonth )
else if ( isDay )
{
if ( haveMon )
{
break;
}
haveMon = TRUE;
// month 1 is Jan
mon = (wxDateTime::Month)(val - 1);
}
else
{
wxASSERT_MSG( isDay, _T("logic error") );
if ( haveDay )
{
// may be were mistaken when we found it for the first
// time? may be it was a month or year instead?
//
// this ability to "backtrack" allows us to correctly parse
// both things like 01/13 and 13/01 - but, of course, we
// still can't resolve the ambiguity in 01/02 (it will be
// Feb 1 for us, not Jan 2 as americans might expect!)
if ( (day <= 12) && !haveMon )
{
// exchange day and month
mon = (wxDateTime::Month)(day - 1);
haveMon = TRUE;
}
else if ( !haveYear )
{
// exchange day and year
year = day;
haveYear = TRUE;
}
}
break;
haveDay = TRUE;
day = (wxDateTime_t)val;
}
else if ( isMonth )
{
haveMon = TRUE;
mon = (Month)(val - 1);
}
}
else // not a number
{

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1114,8 +1114,8 @@ wxDocument *wxDocManager::CreateDocument(const wxString& path, long flags)
}
return newDoc;
}
else
return (wxDocument *) NULL;
return (wxDocument *) NULL;
}
wxView *wxDocManager::CreateView(wxDocument *doc, long flags)
@ -1364,7 +1364,7 @@ wxDocTemplate *wxDocManager::SelectDocumentPath(wxDocTemplate **templates,
wxString descrBuf = wxT("*.*");
#endif
int FilterIndex = 0;
int FilterIndex = -1;
wxWindow* parent = wxFindSuitableParent();
@ -1376,6 +1376,7 @@ wxDocTemplate *wxDocManager::SelectDocumentPath(wxDocTemplate **templates,
0,
parent);
wxDocTemplate *theTemplate = (wxDocTemplate *)NULL;
if (!pathTmp.IsEmpty())
{
if (!wxFileExists(pathTmp))
@ -1396,21 +1397,20 @@ wxDocTemplate *wxDocManager::SelectDocumentPath(wxDocTemplate **templates,
path = pathTmp;
// This is dodgy in that we're selecting the template on the
// basis of the file extension, which may not be a standard
// one. We really want to know exactly which template was
// chosen by using a more advanced file selector.
wxDocTemplate *theTemplate = FindTemplateForPath(path);
if ( !theTemplate )
// first choose the template using the extension, if this fails (i.e.
// wxFileSelectorEx() didn't fill it), then use the path
if ( FilterIndex != -1 )
theTemplate = templates[FilterIndex];
return theTemplate;
if ( !theTemplate )
theTemplate = FindTemplateForPath(path);
}
else
{
path = wxT("");
return (wxDocTemplate *) NULL;
}
return theTemplate;
#if 0
// In all other windowing systems, until we have more advanced
// file selectors, we must select the document type (template) first, and

View file

@ -102,7 +102,6 @@ static wxString ConstructLibraryName(const wxString& basename)
return fullname;
}
// ---------------------------------------------------------------------------
// wxLibrary (one instance per dynamic library)
// ---------------------------------------------------------------------------

View file

@ -54,7 +54,7 @@
// ----------------------------------------------------------------------------
// the config paths we use
static const wxChar* FONTMAPPER_ROOT_PATH = wxT("wxWindows/FontMapper");
static const wxChar* FONTMAPPER_ROOT_PATH = wxT("/wxWindows/FontMapper");
static const wxChar* FONTMAPPER_CHARSET_PATH = wxT("Charsets");
static const wxChar* FONTMAPPER_CHARSET_ALIAS_PATH = wxT("Aliases");
#if wxUSE_GUI
@ -403,6 +403,15 @@ wxFontEncoding wxFontMapper::CharsetToEncoding(const wxString& charset,
// if didn't find it there, try to reckognise it ourselves
if ( encoding == wxFONTENCODING_SYSTEM )
{
// discard the optional quotes
if ( !!cs )
{
if ( cs[0u] == _T('"') && cs.Last() == _T('"') )
{
cs = wxString(cs.c_str(), cs.length() - 1);
}
}
cs.MakeUpper();
if ( !cs || cs == wxT("US-ASCII") )
@ -699,10 +708,13 @@ bool wxFontMapper::GetAltForEncoding(wxFontEncoding encoding,
// now try the default mappings:
wxFontEncodingArray equiv = wxEncodingConverter::GetAllEquivalents(encoding);
size_t count = equiv.GetCount();
for ( size_t i = (equiv[0] == encoding) ? 1 : 0; i < count; i++ )
if ( count )
{
if ( TestAltEncoding(configEntry, equiv[i], info) )
return TRUE;
for ( size_t i = (equiv[0] == encoding) ? 1 : 0; i < count; i++ )
{
if ( TestAltEncoding(configEntry, equiv[i], info) )
return TRUE;
}
}
return FALSE;
@ -729,8 +741,8 @@ bool wxFontMapper::IsEncodingAvailable(wxFontEncoding encoding,
info.facename = facename;
return wxTestFontEncoding(info);
}
else
return FALSE;
return FALSE;
}
#endif // wxUSE_GUI

View file

@ -196,15 +196,17 @@ bool wxFrameBase::ProcessCommand(int id)
if ( !bar )
return FALSE;
wxCommandEvent commandEvent(wxEVT_COMMAND_MENU_SELECTED, id);
commandEvent.SetEventObject(this);
wxMenuItem *item = bar->FindItem(id);
if ( item && item->IsCheckable() )
{
item->Toggle();
}
wxCommandEvent commandEvent(wxEVT_COMMAND_MENU_SELECTED, id);
commandEvent.SetInt(id);
commandEvent.SetEventObject(this);
// use the new value
commandEvent.SetInt(item->IsChecked());
}
return GetEventHandler()->ProcessEvent(commandEvent);
}

View file

@ -85,12 +85,9 @@ wxFSFile* wxZipFSHandler::OpenFile(wxFileSystem& WXUNUSED(fs), const wxString& l
GetAnchor(location),
wxDateTime(wxFileModificationTime(left)));
}
else
{
if (s)
delete s;
return NULL;
}
delete s;
return NULL;
}

View file

@ -492,7 +492,7 @@ int wxGIFDecoder::ReadGIF()
int ncolors, bits, interl, transparent, disposal, i;
long size;
long delay;
unsigned char type;
unsigned char type = 0;
unsigned char pal[768];
unsigned char buf[16];
GIFImage **ppimg, *pimg, *pprev;

View file

@ -104,7 +104,7 @@ void wxHashTableBase::DeleteContents(bool flag)
wxNodeBase *wxHashTableBase::GetNode(long key, long value) const
{
size_t slot = (size_t)abs(key % (long)m_hashSize);
size_t slot = (size_t)abs((int)(key % (long)m_hashSize));
wxNodeBase *node;
if ( m_hashTable[slot] )
@ -161,7 +161,7 @@ void wxHashTableLong::Put(long key, long value)
{
wxCHECK_RET( m_hashSize, _T("must call Create() first") );
size_t slot = (size_t)abs(key % (long)m_hashSize);
size_t slot = (size_t)abs((int)(key % (long)m_hashSize));
if ( !m_keys[slot] )
{
@ -179,7 +179,7 @@ long wxHashTableLong::Get(long key) const
{
wxCHECK_MSG( m_hashSize, wxNOT_FOUND, _T("must call Create() first") );
size_t slot = (size_t)abs(key % (long)m_hashSize);
size_t slot = (size_t)abs((int)(key % (long)m_hashSize));
wxArrayLong *keys = m_keys[slot];
if ( keys )
@ -201,7 +201,7 @@ long wxHashTableLong::Delete(long key)
{
wxCHECK_MSG( m_hashSize, wxNOT_FOUND, _T("must call Create() first") );
size_t slot = (size_t)abs(key % (long)m_hashSize);
size_t slot = (size_t)abs((int)(key % (long)m_hashSize));
wxArrayLong *keys = m_keys[slot];
if ( keys )

View file

@ -317,7 +317,7 @@ wxImage wxImage::Mirror( bool horizontally ) const
for (long i = 0; i < height; i++)
{
target_data = data + 3*width*(height-1-i);
memcpy( target_data, source_data, 3*width );
memcpy( target_data, source_data, (size_t)3*width );
source_data += 3*width;
}
}
@ -739,9 +739,9 @@ bool wxImage::SaveFile( const wxString& filename, int type )
wxBufferedOutputStream bstream( stream );
return SaveFile(bstream, type);
}
else
#endif // wxUSE_STREAMS
return FALSE;
return FALSE;
}
bool wxImage::SaveFile( const wxString& filename, const wxString& mimetype )
@ -754,9 +754,9 @@ bool wxImage::SaveFile( const wxString& filename, const wxString& mimetype )
wxBufferedOutputStream bstream( stream );
return SaveFile(bstream, mimetype);
}
else
#endif // wxUSE_STREAMS
return FALSE;
return FALSE;
}
bool wxImage::CanRead( const wxString &name )

View file

@ -117,7 +117,7 @@ METHODDEF(void) my_term_source ( j_decompress_ptr cinfo )
my_src_ptr src = (my_src_ptr) cinfo->src;
if (src->pub.bytes_in_buffer > 0)
src->stream->SeekI(-src->pub.bytes_in_buffer, wxFromCurrent);
src->stream->SeekI(-(long)src->pub.bytes_in_buffer, wxFromCurrent);
delete[] src->buffer;
}
@ -173,7 +173,11 @@ my_error_exit (j_common_ptr cinfo)
longjmp(myerr->setjmp_buffer, 1);
}
// temporarily disable the warning C4611 (interaction between '_setjmp' and
// C++ object destruction is non-portable) - I don't see any dtors here
#ifdef __VISUALC__
#pragma warning(disable:4611)
#endif /* VC++ */
bool wxJPEGHandler::LoadFile( wxImage *image, wxInputStream& stream, bool verbose, int WXUNUSED(index) )
{
@ -229,10 +233,6 @@ bool wxJPEGHandler::LoadFile( wxImage *image, wxInputStream& stream, bool verbos
return TRUE;
}
typedef struct {
struct jpeg_destination_mgr pub;
@ -349,6 +349,9 @@ bool wxJPEGHandler::SaveFile( wxImage *image, wxOutputStream& stream, bool verbo
return TRUE;
}
#ifdef __VISUALC__
#pragma warning(default:4611)
#endif /* VC++ */
bool wxJPEGHandler::DoCanRead( wxInputStream& stream )
{

View file

@ -93,6 +93,12 @@ LINKAGEMODE png_silent_warning(png_structp WXUNUSED(png_ptr), png_const_charp WX
{
}
// temporarily disable the warning C4611 (interaction between '_setjmp' and
// C++ object destruction is non-portable) - I don't see any dtors here
#ifdef __VISUALC__
#pragma warning(disable:4611)
#endif /* VC++ */
bool wxPNGHandler::LoadFile( wxImage *image, wxInputStream& stream, bool verbose, int WXUNUSED(index) )
{
// VZ: as this function uses setjmp() the only fool proof error handling
@ -267,7 +273,6 @@ bool wxPNGHandler::LoadFile( wxImage *image, wxInputStream& stream, bool verbose
return FALSE;
}
bool wxPNGHandler::SaveFile( wxImage *image, wxOutputStream& stream, bool verbose )
{
{
@ -346,6 +351,10 @@ bool wxPNGHandler::SaveFile( wxImage *image, wxOutputStream& stream, bool verbos
return TRUE;
}
#ifdef __VISUALC__
#pragma warning(default:4611)
#endif /* VC++ */
bool wxPNGHandler::DoCanRead( wxInputStream& stream )
{
unsigned char hdr[4];

View file

@ -164,7 +164,7 @@ wxSize wxSizerItem::CalcMin()
void wxSizerItem::SetDimension( wxPoint pos, wxSize size )
{
m_pos = pos;
if (m_flag & wxWEST)
{
pos.x += m_border;
@ -298,11 +298,11 @@ bool wxSizer::Remove( wxWindow *window )
while (node)
{
wxSizerItem *item = (wxSizerItem*)node->Data();
if (item->GetWindow() == window)
{
if (item->GetWindow() == window)
{
m_children.DeleteNode( node );
return TRUE;
}
return TRUE;
}
node = node->Next();
}
@ -317,11 +317,11 @@ bool wxSizer::Remove( wxSizer *sizer )
while (node)
{
wxSizerItem *item = (wxSizerItem*)node->Data();
if (item->GetSizer() == sizer)
{
if (item->GetSizer() == sizer)
{
m_children.DeleteNode( node );
return TRUE;
}
return TRUE;
}
node = node->Next();
}
@ -375,11 +375,11 @@ void wxSizer::SetDimension( int x, int y, int width, int height )
}
wxSize wxSizer::GetMinSize()
{
{
wxSize ret( CalcMin() );
if (ret.x < m_minSize.x) ret.x = m_minSize.x;
if (ret.y < m_minSize.y) ret.y = m_minSize.y;
return ret;
return ret;
}
void wxSizer::DoSetMinSize( int width, int height )
@ -396,11 +396,11 @@ bool wxSizer::DoSetItemMinSize( wxWindow *window, int width, int height )
while (node)
{
wxSizerItem *item = (wxSizerItem*)node->Data();
if (item->GetWindow() == window)
{
if (item->GetWindow() == window)
{
item->SetInitSize( width, height );
return TRUE;
}
return TRUE;
}
node = node->Next();
}
@ -408,15 +408,15 @@ bool wxSizer::DoSetItemMinSize( wxWindow *window, int width, int height )
while (node)
{
wxSizerItem *item = (wxSizerItem*)node->Data();
if (item->GetSizer())
{
if (item->GetSizer())
{
/* It's a sizer, so lets search recursively. */
if (item->GetSizer()->DoSetItemMinSize( window, width, height ))
{
/* A child sizer found the requested windw, exit. */
return TRUE;
return TRUE;
}
}
}
node = node->Next();
}
@ -431,11 +431,11 @@ bool wxSizer::DoSetItemMinSize( wxSizer *sizer, int width, int height )
while (node)
{
wxSizerItem *item = (wxSizerItem*)node->Data();
if (item->GetSizer() == sizer)
{
if (item->GetSizer() == sizer)
{
item->GetSizer()->DoSetMinSize( width, height );
return TRUE;
}
return TRUE;
}
node = node->Next();
}
@ -443,15 +443,15 @@ bool wxSizer::DoSetItemMinSize( wxSizer *sizer, int width, int height )
while (node)
{
wxSizerItem *item = (wxSizerItem*)node->Data();
if (item->GetSizer())
{
if (item->GetSizer())
{
/* It's a sizer, so lets search recursively. */
if (item->GetSizer()->DoSetItemMinSize( sizer, width, height ))
{
/* A child sizer found the requested windw, exit. */
return TRUE;
return TRUE;
}
}
}
node = node->Next();
}
@ -471,7 +471,7 @@ bool wxSizer::DoSetItemMinSize( int pos, int width, int height )
}
else
{
/* ... whereas the minimal size of spacers and windows in stored
/* ... whereas the minimal size of spacers and windows in stored
in the item */
item->SetInitSize( width, height );
}
@ -515,9 +515,9 @@ void wxGridSizer::RecalcSizes()
wxSize sz( GetSize() );
wxPoint pt( GetPosition() );
int w = (sz.x - (ncols - 1) * m_hgap) / ncols;
int h = (sz.y - (nrows - 1) * m_vgap) / nrows;
int w = (sz.x - (ncols - 1) * m_hgap) / ncols;
int h = (sz.y - (nrows - 1) * m_vgap) / nrows;
int x = pt.x;
for (int c = 0; c < ncols; c++)
@ -530,7 +530,7 @@ void wxGridSizer::RecalcSizes()
{
wxNode *node = m_children.Nth( i );
wxASSERT( node );
SetItemBounds( (wxSizerItem*) node->Data(), x, y, w, h);
}
y = y + h + m_vgap;
@ -556,7 +556,7 @@ wxSize wxGridSizer::CalcMin()
/* Find the max width and height for any component */
int w = 0;
int h = 0;
wxNode *node = m_children.First();
while (node)
{
@ -564,10 +564,10 @@ wxSize wxGridSizer::CalcMin()
wxSize sz( item->CalcMin() );
w = wxMax( w, sz.x );
h = wxMax( h, sz.y );
node = node->Next();
}
return wxSize(ncols * w + (ncols-1) * m_hgap,
nrows * h + (nrows-1) * m_vgap);
}
@ -592,7 +592,7 @@ void wxGridSizer::SetItemBounds( wxSizerItem *item, int x, int y, int w, int h )
{
pt.x = x + (w - sz.x);
}
if (flag & wxALIGN_CENTER_VERTICAL)
{
pt.y = y + (h - sz.y) / 2;
@ -602,7 +602,7 @@ void wxGridSizer::SetItemBounds( wxSizerItem *item, int x, int y, int w, int h )
pt.y = y + (h - sz.y);
}
}
item->SetDimension(pt, sz);
}
@ -612,18 +612,18 @@ void wxGridSizer::SetItemBounds( wxSizerItem *item, int x, int y, int w, int h )
wxFlexGridSizer::wxFlexGridSizer( int rows, int cols, int vgap, int hgap )
: wxGridSizer( rows, cols, vgap, hgap )
{
{
m_rowHeights = (int*) NULL;
m_colWidths = (int*) NULL;
}
wxFlexGridSizer::wxFlexGridSizer( int cols, int vgap, int hgap )
: wxGridSizer( cols, vgap, hgap )
{
: wxGridSizer( cols, vgap, hgap )
{
m_rowHeights = (int*) NULL;
m_colWidths = (int*) NULL;
}
wxFlexGridSizer::~wxFlexGridSizer()
{
if (m_rowHeights)
@ -638,10 +638,10 @@ void wxFlexGridSizer::CreateArrays()
delete[] m_rowHeights;
if (m_colWidths)
delete[] m_colWidths;
if (m_children.GetCount() == 0)
return;
int nitems = m_children.GetCount();
int nrows = m_rows;
int ncols = m_cols;
@ -653,7 +653,7 @@ void wxFlexGridSizer::CreateArrays()
m_rowHeights = new int[nrows];
m_colWidths = new int[ncols];
for (int col = 0; col < ncols; col++)
m_colWidths[ col ] = 0;
for (int row = 0; row < nrows; row++)
@ -686,14 +686,14 @@ void wxFlexGridSizer::RecalcSizes()
for (idx = 0; idx < m_growableRows.GetCount(); idx++)
m_rowHeights[ m_growableRows[idx] ] += delta;
}
if ((m_growableCols.GetCount() > 0) && (sz.x > minsz.x))
{
delta = (sz.x - minsz.x) / m_growableCols.GetCount();
for (idx = 0; idx < m_growableCols.GetCount(); idx++)
m_colWidths[ m_growableCols[idx] ] += delta;
}
sz = wxSize( pt.x + sz.x, pt.y + sz.y );
int x = pt.x;
@ -707,10 +707,10 @@ void wxFlexGridSizer::RecalcSizes()
{
wxNode *node = m_children.Nth( i );
wxASSERT( node );
int w = wxMax( 0, wxMin( m_colWidths[c], sz.x - x ) );
int h = wxMax( 0, wxMin( m_rowHeights[r], sz.y - y ) );
SetItemBounds( (wxSizerItem*) node->Data(), x, y, w, h);
}
y = y + m_rowHeights[r] + m_vgap;
@ -734,10 +734,10 @@ wxSize wxFlexGridSizer::CalcMin()
ncols = (nitems + nrows-1) / nrows;
CreateArrays();
int col;
int row;
int i = 0;
wxNode *node = m_children.First();
while (node)
@ -748,19 +748,19 @@ wxSize wxFlexGridSizer::CalcMin()
col = i % ncols;
m_rowHeights[ row ] = wxMax( sz.y, m_rowHeights[ row ] );
m_colWidths[ col ] = wxMax( sz.x, m_colWidths[ col ] );
node = node->Next();
i++;
}
int width = 0;
for (col = 0; col < ncols; col++)
width += m_colWidths[ col ];
int height = 0;
for (row = 0; row < nrows; row++)
height += m_rowHeights[ row ];
return wxSize( width + (ncols-1) * m_hgap,
height + (nrows-1) * m_vgap);
}
@ -770,7 +770,7 @@ void wxFlexGridSizer::AddGrowableRow( size_t idx )
m_growableRows.Add( idx );
}
void wxFlexGridSizer::RemoveGrowableRow( size_t idx )
void wxFlexGridSizer::RemoveGrowableRow( size_t WXUNUSED(idx) )
{
}
@ -779,7 +779,7 @@ void wxFlexGridSizer::AddGrowableCol( size_t idx )
m_growableCols.Add( idx );
}
void wxFlexGridSizer::RemoveGrowableCol( size_t idx )
void wxFlexGridSizer::RemoveGrowableCol( size_t WXUNUSED(idx) )
{
}
@ -805,12 +805,12 @@ void wxBoxSizer::RecalcSizes()
{
delta = (m_size.x - m_fixedWidth) / m_stretchable;
extra = (m_size.x - m_fixedWidth) % m_stretchable;
}
else
{
}
else
{
delta = (m_size.y - m_fixedHeight) / m_stretchable;
extra = (m_size.y - m_fixedHeight) % m_stretchable;
}
}
}
wxPoint pt( m_position );
@ -820,64 +820,64 @@ void wxBoxSizer::RecalcSizes()
{
wxSizerItem *item = (wxSizerItem*) node->Data();
int weight = 1;
if (item->GetOption())
weight = item->GetOption();
int weight = 1;
if (item->GetOption())
weight = item->GetOption();
wxSize size( item->CalcMin() );
wxSize size( item->CalcMin() );
if (m_orient == wxVERTICAL)
{
wxCoord height = size.y;
if (item->GetOption())
{
height = (delta * weight) + extra;
extra = 0; // only the first item will get the remainder as extra size
}
if (m_orient == wxVERTICAL)
{
wxCoord height = size.y;
if (item->GetOption())
{
height = (delta * weight) + extra;
extra = 0; // only the first item will get the remainder as extra size
}
wxPoint child_pos( pt );
wxSize child_size( wxSize( size.x, height) );
wxPoint child_pos( pt );
wxSize child_size( wxSize( size.x, height) );
if (item->GetFlag() & (wxEXPAND | wxSHAPED))
child_size.x = m_size.x;
else if (item->GetFlag() & wxALIGN_RIGHT)
child_pos.x += m_size.x - size.x;
else if (item->GetFlag() & (wxCENTER | wxALIGN_CENTER_HORIZONTAL))
// XXX wxCENTER is added for backward compatibility;
// wxALIGN_CENTER should be used in new code
child_pos.x += (m_size.x - size.x) / 2;
if (item->GetFlag() & (wxEXPAND | wxSHAPED))
child_size.x = m_size.x;
else if (item->GetFlag() & wxALIGN_RIGHT)
child_pos.x += m_size.x - size.x;
else if (item->GetFlag() & (wxCENTER | wxALIGN_CENTER_HORIZONTAL))
// XXX wxCENTER is added for backward compatibility;
// wxALIGN_CENTER should be used in new code
child_pos.x += (m_size.x - size.x) / 2;
item->SetDimension( child_pos, child_size );
item->SetDimension( child_pos, child_size );
pt.y += height;
}
else
{
wxCoord width = size.x;
if (item->GetOption())
{
width = (delta * weight) + extra;
extra = 0; // only the first item will get the remainder as extra size
}
pt.y += height;
}
else
{
wxCoord width = size.x;
if (item->GetOption())
{
width = (delta * weight) + extra;
extra = 0; // only the first item will get the remainder as extra size
}
wxPoint child_pos( pt );
wxSize child_size( wxSize(width, size.y) );
wxPoint child_pos( pt );
wxSize child_size( wxSize(width, size.y) );
if (item->GetFlag() & (wxEXPAND | wxSHAPED))
child_size.y = m_size.y;
else if (item->GetFlag() & wxALIGN_BOTTOM)
child_pos.y += m_size.y - size.y;
else if (item->GetFlag() & (wxCENTER | wxALIGN_CENTER_VERTICAL))
// XXX wxCENTER is added for backward compatibility;
// wxALIGN_CENTER should be used in new code
child_pos.y += (m_size.y - size.y) / 2;
if (item->GetFlag() & (wxEXPAND | wxSHAPED))
child_size.y = m_size.y;
else if (item->GetFlag() & wxALIGN_BOTTOM)
child_pos.y += m_size.y - size.y;
else if (item->GetFlag() & (wxCENTER | wxALIGN_CENTER_VERTICAL))
// XXX wxCENTER is added for backward compatibility;
// wxALIGN_CENTER should be used in new code
child_pos.y += (m_size.y - size.y) / 2;
item->SetDimension( child_pos, child_size );
item->SetDimension( child_pos, child_size );
pt.x += width;
}
pt.x += width;
}
node = node->Next();
node = node->Next();
}
}
@ -897,42 +897,42 @@ wxSize wxBoxSizer::CalcMin()
{
wxSizerItem *item = (wxSizerItem*) node->Data();
int weight = 1;
if (item->GetOption())
weight = item->GetOption();
int weight = 1;
if (item->GetOption())
weight = item->GetOption();
wxSize size( item->CalcMin() );
wxSize size( item->CalcMin() );
if (m_orient == wxHORIZONTAL)
{
m_minWidth += (size.x * weight);
m_minHeight = wxMax( m_minHeight, size.y );
}
else
{
m_minHeight += (size.y * weight);
m_minWidth = wxMax( m_minWidth, size.x );
}
if (m_orient == wxHORIZONTAL)
{
m_minWidth += (size.x * weight);
m_minHeight = wxMax( m_minHeight, size.y );
}
else
{
m_minHeight += (size.y * weight);
m_minWidth = wxMax( m_minWidth, size.x );
}
if (item->GetOption())
{
m_stretchable += weight;
}
else
{
if (m_orient == wxVERTICAL)
{
m_fixedHeight += size.y;
m_fixedWidth = wxMax( m_fixedWidth, size.x );
}
else
{
m_fixedWidth += size.x;
m_fixedHeight = wxMax( m_fixedHeight, size.y );
}
}
if (item->GetOption())
{
m_stretchable += weight;
}
else
{
if (m_orient == wxVERTICAL)
{
m_fixedHeight += size.y;
m_fixedWidth = wxMax( m_fixedWidth, size.x );
}
else
{
m_fixedWidth += size.x;
m_fixedHeight = wxMax( m_fixedHeight, size.y );
}
}
node = node->Next();
node = node->Next();
}
return wxSize( m_minWidth, m_minHeight );
@ -979,7 +979,7 @@ wxSize wxStaticBoxSizer::CalcMin()
// This will have to be done platform by platform
// as there is no way to guess the thickness of
// a wxStaticBox border.
int top_border = 15;
if (m_staticBox->GetLabel().IsEmpty()) top_border = 5;
int other_border = 5;
@ -1000,7 +1000,7 @@ wxSize wxStaticBoxSizer::CalcMin()
wxNotebookSizer::wxNotebookSizer( wxNotebook *nb )
{
wxASSERT_MSG( nb, wxT("wxNotebookSizer needs a notebook") );
m_notebook = nb;
}
@ -1014,7 +1014,7 @@ wxSize wxNotebookSizer::CalcMin()
// This will have to be done platform by platform
// as there is no way to guess the thickness of
// the wxNotebook tabs and border.
int borderX = 5;
int borderY = 5;
if ((m_notebook->HasFlag(wxNB_RIGHT)) ||
@ -1026,7 +1026,7 @@ wxSize wxNotebookSizer::CalcMin()
{
borderY += 40; // improvements later..
}
if (m_notebook->GetChildren().GetCount() == 0)
return wxSize(borderX + 10, borderY + 10);
@ -1037,17 +1037,17 @@ wxSize wxNotebookSizer::CalcMin()
while (node)
{
wxWindow *item = node->GetData();
wxSizer *itemsizer = item->GetSizer();
if (itemsizer)
{
wxSize subsize( itemsizer->CalcMin() );
if (subsize.x > maxX) maxX = subsize.x;
if (subsize.y > maxY) maxY = subsize.y;
}
wxSizer *itemsizer = item->GetSizer();
node = node->GetNext();
if (itemsizer)
{
wxSize subsize( itemsizer->CalcMin() );
if (subsize.x > maxX) maxX = subsize.x;
if (subsize.y > maxY) maxY = subsize.y;
}
node = node->GetNext();
}
return wxSize( borderX + maxX, borderY + maxY );

View file

@ -149,6 +149,11 @@ typedef struct
int unzlocal_CheckCurrentFileCoherencyHeader (unz_s*, uInt*, uLong*, uInt*);
#endif
/* disable warnings about K&R declarations until the end of file */
#ifdef _MSC_VER
#pragma warning(disable:4131)
#endif /* VC++ */
/* ===========================================================================
Read a byte from a gz_stream; update next_in and avail_in. Return EOF
for end of file.

View file

@ -498,20 +498,29 @@ wxAcceleratorEntry *wxGetAccelFromString(const wxString& label)
keyCode = WXK_F1 + n - 1;
}
else {
#if 0 // this is not supported by GTK+, apparently
// several special cases
current.MakeUpper();
if ( current == wxT("DEL") ) {
keyCode = VK_DELETE;
keyCode = WXK_DELETE;
}
else if ( current == wxT("DELETE") ) {
keyCode = WXK_DELETE;
}
else if ( current == wxT("INS") ) {
keyCode = WXK_INSERT;
}
else if ( current == wxT("INSERT") ) {
keyCode = WXK_INSERT;
}
#if 0
else if ( current == wxT("PGUP") ) {
keyCode = VK_PRIOR;
}
else if ( current == wxT("PGDN") ) {
keyCode = VK_NEXT;
}
#endif
else
#endif // 0
{
wxLogDebug(wxT("Unrecognized accel key '%s', accel string ignored."),
current.c_str());
@ -878,10 +887,13 @@ int wxMessageBox(const wxString& message, const wxString& caption, long style,
return wxYES;
case wxID_NO:
return wxNO;
default:
case wxID_CANCEL:
return wxCANCEL;
}
wxFAIL_MSG( _T("unexpected return code from wxMessageDialog") );
return wxCANCEL;
}
#if wxUSE_TEXTDLG

View file

@ -6,7 +6,7 @@
// Created: Jan 22 1999
// RCS-ID:
// Copyright: (c) 1999 Kevin Smith
// Licence: wxWindows licence
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
@ -113,21 +113,21 @@ bool wxGenericValidator::TransferToWindow(void)
{
wxCheckBox* pControl = (wxCheckBox*) m_validatorWindow;
if (m_pBool)
{
pControl->SetValue(*m_pBool);
return TRUE;
}
{
pControl->SetValue(*m_pBool);
return TRUE;
}
} else
#endif
#if wxUSE_RADIOBTN
if (m_validatorWindow->IsKindOf(CLASSINFO(wxRadioButton)) )
{
wxRadioButton* pControl = (wxRadioButton*) m_validatorWindow;
if (m_pBool)
{
pControl->SetValue(*m_pBool) ;
return TRUE;
}
if (m_pBool)
{
pControl->SetValue(*m_pBool) ;
return TRUE;
}
} else
#endif
@ -136,33 +136,33 @@ bool wxGenericValidator::TransferToWindow(void)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxGauge)) )
{
wxGauge* pControl = (wxGauge*) m_validatorWindow;
if (m_pInt)
{
pControl->SetValue(*m_pInt);
return TRUE;
}
if (m_pInt)
{
pControl->SetValue(*m_pInt);
return TRUE;
}
} else
#endif
#if wxUSE_RADIOBOX
if (m_validatorWindow->IsKindOf(CLASSINFO(wxRadioBox)) )
{
wxRadioBox* pControl = (wxRadioBox*) m_validatorWindow;
if (m_pInt)
{
pControl->SetSelection(*m_pInt) ;
return TRUE;
}
if (m_pInt)
{
pControl->SetSelection(*m_pInt) ;
return TRUE;
}
} else
#endif
#if wxUSE_SCROLLBAR
if (m_validatorWindow->IsKindOf(CLASSINFO(wxScrollBar)) )
{
wxScrollBar* pControl = (wxScrollBar*) m_validatorWindow;
if (m_pInt)
{
pControl->SetThumbPosition(*m_pInt) ;
return TRUE;
}
if (m_pInt)
{
pControl->SetThumbPosition(*m_pInt) ;
return TRUE;
}
} else
#endif
#if wxUSE_SPINCTRL && !defined(__WIN16__) && !defined(__WXMOTIF__)
@ -180,11 +180,11 @@ bool wxGenericValidator::TransferToWindow(void)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxSpinButton)) )
{
wxSpinButton* pControl = (wxSpinButton*) m_validatorWindow;
if (m_pInt)
{
pControl->SetValue(*m_pInt) ;
return TRUE;
}
if (m_pInt)
{
pControl->SetValue(*m_pInt) ;
return TRUE;
}
} else
#endif
#if wxUSE_SLIDER
@ -193,21 +193,21 @@ bool wxGenericValidator::TransferToWindow(void)
wxSlider* pControl = (wxSlider*) m_validatorWindow;
if (m_pInt)
{
pControl->SetValue(*m_pInt) ;
return TRUE;
}
pControl->SetValue(*m_pInt) ;
return TRUE;
}
} else
#endif
// string controls
// string controls
if (m_validatorWindow->IsKindOf(CLASSINFO(wxButton)) )
{
wxButton* pControl = (wxButton*) m_validatorWindow;
if (m_pString)
{
pControl->SetLabel(*m_pString) ;
return TRUE;
}
if (m_pString)
{
pControl->SetLabel(*m_pString) ;
return TRUE;
}
} else
#if wxUSE_COMBOBOX
if (m_validatorWindow->IsKindOf(CLASSINFO(wxComboBox)) )
@ -255,7 +255,7 @@ bool wxGenericValidator::TransferToWindow(void)
pControl->SetLabel(*m_pString) ;
return TRUE;
}
} else
} else
if (m_validatorWindow->IsKindOf(CLASSINFO(wxTextCtrl)) )
{
wxTextCtrl* pControl = (wxTextCtrl*) m_validatorWindow;
@ -272,15 +272,14 @@ bool wxGenericValidator::TransferToWindow(void)
return TRUE;
}
} else
#if wxUSE_CHECKLISTBOX
#ifndef __WIN16__
#if wxUSE_CHECKLISTBOX && !defined(__WIN16__)
// array controls
// NOTE: wxCheckListBox isa wxListBox, so wxCheckListBox
// MUST come first:
if (m_validatorWindow->IsKindOf(CLASSINFO(wxCheckListBox)) )
{
wxCheckListBox* pControl = (wxCheckListBox*) m_validatorWindow;
if (m_pArrayInt)
if (m_pArrayInt)
{
// clear all selections
int i;
@ -292,32 +291,31 @@ bool wxGenericValidator::TransferToWindow(void)
pControl->Check(m_pArrayInt->Item(u));
return TRUE;
}
else
return FALSE;
else
return FALSE;
} else
#endif
#endif
#if wxUSE_LISTBOX
if (m_validatorWindow->IsKindOf(CLASSINFO(wxListBox)) )
{
wxListBox* pControl = (wxListBox*) m_validatorWindow;
if (m_pArrayInt)
{
// clear all selections
int i;
for (i = 0 ; i < pControl->Number(); ++i)
pControl->Deselect(i);
// select each item in our array
unsigned u;
for (u = 0; u < m_pArrayInt->Count(); ++u)
pControl->SetSelection(m_pArrayInt->Item(u));
return TRUE;
}
if (m_pArrayInt)
{
// clear all selections
int i;
for (i = 0 ; i < pControl->Number(); ++i)
pControl->Deselect(i);
// select each item in our array
unsigned u;
for (u = 0; u < m_pArrayInt->Count(); ++u)
pControl->SetSelection(m_pArrayInt->Item(u));
return TRUE;
}
} else
#endif
; // to match the last 'else' above
// unrecognized control, or bad pointer
return FALSE;
return FALSE;
}
@ -332,7 +330,7 @@ bool wxGenericValidator::TransferFromWindow(void)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxCheckBox)) )
{
wxCheckBox* pControl = (wxCheckBox*) m_validatorWindow;
if (m_pBool)
if (m_pBool)
{
*m_pBool = pControl->GetValue() ;
return TRUE;
@ -343,7 +341,7 @@ bool wxGenericValidator::TransferFromWindow(void)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxRadioButton)) )
{
wxRadioButton* pControl = (wxRadioButton*) m_validatorWindow;
if (m_pBool)
if (m_pBool)
{
*m_pBool = pControl->GetValue() ;
return TRUE;
@ -355,7 +353,7 @@ bool wxGenericValidator::TransferFromWindow(void)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxGauge)) )
{
wxGauge* pControl = (wxGauge*) m_validatorWindow;
if (m_pInt)
if (m_pInt)
{
*m_pInt = pControl->GetValue() ;
return TRUE;
@ -366,7 +364,7 @@ bool wxGenericValidator::TransferFromWindow(void)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxRadioBox)) )
{
wxRadioBox* pControl = (wxRadioBox*) m_validatorWindow;
if (m_pInt)
if (m_pInt)
{
*m_pInt = pControl->GetSelection() ;
return TRUE;
@ -377,7 +375,7 @@ bool wxGenericValidator::TransferFromWindow(void)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxScrollBar)) )
{
wxScrollBar* pControl = (wxScrollBar*) m_validatorWindow;
if (m_pInt)
if (m_pInt)
{
*m_pInt = pControl->GetThumbPosition() ;
return TRUE;
@ -399,7 +397,7 @@ bool wxGenericValidator::TransferFromWindow(void)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxSpinButton)) )
{
wxSpinButton* pControl = (wxSpinButton*) m_validatorWindow;
if (m_pInt)
if (m_pInt)
{
*m_pInt = pControl->GetValue() ;
return TRUE;
@ -421,7 +419,7 @@ bool wxGenericValidator::TransferFromWindow(void)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxButton)) )
{
wxButton* pControl = (wxButton*) m_validatorWindow;
if (m_pString)
if (m_pString)
{
*m_pString = pControl->GetLabel() ;
return TRUE;
@ -432,9 +430,9 @@ bool wxGenericValidator::TransferFromWindow(void)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxComboBox)) )
{
wxComboBox* pControl = (wxComboBox*) m_validatorWindow;
if (m_pString)
if (m_pInt)
{
*m_pString = pControl->GetValue() ;
*m_pInt = pControl->GetSelection() ;
return TRUE;
}
else if (m_pString)
@ -448,7 +446,7 @@ bool wxGenericValidator::TransferFromWindow(void)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxChoice)) )
{
wxChoice* pControl = (wxChoice*) m_validatorWindow;
if (m_pInt)
if (m_pInt)
{
*m_pInt = pControl->GetSelection() ;
return TRUE;
@ -463,7 +461,7 @@ bool wxGenericValidator::TransferFromWindow(void)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxStaticText)) )
{
wxStaticText* pControl = (wxStaticText*) m_validatorWindow;
if (m_pString)
if (m_pString)
{
*m_pString = pControl->GetLabel() ;
return TRUE;
@ -472,7 +470,7 @@ bool wxGenericValidator::TransferFromWindow(void)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxTextCtrl)) )
{
wxTextCtrl* pControl = (wxTextCtrl*) m_validatorWindow;
if (m_pString)
if (m_pString)
{
*m_pString = pControl->GetValue() ;
return TRUE;
@ -491,7 +489,7 @@ bool wxGenericValidator::TransferFromWindow(void)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxCheckListBox)) )
{
wxCheckListBox* pControl = (wxCheckListBox*) m_validatorWindow;
if (m_pArrayInt)
if (m_pArrayInt)
{
// clear our array
m_pArrayInt->Clear();
@ -502,8 +500,8 @@ bool wxGenericValidator::TransferFromWindow(void)
m_pArrayInt->Add(i);
return TRUE;
}
else
return FALSE;
else
return FALSE;
} else
#endif
#endif
@ -511,7 +509,7 @@ bool wxGenericValidator::TransferFromWindow(void)
if (m_validatorWindow->IsKindOf(CLASSINFO(wxListBox)) )
{
wxListBox* pControl = (wxListBox*) m_validatorWindow;
if (m_pArrayInt)
if (m_pArrayInt)
{
// clear our array
m_pArrayInt->Clear();
@ -532,7 +530,6 @@ bool wxGenericValidator::TransferFromWindow(void)
/*
Called by constructors to initialize ALL data members
Last change: JAC 21 Jul 100 5:00 pm
*/
void wxGenericValidator::Initialize()
{

View file

@ -45,10 +45,11 @@ wxString wxGetSingleChoice( const wxString& message, const wxString& caption, in
int WXUNUSED(width), int WXUNUSED(height) )
{
wxSingleChoiceDialog dialog(parent, message, caption, n, choices);
wxString choice;
if ( dialog.ShowModal() == wxID_OK )
return dialog.GetStringSelection();
else
return wxT("");
choice = dialog.GetStringSelection();
return choice;
}
// Overloaded for backward compatibility
@ -75,10 +76,13 @@ int wxGetSingleChoiceIndex( const wxString& message, const wxString& caption, in
int WXUNUSED(width), int WXUNUSED(height) )
{
wxSingleChoiceDialog dialog(parent, message, caption, n, choices);
int choice;
if ( dialog.ShowModal() == wxID_OK )
return dialog.GetSelection();
choice = dialog.GetSelection();
else
return -1;
choice = -1;
return choice;
}
// Overloaded for backward compatibility
@ -102,10 +106,13 @@ void *wxGetSingleChoiceData( const wxString& message, const wxString& caption, i
int WXUNUSED(width), int WXUNUSED(height) )
{
wxSingleChoiceDialog dialog(parent, message, caption, n, choices, (char **)client_data);
void *data;
if ( dialog.ShowModal() == wxID_OK )
return dialog.GetSelectionClientData();
data = dialog.GetSelectionClientData();
else
return NULL;
data = NULL;
return data;
}
// Overloaded for backward compatibility

View file

@ -1046,7 +1046,7 @@ void wxPostScriptDC::SetPen( const wxPen& pen )
sprintf( buffer, "%f setlinewidth\n", XLOG2DEVREL(1000 * m_pen.GetWidth()) / 1000.0f );
#endif
for (int i = 0; i < 100; i++)
if (buffer[i] == ',') buffer[i] = '.';
if (buffer[i] == ',') buffer[i] = '.';
fprintf( m_pstream, buffer );
}
@ -1109,13 +1109,13 @@ void wxPostScriptDC::SetPen( const wxPen& pen )
double redPS = (double)(red) / 255.0;
double bluePS = (double)(blue) / 255.0;
double greenPS = (double)(green) / 255.0;
char buffer[100];
sprintf( buffer,
"%.8f %.8f %.8f setrgbcolor\n",
redPS, greenPS, bluePS );
for (int i = 0; i < 100; i++)
if (buffer[i] == ',') buffer[i] = '.';
if (buffer[i] == ',') buffer[i] = '.';
fprintf( m_pstream, buffer );
m_currentRed = red;
@ -1162,7 +1162,7 @@ void wxPostScriptDC::SetBrush( const wxBrush& brush )
"%.8f %.8f %.8f setrgbcolor\n",
redPS, greenPS, bluePS );
for (int i = 0; i < 100; i++)
if (buffer[i] == ',') buffer[i] = '.';
if (buffer[i] == ',') buffer[i] = '.';
fprintf( m_pstream, buffer );
m_currentRed = red;
@ -1212,7 +1212,7 @@ void wxPostScriptDC::DoDrawText( const wxString& text, wxCoord x, wxCoord y )
"%.8f %.8f %.8f setrgbcolor\n",
redPS, greenPS, bluePS );
for (int i = 0; i < 100; i++)
if (buffer[i] == ',') buffer[i] = '.';
if (buffer[i] == ',') buffer[i] = '.';
fprintf( m_pstream, buffer );
m_currentRed = red;
@ -1277,7 +1277,7 @@ void wxPostScriptDC::DoDrawText( const wxString& text, wxCoord x, wxCoord y )
m_underlineThickness,
XLOG2DEV(x + text_w), YLOG2DEV(uy) );
for (i = 0; i < 100; i++)
if (buffer[i] == ',') buffer[i] = '.';
if (buffer[i] == ',') buffer[i] = '.';
fprintf( m_pstream, buffer );
}
@ -1328,7 +1328,7 @@ void wxPostScriptDC::DoDrawRotatedText( const wxString& text, wxCoord x, wxCoord
"%.8f %.8f %.8f setrgbcolor\n",
redPS, greenPS, bluePS );
for (int i = 0; i < 100; i++)
if (buffer[i] == ',') buffer[i] = '.';
if (buffer[i] == ',') buffer[i] = '.';
fprintf( m_pstream, buffer );
m_currentRed = red;
@ -1343,13 +1343,13 @@ void wxPostScriptDC::DoDrawRotatedText( const wxString& text, wxCoord x, wxCoord
// FIXME only correct for 90 degrees
fprintf(m_pstream, "%d %d moveto\n",
XLOG2DEV((wxCoord)(x + size)), YLOG2DEV(by) );
XLOG2DEV((wxCoord)(x + size)), YLOG2DEV((wxCoord)by) );
char buffer[100];
sprintf(buffer, "%.8f rotate\n", angle);
int i;
for (i = 0; i < 100; i++)
if (buffer[i] == ',') buffer[i] = '.';
if (buffer[i] == ',') buffer[i] = '.';
fprintf(m_pstream, buffer);
/* I don't know how to write char to a stream, so I use a mini string */
@ -1382,10 +1382,10 @@ void wxPostScriptDC::DoDrawRotatedText( const wxString& text, wxCoord x, wxCoord
}
fprintf( m_pstream, ") show\n" );
sprintf( buffer, "%.8f rotate\n", -angle );
for (i = 0; i < 100; i++)
if (buffer[i] == ',') buffer[i] = '.';
if (buffer[i] == ',') buffer[i] = '.';
fprintf( m_pstream, buffer );
if (m_font.GetUnderlined())
@ -1406,7 +1406,7 @@ void wxPostScriptDC::DoDrawRotatedText( const wxString& text, wxCoord x, wxCoord
m_underlineThickness,
XLOG2DEV(x + w), YLOG2DEV(uy) );
for (i = 0; i < 100; i++)
if (buffer[i] == ',') buffer[i] = '.';
if (buffer[i] == ',') buffer[i] = '.';
fprintf( m_pstream, buffer );
}
@ -1819,7 +1819,7 @@ void wxPostScriptDC::StartPage()
for (int i = 0; i < 100; i++)
if (buffer[i] == ',') buffer[i] = '.';
fprintf( m_pstream, buffer );
fprintf( m_pstream, "%d %d translate\n", translate_x, translate_y );
}
@ -2141,9 +2141,9 @@ void wxPostScriptDC::DoGetTextExtent(const wxString& string,
// VS: dirty, but is there any better solution?
double *pt;
pt = (double*) &m_underlinePosition;
*pt = YLOG2DEVREL(UnderlinePosition * fontToUse->GetPointSize()) / 1000.0f;
*pt = YLOG2DEVREL((wxCoord)(UnderlinePosition * fontToUse->GetPointSize())) / 1000.0f;
pt = (double*) &m_underlineThickness;
*pt = YLOG2DEVREL(UnderlineThickness * fontToUse->GetPointSize()) / 1000.0f;
*pt = YLOG2DEVREL((wxCoord)(UnderlineThickness * fontToUse->GetPointSize())) / 1000.0f;
}
@ -2510,7 +2510,8 @@ void wxPrintSetupData::operator=(const wxPrintData& data)
SetPrinterCommand(data.GetPrinterCommand());
SetPrintPreviewCommand(data.GetPreviewCommand());
SetPrinterOptions(data.GetPrinterOptions());
SetPrinterTranslation(data.GetPrinterTranslateX(), data.GetPrinterTranslateY());
SetPrinterTranslation((wxCoord)data.GetPrinterTranslateX(),
(wxCoord)data.GetPrinterTranslateY());
SetPrinterScaling(data.GetPrinterScaleX(), data.GetPrinterScaleY());
SetPrinterOrientation(data.GetOrientation());
SetPrinterMode((int) data.GetPrintMode());

View file

@ -3825,8 +3825,9 @@ bool wxGrid::Redimension( wxGridTableMessage& msg )
wxGridCellAttrProvider * attrProvider = m_table->GetAttrProvider();
if (attrProvider) {
attrProvider->UpdateAttrRows( pos, -((int)numRows) );
// ifdef'd out following patch from Paul Gammans
#if 0
// ifdef'd out following patch from Paul Gammans
#if 0
// No need to touch column attributes, unless we
// removed _all_ rows, in this case, we remove
// all column attributes.
// I hate to do this here, but the
@ -3961,7 +3962,7 @@ bool wxGrid::Redimension( wxGridTableMessage& msg )
if (attrProvider) {
attrProvider->UpdateAttrCols( pos, -((int)numCols) );
// ifdef'd out following patch from Paul Gammans
#if 0
#if 0
// No need to touch row attributes, unless we
// removed _all_ columns, in this case, we remove
// all row attributes.
@ -5595,7 +5596,7 @@ void wxGrid::SetCurrentCell( const wxGridCellCoords& coords )
HideCellEditControl();
DisableCellEditControl();
if ( IsVisible( m_currentCellCoords, FALSE ) ) // zzz
if ( IsVisible( m_currentCellCoords, FALSE ) )
{
wxRect r;
r = BlockToDeviceRect(m_currentCellCoords, m_currentCellCoords);
@ -6417,7 +6418,7 @@ void wxGrid::ShowCellEditControl()
{
if ( !IsVisible( m_currentCellCoords ) )
{
m_cellEditCtrlEnabled = false;
m_cellEditCtrlEnabled = FALSE;
return;
}
else

View file

@ -1297,12 +1297,12 @@ void wxListHeaderWindow::OnMouse( wxMouseEvent &event )
{
// we want to work with logical coords
#if wxUSE_GENERIC_LIST_EXTENSIONS
int x, y;
m_owner->CalcUnscrolledPosition(event.GetX(), event.GetY(), &x, &y);
int x;
m_owner->CalcUnscrolledPosition(event.GetX(), 0, &x, NULL);
#else // !wxUSE_GENERIC_LIST_EXTENSIONS
int x = event.GetX();
int y = event.GetY();
#endif // wxUSE_GENERIC_LIST_EXTENSIONS
int y = event.GetY();
if (m_isDragging)
{
@ -2880,7 +2880,7 @@ long wxListMainWindow::FindItem(long start, const wxString& str, bool WXUNUSED(p
long pos = start;
wxString tmp = str;
if (pos < 0) pos = 0;
for (size_t i = pos; i < m_lines.GetCount(); i++)
for (size_t i = (size_t)pos; i < m_lines.GetCount(); i++)
{
wxListLineData *line = &m_lines[i];
wxString s = "";
@ -2895,7 +2895,7 @@ long wxListMainWindow::FindItem(long start, long data)
{
long pos = start;
if (pos < 0) pos = 0;
for (size_t i = pos; i < m_lines.GetCount(); i++)
for (size_t i = (size_t)pos; i < m_lines.GetCount(); i++)
{
wxListLineData *line = &m_lines[i];
wxListItem item;

View file

@ -111,7 +111,11 @@ bool wxComboBox::Create( wxWindow *parent, wxWindowID id, const wxString& value,
m_widget = gtk_combo_new();
// make it more useable
gtk_combo_set_use_arrows_always(GTK_COMBO(m_widget), TRUE);
gtk_combo_set_use_arrows_always( GTK_COMBO(m_widget), TRUE );
// and case-sensitive
gtk_combo_set_case_sensitive( GTK_COMBO(m_widget), TRUE );
GtkWidget *list = GTK_COMBO(m_widget)->list;

View file

@ -43,6 +43,10 @@
#include "cross.xbm"
#define num_hatches 6
#define IS_15_PIX_HATCH(s) ((s)==wxCROSSDIAG_HATCH || (s)==wxHORIZONTAL_HATCH || (s)==wxVERTICAL_HATCH)
#define IS_16_PIX_HATCH(s) ((s)!=wxCROSSDIAG_HATCH && (s)!=wxHORIZONTAL_HATCH && (s)!=wxVERTICAL_HATCH)
static GdkPixmap *hatches[num_hatches];
static GdkPixmap **hatch_bitmap = (GdkPixmap **) NULL;
@ -491,6 +495,18 @@ void wxWindowDC::DoDrawArc( wxCoord x1, wxCoord y1, wxCoord x2, wxCoord y2,
gdk_draw_arc( m_window, m_textGC, TRUE, xxc-r, yyc-r, 2*r,2*r, alpha1, alpha2 );
gdk_gc_set_ts_origin( m_textGC, 0, 0 );
} else
if (IS_15_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 15, m_deviceOriginY % 15 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xxc-r, yyc-r, 2*r,2*r, alpha1, alpha2 );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (IS_16_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 16, m_deviceOriginY % 16 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xxc-r, yyc-r, 2*r,2*r, alpha1, alpha2 );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (m_brush.GetStyle() == wxSTIPPLE)
{
gdk_gc_set_ts_origin( m_brushGC,
@ -541,6 +557,18 @@ void wxWindowDC::DoDrawEllipticArc( wxCoord x, wxCoord y, wxCoord width, wxCoord
gdk_draw_arc( m_window, m_textGC, TRUE, xx, yy, ww, hh, start, end );
gdk_gc_set_ts_origin( m_textGC, 0, 0 );
} else
if (IS_15_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 15, m_deviceOriginY % 15 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx, yy, ww, hh, start, end );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (IS_16_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 16, m_deviceOriginY % 16 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx, yy, ww, hh, start, end );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (m_brush.GetStyle() == wxSTIPPLE)
{
gdk_gc_set_ts_origin( m_brushGC,
@ -624,6 +652,18 @@ void wxWindowDC::DoDrawPolygon( int n, wxPoint points[], wxCoord xoffset, wxCoor
gdk_draw_polygon( m_window, m_textGC, TRUE, gdkpoints, n );
gdk_gc_set_ts_origin( m_textGC, 0, 0 );
} else
if (IS_15_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 15, m_deviceOriginY % 15 );
gdk_draw_polygon( m_window, m_brushGC, TRUE, gdkpoints, n );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (IS_16_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 16, m_deviceOriginY % 16 );
gdk_draw_polygon( m_window, m_brushGC, TRUE, gdkpoints, n );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (m_brush.GetStyle() == wxSTIPPLE)
{
gdk_gc_set_ts_origin( m_brushGC,
@ -681,8 +721,20 @@ void wxWindowDC::DoDrawRectangle( wxCoord x, wxCoord y, wxCoord width, wxCoord h
m_deviceOriginY % m_brush.GetStipple()->GetHeight() );
gdk_draw_rectangle( m_window, m_textGC, TRUE, xx, yy, ww, hh );
gdk_gc_set_ts_origin( m_textGC, 0, 0 );
}
else if (m_brush.GetStyle() == wxSTIPPLE)
} else
if (IS_15_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 15, m_deviceOriginY % 15 );
gdk_draw_rectangle( m_window, m_brushGC, TRUE, xx, yy, ww, hh );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (IS_16_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 16, m_deviceOriginY % 16 );
gdk_draw_rectangle( m_window, m_brushGC, TRUE, xx, yy, ww, hh );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (m_brush.GetStyle() == wxSTIPPLE)
{
gdk_gc_set_ts_origin( m_brushGC,
m_deviceOriginX % m_brush.GetStipple()->GetWidth(),
@ -762,8 +814,30 @@ void wxWindowDC::DoDrawRoundedRectangle( wxCoord x, wxCoord y, wxCoord width, wx
gdk_draw_arc( m_window, m_textGC, TRUE, xx+ww-dd, yy+hh-dd, dd, dd, 270*64, 90*64 );
gdk_draw_arc( m_window, m_textGC, TRUE, xx, yy+hh-dd, dd, dd, 180*64, 90*64 );
gdk_gc_set_ts_origin( m_textGC, 0, 0 );
}
else if (m_brush.GetStyle() == wxSTIPPLE)
} else
if (IS_15_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 15, m_deviceOriginY % 15 );
gdk_draw_rectangle( m_window, m_brushGC, TRUE, xx+rr, yy, ww-dd+1, hh );
gdk_draw_rectangle( m_window, m_brushGC, TRUE, xx, yy+rr, ww, hh-dd+1 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx, yy, dd, dd, 90*64, 90*64 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx+ww-dd, yy, dd, dd, 0, 90*64 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx+ww-dd, yy+hh-dd, dd, dd, 270*64, 90*64 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx, yy+hh-dd, dd, dd, 180*64, 90*64 );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (IS_16_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 16, m_deviceOriginY % 16 );
gdk_draw_rectangle( m_window, m_brushGC, TRUE, xx+rr, yy, ww-dd+1, hh );
gdk_draw_rectangle( m_window, m_brushGC, TRUE, xx, yy+rr, ww, hh-dd+1 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx, yy, dd, dd, 90*64, 90*64 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx+ww-dd, yy, dd, dd, 0, 90*64 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx+ww-dd, yy+hh-dd, dd, dd, 270*64, 90*64 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx, yy+hh-dd, dd, dd, 180*64, 90*64 );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (m_brush.GetStyle() == wxSTIPPLE)
{
gdk_gc_set_ts_origin( m_brushGC,
m_deviceOriginX % m_brush.GetStipple()->GetWidth(),
@ -789,10 +863,10 @@ void wxWindowDC::DoDrawRoundedRectangle( wxCoord x, wxCoord y, wxCoord width, wx
if (m_pen.GetStyle() != wxTRANSPARENT)
{
gdk_draw_line( m_window, m_penGC, xx+rr, yy, xx+ww-rr, yy );
gdk_draw_line( m_window, m_penGC, xx+rr, yy+hh, xx+ww-rr, yy+hh );
gdk_draw_line( m_window, m_penGC, xx, yy+rr, xx, yy+hh-rr );
gdk_draw_line( m_window, m_penGC, xx+ww, yy+rr, xx+ww, yy+hh-rr );
gdk_draw_line( m_window, m_penGC, xx+rr+1, yy, xx+ww-rr, yy );
gdk_draw_line( m_window, m_penGC, xx+rr+1, yy+hh, xx+ww-rr, yy+hh );
gdk_draw_line( m_window, m_penGC, xx, yy+rr+1, xx, yy+hh-rr );
gdk_draw_line( m_window, m_penGC, xx+ww, yy+rr+1, xx+ww, yy+hh-rr );
gdk_draw_arc( m_window, m_penGC, FALSE, xx, yy, dd, dd, 90*64, 90*64 );
gdk_draw_arc( m_window, m_penGC, FALSE, xx+ww-dd, yy, dd, dd, 0, 90*64 );
gdk_draw_arc( m_window, m_penGC, FALSE, xx+ww-dd, yy+hh-dd, dd, dd, 270*64, 90*64 );
@ -829,8 +903,20 @@ void wxWindowDC::DoDrawEllipse( wxCoord x, wxCoord y, wxCoord width, wxCoord hei
m_deviceOriginY % m_brush.GetStipple()->GetHeight() );
gdk_draw_arc( m_window, m_textGC, TRUE, xx, yy, ww, hh, 0, 360*64 );
gdk_gc_set_ts_origin( m_textGC, 0, 0 );
}
else if (m_brush.GetStyle() == wxSTIPPLE)
} else
if (IS_15_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 15, m_deviceOriginY % 15 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx, yy, ww, hh, 0, 360*64 );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (IS_16_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 16, m_deviceOriginY % 16 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx, yy, ww, hh, 0, 360*64 );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (m_brush.GetStyle() == wxSTIPPLE)
{
gdk_gc_set_ts_origin( m_brushGC,
m_deviceOriginX % m_brush.GetStipple()->GetWidth(),

View file

@ -567,7 +567,8 @@ static void gtk_menu_clicked_callback( GtkWidget *widget, wxMenu *menu )
wxCommandEvent event( wxEVT_COMMAND_MENU_SELECTED, id );
event.SetEventObject( menu );
event.SetInt(id );
if (item->IsCheckable())
event.SetInt( item->IsChecked() );
#if wxUSE_MENU_CALLBACK
if (menu->GetCallback())
@ -948,8 +949,9 @@ bool wxMenu::GtkAppend(wxMenuItem *mitem)
// due to an apparent bug in GTK+, we have to use a static buffer here -
// otherwise GTK+ 1.2.2 manages to override the memory we pass to it
// somehow! (VZ)
static char s_accel[32]; // must be big enough for <control><alt><shift>F12
strncpy(s_accel, GetHotKey(*mitem).mb_str(), WXSIZEOF(s_accel));
static char s_accel[50]; // must be big enougg
wxString tmp( GetHotKey(*mitem) );
strncpy(s_accel, tmp.mb_str(), WXSIZEOF(s_accel));
entry.accelerator = s_accel;
#else // !wxUSE_ACCEL
entry.accelerator = (char*) NULL;
@ -1090,6 +1092,20 @@ static wxString GetHotKey( const wxMenuItem& item )
case WXK_F12:
hotkey << wxT('F') << code - WXK_F1 + 1;
break;
// GTK seems to use XStringToKeySym here
case WXK_NUMPAD_INSERT:
hotkey << wxT("KP_Insert" );
break;
case WXK_NUMPAD_DELETE:
hotkey << wxT("KP_Delete" );
break;
case WXK_INSERT:
hotkey << wxT("Insert" );
break;
case WXK_DELETE:
hotkey << wxT("Delete" );
break;
// if there are any other keys wxGetAccelFromString() may return,
// we should process them here

View file

@ -45,28 +45,28 @@ bool wxStaticLine::Create( wxWindow *parent, wxWindowID id,
!CreateBase( parent, id, pos, size, style, wxDefaultValidator, name ))
{
wxFAIL_MSG( wxT("wxStaticLine creation failed") );
return FALSE;
return FALSE;
}
if ( IsVertical() )
{
m_widget = gtk_vseparator_new();
if (size.x == -1)
{
wxSize new_size( size );
new_size.x = 4;
SetSize( new_size );
}
if (size.x == -1)
{
wxSize new_size( size );
new_size.x = 4;
SetSize( new_size );
}
}
else
{
m_widget = gtk_hseparator_new();
if (size.y == -1)
{
wxSize new_size( size );
new_size.y = 4;
SetSize( new_size );
}
if (size.y == -1)
{
wxSize new_size( size );
new_size.y = 4;
SetSize( new_size );
}
}
m_parent->DoAddChild( this );

View file

@ -98,6 +98,8 @@ END_EVENT_TABLE()
wxTextCtrl::wxTextCtrl()
{
m_modified = FALSE;
m_text =
m_vScrollbar = (GtkWidget *)NULL;
}
wxTextCtrl::wxTextCtrl( wxWindow *parent,

View file

@ -77,13 +77,13 @@ static void gtk_pizza_adjust_allocations (GtkPizza *pizza,
gint dy);
/* unused */
#if 0
static void gtk_pizza_expose_area (GtkPizza *pizza,
gint x,
gint y,
gint width,
gint height);
/* unused */
#if 0
static void gtk_pizza_adjustment_changed (GtkAdjustment *adjustment,
GtkPizza *pizza);
#endif
@ -981,6 +981,8 @@ gtk_pizza_adjust_allocations (GtkPizza *pizza,
/* Callbacks */
/* unused */
#if 0
/* Send a synthetic expose event to the widget
*/
static void
@ -1006,6 +1008,7 @@ gtk_pizza_expose_area (GtkPizza *pizza,
gdk_window_unref (event.window);
}
}
#endif /* unused */
/* This function is used to find events to process while scrolling
*/

View file

@ -111,7 +111,11 @@ bool wxComboBox::Create( wxWindow *parent, wxWindowID id, const wxString& value,
m_widget = gtk_combo_new();
// make it more useable
gtk_combo_set_use_arrows_always(GTK_COMBO(m_widget), TRUE);
gtk_combo_set_use_arrows_always( GTK_COMBO(m_widget), TRUE );
// and case-sensitive
gtk_combo_set_case_sensitive( GTK_COMBO(m_widget), TRUE );
GtkWidget *list = GTK_COMBO(m_widget)->list;

View file

@ -43,6 +43,10 @@
#include "cross.xbm"
#define num_hatches 6
#define IS_15_PIX_HATCH(s) ((s)==wxCROSSDIAG_HATCH || (s)==wxHORIZONTAL_HATCH || (s)==wxVERTICAL_HATCH)
#define IS_16_PIX_HATCH(s) ((s)!=wxCROSSDIAG_HATCH && (s)!=wxHORIZONTAL_HATCH && (s)!=wxVERTICAL_HATCH)
static GdkPixmap *hatches[num_hatches];
static GdkPixmap **hatch_bitmap = (GdkPixmap **) NULL;
@ -491,6 +495,18 @@ void wxWindowDC::DoDrawArc( wxCoord x1, wxCoord y1, wxCoord x2, wxCoord y2,
gdk_draw_arc( m_window, m_textGC, TRUE, xxc-r, yyc-r, 2*r,2*r, alpha1, alpha2 );
gdk_gc_set_ts_origin( m_textGC, 0, 0 );
} else
if (IS_15_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 15, m_deviceOriginY % 15 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xxc-r, yyc-r, 2*r,2*r, alpha1, alpha2 );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (IS_16_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 16, m_deviceOriginY % 16 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xxc-r, yyc-r, 2*r,2*r, alpha1, alpha2 );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (m_brush.GetStyle() == wxSTIPPLE)
{
gdk_gc_set_ts_origin( m_brushGC,
@ -541,6 +557,18 @@ void wxWindowDC::DoDrawEllipticArc( wxCoord x, wxCoord y, wxCoord width, wxCoord
gdk_draw_arc( m_window, m_textGC, TRUE, xx, yy, ww, hh, start, end );
gdk_gc_set_ts_origin( m_textGC, 0, 0 );
} else
if (IS_15_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 15, m_deviceOriginY % 15 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx, yy, ww, hh, start, end );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (IS_16_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 16, m_deviceOriginY % 16 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx, yy, ww, hh, start, end );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (m_brush.GetStyle() == wxSTIPPLE)
{
gdk_gc_set_ts_origin( m_brushGC,
@ -624,6 +652,18 @@ void wxWindowDC::DoDrawPolygon( int n, wxPoint points[], wxCoord xoffset, wxCoor
gdk_draw_polygon( m_window, m_textGC, TRUE, gdkpoints, n );
gdk_gc_set_ts_origin( m_textGC, 0, 0 );
} else
if (IS_15_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 15, m_deviceOriginY % 15 );
gdk_draw_polygon( m_window, m_brushGC, TRUE, gdkpoints, n );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (IS_16_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 16, m_deviceOriginY % 16 );
gdk_draw_polygon( m_window, m_brushGC, TRUE, gdkpoints, n );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (m_brush.GetStyle() == wxSTIPPLE)
{
gdk_gc_set_ts_origin( m_brushGC,
@ -681,8 +721,20 @@ void wxWindowDC::DoDrawRectangle( wxCoord x, wxCoord y, wxCoord width, wxCoord h
m_deviceOriginY % m_brush.GetStipple()->GetHeight() );
gdk_draw_rectangle( m_window, m_textGC, TRUE, xx, yy, ww, hh );
gdk_gc_set_ts_origin( m_textGC, 0, 0 );
}
else if (m_brush.GetStyle() == wxSTIPPLE)
} else
if (IS_15_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 15, m_deviceOriginY % 15 );
gdk_draw_rectangle( m_window, m_brushGC, TRUE, xx, yy, ww, hh );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (IS_16_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 16, m_deviceOriginY % 16 );
gdk_draw_rectangle( m_window, m_brushGC, TRUE, xx, yy, ww, hh );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (m_brush.GetStyle() == wxSTIPPLE)
{
gdk_gc_set_ts_origin( m_brushGC,
m_deviceOriginX % m_brush.GetStipple()->GetWidth(),
@ -762,8 +814,30 @@ void wxWindowDC::DoDrawRoundedRectangle( wxCoord x, wxCoord y, wxCoord width, wx
gdk_draw_arc( m_window, m_textGC, TRUE, xx+ww-dd, yy+hh-dd, dd, dd, 270*64, 90*64 );
gdk_draw_arc( m_window, m_textGC, TRUE, xx, yy+hh-dd, dd, dd, 180*64, 90*64 );
gdk_gc_set_ts_origin( m_textGC, 0, 0 );
}
else if (m_brush.GetStyle() == wxSTIPPLE)
} else
if (IS_15_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 15, m_deviceOriginY % 15 );
gdk_draw_rectangle( m_window, m_brushGC, TRUE, xx+rr, yy, ww-dd+1, hh );
gdk_draw_rectangle( m_window, m_brushGC, TRUE, xx, yy+rr, ww, hh-dd+1 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx, yy, dd, dd, 90*64, 90*64 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx+ww-dd, yy, dd, dd, 0, 90*64 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx+ww-dd, yy+hh-dd, dd, dd, 270*64, 90*64 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx, yy+hh-dd, dd, dd, 180*64, 90*64 );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (IS_16_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 16, m_deviceOriginY % 16 );
gdk_draw_rectangle( m_window, m_brushGC, TRUE, xx+rr, yy, ww-dd+1, hh );
gdk_draw_rectangle( m_window, m_brushGC, TRUE, xx, yy+rr, ww, hh-dd+1 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx, yy, dd, dd, 90*64, 90*64 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx+ww-dd, yy, dd, dd, 0, 90*64 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx+ww-dd, yy+hh-dd, dd, dd, 270*64, 90*64 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx, yy+hh-dd, dd, dd, 180*64, 90*64 );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (m_brush.GetStyle() == wxSTIPPLE)
{
gdk_gc_set_ts_origin( m_brushGC,
m_deviceOriginX % m_brush.GetStipple()->GetWidth(),
@ -789,10 +863,10 @@ void wxWindowDC::DoDrawRoundedRectangle( wxCoord x, wxCoord y, wxCoord width, wx
if (m_pen.GetStyle() != wxTRANSPARENT)
{
gdk_draw_line( m_window, m_penGC, xx+rr, yy, xx+ww-rr, yy );
gdk_draw_line( m_window, m_penGC, xx+rr, yy+hh, xx+ww-rr, yy+hh );
gdk_draw_line( m_window, m_penGC, xx, yy+rr, xx, yy+hh-rr );
gdk_draw_line( m_window, m_penGC, xx+ww, yy+rr, xx+ww, yy+hh-rr );
gdk_draw_line( m_window, m_penGC, xx+rr+1, yy, xx+ww-rr, yy );
gdk_draw_line( m_window, m_penGC, xx+rr+1, yy+hh, xx+ww-rr, yy+hh );
gdk_draw_line( m_window, m_penGC, xx, yy+rr+1, xx, yy+hh-rr );
gdk_draw_line( m_window, m_penGC, xx+ww, yy+rr+1, xx+ww, yy+hh-rr );
gdk_draw_arc( m_window, m_penGC, FALSE, xx, yy, dd, dd, 90*64, 90*64 );
gdk_draw_arc( m_window, m_penGC, FALSE, xx+ww-dd, yy, dd, dd, 0, 90*64 );
gdk_draw_arc( m_window, m_penGC, FALSE, xx+ww-dd, yy+hh-dd, dd, dd, 270*64, 90*64 );
@ -829,8 +903,20 @@ void wxWindowDC::DoDrawEllipse( wxCoord x, wxCoord y, wxCoord width, wxCoord hei
m_deviceOriginY % m_brush.GetStipple()->GetHeight() );
gdk_draw_arc( m_window, m_textGC, TRUE, xx, yy, ww, hh, 0, 360*64 );
gdk_gc_set_ts_origin( m_textGC, 0, 0 );
}
else if (m_brush.GetStyle() == wxSTIPPLE)
} else
if (IS_15_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 15, m_deviceOriginY % 15 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx, yy, ww, hh, 0, 360*64 );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (IS_16_PIX_HATCH(m_brush.GetStyle()))
{
gdk_gc_set_ts_origin( m_brushGC, m_deviceOriginX % 16, m_deviceOriginY % 16 );
gdk_draw_arc( m_window, m_brushGC, TRUE, xx, yy, ww, hh, 0, 360*64 );
gdk_gc_set_ts_origin( m_brushGC, 0, 0 );
} else
if (m_brush.GetStyle() == wxSTIPPLE)
{
gdk_gc_set_ts_origin( m_brushGC,
m_deviceOriginX % m_brush.GetStipple()->GetWidth(),

View file

@ -567,7 +567,8 @@ static void gtk_menu_clicked_callback( GtkWidget *widget, wxMenu *menu )
wxCommandEvent event( wxEVT_COMMAND_MENU_SELECTED, id );
event.SetEventObject( menu );
event.SetInt(id );
if (item->IsCheckable())
event.SetInt( item->IsChecked() );
#if wxUSE_MENU_CALLBACK
if (menu->GetCallback())
@ -948,8 +949,9 @@ bool wxMenu::GtkAppend(wxMenuItem *mitem)
// due to an apparent bug in GTK+, we have to use a static buffer here -
// otherwise GTK+ 1.2.2 manages to override the memory we pass to it
// somehow! (VZ)
static char s_accel[32]; // must be big enough for <control><alt><shift>F12
strncpy(s_accel, GetHotKey(*mitem).mb_str(), WXSIZEOF(s_accel));
static char s_accel[50]; // must be big enougg
wxString tmp( GetHotKey(*mitem) );
strncpy(s_accel, tmp.mb_str(), WXSIZEOF(s_accel));
entry.accelerator = s_accel;
#else // !wxUSE_ACCEL
entry.accelerator = (char*) NULL;
@ -1090,6 +1092,20 @@ static wxString GetHotKey( const wxMenuItem& item )
case WXK_F12:
hotkey << wxT('F') << code - WXK_F1 + 1;
break;
// GTK seems to use XStringToKeySym here
case WXK_NUMPAD_INSERT:
hotkey << wxT("KP_Insert" );
break;
case WXK_NUMPAD_DELETE:
hotkey << wxT("KP_Delete" );
break;
case WXK_INSERT:
hotkey << wxT("Insert" );
break;
case WXK_DELETE:
hotkey << wxT("Delete" );
break;
// if there are any other keys wxGetAccelFromString() may return,
// we should process them here

View file

@ -45,28 +45,28 @@ bool wxStaticLine::Create( wxWindow *parent, wxWindowID id,
!CreateBase( parent, id, pos, size, style, wxDefaultValidator, name ))
{
wxFAIL_MSG( wxT("wxStaticLine creation failed") );
return FALSE;
return FALSE;
}
if ( IsVertical() )
{
m_widget = gtk_vseparator_new();
if (size.x == -1)
{
wxSize new_size( size );
new_size.x = 4;
SetSize( new_size );
}
if (size.x == -1)
{
wxSize new_size( size );
new_size.x = 4;
SetSize( new_size );
}
}
else
{
m_widget = gtk_hseparator_new();
if (size.y == -1)
{
wxSize new_size( size );
new_size.y = 4;
SetSize( new_size );
}
if (size.y == -1)
{
wxSize new_size( size );
new_size.y = 4;
SetSize( new_size );
}
}
m_parent->DoAddChild( this );

View file

@ -98,6 +98,8 @@ END_EVENT_TABLE()
wxTextCtrl::wxTextCtrl()
{
m_modified = FALSE;
m_text =
m_vScrollbar = (GtkWidget *)NULL;
}
wxTextCtrl::wxTextCtrl( wxWindow *parent,

View file

@ -77,13 +77,13 @@ static void gtk_pizza_adjust_allocations (GtkPizza *pizza,
gint dy);
/* unused */
#if 0
static void gtk_pizza_expose_area (GtkPizza *pizza,
gint x,
gint y,
gint width,
gint height);
/* unused */
#if 0
static void gtk_pizza_adjustment_changed (GtkAdjustment *adjustment,
GtkPizza *pizza);
#endif
@ -981,6 +981,8 @@ gtk_pizza_adjust_allocations (GtkPizza *pizza,
/* Callbacks */
/* unused */
#if 0
/* Send a synthetic expose event to the widget
*/
static void
@ -1006,6 +1008,7 @@ gtk_pizza_expose_area (GtkPizza *pizza,
gdk_window_unref (event.window);
}
}
#endif /* unused */
/* This function is used to find events to process while scrolling
*/

View file

@ -160,7 +160,7 @@ wxString wxHtmlFilterHTML::ReadFile(const wxFSFile& file) const
return s;
}
else return doc;
return doc;
}

View file

@ -485,16 +485,14 @@ bool wxHtmlEasyPrinting::DoPreview(wxHtmlPrintout *printout1, wxHtmlPrintout *pr
delete preview;
return FALSE;
}
else {
wxPreviewFrame *frame = new wxPreviewFrame(preview, m_Frame,
m_Name + _(" Preview"),
wxPoint(100, 100), wxSize(650, 500));
frame -> Centre(wxBOTH);
frame -> Initialize();
frame -> Show(TRUE);
return TRUE;
}
wxPreviewFrame *frame = new wxPreviewFrame(preview, m_Frame,
m_Name + _(" Preview"),
wxPoint(100, 100), wxSize(650, 500));
frame -> Centre(wxBOTH);
frame -> Initialize();
frame -> Show(TRUE);
return TRUE;
}
@ -508,11 +506,9 @@ bool wxHtmlEasyPrinting::DoPrint(wxHtmlPrintout *printout)
{
return FALSE;
}
else
{
(*m_PrintData) = printer.GetPrintDialogData().GetPrintData();
return TRUE;
}
(*m_PrintData) = printer.GetPrintDialogData().GetPrintData();
return TRUE;
}

View file

@ -151,13 +151,13 @@ wxString wxFileSelector(const wxChar *title,
fileDialog.SetFilterIndex(filterFind);
}
wxString filename;
if ( fileDialog.ShowModal() == wxID_OK )
{
wxStrcpy(wxBuffer, (const wxChar *)fileDialog.GetPath());
return wxBuffer;
filename = fileDialog.GetPath();
}
else
return wxGetEmptyString();
return filename;
}
@ -172,17 +172,23 @@ wxString wxFileSelectorEx(const wxChar *title,
int y)
{
wxFileDialog fileDialog(parent, title ? title : wxT(""), defaultDir ? defaultDir : wxT(""),
defaultFileName ? defaultFileName : wxT(""), filter ? filter : wxT(""), flags, wxPoint(x, y));
wxFileDialog fileDialog(parent,
title ? title : wxT(""),
defaultDir ? defaultDir : wxT(""),
defaultFileName ? defaultFileName : wxT(""),
filter ? filter : wxT(""),
flags, wxPoint(x, y));
wxString filename;
if ( fileDialog.ShowModal() == wxID_OK )
{
*defaultFilterIndex = fileDialog.GetFilterIndex();
wxStrcpy(wxBuffer, (const wxChar *)fileDialog.GetPath());
return wxBuffer;
if ( defaultFilterIndex )
*defaultFilterIndex = fileDialog.GetFilterIndex();
filename = fileDialog.GetPath();
}
else
return wxGetEmptyString();
return filename;
}
wxFileDialog::wxFileDialog(wxWindow *parent, const wxString& message,

View file

@ -41,6 +41,13 @@
IMPLEMENT_DYNAMIC_CLASS(wxFont, wxGDIObject)
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
// the default font size in points
static const int wxDEFAULT_FONT_SIZE = 12;
// ----------------------------------------------------------------------------
// wxFontRefData - the internal description of the font
// ----------------------------------------------------------------------------
@ -52,7 +59,7 @@ friend class WXDLLEXPORT wxFont;
public:
wxFontRefData()
{
Init(12, wxDEFAULT, wxNORMAL, wxNORMAL, FALSE,
Init(wxDEFAULT_FONT_SIZE, wxDEFAULT, wxNORMAL, wxNORMAL, FALSE,
"", wxFONTENCODING_DEFAULT);
}
@ -170,6 +177,12 @@ bool wxFont::Create(int pointSize,
wxFontEncoding encoding)
{
UnRef();
// wxDEFAULT is a valid value for the font size too so we must treat it
// specially here (otherwise the size would be 70 == wxDEFAULT value)
if ( pointSize == wxDEFAULT )
pointSize = wxDEFAULT_FONT_SIZE;
m_refData = new wxFontRefData(pointSize, family, style, weight,
underlined, faceName, encoding);

View file

@ -620,10 +620,17 @@ bool wxFrame::MSWCreate(int id, wxWindow *parent, const wxChar *wclass, wxWindow
// could be the culprit. But without it, you can get a lot of flicker.
DWORD msflags = 0;
if ((style & wxCAPTION) == wxCAPTION)
msflags = WS_OVERLAPPED;
if ( style & wxCAPTION )
{
if ( style & wxFRAME_TOOL_WINDOW )
msflags |= WS_POPUPWINDOW;
else
msflags |= WS_OVERLAPPED;
}
else
msflags = WS_POPUP;
{
msflags |= WS_POPUP;
}
if (style & wxMINIMIZE_BOX)
msflags |= WS_MINIMIZEBOX;
@ -779,6 +786,16 @@ void wxFrame::IconizeChildFrames(bool bIconize)
{
wxWindow *win = node->GetData();
// iconizing the frames with this style under Win95 shell puts them at
// the bottom of the screen (as the MDI children) instead of making
// them appear in the taskbar because they are, by virtue of this
// style, not managed by the taskbar - instead leave Windows take care
// of them
#ifdef __WIN95__
if ( win->GetWindowStyle() & wxFRAME_TOOL_WINDOW )
continue;
#endif // Win95
// the child MDI frames are a special case and should not be touched by
// the parent frame - instead, they are managed by the user
wxFrame *frame = wxDynamicCast(win, wxFrame);

View file

@ -97,7 +97,7 @@ GSocket *GSocket_new(void)
if (!success)
{
free(socket);
return NULL;
socket = NULL;
}
return socket;

View file

@ -64,7 +64,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxImageList, wxObject)
// returns the mask if it's valid, otherwise the bitmap mask and, if it's not
// valid neither, a "solid" mask (no transparent zones at all)
static wxBitmap GetMaskForImage(const wxBitmap& bitmap, const wxBitmap& mask);
static HBITMAP GetMaskForImage(const wxBitmap& bitmap, const wxBitmap& mask);
// ============================================================================
// implementation
@ -144,8 +144,7 @@ bool wxImageList::GetSize(int WXUNUSED(index), int &width, int &height) const
// 'bitmap' and 'mask'.
int wxImageList::Add(const wxBitmap& bitmap, const wxBitmap& mask)
{
wxBitmap bmpMask = GetMaskForImage(bitmap, mask);
HBITMAP hbmpMask = wxInvertMask(GetHbitmapOf(bmpMask));
HBITMAP hbmpMask = GetMaskForImage(bitmap, mask);
int index = ImageList_Add(GetHImageList(), GetHbitmapOf(bitmap), hbmpMask);
if ( index == -1 )
@ -201,8 +200,7 @@ bool wxImageList::Replace(int index,
wxFAIL_MSG(_T("ImageList_Replace not implemented in TWIN32"));
return FALSE;
#else
wxBitmap bmpMask = GetMaskForImage(bitmap, mask);
HBITMAP hbmpMask = wxInvertMask(GetHbitmapOf(bmpMask));
HBITMAP hbmpMask = GetMaskForImage(bitmap, mask);
bool ok = ImageList_Replace(GetHImageList(), index,
GetHbitmapOf(bitmap), hbmpMask) != 0;
@ -314,36 +312,42 @@ bool wxImageList::Draw(int index,
// helpers
// ----------------------------------------------------------------------------
static wxBitmap GetMaskForImage(const wxBitmap& bitmap, const wxBitmap& mask)
static HBITMAP GetMaskForImage(const wxBitmap& bitmap, const wxBitmap& mask)
{
wxBitmap bmpMask;
HBITMAP hbmpMask;
wxBitmap *bmpMask = NULL;
if ( mask.Ok() )
{
bmpMask = mask;
hbmpMask = GetHbitmapOf(mask);
}
else
{
wxMask *pMask = bitmap.GetMask();
if ( pMask )
{
bmpMask.SetHBITMAP(pMask->GetMaskBitmap());
hbmpMask = (HBITMAP)pMask->GetMaskBitmap();
}
else
{
// create a non transparent mask - apparently, this is needed under
// Win9x (it doesn't behave correctly if it's passed 0 mask)
bmpMask = new wxBitmap(bitmap.GetWidth(), bitmap.GetHeight(), 1);
wxMemoryDC dcMem;
dcMem.SelectObject(*bmpMask);
dcMem.Clear();
dcMem.SelectObject(wxNullBitmap);
hbmpMask = GetHbitmapOf(*bmpMask);
}
}
if ( !bmpMask.Ok() )
{
// create a non transparent mask - apparently, this is needed under
// Win9x (it doesn't behave correctly if it's passed 0 mask)
bmpMask.Create(bitmap.GetWidth(), bitmap.GetHeight(), 1);
// windows mask convention is opposite to the wxWindows one
HBITMAP hbmpMaskInv = wxInvertMask(hbmpMask);
delete bmpMask;
wxMemoryDC dcMem;
dcMem.SelectObject(bmpMask);
dcMem.Clear();
dcMem.SelectObject(wxNullBitmap);
}
return bmpMask;
return hbmpMaskInv;
}
#endif // Win95

View file

@ -1040,9 +1040,12 @@ long wxListCtrl::FindItem(long start, const wxString& str, bool partial)
findInfo.flags = LVFI_STRING;
if ( partial )
findInfo.flags |= LVFI_PARTIAL;
findInfo.psz = WXSTRINGCAST str;
findInfo.psz = str;
return ListView_FindItem(GetHwnd(), (int) start, & findInfo);
// ListView_FindItem() excludes the first item from search and to look
// through all the items you need to start from -1 which is unnatural and
// inconsitent with the generic version - so we adjust the index
return ListView_FindItem(GetHwnd(), (int) start - 1, &findInfo);
}
// Find an item whose data matches this data, starting from the item after 'start'

View file

@ -27,16 +27,13 @@ LIBTARGET=$(WXLIB)
DUMMYOBJ=$D\dummy.obj
!endif
# Please set these according to the settings in setup.h, so we can include
# the appropriate libraries in wx.lib
# This one overrides the others, to be consistent with the settings in setup.h
MINIMAL_WXWINDOWS_SETUP=0
PERIPH_LIBS=
PERIPH_TARGET=
PERIPH_CLEAN_TARGET=
# Set to 0 if not using GLCanvas (only affects DLL build)
USE_GLCANVAS=1
# These are absolute paths, so that the compiler
# generates correct __FILE__ symbols for debugging.
# Otherwise you don't be able to double-click on a memory

View file

@ -63,8 +63,10 @@
extern wxWindowList wxModelessWindows; // from dialog.cpp
extern wxMenu *wxCurrentPopupMenu;
extern const wxChar *wxMDIFrameClassName;
extern const wxChar *wxMDIFrameClassName; // from app.cpp
extern const wxChar *wxMDIChildFrameClassName;
extern const wxChar *wxMDIChildFrameClassNameNoRedraw;
extern wxWindow *wxWndHook; // from window.cpp
extern void wxAssociateWinWithHandle(HWND hWnd, wxWindow *win);
@ -221,8 +223,16 @@ bool wxMDIParentFrame::Create(wxWindow *parent,
if (style & wxCLIP_CHILDREN)
msflags |= WS_CLIPCHILDREN;
wxWindow::MSWCreate(m_windowId, parent, wxMDIFrameClassName, this, title, x, y, width, height,
msflags);
if ( !wxWindow::MSWCreate(m_windowId,
parent,
wxMDIFrameClassName,
this,
title,
x, y, width, height,
msflags) )
{
return FALSE;
}
wxModelessWindows.Append(this);
@ -653,7 +663,9 @@ bool wxMDIChildFrame::Create(wxMDIParentFrame *parent,
MDICREATESTRUCT mcs;
mcs.szClass = wxMDIChildFrameClassName;
mcs.szClass = style & wxNO_FULL_REPAINT_ON_RESIZE
? wxMDIChildFrameClassNameNoRedraw
: wxMDIChildFrameClassName;
mcs.szTitle = title;
mcs.hOwner = wxGetInstance();
if (x > -1)
@ -696,12 +708,8 @@ bool wxMDIChildFrame::Create(wxMDIParentFrame *parent,
mcs.lParam = 0;
DWORD Return = SendMessage(GetWinHwnd(parent->GetClientWindow()),
WM_MDICREATE, 0, (LONG)(LPSTR)&mcs);
//handle = (HWND)LOWORD(Return);
// Must be the DWORRD for WIN32. And in 16 bits, HIWORD=0 (says Microsoft)
m_hWnd = (WXHWND)Return;
m_hWnd = (WXHWND)::SendMessage(GetWinHwnd(parent->GetClientWindow()),
WM_MDICREATE, 0, (LONG)(LPSTR)&mcs);
wxWndHook = NULL;
wxAssociateWinWithHandle((HWND) GetHWND(), this);
@ -917,15 +925,17 @@ bool wxMDIChildFrame::HandleCommand(WXWORD id, WXWORD cmd, WXHWND hwnd)
return TRUE;
}
bool processed;
if (GetMenuBar() && GetMenuBar()->FindItem(id))
{
ProcessCommand(id);
return TRUE;
processed = ProcessCommand(id);
}
else
return FALSE;
{
processed = FALSE;
}
return TRUE;
return processed;
}
bool wxMDIChildFrame::HandleMDIActivate(long WXUNUSED(activate),

View file

@ -434,7 +434,13 @@ bool wxMenu::MSWCommand(WXUINT WXUNUSED(param), WXWORD id)
wxCommandEvent event(wxEVT_COMMAND_MENU_SELECTED);
event.SetEventObject( this );
event.SetId( id );
event.SetInt( id );
// VZ: previosuly, the command int was set to id too which was quite
// useless anyhow (as it could be retrieved using GetId()) and
// uncompatible with wxGTK, so now we use the command int instead
// to pass the checked status
event.SetInt(::GetMenuState(GetHmenu(), id, MF_BYCOMMAND) & MF_CHECKED);
ProcessCommand(event);
}
@ -552,11 +558,9 @@ void wxMenuBar::Refresh()
WXHMENU wxMenuBar::Create()
{
if (m_hMenu != 0 )
if ( m_hMenu != 0 )
return m_hMenu;
wxCHECK_MSG( !m_hMenu, TRUE, wxT("menubar already created") );
m_hMenu = (WXHMENU)::CreateMenu();
if ( !m_hMenu )

View file

@ -282,11 +282,9 @@ wxWindow* wxWindow::CreateWindowFromHWND(wxWindow* parent, WXHWND hWnd)
win->SubclassWin(hWnd);
win->AdoptAttributesFromHWND();
win->SetupColours();
return win;
}
else
return NULL;
return win;
}
// Make sure the window style (etc.) reflects the HWND style (roughly)

View file

@ -435,13 +435,9 @@ WXIDISPATCH* wxAutomationObject::GetDispatchProperty(const wxString& property, i
{
return (WXIDISPATCH*) retVariant.GetVoidPtr();
}
else
{
return (WXIDISPATCH*) NULL;
}
}
else
return (WXIDISPATCH*) NULL;
return (WXIDISPATCH*) NULL;
}
// A way of initialising another wxAutomationObject with a dispatch object

View file

@ -1,6 +1,6 @@
/////////////////////////////////////////////////////////////////////////////
// Name: radiobox.cpp
// Purpose: wxRadioBox
// Name: msw/radiobox.cpp
// Purpose: wxRadioBox implementation
// Author: Julian Smart
// Modified by:
// Created: 04/01/98
@ -98,6 +98,7 @@ static WXFARPROC s_wndprocRadioBtn = (WXFARPROC)NULL;
// wxRadioBox
// ---------------------------------------------------------------------------
// returns the number of rows
int wxRadioBox::GetNumVer() const
{
if ( m_windowStyle & wxRA_SPECIFY_ROWS )
@ -110,6 +111,7 @@ int wxRadioBox::GetNumVer() const
}
}
// returns the number of columns
int wxRadioBox::GetNumHor() const
{
if ( m_windowStyle & wxRA_SPECIFY_ROWS )
@ -141,7 +143,14 @@ bool wxRadioBox::MSWCommand(WXUINT cmd, WXWORD id)
}
}
wxASSERT_MSG( selectedButton != -1, wxT("click from alien button?") );
if ( selectedButton == -1 )
{
// just ignore it - due to a hack with WM_NCHITTEST handling in our
// wnd proc, we can receive dummy click messages when we click near
// the radiobox edge (this is ugly but Julian wouldn't let me get
// rid of this...)
return FALSE;
}
if ( selectedButton != m_selectedButton )
{
@ -201,7 +210,7 @@ bool wxRadioBox::Create(wxWindow *parent,
m_selectedButton = -1;
m_noItems = 0;
m_majorDim = majorDim == 0 ? n : majorDim;
m_majorDim = majorDim == 0 ? n : majorDim;
m_noRowsOrCols = majorDim;
// common initialization
@ -366,6 +375,75 @@ wxString wxRadioBox::GetString(int N) const
return wxGetWindowText(m_radioButtons[N]);
}
// ----------------------------------------------------------------------------
// size calculations
// ----------------------------------------------------------------------------
wxSize wxRadioBox::GetMaxButtonSize() const
{
// calculate the max button size
int widthMax = 0,
heightMax = 0;
for ( int i = 0 ; i < m_noItems; i++ )
{
int width, height;
if ( m_radioWidth[i] < 0 )
{
GetTextExtent(wxGetWindowText(m_radioButtons[i]), &width, &height);
// adjust the size to take into account the radio box itself
// FIXME this is totally bogus!
width += RADIO_SIZE;
height *= 3;
height /= 2;
}
else
{
width = m_radioWidth[i];
height = m_radioHeight[i];
}
if ( widthMax < width )
widthMax = width;
if ( heightMax < height )
heightMax = height;
}
return wxSize(widthMax, heightMax);
}
wxSize wxRadioBox::GetTotalButtonSize(const wxSize& sizeBtn) const
{
// the radiobox should be big enough for its buttons
int cx1, cy1;
wxGetCharSize(m_hWnd, &cx1, &cy1, &GetFont());
int extraHeight = cy1;
#if defined(CTL3D) && !CTL3D
// Requires a bigger group box in plain Windows
extraHeight *= 3;
extraHeight /= 2;
#endif
int height = GetNumVer() * sizeBtn.y + cy1/2 + extraHeight;
int width = GetNumHor() * (sizeBtn.x + cx1) + cx1;
// and also wide enough for its label
int widthLabel;
GetTextExtent(GetTitle(), &widthLabel, NULL);
widthLabel += RADIO_SIZE; // FIXME this is bogus too
if ( widthLabel > width )
width = widthLabel;
return wxSize(width, height);
}
wxSize wxRadioBox::DoGetBestSize() const
{
return GetTotalButtonSize(GetMaxButtonSize());
}
// Restored old code.
void wxRadioBox::DoSetSize(int x, int y, int width, int height, int sizeFlags)
{
@ -390,106 +468,89 @@ void wxRadioBox::DoSetSize(int x, int y, int width, int height, int sizeFlags)
int x_offset = xx;
#endif
int current_width, cyf;
int cx1,cy1;
int cx1, cy1;
wxGetCharSize(m_hWnd, &cx1, &cy1, & GetFont());
// Attempt to have a look coherent with other platforms: We compute the
// biggest toggle dim, then we align all items according this value.
int maxWidth = -1;
int maxHeight = -1;
wxSize maxSize = GetMaxButtonSize();
int maxWidth = maxSize.x,
maxHeight = maxSize.y;
int i;
for (i = 0 ; i < m_noItems; i++)
wxSize totSize = GetTotalButtonSize(maxSize);
int totWidth = totSize.x,
totHeight = totSize.y;
// only change our width/height if asked for
if ( width == -1 )
{
int eachWidth;
int eachHeight;
if (m_radioWidth[i]<0)
{
// It's a labelled toggle
GetTextExtent(wxGetWindowText(m_radioButtons[i]),
&current_width, &cyf);
eachWidth = (int)(current_width + RADIO_SIZE);
eachHeight = (int)((3*cyf)/2);
}
if ( sizeFlags & wxSIZE_AUTO_WIDTH )
width = totWidth;
else
{
eachWidth = m_radioWidth[i];
eachHeight = m_radioHeight[i];
}
if (maxWidth<eachWidth)
maxWidth = eachWidth;
if (maxHeight<eachHeight)
maxHeight = eachHeight;
width = widthOld;
}
if (m_hWnd)
if ( height == -1 )
{
int totWidth;
int totHeight;
int nbHor = GetNumHor(),
nbVer = GetNumVer();
// this formula works, but I don't know why.
// Please, be sure what you do if you modify it!!
if (m_radioWidth[0]<0)
totHeight = (nbVer * maxHeight) + cy1/2;
if ( sizeFlags & wxSIZE_AUTO_HEIGHT )
height = totHeight;
else
totHeight = nbVer * (maxHeight+cy1/2);
totWidth = nbHor * (maxWidth+cx1);
int extraHeight = cy1;
#if defined(CTL3D) && !CTL3D
// Requires a bigger group box in plain Windows
extraHeight *= 3;
extraHeight /= 2;
#endif
// only change our width/height if asked for
if ( width == -1 )
{
if ( sizeFlags & wxSIZE_AUTO_WIDTH )
width = totWidth + cx1;
else
width = widthOld;
}
if ( height == -1 )
{
if ( sizeFlags & wxSIZE_AUTO_HEIGHT )
height = totHeight + extraHeight;
else
height = heightOld;
}
::MoveWindow(GetHwnd(), xx, yy, width, height, TRUE);
x_offset += cx1;
y_offset += cy1;
height = heightOld;
}
::MoveWindow(GetHwnd(), xx, yy, width, height, TRUE);
// Now position all the buttons: the current button will be put at
// wxPoint(x_offset, y_offset) and the new row/column will start at
// startX/startY. The size of all buttons will be the same wxSize(maxWidth,
// maxHeight) except for the buttons in the last column which should extend
// to the right border of radiobox and thus can be wider than this.
// Also, remember that wxRA_SPECIFY_COLS means that we arrange buttons in
// left to right order and m_majorDim is the number of columns while
// wxRA_SPECIFY_ROWS means that the buttons are arranged top to bottom and
// m_majorDim is the number of rows.
x_offset += cx1;
y_offset += cy1;
#if defined(CTL3D) && (!CTL3D)
y_offset += (int)(cy1/2); // Fudge factor since buttons overlapped label
// JACS 2/12/93. CTL3D draws group label quite high.
#endif
int startX = x_offset;
int startY = y_offset;
for ( i = 0 ; i < m_noItems; i++)
for ( int i = 0; i < m_noItems; i++ )
{
// Bidimensional radio adjustment
if (i&&((i%m_majorDim)==0)) // Why is this omitted for i = 0?
// the last button in the row may be wider than the other ones as the
// radiobox may be wider than the sum of the button widths (as it
// happens, for example, when the radiobox label is very long)
bool isLastInTheRow;
if ( m_windowStyle & wxRA_SPECIFY_COLS )
{
if (m_windowStyle & wxRA_VERTICAL)
// item is the last in its row if it is a multiple of the number of
// columns or if it is just the last item
int n = i + 1;
isLastInTheRow = ((n % m_majorDim) == 0) || (n == m_noItems);
}
else // wxRA_SPECIFY_ROWS
{
// item is the last in the row if it is in the last columns
isLastInTheRow = i >= (m_noItems/m_majorDim)*m_majorDim;
}
// is this the start of new row/column?
if ( i && (i % m_majorDim == 0) )
{
if ( m_windowStyle & wxRA_SPECIFY_ROWS )
{
// start of new column
y_offset = startY;
x_offset += maxWidth + cx1;
}
else
else // start of new row
{
x_offset = startX;
y_offset += maxHeight;
@ -497,23 +558,19 @@ void wxRadioBox::DoSetSize(int x, int y, int width, int height, int sizeFlags)
y_offset += cy1/2;
}
}
int eachWidth;
int eachHeight;
if (m_radioWidth[i]<0)
{
// It's a labeled item
GetTextExtent(wxGetWindowText(m_radioButtons[i]),
&current_width, &cyf);
// How do we find out radio button bitmap size!!
// By adjusting them carefully, manually :-)
eachWidth = (int)(current_width + RADIO_SIZE);
eachHeight = (int)((3*cyf)/2);
int widthBtn;
if ( isLastInTheRow )
{
// make the button go to the end of radio box
widthBtn = startX + width - x_offset - 2*cx1;
if ( widthBtn < maxWidth )
widthBtn = maxWidth;
}
else
{
eachWidth = m_radioWidth[i];
eachHeight = m_radioHeight[i];
// normal button, always of the same size
widthBtn = maxWidth;
}
// VZ: make all buttons of the same, maximal size - like this they
@ -521,17 +578,22 @@ void wxRadioBox::DoSetSize(int x, int y, int width, int height, int sizeFlags)
// shown (otherwise they are not when the mouse pointer is in the
// radiobox part not belonging to any radiobutton)
::MoveWindow((HWND)m_radioButtons[i],
x_offset, y_offset, maxWidth, maxHeight,
x_offset, y_offset, widthBtn, maxHeight,
TRUE);
if (m_windowStyle & wxRA_SPECIFY_ROWS)
// where do we put the next button?
if ( m_windowStyle & wxRA_SPECIFY_ROWS )
{
// below this one
y_offset += maxHeight;
if (m_radioWidth[0]>0)
y_offset += cy1/2;
}
else
x_offset += maxWidth + cx1;
{
// to the right of this one
x_offset += widthBtn + cx1;
}
}
}
@ -866,25 +928,60 @@ LRESULT APIENTRY _EXPORT wxRadioBtnWndProc(HWND hwnd,
bool processed = TRUE;
bool horz = (radiobox->GetWindowStyle() & wxRA_SPECIFY_COLS) != 0;
int num = radiobox->Number(),
rows = radiobox->GetNumVer(),
cols = radiobox->GetNumHor();
int selOld = radiobox->GetSelection();
int selNew = selOld;
// wrapping will be handled below for the cases when we
// add/substract more than 1 but here otherwise as it's simpler
switch ( wParam )
{
case VK_UP:
selNew--;
if ( horz )
selNew -= cols;
else
{
if ( selNew )
selNew--;
else
selNew = num - 1;
}
break;
case VK_LEFT:
selNew -= radiobox->GetNumVer();
if ( horz )
{
if ( selNew )
selNew--;
else
selNew = num - 1;
}
else
selNew -= rows;
break;
case VK_DOWN:
selNew++;
if ( horz )
selNew += cols;
else
{
if ( ++selNew == num )
selNew = 0;
}
break;
case VK_RIGHT:
selNew += radiobox->GetNumVer();
if ( horz )
{
if ( ++selNew == num )
selNew = 0;
}
else
selNew += rows;
break;
default:
@ -894,9 +991,28 @@ LRESULT APIENTRY _EXPORT wxRadioBtnWndProc(HWND hwnd,
if ( processed )
{
// ensure that selNew is in range [0..num)
int num = radiobox->Number();
selNew += num;
selNew %= num;
if ( selNew >= num )
{
selNew -= num;
int dim = horz ? cols : rows;
selNew += dim - 1;
selNew %= dim;
}
else if ( selNew < 0 )
{
selNew += num;
int dim = horz ? cols : rows;
if ( selNew % dim == 0 )
{
selNew -= dim - 1;
}
else
{
selNew++;
}
}
if ( selNew != selOld )
{

View file

@ -39,6 +39,7 @@ bool wxRadioButton::MSWCommand(WXUINT param, WXWORD id)
{
wxCommandEvent event(wxEVT_COMMAND_RADIOBUTTON_SELECTED, m_windowId);
event.SetEventObject( this );
event.SetInt( GetValue() );
ProcessCommand(event);
return TRUE;
}

View file

@ -171,6 +171,5 @@ int wxSystemSettings::GetSystemMetric(int index)
default:
return 0;
}
return 0;
}

Some files were not shown because too many files have changed in this diff Show more