Compare commits

..

1 Commits

Author SHA1 Message Date
Bryan Petty
260832fd21 This commit was manufactured by cvs2svn to create tag 'WX_2_2_6'.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/tags/WX_2_2_6@9545 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-03-19 17:35:45 +00:00
84 changed files with 5541 additions and 977 deletions

View File

@@ -42,11 +42,31 @@ VP8 = @top_srcdir@/src/jpeg
VP9 = @top_srcdir@/src/tiff VP9 = @top_srcdir@/src/tiff
VP10 = @top_srcdir@/src/zlib VP10 = @top_srcdir@/src/zlib
VP11 = @top_srcdir@/src/iodbc VP11 = @top_srcdir@/src/iodbc
VP12 = @top_srcdir@/src/ole
FTVP01 = @top_srcdir@/src/freetype/unix
FTVP02 = @top_srcdir@/src/freetype/autohint
FTVP03 = @top_srcdir@/src/freetype/base
FTVP04 = @top_srcdir@/src/freetype/cff
FTVP05 = @top_srcdir@/src/freetype/cid
FTVP06 = @top_srcdir@/src/freetype/macfond
FTVP07 = @top_srcdir@/src/freetype/otlayout
FTVP08 = @top_srcdir@/src/freetype/psnames
FTVP09 = @top_srcdir@/src/freetype/raster1
FTVP10 = @top_srcdir@/src/freetype/sfnt
FTVP11 = @top_srcdir@/src/freetype/smooth
FTVP12 = @top_srcdir@/src/freetype/truetype
FTVP13 = @top_srcdir@/src/freetype/type1
FTVP14 = @top_srcdir@/src/freetype/type1z
FTVP15 = @top_srcdir@/src/freetype/winfonts
VP13 = $(FTVP01)@PATH_IFS@$(FTVP02)@PATH_IFS@$(FTVP03)@PATH_IFS@$(FTVP04)@PATH_IFS@$(FTVP05)@PATH_IFS@$(FTVP06)@PATH_IFS@$(FTVP07)@PATH_IFS@$(FTVP08)@PATH_IFS@
VP14 = $(FTVP09)@PATH_IFS@$(FTVP10)@PATH_IFS@$(FTVP11)@PATH_IFS@$(FTVP12)@PATH_IFS@$(FTVP13)@PATH_IFS@$(FTVP14)@PATH_IFS@$(FTVP15)@PATH_IFS@
# the comment at the end of the next line is needed because otherwise autoconf # the comment at the end of the next line is needed because otherwise autoconf
# would remove this line completely - it contains a built-in hack to remove # would remove this line completely - it contains a built-in hack to remove
# any VPATH assignment not containing ':' # any VPATH assignment not containing ':'
VPATH = $(VP1)@PATH_IFS@$(VP2)@PATH_IFS@$(VP3)@PATH_IFS@$(VP4)@PATH_IFS@$(VP5)@PATH_IFS@$(VP6)@PATH_IFS@$(VP7)@PATH_IFS@$(VP8)@PATH_IFS@$(VP9)@PATH_IFS@$(VP10)@PATH_IFS@$(VP11) # ':' for autoconf VPATH = $(VP1)@PATH_IFS@$(VP2)@PATH_IFS@$(VP3)@PATH_IFS@$(VP4)@PATH_IFS@$(VP5)@PATH_IFS@$(VP6)@PATH_IFS@$(VP7)@PATH_IFS@$(VP8)@PATH_IFS@$(VP9)@PATH_IFS@$(VP10)@PATH_IFS@$(VP11)@PATH_IFS@$(VP12)@PATH_IFS@$(VP13)@PATH_IFS@$(VP14) # ':' for autoconf
top_srcdir = @top_srcdir@ top_srcdir = @top_srcdir@
prefix = @prefix@ prefix = @prefix@
@@ -118,7 +138,9 @@ GTKDIR = $(WXDIR)/src/gtk
MOTIFDIR = $(WXDIR)/src/motif MOTIFDIR = $(WXDIR)/src/motif
MSWDIR = $(WXDIR)/src/msw MSWDIR = $(WXDIR)/src/msw
PMDIR = $(WXDIR)/src/os2 PMDIR = $(WXDIR)/src/os2
MACDIR = $(WXDIR)/src/mac
ODBCDIR = $(WXDIR)/src/iodbc ODBCDIR = $(WXDIR)/src/iodbc
FTDIR = $(WXDIR)/src/freetype
INCDIR = $(WXDIR)/include INCDIR = $(WXDIR)/include
SAMPDIR = $(WXDIR)/samples SAMPDIR = $(WXDIR)/samples
DEMODIR = $(WXDIR)/demos DEMODIR = $(WXDIR)/demos
@@ -130,15 +152,17 @@ INTLDIR = $(WXDIR)/locale
########################## Archive name ############################### ########################## Archive name ###############################
WXARCHIVE = @DISTDIR@-$(WX_MAJOR_VERSION_NUMBER).$(WX_MINOR_VERSION_NUMBER).$(WX_RELEASE_NUMBER).tar.gz # append a version suffix x.y.z to all file names
WXGLARCHIVE = @DISTDIR@-gl-$(WX_MAJOR_VERSION_NUMBER).$(WX_MINOR_VERSION_NUMBER).$(WX_RELEASE_NUMBER).tar.gz VER_SUFFIX=$(WX_MAJOR_VERSION_NUMBER).$(WX_MINOR_VERSION_NUMBER).$(WX_RELEASE_NUMBER)
WXSAMPLES = wx$(TOOLKIT)-samples-$(WX_MAJOR_VERSION_NUMBER).$(WX_MINOR_VERSION_NUMBER).$(WX_RELEASE_NUMBER).tar.gz WXARCHIVE = @DISTDIR@-$(VER_SUFFIX).tar.gz
WXDEMOS = wx$(TOOLKIT)-demos-$(WX_MAJOR_VERSION_NUMBER).$(WX_MINOR_VERSION_NUMBER).$(WX_RELEASE_NUMBER).tar.gz WXGLARCHIVE = @DISTDIR@-gl-$(VER_SUFFIX).tar.gz
WXSAMPLES = wx$(TOOLKIT)-samples-$(VER_SUFFIX).tar.gz
WXDEMOS = wx$(TOOLKIT)-demos-$(VER_SUFFIX).tar.gz
WXARCHIVE_BZIP = @DISTDIR@-$(WX_MAJOR_VERSION_NUMBER).$(WX_MINOR_VERSION_NUMBER).$(WX_RELEASE_NUMBER).tar.bz2 WXARCHIVE_BZIP = @DISTDIR@-$(VER_SUFFIX).tar.bz2
WXGLARCHIVE_BZIP = @DISTDIR@-gl-$(WX_MAJOR_VERSION_NUMBER).$(WX_MINOR_VERSION_NUMBER).$(WX_RELEASE_NUMBER).tar.bz2 WXGLARCHIVE_BZIP = @DISTDIR@-gl-$(VER_SUFFIX).tar.bz2
WXSAMPLES_BZIP = wx$(TOOLKIT)-samples-$(WX_MAJOR_VERSION_NUMBER).$(WX_MINOR_VERSION_NUMBER).$(WX_RELEASE_NUMBER).tar.bz2 WXSAMPLES_BZIP = wx$(TOOLKIT)-samples-$(VER_SUFFIX).tar.bz2
WXDEMOS_BZIP = wx$(TOOLKIT)-demos-$(WX_MAJOR_VERSION_NUMBER).$(WX_MINOR_VERSION_NUMBER).$(WX_RELEASE_NUMBER).tar.bz2 WXDEMOS_BZIP = wx$(TOOLKIT)-demos-$(VER_SUFFIX).tar.bz2
DISTDIR = ./_dist_dir/@DISTDIR@ DISTDIR = ./_dist_dir/@DISTDIR@
@@ -195,6 +219,24 @@ PNGOBJS = \
pngget.o \ pngget.o \
pngset.o pngset.o
FREETYPEOBJS = \
ftsystem.o \
autohint.o \
ftbase.o \
ftdebug.o \
ftglyph.o \
ftinit.o \
ftmm.o \
cff.o \
type1cid.o \
psnames.o \
psmodule.o \
raster1.o \
sfnt.o \
smooth.o \
truetype.o \
type1z.o \
winfnt.o
JPEGOBJS = \ JPEGOBJS = \
jcomapi.o \ jcomapi.o \
@@ -537,8 +579,6 @@ ALL_GUI_DIST: ALL_DIST
cp $(DOCDIR)/$(TOOLKITDIR)/changes.txt $(DISTDIR)/CHANGES.txt cp $(DOCDIR)/$(TOOLKITDIR)/changes.txt $(DISTDIR)/CHANGES.txt
cp $(DOCDIR)/$(TOOLKITDIR)/readme.txt $(DISTDIR)/README.txt cp $(DOCDIR)/$(TOOLKITDIR)/readme.txt $(DISTDIR)/README.txt
cp $(DOCDIR)/$(TOOLKITDIR)/todo.txt $(DISTDIR)/TODO.txt cp $(DOCDIR)/$(TOOLKITDIR)/todo.txt $(DISTDIR)/TODO.txt
cp $(DOCDIR)/base/todo.txt $(DISTDIR)/wxBASE.todo
cp $(DOCDIR)/base/install.txt $(DISTDIR)/wxBASE.install
mkdir $(DISTDIR)/include mkdir $(DISTDIR)/include
mkdir $(DISTDIR)/include/wx mkdir $(DISTDIR)/include/wx
mkdir $(DISTDIR)/include/wx/$(TOOLKITDIR) mkdir $(DISTDIR)/include/wx/$(TOOLKITDIR)
@@ -608,10 +648,8 @@ BASE_DIST: ALL_DIST
cp $(WXDIR)/@RPM_FILES@ $(DISTDIR)/@RPM_FILES@ cp $(WXDIR)/@RPM_FILES@ $(DISTDIR)/@RPM_FILES@
cp $(WXDIR)/@RPM_SPEC@ $(DISTDIR)/@RPM_SPEC@ cp $(WXDIR)/@RPM_SPEC@ $(DISTDIR)/@RPM_SPEC@
cp $(WXDIR)/wxBase*.ds[pw] $(DISTDIR) cp $(WXDIR)/wxBase*.ds[pw] $(DISTDIR)
cp $(DOCDIR)/base/install.txt $(DISTDIR)/INSTALL.txt
cp $(DOCDIR)/changes.txt $(DISTDIR)/CHANGES.txt cp $(DOCDIR)/changes.txt $(DISTDIR)/CHANGES.txt
cp $(DOCDIR)/readme.txt $(DISTDIR)/README.txt cp $(DOCDIR)/readme.txt $(DISTDIR)/README.txt
cp $(DOCDIR)/base/todo.txt $(DISTDIR)/TODO.txt
cp $(SRCDIR)/*.in $(DISTDIR)/src cp $(SRCDIR)/*.in $(DISTDIR)/src
cp $(WXDIR)/src/common/*.inc $(DISTDIR)/src/common cp $(WXDIR)/src/common/*.inc $(DISTDIR)/src/common
cp $(WXDIR)/src/common/base.rc $(DISTDIR)/src/common cp $(WXDIR)/src/common/base.rc $(DISTDIR)/src/common
@@ -654,6 +692,9 @@ MOTIF_DIST: ALL_GUI_DIST
cp $(MOTIFDIR)/xmcombo/*.h $(DISTDIR)/src/motif/xmcombo cp $(MOTIFDIR)/xmcombo/*.h $(DISTDIR)/src/motif/xmcombo
cp $(MOTIFDIR)/xmcombo/copying.txt $(DISTDIR)/src/motif/xmcombo cp $(MOTIFDIR)/xmcombo/copying.txt $(DISTDIR)/src/motif/xmcombo
MACX_DIST: ALL_GUI_DIST
echo "Apple Mac OS X specific distribution not complete"
MSW_DIST: ALL_GUI_DIST MSW_DIST: ALL_GUI_DIST
cp $(WXDIR)/wxWINE.spec $(DISTDIR) cp $(WXDIR)/wxWINE.spec $(DISTDIR)
cp $(INCDIR)/wx/msw/*.h $(DISTDIR)/include/wx/msw cp $(INCDIR)/wx/msw/*.h $(DISTDIR)/include/wx/msw
@@ -903,8 +944,10 @@ SAMPLES_DIST: ALL_GUI_DIST
cp $(SAMPDIR)/internat/*.po $(DISTDIR)/samples/internat cp $(SAMPDIR)/internat/*.po $(DISTDIR)/samples/internat
cp $(SAMPDIR)/internat/fr/*.mo $(DISTDIR)/samples/internat/fr cp $(SAMPDIR)/internat/fr/*.mo $(DISTDIR)/samples/internat/fr
cp $(SAMPDIR)/internat/de/*.mo $(DISTDIR)/samples/internat/de cp $(SAMPDIR)/internat/de/*.mo $(DISTDIR)/samples/internat/de
cp $(SAMPDIR)/internat/ru/*.mo $(DISTDIR)/samples/internat/de
cp $(SAMPDIR)/internat/fr/*.po $(DISTDIR)/samples/internat/fr cp $(SAMPDIR)/internat/fr/*.po $(DISTDIR)/samples/internat/fr
cp $(SAMPDIR)/internat/de/*.po $(DISTDIR)/samples/internat/de cp $(SAMPDIR)/internat/de/*.po $(DISTDIR)/samples/internat/de
cp $(SAMPDIR)/internat/ru/*.po $(DISTDIR)/samples/internat/de
mkdir $(DISTDIR)/samples/ipc mkdir $(DISTDIR)/samples/ipc
cp $(SAMPDIR)/ipc/Makefile.in $(DISTDIR)/samples/ipc cp $(SAMPDIR)/ipc/Makefile.in $(DISTDIR)/samples/ipc
@@ -1009,11 +1052,6 @@ SAMPLES_DIST: ALL_GUI_DIST
cp $(SAMPDIR)/opengl/isosurf/*.h $(DISTDIR)/samples/opengl/isosurf cp $(SAMPDIR)/opengl/isosurf/*.h $(DISTDIR)/samples/opengl/isosurf
cp $(SAMPDIR)/opengl/isosurf/*.gz $(DISTDIR)/samples/opengl/isosurf cp $(SAMPDIR)/opengl/isosurf/*.gz $(DISTDIR)/samples/opengl/isosurf
mkdir $(DISTDIR)/samples/plot
cp $(SAMPDIR)/plot/Makefile.in $(DISTDIR)/samples/plot
cp $(SAMPDIR)/plot/makefile.unx $(DISTDIR)/samples/plot
cp $(SAMPDIR)/plot/*.cpp $(DISTDIR)/samples/plot
mkdir $(DISTDIR)/samples/png mkdir $(DISTDIR)/samples/png
cp $(SAMPDIR)/png/Makefile.in $(DISTDIR)/samples/png cp $(SAMPDIR)/png/Makefile.in $(DISTDIR)/samples/png
cp $(SAMPDIR)/png/makefile.unx $(DISTDIR)/samples/png cp $(SAMPDIR)/png/makefile.unx $(DISTDIR)/samples/png
@@ -1243,18 +1281,58 @@ PYTHON_DIST:
distclean: distclean:
$(RM) -r _dist_dir $(RM) -r _dist_dir
# VZ: the -only targets allow to do "make dist bzip-dist-only" without copying
# the files twice
dist-only:
@echo "*** Creating wxWindows distribution in $(DISTDIR)..."
@cd _dist_dir; \
mv @DISTDIR@ @DISTDIR@-$(VER_SUFFIX); \
tar ch @DISTDIR@-$(VER_SUFFIX) | gzip -f9 > ../$(WXARCHIVE); \
mv @DISTDIR@-$(VER_SUFFIX) @DISTDIR@
@if test "$(USE_GUI)" = 1; then \
cd $(DISTDIR); \
mv samples wxSamples-$(VER_SUFFIX); \
echo "*** Creating wxSamples archive..."; \
tar ch wxSamples-$(VER_SUFFIX) | gzip -f9 > ../../$(WXSAMPLES); \
mv wxSamples-$(VER_SUFFIX) samples; \
mv demos wxDemos-$(VER_SUFFIX); \
echo "*** Creating wxDemos archive..."; \
tar ch wxDemos-$(VER_SUFFIX) | gzip -f9 > ../../$(WXDEMOS); \
mv wxDemos-$(VER_SUFFIX) demos; \
fi
dist: @GUIDIST@ dist: @GUIDIST@
cp $(WXDIR)/src/files.lst $(DISTDIR)/src/ cp $(WXDIR)/src/files.lst $(DISTDIR)/src/
@echo "*** Creating wxWindows distribution in $(DISTDIR)..." @echo "*** Creating wxWindows distribution in $(DISTDIR)..."
cd _dist_dir; tar ch @DISTDIR@ | gzip -f9 > $(WXARCHIVE); mv $(WXARCHIVE) .. @cd _dist_dir; \
mv @DISTDIR@ @DISTDIR@-$(VER_SUFFIX); \
tar ch @DISTDIR@-$(VER_SUFFIX) | gzip -f9 > ../$(WXARCHIVE); \
mv @DISTDIR@-$(VER_SUFFIX) @DISTDIR@
@if test "$(USE_GUI)" = 1; then \ @if test "$(USE_GUI)" = 1; then \
cd $(DISTDIR); \ cd $(DISTDIR); \
mv samples wxSamples; \ mv samples wxSamples-$(VER_SUFFIX); \
tar ch wxSamples | gzip -f9 > ../../$(WXSAMPLES); \ echo "*** Creating wxSamples archive..."; \
mv wxSamples samples; \ tar ch wxSamples-$(VER_SUFFIX) | gzip -f9 > ../../$(WXSAMPLES); \
mv demos wxDemos; \ mv wxSamples-$(VER_SUFFIX) samples; \
tar ch wxDemos | gzip -f9 > ../../$(WXDEMOS); \ mv demos wxDemos-$(VER_SUFFIX); \
mv wxDemos demos; \ echo "*** Creating wxDemos archive..."; \
tar ch wxDemos-$(VER_SUFFIX) | gzip -f9 > ../../$(WXDEMOS); \
mv wxDemos-$(VER_SUFFIX) demos; \
fi
bzip-dist-only:
@echo "*** Creating wxWindows distribution in $(DISTDIR)..."
@cd _dist_dir; tar ch @DISTDIR@ | bzip2 -f9 > $(WXARCHIVE_BZIP); mv $(WXARCHIVE_BZIP) ..
@if test "$(USE_GUI)" = 1; then \
cd $(DISTDIR); \
mv samples wxSamples-${VER_SUFFIX}; \
echo "*** Creating wxSamples archive..."; \
tar ch wxSamples-${VER_SUFFIX} | bzip2 -f9 > ../../$(WXSAMPLES_BZIP); \
mv wxSamples-${VER_SUFFIX} samples; \
mv demos wxDemos-${VER_SUFFIX}; \
echo "*** Creating wxDemos archive..."; \
tar ch wxDemos-${VER_SUFFIX} | bzip2 -f9 > ../../$(WXDEMOS_BZIP); \
mv wxDemos-${VER_SUFFIX} demos; \
fi fi
bzip-dist: @GUIDIST@ bzip-dist: @GUIDIST@
@@ -1263,12 +1341,14 @@ bzip-dist: @GUIDIST@
cd _dist_dir; tar ch @DISTDIR@ | bzip2 -f9 > $(WXARCHIVE_BZIP); mv $(WXARCHIVE_BZIP) .. cd _dist_dir; tar ch @DISTDIR@ | bzip2 -f9 > $(WXARCHIVE_BZIP); mv $(WXARCHIVE_BZIP) ..
@if test "$(USE_GUI)" = 1; then \ @if test "$(USE_GUI)" = 1; then \
cd $(DISTDIR); \ cd $(DISTDIR); \
mv samples wxSamples; \ mv samples wxSamples-${VER_SUFFIX}; \
tar ch wxSamples | bzip2 -f9 > ../../$(WXSAMPLES_BZIP); \ echo "*** Creating wxSamples archive..."; \
mv wxSamples samples; \ tar ch wxSamples-${VER_SUFFIX} | bzip2 -f9 > ../../$(WXSAMPLES_BZIP); \
mv demos wxDemos; \ mv wxSamples-${VER_SUFFIX} samples; \
tar ch wxDemos | bzip2 -f9 > ../../$(WXDEMOS_BZIP); \ mv demos wxDemos-${VER_SUFFIX}; \
mv wxDemos demos; \ echo "*** Creating wxDemos archive..."; \
tar ch wxDemos-${VER_SUFFIX} | bzip2 -f9 > ../../$(WXDEMOS_BZIP); \
mv wxDemos-${VER_SUFFIX} demos; \
fi fi
debian-dist: @GUIDIST@ MANUAL_DIST PYTHON_DIST debian-dist: @GUIDIST@ MANUAL_DIST PYTHON_DIST
@@ -1287,6 +1367,7 @@ clean:
$(RM) *.d $(RM) *.d
$(RM) parser.c $(RM) parser.c
$(RM) lexer.c $(RM) lexer.c
$(RM) -r ./lib/* $(RM) -r ./lib/wx/*
$(RM) ./lib/lib*
cleanall: clean cleanall: clean

1224
configure vendored

File diff suppressed because it is too large Load Diff

View File

@@ -457,10 +457,10 @@ dnl WX_INTERFACE_AGE = 0
WX_MAJOR_VERSION_NUMBER=2 WX_MAJOR_VERSION_NUMBER=2
WX_MINOR_VERSION_NUMBER=2 WX_MINOR_VERSION_NUMBER=2
WX_RELEASE_NUMBER=5 WX_RELEASE_NUMBER=6
WX_INTERFACE_AGE=5 WX_INTERFACE_AGE=0
WX_BINARY_AGE=5 WX_BINARY_AGE=6
WX_VERSION=$WX_MAJOR_VERSION_NUMBER.$WX_MINOR_VERSION_NUMBER.$WX_RELEASE_NUMBER WX_VERSION=$WX_MAJOR_VERSION_NUMBER.$WX_MINOR_VERSION_NUMBER.$WX_RELEASE_NUMBER
@@ -1087,6 +1087,7 @@ dnl ---------------------------------------------------------------------------
WX_ARG_ENABLE(clipboard, [ --enable-clipboard use wxClipboard classes], wxUSE_CLIPBOARD) WX_ARG_ENABLE(clipboard, [ --enable-clipboard use wxClipboard classes], wxUSE_CLIPBOARD)
WX_ARG_ENABLE(dnd, [ --enable-dnd use Drag'n'Drop classes], wxUSE_DRAG_AND_DROP) WX_ARG_ENABLE(dnd, [ --enable-dnd use Drag'n'Drop classes], wxUSE_DRAG_AND_DROP)
WX_ARG_ENABLE(metafile, [ --enable-metafile use win32 metafiles], wxUSE_METAFILE)
dnl TODO: doesn't work yet dnl TODO: doesn't work yet
WX_ARG_ENABLE(wxtree, [ --enable-wxtree make wxTree library], wxUSE_WXTREE) WX_ARG_ENABLE(wxtree, [ --enable-wxtree make wxTree library], wxUSE_WXTREE)
@@ -1532,10 +1533,6 @@ USE_GUI=1
TOOLKIT= TOOLKIT=
TOOLKIT_INCLUDE= TOOLKIT_INCLUDE=
GUIOBJS=
COMMONOBJS=
GENERICOBJS=
GUI_TK_LIBRARY= GUI_TK_LIBRARY=
GUI_TK_LINK= GUI_TK_LINK=
@@ -1577,12 +1574,6 @@ if test "$wxUSE_CYGWIN" = 1 || test "$wxUSE_MINGW" = 1 ; then
fi fi
TOOLKIT=MSW TOOLKIT=MSW
GUIOBJS="\$(MSW_GUIOBJS)"
GUIHEADERS="\$(MSW_HEADERS)"
COMMONOBJS="\$(MSW_COMMONOBJS)"
GENERICOBJS="\$(MSW_GENERICOBJS)"
UNIXOBJS=
GUIDIST=MSW_DIST GUIDIST=MSW_DIST
dnl we should calculate these dnl we should calculate these
@@ -1637,19 +1628,9 @@ dnl GUI_TK_LIBRARY="$GTK_LIBS -gthread12"
dnl else dnl else
dnl GUI_TK_LIBRARY="$GTK_LIBS -lgthread" dnl GUI_TK_LIBRARY="$GTK_LIBS -lgthread"
dnl fi dnl fi
TOOLKIT=GTK
AFMINSTALL=afminstall AFMINSTALL=afminstall
TOOLKIT=GTK
GUIOBJS="\$(GTK_GUIOBJS)"
GUIHEADERS="\$(GTK_HEADERS)"
COMMONOBJS="\$(GTK_COMMONOBJS)"
GENERICOBJS="\$(GTK_GENERICOBJS)"
GUIDEPS="\$(GTK_GUIDEPS)"
COMMONDEPS="\$(GTK_COMMONDEPS)"
GENERICDEPS="\$(GTK_GENERICDEPS)"
UNIXOBJS="\$(UNIX_OBJS)"
UNIXDEPS="\$(UNIX_DEPS)"
GUIDIST=GTK_DIST GUIDIST=GTK_DIST
dnl test for XIM support in libgdk dnl test for XIM support in libgdk
@@ -1695,16 +1676,6 @@ if test "$wxUSE_WINE" = 1; then
GUI_TK_LIBRARY="$GUI_TK_LIBRARY $GUI_TK_LINK" GUI_TK_LIBRARY="$GUI_TK_LIBRARY $GUI_TK_LINK"
WXWINE=1 WXWINE=1
TOOLKIT=MSW TOOLKIT=MSW
GUIHEADERS="\$(MSW_HEADERS)"
GUIOBJS="\$(MSW_GUIOBJS)"
COMMONOBJS="\$(MSW_COMMONOBJS)"
GENERICOBJS="\$(MSW_GENERICOBJS)"
GUIDEPS="\$(MSW_GUIDEPS)"
COMMONDEPS="\$(MSW_COMMONDEPS)"
GENERICDEPS="\$(MSW_GENERICDEPS)"
UNIXOBJS="\$(UNIX_OBJS)"
UNIXDEPS="\$(UNIX_DEPS)"
GUIDIST=MSW_DIST GUIDIST=MSW_DIST
fi fi
@@ -1876,31 +1847,11 @@ if test "$wxUSE_MOTIF" = 1; then
GUI_TK_LINK="-lXm $XPM_LINK -lXmu -lXext -lXt -lX11" GUI_TK_LINK="-lXm $XPM_LINK -lXmu -lXext -lXt -lX11"
GUI_TK_LIBRARY="$GUI_TK_LIBRARY $GUI_TK_LINK" GUI_TK_LIBRARY="$GUI_TK_LIBRARY $GUI_TK_LINK"
TOOLKIT=MOTIF TOOLKIT=MOTIF
GUIHEADERS="\$(MOTIF_HEADERS)"
GUIOBJS="\$(MOTIF_GUIOBJS)"
COMMONOBJS="\$(MOTIF_COMMONOBJS)"
GENERICOBJS="\$(MOTIF_GENERICOBJS)"
GUIDEPS="\$(MOTIF_GUIDEPS)"
COMMONDEPS="\$(MOTIF_COMMONDEPS)"
GENERICDEPS="\$(MOTIF_GENERICDEPS)"
UNIXOBJS="\$(UNIX_OBJS)"
UNIXDEPS="\$(UNIX_DEPS)"
GUIDIST=MOTIF_DIST GUIDIST=MOTIF_DIST
fi fi
if test "$wxUSE_PM" = 1; then if test "$wxUSE_PM" = 1; then
TOOLKIT=PM TOOLKIT=PM
GUIOBJS="\$(PM_GUIOBJS)"
GUIHEADERS="\$(PM_HEADERS)"
COMMONOBJS="\$(PM_COMMONOBJS)"
GENERICOBJS="\$(PM_GENERICOBJS)"
GUIDEPS="\$(PM_GUIDEPS)"
COMMONDEPS="\$(PM_COMMONDEPS)"
GENERICDEPS="\$(PM_GENERICDEPS)"
UNIXOBJS=
UNIXDEPS=
GUIDIST=GTK_DIST GUIDIST=GTK_DIST
fi fi
@@ -1928,10 +1879,8 @@ fi
ALL_OBJECTS="\$(GUIOBJS) \$(COMMONOBJS) \$(GENERICOBJS) \$(UNIXOBJS) \$(HTMLOBJS) \$(OGLOBJS)" ALL_OBJECTS="\$(GUIOBJS) \$(COMMONOBJS) \$(GENERICOBJS) \$(UNIXOBJS) \$(HTMLOBJS) \$(OGLOBJS)"
dnl ODBC objects are Unix only dnl ODBC objects are Unix only
if test "$TOOLKIT" != "MSW"; then if test "$TOOLKIT" != "MSW" -a "$wxUSE_ODBC" = "yes" ; then
if test "$wxUSE_ODBC" = "yes" ; then ALL_OBJECTS="${ALL_OBJECTS} \$(IODBCOBJS)"
ALL_OBJECTS="${ALL_OBJECTS} \$(IODBCOBJS)"
fi
fi fi
if test "$wxUSE_LIBJPEG" = "yes" ; then if test "$wxUSE_LIBJPEG" = "yes" ; then
@@ -2325,6 +2274,14 @@ dnl understand why it works, remember that AC_TRY_COMPILE() just prepends
dnl "int main() {" in the beginning of the code and "; return 0; }" at the dnl "int main() {" in the beginning of the code and "; return 0; }" at the
dnl end... dnl end...
dnl if we fail to find vsnprintf, also try for _vsnprintf as that is what
dnl we'll find under MSW if it exists.
dnl final note: AC_TRY_COMPILE will only be executed if there is nothing in
dnl the cache so we have to do AC_DEFINE(HAVE_VSNPRINTF) below and not inside
dnl it or the symbol wouldn't be defined for the 2nd and subsequent configure
dnl runs
dnl check for vsnprintf() - a safe version of vsprintf() dnl check for vsnprintf() - a safe version of vsprintf()
AC_CACHE_CHECK([for vsnprintf], wx_cv_func_vsnprintf, AC_CACHE_CHECK([for vsnprintf], wx_cv_func_vsnprintf,
[ [
@@ -2347,14 +2304,40 @@ AC_CACHE_CHECK([for vsnprintf], wx_cv_func_vsnprintf,
vsnprintf(s, 42, fmt, argp); vsnprintf(s, 42, fmt, argp);
va_end(argp); va_end(argp);
], [ ], [
AC_DEFINE(HAVE_VSNPRINTF)
wx_cv_func_vsnprintf=yes wx_cv_func_vsnprintf=yes
], [ ], [
AC_MSG_WARN(unsafe function sprintf will be used instead of snprintf) AC_TRY_COMPILE([
wx_cv_func_vsnprintf=no #include <stdio.h>
#include <stdarg.h>
], [
int wx_test_vsnprintf(const char *, ...);
wx_test_vsnprintf("%s");
return 0;
}
int wx_test_vsnprintf(const char *fmt, ...)
{
char *s;
va_list argp;
va_start(argp, fmt);
_vsnprintf(s, 42, fmt, argp);
va_end(argp);
], [
wx_cv_func_vsnprintf=yes
], [
wx_cv_func_vsnprintf=no
])
]) ])
]) ])
if test "$wx_cv_func_vsnprintf" = yes; then
AC_DEFINE(HAVE_VSNPRINTF)
else
AC_MSG_WARN(unsafe function sprintf will be used instead of snprintf)
fi
dnl check for vsscanf() dnl check for vsscanf()
AC_CACHE_CHECK([for vsscanf], wx_cv_func_vsscanf, AC_CACHE_CHECK([for vsscanf], wx_cv_func_vsscanf,
[ [
@@ -2375,13 +2358,16 @@ AC_CACHE_CHECK([for vsscanf], wx_cv_func_vsscanf,
vsscanf("42", fmt, argp); vsscanf("42", fmt, argp);
va_end(argp); va_end(argp);
], [ ], [
AC_DEFINE(HAVE_VSSCANF)
wx_cv_func_vsscanf=yes wx_cv_func_vsscanf=yes
], [ ], [
wx_cv_func_vsscanf=no wx_cv_func_vsscanf=no
]) ])
]) ])
if test "$wx_cv_func_vsscanf" = yes; then
AC_DEFINE(HAVE_VSSCANF)
fi
AC_LANG_RESTORE AC_LANG_RESTORE
dnl the following tests are for Unix(like) systems only dnl the following tests are for Unix(like) systems only
@@ -3125,8 +3111,9 @@ if test "$wxUSE_SOCKETS" = "yes"; then
) )
fi fi
fi dnl this test may be appropriate if building under cygwin
dnl if !MSW dnl right now I'm assuming it also uses the winsock stuff
dnl like mingw does.. -- RL
if test "$wxUSE_SOCKETS" = "yes" ; then if test "$wxUSE_SOCKETS" = "yes" ; then
dnl determine the type of third argument for getsockname dnl determine the type of third argument for getsockname
@@ -3182,6 +3169,9 @@ if test "$wxUSE_SOCKETS" = "yes" ; then
fi fi
fi fi
fi
dnl if !MSW
if test "$wxUSE_SOCKETS" = "yes" ; then if test "$wxUSE_SOCKETS" = "yes" ; then
AC_DEFINE(wxUSE_SOCKETS) AC_DEFINE(wxUSE_SOCKETS)
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS sockets" SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS sockets"
@@ -3320,9 +3310,6 @@ if test "$wxUSE_ODBC" = "yes" ; then
AC_DEFINE(wxUSE_ODBC) AC_DEFINE(wxUSE_ODBC)
WXODBCFLAG="-D_IODBC_" WXODBCFLAG="-D_IODBC_"
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS db" SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS db"
IODBCOBJS="\$(IODBC_OBJS)"
else
IODBCOBJS=
fi fi
dnl ---------------------------------------------------------------- dnl ----------------------------------------------------------------
@@ -3422,8 +3409,28 @@ if test "$wxUSE_DRAG_AND_DROP" = "yes" ; then
if test "$USE_WIN32" = 1; then if test "$USE_WIN32" = 1; then
dnl check for ole headers and disable DnD if not present (earlier dnl check for ole headers and disable DnD if not present (earlier
dnl versions of mingw32 don't have them) dnl versions of mingw32 don't have them)
AC_CHECK_HEADERS(ole2.h) AC_CHECK_HEADERS(ole2.h)
if test "x$HAVE_OLE2_H" = x ; then
dnl for some reason this test always fails here??
dnl if test "x$HAVE_OLE2_H" != x ; then
dnl this one does the right thing though
if test "$ac_cv_header_ole2_h" = "yes" ; then
if test "$GCC" = yes ; then
ALL_OBJECTS="$ALL_OBJECTS \$(OLEOBJS)"
ALL_DEPFILES="$ALL_DEPFILES \$(OLEDEPS)"
CODE_GEN_FLAGS_CXX="$CODE_GEN_FLAGS_CXX -fvtable-thunks"
LIBS="$LIBS -lole32 -luuid"
dnl metafiles need the ole code, right?? if not this
dnl doesn't need to be in here.
if test "$wxUSE_METAFILE" = "yes"; then
AC_DEFINE(wxUSE_METAFILE)
dnl this one should probably be made separately configurable
AC_DEFINE(wxUSE_ENH_METAFILE)
fi
fi
else
AC_MSG_WARN(Drag and drop disabled because OLE headers not found) AC_MSG_WARN(Drag and drop disabled because OLE headers not found)
wxUSE_DRAG_AND_DROP=no wxUSE_DRAG_AND_DROP=no
fi fi
@@ -3623,10 +3630,6 @@ dnl if test "$wxUSE_WXTREE" = "yes"; then
dnl AC_DEFINE(wxUSE_WXTREE) dnl AC_DEFINE(wxUSE_WXTREE)
dnl fi dnl fi
if test "$wxUSE_METAFILE" = "yes"; then
AC_DEFINE(wxUSE_METAFILE)
fi
if test "$wxUSE_DIRDLG" = "yes"; then if test "$wxUSE_DIRDLG" = "yes"; then
if test "$wxUSE_CONSTRAINTS" != "yes"; then if test "$wxUSE_CONSTRAINTS" != "yes"; then
AC_MSG_WARN(wxDirDialog requires constraints so it won't be compiled without them) AC_MSG_WARN(wxDirDialog requires constraints so it won't be compiled without them)
@@ -3827,16 +3830,6 @@ AC_SUBST(TOOLKIT_INCLUDE)
AC_SUBST(WXCONFIG_INCLUDE) AC_SUBST(WXCONFIG_INCLUDE)
dnl what to compile dnl what to compile
AC_SUBST(GUIHEADERS)
AC_SUBST(GUIOBJS)
AC_SUBST(COMMONOBJS)
AC_SUBST(GENERICOBJS)
AC_SUBST(GUIDEPS)
AC_SUBST(COMMONDEPS)
AC_SUBST(GENERICDEPS)
AC_SUBST(IODBCOBJS)
AC_SUBST(UNIXOBJS)
AC_SUBST(UNIXDEPS)
AC_SUBST(ALL_OBJECTS) AC_SUBST(ALL_OBJECTS)
AC_SUBST(ALL_DEPFILES) AC_SUBST(ALL_DEPFILES)

12
debian/rules vendored
View File

@@ -48,9 +48,9 @@ build_arch_stamps=build-wxbase-shared-stamp build-wxbase-static-stamp \
build-wxbase-debug-stamp build-gtk-shared-stamp \ build-wxbase-debug-stamp build-gtk-shared-stamp \
build-gtk-static-stamp build-gtk-debug-stamp \ build-gtk-static-stamp build-gtk-debug-stamp \
build-contrib-shared-stamp build-contrib-static-stamp \ build-contrib-shared-stamp build-contrib-static-stamp \
build-gtk-py-stamp build-gtk-py-stamp build-i18n-stamp
build_indep_stamps=build-examples-stamp build-doc-stamp build-i18n-stamp build_indep_stamps=build-examples-stamp build-doc-stamp
build_stamps=$(build_arch_stamps) $(build_indep_stamps) build_stamps=$(build_arch_stamps) $(build_indep_stamps)
@@ -58,12 +58,16 @@ build_stamps=$(build_arch_stamps) $(build_indep_stamps)
install_all_arch=install-wxbase-lib install-wxbase-dev install-wxbase-dbg \ install_all_arch=install-wxbase-lib install-wxbase-dev install-wxbase-dbg \
install-gtk-lib install-gtk-dev install-gtk-dbg \ install-gtk-lib install-gtk-dev install-gtk-dbg \
install-gtk-contrib install-gtk-contrib-dev install-gtk-py \ install-gtk-contrib install-gtk-contrib-dev install-gtk-py \
install-headers install-headers install-i18n
install_all_indep=install-i18n install-doc install-examples install_all_indep=install-doc install-examples
install_all=$(install_all_arch) $(install_all_indep) install_all=$(install_all_arch) $(install_all_indep)
# note that the i18n package is actually arch indep (once built)
# but must be built during the arch any phase as it's pulled out
# the wxGtk shared lib package.
# The Rules: # The Rules:

40
distrib/msw/innobott.txt Normal file
View File

@@ -0,0 +1,40 @@
[Icons]
Name: {group}\Dialog Editor; Filename: {app}\bin\dialoged.exe; WorkingDir: {app}\bin; IconFilename: {app}\bin\dialoged.exe; IconIndex: 0
Name: {group}\Dialog Editor Help; Filename: {app}\bin\dialoged.hlp; WorkingDir: {app}\bin; IconIndex: 0; Flags: useapppaths
Name: {group}\Life! Demo; Filename: {app}\bin\life.exe; WorkingDir: {app}\bin; IconFilename: {app}\bin\life.exe; IconIndex: 0
Name: {group}\Tex2rtf; Filename: {app}\bin\tex2rtf.exe; WorkingDir: {app}\bin; IconFilename: {app}\bin\tex2rtf.exe; IconIndex: 0
Name: {group}\Tex2rtf Help; Filename: {app}\bin\tex2rtf.hlp; WorkingDir: {app}\bin; IconIndex: 0; Flags: useapppaths
Name: {group}\Changes; Filename: {app}\docs\changes.txt; WorkingDir: {app}; IconIndex: 0; Flags: useapppaths
Name: {group}\Readme; Filename: {app}\docs\readme.txt; WorkingDir: {app}; IconIndex: 0; Flags: useapppaths
Name: {group}\Debug View; Filename: {app}\bin\DBGVIEW.EXE; WorkingDir: {app}\bin; IconFilename: {app}\bin\DBGVIEW.EXE; IconIndex: 0
Name: {group}\Compiling wxWindows; Filename: {app}\docs\msw\install.txt; WorkingDir: {app}; IconIndex: 0; Flags: useapppaths
Name: {group}\wxWindows Help; Filename: {app}\docs\htmlhelp\wx.chm; WorkingDir: {app}; IconIndex: 0; Flags: useapppaths
Name: {group}\HTML Docs Index; Filename: {app}\docs\html\index.htm; WorkingDir: {app}; IconIndex: 0; Flags: useapppaths
[INI]
[Registry]
[UninstallDelete]
[InstallDelete]
[Run]
[UninstallRun]
; ==============================================
; The lines below are used by ScriptMaker
; They are not required by Inno Setup
; DO NOT DELETE THEM or you may be unable to reload the script
;[ScriptSetup]
;VerNum=2.2.6
;InnoVer=1.3
;AddVerTo=AppVerName
;SetupFilename=setup.exe
;OutputFolder=C:\wx2stable\wxWindows\deliver
;CopyrightText=Copyright <20> The wxWindows Team

46
distrib/msw/innotop.txt Normal file
View File

@@ -0,0 +1,46 @@
; Inno Setup Script
; Created with ScriptMaker Version 1.3.22
; 29 January 2001 at 14:22
[Setup]
MinVersion=4.0,4.0
AppName=wxWindows
AppId=wxWindows
CreateUninstallRegKey=1
UsePreviousAppDir=1
UsePreviousGroup=1
AppVersion=2.2.6
AppVerName=wxWindows 2.2.6
AppCopyright=Copyright <20> The wxWindows Team
BackColor=$FF0000
BackColor2=$000000
BackColorDirection=toptobottom
WindowShowCaption=1
WindowStartMaximized=1
WindowVisible=1
WindowResizable=1
UninstallDisplayName=Uninstall wxWindows
UninstallLogMode=Append
DirExistsWarning=auto
UninstallFilesDir={app}
DisableDirPage=0
DisableStartupPrompt=0
CreateAppDir=1
DisableProgramGroupPage=0
AlwaysCreateUninstallIcon=1
UninstallIconName=Uninstall wxWindows
Uninstallable=1
DefaultDirName=c:\wx2
DefaultGroupName=wxWindows 2.2.6
LicenseFile=C:\wx2stable\wxWindows\docs\licence.txt
InfoBeforeFile=C:\wx2stable\wxWindows\docs\readme.txt
InfoAfterFile=C:\wx2stable\wxWindows\docs\msw\install.txt
MessagesFile=compiler:default.isl
DiskSpanning=1
DiskSize=1457664
DiskClusterSize=512
ReserveBytes=0
UseSetupLdr=1
SourceDir=C:\wx2stable\wxWindows\deliver\wx
OutputDir=C:\wx2stable\wxWindows\deliver

View File

@@ -22,7 +22,11 @@ set len=%@LINES[%TEMP\files1.tmp]
erase /Y %TEMP\files2.tmp erase /Y %TEMP\files2.tmp
Rem, first add system files Rem, first add system files
cat %WXWIN\distrib\msw\wisesys.txt > %temp\files2.tmp Rem NB: not doing this for now, because I'm not sure which are the right files
Rem for Win9x/NT/W2K
Rem cat %WXWIN\distrib\msw\wisesys.txt > %temp\files2.tmp
echo. > %temp\files2.tmp
do i = 0 to %len by 1 do i = 0 to %len by 1
set line=%@LINE[%TEMP\files1.tmp,%i] set line=%@LINE[%TEMP\files1.tmp,%i]

View File

@@ -442,6 +442,8 @@ clean:
-$(RM) ../xpm/*.bak -$(RM) ../xpm/*.bak
-$(RM) ../tiff/*.o -$(RM) ../tiff/*.o
-$(RM) ../tiff/*.bak -$(RM) ../tiff/*.bak
cleanall: clean
-$(RM) $(WXLIB) -$(RM) $(WXLIB)
-$(RM) $(ZLIBLIB) -$(RM) $(ZLIBLIB)
-$(RM) $(PNGLIB) -$(RM) $(PNGLIB)
@@ -458,7 +460,3 @@ ifneq "$(strip $(LD_SUPPORTS_SHARED))" "yes"
endif endif
endif endif
cleanall: clean

View File

@@ -39,15 +39,20 @@
} }
foreach $file (sort keys %wxMSW) { foreach $file (sort keys %wxMSW) {
#! OLE files can'be compiled with mingw32 yet next if $wxMSW{$file} =~ /\b16\b/;
next if $wxMSW{$file} =~ /\b(O|16)\b/;
($fileobj = $file) =~ s/cp?p?$/\o/; ($fileobj = $file) =~ s/cp?p?$/\o/;
($filedep = $file) =~ s/cp?p?$/\d/; ($filedep = $file) =~ s/cp?p?$/\d/;
$project{"MSW_SOURCES"} .= "msw/" . $file . " "; if( $wxMSW{$file} =~ /\bO\b/ ) {
$project{"GUIOBJS"} .= $fileobj . " "; $project{"MSW_SOURCES"} .= "msw/ole/" . $file . " ";
$project{"GUIDEPS"} .= $filedep . " " $project{"OLEOBJS"} .= $fileobj . " ";
$project{"OLEDEPS"} .= $filedep . " ";
} else {
$project{"MSW_SOURCES"} .= "msw/" . $file . " ";
$project{"GUIOBJS"} .= $fileobj . " ";
$project{"GUIDEPS"} .= $filedep . " ";
}
} }
foreach $file (sort keys %wxHTML) { foreach $file (sort keys %wxHTML) {
@@ -121,6 +126,12 @@ HTMLOBJS = \
HTMLDEPS = \ HTMLDEPS = \
#$ ExpandList("HTMLDEPS"); #$ ExpandList("HTMLDEPS");
OLEOBJS = \
#$ ExpandList("OLEOBJS");
OLEDEPS = \
#$ ExpandList("OLEDEPS");
IODBCOBJS = \ IODBCOBJS = \
#$ ExpandList("IODBCOBJS"); #$ ExpandList("IODBCOBJS");

View File

@@ -1,20 +1,20 @@
item: Install File item: Install File
Source=c:\Windows\System\Msvcirt.dll Source=c:\wx\dlls\winnt\Msvcirt.dll
Destination=%SYS32%\Msvcirt.dll Destination=%SYS32%\Msvcirt.dll
Flags=0000010000010011 Flags=0000010000010011
end end
item: Install File item: Install File
Source=c:\Windows\System\Msvcrt.dll Source=c:\wx\dlls\winnt\Msvcrt.dll
Destination=%SYS32%\Msvcrt.dll Destination=%SYS32%\Msvcrt.dll
Flags=0000010000010011 Flags=0000010000010011
end end
item: Install File item: Install File
Source=c:\Windows\System\Msvcrt.dll Source=c:\wx\dlls\win95\Msvcrt.dll
Destination=%SYS%\Msvcrt.dll Destination=%SYS%\Msvcrt.dll
Flags=0000010000010011 Flags=0000010000010011
end end
item: Install File item: Install File
Source=c:\Windows\System\Msvcirt.dll Source=c:\wx\dlls\win95\Msvcirt.dll
Destination=%SYS%\Msvcirt.dll Destination=%SYS%\Msvcirt.dll
Flags=0000010000010011 Flags=0000010000010011
end end

View File

@@ -1,7 +1,7 @@
Document Type: WSE Document Type: WSE
item: Global item: Global
Version=5.0 Version=5.0
Title=wxWindows 2.2.3 Installation Title=wxWindows 2.2.6 Installation
Flags=00000100 Flags=00000100
Split=1420 Split=1420
Languages=65 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Languages=65 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
@@ -17,7 +17,7 @@ item: Global
Patch Flags=0000000000000001 Patch Flags=0000000000000001
Patch Threshold=85 Patch Threshold=85
Patch Memory=4000 Patch Memory=4000
EXE Filename=D:\wx2stable\wxWindows\deliver\setup.exe EXE Filename=c:\wx2stable\wxWindows\deliver\setup.exe
FTP Cluster Size=20 FTP Cluster Size=20
Variable Name1=_SYS_ Variable Name1=_SYS_
Variable Default1=C:\WINDOWS\SYSTEM Variable Default1=C:\WINDOWS\SYSTEM
@@ -47,7 +47,7 @@ item: End Block
end end
item: Set Variable item: Set Variable
Variable=APPTITLE Variable=APPTITLE
Value=wxWindows 2.2.3 Value=wxWindows 2.2.6
end end
item: Set Variable item: Set Variable
Variable=GROUP Variable=GROUP
@@ -62,7 +62,7 @@ item: Set Variable
Value=wx2 Value=wx2
end end
item: Display Graphic item: Display Graphic
Pathname=D:\wx2stable\wxWindows\distrib\msw\wxwin01.bmp Pathname=c:\wx2stable\wxWindows\distrib\msw\wxwin01.bmp
X Position=16 X Position=16
Y Position=16 Y Position=16
end end

View File

@@ -5,7 +5,7 @@ set dest=%src\deliver
set wise=0 set wise=0
Rem Set this to the required version Rem Set this to the required version
set version=2.2.4 set version=2.2.5
if "%src" == "" goto usage if "%src" == "" goto usage
if "%dest" == "" goto usage if "%dest" == "" goto usage
@@ -33,7 +33,7 @@ erase %dest\utils.zip
erase %dest\extradoc.zip erase %dest\extradoc.zip
erase %dest\*-win32.zip erase %dest\*-win32.zip
if direxist %dest\wx del /sxyz %dest\wx\ if direxist %dest\wx erase /sxyz %dest\wx\
cd %src cd %src
echo Zipping... echo Zipping...
@@ -170,7 +170,7 @@ erase /Y contrib\docs\winhelp\stc.*
erase /Y contrib\docs\htmlhelp\mmedia.* erase /Y contrib\docs\htmlhelp\mmedia.*
erase /Y contrib\docs\htmlhelp\stc.* erase /Y contrib\docs\htmlhelp\stc.*
erase /Y contrib\docs\pdf\*.* erase /Y contrib\docs\pdf\*.*
del /sxzy contrib\docs\latex\ogl erase /sxzy contrib\docs\latex\ogl
erase /Y src\mingegcs.bat erase /Y src\mingegcs.bat
erase /Y distrib erase /Y distrib
@@ -198,7 +198,7 @@ erase /Y %dest\setup.*
rem Now invoke WISE install on the new wxwin2.wse rem Now invoke WISE install on the new wxwin2.wse
set wisecmd="c:\Program Files\wise\wise32.exe" /C %WXWIN\distrib\msw\wxwin2.wse set wisecmd="c:\Program Files\wise\wise32.exe" /C %WXWIN\distrib\msw\wxwin2.wse
echo Invoking %wisecmd... echo Invoking %wisecmd...
start %wisecmd start "WISE" /w %wisecmd%
pause Press any key to continue with the wxWindows distribution... pause Press any key to continue with the wxWindows distribution...
Rem ren %WXWIN\deliver\setup.EXE %WXWIN\deliver\wxMSW-%version%-setup.exe Rem ren %WXWIN\deliver\setup.EXE %WXWIN\deliver\wxMSW-%version%-setup.exe

225
distrib/msw/zipdistinno.bat Executable file
View File

@@ -0,0 +1,225 @@
@echo off
rem Zip up an external, generic + Windows distribution of wxWindows 2
rem using Inno Setup + ScriptMaker
set src=%wxwin
set dest=%src\deliver
set inno=0
Rem Set this to the required version
set version=2.2.6
if "%src" == "" goto usage
if "%dest" == "" goto usage
if "%1" == "-help" goto usage
if "%1" == "--help" goto usage
if "%1" == "/?" goto usage
if "%1" == "innoonly" goto dounzip
if "%1" == "inno" set inno=1
if "%1" == "tidyup" goto tidyup
echo About to archive an external wxWindows distribution:
echo From %src
echo To %dest
if "%inno" == "1" echo with Inno Setup creation.
echo CTRL-C if this is not correct.
pause
erase %dest\wx*.zip
erase %dest\*.htb
erase %dest\ogl3.zip
erase %dest\tex2rtf2.zip
erase %dest\jpeg.zip
erase %dest\tiff.zip
erase %dest\dialoged.zip
erase %dest\utils.zip
erase %dest\extradoc.zip
erase %dest\*-win32.zip
if direxist %dest\wx erase /sxyz %dest\wx\
if not direxist %dest mkdir %dest
cd %src
echo Zipping...
Rem Zip up the complete wxMSW-xxx.zip file
Rem NO, do it by unarchiving component files, deleting/copying some files, then
Rem rearchiving.
Rem zip32 -@ %dest\wxMSW-%version%.zip < %src\distrib\msw\generic.rsp
Rem zip32 -@ -u %dest\wxMSW-%version%.zip < %src\distrib\msw\msw.rsp
Rem zip32 -@ -u %dest\wxMSW-%version%.zip < %src\distrib\msw\wx_chm.rsp
Rem zip32 -@ -u %dest\wxMSW-%version%.zip < %src\distrib\msw\jpeg.rsp
Rem zip32 -@ -u %dest\wxMSW-%version%.zip < %src\distrib\msw\tiff.rsp
Rem Below is the old-style separated-out format. This is retained only
Rem for local use, and for creating wxMSW-xxx.zip.
zip32 -@ %dest\wxWindows-%version%-gen.zip < %src\distrib\msw\generic.rsp
zip32 -@ -u %dest\wxWindows-%version%-gen.zip < %src\distrib\msw\makefile.rsp
zip32 -@ %dest\wxWindows-%version%-msw.zip < %src\distrib\msw\msw.rsp
zip32 -@ -u %dest\wxWindows-%version%-msw.zip < %src\distrib\msw\makefile.rsp
zip32 -@ %dest\wxWindows-%version%-gtk.zip < %src\distrib\msw\gtk.rsp
zip32 -@ -u %dest\wxWindows-%version%-gtk.zip < %src\distrib\msw\makefile.rsp
zip32 -@ %dest\wxWindows-%version%-stubs.zip < %src\distrib\msw\stubs.rsp
zip32 -@ %dest\wxWindows-%version%-mot.zip < %src\distrib\msw\motif.rsp
zip32 -@ -u %dest\wxWindows-%version%-mot.zip < %src\distrib\msw\makefile.rsp
Rem (Obsolete) zip32 -@ %dest\wxWindows-%version%-user.zip < %src\distrib\msw\user.rsp
zip32 -@ %dest\wxWindows-%version%-DocSource.zip < %src\distrib\msw\docsrc.rsp
zip32 -@ %dest\wxWindows-%version%-WinHelp.zip < %src\distrib\msw\wx_hlp.rsp
zip32 -@ %dest\wxWindows-%version%-HTML.zip < %src\distrib\msw\wx_html.rsp
zip32 -@ %dest\wxWindows-%version%-PDF.zip < %src\distrib\msw\wx_pdf.rsp
zip32 -@ %dest\wxWindows-%version%-Word.zip < %src\distrib\msw\wx_word.rsp
zip32 -@ %dest\wxWindows-%version%-HTB.zip < %src\distrib\msw\wx_htb.rsp
zip32 -@ %dest\wxWindows-%version%-HTMLHelp.zip < %src\distrib\msw\wx_chm.rsp
Rem PDF/HTML docs that should go into the Windows setup because
Rem there are no WinHelp equivalents
zip32 -@ %dest\extradoc.zip < %src\distrib\msw\extradoc.rsp
rem VC++ project files
zip32 -@ %dest\wxWindows-%version%-vc.zip < %src\distrib\msw\vc.rsp
rem BC++ project files
zip32 -@ %dest\wxWindows-%version%-bc.zip < %src\distrib\msw\bc.rsp
rem CodeWarrior project files
zip32 -@ %dest\wxWindows-%version%-cw.zip < %src\distrib\msw\cw.rsp
rem OGL 3
zip32 -@ %dest\ogl3.zip < %src\distrib\msw\ogl.rsp
rem MMedia
zip32 -@ %dest\mmedia.zip < %src\distrib\msw\mmedia.rsp
rem STC (Scintilla widget)
zip32 -@ %dest\stc.zip < %src\distrib\msw\stc.rsp
rem GLCanvas: obsolete, now in main library
rem zip32 -@ %dest\glcanvas.zip < %src\distrib\msw\glcanvas.rsp
rem Tex2RTF
zip32 -@ %dest\tex2rtf2.zip < %src\distrib\msw\tex2rtf.rsp
rem JPEG source
zip32 -@ %dest\jpeg.zip < %src\distrib\msw\jpeg.rsp
rem TIFF source
zip32 -@ %dest\tiff.zip < %src\distrib\msw\tiff.rsp
rem Dialog Editor source and binary
erase %dest\dialoged_source.zip
zip32 -@ %dest\dialoged_source.zip < %src\distrib\msw\dialoged.rsp
zip32 -j %dest\dialoged.zip %dest\dialoged_source.zip %src\bin\dialoged.exe %src\docs\winhelp\dialoged.hlp %src\docs\winhelp\dialoged.cnt
erase %dest\dialoged_source.zip
rem Misc. utils not in the main distribution
zip32 -@ %dest\utils.zip < %src\distrib\msw\utils.rsp
zip32 -@ -u %dest\utils.zip < %src\distrib\msw\utilmake.rsp
copy %src\docs\changes.txt %dest
copy %src\docs\msw\install.txt %dest\install_msw.txt
copy %src\docs\motif\install.txt %dest\install_motif.txt
copy %src\docs\gtk\install.txt %dest\install_gtk.txt
copy %src\docs\readme.txt %dest
copy %src\docs\motif\readme.txt %dest\readme_motif.txt
copy %src\docs\gtk\readme.txt %dest\readme_gtk.txt
copy %src\docs\msw\readme.txt %dest\readme_msw.txt
copy %src\docs\readme_vms.txt %dest
copy %src\docs\motif\makewxmotif %dest
copy %src\docs\gtk\makewxgtk %dest
Rem Skip Inno Setup if inno is 0.
if "%inno" == "0" goto end
:dounzip
Rem Make dialoged-win32.zip and tex2rtf-win32.zip
cd %src\bin
zip32 %dest\dialoged-win32.zip dialoged.*
zip32 %dest\tex2rtf-win32.zip tex2rtf.*
cd %dest
rem Unzip the Windows files into 'wx'
mkdir %dest\wx
Rem After this change of directory, we're in the
Rem temporary 'wx' directory and not acting on
Rem the source wxWindows directory.
cd %dest\wx
unzip32 -o ..\wxWindows-%version%-msw.zip
unzip32 -o ..\wxWindows-%version%-gen.zip
unzip32 -o ..\wxWindows-%version%-vc.zip
unzip32 -o ..\wxWindows-%version%-bc.zip
unzip32 -o ..\wxWindows-%version%-HTMLHelp.zip
unzip32 -o ..\extradoc.zip
Rem Need Word file, for Remstar DB classes
unzip32 -o ..\wxWindows-%version%-Word.zip
unzip32 -o ..\ogl3.zip
unzip32 -o ..\jpeg.zip
unzip32 -o ..\tiff.zip
unzip32 -o ..\tex2rtf2.zip
rem Now delete a few files that are unnecessary
attrib -R *
erase /Y BuildCVS.txt *.in *.spec *.guess *.sub mkinstalldirs modules install-sh *.sh descrip.mms
erase /Y configure samples\configure samples\*.in demos\configure demos\*.in contrib\configure contrib\*.in
erase /Y setup.h.in setup.h_vms
erase /SY Makefile.in
erase /Y docs\html\wxbook.htm docs\html\roadmap.htm
erase /Y contrib\docs\winhelp\mmedia.*
erase /Y contrib\docs\winhelp\stc.*
erase /Y contrib\docs\htmlhelp\mmedia.*
erase /Y contrib\docs\htmlhelp\stc.*
erase /Y contrib\docs\pdf\*.*
erase /sxzy contrib\docs\latex\ogl
erase /Y src\mingegcs.bat
erase /Y distrib
rem Now copy some binary files to 'bin'
if not isdir bin mkdir bin
copy %src\bin\dialoged.exe bin
copy %src\bin\tex2rtf.exe bin
copy %src\bin\dbgview.* bin
copy %src\bin\life.exe bin
copy %src\demos\life\breeder.lif bin
copy %src\docs\winhelp\dialoged.hlp %src\docs\winhelp\dialoged.cnt bin
copy %src\docs\winhelp\tex2rtf.hlp %src\docs\winhelp\tex2rtf.cnt bin
Rem Make wxMSW-xxx.zip
zip32 -r ..\wxMSW-%version%.zip *
rem Time to regenerate the Inno Setup script, wxwin2.iss.
rem NB: if you've changed wxwin2.iss using ScriptMaker, call splitinno.exe
rem from within distrib\msw, to split off innotop.txt and innobott.txt.
rem (NOT YET IMPLEMENTED)
echo Calling 'makeinno' to generate wxwin2.iss...
call %WXWIN\distrib\msw\makeinno.bat
erase /Y %dest\setup.*
rem Now invoke Inno Setup on the new wxwin2.iss
set innocmd="C:\Program Files\Inno Setup 1.3\compil32.exe" /cc %WXWIN\distrib\msw\wxwin2.iss
echo Invoking %innocmd...
start "Inno Setup" /w %innocmd%
pause Press any key to continue with the wxWindows distribution...
Rem ren %WXWIN\deliver2\setup.EXE %WXWIN\deliver2\wxMSW-%version%-setup.exe
:tidyup
cd %dest
rem Put all the setup files into a single zip archive.
zip32 wxMSW-%version%-setup.zip readme.txt setup.*
echo wxWindows archived.
goto end
:usage
echo DOS wxWindows distribution. Zips up all GTK/Motif/MSW/doc files,
echo and optionally makes a deliver2\wx directory and a setup.exe
echo if you specify 'inno' (skipping the zipping if you use 'innoonly').
echo.
echo "Usage: zipdist [inno | innoonly]"
:end

View File

@@ -16,16 +16,44 @@ OTHER CHANGES
2.2.6 2.2.6
----- -----
wxBase:
- fixed problem with wxURL when using static version of the library
- crash when reading certain malformed mailcap entries under Unix fixed
- memory/resource leak in wxSocket::Accept() fixed (Kruba Fabien)
All (GUI):
- Spanish translations added (Luis Pa<50>l Tomillo)
- bug in wxDocMDIParentFrame::OnMRUFile() fixed
- wxYieldIfNeeded added, to ignore yield recursion.
wxMSW: wxMSW:
- wxChoice sizing bug introduced in 2.2.5 fixed (oops) and calculating of - wxChoice sizing bug introduced in 2.2.5 fixed (oops) and calculating of
the size of initially empty wxChoice controls fixed as well the size of initially empty wxChoice controls fixed as well
- bug with negative coordinates being turned into huge positive ones in
EVT_MOVE fixed (Imad Jureidini)
- jpeg library compilation fixed for newer versions of mingw32 and cygwin
- controls which don't accept focus don't get it on left mouse click
- wxToolBar::DeleteTool() in presence of toolbar controls fixed
- wxDC::DeviceToLogical[XY] fixed (Chuck Messenger)
wxGTK:
- fixed configure bug: it didn't define HAVE_VSNPRINTF properly always
- fixed keyboard input in wxSpinCtrl
wxHTML:
- fixed bug in parsing tags with whitespaces around '=' in tags,
e.g. <a href = "something.html">
2.2.5 2.2.5
----- -----
- fixed memory corruption/crash in wxStreamBuffer - fixed memory corruption/crash in wxStreamBuffer
- wxTree/ListCtrl position fix (Mike Oliver <oliver@math.ucla.edu>) - wxTree/ListCtrl position fix (Mike Oliver)
- Italian translations updated - Italian translations updated
- Windows 2000 toolbar colours problem fixed - Windows 2000 toolbar colours problem fixed

View File

@@ -63,13 +63,6 @@ Set to TRUE by {\bf Skip} if this event should be skipped.
Timestamp for this event. Timestamp for this event.
\membersection{wxEvent::GetEventClass}
\func{WXTYPE}{GetEventClass}{\void}
Returns the identifier of the given event class,
such as wxTYPE\_MOUSE\_EVENT.
\membersection{wxEvent::GetEventObject} \membersection{wxEvent::GetEventObject}
\func{wxObject*}{GetEventObject}{\void} \func{wxObject*}{GetEventObject}{\void}

View File

@@ -43,12 +43,7 @@ See Combined Protocols paragraph for details.
The left location precedes the protocol in the URL string. The left location precedes the protocol in the URL string.
It is not used by global protocols like HTTP but it becomes handy when nesting It is not used by global protocols like HTTP but it becomes handy when nesting
protocols - for example you may want to access files in ZIP archive that is protocols - for example you may want to access files in a ZIP archive:
located on some FTP server:
ftp:ftp.archives.org/pub/cpp\_doc.zip\#zip:reference/fopen.htm\#syntax
In fact, you have to use 'left location' even when accessing local ZIPs:
file:archives/cpp\_doc.zip\#zip:reference/fopen.htm\#syntax file:archives/cpp\_doc.zip\#zip:reference/fopen.htm\#syntax
@@ -57,12 +52,6 @@ In this example, the protocol is "zip", the left location is
is "file:archives/cpp\_doc.zip". is "file:archives/cpp\_doc.zip".
There are {\bf two} protocols used in this example: "zip" and "file". There are {\bf two} protocols used in this example: "zip" and "file".
You can construct even more complicated addresses like this one:
http://www.archives.org/myarchive.zip\#zip:local/docs/cpp/stdio.zip\#zip:index.htm
In this example you access zip virtual file system stdio.zip stored in another zip (myarchive.zip)
which can be found at WWW.
\wxheading{File Systems Included in wxHTML} \wxheading{File Systems Included in wxHTML}

View File

@@ -1,9 +1,11 @@
\section{\class{wxScrollEvent}}\label{wxscrollevent} \section{\class{wxScrollEvent}}\label{wxscrollevent}
A scroll event holds information about events sent from stand-alone scrollbars, A scroll event holds information about events sent from stand-alone
spin-buttons and sliders - starting from wxWindows 2.1, scrolled windows send the scrollbars, spin-buttons and sliders. Note that starting from wxWindows 2.1,
\helpref{wxScrollWinEvent}{wxscrollwinevent} which does not derive from scrolled windows send the \helpref{wxScrollWinEvent}{wxscrollwinevent} which
wxCommandEvent, but from wxEvent directly. does not derive from wxCommandEvent, but from wxEvent directly - don't confuse
these two kinds of events and use the event table macros mentioned below only
for the scrollbar-like controls.
\wxheading{Derived from} \wxheading{Derived from}
@@ -17,10 +19,12 @@ wxCommandEvent, but from wxEvent directly.
\wxheading{Event table macros} \wxheading{Event table macros}
To process a scroll event, use these event handler macros to direct input to member To process a scroll event, use these event handler macros to direct input to
functions that take a wxScrollEvent argument. You can use EVT\_COMMAND\_SCROLL... macros member functions that take a wxScrollEvent argument. You can use
with window IDs for when intercepting scroll events from controls, or EVT\_SCROLL... macros {\tt EVT\_COMMAND\_SCROLL...} macros with window IDs for when intercepting
without window IDs for intercepting scroll events from the receiving window. scroll events from controls, or {\tt EVT\_SCROLL...} macros without window IDs
for intercepting scroll events from the receiving window - except for this,
the macros behave exactly the same
\twocolwidtha{7cm} \twocolwidtha{7cm}
\begin{twocollist}\itemsep=0pt \begin{twocollist}\itemsep=0pt
@@ -43,6 +47,7 @@ sent as the user drags the thumtrack).}
\twocolitem{{\bf EVT\_COMMAND\_SCROLL\_PAGEDOWN(id, func)}}{Process wxEVT\_SCROLL\_PAGEDOWN page down events.} \twocolitem{{\bf EVT\_COMMAND\_SCROLL\_PAGEDOWN(id, func)}}{Process wxEVT\_SCROLL\_PAGEDOWN page down events.}
\twocolitem{{\bf EVT\_COMMAND\_SCROLL\_THUMBTRACK(id, func)}}{Process wxEVT\_SCROLL\_THUMBTRACK thumbtrack events (frequent events \twocolitem{{\bf EVT\_COMMAND\_SCROLL\_THUMBTRACK(id, func)}}{Process wxEVT\_SCROLL\_THUMBTRACK thumbtrack events (frequent events
sent as the user drags the thumtrack).} sent as the user drags the thumtrack).}
\twocolitem{{\bf EVT\_COMMAND\_SCROLL\_THUMBRELEASE(func)}}{Process wxEVT\_SCROLL\_THUMBRELEASE thumb release events.}
\end{twocollist}% \end{twocollist}%
\wxheading{Remarks} \wxheading{Remarks}

View File

@@ -53,7 +53,7 @@ Destructor.
\membersection{wxValidator::Clone}\label{wxvalidatorclone} \membersection{wxValidator::Clone}\label{wxvalidatorclone}
\constfunc{virtual wxValidator*}{Clone}{\void} \constfunc{virtual wxObject*}{Clone}{\void}
All validator classes must implement the {\bf Clone} function, which returns All validator classes must implement the {\bf Clone} function, which returns
an identical copy of itself. This is because validators are passed to control an identical copy of itself. This is because validators are passed to control

View File

@@ -1,5 +1,5 @@
[OPTIONS] [OPTIONS]
BMROOT=d:\wx2sta~1\wxWind~1\docs/latex/wx ; Assume that bitmaps are where the source is BMROOT=c:\wx2sta~1\wxWind~1\docs\latex\wx ; Assume that bitmaps are where the source is
TITLE=wxWindows Manual TITLE=wxWindows Manual
CONTENTS=Contents CONTENTS=Contents
COMPRESS=HIGH COMPRESS=HIGH

View File

@@ -1,4 +1,4 @@
wxWindows 2.2.5 wxWindows 2.2.6
--------------- ---------------
README README

View File

@@ -10,7 +10,7 @@ WXDLLEXPORT_DATA(extern const wxChar*) wxDirDialogDefaultFolderStr;
WXDLLEXPORT_DATA(extern const wxChar*) wxEmptyString; WXDLLEXPORT_DATA(extern const wxChar*) wxEmptyString;
#if defined(__WXMSW__) #if defined(__WXMSW__)
#if defined(__WIN16__) || (defined(__GNUWIN32__)&&!defined(wxUSE_NORLANDER_HEADERS)) || defined(__SALFORDC__) #if defined(__WIN16__) || (defined(__GNUWIN32__) && !wxUSE_NORLANDER_HEADERS) || defined(__SALFORDC__)
#include "wx/generic/dirdlgg.h" #include "wx/generic/dirdlgg.h"
#else #else
#include "wx/msw/dirdlg.h" #include "wx/msw/dirdlg.h"

View File

@@ -20,6 +20,7 @@
working with right types. This achieves the 2nd goal. As for the first one, working with right types. This achieves the 2nd goal. As for the first one,
we provide a special derivation of wxListBase called wxList which looks just we provide a special derivation of wxListBase called wxList which looks just
like the old class. like the old class.
Last change: AC 27 Jan 101 4:38 pm
*/ */
#ifndef _WX_LISTH__ #ifndef _WX_LISTH__
@@ -245,9 +246,7 @@ public:
wxListBase(void *object, ... /* terminate with NULL */); wxListBase(void *object, ... /* terminate with NULL */);
protected: protected:
// copy ctor and assignment operator // assignment operator
wxListBase(const wxListBase& list)
{ Init(); DoCopy(list); }
wxListBase& operator=(const wxListBase& list) wxListBase& operator=(const wxListBase& list)
{ Clear(); DoCopy(list); return *this; } { Clear(); DoCopy(list); return *this; }
@@ -323,6 +322,11 @@ private:
*m_nodeLast; *m_nodeLast;
wxKeyType m_keyType; // type of our keys (may be wxKEY_NONE) wxKeyType m_keyType; // type of our keys (may be wxKEY_NONE)
protected:
// copy ctor. This has to go below Init, or VC++ 1.5 will complain.
wxListBase(const wxListBase& list)
{ Init(); DoCopy(list); }
}; };
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------

View File

@@ -17,7 +17,7 @@
#endif #endif
#include "wx/defs.h" #include "wx/defs.h"
#ifdef wxUSE_NORLANDER_HEADERS #if wxUSE_NORLANDER_HEADERS
#include <ole2.h> #include <ole2.h>
#endif #endif
// ============================================================================ // ============================================================================

View File

@@ -59,7 +59,7 @@ WXDLLEXPORT_DATA(extern HFONT) wxSTATUS_LINE_FONT;
// define things missing from some compilers' headers // define things missing from some compilers' headers
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
#if defined(__GNUWIN32__) && !defined(wxUSE_NORLANDER_HEADERS) #if defined(__GNUWIN32__) && !wxUSE_NORLANDER_HEADERS
#ifndef ZeroMemory #ifndef ZeroMemory
inline void ZeroMemory(void *buf, size_t len) { memset(buf, 0, len); } inline void ZeroMemory(void *buf, size_t len) { memset(buf, 0, len); }
#endif #endif

View File

@@ -719,9 +719,11 @@
// disable the settings which don't work for some compilers // 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 #ifndef wxUSE_NORLANDER_HEADERS
#if (defined(__MINGW32__) || defined(__CYGWIN__)) && ((__GNUC__>2) ||((__GNUC__==2) && (__GNUC_MINOR__>=95)))
# define wxUSE_NORLANDER_HEADERS 1 # define wxUSE_NORLANDER_HEADERS 1
#else
# define wxUSE_NORLANDER_HEADERS 0
#endif #endif
#endif #endif

View File

@@ -96,7 +96,15 @@ public: \
static wxProtoInfo g_proto_##class; static wxProtoInfo g_proto_##class;
#define IMPLEMENT_PROTOCOL(class, name, serv, host) \ #define IMPLEMENT_PROTOCOL(class, name, serv, host) \
wxProtoInfo class::g_proto_##class(name, serv, host, CLASSINFO(class)); wxProtoInfo class::g_proto_##class(name, serv, host, CLASSINFO(class)); \
bool wxProtocolUse##class = TRUE;
#define USE_PROTOCOL(class) \
extern bool wxProtocolUse##class ; \
static struct wxProtocolUserFor##class \
{ \
wxProtocolUserFor##class() { wxProtocolUse##class = TRUE; } \
} wxProtocolDoUse##class;
class WXDLLEXPORT wxProtoInfo : public wxObject class WXDLLEXPORT wxProtoInfo : public wxObject
{ {

View File

@@ -335,10 +335,13 @@ public:
virtual void SetToolSeparation(int separation) virtual void SetToolSeparation(int separation)
{ m_toolSeparation = separation; } { m_toolSeparation = separation; }
virtual wxSize GetToolMargins() { return wxSize(m_xMargin, m_yMargin); } virtual wxSize GetToolMargins() { return GetToolMargins(); }
virtual int GetToolPacking() { return m_toolPacking; } virtual int GetToolPacking() { return m_toolPacking; }
virtual int GetToolSeparation() { return m_toolSeparation; } virtual int GetToolSeparation() { return m_toolSeparation; }
// for compatibility
wxSize GetMargins() const { return wxSize(m_xMargin, m_yMargin); }
// toolbar geometry // toolbar geometry
// ---------------- // ----------------

View File

@@ -276,6 +276,9 @@ WXDLLEXPORT int wxFindMenuItemId(wxFrame *frame, const wxString& menuString, con
// Yield to other apps/messages // Yield to other apps/messages
WXDLLEXPORT bool wxYield(); WXDLLEXPORT bool wxYield();
// Like wxYield, but fails silently if the yield is recursive.
WXDLLEXPORT bool wxYieldIfNeeded();
// Yield to other apps/messages and disable user input // Yield to other apps/messages and disable user input
WXDLLEXPORT bool wxSafeYield(wxWindow *win = NULL); WXDLLEXPORT bool wxSafeYield(wxWindow *win = NULL);

View File

@@ -15,8 +15,8 @@
// Bump-up with each new version // Bump-up with each new version
#define wxMAJOR_VERSION 2 #define wxMAJOR_VERSION 2
#define wxMINOR_VERSION 2 #define wxMINOR_VERSION 2
#define wxRELEASE_NUMBER 5 #define wxRELEASE_NUMBER 6
#define wxVERSION_STRING _T("wxWindows 2.2.5") #define wxVERSION_STRING _T("wxWindows 2.2.6")
#define wxVERSION_NUMBER (wxMAJOR_VERSION * 1000) + (wxMINOR_VERSION * 100) + wxRELEASE_NUMBER #define wxVERSION_NUMBER (wxMAJOR_VERSION * 1000) + (wxMINOR_VERSION * 100) + wxRELEASE_NUMBER
#define wxBETA_NUMBER 0 #define wxBETA_NUMBER 0
#define wxVERSION_FLOAT wxMAJOR_VERSION + (wxMINOR_VERSION/10.0) + (wxRELEASE_NUMBER/100.0) + (wxBETA_NUMBER/10000.0) #define wxVERSION_FLOAT wxMAJOR_VERSION + (wxMINOR_VERSION/10.0) + (wxRELEASE_NUMBER/100.0) + (wxBETA_NUMBER/10000.0)

3791
locale/es.po Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -361,6 +361,8 @@ wxMenuItem *MyFrame::GetLastMenuItem() const
void MyFrame::LogMenuEvent(const wxCommandEvent& event) void MyFrame::LogMenuEvent(const wxCommandEvent& event)
{ {
int id = event.GetId(); int id = event.GetId();
if (!GetMenuBar()->FindItem(id))
return;
wxString msg = wxString::Format("Menu command %d", id); wxString msg = wxString::Format("Menu command %d", id);
if ( GetMenuBar()->FindItem(id)->IsCheckable() ) if ( GetMenuBar()->FindItem(id)->IsCheckable() )
{ {

View File

@@ -567,6 +567,7 @@
* Support for metafiles * Support for metafiles
*/ */
#define wxUSE_METAFILE 0 #define wxUSE_METAFILE 0
#define wxUSE_ENH_METAFILE 0
/* /*
* wxMiniFrame * wxMiniFrame

View File

@@ -50,8 +50,8 @@ void wxDocMDIParentFrame::OnExit(wxCommandEvent& WXUNUSED(event))
void wxDocMDIParentFrame::OnMRUFile(wxCommandEvent& event) void wxDocMDIParentFrame::OnMRUFile(wxCommandEvent& event)
{ {
wxString f(m_docManager->GetHistoryFile(event.GetSelection() - wxID_FILE1)); wxString f(m_docManager->GetHistoryFile(event.GetId() - wxID_FILE1));
if (f != wxT("")) if ( !f.empty() )
(void)m_docManager->CreateDocument(f, wxDOC_SILENT); (void)m_docManager->CreateDocument(f, wxDOC_SILENT);
} }

View File

@@ -248,7 +248,7 @@ bool wxDocument::SaveAs()
wxString tmp = wxFileSelector(_("Save as"), wxString tmp = wxFileSelector(_("Save as"),
docTemplate->GetDirectory(), docTemplate->GetDirectory(),
GetFilename(), wxFileNameFromPath(GetFilename()),
docTemplate->GetDefaultExtension(), docTemplate->GetDefaultExtension(),
docTemplate->GetFileFilter(), docTemplate->GetFileFilter(),
wxSAVE | wxOVERWRITE_PROMPT, wxSAVE | wxOVERWRITE_PROMPT,

View File

@@ -61,7 +61,7 @@ wxZipFSHandler::~wxZipFSHandler()
bool wxZipFSHandler::CanOpen(const wxString& location) bool wxZipFSHandler::CanOpen(const wxString& location)
{ {
wxString p = GetProtocol(location); wxString p = GetProtocol(location);
return (p == wxT("zip") ); return (p == wxT("zip"));
} }
@@ -73,12 +73,15 @@ wxFSFile* wxZipFSHandler::OpenFile(wxFileSystem& WXUNUSED(fs), const wxString& l
wxString left = GetLeftLocation(location); wxString left = GetLeftLocation(location);
wxInputStream *s; wxInputStream *s;
if (GetProtocol(left) != wxT("file")) { if (GetProtocol(left) != wxT("file"))
{
wxLogError(_("ZIP handler currently supports only local files!"));
return NULL; return NULL;
} }
s = new wxZipInputStream(left, right); s = new wxZipInputStream(left, right);
if (s && (s -> LastError() == wxStream_NOERROR)) { if (s && (s->LastError() == wxStream_NOERROR))
{
return new wxFSFile(s, return new wxFSFile(s,
left + wxT("#zip:") + right, left + wxT("#zip:") + right,
GetMimeTypeFromExt(location), GetMimeTypeFromExt(location),
@@ -99,19 +102,23 @@ wxString wxZipFSHandler::FindFirst(const wxString& spec, int flags)
if (right.Last() == wxT('/')) right.RemoveLast(); if (right.Last() == wxT('/')) right.RemoveLast();
if (m_Archive) { if (m_Archive)
{
unzClose((unzFile)m_Archive); unzClose((unzFile)m_Archive);
m_Archive = NULL; m_Archive = NULL;
} }
if (GetProtocol(left) != wxT("file")) { if (GetProtocol(left) != wxT("file"))
return wxEmptyString; return wxEmptyString;
}
switch (flags) { switch (flags)
case wxFILE : m_AllowDirs = FALSE, m_AllowFiles = TRUE; break; {
case wxDIR : m_AllowDirs = TRUE, m_AllowFiles = FALSE; break; case wxFILE:
default : m_AllowDirs = m_AllowFiles = TRUE; break; m_AllowDirs = FALSE, m_AllowFiles = TRUE; break;
case wxDIR:
m_AllowDirs = TRUE, m_AllowFiles = FALSE; break;
default:
m_AllowDirs = m_AllowFiles = TRUE; break;
} }
m_ZipFile = left; m_ZipFile = left;
@@ -119,13 +126,16 @@ wxString wxZipFSHandler::FindFirst(const wxString& spec, int flags)
m_Pattern = right.AfterLast(wxT('/')); m_Pattern = right.AfterLast(wxT('/'));
m_BaseDir = right.BeforeLast(wxT('/')); m_BaseDir = right.BeforeLast(wxT('/'));
if (m_Archive) { if (m_Archive)
if (unzGoToFirstFile((unzFile)m_Archive) != UNZ_OK) { {
if (unzGoToFirstFile((unzFile)m_Archive) != UNZ_OK)
{
unzClose((unzFile)m_Archive); unzClose((unzFile)m_Archive);
m_Archive = NULL; m_Archive = NULL;
} }
else return DoFind();
} }
return DoFind(); return wxEmptyString;
} }
@@ -151,7 +161,8 @@ wxString wxZipFSHandler::DoFind()
unzGetCurrentFileInfo((unzFile)m_Archive, NULL, namebuf, 1024, NULL, 0, NULL, 0); unzGetCurrentFileInfo((unzFile)m_Archive, NULL, namebuf, 1024, NULL, 0, NULL, 0);
for (c = namebuf; *c; c++) if (*c == wxT('\\')) *c = wxT('/'); for (c = namebuf; *c; c++) if (*c == wxT('\\')) *c = wxT('/');
fn = namebuf; fn = namebuf;
if (fn.Last() == wxT('/')) { if (fn.Length() > 0 && fn.Last() == wxT('/'))
{
fn.RemoveLast(); fn.RemoveLast();
wasdir = TRUE; wasdir = TRUE;
} }
@@ -160,14 +171,16 @@ wxString wxZipFSHandler::DoFind()
name = fn.AfterLast(wxT('/')); name = fn.AfterLast(wxT('/'));
dir = fn.BeforeLast(wxT('/')); dir = fn.BeforeLast(wxT('/'));
if (dir == m_BaseDir) { if (dir == m_BaseDir)
{
if (m_AllowFiles && !wasdir && wxMatchWild(m_Pattern, name, FALSE)) if (m_AllowFiles && !wasdir && wxMatchWild(m_Pattern, name, FALSE))
match = m_ZipFile + wxT("#zip:") + fn; match = m_ZipFile + wxT("#zip:") + fn;
if (m_AllowDirs && wasdir && wxMatchWild(m_Pattern, name, FALSE)) if (m_AllowDirs && wasdir && wxMatchWild(m_Pattern, name, FALSE))
match = m_ZipFile + wxT("#zip:") + fn; match = m_ZipFile + wxT("#zip:") + fn;
} }
if (unzGoToNextFile((unzFile)m_Archive) != UNZ_OK) { if (unzGoToNextFile((unzFile)m_Archive) != UNZ_OK)
{
unzClose((unzFile)m_Archive); unzClose((unzFile)m_Archive);
m_Archive = NULL; m_Archive = NULL;
break; break;

View File

@@ -200,7 +200,7 @@ private:
// utility functions // utility functions
// calculate the hash value of given string // calculate the hash value of given string
static inline size_t32 GetHash(const char *sz); static size_t32 GetHash(const char *sz);
// big<->little endian // big<->little endian
inline size_t32 Swap(size_t32 ui) const; inline size_t32 Swap(size_t32 ui) const;
@@ -447,19 +447,17 @@ const char *wxMsgCatalog::GetString(const char *szOrig) const
size_t32 nIncr = 1 + (nHashVal % (m_nHashSize - 2)); size_t32 nIncr = 1 + (nHashVal % (m_nHashSize - 2));
#if defined(__VISAGECPP__) for ( ;; ) {
// VA just can't stand while(1) or while(TRUE)
bool bOs2var = TRUE;
while(bOs2var) {
#else
while (1) {
#endif
size_t32 nStr = Swap(m_pHashTable[nIndex]); size_t32 nStr = Swap(m_pHashTable[nIndex]);
if ( nStr == 0 ) if ( nStr == 0 )
return NULL; return NULL;
if ( strcmp(szOrig, StringAtOfs(m_pOrigTable, nStr - 1)) == 0 ) if ( strcmp(szOrig, StringAtOfs(m_pOrigTable, nStr - 1)) == 0 ) {
return StringAtOfs(m_pTransTable, nStr - 1); // work around for BC++ 5.5 bug: without a temp var, the optimizer
// breaks the code and the return value is incorrect
const char *tmp = StringAtOfs(m_pTransTable, nStr - 1);
return tmp;
}
if ( nIndex >= m_nHashSize - nIncr) if ( nIndex >= m_nHashSize - nIncr)
nIndex -= m_nHashSize - nIncr; nIndex -= m_nHashSize - nIncr;
@@ -478,8 +476,11 @@ const char *wxMsgCatalog::GetString(const char *szOrig) const
top = current; top = current;
else if ( res > 0 ) else if ( res > 0 )
bottom = current + 1; bottom = current + 1;
else // found! else { // found!
return StringAtOfs(m_pTransTable, current); // work around the same BC++ 5.5 bug as above
const char *tmp = StringAtOfs(m_pTransTable, current);
return tmp;
}
} }
} }
@@ -500,11 +501,16 @@ void wxMsgCatalog::ConvertEncoding()
// first, find encoding header: // first, find encoding header:
const char *hdr = StringAtOfs(m_pOrigTable, 0); const char *hdr = StringAtOfs(m_pOrigTable, 0);
if (hdr == NULL) return; // not supported by this catalog, does not have non-fuzzy header if ( hdr == NULL || hdr[0] != 0 ) {
if (hdr[0] != 0) return; // ditto // not supported by this catalog, does not have non-fuzzy header
return;
}
/* we support catalogs with header (msgid "") that is _not_ marked as "#, fuzzy" (otherwise /*
the string would not be included into compiled catalog) */ we support catalogs with header (msgid "") that is _not_ marked as "#,
fuzzy" (otherwise the string would not be included into compiled
catalog)
*/
wxString header(StringAtOfs(m_pTransTable, 0)); wxString header(StringAtOfs(m_pTransTable, 0));
wxString charset; wxString charset;
int pos = header.Find(wxT("Content-Type: text/plain; charset=")); int pos = header.Find(wxT("Content-Type: text/plain; charset="));
@@ -530,7 +536,7 @@ void wxMsgCatalog::ConvertEncoding()
converter.Init(enc, a[0]); converter.Init(enc, a[0]);
for (size_t i = 0; i < m_numStrings; i++) for (size_t i = 0; i < m_numStrings; i++)
converter.Convert((char*)StringAtOfs(m_pTransTable, i)); converter.Convert((char*)StringAtOfs(m_pTransTable, i));
#endif #endif // wxUSE_GUI
} }

View File

@@ -1070,7 +1070,10 @@ wxSocketBase *wxSocketServer::Accept(bool wait)
sock->SetFlags(m_flags); sock->SetFlags(m_flags);
if (!AcceptWith(*sock, wait)) if (!AcceptWith(*sock, wait))
return NULL; {
sock->Destroy();
sock = NULL;
}
return sock; return sock;
} }

View File

@@ -35,6 +35,11 @@ IMPLEMENT_CLASS(wxURL, wxObject)
// Protocols list // Protocols list
wxProtoInfo *wxURL::ms_protocols = NULL; wxProtoInfo *wxURL::ms_protocols = NULL;
// Enforce linking of protocol classes:
USE_PROTOCOL(wxHTTP)
USE_PROTOCOL(wxFTP)
USE_PROTOCOL(wxFileProto)
#if wxUSE_SOCKETS #if wxUSE_SOCKETS
wxHTTP *wxURL::ms_proxyDefault = NULL; wxHTTP *wxURL::ms_proxyDefault = NULL;
bool wxURL::ms_useDefaultProxy = FALSE; bool wxURL::ms_useDefaultProxy = FALSE;

View File

@@ -320,9 +320,9 @@ void wxDirCtrl::OnExpandItem(wxTreeEvent &event)
m_paths.Clear(); m_paths.Clear();
m_names.Clear(); m_names.Clear();
#ifdef __WXMSW__ #ifdef __WXMSW__
search = data->m_path + "\\*.*"; search = data->m_path + _T("\\*.*");
#else #else
search = data->m_path + "/*"; search = data->m_path + _T("/*");
#endif #endif
for (path = wxFindFirstFile( search, wxDIR ); !path.IsNull(); for (path = wxFindFirstFile( search, wxDIR ); !path.IsNull();
path=wxFindNextFile() ) path=wxFindNextFile() )
@@ -331,7 +331,8 @@ void wxDirCtrl::OnExpandItem(wxTreeEvent &event)
/* Don't add "." and ".." to the tree. I think wxFindNextFile /* Don't add "." and ".." to the tree. I think wxFindNextFile
* also checks this, but I don't quite understand what happens * also checks this, but I don't quite understand what happens
* there. Also wxFindNextFile seems to swallow hidden dirs */ * there. Also wxFindNextFile seems to swallow hidden dirs */
if ((filename != ".") && (filename != "..") && (filename[0] != '.')) if ( (filename != _T(".")) && (filename != _T(".."))
&& (filename[0u] != _T('.')))
{ {
m_paths.Add(path); m_paths.Add(path);
m_names.Add(filename); m_names.Add(filename);
@@ -397,7 +398,7 @@ wxDirDialog::wxDirDialog(wxWindow *parent,
wxBoxSizer *topsizer = new wxBoxSizer( wxVERTICAL ); wxBoxSizer *topsizer = new wxBoxSizer( wxVERTICAL );
// 1) dir ctrl // 1) dir ctrl
m_dir = new wxDirCtrl( this, ID_DIRCTRL, "/", m_dir = new wxDirCtrl( this, ID_DIRCTRL, _T("/"),
wxDefaultPosition, wxDefaultPosition,
wxSize(200,200), wxSize(200,200),
wxTR_HAS_BUTTONS | wxTR_HAS_BUTTONS |

View File

@@ -1754,7 +1754,7 @@ void wxListMainWindow::EditLabel( long item )
// We have to call this here because the label in // We have to call this here because the label in
// question might just have been added and no screen // question might just have been added and no screen
// update taken place. // update taken place.
if (m_dirty) wxYield(); if (m_dirty) wxYieldIfNeeded();
wxString s; wxString s;
m_currentEdit->GetText( 0, s ); m_currentEdit->GetText( 0, s );
@@ -2584,7 +2584,7 @@ int wxListMainWindow::GetItemState( long item, long stateMask )
if (item >= 0 && (size_t)item < m_lines.GetCount()) if (item >= 0 && (size_t)item < m_lines.GetCount())
{ {
wxListLineData *line = &m_lines[(size_t)item]; wxListLineData *line = &m_lines[(size_t)item];
if (line->IsHilighted()) ret |= wxLIST_STATE_FOCUSED; if (line->IsHilighted()) ret |= wxLIST_STATE_SELECTED;
} }
} }
return ret; return ret;
@@ -2896,7 +2896,7 @@ void wxListMainWindow::EnsureVisible( long index )
// We have to call this here because the label in // We have to call this here because the label in
// question might just have been added and no screen // question might just have been added and no screen
// update taken place. // update taken place.
if (m_dirty) wxYield(); if (m_dirty) wxYieldIfNeeded();
wxListLineData *oldCurrent = m_current; wxListLineData *oldCurrent = m_current;
m_current = (wxListLineData *) NULL; m_current = (wxListLineData *) NULL;

View File

@@ -226,7 +226,7 @@ wxProgressDialog::wxProgressDialog(wxString const &title,
Enable(TRUE); // enable this window Enable(TRUE); // enable this window
// Update the display (especially on X, GTK) // Update the display (especially on X, GTK)
wxYield(); wxYieldIfNeeded();
#ifdef __WXMAC__ #ifdef __WXMAC__
MacUpdateImmediately(); MacUpdateImmediately();
@@ -285,7 +285,7 @@ wxProgressDialog::Update(int value, const wxString& newmsg)
m_msg->SetLabel(newmsg); m_msg->SetLabel(newmsg);
wxYield(); wxYieldIfNeeded();
} }
if ( (m_elapsed || m_remaining || m_estimated) && (value != 0) ) if ( (m_elapsed || m_remaining || m_estimated) && (value != 0) )
@@ -317,14 +317,14 @@ wxProgressDialog::Update(int value, const wxString& newmsg)
// to do // to do
m_state = Finished; m_state = Finished;
wxYield(); wxYieldIfNeeded();
(void)ShowModal(); (void)ShowModal();
} }
else else
{ {
// update the display // update the display
wxYield(); wxYieldIfNeeded();
} }
#ifdef __WXMAC__ #ifdef __WXMAC__

View File

@@ -1453,7 +1453,7 @@ void wxTreeCtrl::ScrollTo(const wxTreeItemId &item)
// We have to call this here because the label in // We have to call this here because the label in
// question might just have been added and no screen // question might just have been added and no screen
// update taken place. // update taken place.
if (m_dirty) wxYield(); if (m_dirty) wxYieldIfNeeded();
wxGenericTreeItem *gitem = item.m_pItem; wxGenericTreeItem *gitem = item.m_pItem;
@@ -2077,7 +2077,7 @@ wxTreeItemId wxTreeCtrl::HitTest(const wxPoint& point, int& flags)
// We have to call this here because the label in // We have to call this here because the label in
// question might just have been added and no screen // question might just have been added and no screen
// update taken place. // update taken place.
if (m_dirty) wxYield(); if (m_dirty) wxYieldIfNeeded();
wxClientDC dc(this); wxClientDC dc(this);
PrepareDC(dc); PrepareDC(dc);
@@ -2113,7 +2113,7 @@ void wxTreeCtrl::Edit( const wxTreeItemId& item )
// We have to call this here because the label in // We have to call this here because the label in
// question might just have been added and no screen // question might just have been added and no screen
// update taken place. // update taken place.
if (m_dirty) wxYield(); if (m_dirty) wxYieldIfNeeded();
wxString s = m_currentEdit->GetText(); wxString s = m_currentEdit->GetText();
int x = m_currentEdit->GetX(); int x = m_currentEdit->GetX();

View File

@@ -80,17 +80,17 @@ void wxExit()
// wxYield // wxYield
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
static bool gs_inYield = FALSE;
bool wxYield() bool wxYield()
{ {
#ifdef __WXDEBUG__ #ifdef __WXDEBUG__
static bool s_inYield = FALSE; if (gs_inYield)
if (s_inYield)
wxFAIL_MSG( wxT("wxYield called recursively" ) ); wxFAIL_MSG( wxT("wxYield called recursively" ) );
s_inYield = TRUE;
#endif #endif
gs_inYield = TRUE;
if (!g_isIdle) if (!g_isIdle)
{ {
// We need to remove idle callbacks or the loop will // We need to remove idle callbacks or the loop will
@@ -115,13 +115,24 @@ bool wxYield()
// let the logs be flashed again // let the logs be flashed again
wxLog::Resume(); wxLog::Resume();
#ifdef __WXDEBUG__ gs_inYield = FALSE;
s_inYield = FALSE;
#endif
return TRUE; return TRUE;
} }
//-----------------------------------------------------------------------------
// wxYieldIfNeeded
// Like wxYield, but fails silently if the yield is recursive.
//-----------------------------------------------------------------------------
bool wxYieldIfNeeded()
{
if (gs_inYield)
return FALSE;
return wxYield();
}
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
// wxWakeUpIdle // wxWakeUpIdle
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------

View File

@@ -51,6 +51,7 @@ static void gtk_spinctrl_callback( GtkWidget *WXUNUSED(widget), wxSpinCtrl *win
wxCommandEvent event( wxEVT_COMMAND_SPINCTRL_UPDATED, win->GetId()); wxCommandEvent event( wxEVT_COMMAND_SPINCTRL_UPDATED, win->GetId());
event.SetEventObject( win ); event.SetEventObject( win );
event.SetInt( win->GetValue() ); event.SetInt( win->GetValue() );
win->GetEventHandler()->ProcessEvent( event ); win->GetEventHandler()->ProcessEvent( event );
} }
@@ -69,7 +70,15 @@ gtk_spinctrl_text_changed_callback( GtkWidget *WXUNUSED(widget), wxSpinCtrl *win
wxCommandEvent event( wxEVT_COMMAND_TEXT_UPDATED, win->GetId() ); wxCommandEvent event( wxEVT_COMMAND_TEXT_UPDATED, win->GetId() );
event.SetEventObject( win ); event.SetEventObject( win );
event.SetInt( win->GetValue() );
// note that we don't use wxSpinCtrl::GetValue() here because it would
// adjust the value to fit into the control range and this means that we
// would never be able to enter an "invalid" value in the control, even
// temporarily - and trying to enter 10 into the control which accepts the
// values in range 5..50 is then, ummm, quite challenging (hint: you can't
// enter 1!) (VZ)
event.SetInt( (int)ceil(win->m_adjust->value) );
win->GetEventHandler()->ProcessEvent( event ); win->GetEventHandler()->ProcessEvent( event );
} }

View File

@@ -2306,6 +2306,9 @@ bool wxWindow::Create( wxWindow *parent, wxWindowID id,
wxWindow::~wxWindow() wxWindow::~wxWindow()
{ {
if (g_focusWindow == this)
g_focusWindow = NULL;
m_isBeingDeleted = TRUE; m_isBeingDeleted = TRUE;
m_hasVMT = FALSE; m_hasVMT = FALSE;

View File

@@ -80,17 +80,17 @@ void wxExit()
// wxYield // wxYield
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
static bool gs_inYield = FALSE;
bool wxYield() bool wxYield()
{ {
#ifdef __WXDEBUG__ #ifdef __WXDEBUG__
static bool s_inYield = FALSE; if (gs_inYield)
if (s_inYield)
wxFAIL_MSG( wxT("wxYield called recursively" ) ); wxFAIL_MSG( wxT("wxYield called recursively" ) );
s_inYield = TRUE;
#endif #endif
gs_inYield = TRUE;
if (!g_isIdle) if (!g_isIdle)
{ {
// We need to remove idle callbacks or the loop will // We need to remove idle callbacks or the loop will
@@ -115,13 +115,24 @@ bool wxYield()
// let the logs be flashed again // let the logs be flashed again
wxLog::Resume(); wxLog::Resume();
#ifdef __WXDEBUG__ gs_inYield = FALSE;
s_inYield = FALSE;
#endif
return TRUE; return TRUE;
} }
//-----------------------------------------------------------------------------
// wxYieldIfNeeded
// Like wxYield, but fails silently if the yield is recursive.
//-----------------------------------------------------------------------------
bool wxYieldIfNeeded()
{
if (gs_inYield)
return FALSE;
return wxYield();
}
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
// wxWakeUpIdle // wxWakeUpIdle
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------

View File

@@ -51,6 +51,7 @@ static void gtk_spinctrl_callback( GtkWidget *WXUNUSED(widget), wxSpinCtrl *win
wxCommandEvent event( wxEVT_COMMAND_SPINCTRL_UPDATED, win->GetId()); wxCommandEvent event( wxEVT_COMMAND_SPINCTRL_UPDATED, win->GetId());
event.SetEventObject( win ); event.SetEventObject( win );
event.SetInt( win->GetValue() ); event.SetInt( win->GetValue() );
win->GetEventHandler()->ProcessEvent( event ); win->GetEventHandler()->ProcessEvent( event );
} }
@@ -69,7 +70,15 @@ gtk_spinctrl_text_changed_callback( GtkWidget *WXUNUSED(widget), wxSpinCtrl *win
wxCommandEvent event( wxEVT_COMMAND_TEXT_UPDATED, win->GetId() ); wxCommandEvent event( wxEVT_COMMAND_TEXT_UPDATED, win->GetId() );
event.SetEventObject( win ); event.SetEventObject( win );
event.SetInt( win->GetValue() );
// note that we don't use wxSpinCtrl::GetValue() here because it would
// adjust the value to fit into the control range and this means that we
// would never be able to enter an "invalid" value in the control, even
// temporarily - and trying to enter 10 into the control which accepts the
// values in range 5..50 is then, ummm, quite challenging (hint: you can't
// enter 1!) (VZ)
event.SetInt( (int)ceil(win->m_adjust->value) );
win->GetEventHandler()->ProcessEvent( event ); win->GetEventHandler()->ProcessEvent( event );
} }

View File

@@ -2306,6 +2306,9 @@ bool wxWindow::Create( wxWindow *parent, wxWindowID id,
wxWindow::~wxWindow() wxWindow::~wxWindow()
{ {
if (g_focusWindow == this)
g_focusWindow = NULL;
m_isBeingDeleted = TRUE; m_isBeingDeleted = TRUE;
m_hasVMT = FALSE; m_hasVMT = FALSE;

View File

@@ -127,33 +127,54 @@ wxHtmlTag::wxHtmlTag(const wxString& source, int pos, int end_pos, wxHtmlTagsCac
// fill-in name, params and begin pos: // fill-in name, params and begin pos:
m_Name = m_Params = wxEmptyString; m_Name = m_Params = wxEmptyString;
i = pos+1; i = pos+1;
if (source[i] == '/') {m_Ending = TRUE; i++;} if (source[i] == '/') { m_Ending = TRUE; i++; }
else m_Ending = FALSE; else m_Ending = FALSE;
// find tag's name and convert it to uppercase:
while ((i < end_pos) && while ((i < end_pos) &&
((c = source[i++]) != ' ' && c != '\r' && c != '\n' && c != '\t' && ((c = source[i++]) != ' ' && c != '\r' && c != '\n' && c != '\t' &&
c != '>')) { c != '>'))
{
if ((c >= 'a') && (c <= 'z')) c -= ('a' - 'A'); if ((c >= 'a') && (c <= 'z')) c -= ('a' - 'A');
m_Name += c; m_Name += c;
} }
// if the tag has parameters, read them and "normalize" them,
// i.e. convert to uppercase, replace whitespaces by spaces and
// remove whitespaces around '=':
if (source[i-1] != '>') if (source[i-1] != '>')
while ((i < end_pos) && ((c = source[i++]) != '>')) { while ((i < end_pos) && ((c = source[i++]) != '>'))
{
if ((c >= 'a') && (c <= 'z')) c -= ('a' - 'A'); if ((c >= 'a') && (c <= 'z')) c -= ('a' - 'A');
if (c == '\r' || c == '\n' || c == '\t') c = ' '; // make future parsing a bit simpler if (c == '\r' || c == '\n' || c == '\t') c = ' '; // make future parsing a bit simpler
m_Params += c; m_Params += c;
if (c == '"') { if (c == '"')
{
// remove spaces around the '=' character:
if (m_Params.Length() > 1 &&
m_Params[m_Params.Length()-2] == ' ')
{
m_Params.RemoveLast();
while (m_Params.Length() > 0 && m_Params.Last() == ' ')
m_Params.RemoveLast();
m_Params += '"';
}
while ((i < end_pos) && (source[i++] == ' ')) {}
if (i < end_pos) i--;
// ...and copy the value to m_Params:
while ((i < end_pos) && ((c = source[i++]) != '"')) m_Params += c; while ((i < end_pos) && ((c = source[i++]) != '"')) m_Params += c;
m_Params += c; m_Params += c;
} }
else if (c == '\'') { else if (c == '\'')
{
while ((i < end_pos) && ((c = source[i++]) != '\'')) m_Params += c; while ((i < end_pos) && ((c = source[i++]) != '\'')) m_Params += c;
m_Params += c; m_Params += c;
} }
} }
m_Begin = i; m_Begin = i;
cache -> QueryTag(pos, &m_End1, &m_End2); cache->QueryTag(pos, &m_End1, &m_End2);
if (m_End1 > end_pos) m_End1 = end_pos; if (m_End1 > end_pos) m_End1 = end_pos;
if (m_End2 > end_pos) m_End2 = end_pos; if (m_End2 > end_pos) m_End2 = end_pos;
} }

View File

@@ -191,7 +191,7 @@ bool wxHtmlPrintout::OnBeginDocument(int startPage, int endPage)
/* prepare headers/footers renderer: */ /* prepare headers/footers renderer: */
m_RendererHdr -> SetDC(GetDC(), (double)ppiPrinterY / (double)ppiScreenY); m_RendererHdr -> SetDC(GetDC(), (double)ppiPrinterY / (double)ppiScreenY);
m_RendererHdr -> SetSize((int) (ppmm_h * (mm_w - m_MarginLeft - m_MarginTop)), m_RendererHdr -> SetSize((int) (ppmm_h * (mm_w - m_MarginLeft - m_MarginRight)),
(int) (ppmm_v * (mm_h - m_MarginTop - m_MarginBottom))); (int) (ppmm_v * (mm_h - m_MarginTop - m_MarginBottom)));
if (m_Headers[0] != wxEmptyString) { if (m_Headers[0] != wxEmptyString) {
m_RendererHdr -> SetHtmlText(TranslateHeader(m_Headers[0], 1)); m_RendererHdr -> SetHtmlText(TranslateHeader(m_Headers[0], 1));
@@ -212,7 +212,7 @@ bool wxHtmlPrintout::OnBeginDocument(int startPage, int endPage)
/* prepare main renderer: */ /* prepare main renderer: */
m_Renderer -> SetDC(GetDC(), (double)ppiPrinterY / (double)ppiScreenY); m_Renderer -> SetDC(GetDC(), (double)ppiPrinterY / (double)ppiScreenY);
m_Renderer -> SetSize((int) (ppmm_h * (mm_w - m_MarginLeft - m_MarginTop)), m_Renderer -> SetSize((int) (ppmm_h * (mm_w - m_MarginLeft - m_MarginRight)),
(int) (ppmm_v * (mm_h - m_MarginTop - m_MarginBottom) - (int) (ppmm_v * (mm_h - m_MarginTop - m_MarginBottom) -
m_FooterHeight - m_HeaderHeight - m_FooterHeight - m_HeaderHeight -
((m_HeaderHeight == 0) ? 0 : m_MarginSpace * ppmm_v) - ((m_HeaderHeight == 0) ? 0 : m_MarginSpace * ppmm_v) -

View File

@@ -157,15 +157,30 @@ typedef short INT16;
/* INT32 must hold at least signed 32-bit values. */ /* INT32 must hold at least signed 32-bit values. */
/* Modified JACS 23/4/99. 1200 means VC++ 6 */ #ifdef INT32
#if !defined(XMD_H) && !(_MSC_VER >= 1200) && !(__BORLANDC__ >= 0x550) /* X11/xmd.h correctly defines INT32 */ # undef INT32_DEFINED
# define INT32_DEFINED
#endif /* INT32 defined */
/* you may define INT32_DEFINED if it is already defined somewhere */
#ifndef INT32_DEFINED
#ifdef XMD_H
/* X11/xmd.h correctly defines INT32 */
#define INT32_DEFINED
#elif (_MSC_VER >= 1200) || (__BORLANDC__ >= 0x550) || \
((defined(__MINGW32__) || defined(__CYGWIN__)) \
&& ((__GNUC__>2) || ((__GNUC__==2) && (__GNUC_MINOR__>95))))
/* INT32 is defined in windows.h for these compilers */
#define INT32_DEFINED
#include <windows.h>
#endif
#endif /* !INT32_DEFINED */
#ifndef INT32_DEFINED
typedef long INT32; typedef long INT32;
#endif #endif
/* Added JACS 23/4/99, to get INT32 definition */ #undef INT32_DEFINED
#if (_MSC_VER >= 1200) || (__BORLANDC__ >= 0x550)
#include <windows.h>
#endif
/* Datatype used for image dimensions. The JPEG standard only supports /* Datatype used for image dimensions. The JPEG standard only supports
* images up to 64K*64K due to 16-bit fields in SOF markers. Therefore * images up to 64K*64K due to 16-bit fields in SOF markers. Therefore

View File

@@ -751,13 +751,34 @@ void wxExit()
} }
// Yield to other processes // Yield to other processes
static bool gs_inYield = FALSE;
bool wxYield() bool wxYield()
{ {
#ifdef __WXDEBUG__
if (gs_inYield)
wxFAIL_MSG( wxT("wxYield called recursively" ) );
#endif
gs_inYield = TRUE;
// YieldToAnyThread() ; // YieldToAnyThread() ;
SystemTask() ; SystemTask() ;
gs_inYield = FALSE;
return TRUE; return TRUE;
} }
// Yield to incoming messages; but fail silently if recursion is detected.
bool wxYieldIfNeeded()
{
if (gs_inYield)
return FALSE;
return wxYield();
}
// platform specifics // platform specifics
void wxApp::MacSuspend( bool convertClipboard ) void wxApp::MacSuspend( bool convertClipboard )

View File

@@ -751,13 +751,34 @@ void wxExit()
} }
// Yield to other processes // Yield to other processes
static bool gs_inYield = FALSE;
bool wxYield() bool wxYield()
{ {
#ifdef __WXDEBUG__
if (gs_inYield)
wxFAIL_MSG( wxT("wxYield called recursively" ) );
#endif
gs_inYield = TRUE;
// YieldToAnyThread() ; // YieldToAnyThread() ;
SystemTask() ; SystemTask() ;
gs_inYield = FALSE;
return TRUE; return TRUE;
} }
// Yield to incoming messages; but fail silently if recursion is detected.
bool wxYieldIfNeeded()
{
if (gs_inYield)
return FALSE;
return wxYield();
}
// platform specifics // platform specifics
void wxApp::MacSuspend( bool convertClipboard ) void wxApp::MacSuspend( bool convertClipboard )

View File

@@ -43,7 +43,7 @@ DLL=0
!if "$(WXMAKINGDLL)" == "1" !if "$(WXMAKINGDLL)" == "1"
DLL_FLAGS= -DWXMAKINGDLL=1 -D_RTLDLL DLL_FLAGS= -DWXMAKINGDLL=1 -D_RTLDLL
WXLIB= $(WXLIBDIR)\wx225.lib WXLIB= $(WXLIBDIR)\wx226.lib
!else !else
@@ -51,7 +51,7 @@ LINK_FLAGS= /aa /c
!if "$(WXUSINGDLL)" == "1" !if "$(WXUSINGDLL)" == "1"
DLL_FLAGS= -DWXUSINGDLL=1 -D_RTLDLL DLL_FLAGS= -DWXUSINGDLL=1 -D_RTLDLL
WXLIB= $(WXLIBDIR)\wx225.lib WXLIB= $(WXLIBDIR)\wx226.lib
!else !else
DLL_FLAGS= DLL_FLAGS=
WXLIB= $(WXLIBDIR)\wx32.lib WXLIB= $(WXLIBDIR)\wx32.lib

View File

@@ -18,7 +18,7 @@ MINGW32=1
MINGW32VERSION=2.95 MINGW32VERSION=2.95
# If building DLL, the version # If building DLL, the version
WXVERSION=22_5 WXVERSION=22_6
# Say yes if you have a "modern" linker that supports --shared option. # Say yes if you have a "modern" linker that supports --shared option.
# Note that you're probably going to wait forever for dlltool/gcc/etc # Note that you're probably going to wait forever for dlltool/gcc/etc

View File

@@ -20,4 +20,7 @@ $(LIBTARGET): $(OBJECTS)
$(RANLIB) $@ $(RANLIB) $@
clean: clean:
-$(RM) $(OBJECTS) $(LIBTARGET) core *.rsc *.res -$(RM) $(OBJECTS) core *.rsc *.res
cleanall: clean
-$(RM) $(LIBTARGET)

View File

@@ -22,7 +22,9 @@ $(TARGET)_resources.o: $(TARGET).rc
clean: clean:
-$(RM) *.o -$(RM) *.o
-$(RM) $(TARGET)_resources.o -$(RM) $(TARGET)_resources.o
-$(RM) $(TARGET).exe
-$(RM) core -$(RM) core
-$(RM) *.rsc -$(RM) *.rsc
-$(RM) *.res -$(RM) *.res
cleanall: clean
-$(RM) $(TARGET).exe

View File

@@ -8,7 +8,7 @@
# #
!include <ntwin32.mak> !include <ntwin32.mak>
WXVERSION=22_5 WXVERSION=22_6
WIN95=1 WIN95=1
!if "$(WIN95)" == "0" !if "$(WIN95)" == "0"

View File

@@ -731,8 +731,17 @@ void wxExit()
} }
// Yield to other processes // Yield to other processes
static bool gs_inYield = FALSE;
bool wxYield() bool wxYield()
{ {
#ifdef __WXDEBUG__
if (gs_inYield)
wxFAIL_MSG( wxT("wxYield called recursively" ) );
#endif
gs_inYield = TRUE;
while (wxTheApp && wxTheApp->Pending()) while (wxTheApp && wxTheApp->Pending())
wxTheApp->Dispatch(); wxTheApp->Dispatch();
@@ -741,9 +750,20 @@ bool wxYield()
XtAppProcessEvent((XtAppContext) wxTheApp->GetAppContext(), XtIMAll); XtAppProcessEvent((XtAppContext) wxTheApp->GetAppContext(), XtIMAll);
#endif #endif
gs_inYield = FALSE;
return TRUE; return TRUE;
} }
// Yield to incoming messages; but fail silently if recursion is detected.
bool wxYieldIfNeeded()
{
if (gs_inYield)
return FALSE;
return wxYield();
}
// TODO use XmGetPixmap (?) to get the really standard icons! // TODO use XmGetPixmap (?) to get the really standard icons!
#include "wx/generic/info.xpm" #include "wx/generic/info.xpm"

View File

@@ -450,7 +450,7 @@ XmComboBoxClassRec xmComboBoxClassRec = {
/* accept_focus */ NULL, /* accept_focus */ NULL,
/* version */ XtVersion, /* version */ XtVersion,
/* callback_private */ NULL, /* callback_private */ NULL,
/* tm_table */ NULL, /* tm_table */ XtInheritTranslations, /* Changed from NULL: Bug #406153 */
/* query_geometry */ (XtGeometryHandler) QueryGeometry, /* query_geometry */ (XtGeometryHandler) QueryGeometry,
/* display_accelerator */ XtInheritDisplayAccelerator, /* display_accelerator */ XtInheritDisplayAccelerator,
/* extension */ NULL /* extension */ NULL

View File

@@ -1260,6 +1260,8 @@ void wxExit()
exit(0); exit(0);
} }
static bool gs_inYield = FALSE;
// Yield to incoming messages // Yield to incoming messages
bool wxYield() bool wxYield()
{ {
@@ -1267,6 +1269,13 @@ bool wxYield()
// normally result in message boxes popping up &c // normally result in message boxes popping up &c
wxLog::Suspend(); wxLog::Suspend();
#ifdef __WXDEBUG__
if (gs_inYield)
wxFAIL_MSG( wxT("wxYield called recursively" ) );
#endif
gs_inYield = TRUE;
// we don't want to process WM_QUIT from here - it should be processed in // we don't want to process WM_QUIT from here - it should be processed in
// the main event loop in order to stop it // the main event loop in order to stop it
MSG msg; MSG msg;
@@ -1288,9 +1297,20 @@ bool wxYield()
// let the logs be flashed again // let the logs be flashed again
wxLog::Resume(); wxLog::Resume();
gs_inYield = FALSE;
return TRUE; return TRUE;
} }
// Yield to incoming messages; but fail silently if recursion is detected.
bool wxYieldIfNeeded()
{
if (gs_inYield)
return FALSE;
return wxYield();
}
bool wxHandleFatalExceptions(bool doit) bool wxHandleFatalExceptions(bool doit)
{ {
#if wxUSE_ON_FATAL_EXCEPTION #if wxUSE_ON_FATAL_EXCEPTION

View File

@@ -116,8 +116,13 @@ int wxChoice::DoAppend(const wxString& item)
size.y = 11*EDIT_HEIGHT_FROM_CHAR_HEIGHT(cy); size.y = 11*EDIT_HEIGHT_FROM_CHAR_HEIGHT(cy);
// don't call our SetSize() as it ignores the height parameter // don't call our SetSize() as it ignores the height parameter and also
wxControl::DoSetSize(-1, -1, size.x, size.y, wxSIZE_USE_EXISTING); // short circuit wxComboBox::DoMoveWindow() as it does weird stuff with
// the height too
int x, y;
GetPosition(&x, &y);
AdjustForParentClientOrigin(x, y, 0);
wxWindow::DoMoveWindow(x, y, size.x, size.y);
} }
return n; return n;

View File

@@ -128,8 +128,8 @@ int wxColourDialog::ShowModal()
chooseColorStruct.lCustData = (LPARAM)this; chooseColorStruct.lCustData = (LPARAM)this;
chooseColorStruct.lpfnHook = wxColourDialogHookProc; chooseColorStruct.lpfnHook = wxColourDialogHookProc;
if (!m_colourData.GetChooseFull()) if (m_colourData.GetChooseFull())
chooseColorStruct.Flags |= CC_PREVENTFULLOPEN; chooseColorStruct.Flags |= CC_FULLOPEN;
// Do the modal dialog // Do the modal dialog
bool success = ::ChooseColor(&(chooseColorStruct)) != 0; bool success = ::ChooseColor(&(chooseColorStruct)) != 0;

View File

@@ -1334,7 +1334,9 @@ void wxDC::SetDeviceOrigin(wxCoord x, wxCoord y)
wxCoord wxDCBase::DeviceToLogicalX(wxCoord x) const wxCoord wxDCBase::DeviceToLogicalX(wxCoord x) const
{ {
return (wxCoord) (((x) - m_deviceOriginX)/(m_logicalScaleX*m_userScaleX*m_signX*m_scaleX) - m_logicalOriginX); double xRel = x - m_deviceOriginX;
xRel /= m_logicalScaleX*m_userScaleX*m_signX*m_scaleX;
return (wxCoord)(xRel + m_logicalOriginX);
} }
wxCoord wxDCBase::DeviceToLogicalXRel(wxCoord x) const wxCoord wxDCBase::DeviceToLogicalXRel(wxCoord x) const
@@ -1344,7 +1346,9 @@ wxCoord wxDCBase::DeviceToLogicalXRel(wxCoord x) const
wxCoord wxDCBase::DeviceToLogicalY(wxCoord y) const wxCoord wxDCBase::DeviceToLogicalY(wxCoord y) const
{ {
return (wxCoord) (((y) - m_deviceOriginY)/(m_logicalScaleY*m_userScaleY*m_signY*m_scaleY) - m_logicalOriginY); double yRel = y - m_deviceOriginY;
yRel /= m_logicalScaleY*m_userScaleY*m_signY*m_scaleY;
return (wxCoord)(yRel + m_logicalOriginY);
} }
wxCoord wxDCBase::DeviceToLogicalYRel(wxCoord y) const wxCoord wxDCBase::DeviceToLogicalYRel(wxCoord y) const

View File

@@ -167,7 +167,7 @@ int wxDibWriteFile(LPTSTR szFile, LPBITMAPINFOHEADER lpbi)
bmf.bfReserved1 = 0; bmf.bfReserved1 = 0;
bmf.bfReserved2 = 0; bmf.bfReserved2 = 0;
bmf.bfOffBits = sizeof(bmf) + (char FAR*)(wxDibPtr(lpbi)) - (char FAR*)lpbi; bmf.bfOffBits = sizeof(bmf) + (char FAR*)(wxDibPtr(lpbi)) - (char FAR*)lpbi;
#if 1 // defined( __WATCOMC__) || defined(__VISUALC__) || defined(__SC__) || defined(__SALFORDC__) || defined(__MWERKS__) || defined(wxUSE_NORLANDER_HEADERS) #if 1 // defined( __WATCOMC__) || defined(__VISUALC__) || defined(__SC__) || defined(__SALFORDC__) || defined(__MWERKS__) || wxUSE_NORLANDER_HEADERS
#define HWRITE_2ND_ARG_TYPE LPCSTR #define HWRITE_2ND_ARG_TYPE LPCSTR
#else // don't know who needs this... #else // don't know who needs this...
#define HWRITE_2ND_ARG_TYPE LPBYTE #define HWRITE_2ND_ARG_TYPE LPBYTE

View File

@@ -1,4 +1,4 @@
# This file was automatically generated by tmake at 20:17, 2000/03/31 # This file was automatically generated by tmake at 22:35, 2001/02/07
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE MSW.T! # DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE MSW.T!
ALL_SOURCES = \ ALL_SOURCES = \
generic/busyinfo.cpp \ generic/busyinfo.cpp \
@@ -125,6 +125,7 @@ ALL_SOURCES = \
common/zstream.cpp \ common/zstream.cpp \
msw/accel.cpp \ msw/accel.cpp \
msw/app.cpp \ msw/app.cpp \
msw/ole/automtn.cpp \
msw/bitmap.cpp \ msw/bitmap.cpp \
msw/bmpbuttn.cpp \ msw/bmpbuttn.cpp \
msw/brush.cpp \ msw/brush.cpp \
@@ -141,6 +142,7 @@ ALL_SOURCES = \
msw/curico.cpp \ msw/curico.cpp \
msw/cursor.cpp \ msw/cursor.cpp \
msw/data.cpp \ msw/data.cpp \
msw/ole/dataobj.cpp \
msw/dc.cpp \ msw/dc.cpp \
msw/dcclient.cpp \ msw/dcclient.cpp \
msw/dcmemory.cpp \ msw/dcmemory.cpp \
@@ -154,6 +156,8 @@ ALL_SOURCES = \
msw/dir.cpp \ msw/dir.cpp \
msw/dirdlg.cpp \ msw/dirdlg.cpp \
msw/dragimag.cpp \ msw/dragimag.cpp \
msw/ole/dropsrc.cpp \
msw/ole/droptgt.cpp \
msw/enhmeta.cpp \ msw/enhmeta.cpp \
msw/filedlg.cpp \ msw/filedlg.cpp \
msw/font.cpp \ msw/font.cpp \
@@ -167,6 +171,7 @@ ALL_SOURCES = \
msw/glcanvas.cpp \ msw/glcanvas.cpp \
msw/gsocket.c \ msw/gsocket.c \
msw/gsockmsw.c \ msw/gsockmsw.c \
msw/helpchm.cpp \
msw/helpwin.cpp \ msw/helpwin.cpp \
msw/icon.cpp \ msw/icon.cpp \
msw/imaglist.cpp \ msw/imaglist.cpp \
@@ -183,6 +188,7 @@ ALL_SOURCES = \
msw/msgdlg.cpp \ msw/msgdlg.cpp \
msw/nativdlg.cpp \ msw/nativdlg.cpp \
msw/notebook.cpp \ msw/notebook.cpp \
msw/ole/oleutils.cpp \
msw/ownerdrw.cpp \ msw/ownerdrw.cpp \
msw/palette.cpp \ msw/palette.cpp \
msw/pen.cpp \ msw/pen.cpp \
@@ -214,6 +220,7 @@ ALL_SOURCES = \
msw/treectrl.cpp \ msw/treectrl.cpp \
msw/utils.cpp \ msw/utils.cpp \
msw/utilsexc.cpp \ msw/utilsexc.cpp \
msw/ole/uuid.cpp \
msw/wave.cpp \ msw/wave.cpp \
msw/window.cpp \ msw/window.cpp \
msw/xpmhand.cpp \ msw/xpmhand.cpp \
@@ -321,6 +328,7 @@ ALL_HEADERS = \
hash.h \ hash.h \
help.h \ help.h \
helpbase.h \ helpbase.h \
helpchm.h \
helphtml.h \ helphtml.h \
helpwin.h \ helpwin.h \
helpxlp.h \ helpxlp.h \
@@ -485,6 +493,7 @@ ALL_HEADERS = \
msw/gdiimage.h \ msw/gdiimage.h \
msw/gdiobj.h \ msw/gdiobj.h \
msw/glcanvas.h \ msw/glcanvas.h \
msw/helpchm.h \
msw/helpwin.h \ msw/helpwin.h \
msw/icon.h \ msw/icon.h \
msw/imaglist.h \ msw/imaglist.h \
@@ -889,6 +898,7 @@ GUIOBJS = \
glcanvas.o \ glcanvas.o \
gsocket.o \ gsocket.o \
gsockmsw.o \ gsockmsw.o \
helpchm.o \
helpwin.o \ helpwin.o \
icon.o \ icon.o \
imaglist.o \ imaglist.o \
@@ -985,6 +995,7 @@ GUIDEPS = \
glcanvas.d \ glcanvas.d \
gsocket.d \ gsocket.d \
gsockmsw.d \ gsockmsw.d \
helpchm.d \
helpwin.d \ helpwin.d \
icon.d \ icon.d \
imaglist.d \ imaglist.d \
@@ -1084,6 +1095,22 @@ HTMLDEPS = \
m_tables.d \ m_tables.d \
winpars.d winpars.d
OLEOBJS = \
automtn.o \
dataobj.o \
dropsrc.o \
droptgt.o \
oleutils.o \
uuid.o
OLEDEPS = \
automtn.d \
dataobj.d \
dropsrc.d \
droptgt.d \
oleutils.d \
uuid.d
IODBCOBJS = \ IODBCOBJS = \
IODBCDEPS = \ IODBCDEPS = \

View File

@@ -610,6 +610,8 @@ clean:
-$(RM) ../xpm/*.bak -$(RM) ../xpm/*.bak
-$(RM) ../tiff/*.o -$(RM) ../tiff/*.o
-$(RM) ../tiff/*.bak -$(RM) ../tiff/*.bak
cleanall: clean
-$(RM) $(WXLIB) -$(RM) $(WXLIB)
-$(RM) $(ZLIBLIB) -$(RM) $(ZLIBLIB)
-$(RM) $(PNGLIB) -$(RM) $(PNGLIB)
@@ -625,8 +627,3 @@ ifneq "$(strip $(LD_SUPPORTS_SHARED))" "yes"
-$(RM) wx.exp -$(RM) wx.exp
endif endif
endif endif
cleanall: clean

View File

@@ -39,7 +39,7 @@
#include "wx/msw/private.h" // includes <windows.h> #include "wx/msw/private.h" // includes <windows.h>
#ifdef wxUSE_NORLANDER_HEADERS #if wxUSE_NORLANDER_HEADERS
#include <ole2.h> #include <ole2.h>
#endif #endif
#include <oleauto.h> #include <oleauto.h>
@@ -506,6 +506,10 @@ STDMETHODIMP wxIDataObject::SetData(FORMATETC *pformatetc,
size_t *p = (size_t *)pBuf; size_t *p = (size_t *)pBuf;
size = *p++; size = *p++;
pBuf = p; pBuf = p;
if (! format.IsStandard() ) {
// see GetData for coresponding increment
size -= sizeof(size_t);
}
} }
} }

View File

@@ -40,7 +40,7 @@
#include <windows.h> #include <windows.h>
#ifdef wxUSE_NORLANDER_HEADERS #if wxUSE_NORLANDER_HEADERS
#include <ole2.h> #include <ole2.h>
#endif #endif

View File

@@ -35,7 +35,7 @@
#include "wx/log.h" #include "wx/log.h"
#ifdef __WIN32__ #ifdef __WIN32__
#ifndef __GNUWIN32__ #if !defined(__GNUWIN32__) || wxUSE_NORLANDER_HEADERS
#include <shlobj.h> // for DROPFILES structure #include <shlobj.h> // for DROPFILES structure
#endif #endif
#else #else

View File

@@ -39,7 +39,7 @@
#endif #endif
#include "wx/msw/dib.h" #include "wx/msw/dib.h"
#include "wx/msw/tabctrl.h" #include "wx/tabctrl.h"
#include "wx/app.h" #include "wx/app.h"
#include "wx/msw/private.h" #include "wx/msw/private.h"
#include "wx/msw/imaglist.h" #include "wx/msw/imaglist.h"

View File

@@ -313,7 +313,7 @@ bool wxToolBar::DoDeleteTool(size_t pos, wxToolBarToolBase *tool)
if ( tool2->IsControl() ) if ( tool2->IsControl() )
{ {
pos += ((wxToolBarTool *)tool2)->GetSeparatorsCount(); pos += ((wxToolBarTool *)tool2)->GetSeparatorsCount() - 1;
} }
} }

View File

@@ -449,7 +449,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxTreeCtrl, wxControl)
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
// handy table for sending events // handy table for sending events
static const wxEventType g_events[2][2] = static wxEventType g_events[2][2] =
{ {
{ wxEVT_COMMAND_TREE_ITEM_COLLAPSED, wxEVT_COMMAND_TREE_ITEM_COLLAPSING }, { wxEVT_COMMAND_TREE_ITEM_COLLAPSED, wxEVT_COMMAND_TREE_ITEM_COLLAPSING },
{ wxEVT_COMMAND_TREE_ITEM_EXPANDED, wxEVT_COMMAND_TREE_ITEM_EXPANDING } { wxEVT_COMMAND_TREE_ITEM_EXPANDED, wxEVT_COMMAND_TREE_ITEM_EXPANDING }
@@ -501,8 +501,15 @@ void wxTreeCtrl::Init()
m_textCtrl = NULL; m_textCtrl = NULL;
m_hasAnyAttr = FALSE; m_hasAnyAttr = FALSE;
m_dragImage = NULL; m_dragImage = NULL;
m_htSelStart = 0; m_htSelStart = 0;
// Initialize static array of events, because with the new event system,
// they may not be initialized yet.
g_events[0][0] = wxEVT_COMMAND_TREE_ITEM_COLLAPSED;
g_events[0][1] = wxEVT_COMMAND_TREE_ITEM_COLLAPSING;
g_events[1][0] = wxEVT_COMMAND_TREE_ITEM_EXPANDED;
g_events[1][1] = wxEVT_COMMAND_TREE_ITEM_EXPANDING;
} }
bool wxTreeCtrl::Create(wxWindow *parent, bool wxTreeCtrl::Create(wxWindow *parent,

View File

@@ -1844,7 +1844,7 @@ long wxWindow::MSWWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam)
break; break;
case WM_MOVE: case WM_MOVE:
processed = HandleMove(LOWORD(lParam), HIWORD(lParam)); processed = HandleMove(GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam));
break; break;
case WM_SIZE: case WM_SIZE:
@@ -1885,19 +1885,19 @@ long wxWindow::MSWWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam)
break; break;
case WM_MOUSEMOVE: case WM_MOUSEMOVE:
{ processed = HandleMouseMove(GET_X_LPARAM(lParam),
short x = LOWORD(lParam); GET_Y_LPARAM(lParam),
short y = HIWORD(lParam); wParam);
break;
processed = HandleMouseMove(x, y, wParam);
}
break;
case WM_LBUTTONDOWN: case WM_LBUTTONDOWN:
// set focus to this window // set focus to this window
SetFocus(); if ( AcceptsFocus() )
{
SetFocus();
}
// fall through // fall through
case WM_LBUTTONUP: case WM_LBUTTONUP:
case WM_LBUTTONDBLCLK: case WM_LBUTTONDBLCLK:
@@ -1907,12 +1907,10 @@ long wxWindow::MSWWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam)
case WM_MBUTTONDOWN: case WM_MBUTTONDOWN:
case WM_MBUTTONUP: case WM_MBUTTONUP:
case WM_MBUTTONDBLCLK: case WM_MBUTTONDBLCLK:
{ processed = HandleMouseEvent(message,
short x = LOWORD(lParam); GET_X_LPARAM(lParam),
short y = HIWORD(lParam); GET_Y_LPARAM(lParam),
wParam);
processed = HandleMouseEvent(message, x, y, wParam);
}
break; break;
case MM_JOY1MOVE: case MM_JOY1MOVE:
@@ -1923,12 +1921,10 @@ long wxWindow::MSWWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam)
case MM_JOY2BUTTONDOWN: case MM_JOY2BUTTONDOWN:
case MM_JOY1BUTTONUP: case MM_JOY1BUTTONUP:
case MM_JOY2BUTTONUP: case MM_JOY2BUTTONUP:
{ processed = HandleJoystickEvent(message,
int x = LOWORD(lParam); GET_X_LPARAM(lParam),
int y = HIWORD(lParam); GET_Y_LPARAM(lParam),
wParam);
processed = HandleJoystickEvent(message, x, y, wParam);
}
break; break;
case WM_SYSCOMMAND: case WM_SYSCOMMAND:

View File

@@ -1428,18 +1428,31 @@ bool wxMimeTypesManagerImpl::ReadMailcap(const wxString& strFileName,
strTest, strTest,
strDesc, strDesc,
curField; // accumulator curField; // accumulator
for ( bool cont = TRUE; cont; pc++ ) { bool cont = TRUE;
while ( cont ) {
switch ( *pc ) { switch ( *pc ) {
case wxT('\\'): case wxT('\\'):
// interpret the next character literally (notice that // interpret the next character literally (notice that
// backslash can be used for line continuation) // backslash can be used for line continuation)
if ( *++pc == wxT('\0') ) { if ( *++pc == wxT('\0') ) {
// fetch the next line. // fetch the next line if there is one
if ( nLine == nLineCount - 1 ) {
// something is wrong, bail out
cont = FALSE;
// pc currently points to nowhere, but after the next wxLogDebug(wxT("Mailcap file %s, line %d: "
// pc++ in the for line it will point to the beginning "'\\' on the end of the last line "
// of the next line in the file "ignored."),
pc = file[++nLine].c_str() - 1; strFileName.c_str(),
nLine + 1);
}
else {
// pass to the beginning of the next line
pc = file[++nLine].c_str();
// skip pc++ at the end of the loop
continue;
}
} }
else { else {
// just a normal character // just a normal character
@@ -1461,6 +1474,12 @@ bool wxMimeTypesManagerImpl::ReadMailcap(const wxString& strFileName,
switch ( currentToken ) { switch ( currentToken ) {
case Field_Type: case Field_Type:
strType = curField; strType = curField;
if ( strType.empty() ) {
// I don't think that this is a valid mailcap
// entry, but try to interpret it somehow
strType = _T('*');
}
if ( strType.Find(wxT('/')) == wxNOT_FOUND ) { if ( strType.Find(wxT('/')) == wxNOT_FOUND ) {
// we interpret "type" as "type/*" // we interpret "type" as "type/*"
strType += wxT("/*"); strType += wxT("/*");
@@ -1476,7 +1495,7 @@ bool wxMimeTypesManagerImpl::ReadMailcap(const wxString& strFileName,
break; break;
case Field_Other: case Field_Other:
{ if ( !curField.empty() ) {
// "good" mailcap entry? // "good" mailcap entry?
bool ok = TRUE; bool ok = TRUE;
@@ -1551,6 +1570,7 @@ bool wxMimeTypesManagerImpl::ReadMailcap(const wxString& strFileName,
} }
} }
} }
//else: the field is empty, ignore silently
// it already has this value // it already has this value
//currentToken = Field_Other; //currentToken = Field_Other;
@@ -1567,6 +1587,9 @@ bool wxMimeTypesManagerImpl::ReadMailcap(const wxString& strFileName,
default: default:
curField += *pc; curField += *pc;
} }
// continue in the same line
pc++;
} }
// check that we really read something reasonable // check that we really read something reasonable

View File

@@ -53,7 +53,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo # ADD BSC32 /nologo
LINK32=link.exe 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 /subsystem:windows /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 /subsystem:windows /dll /machine:I386
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comctl32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib rpcrt4.lib winmm.lib opengl32.lib glu32.lib /nologo /subsystem:windows /dll /machine:I386 /out:"../lib/wx22_5.dll" # ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comctl32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib rpcrt4.lib winmm.lib opengl32.lib glu32.lib /nologo /subsystem:windows /dll /machine:I386 /out:"../lib/wx22_6.dll"
!ELSEIF "$(CFG)" == "wxvc_dll - Win32 Debug" !ELSEIF "$(CFG)" == "wxvc_dll - Win32 Debug"
@@ -79,7 +79,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo # ADD BSC32 /nologo
LINK32=link.exe 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 /subsystem:windows /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 /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comctl32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib rpcrt4.lib winmm.lib opengl32.lib glu32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /out:"../lib/wx22_5d.dll" /pdbtype:sept # ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comctl32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib rpcrt4.lib winmm.lib opengl32.lib glu32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /out:"../lib/wx22_6d.dll" /pdbtype:sept
!ENDIF !ENDIF

View File

@@ -7,12 +7,36 @@ CC="@CC@"
CXX="@CXX@" CXX="@CXX@"
LD="@SHARED_LD@" LD="@SHARED_LD@"
usage="\ usage()
Usage: wx-config [--prefix[=DIR]] [--exec-prefix[=DIR]] [--version] [--libs] [--cflags] [--cc] [--cxx] [--ld]" {
cat <<EOF
Usage: wx-config [--prefix[=DIR]] [--exec-prefix[=DIR]] [--version]
[--libs] [--cppflags] [--cflags] [--cxxflags]
[--cc] [--cxx] [--ld]
wx-config returns configuration information about the installed
version of wxWindows. It may be used to query its version and
installation directories and also retrieve the C and C++ compilers
and linker which were used for its building and the corresponding
flags.
EOF
exit $1
}
cppflags()
{
if test @includedir@ != /usr/include ; then
if test @includedir@ != /usr/include/c++ ; then
includes=-I@includedir@
fi
fi
includes="$includes -I@libdir@/wx/include -D__USE_WXCONFIG__"
echo $includes @WXDEBUG_DEFINE@ @TOOLKIT_DEF@ @WXCONFIG_INCLUDE@
}
if test $# -eq 0; then if test $# -eq 0; then
echo "${usage}" 1>&2 usage 1 1>&2
exit 1
fi fi
while test $# -gt 0; do while test $# -gt 0; do
@@ -41,14 +65,14 @@ while test $# -gt 0; do
--version) --version)
echo @WX_MAJOR_VERSION_NUMBER@.@WX_MINOR_VERSION_NUMBER@.@WX_RELEASE_NUMBER@ echo @WX_MAJOR_VERSION_NUMBER@.@WX_MINOR_VERSION_NUMBER@.@WX_RELEASE_NUMBER@
;; ;;
--cppflags)
cppflags
;;
--cflags) --cflags)
if test @includedir@ != /usr/include ; then echo `cppflags` @CODE_GEN_FLAGS@
if test @includedir@ != /usr/include/c++ ; then ;;
includes=-I@includedir@ --cxxflags)
fi echo `cppflags` @CODE_GEN_FLAGS@ @CODE_GEN_FLAGS_CXX@
fi
includes="$includes -I@libdir@/wx/include"
echo $includes -D__USE_WXCONFIG__ @CODE_GEN_FLAGS@ @WXDEBUG_DEFINE@ @TOOLKIT_DEF@ @WXCONFIG_INCLUDE@
;; ;;
--libs) --libs)
if test @libdir@ != /usr/lib ; then if test @libdir@ != /usr/lib ; then
@@ -66,8 +90,7 @@ while test $# -gt 0; do
echo $LD echo $LD
;; ;;
*) *)
echo "${usage}" 1>&2 usage 1 1>&2
exit 1
;; ;;
esac esac
shift shift

View File

@@ -1,6 +1,5 @@
# Note that this is NOT a relocatable package
%define pref /usr %define pref /usr
%define ver 2.2.5 %define ver 2.2.6
%define rel 0 %define rel 0
Summary: wxBase library - non-GUI support classes of wxWindows toolkit Summary: wxBase library - non-GUI support classes of wxWindows toolkit
@@ -10,9 +9,10 @@ Release: %{rel}
Copyright: wxWindows Licence Copyright: wxWindows Licence
Group: Development/Libraries Group: Development/Libraries
Source: wxBase-%{ver}.tar.gz Source: wxBase-%{ver}.tar.gz
URL: none URL: http://www.wxwindows.org/
Packager: Vadim Zeitlin <vadim@wxwindows.org> Packager: Vadim Zeitlin <vadim@wxwindows.org>
BuildRoot: /tmp/wxBase_rpm Prefix: %{pref}
BuildRoot: /var/tmp/%{name}-root
%description %description
wxBase is a collection of C++ classes providing basic data structures (strings, wxBase is a collection of C++ classes providing basic data structures (strings,
@@ -32,7 +32,7 @@ Requires: wxBase
Header files for wxBase. You need them to develop programs using wxBase. Header files for wxBase. You need them to develop programs using wxBase.
%prep %prep
%setup -n wxBase %setup -n wxBase-%{ver}
./configure --prefix=%{pref} --disable-gui --disable-std_iostreams ./configure --prefix=%{pref} --disable-gui --disable-std_iostreams
%build %build
@@ -44,7 +44,6 @@ fi
$MAKE $MAKE
%install %install
rm -rf $RPM_BUILD_ROOT
make prefix=$RPM_BUILD_ROOT%{pref} install make prefix=$RPM_BUILD_ROOT%{pref} install
%clean %clean
@@ -58,12 +57,12 @@ rm -rf $RPM_BUILD_ROOT
%files %files
%defattr (644, root, root, 755) %defattr (644, root, root, 755)
%doc COPYING.LIB INSTALL.txt LICENCE.txt README.txt SYMBOLS.txt TODO.txt %doc COPYING.LIB LICENCE.txt README.txt SYMBOLS.txt
%attr(755, -, -) %{pref}/lib/libwxbase* %attr(755, -, -) %{pref}/lib/libwx_base*
%dir %{pref}/lib/wx %dir %{pref}/lib/wx
%dir %{pref}/lib/wx/include %dir %{pref}/lib/wx/include
%dir %{pref}/lib/wx/include/wx %dir %{pref}/lib/wx/include/wx
%{pref}/lib/wx/include/wx/setup.h %{pref}/lib/wx/include/wx/base/setup.h
%files devel -f src/rpmfiles.lst %files devel -f src/rpmfiles.lst
%defattr (644, root, root, 755) %defattr (644, root, root, 755)

View File

@@ -1,6 +1,6 @@
# Note that this is NOT a relocatable package # Note that this is NOT a relocatable package
%define pref /usr %define pref /usr
%define ver 2.2.5 %define ver 2.2.6
%define rel 0 %define rel 0
Summary: The GTK+ 1.2 port of the wxWindows library Summary: The GTK+ 1.2 port of the wxWindows library
@@ -10,8 +10,9 @@ Release: %{rel}
Copyright: wxWindows Licence Copyright: wxWindows Licence
Group: X11/Libraries Group: X11/Libraries
Source: wxGTK-%{ver}.tar.gz Source: wxGTK-%{ver}.tar.gz
URL: http://wxwindows.org URL: http://www.wxwindows.org/
Packager: Robert Roebling <robert@roebling.de> BuildRoot: /var/tmp/%{name}-root
Packager: Vadim Zeitlin <vadim@wxwindows.org>
# all packages providing an implementation of wxWindows library (regardless of # all packages providing an implementation of wxWindows library (regardless of
# the toolkit used) should provide the (virtual) wxwin package, this makes it # the toolkit used) should provide the (virtual) wxwin package, this makes it
@@ -40,7 +41,9 @@ Requires: wxGTK
OpenGl add-on library for wxGTK, the GTK+ 1.2 port of the wxWindows library. OpenGl add-on library for wxGTK, the GTK+ 1.2 port of the wxWindows library.
%prep %prep
%setup -n wxGTK %setup -n wxGTK-%{ver}
export CPPFLAGS=-I/usr/X11R6/include
export LDFLAGS=-L/usr/X11R6/lib
./configure --prefix=%{pref} --enable-burnt_name --with-odbc --with-opengl ./configure --prefix=%{pref} --enable-burnt_name --with-odbc --with-opengl
%build %build
@@ -52,7 +55,7 @@ fi
$MAKE $MAKE
%install %install
make install make prefix=$RPM_BUILD_ROOT%{pref} install
%post %post
/sbin/ldconfig /sbin/ldconfig
@@ -61,6 +64,7 @@ make install
/sbin/ldconfig /sbin/ldconfig
%files %files
%defattr(-, root, root)
%defattr (644, root, root, 755) %defattr (644, root, root, 755)
%doc COPYING.LIB INSTALL.txt LICENCE.txt README.txt SYMBOLS.txt TODO.txt %doc COPYING.LIB INSTALL.txt LICENCE.txt README.txt SYMBOLS.txt TODO.txt
%dir %{pref}/share/wx %dir %{pref}/share/wx
@@ -69,6 +73,7 @@ make install
%attr(755, -, -) %{pref}/lib/libwx_gtk-2.2.* %attr(755, -, -) %{pref}/lib/libwx_gtk-2.2.*
%files devel %files devel
%defattr(-, root, root)
%defattr (644, root, root, 755) %defattr (644, root, root, 755)
%dir %{pref}/include/wx %dir %{pref}/include/wx
%{pref}/include/wx/* %{pref}/include/wx/*
@@ -78,4 +83,5 @@ make install
%attr(755, -, -) %{pref}/bin/wx-config %attr(755, -, -) %{pref}/bin/wx-config
%files gl %files gl
%defattr(-, root, root)
%attr(755, -, -) %{pref}/lib/libwx_gtk_gl* %attr(755, -, -) %{pref}/lib/libwx_gtk_gl*

View File

@@ -2,6 +2,12 @@ CHANGES.txt for wxPython
---------------------------------------------------------------------- ----------------------------------------------------------------------
2.2.6
-----
No changes happened in the Python wrappers for this release, only
changes and fixes in the wxWindows library.
2.2.5 2.2.5
----- -----

View File

@@ -50,11 +50,11 @@ multiple sources. See the http://wxPython.org/ for details on various
sources of help, but probably the best source is the wxPython-users sources of help, but probably the best source is the wxPython-users
mail list. You can view the archive or subscribe by going to mail list. You can view the archive or subscribe by going to
http://lists.sourceforge.net/mailman/listinfo/wxpython-users http://lists.wxwindows.org/mailman/listinfo/wxpython-users
Or you can send mail directly to the list using this address: Or you can send mail directly to the list using this address:
wxpython-users@lists.sourceforge.net wxpython-users@lists.wxwindows.org
Other Info Other Info

View File

@@ -29,7 +29,7 @@ sit back and enjoy. Be sure to take a peek at the source code for each
demo item so you can learn how to use the classes yourself.</p> demo item so you can learn how to use the classes yourself.</p>
<p><b>wxPython</b> is brought to you by <b>Robin Dunn</b> and<br> <p><b>wxPython</b> is brought to you by <b>Robin Dunn</b> and<br>
<b>Total Control Software</b>, Copyright (c) 1997-2000.</p> <b>Total Control Software</b>, Copyright (c) 1997-2001.</p>
<p> <p>
<font size="-1">Please see <i>license.txt</i> for licensing information.</font> <font size="-1">Please see <i>license.txt</i> for licensing information.</font>

View File

@@ -13,7 +13,7 @@ from my_distutils import run_swig, contrib_copy_tree
# flags and values that affect this script # flags and values that affect this script
#---------------------------------------------------------------------- #----------------------------------------------------------------------
VERSION = "2.2.5" VERSION = "2.2.6"
DESCRIPTION = "Cross platform GUI toolkit for Python" DESCRIPTION = "Cross platform GUI toolkit for Python"
AUTHOR = "Robin Dunn" AUTHOR = "Robin Dunn"
AUTHOR_EMAIL = "robin@alldunn.com" AUTHOR_EMAIL = "robin@alldunn.com"
@@ -28,11 +28,11 @@ on.
""" """
BUILD_GLCANVAS = 0 #1 # If true, build the contrib/glcanvas extension module BUILD_GLCANVAS = 1 # If true, build the contrib/glcanvas extension module
BUILD_OGL = 1 # If true, build the contrib/ogl extension module BUILD_OGL = 1 # If true, build the contrib/ogl extension module
BUILD_STC = 1 # If true, build the contrib/stc extension module BUILD_STC = 1 # If true, build the contrib/stc extension module
CORE_ONLY = 0 # if true, don't build any of the above CORE_ONLY = 0 # if true, don't build any of the above
GL_ONLY = 0 #1 #0 # Only used when making the -gl RPM. See the "b" script GL_ONLY = 0 # Only used when making the -gl RPM. See the "b" script
# for the ugly details # for the ugly details
USE_SWIG = 0 # Should we actually execute SWIG, or just use the USE_SWIG = 0 # Should we actually execute SWIG, or just use the
@@ -42,6 +42,10 @@ IN_CVS_TREE = 0 # Set to true if building in a full wxWindows CVS
# tree, otherwise will assume all needed files are # tree, otherwise will assume all needed files are
# available in the wxPython source distribution # available in the wxPython source distribution
WX_CONFIG = "wx-config" # Usually you shouldn't need to touch this,
# but you can set it to pass an alternate
# version of wx-config or alternate flags,
# eg. as required by the .deb in-tree build.
# Some MSW build settings # Some MSW build settings
@@ -56,7 +60,7 @@ HYBRID = 0 # If set and not debug or FINAL, then build a
# wxWindows must have been built with /MD, not /MDd # wxWindows must have been built with /MD, not /MDd
# (using FINAL=hybrid will do it.) # (using FINAL=hybrid will do it.)
WXDLLVER = '22_5' # Version part of DLL name WXDLLVER = '22_6' # Version part of DLL name
#---------------------------------------------------------------------- #----------------------------------------------------------------------
@@ -75,8 +79,7 @@ debug = '--debug' in sys.argv or '-g' in sys.argv
#---------------------------------------------------------------------- #----------------------------------------------------------------------
for flag in ['BUILD_GLCANVAS', 'BUILD_OGL', 'BUILD_STC', 'CORE_ONLY', for flag in ['BUILD_GLCANVAS', 'BUILD_OGL', 'BUILD_STC', 'CORE_ONLY',
'USE_SWIG', 'IN_CVS_TREE', 'FINAL', 'HYBRID', 'USE_SWIG', 'IN_CVS_TREE', 'FINAL', 'HYBRID', ]:
'WXDLLVER', ]:
for x in range(len(sys.argv)): for x in range(len(sys.argv)):
if string.find(sys.argv[x], flag) == 0: if string.find(sys.argv[x], flag) == 0:
pos = string.find(sys.argv[x], '=') + 1 pos = string.find(sys.argv[x], '=') + 1
@@ -84,11 +87,19 @@ for flag in ['BUILD_GLCANVAS', 'BUILD_OGL', 'BUILD_STC', 'CORE_ONLY',
vars()[flag] = eval(sys.argv[x][pos:]) vars()[flag] = eval(sys.argv[x][pos:])
sys.argv[x] = '' sys.argv[x] = ''
for option in ['WX_CONFIG', 'WXDLLVER', ]:
for x in range(len(sys.argv)):
if string.find(sys.argv[x], option) == 0:
pos = string.find(sys.argv[x], '=') + 1
if pos > 0:
vars()[option] = sys.argv[x][pos:]
sys.argv[x] = ''
sys.argv = filter(None, sys.argv) sys.argv = filter(None, sys.argv)
if CORE_ONLY: if CORE_ONLY:
BUILD_GLCANVAS = 0 #0 BUILD_GLCANVAS = 0
BUILD_OGL = 0 BUILD_OGL = 0
BUILD_STC = 0 BUILD_STC = 0
@@ -172,11 +183,11 @@ elif os.name == 'posix':
libdirs = [] libdirs = []
libs = [] libs = []
cflags = os.popen('wx-config --cflags', 'r').read()[:-1] + ' ' + \ cflags = os.popen(WX_CONFIG + ' --cflags', 'r').read()[:-1] + ' ' + \
os.popen('gtk-config --cflags', 'r').read()[:-1] os.popen('gtk-config --cflags', 'r').read()[:-1]
cflags = string.split(cflags) cflags = string.split(cflags)
lflags = os.popen('wx-config --libs', 'r').read()[:-1] lflags = os.popen(WX_CONFIG + ' --libs', 'r').read()[:-1]
lflags = string.split(lflags) lflags = string.split(lflags)

View File

@@ -1 +1 @@
ver = '2.2.5' ver = '2.2.6'