Compare commits
1 Commits
v2.3.4
...
wxPy_2_3_4
Author | SHA1 | Date | |
---|---|---|---|
|
ea5a206d1d |
79
Makefile.in
79
Makefile.in
@@ -391,11 +391,19 @@ afminstall: preinstall
|
||||
$(INSTALL) -d $(datadir)/wx/$(VER_MAJMIN)/gs_afm
|
||||
$(INSTALL_DATA) $(top_srcdir)/misc/afm/*.afm $(datadir)/wx/$(VER_MAJMIN)/afm
|
||||
$(INSTALL_DATA) $(top_srcdir)/misc/gs_afm/*.afm $(datadir)/wx/$(VER_MAJMIN)/gs_afm
|
||||
|
||||
|
||||
m4datainstall: preinstall
|
||||
$(INSTALL) -d $(datadir)/aclocal
|
||||
$(INSTALL_DATA) $(top_srcdir)/wxwin.m4 $(datadir)/aclocal
|
||||
|
||||
win32install: preinstall
|
||||
$(INSTALL) -d $(includedir)/wx/msw
|
||||
$(INSTALL_DATA) $(top_srcdir)/include/wx/msw/*.cur \
|
||||
$(top_srcdir)/include/wx/msw/*.ico \
|
||||
$(top_srcdir)/include/wx/msw/*.bmp \
|
||||
$(top_srcdir)/include/wx/msw/wx.rc \
|
||||
$(includedir)/wx/msw
|
||||
|
||||
# this is the real install target: copies the library, wx-config and the
|
||||
# headers to the installation directory
|
||||
preinstall: $(build_libdir)/@WX_TARGET_LIBRARY@ $(top_builddir)/wx@TOOLCHAIN_NAME@-config
|
||||
@@ -462,7 +470,7 @@ preinstall_gl: $(build_libdir)/@WX_TARGET_LIBRARY_GL@
|
||||
@if test ! -d $(libdir); then $(INSTALL) -d $(libdir); fi
|
||||
@INSTALL_LIBRARY@ $(build_libdir)/@WX_TARGET_LIBRARY_GL@ $(libdir)/@WX_TARGET_LIBRARY_GL@
|
||||
|
||||
install: @AFMINSTALL@ @WX_ALL_INSTALLED@ m4datainstall
|
||||
install: @AFMINSTALL@ @WX_ALL_INSTALLED@ m4datainstall @WIN32INSTALL@
|
||||
@echo " "
|
||||
@echo " The installation of wxWindows is finished. On certain"
|
||||
@echo " platforms (e.g. Linux) you'll now have to run ldconfig"
|
||||
@@ -493,7 +501,7 @@ uninstall:
|
||||
@$(RM) $(bindir)/wx@TOOLCHAIN_NAME@-config
|
||||
@$(RM) $(datadir)/wx/$(VER_MAJMIN)/afm/*
|
||||
@$(RM) $(datadir)/wx/$(VER_MAJMIN)/gs_afm/*
|
||||
# FIXME: wxBase doesnt install these next 3 dirs.
|
||||
# FIXME: wxBase doesnt install these next 3 dirs.
|
||||
@-rmdir $(datadir)/wx/$(VER_MAJMIN)/gs_afm
|
||||
@-rmdir $(datadir)/wx/$(VER_MAJMIN)/afm
|
||||
@-rmdir $(datadir)/wx/$(VER_MAJMIN)
|
||||
@@ -502,6 +510,7 @@ uninstall:
|
||||
@list='$(HEADERS)'; for p in $$list; do \
|
||||
$(RM) $(includedir)/wx/$$p; \
|
||||
done
|
||||
# TODO: uninstall the files installed by win32install
|
||||
@echo " Removing i18n files..."
|
||||
@-for p in $(WX_LINGUAS); do \
|
||||
$(RM) $(localedir)/$$p/LC_MESSAGES/wxstd.mo; \
|
||||
@@ -581,7 +590,8 @@ ALL_GUI_DIST: ALL_DIST
|
||||
if test -f $(DOCDIR)/$(TOOLKITDIR)/changes.txt ; then \
|
||||
cp $(DOCDIR)/$(TOOLKITDIR)/changes.txt $(DISTDIR)/CHANGES-$(TOOLKIT).txt ; fi
|
||||
cp $(DOCDIR)/$(TOOLKITDIR)/readme.txt $(DISTDIR)/README-$(TOOLKIT).txt
|
||||
cp $(DOCDIR)/$(TOOLKITDIR)/todo.txt $(DISTDIR)/TODO.txt
|
||||
if test -f $(DOCDIR)/$(TOOLKITDIR)/todo.txt ; then \
|
||||
cp $(DOCDIR)/$(TOOLKITDIR)/todo.txt $(DISTDIR)/TODO.txt ; fi
|
||||
mkdir $(DISTDIR)/include
|
||||
mkdir $(DISTDIR)/include/wx
|
||||
mkdir $(DISTDIR)/include/wx/$(TOOLKITDIR)
|
||||
@@ -790,6 +800,15 @@ UNIV_DIST: ALL_GUI_DIST
|
||||
cp $(SRCDIR)/univ/*.cpp $(DISTDIR)/src/univ
|
||||
cp $(SRCDIR)/univ/themes/*.cpp $(DISTDIR)/src/univ/themes
|
||||
|
||||
MGL_DIST: UNIV_DIST
|
||||
cp $(WXDIR)/wxMGL.spec $(DISTDIR)
|
||||
cp $(INCDIR)/wx/mgl/*.h $(DISTDIR)/include/wx/mgl
|
||||
cp $(SRCDIR)/mgl/files.lst $(DISTDIR)/src/mgl
|
||||
cp $(SRCDIR)/mgl/make* $(DISTDIR)/src/mgl
|
||||
cp $(SRCDIR)/mgl/*.cpp $(DISTDIR)/src/mgl
|
||||
mkdir $(DISTDIR)/contrib
|
||||
cp -R $(WXDIR)/contrib $(DISTDIR)
|
||||
|
||||
DEMOS_DIST: ALL_GUI_DIST
|
||||
mkdir $(DISTDIR)/demos
|
||||
cp $(DEMODIR)/Makefile.in $(DISTDIR)/demos
|
||||
@@ -845,6 +864,13 @@ SAMPLES_DIST: ALL_GUI_DIST
|
||||
cp $(SAMPDIR)/configure $(DISTDIR)/samples
|
||||
cp $(SAMPDIR)/configure.in $(DISTDIR)/samples
|
||||
|
||||
mkdir $(DISTDIR)/samples/artprov
|
||||
cp $(SAMPDIR)/artprov/Makefile.in $(DISTDIR)/samples/artprov
|
||||
cp $(SAMPDIR)/artprov/makefile.unx $(DISTDIR)/samples/artprov
|
||||
cp $(SAMPDIR)/artprov/*.cpp $(DISTDIR)/samples/artprov
|
||||
cp $(SAMPDIR)/artprov/*.h $(DISTDIR)/samples/artprov
|
||||
cp $(SAMPDIR)/artprov/*.xpm $(DISTDIR)/samples/artprov
|
||||
|
||||
mkdir $(DISTDIR)/samples/calendar
|
||||
cp $(SAMPDIR)/calendar/Makefile.in $(DISTDIR)/samples/calendar
|
||||
cp $(SAMPDIR)/calendar/makefile.unx $(DISTDIR)/samples/calendar
|
||||
@@ -1056,6 +1082,10 @@ SAMPLES_DIST: ALL_GUI_DIST
|
||||
cp $(SAMPDIR)/joytest/*.h $(DISTDIR)/samples/joytest
|
||||
cp $(SAMPDIR)/joytest/*.wav $(DISTDIR)/samples/joytest
|
||||
|
||||
mkdir $(DISTDIR)/samples/keyboard
|
||||
cp $(SAMPDIR)/keyboard/Makefile.in $(DISTDIR)/samples/keyboard
|
||||
cp $(SAMPDIR)/keyboard/*.cpp $(DISTDIR)/samples/keyboard
|
||||
|
||||
mkdir $(DISTDIR)/samples/layout
|
||||
cp $(SAMPDIR)/layout/Makefile.in $(DISTDIR)/samples/layout
|
||||
cp $(SAMPDIR)/layout/makefile.unx $(DISTDIR)/samples/layout
|
||||
@@ -1113,6 +1143,11 @@ SAMPLES_DIST: ALL_GUI_DIST
|
||||
cp $(SAMPDIR)/mobile/wxedit/Makefile.in $(DISTDIR)/samples/mobile/wxedit
|
||||
cp $(SAMPDIR)/mobile/wxedit/*.cpp $(DISTDIR)/samples/mobile/wxedit
|
||||
cp $(SAMPDIR)/mobile/wxedit/*.h $(DISTDIR)/samples/mobile/wxedit
|
||||
mkdir $(DISTDIR)/samples/mobile/styles
|
||||
cp $(SAMPDIR)/mobile/styles/Makefile.in $(DISTDIR)/samples/mobile/styles
|
||||
cp $(SAMPDIR)/mobile/styles/*.cpp $(DISTDIR)/samples/mobile/styles
|
||||
cp $(SAMPDIR)/mobile/styles/*.h $(DISTDIR)/samples/mobile/styles
|
||||
cp $(SAMPDIR)/mobile/styles/*.jpg $(DISTDIR)/samples/mobile/styles
|
||||
|
||||
mkdir $(DISTDIR)/samples/dialup
|
||||
cp $(SAMPDIR)/dialup/Makefile.in $(DISTDIR)/samples/dialup
|
||||
@@ -1308,6 +1343,18 @@ UTILS_DIST: ALL_GUI_DIST
|
||||
cp $(UTILSDIR)/tex2rtf/src/*.cpp $(DISTDIR)/utils/tex2rtf/src
|
||||
cp $(UTILSDIR)/tex2rtf/src/tex2rtf.* $(DISTDIR)/utils/tex2rtf/src
|
||||
|
||||
mkdir $(DISTDIR)/utils/emulator
|
||||
mkdir $(DISTDIR)/utils/emulator/src
|
||||
mkdir $(DISTDIR)/utils/emulator/docs
|
||||
cp $(UTILSDIR)/emulator/*.in $(DISTDIR)/utils/emulator
|
||||
cp $(UTILSDIR)/emulator/src/*.h $(DISTDIR)/utils/emulator/src
|
||||
cp $(UTILSDIR)/emulator/src/*.in $(DISTDIR)/utils/emulator/src
|
||||
cp $(UTILSDIR)/emulator/src/*.cpp $(DISTDIR)/utils/emulator/src
|
||||
cp $(UTILSDIR)/emulator/src/*.jpg $(DISTDIR)/utils/emulator/src
|
||||
cp $(UTILSDIR)/emulator/src/*.wxe $(DISTDIR)/utils/emulator/src
|
||||
cp $(UTILSDIR)/emulator/docs/*.txt $(DISTDIR)/utils/emulator/docs
|
||||
cp $(UTILSDIR)/emulator/docs/*.jpg $(DISTDIR)/utils/emulator/docs
|
||||
|
||||
mkdir $(DISTDIR)/utils/makegen
|
||||
mkdir $(DISTDIR)/utils/makegen/templates
|
||||
cp $(UTILSDIR)/makegen/Makefile.in $(DISTDIR)/utils/makegen
|
||||
@@ -1322,7 +1369,29 @@ UTILS_DIST: ALL_GUI_DIST
|
||||
cp $(UTILSDIR)/HelpGen/Makefile.in $(DISTDIR)/utils/HelpGen
|
||||
cp $(UTILSDIR)/HelpGen/src/*.* $(DISTDIR)/utils/HelpGen/src
|
||||
|
||||
cp -R $(UTILSDIR)/dialoged $(DISTDIR)/utils/dialoged
|
||||
mkdir $(DISTDIR)/utils/dialoged
|
||||
mkdir $(DISTDIR)/utils/dialoged/src
|
||||
mkdir $(DISTDIR)/utils/dialoged/src/bitmaps
|
||||
mkdir $(DISTDIR)/utils/dialoged/docs
|
||||
cp $(UTILSDIR)/dialoged/Makefile.in $(DISTDIR)/utils/dialoged
|
||||
cp $(UTILSDIR)/dialoged/src/*.h $(DISTDIR)/utils/dialoged/src
|
||||
cp $(UTILSDIR)/dialoged/src/*.cpp $(DISTDIR)/utils/dialoged/src
|
||||
cp $(UTILSDIR)/dialoged/src/Makefile.in $(DISTDIR)/utils/dialoged/src
|
||||
cp $(UTILSDIR)/dialoged/src/makefile.unx $(DISTDIR)/utils/dialoged/src
|
||||
cp $(UTILSDIR)/dialoged/src/bitmaps/*.xpm $(DISTDIR)/utils/dialoged/src/bitmaps
|
||||
cp $(UTILSDIR)/dialoged/docs/*.tex $(DISTDIR)/utils/dialoged/docs
|
||||
cp $(UTILSDIR)/dialoged/docs/*.ini $(DISTDIR)/utils/dialoged/docs
|
||||
cp $(UTILSDIR)/dialoged/docs/*.gif $(DISTDIR)/utils/dialoged/docs
|
||||
|
||||
mkdir $(DISTDIR)/utils/helpview
|
||||
mkdir $(DISTDIR)/utils/helpview/src
|
||||
mkdir $(DISTDIR)/utils/helpview/src/bitmaps
|
||||
cp $(UTILSDIR)/helpview/Makefile.in $(DISTDIR)/utils/helpview
|
||||
cp $(UTILSDIR)/helpview/src/*.h $(DISTDIR)/utils/helpview/src
|
||||
cp $(UTILSDIR)/helpview/src/*.cpp $(DISTDIR)/utils/helpview/src
|
||||
cp $(UTILSDIR)/helpview/src/Makefile.in $(DISTDIR)/utils/helpview/src
|
||||
cp $(UTILSDIR)/helpview/src/test.zip $(DISTDIR)/utils/helpview/src
|
||||
cp $(UTILSDIR)/helpview/src/bitmaps/*.xpm $(DISTDIR)/utils/helpview/src/bitmaps
|
||||
|
||||
MISC_DIST: ALL_GUI_DIST
|
||||
mkdir $(DISTDIR)/misc
|
||||
|
61
configure.in
61
configure.in
@@ -1130,27 +1130,6 @@ else
|
||||
AC_MSG_RESULT(base ($host_alias hosted) only)
|
||||
fi
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl When we are using gcc on OS/2, we want to be either using resources (PM)
|
||||
dnl or a more complete POSIX emulation for Motif/GTK+/X11
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl (OS/2-only piece)
|
||||
case "${host}" in
|
||||
*-pc-os2_emx | *-pc-os2-emx )
|
||||
dnl Explicitly link -lstdcpp, since we are using "gcc" not "g++"/"c++".
|
||||
LIBS="$LIBS -lstdcpp"
|
||||
if test "$wxUSE_MOTIF" = 1 -o "$wxUSE_GTK" = 1 -o "$wxUSE_X11" = 1; then
|
||||
dnl More complete Unix emulation for unix-like ports
|
||||
dnl by linking in POSIX/2's cExt (if available).
|
||||
AC_CHECK_LIB(cExt, drand48, LIBS="$LIBS -lcExt")
|
||||
else
|
||||
dnl Include resources for the "native" port (wxPM).
|
||||
RESPROGRAMOBJ="\${top_srcdir}/include/wx/os2/wx.res"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
dnl (end of OS/2-only piece)
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl When we are using Cygwin with Motif/GTK+, we want it to appear like
|
||||
dnl 'just' a POSIX platform, so the Win32 API must not be available
|
||||
@@ -1360,6 +1339,27 @@ AC_PROG_LEX
|
||||
dnl needed for making link to setup.h
|
||||
AC_PROG_LN_S
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl When we are using gcc on OS/2, we want to be either using resources (PM)
|
||||
dnl or a more complete POSIX emulation for Motif/GTK+/X11
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl (OS/2-only piece)
|
||||
case "${host}" in
|
||||
*-pc-os2_emx | *-pc-os2-emx )
|
||||
dnl Explicitly link -lstdcpp, since we are using "gcc" not "g++"/"c++".
|
||||
LIBS="$LIBS -lstdcpp"
|
||||
if test "$wxUSE_MOTIF" = 1 -o "$wxUSE_GTK" = 1 -o "$wxUSE_X11" = 1; then
|
||||
dnl More complete Unix emulation for unix-like ports
|
||||
dnl by linking in POSIX/2's cExt (if available).
|
||||
AC_CHECK_LIB(cExt, drand48, LIBS="$LIBS -lcExt")
|
||||
else
|
||||
dnl Include resources for the "native" port (wxPM).
|
||||
RESPROGRAMOBJ="\${top_srcdir}/include/wx/os2/wx.res"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
dnl (end of OS/2-only piece)
|
||||
|
||||
dnl ------------------------------------------------------------------------
|
||||
dnl Check for headers
|
||||
dnl ------------------------------------------------------------------------
|
||||
@@ -1835,15 +1835,24 @@ dnl ------------------------------------------------------------------------
|
||||
|
||||
TIFF_INCLUDE=
|
||||
TIFF_LINK=
|
||||
TIFF_PREREQ_LINKS=-lm
|
||||
if test "$wxUSE_LIBTIFF" != "no" ; then
|
||||
AC_DEFINE(wxUSE_LIBTIFF)
|
||||
|
||||
if test "$wxUSE_LIBTIFF" = "sys" -o "$wxUSE_LIBTIFF" = "yes" ; then
|
||||
dnl libtiff may depend on libjpeg and libz so use them in the test
|
||||
dnl below or it would fail
|
||||
if test "$wxUSE_LIBJPEG" = "sys"; then
|
||||
TIFF_PREREQ_LINKS="$TIFF_PREREQ_LINKS $JPEG_LINK"
|
||||
fi
|
||||
if test "$wxUSE_ZLIB" = "sys"; then
|
||||
TIFF_PREREQ_LINKS="$TIFF_PREREQ_LINKS $ZLIB_LINK"
|
||||
fi
|
||||
AC_CHECK_HEADER(tiffio.h,
|
||||
AC_CHECK_LIB(tiff, TIFFError,
|
||||
TIFF_LINK=" -ltiff",
|
||||
,
|
||||
-lm)
|
||||
$TIFF_PREREQ_LINKS)
|
||||
)
|
||||
|
||||
if test "x$TIFF_LINK" = "x" ; then
|
||||
@@ -1869,6 +1878,7 @@ dnl search for toolkit (widget sets)
|
||||
dnl ----------------------------------------------------------------
|
||||
|
||||
AFMINSTALL=
|
||||
WIN32INSTALL=
|
||||
|
||||
TOOLKIT=
|
||||
TOOLKIT_INCLUDE=
|
||||
@@ -1924,6 +1934,9 @@ if test "$USE_WIN32" = 1 ; then
|
||||
|
||||
RESFLAGS="--include-dir \$(top_srcdir)/include --include-dir \$(top_srcdir)/\$(program_dir) --define __WIN32__ --define __WIN95__ --define __GNUWIN32__"
|
||||
RESPROGRAMOBJ="\$(PROGRAM)_resources.o"
|
||||
|
||||
dnl install Win32-specific files in "make install"
|
||||
WIN32INSTALL=win32install
|
||||
fi
|
||||
|
||||
if test "$USE_DARWIN" = 1; then
|
||||
@@ -2075,7 +2088,7 @@ equivalent variable and GTK+ is version 1.2.3 or above.
|
||||
dnl FIXME_MGL - test for MGL variants for freebsd etc.
|
||||
case "${host}" in
|
||||
*-*-linux* )
|
||||
mgl_os=linux/gcc/glibc
|
||||
mgl_os="linux/gcc/glibc*"
|
||||
;;
|
||||
*-pc-msdosdjgpp )
|
||||
mgl_os=dos32/dj2
|
||||
@@ -5190,6 +5203,7 @@ AC_SUBST(WX_MINOR_VERSION_NUMBER)
|
||||
AC_SUBST(WX_RELEASE_NUMBER)
|
||||
AC_SUBST(WX_LIBRARY_NAME_STATIC)
|
||||
AC_SUBST(WX_LIBRARY_NAME_SHARED)
|
||||
AC_SUBST(WX_LIBRARY_BASENAME)
|
||||
AC_SUBST(WX_LIBRARY_IMPORTLIB)
|
||||
AC_SUBST(WX_TARGET_LIBRARY)
|
||||
AC_SUBST(WX_LIBRARY_LINK1)
|
||||
@@ -5225,6 +5239,7 @@ AC_SUBST(WXDEBUG_DEFINE)
|
||||
dnl toolkit options
|
||||
AC_SUBST(USE_GUI)
|
||||
AC_SUBST(AFMINSTALL)
|
||||
AC_SUBST(WIN32INSTALL)
|
||||
AC_SUBST(TOOLKIT)
|
||||
AC_SUBST(TOOLKIT_DIR)
|
||||
AC_SUBST(TOOLKIT_VPATH)
|
||||
|
@@ -21,7 +21,7 @@ class wxBoundingBox
|
||||
{
|
||||
public:
|
||||
wxBoundingBox();
|
||||
wxBoundingBox(wxBoundingBox&);
|
||||
wxBoundingBox(const wxBoundingBox&);
|
||||
wxBoundingBox(const wxPoint2DDouble&);
|
||||
wxBoundingBox(double xmin, double ymin, double xmax, double ymax);
|
||||
|
||||
|
@@ -142,19 +142,21 @@ typedef void (wxEvtHandler::*wxDynamicSashUnifyEventFunction)(wxDynamicSashSplit
|
||||
/*
|
||||
wxDynamicSashWindow. See above.
|
||||
*/
|
||||
extern const wxChar* GIZMODLLEXPORT wxDynamicSashWindowNameStr;
|
||||
|
||||
class GIZMODLLEXPORT wxDynamicSashWindow : public wxWindow {
|
||||
public:
|
||||
wxDynamicSashWindow();
|
||||
wxDynamicSashWindow(wxWindow *parent, wxWindowID id,
|
||||
const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
|
||||
long style = wxCLIP_CHILDREN | wxDS_MANAGE_SCROLLBARS | wxDS_DRAG_CORNER,
|
||||
const wxString& name = "dynamicSashWindow");
|
||||
const wxString& name = wxDynamicSashWindowNameStr);
|
||||
virtual ~wxDynamicSashWindow();
|
||||
|
||||
virtual bool Create(wxWindow *parent, wxWindowID id,
|
||||
const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
|
||||
long style = wxCLIP_CHILDREN | wxDS_MANAGE_SCROLLBARS | wxDS_DRAG_CORNER,
|
||||
const wxString& name = "dynamicSashWindow");
|
||||
const wxString& name = wxDynamicSashWindowNameStr);
|
||||
virtual wxScrollBar *GetHScrollBar(const wxWindow *child) const;
|
||||
virtual wxScrollBar *GetVScrollBar(const wxWindow *child) const;
|
||||
|
||||
|
@@ -353,7 +353,7 @@ class wxShape: public wxShapeEvtHandler
|
||||
virtual int GetRegionId(const wxString& name);
|
||||
|
||||
// Construct names for regions, unique even for children of a composite.
|
||||
virtual void NameRegions(const wxString& parentName = "");
|
||||
virtual void NameRegions(const wxString& parentName = wxEmptyString);
|
||||
|
||||
// Get list of regions
|
||||
inline wxList& GetRegions() const { return (wxList&) m_regions; }
|
||||
|
@@ -22,7 +22,7 @@ class wxShapeTextLine: public wxObject
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(wxShapeTextLine)
|
||||
public:
|
||||
wxShapeTextLine(double the_x = 0.0, double the_y = 0.0, const wxString& the_line = "");
|
||||
wxShapeTextLine(double the_x = 0.0, double the_y = 0.0, const wxString& the_line = wxEmptyString);
|
||||
~wxShapeTextLine();
|
||||
|
||||
inline double GetX() const { return m_x; }
|
||||
|
@@ -25,7 +25,8 @@ class wxOGLConstraintType: public wxObject
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(wxOGLConstraintType)
|
||||
public:
|
||||
wxOGLConstraintType(int type = 0, const wxString& name = "", const wxString& phrase = "");
|
||||
wxOGLConstraintType(int type = 0, const wxString& name = wxEmptyString,
|
||||
const wxString& phrase = wxEmptyString);
|
||||
~wxOGLConstraintType();
|
||||
|
||||
public:
|
||||
@@ -60,8 +61,10 @@ class wxOGLConstraint: public wxObject
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(wxOGLConstraint)
|
||||
public:
|
||||
wxOGLConstraint() { m_xSpacing = 0.0; m_ySpacing = 0.0; m_constraintType = 0; m_constraintName = ""; m_constraintId = 0;
|
||||
m_constrainingObject = NULL; }
|
||||
wxOGLConstraint() {
|
||||
m_xSpacing = 0.0; m_ySpacing = 0.0; m_constraintType = 0;
|
||||
m_constraintName = wxEmptyString; m_constraintId = 0;
|
||||
m_constrainingObject = NULL; }
|
||||
wxOGLConstraint(int type, wxShape *constraining, wxList& constrained);
|
||||
~wxOGLConstraint();
|
||||
|
||||
|
@@ -48,7 +48,7 @@ class wxPseudoMetaFile: public wxObject
|
||||
// Rotate about the given axis by theta radians from the x axis.
|
||||
void Rotate(double x, double y, double theta);
|
||||
|
||||
bool LoadFromMetaFile(char *filename, double *width, double *height);
|
||||
bool LoadFromMetaFile(const wxString& filename, double *width, double *height);
|
||||
|
||||
void GetBounds(double *minX, double *minY, double *maxX, double *maxY);
|
||||
|
||||
@@ -157,7 +157,7 @@ class wxDrawnShape: public wxRectangleShape
|
||||
inline double GetRotation() const { return m_rotation; }
|
||||
|
||||
void SetSize(double w, double h, bool recursive = TRUE);
|
||||
bool LoadFromMetaFile(char *filename);
|
||||
bool LoadFromMetaFile(const wxString& filename);
|
||||
|
||||
inline void SetSaveToFile(bool save) { m_saveToFile = save; }
|
||||
inline wxPseudoMetaFile& GetMetaFile(int which = 0) const { return (wxPseudoMetaFile&) m_metafiles[which]; }
|
||||
|
@@ -51,7 +51,7 @@ class wxArrowHead: public wxObject
|
||||
DECLARE_DYNAMIC_CLASS(wxArrowHead)
|
||||
|
||||
public:
|
||||
wxArrowHead(WXTYPE type = 0, int end = 0, double size = 0.0, double dist = 0.0, const wxString& name = "", wxPseudoMetaFile *mf = NULL,
|
||||
wxArrowHead(WXTYPE type = 0, int end = 0, double size = 0.0, double dist = 0.0, const wxString& name = wxEmptyString, wxPseudoMetaFile *mf = NULL,
|
||||
long arrowId = -1);
|
||||
~wxArrowHead();
|
||||
wxArrowHead(wxArrowHead& toCopy);
|
||||
@@ -210,8 +210,9 @@ class wxLineShape: public wxShape
|
||||
|
||||
// Add an arrowhead.
|
||||
wxArrowHead *AddArrow(WXTYPE type, int end = ARROW_POSITION_END,
|
||||
double arrowSize = 10.0, double xOffset = 0.0, const wxString& name = "",
|
||||
wxPseudoMetaFile *mf = NULL, long arrowId = -1);
|
||||
double arrowSize = 10.0, double xOffset = 0.0,
|
||||
const wxString& name = wxEmptyString,
|
||||
wxPseudoMetaFile *mf = NULL, long arrowId = -1);
|
||||
|
||||
// Add an arrowhead in the position indicated by the reference
|
||||
// list of arrowheads, which contains all legal arrowheads for this
|
||||
|
@@ -195,7 +195,7 @@ class wxXMetaFile: public wxObject
|
||||
wxList metaRecords;
|
||||
wxList gdiObjects; // List of wxMetaRecord objects created with Create...,
|
||||
// referenced by position in list by SelectObject
|
||||
wxXMetaFile(char *file = NULL);
|
||||
wxXMetaFile(const wxChar* file = NULL);
|
||||
~wxXMetaFile(void);
|
||||
|
||||
// After this is called, the metafile cannot be used for anything
|
||||
@@ -204,7 +204,7 @@ class wxXMetaFile: public wxObject
|
||||
|
||||
bool Play(wxDC *dc);
|
||||
inline bool Ok(void) const { return ok; }
|
||||
bool ReadFile(char *file);
|
||||
bool ReadFile(const wxChar *file);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@@ -26,7 +26,7 @@ wxBoundingBox::wxBoundingBox()
|
||||
}
|
||||
|
||||
|
||||
wxBoundingBox::wxBoundingBox(wxBoundingBox &other)
|
||||
wxBoundingBox::wxBoundingBox(const wxBoundingBox &other)
|
||||
{
|
||||
m_minx = other.m_minx;
|
||||
m_miny = other.m_miny;
|
||||
|
@@ -29,6 +29,10 @@
|
||||
|
||||
#include "wx/gizmos/dynamicsash.h"
|
||||
|
||||
|
||||
const wxChar* wxDynamicSashWindowNameStr = wxT("dynamicSashWindow");
|
||||
|
||||
|
||||
/*
|
||||
wxDynamicSashWindow works by internally storing a tree of Implementation
|
||||
objects (wxDynamicSsahWindowImpl) and Leaf objects
|
||||
|
@@ -286,7 +286,7 @@ wxShape::wxShape(wxShapeCanvas *can)
|
||||
m_brush = wxWHITE_BRUSH;
|
||||
m_font = g_oglNormalFont;
|
||||
m_textColour = wxBLACK;
|
||||
m_textColourName = "BLACK";
|
||||
m_textColourName = wxT("BLACK");
|
||||
m_visible = FALSE;
|
||||
m_selected = FALSE;
|
||||
m_attachmentMode = ATTACHMENT_MODE_NONE;
|
||||
@@ -305,7 +305,7 @@ wxShape::wxShape(wxShapeCanvas *can)
|
||||
m_shadowBrush = wxBLACK_BRUSH;
|
||||
m_textMarginX = 5;
|
||||
m_textMarginY = 5;
|
||||
m_regionName = "0";
|
||||
m_regionName = wxT("0");
|
||||
m_centreResize = TRUE;
|
||||
m_maintainAspectRatio = FALSE;
|
||||
m_highlighted = FALSE;
|
||||
@@ -319,10 +319,10 @@ wxShape::wxShape(wxShapeCanvas *can)
|
||||
// the region eventually (the duplication is for compatibility)
|
||||
wxShapeRegion *region = new wxShapeRegion;
|
||||
m_regions.Append(region);
|
||||
region->SetName("0");
|
||||
region->SetName(wxT("0"));
|
||||
region->SetFont(g_oglNormalFont);
|
||||
region->SetFormatMode(FORMAT_CENTRE_HORIZ | FORMAT_CENTRE_VERT);
|
||||
region->SetColour("BLACK");
|
||||
region->SetColour(wxT("BLACK"));
|
||||
}
|
||||
|
||||
wxShape::~wxShape()
|
||||
@@ -616,7 +616,7 @@ void wxShape::FormatText(wxDC& dc, const wxString& s, int i)
|
||||
node = stringList->First();
|
||||
while (node)
|
||||
{
|
||||
char *s = (char *)node->Data();
|
||||
wxChar *s = (wxChar *)node->Data();
|
||||
wxShapeTextLine *line = new wxShapeTextLine(0.0, 0.0, s);
|
||||
region->GetFormattedText().Append((wxObject *)line);
|
||||
node = node->Next();
|
||||
@@ -776,7 +776,7 @@ wxString wxShape::GetTextColour(int regionId) const
|
||||
{
|
||||
wxNode *node = m_regions.Nth(regionId);
|
||||
if (!node)
|
||||
return wxString("");
|
||||
return wxEmptyString;
|
||||
wxShapeRegion *region = (wxShapeRegion *)node->Data();
|
||||
return region->GetColour();
|
||||
}
|
||||
@@ -794,7 +794,7 @@ wxString wxShape::GetRegionName(int regionId)
|
||||
{
|
||||
wxNode *node = m_regions.Nth(regionId);
|
||||
if (!node)
|
||||
return wxString("");
|
||||
return wxEmptyString;
|
||||
wxShapeRegion *region = (wxShapeRegion *)node->Data();
|
||||
return region->GetName();
|
||||
}
|
||||
@@ -822,7 +822,7 @@ void wxShape::NameRegions(const wxString& parentName)
|
||||
for (int i = 0; i < n; i++)
|
||||
{
|
||||
if (parentName.Length() > 0)
|
||||
buff << parentName << "." << i;
|
||||
buff << parentName << wxT(".") << i;
|
||||
else
|
||||
buff << i;
|
||||
SetRegionName(buff, i);
|
||||
@@ -834,7 +834,7 @@ void wxShape::NameRegions(const wxString& parentName)
|
||||
buff.Empty();
|
||||
wxShape *child = (wxShape *)node->Data();
|
||||
if (parentName.Length() > 0)
|
||||
buff << parentName << "." << j;
|
||||
buff << parentName << wxT(".") << j;
|
||||
else
|
||||
buff << j;
|
||||
child->NameRegions(buff);
|
||||
|
@@ -1761,7 +1761,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxShapeRegion, wxObject)
|
||||
|
||||
wxShapeRegion::wxShapeRegion()
|
||||
{
|
||||
m_regionText = "";
|
||||
m_regionText = wxEmptyString;
|
||||
m_font = g_oglNormalFont;
|
||||
m_minHeight = 5.0;
|
||||
m_minWidth = 5.0;
|
||||
@@ -1773,9 +1773,9 @@ wxShapeRegion::wxShapeRegion()
|
||||
m_regionProportionX = -1.0;
|
||||
m_regionProportionY = -1.0;
|
||||
m_formatMode = FORMAT_CENTRE_HORIZ | FORMAT_CENTRE_VERT;
|
||||
m_regionName = "";
|
||||
m_textColour = "BLACK";
|
||||
m_penColour = "BLACK";
|
||||
m_regionName = wxEmptyString;
|
||||
m_textColour = wxT("BLACK");
|
||||
m_penColour = wxT("BLACK");
|
||||
m_penStyle = wxSOLID;
|
||||
m_actualColourObject = NULL;
|
||||
m_actualPenObject = NULL;
|
||||
@@ -1897,7 +1897,7 @@ wxPen *wxShapeRegion::GetActualPen()
|
||||
return m_actualPenObject;
|
||||
|
||||
if (!m_penColour) return NULL;
|
||||
if (m_penColour == "Invisible")
|
||||
if (m_penColour == wxT("Invisible"))
|
||||
return NULL;
|
||||
m_actualPenObject = wxThePenList->FindOrCreatePen(m_penColour, 1, m_penStyle);
|
||||
return m_actualPenObject;
|
||||
|
@@ -41,7 +41,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxBitmapShape, wxShape)
|
||||
|
||||
wxBitmapShape::wxBitmapShape():wxRectangleShape(100.0, 50.0)
|
||||
{
|
||||
m_filename = "";
|
||||
m_filename = wxEmptyString;
|
||||
}
|
||||
|
||||
wxBitmapShape::~wxBitmapShape()
|
||||
|
@@ -827,10 +827,10 @@ wxDivisionShape::wxDivisionShape()
|
||||
m_handleSide = DIVISION_SIDE_NONE;
|
||||
m_leftSidePen = wxBLACK_PEN;
|
||||
m_topSidePen = wxBLACK_PEN;
|
||||
m_leftSideColour = "BLACK";
|
||||
m_topSideColour = "BLACK";
|
||||
m_leftSideStyle = "Solid";
|
||||
m_topSideStyle = "Solid";
|
||||
m_leftSideColour = wxT("BLACK");
|
||||
m_topSideColour = wxT("BLACK");
|
||||
m_leftSideStyle = wxT("Solid");
|
||||
m_topSideStyle = wxT("Solid");
|
||||
ClearRegions();
|
||||
}
|
||||
|
||||
@@ -1574,11 +1574,11 @@ bool wxDivisionShape::ResizeAdjoining(int side, double newPos, bool test)
|
||||
class OGLPopupDivisionMenu : public wxMenu {
|
||||
public:
|
||||
OGLPopupDivisionMenu() : wxMenu() {
|
||||
Append(DIVISION_MENU_SPLIT_HORIZONTALLY, "Split horizontally");
|
||||
Append(DIVISION_MENU_SPLIT_VERTICALLY, "Split vertically");
|
||||
Append(DIVISION_MENU_SPLIT_HORIZONTALLY, wxT("Split horizontally"));
|
||||
Append(DIVISION_MENU_SPLIT_VERTICALLY, wxT("Split vertically"));
|
||||
AppendSeparator();
|
||||
Append(DIVISION_MENU_EDIT_LEFT_EDGE, "Edit left edge");
|
||||
Append(DIVISION_MENU_EDIT_TOP_EDGE, "Edit top edge");
|
||||
Append(DIVISION_MENU_EDIT_LEFT_EDGE, wxT("Edit left edge"));
|
||||
Append(DIVISION_MENU_EDIT_TOP_EDGE, wxT("Edit top edge"));
|
||||
}
|
||||
|
||||
void OnMenu(wxCommandEvent& event);
|
||||
@@ -1626,7 +1626,7 @@ void OGLPopupDivisionMenu::OnMenu(wxCommandEvent& event)
|
||||
|
||||
void wxDivisionShape::EditEdge(int side)
|
||||
{
|
||||
wxMessageBox("EditEdge() not implemented", "OGL", wxOK);
|
||||
wxMessageBox(wxT("EditEdge() not implemented"), wxT("OGL"), wxOK);
|
||||
|
||||
#if 0
|
||||
wxBeginBusyCursor();
|
||||
|
@@ -58,51 +58,51 @@ void OGLInitializeConstraintTypes()
|
||||
wxOGLConstraintTypes = new wxList(wxKEY_INTEGER);
|
||||
|
||||
wxOGLConstraintTypes->Append(gyCONSTRAINT_CENTRED_VERTICALLY,
|
||||
new wxOGLConstraintType(gyCONSTRAINT_CENTRED_VERTICALLY, "Centre vertically", "centred vertically w.r.t."));
|
||||
new wxOGLConstraintType(gyCONSTRAINT_CENTRED_VERTICALLY, wxT("Centre vertically"), wxT("centred vertically w.r.t.")));
|
||||
|
||||
wxOGLConstraintTypes->Append(gyCONSTRAINT_CENTRED_HORIZONTALLY,
|
||||
new wxOGLConstraintType(gyCONSTRAINT_CENTRED_HORIZONTALLY, "Centre horizontally", "centred horizontally w.r.t."));
|
||||
new wxOGLConstraintType(gyCONSTRAINT_CENTRED_HORIZONTALLY, wxT("Centre horizontally"), wxT("centred horizontally w.r.t.")));
|
||||
|
||||
wxOGLConstraintTypes->Append(gyCONSTRAINT_CENTRED_BOTH,
|
||||
new wxOGLConstraintType(gyCONSTRAINT_CENTRED_BOTH, "Centre", "centred w.r.t."));
|
||||
new wxOGLConstraintType(gyCONSTRAINT_CENTRED_BOTH, wxT("Centre"), wxT("centred w.r.t.")));
|
||||
|
||||
wxOGLConstraintTypes->Append(gyCONSTRAINT_LEFT_OF,
|
||||
new wxOGLConstraintType(gyCONSTRAINT_LEFT_OF, "Left of", "left of"));
|
||||
new wxOGLConstraintType(gyCONSTRAINT_LEFT_OF, wxT("Left of"), wxT("left of")));
|
||||
|
||||
wxOGLConstraintTypes->Append(gyCONSTRAINT_RIGHT_OF,
|
||||
new wxOGLConstraintType(gyCONSTRAINT_RIGHT_OF, "Right of", "right of"));
|
||||
new wxOGLConstraintType(gyCONSTRAINT_RIGHT_OF, wxT("Right of"), wxT("right of")));
|
||||
|
||||
wxOGLConstraintTypes->Append(gyCONSTRAINT_ABOVE,
|
||||
new wxOGLConstraintType(gyCONSTRAINT_ABOVE, "Above", "above"));
|
||||
new wxOGLConstraintType(gyCONSTRAINT_ABOVE, wxT("Above"), wxT("above")));
|
||||
|
||||
wxOGLConstraintTypes->Append(gyCONSTRAINT_BELOW,
|
||||
new wxOGLConstraintType(gyCONSTRAINT_BELOW, "Below", "below"));
|
||||
new wxOGLConstraintType(gyCONSTRAINT_BELOW, wxT("Below"), wxT("below")));
|
||||
|
||||
// Alignment
|
||||
wxOGLConstraintTypes->Append(gyCONSTRAINT_ALIGNED_TOP,
|
||||
new wxOGLConstraintType(gyCONSTRAINT_ALIGNED_TOP, "Top-aligned", "aligned to the top of"));
|
||||
new wxOGLConstraintType(gyCONSTRAINT_ALIGNED_TOP, wxT("Top-aligned"), wxT("aligned to the top of")));
|
||||
|
||||
wxOGLConstraintTypes->Append(gyCONSTRAINT_ALIGNED_BOTTOM,
|
||||
new wxOGLConstraintType(gyCONSTRAINT_ALIGNED_BOTTOM, "Bottom-aligned", "aligned to the bottom of"));
|
||||
new wxOGLConstraintType(gyCONSTRAINT_ALIGNED_BOTTOM, wxT("Bottom-aligned"), wxT("aligned to the bottom of")));
|
||||
|
||||
wxOGLConstraintTypes->Append(gyCONSTRAINT_ALIGNED_LEFT,
|
||||
new wxOGLConstraintType(gyCONSTRAINT_ALIGNED_LEFT, "Left-aligned", "aligned to the left of"));
|
||||
new wxOGLConstraintType(gyCONSTRAINT_ALIGNED_LEFT, wxT("Left-aligned"), wxT("aligned to the left of")));
|
||||
|
||||
wxOGLConstraintTypes->Append(gyCONSTRAINT_ALIGNED_RIGHT,
|
||||
new wxOGLConstraintType(gyCONSTRAINT_ALIGNED_RIGHT, "Right-aligned", "aligned to the right of"));
|
||||
new wxOGLConstraintType(gyCONSTRAINT_ALIGNED_RIGHT, wxT("Right-aligned"), wxT("aligned to the right of")));
|
||||
|
||||
// Mid-alignment
|
||||
wxOGLConstraintTypes->Append(gyCONSTRAINT_MIDALIGNED_TOP,
|
||||
new wxOGLConstraintType(gyCONSTRAINT_MIDALIGNED_TOP, "Top-midaligned", "centred on the top of"));
|
||||
new wxOGLConstraintType(gyCONSTRAINT_MIDALIGNED_TOP, wxT("Top-midaligned"), wxT("centred on the top of")));
|
||||
|
||||
wxOGLConstraintTypes->Append(gyCONSTRAINT_MIDALIGNED_BOTTOM,
|
||||
new wxOGLConstraintType(gyCONSTRAINT_MIDALIGNED_BOTTOM, "Bottom-midaligned", "centred on the bottom of"));
|
||||
new wxOGLConstraintType(gyCONSTRAINT_MIDALIGNED_BOTTOM, wxT("Bottom-midaligned"), wxT("centred on the bottom of")));
|
||||
|
||||
wxOGLConstraintTypes->Append(gyCONSTRAINT_MIDALIGNED_LEFT,
|
||||
new wxOGLConstraintType(gyCONSTRAINT_MIDALIGNED_LEFT, "Left-midaligned", "centred on the left of"));
|
||||
new wxOGLConstraintType(gyCONSTRAINT_MIDALIGNED_LEFT, wxT("Left-midaligned"), wxT("centred on the left of")));
|
||||
|
||||
wxOGLConstraintTypes->Append(gyCONSTRAINT_MIDALIGNED_RIGHT,
|
||||
new wxOGLConstraintType(gyCONSTRAINT_MIDALIGNED_RIGHT, "Right-midaligned", "centred on the right of"));
|
||||
new wxOGLConstraintType(gyCONSTRAINT_MIDALIGNED_RIGHT, wxT("Right-midaligned"), wxT("centred on the right of")));
|
||||
}
|
||||
|
||||
void OGLCleanUpConstraintTypes()
|
||||
@@ -137,7 +137,7 @@ wxOGLConstraint::wxOGLConstraint(int type, wxShape *constraining, wxList& constr
|
||||
m_constrainingObject = constraining;
|
||||
|
||||
m_constraintId = 0;
|
||||
m_constraintName = "noname";
|
||||
m_constraintName = wxT("noname");
|
||||
|
||||
wxNode *node = constrained.First();
|
||||
while (node)
|
||||
|
@@ -434,7 +434,7 @@ void wxDividedShape::ReadAttributes(wxExpr *clause)
|
||||
|
||||
void wxDividedShape::EditRegions()
|
||||
{
|
||||
wxMessageBox("EditRegions() is unimplemented.", "OGL", wxOK);
|
||||
wxMessageBox(wxT("EditRegions() is unimplemented."), wxT("OGL"), wxOK);
|
||||
|
||||
// TODO
|
||||
#if 0
|
||||
|
@@ -292,7 +292,7 @@ void wxDrawnShape::Copy(wxShape& copy)
|
||||
drawnCopy.m_currentAngle = m_currentAngle;
|
||||
}
|
||||
|
||||
bool wxDrawnShape::LoadFromMetaFile(char *filename)
|
||||
bool wxDrawnShape::LoadFromMetaFile(const wxString& filename)
|
||||
{
|
||||
return m_metafiles[0].LoadFromMetaFile(filename, &m_width, &m_height);
|
||||
}
|
||||
@@ -1825,7 +1825,7 @@ void wxPseudoMetaFile::Copy(wxPseudoMetaFile& copy)
|
||||
*
|
||||
*/
|
||||
|
||||
bool wxPseudoMetaFile::LoadFromMetaFile(char *filename, double *rwidth, double *rheight)
|
||||
bool wxPseudoMetaFile::LoadFromMetaFile(const wxString& filename, double *rwidth, double *rheight)
|
||||
{
|
||||
if (!wxFileExists(filename))
|
||||
return NULL;
|
||||
|
@@ -77,17 +77,17 @@ wxLineShape::wxLineShape()
|
||||
// and make the three line regions.
|
||||
ClearRegions();
|
||||
wxShapeRegion *newRegion = new wxShapeRegion;
|
||||
newRegion->SetName("Middle");
|
||||
newRegion->SetName(wxT("Middle"));
|
||||
newRegion->SetSize(150, 50);
|
||||
m_regions.Append((wxObject *)newRegion);
|
||||
|
||||
newRegion = new wxShapeRegion;
|
||||
newRegion->SetName("Start");
|
||||
newRegion->SetName(wxT("Start"));
|
||||
newRegion->SetSize(150, 50);
|
||||
m_regions.Append((wxObject *)newRegion);
|
||||
|
||||
newRegion = new wxShapeRegion;
|
||||
newRegion->SetName("End");
|
||||
newRegion->SetName(wxT("End"));
|
||||
newRegion->SetSize(150, 50);
|
||||
m_regions.Append((wxObject *)newRegion);
|
||||
|
||||
@@ -234,7 +234,7 @@ void wxLineShape::FormatText(wxDC& dc, const wxString& s, int i)
|
||||
node = string_list->First();
|
||||
while (node)
|
||||
{
|
||||
char *s = (char *)node->Data();
|
||||
wxChar *s = (wxChar *)node->Data();
|
||||
wxShapeTextLine *line = new wxShapeTextLine(0.0, 0.0, s);
|
||||
region->GetFormattedText().Append((wxObject *)line);
|
||||
node = node->Next();
|
||||
|
@@ -98,7 +98,7 @@ wxMetaRecord::~wxMetaRecord(void)
|
||||
if (stringParam) delete[] stringParam;
|
||||
}
|
||||
|
||||
wxXMetaFile::wxXMetaFile(char *file)
|
||||
wxXMetaFile::wxXMetaFile(const wxChar *file)
|
||||
{
|
||||
ok = FALSE;
|
||||
top = 0.0;
|
||||
@@ -162,11 +162,11 @@ int AddMetaRecordHandle(wxMetaRecord *record)
|
||||
return (HandleTableSize - 1);
|
||||
}
|
||||
|
||||
bool wxXMetaFile::ReadFile(char *file)
|
||||
bool wxXMetaFile::ReadFile(const wxChar *file)
|
||||
{
|
||||
HandleTableSize = 0;
|
||||
|
||||
FILE *handle = fopen(file, "rb");
|
||||
FILE *handle = wxFopen(file, wxT("rb"));
|
||||
if (!handle) return FALSE;
|
||||
|
||||
// Read placeable metafile header, if any
|
||||
|
@@ -423,7 +423,7 @@ wxStringList *oglFormatText(wxDC& dc, const wxString& text, double width, double
|
||||
{
|
||||
wxString oldBuffer(buffer);
|
||||
|
||||
char *s = (char *)node->Data();
|
||||
wxChar *s = (wxChar *)node->Data();
|
||||
if (!s)
|
||||
{
|
||||
// FORCE NEW LINE
|
||||
@@ -435,7 +435,7 @@ wxStringList *oglFormatText(wxDC& dc, const wxString& text, double width, double
|
||||
else
|
||||
{
|
||||
if (buffer.Length() != 0)
|
||||
buffer += " ";
|
||||
buffer += wxT(" ");
|
||||
|
||||
buffer += s;
|
||||
dc.GetTextExtent(buffer, &x, &y);
|
||||
@@ -782,7 +782,7 @@ void UpdateListBox(wxListBox *item, wxList *list)
|
||||
wxNode *node = list->First();
|
||||
while (node)
|
||||
{
|
||||
char *s = (char *)node->Data();
|
||||
wxChar *s = (wxChar *)node->Data();
|
||||
item->Append(s);
|
||||
node = node->Next();
|
||||
}
|
||||
|
@@ -817,7 +817,7 @@ void ListBox::Select(int n) {
|
||||
if (n > 4)
|
||||
n = n - 4;
|
||||
else
|
||||
n = 1;
|
||||
n = 0;
|
||||
GETLB(id)->SetFirstItem(n);
|
||||
#endif
|
||||
}
|
||||
|
@@ -139,7 +139,6 @@ END_EVENT_TABLE()
|
||||
|
||||
|
||||
ScintillaWX::ScintillaWX(wxStyledTextCtrl* win) {
|
||||
capturedMouse = false;
|
||||
wMain = win;
|
||||
stc = win;
|
||||
wheelRotation = 0;
|
||||
@@ -221,16 +220,15 @@ void ScintillaWX::SetTicking(bool on) {
|
||||
|
||||
|
||||
void ScintillaWX::SetMouseCapture(bool on) {
|
||||
if (on && !capturedMouse)
|
||||
if (on && !stc->HasCapture())
|
||||
stc->CaptureMouse();
|
||||
else if (!on && capturedMouse)
|
||||
else if (!on && stc->HasCapture())
|
||||
stc->ReleaseMouse();
|
||||
capturedMouse = on;
|
||||
}
|
||||
|
||||
|
||||
bool ScintillaWX::HaveMouseCapture() {
|
||||
return capturedMouse;
|
||||
return stc->HasCapture();
|
||||
}
|
||||
|
||||
|
||||
@@ -429,13 +427,45 @@ long ScintillaWX::DefWndProc(unsigned int /*iMessage*/, unsigned long /*wParam*/
|
||||
}
|
||||
|
||||
long ScintillaWX::WndProc(unsigned int iMessage, unsigned long wParam, long lParam) {
|
||||
// switch (iMessage) {
|
||||
// case EM_CANPASTE:
|
||||
// return CanPaste();
|
||||
// default:
|
||||
return ScintillaBase::WndProc(iMessage, wParam, lParam);
|
||||
// }
|
||||
// return 0;
|
||||
switch (iMessage) {
|
||||
case SCI_CALLTIPSHOW: {
|
||||
// NOTE: This is copied here from scintilla/src/ScintillaBase.cxx
|
||||
// because of the little tweak that needs done below. When updating
|
||||
// new versions double check that this is still needed, and that any
|
||||
// new code there is copied here too.
|
||||
AutoCompleteCancel();
|
||||
if (!ct.wCallTip.Created()) {
|
||||
Point pt = LocationFromPosition(wParam);
|
||||
pt.y += vs.lineHeight;
|
||||
PRectangle rc = ct.CallTipStart(currentPos, pt,
|
||||
reinterpret_cast<char *>(lParam),
|
||||
vs.styles[STYLE_DEFAULT].fontName,
|
||||
vs.styles[STYLE_DEFAULT].sizeZoomed,
|
||||
IsUnicodeMode());
|
||||
// If the call-tip window would be out of the client
|
||||
// space, adjust so it displays above the text.
|
||||
PRectangle rcClient = GetClientRectangle();
|
||||
if (rc.bottom > rcClient.bottom) {
|
||||
#ifdef __WXGTK__
|
||||
int offset = int(vs.lineHeight * 1.25) + rc.Height();
|
||||
#else
|
||||
int offset = vs.lineHeight + rc.Height();
|
||||
#endif
|
||||
rc.top -= offset;
|
||||
rc.bottom -= offset;
|
||||
}
|
||||
// Now display the window.
|
||||
CreateCallTipWindow(rc);
|
||||
ct.wCallTip.SetPositionRelative(rc, wMain);
|
||||
ct.wCallTip.Show();
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
return ScintillaBase::WndProc(iMessage, wParam, lParam);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -607,11 +637,10 @@ void ScintillaWX::DoMiddleButtonUp(Point pt) {
|
||||
|
||||
void ScintillaWX::DoAddChar(int key) {
|
||||
#if wxUSE_UNICODE
|
||||
char ansiChars[3];
|
||||
ansiChars[0] = key;
|
||||
ansiChars[1] = 0;
|
||||
wxString uniChar(ansiChars, wxConvLocal);
|
||||
wxWX2MBbuf buf = (wxWX2MBbuf)wx2stc(uniChar);
|
||||
wxChar wszChars[2];
|
||||
wszChars[0] = key;
|
||||
wszChars[1] = 0;
|
||||
wxWX2MBbuf buf = (wxWX2MBbuf)wx2stc(wszChars);
|
||||
AddCharUTF((char*)buf.data(), strlen(buf));
|
||||
#else
|
||||
AddChar(key);
|
||||
|
@@ -151,7 +151,6 @@ public:
|
||||
void DoScrollToColumn(int column);
|
||||
|
||||
private:
|
||||
bool capturedMouse;
|
||||
wxStyledTextCtrl* stc;
|
||||
|
||||
#if wxUSE_DRAG_AND_DROP
|
||||
|
@@ -407,10 +407,25 @@ wxXmlNode *wxXmlResource::DoFindResource(wxXmlNode *parent,
|
||||
if ( node->GetType() == wxXML_ELEMENT_NODE &&
|
||||
(node->GetName() == wxT("object") ||
|
||||
node->GetName() == wxT("object_ref")) &&
|
||||
(!classname ||
|
||||
node->GetPropVal(wxT("class"), wxEmptyString) == classname) &&
|
||||
node->GetPropVal(wxT("name"), &dummy) && dummy == name )
|
||||
return node;
|
||||
node->GetPropVal(wxT("name"), &dummy) && dummy == name )
|
||||
{
|
||||
wxString cls(node->GetPropVal(wxT("class"), wxEmptyString));
|
||||
if (!classname || cls == classname)
|
||||
return node;
|
||||
// object_ref may not have 'class' property:
|
||||
if (cls.empty() && node->GetName() == wxT("object_ref"))
|
||||
{
|
||||
wxString refName = node->GetPropVal(wxT("ref"), wxEmptyString);
|
||||
if (refName.empty())
|
||||
continue;
|
||||
wxXmlNode* refNode = FindResource(refName, wxEmptyString, TRUE);
|
||||
if (refNode &&
|
||||
refNode->GetPropVal(wxT("class"), wxEmptyString) == classname)
|
||||
{
|
||||
return node;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ( recursive )
|
||||
|
@@ -1,9 +1,10 @@
|
||||
@echo off
|
||||
|
||||
rem VZ: this is quick and _very_ dirty
|
||||
rem VZ: this is quick and _very_ dirty, to be replaced by a script directly
|
||||
rem parsing the files.txt and include/wx/version.h...
|
||||
|
||||
set VER=2.3.3
|
||||
set DEST=q:\wxBase-%VER%
|
||||
set VER=2.3.4
|
||||
set DEST=t:\wxBase-%VER%
|
||||
|
||||
mkdir %DEST%
|
||||
mkdir %DEST%\include
|
||||
@@ -26,6 +27,18 @@ chdir %WXWIN%
|
||||
|
||||
rem Copy the files to the root directory
|
||||
|
||||
copy /q configure.in %DEST%
|
||||
copy /q configure %DEST%
|
||||
copy /q wxwin.m4 %DEST%
|
||||
copy /q aclocal.m4 %DEST%
|
||||
copy /q config.sub %DEST%
|
||||
copy /q config.guess %DEST%
|
||||
copy /q install-sh %DEST%
|
||||
copy /q mkinstalldirs %DEST%
|
||||
copy /q wx-config.in %DEST%
|
||||
copy /q setup.h.in %DEST%
|
||||
copy /q Makefile.in %DEST%
|
||||
copy /q wxBase.spec %DEST%
|
||||
copy /q docs\changes.txt %DEST%\CHANGES.txt
|
||||
copy /q docs\licence.txt %DEST%\LICENCE.txt
|
||||
copy /q docs\base\readme.txt %DEST%\README.txt
|
||||
@@ -39,12 +52,15 @@ copy /q src\makeb32.env %DEST%\src\makeb32.env
|
||||
copy /q src\makelib.b32 %DEST%\src\makelib.b32
|
||||
copy /q src\makeprog.b32 %DEST%\src\makeprog.b32
|
||||
copy /q src\msw\makebase.b32 %DEST%\src\msw\makebase.b32
|
||||
copy /q src\*.in %DEST%\src
|
||||
|
||||
rem Copy the sample
|
||||
|
||||
copy /q samples\console\console.cpp %DEST%\samples\console\console.cpp
|
||||
copy /q samples\console\console.dsp %DEST%\samples\console\console.dsp
|
||||
copy /q samples\console\makefile.b32 %DEST%\samples\console\makefile.b32
|
||||
copy /q samples\console\makefile.unx %DEST%\samples\console
|
||||
copy /q samples\console\Makefile.in %DEST%\samples\console
|
||||
copy /q samples\console\testdata.fc %DEST%\samples\console\testdata.fc
|
||||
|
||||
rem Copy regex and zlib files
|
||||
@@ -255,6 +271,7 @@ copy /q include\wx\zstream.h %DEST%\include\wx\zstream.h
|
||||
copy /q include\wx\unix\gsockunx.h %DEST%\include\wx\unix\gsockunx.h
|
||||
copy /q include\wx\unix\mimetype.h %DEST%\include\wx\unix\mimetype.h
|
||||
copy /q include\wx\msw\dde.h %DEST%\include\wx\msw\dde.h
|
||||
copy /q include\wx\msw\gccpriv.h %DEST%\include\wx\msw\gccpriv.h
|
||||
copy /q include\wx\msw\mimetype.h %DEST%\include\wx\msw\mimetype.h
|
||||
copy /q include\wx\msw\winundef.h %DEST%\include\wx\msw\winundef.h
|
||||
copy /q include\wx\protocol\file.h %DEST%\include\wx\protocol\file.h
|
||||
|
@@ -8,11 +8,9 @@ config.sub
|
||||
configure.in
|
||||
setup.h.in
|
||||
install-sh
|
||||
missing
|
||||
mkinstalldirs
|
||||
modules
|
||||
template.mak
|
||||
wx-config.in
|
||||
version-script.in
|
||||
setup.h_vms
|
||||
|
||||
distrib/msw/*.rsp
|
||||
@@ -28,19 +26,18 @@ distrib/msw/tmake/makeall.bat
|
||||
distrib/msw/tmake/makeall.sh
|
||||
distrib/msw/tmake/wxwin.pro
|
||||
distrib/msw/tmake/tmake.conf
|
||||
distrib/gtk/*
|
||||
|
||||
locale/*.po
|
||||
locale/*.mo
|
||||
locale/Makefile
|
||||
|
||||
art/*.xpm
|
||||
art/*.ico
|
||||
art/*.png
|
||||
art/motif/*.xpm
|
||||
art/gtk/*.xpm
|
||||
|
||||
docs/readme.txt
|
||||
docs/readme_vms.txt
|
||||
docs/install.txt
|
||||
docs/changes.txt
|
||||
docs/todo.txt
|
||||
docs/licence.txt
|
||||
@@ -48,18 +45,10 @@ docs/licendoc.txt
|
||||
docs/preamble.txt
|
||||
docs/gpl.txt
|
||||
docs/lgpl.txt
|
||||
docs/symbols.txt
|
||||
docs/bugs.txt
|
||||
docs/index.htm
|
||||
docs/html/*.htm
|
||||
docs/html/*.gif
|
||||
docs/html/*.png
|
||||
docs/html/icons/*.gif
|
||||
docs/html/icons/*.png
|
||||
docs/html/icons/*.jpg
|
||||
docs/html/images/*.gif
|
||||
docs/html/images/*.png
|
||||
docs/html/images/*.jpg
|
||||
docs/tech/*.txt
|
||||
docs/tech/*.htm
|
||||
|
||||
@@ -152,19 +141,9 @@ lib/dummy
|
||||
|
||||
tools/gettext/*.*
|
||||
|
||||
bitmaps/xpm/16x16/*.*
|
||||
bitmaps/xpm/32x32/*.*
|
||||
bitmaps/xpm/64x64/*.*
|
||||
bitmaps/xpm/misc/*.*
|
||||
bitmaps/*.*
|
||||
bitmaps/bmp/16x15/*.*
|
||||
bitmaps/bmp/10x8/*.*
|
||||
bitmaps/ico/32x32/*.*
|
||||
|
||||
misc/afm/*.afm
|
||||
misc/gs_afm/*.afm
|
||||
|
||||
utils/*.txt
|
||||
utils/make*.*
|
||||
utils/configure
|
||||
utils/configure.in
|
||||
|
@@ -29,6 +29,339 @@ expandlines()
|
||||
done
|
||||
}
|
||||
|
||||
doinit()
|
||||
{
|
||||
cd $WXSRC
|
||||
echo Removing backup files...
|
||||
rm *~ */*~ */*/*~ */*/*/*~ */*/*/*/*~
|
||||
|
||||
rm -f $WXDEST/wx*-${WXVER}*.tar.gz
|
||||
# Copy setup files
|
||||
cp $WXSRC/include/wx/os2/SETUP0.H $WXSRC/include/wx/os2/setup.h
|
||||
cp $WXSRC/include/wx/msw/setup0.h $WXSRC/include/wx/msw/setup.h
|
||||
cp $WXSRC/include/wx/univ/setup0.h $WXSRC/include/wx/univ/setup.h
|
||||
|
||||
# Copy readme and other files
|
||||
|
||||
cp $WXSRC/docs/readme.txt $WXDEST/readme-${WXVER}.txt
|
||||
cp $WXSRC/docs/changes.txt $WXDEST/changes-${WXVER}.txt
|
||||
cp $WXSRC/docs/mgl/readme.txt $WXDEST/readme-mgl-${WXVER}.txt
|
||||
cp $WXSRC/docs/mgl/install.txt $WXDEST/install-mgl-${WXVER}.txt
|
||||
cp $WXSRC/docs/x11/readme.txt $WXDEST/readme-x11-${WXVER}.txt
|
||||
cp $WXSRC/docs/x11/readme-nanox.txt $WXDEST/readme-nanox-${WXVER}.txt
|
||||
cp $WXSRC/docs/x11/install.txt $WXDEST/install-x11-${WXVER}.txt
|
||||
cp $WXSRC/docs/motif/readme.txt $WXDEST/readme-motif-${WXVER}.txt
|
||||
cp $WXSRC/docs/motif/install.txt $WXDEST/install-motif-${WXVER}.txt
|
||||
cp $WXSRC/docs/msw/readme.txt $WXDEST/readme-msw-${WXVER}.txt
|
||||
cp $WXSRC/docs/msw/install.txt $WXDEST/install-msw-${WXVER}.txt
|
||||
cp $WXSRC/docs/gtk/readme.txt $WXDEST/readme-gtk-${WXVER}.txt
|
||||
cp $WXSRC/docs/gtk/install.txt $WXDEST/install-gtk-${WXVER}.txt
|
||||
cp $WXSRC/docs/mac/readme.txt $WXDEST/readme-mac-${WXVER}.txt
|
||||
cp $WXSRC/docs/mac/install.txt $WXDEST/install-mac-${WXVER}.txt
|
||||
cp $WXSRC/docs/os2/install.txt $WXDEST/install-os2-${WXVER}.txt
|
||||
}
|
||||
|
||||
dospinwxgtk()
|
||||
{
|
||||
echo Tarring wxGTK...
|
||||
|
||||
cd $WXSRC
|
||||
cat $WXSRC/distrib/msw/generic.rsp $WXSRC/distrib/msw/contrib.rsp $WXSRC/distrib/msw/xml.rsp $WXSRC/distrib/msw/utils.rsp $WXSRC/distrib/msw/ogl.rsp $WXSRC/distrib/msw/tex2rtf.rsp $WXSRC/distrib/msw/dialoged.rsp $WXSRC/distrib/msw/gtk.rsp $WXSRC/distrib/msw/makefile.rsp $WXSRC/distrib/msw/tiff.rsp $WXSRC/distrib/msw/jpeg.rsp > /tmp/wxgtk_in.txt
|
||||
expandlines /tmp/wxgtk_in.txt /tmp/wxgtk.txt
|
||||
$TAR cf $WXDEST/wxGTK-${WXVER}.tar -T /tmp/wxgtk.txt
|
||||
|
||||
echo Re-tarring wxGTK in a subdirectory...
|
||||
cd $WXDEST
|
||||
mkdir wxGTK-${WXVER}
|
||||
cd wxGTK-${WXVER}
|
||||
$TAR xf ../wxGTK-${WXVER}.tar
|
||||
cd ..
|
||||
rm -f wxGTK-${WXVER}.tar
|
||||
$TAR cf $WXDEST/wxGTK-${WXVER}.tar wxGTK-${WXVER}/*
|
||||
rm -f -r wxGTK-${WXVER}
|
||||
gzip $WXDEST/wxGTK-${WXVER}.tar
|
||||
}
|
||||
|
||||
dospinwxmotif()
|
||||
{
|
||||
echo Tarring wxMotif...
|
||||
|
||||
cd $WXSRC
|
||||
cat $WXSRC/distrib/msw/generic.rsp $WXSRC/distrib/msw/motif.rsp $WXSRC/distrib/msw/contrib.rsp $WXSRC/distrib/msw/xml.rsp $WXSRC/distrib/msw/ogl.rsp $WXSRC/distrib/msw/makefile.rsp $WXSRC/distrib/msw/tiff.rsp $WXSRC/distrib/msw/jpeg.rsp > /tmp/wxmotif_in.txt
|
||||
expandlines /tmp/wxmotif_in.txt /tmp/wxmotif.txt
|
||||
$TAR cf $WXDEST/wxMotif-${WXVER}.tar -T /tmp/wxmotif.txt
|
||||
|
||||
echo Re-tarring wxMotif in a subdirectory...
|
||||
cd $WXDEST
|
||||
mkdir wxMotif-${WXVER}
|
||||
cd wxMotif-${WXVER}
|
||||
$TAR xf ../wxMotif-${WXVER}.tar
|
||||
cd ..
|
||||
rm -f wxMotif-${WXVER}.tar
|
||||
$TAR cf $WXDEST/wxMotif-${WXVER}.tar wxMotif-${WXVER}/*
|
||||
rm -f -r wxMotif-${WXVER}
|
||||
gzip $WXDEST/wxMotif-${WXVER}.tar
|
||||
}
|
||||
|
||||
dospinwxx11()
|
||||
{
|
||||
echo Tarring wxX11...
|
||||
|
||||
### wxX11: combined wxMotif and wxX11 distributions
|
||||
cd $WXSRC
|
||||
cat $WXSRC/distrib/msw/generic.rsp $WXSRC/distrib/msw/motif.rsp $WXSRC/distrib/msw/x11.rsp $WXSRC/distrib/msw/univ.rsp $WXSRC/distrib/msw/contrib.rsp $WXSRC/distrib/msw/utils.rsp $WXSRC/distrib/msw/xml.rsp $WXSRC/distrib/msw/dialoged.rsp $WXSRC/distrib/msw/ogl.rsp $WXSRC/distrib/msw/makefile.rsp $WXSRC/distrib/msw/tiff.rsp $WXSRC/distrib/msw/jpeg.rsp > /tmp/wxx11_in.txt
|
||||
expandlines /tmp/wxx11_in.txt /tmp/wxx11.txt
|
||||
$TAR cf $WXDEST/wxX11-${WXVER}.tar -T /tmp/wxx11.txt
|
||||
|
||||
echo Re-tarring wxX11 in a subdirectory...
|
||||
cd $WXDEST
|
||||
mkdir wxX11-${WXVER}
|
||||
cd wxX11-${WXVER}
|
||||
$TAR xf ../wxX11-${WXVER}.tar
|
||||
cd ..
|
||||
rm -f wxX11-${WXVER}.tar
|
||||
$TAR cf $WXDEST/wxX11-${WXVER}.tar wxX11-${WXVER}/*
|
||||
rm -f -r wxX11-${WXVER}
|
||||
gzip $WXDEST/wxX11-${WXVER}.tar
|
||||
}
|
||||
|
||||
### wxMSW
|
||||
# cd $WXSRC
|
||||
# cat $WXSRC/distrib/msw/msw.rsp $WXSRC/distrib/msw/vc.rsp $WXSRC/distrib/msw/bc.rsp $WXSRC/distrib/msw/contrib.rsp $WXSRC/distrib/msw/xml.rsp $WXSRC/distrib/msw/makefile.rsp $WXSRC/distrib/msw/tiff.rsp $WXSRC/distrib/msw/jpeg.rsp > /tmp/wxmsw_in.txt
|
||||
# expandlines /tmp/wxmsw_in.txt /tmp/wxmsw.txt
|
||||
# $TAR cf $WXDEST/wxMSW-${WXVER}.tar -T /tmp/wxmsw.txt
|
||||
# gzip $WXDEST/wxMSW-${WXVER}.tar
|
||||
|
||||
dospinwxmac()
|
||||
{
|
||||
echo Tarring wxMac...
|
||||
### wxMac
|
||||
cp $WXSRC/include/wx/mac/setup0.h $WXSRC/include/wx/setup.h
|
||||
cd $WXSRC
|
||||
cat $WXSRC/distrib/msw/mac.rsp $WXSRC/distrib/msw/generic.rsp $WXSRC/distrib/msw/cw_mac.rsp $WXSRC/distrib/msw/tex2rtf.rsp $WXSRC/distrib/msw/utils.rsp $WXSRC/distrib/msw/dialoged.rsp $WXSRC/distrib/msw/ogl.rsp $WXSRC/distrib/msw/stc.rsp $WXSRC/distrib/msw/xml.rsp $WXSRC/distrib/msw/contrib.rsp $WXSRC/distrib/msw/makefile.rsp $WXSRC/distrib/msw/tiff.rsp $WXSRC/distrib/msw/jpeg.rsp > /tmp/wxmac_in.txt
|
||||
expandlines /tmp/wxmac_in.txt /tmp/wxmac.txt
|
||||
$TAR cf $WXDEST/wxMac-${WXVER}.tar -T /tmp/wxmac.txt
|
||||
|
||||
rm -f $WXSRC/include/wx/setup.h
|
||||
|
||||
echo Re-tarring wxMac in a subdirectory...
|
||||
cd $WXDEST
|
||||
mkdir wxMac-${WXVER}
|
||||
cd wxMac-${WXVER}
|
||||
$TAR xf ../wxMac-${WXVER}.tar
|
||||
rm -f -r contrib/src/mmedia contrib/samples/mmedia
|
||||
cd ..
|
||||
rm -f wxMac-${WXVER}.tar
|
||||
$TAR cf $WXDEST/wxMac-${WXVER}.tar wxMac-${WXVER}/*
|
||||
rm -f -r wxMac-${WXVER}
|
||||
gzip $WXDEST/wxMac-${WXVER}.tar
|
||||
}
|
||||
|
||||
### wxUniv: universal-specific files
|
||||
#cd $WXSRC
|
||||
#cat $WXSRC/distrib/msw/univ.rsp > /tmp/wxuniv_in.txt
|
||||
#expandlines /tmp/wxuniv_in.txt /tmp/wxuniv.txt
|
||||
#$TAR cf $WXDEST/wxWindows-${WXVER}-Univ.tar -T /tmp/wxuniv.txt
|
||||
#
|
||||
#echo Re-tarring wxUniversal in a subdirectory...
|
||||
#cd $WXDEST
|
||||
#mkdir wxWindows-${WXVER}
|
||||
#cd wxWindows-${WXVER}
|
||||
#$TAR xf ../wxWindows-${WXVER}-Univ.tar
|
||||
#cd ..
|
||||
#rm -f wxWindows-${WXVER}-Univ.tar
|
||||
#$TAR cf $WXDEST/wxWindows-${WXVER}-Univ.tar wxWindows-${WXVER}/*
|
||||
#rm -f -r wxWindows-${WXVER}
|
||||
#gzip $WXDEST/wxWindows-${WXVER}-Univ.tar
|
||||
|
||||
dospinwxall()
|
||||
{
|
||||
echo Tarring wxAll...
|
||||
|
||||
### wxAll: all distributions in one giant archive
|
||||
cd $WXSRC
|
||||
cat $WXSRC/distrib/msw/generic.rsp $WXSRC/distrib/msw/msw.rsp $WXSRC/distrib/msw/vc.rsp $WXSRC/distrib/msw/cw.rsp $WXSRC/distrib/msw/cw_mac.rsp $WXSRC/distrib/msw/gtk.rsp $WXSRC/distrib/msw/x11.rsp $WXSRC/distrib/msw/motif.rsp $WXSRC/distrib/msw/mac.rsp $WXSRC/distrib/msw/os2.rsp $WXSRC/distrib/msw/x11.rsp $WXSRC/distrib/msw/univ.rsp $WXSRC/distrib/msw/mgl.rsp $WXSRC/distrib/msw/contrib.rsp $WXSRC/distrib/msw/utilmake.rsp $WXSRC/distrib/msw/utils.rsp $WXSRC/distrib/msw/mmedia.rsp $WXSRC/distrib/msw/tex2rtf.rsp $WXSRC/distrib/msw/stc.rsp $WXSRC/distrib/msw/xml.rsp $WXSRC/distrib/msw/dialoged.rsp $WXSRC/distrib/msw/ogl.rsp $WXSRC/distrib/msw/makefile.rsp $WXSRC/distrib/msw/tiff.rsp $WXSRC/distrib/msw/jpeg.rsp $WXSRC/distrib/msw/docsrc.rsp | uniq > /tmp/wxall_in.txt
|
||||
expandlines /tmp/wxall_in.txt /tmp/wxall.txt
|
||||
$TAR cf $WXDEST/wxAll-${WXVER}.tar -T /tmp/wxall.txt
|
||||
|
||||
echo Re-tarring wxAll in a subdirectory...
|
||||
cd $WXDEST
|
||||
mkdir wxWindows-${WXVER}
|
||||
|
||||
# If we have the full set of VC++ project files,
|
||||
# get them
|
||||
if [ -f $WXDEST/extra/wxWindows-${WXVER}-VC.zip ]; then
|
||||
unzip -o $WXDEST/extra/wxWindows-${WXVER}-VC.zip
|
||||
else
|
||||
echo "Warning - did not find $WXDEST/deliver/extra/wxWindows-${WXVER}-VC.zip"
|
||||
fi
|
||||
|
||||
cd wxWindows-${WXVER}
|
||||
$TAR xf ../wxAll-${WXVER}.tar
|
||||
|
||||
# Translate all .dsp and .dsw files to DOS format
|
||||
unix2dos --unix2dos `cat $WXSRC/distrib/msw/vc.rsp`
|
||||
|
||||
# Copy OS/2 specific configure files
|
||||
cp $WXSRC/distrib/os2/os2-specific.zip docs/os2
|
||||
|
||||
# Copy the OS/2 files which probably haven't been copied yet
|
||||
mkdir include/wx/os2
|
||||
mkdir src/os2
|
||||
cp $WXSRC/include/wx/os2/*.H include/wx/os2
|
||||
cp $WXSRC/src/os2/*.CPP $WXSRC/src/os2/*.I src/os2
|
||||
|
||||
# Make all OS/2 files lower case
|
||||
$WXSRC/distrib/msw/namedown include/wx/os2/*.H
|
||||
$WXSRC/distrib/msw/namedown src/os2/*.CPP src/os2/*.I
|
||||
|
||||
cd ..
|
||||
rm -f wxAll-${WXVER}.tar
|
||||
$TAR cf $WXDEST/wxAll-${WXVER}.tar wxWindows-${WXVER}/*
|
||||
rm -f -r wxWindows-${WXVER}
|
||||
gzip $WXDEST/wxAll-${WXVER}.tar
|
||||
}
|
||||
|
||||
dospinwxdocs()
|
||||
{
|
||||
echo Tarring wxDocs...
|
||||
|
||||
### Doc sources
|
||||
#cd $WXSRC
|
||||
#cat $WXSRC/distrib/msw/docsrc.rsp > /tmp/docsrc_in.txt
|
||||
#expandlines /tmp/docsrc_in.txt /tmp/docsrc.txt
|
||||
#$TAR cf $WXDEST/wxWindows-${WXVER}-doc.tar -T /tmp/docsrc.txt
|
||||
#
|
||||
#echo Re-tarring docs in a subdirectory...
|
||||
#cd $WXDEST
|
||||
#mkdir wxWindows-${WXVER}
|
||||
#cd wxWindows-${WXVER}
|
||||
#$TAR xf ../wxWindows-${WXVER}-doc.tar
|
||||
#cd ..
|
||||
#rm -f wxWindows-${WXVER}-doc.tar
|
||||
#$TAR cf $WXDEST/wxWindows-${WXVER}-doc.tar wxWindows-${WXVER}/*
|
||||
#rm -f -r wxWindows-${WXVER}
|
||||
#gzip $WXDEST/wxWindows-${WXVER}-doc.tar
|
||||
|
||||
### HTML docs
|
||||
cd $WXSRC
|
||||
cat $WXSRC/distrib/msw/wx_html.rsp > /tmp/html_in.txt
|
||||
expandlines /tmp/html_in.txt /tmp/html.txt
|
||||
$TAR cf $WXDEST/wxWindows-${WXVER}-HTML.tar -T /tmp/html.txt
|
||||
|
||||
echo Re-tarring HTML in a subdirectory...
|
||||
cd $WXDEST
|
||||
mkdir wxWindows-${WXVER}
|
||||
cd wxWindows-${WXVER}
|
||||
$TAR xf ../wxWindows-${WXVER}-HTML.tar
|
||||
cd ..
|
||||
rm -f wxWindows-${WXVER}-HTML.tar
|
||||
$TAR cf $WXDEST/wxWindows-${WXVER}-HTML.tar wxWindows-${WXVER}/*
|
||||
rm -f -r wxWindows-${WXVER}
|
||||
gzip $WXDEST/wxWindows-${WXVER}-HTML.tar
|
||||
|
||||
### HTB docs
|
||||
cd $WXSRC
|
||||
cat $WXSRC/distrib/msw/wx_htb.rsp > /tmp/htb_in.txt
|
||||
expandlines /tmp/htb_in.txt /tmp/htb.txt
|
||||
$TAR cf $WXDEST/wxWindows-${WXVER}-HTB.tar -T /tmp/htb.txt
|
||||
|
||||
echo Re-tarring HTB in a subdirectory...
|
||||
cd $WXDEST
|
||||
mkdir wxWindows-${WXVER}
|
||||
cd wxWindows-${WXVER}
|
||||
$TAR xf ../wxWindows-${WXVER}-HTB.tar
|
||||
cd ..
|
||||
rm -f wxWindows-${WXVER}-HTB.tar
|
||||
$TAR cf $WXDEST/wxWindows-${WXVER}-HTB.tar wxWindows-${WXVER}/*
|
||||
rm -f -r wxWindows-${WXVER}
|
||||
gzip $WXDEST/wxWindows-${WXVER}-HTB.tar
|
||||
|
||||
### PDF docs
|
||||
cd $WXSRC
|
||||
cat $WXSRC/distrib/msw/wx_pdf.rsp > /tmp/pdf_in.txt
|
||||
expandlines /tmp/pdf_in.txt /tmp/pdf.txt
|
||||
$TAR cf $WXDEST/wxWindows-${WXVER}-PDF.tar -T /tmp/pdf.txt
|
||||
|
||||
echo Re-tarring PDF in a subdirectory...
|
||||
cd $WXDEST
|
||||
mkdir wxWindows-${WXVER}
|
||||
cd wxWindows-${WXVER}
|
||||
$TAR xf ../wxWindows-${WXVER}-PDF.tar
|
||||
cd ..
|
||||
rm -f wxWindows-${WXVER}-PDF.tar
|
||||
$TAR cf $WXDEST/wxWindows-${WXVER}-PDF.tar wxWindows-${WXVER}/*
|
||||
rm -f -r wxWindows-${WXVER}
|
||||
gzip $WXDEST/wxWindows-${WXVER}-PDF.tar
|
||||
}
|
||||
|
||||
### Tex2RTF
|
||||
#cd $WXSRC
|
||||
#cat $WXSRC/distrib/msw/tex2rtf.rsp > /tmp/tex2rtf_in.txt
|
||||
#expandlines /tmp/tex2rtf_in.txt /tmp/tex2rtf.txt
|
||||
#$TAR cf $WXDEST/wxWindows-${WXVER}-tex2rtf.tar -T /tmp/tex2rtf.txt
|
||||
#
|
||||
#echo Re-tarring Tex2RTF in a subdirectory...
|
||||
#cd $WXDEST
|
||||
#mkdir wxWindows-${WXVER}
|
||||
#cd wxWindows-${WXVER}
|
||||
#$TAR xf ../wxWindows-${WXVER}-tex2rtf.tar
|
||||
#cd ..
|
||||
#rm -f wxWindows-${WXVER}-tex2rtf.tar
|
||||
#$TAR cf $WXDEST/wxWindows-${WXVER}-tex2rtf.tar wxWindows-${WXVER}/*
|
||||
#rm -f -r wxWindows-${WXVER}
|
||||
#gzip $WXDEST/wxWindows-${WXVER}-tex2rtf.tar
|
||||
|
||||
### OGL
|
||||
#cd $WXSRC
|
||||
#cat $WXSRC/distrib/msw/ogl.rsp > /tmp/ogl_in.txt
|
||||
#expandlines /tmp/ogl_in.txt /tmp/ogl.txt
|
||||
#$TAR cf $WXDEST/wxWindows-${WXVER}-ogl.tar -T /tmp/ogl.txt
|
||||
#
|
||||
#echo Re-tarring OGL in a subdirectory...
|
||||
#cd $WXDEST
|
||||
#mkdir wxWindows-${WXVER}
|
||||
#cd wxWindows-${WXVER}
|
||||
#$TAR xf ../wxWindows-${WXVER}-ogl.tar
|
||||
#cd ..
|
||||
#rm -f wxWindows-${WXVER}-ogl.tar
|
||||
#$TAR cf $WXDEST/wxWindows-${WXVER}-ogl.tar wxWindows-${WXVER}/*
|
||||
#rm -f -r wxWindows-${WXVER}
|
||||
#gzip $WXDEST/wxWindows-${WXVER}-ogl.tar
|
||||
|
||||
### JPEG
|
||||
#cd $WXSRC
|
||||
#cat $WXSRC/distrib/msw/jpeg.rsp > /tmp/jpeg_in.txt
|
||||
#expandlines /tmp/jpeg_in.txt /tmp/jpeg.txt
|
||||
#$TAR cf $WXDEST/wxWindows-${WXVER}-jpeg.tar -T /tmp/jpeg.txt
|
||||
#
|
||||
#echo Re-tarring jpeg in a subdirectory...
|
||||
#cd $WXDEST
|
||||
#mkdir wxWindows-${WXVER}
|
||||
#cd wxWindows-${WXVER}
|
||||
#$TAR xf ../wxWindows-${WXVER}-jpeg.tar
|
||||
#cd ..
|
||||
#rm -f wxWindows-${WXVER}-jpeg.tar
|
||||
#$TAR cf $WXDEST/wxWindows-${WXVER}-jpeg.tar wxWindows-${WXVER}/*
|
||||
#rm -f -r wxWindows-${WXVER}
|
||||
#gzip $WXDEST/wxWindows-${WXVER}-jpeg.tar
|
||||
|
||||
### TIFF
|
||||
#cd $WXSRC
|
||||
#cat $WXSRC/distrib/msw/tiff.rsp > /tmp/tiff_in.txt
|
||||
#expandlines /tmp/tiff_in.txt /tmp/tiff.txt
|
||||
#$TAR cf $WXDEST/wxWindows-${WXVER}-tiff.tar -T /tmp/tiff.txt
|
||||
#
|
||||
#echo Re-tarring docs in a subdirectory...
|
||||
#cd $WXDEST
|
||||
#mkdir wxWindows-${WXVER}
|
||||
#cd wxWindows-${WXVER}
|
||||
#$TAR xf ../wxWindows-${WXVER}-tiff.tar
|
||||
#cd ..
|
||||
#rm -f wxWindows-${WXVER}-tiff.tar
|
||||
#$TAR cf $WXDEST/wxWindows-${WXVER}-tiff.tar wxWindows-${WXVER}/*
|
||||
#rm -f -r wxWindows-${WXVER}
|
||||
#gzip $WXDEST/wxWindows-${WXVER}-tiff.tar
|
||||
|
||||
init=""
|
||||
if [ "$1" = "" ]
|
||||
@@ -49,328 +382,84 @@ then
|
||||
exit
|
||||
fi
|
||||
|
||||
PROGNAME=$0
|
||||
WXSRC=$1
|
||||
WXDEST=$2
|
||||
WXVER=$3
|
||||
|
||||
SPINWXALL=0
|
||||
SPINWXX11=0
|
||||
SPINWXGTK=0
|
||||
SPINWXMOTIF=0
|
||||
SPINWXMAC=0
|
||||
SPINWXDOCS=0
|
||||
SPINEVERYTHING=0
|
||||
|
||||
usage()
|
||||
{
|
||||
echo Usage: $PROGNAME "src-dir dest-dir version-number [ options ]"
|
||||
echo Options:
|
||||
echo " --help Display this help message"
|
||||
echo " --wxall Spin wxAll"
|
||||
echo " --wxgtk Spin wxGTK"
|
||||
echo " --wxmotif Spin wxMotif"
|
||||
echo " --wxmac Spin wxMac"
|
||||
echo " --wxx11 Spin wxX11"
|
||||
echo " --wxdocs Spin docs"
|
||||
echo " --all Spin EVERYTHING"
|
||||
|
||||
exit 1
|
||||
}
|
||||
|
||||
# Process command line options.
|
||||
shift 3
|
||||
for i in "$@"; do
|
||||
case "$i" in
|
||||
--wxall) SPINWXALL=1 ;;
|
||||
--wxx11) SPINWXX11=1 ;;
|
||||
--wxgtk) SPINWXGTK=1 ;;
|
||||
--wxmotif) SPINWXMOTIF=1 ;;
|
||||
--wxmac) SPINWXMAC=1 ;;
|
||||
--wxdocs) SPINWXDOCS=1 ;;
|
||||
--all) SPINEVERYTHING=1 ;;
|
||||
*)
|
||||
usage
|
||||
exit
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
echo About to archive wxWindows:
|
||||
echo From $1
|
||||
echo To $2
|
||||
echo From $WXSRC
|
||||
echo To $WXDEST
|
||||
echo Version $WXVER
|
||||
echo CTRL-C if this is not correct.
|
||||
read dummy
|
||||
|
||||
cd $1
|
||||
doinit
|
||||
|
||||
echo Removing backup files...
|
||||
rm *~ */*~ */*/*~ */*/*/*~ */*/*/*/*~
|
||||
|
||||
rm -f $2/wx*-${WXVER}*.tar.gz
|
||||
|
||||
# Copy setup files
|
||||
cp $1/include/wx/os2/SETUP0.H $1/include/wx/os2/setup.h
|
||||
cp $1/include/wx/msw/setup0.h $1/include/wx/msw/setup.h
|
||||
cp $1/include/wx/univ/setup0.h $1/include/wx/univ/setup.h
|
||||
|
||||
echo Tarring...
|
||||
|
||||
### Generic
|
||||
#cat $1/distrib/msw/generic.rsp $1/distrib/msw/contrib.rsp $1/distrib/msw/xml.rsp $1/distrib/msw/makefile.rsp > /tmp/wxgen_in.txt
|
||||
#expandlines /tmp/wxgen_in.txt /tmp/wxgen.txt
|
||||
#$TAR cf $2/wxWindows-${WXVER}-gen.tar -T /tmp/wxgen.txt
|
||||
#gzip $2/wxWindows-${WXVER}-gen.tar
|
||||
#mv $2/wxWindows-${WXVER}-gen.tar.gz $2/wxWindows-${WXVER}-gen.tgz
|
||||
|
||||
### wxGTK
|
||||
cd $1
|
||||
cat $1/distrib/msw/generic.rsp $1/distrib/msw/contrib.rsp $1/distrib/msw/xml.rsp $1/distrib/msw/utils.rsp $1/distrib/msw/ogl.rsp $1/distrib/msw/tex2rtf.rsp $1/distrib/msw/dialoged.rsp $1/distrib/msw/gtk.rsp $1/distrib/msw/makefile.rsp $1/distrib/msw/tiff.rsp $1/distrib/msw/jpeg.rsp > /tmp/wxgtk_in.txt
|
||||
expandlines /tmp/wxgtk_in.txt /tmp/wxgtk.txt
|
||||
$TAR cf $2/wxGTK-${WXVER}.tar -T /tmp/wxgtk.txt
|
||||
|
||||
echo Re-tarring wxGTK in a subdirectory...
|
||||
cd $2
|
||||
mkdir wxGTK-${WXVER}
|
||||
cd wxGTK-${WXVER}
|
||||
$TAR xf ../wxGTK-${WXVER}.tar
|
||||
cd ..
|
||||
rm -f wxGTK-${WXVER}.tar
|
||||
$TAR cf $2/wxGTK-${WXVER}.tar wxGTK-${WXVER}/*
|
||||
rm -f -r wxGTK-${WXVER}
|
||||
gzip $2/wxGTK-${WXVER}.tar
|
||||
|
||||
### wxMotif
|
||||
cd $1
|
||||
cat $1/distrib/msw/generic.rsp $1/distrib/msw/motif.rsp $1/distrib/msw/contrib.rsp $1/distrib/msw/xml.rsp $1/distrib/msw/ogl.rsp $1/distrib/msw/makefile.rsp $1/distrib/msw/tiff.rsp $1/distrib/msw/jpeg.rsp > /tmp/wxmotif_in.txt
|
||||
expandlines /tmp/wxmotif_in.txt /tmp/wxmotif.txt
|
||||
$TAR cf $2/wxMotif-${WXVER}.tar -T /tmp/wxmotif.txt
|
||||
|
||||
echo Re-tarring wxMotif in a subdirectory...
|
||||
cd $2
|
||||
mkdir wxMotif-${WXVER}
|
||||
cd wxMotif-${WXVER}
|
||||
$TAR xf ../wxMotif-${WXVER}.tar
|
||||
cd ..
|
||||
rm -f wxMotif-${WXVER}.tar
|
||||
$TAR cf $2/wxMotif-${WXVER}.tar wxMotif-${WXVER}/*
|
||||
rm -f -r wxMotif-${WXVER}
|
||||
gzip $2/wxMotif-${WXVER}.tar
|
||||
|
||||
### wxX11: combined wxMotif and wxX11 distributions
|
||||
cd $1
|
||||
cat $1/distrib/msw/generic.rsp $1/distrib/msw/motif.rsp $1/distrib/msw/x11.rsp $1/distrib/msw/univ.rsp $1/distrib/msw/contrib.rsp $1/distrib/msw/utils.rsp $1/distrib/msw/xml.rsp $1/distrib/msw/dialoged.rsp $1/distrib/msw/ogl.rsp $1/distrib/msw/makefile.rsp $1/distrib/msw/tiff.rsp $1/distrib/msw/jpeg.rsp > /tmp/wxx11_in.txt
|
||||
expandlines /tmp/wxx11_in.txt /tmp/wxx11.txt
|
||||
$TAR cf $2/wxX11-${WXVER}.tar -T /tmp/wxx11.txt
|
||||
|
||||
echo Re-tarring wxX11 in a subdirectory...
|
||||
cd $2
|
||||
mkdir wxX11-${WXVER}
|
||||
cd wxX11-${WXVER}
|
||||
$TAR xf ../wxX11-${WXVER}.tar
|
||||
cd ..
|
||||
rm -f wxX11-${WXVER}.tar
|
||||
$TAR cf $2/wxX11-${WXVER}.tar wxX11-${WXVER}/*
|
||||
rm -f -r wxX11-${WXVER}
|
||||
gzip $2/wxX11-${WXVER}.tar
|
||||
|
||||
### wxMSW
|
||||
# cd $1
|
||||
# cat $1/distrib/msw/msw.rsp $1/distrib/msw/vc.rsp $1/distrib/msw/bc.rsp $1/distrib/msw/contrib.rsp $1/distrib/msw/xml.rsp $1/distrib/msw/makefile.rsp $1/distrib/msw/tiff.rsp $1/distrib/msw/jpeg.rsp > /tmp/wxmsw_in.txt
|
||||
# expandlines /tmp/wxmsw_in.txt /tmp/wxmsw.txt
|
||||
# $TAR cf $2/wxMSW-${WXVER}.tar -T /tmp/wxmsw.txt
|
||||
# gzip $2/wxMSW-${WXVER}.tar
|
||||
|
||||
### wxMac
|
||||
cp $1/include/wx/mac/setup0.h $1/include/wx/setup.h
|
||||
cd $1
|
||||
cat $1/distrib/msw/mac.rsp $1/distrib/msw/generic.rsp $1/distrib/msw/cw_mac.rsp $1/distrib/msw/tex2rtf.rsp $1/distrib/msw/utils.rsp $1/distrib/msw/dialoged.rsp $1/distrib/msw/ogl.rsp $1/distrib/msw/stc.rsp $1/distrib/msw/xml.rsp $1/distrib/msw/contrib.rsp $1/distrib/msw/makefile.rsp $1/distrib/msw/tiff.rsp $1/distrib/msw/jpeg.rsp > /tmp/wxmac_in.txt
|
||||
expandlines /tmp/wxmac_in.txt /tmp/wxmac.txt
|
||||
$TAR cf $2/wxMac-${WXVER}.tar -T /tmp/wxmac.txt
|
||||
|
||||
rm -f $1/include/wx/setup.h
|
||||
|
||||
echo Re-tarring wxMac in a subdirectory...
|
||||
cd $2
|
||||
mkdir wxMac-${WXVER}
|
||||
cd wxMac-${WXVER}
|
||||
$TAR xf ../wxMac-${WXVER}.tar
|
||||
rm -f -r contrib/src/mmedia contrib/samples/mmedia
|
||||
cd ..
|
||||
rm -f wxMac-${WXVER}.tar
|
||||
$TAR cf $2/wxMac-${WXVER}.tar wxMac-${WXVER}/*
|
||||
rm -f -r wxMac-${WXVER}
|
||||
gzip $2/wxMac-${WXVER}.tar
|
||||
|
||||
### wxUniv: universal-specific files
|
||||
#cd $1
|
||||
#cat $1/distrib/msw/univ.rsp > /tmp/wxuniv_in.txt
|
||||
#expandlines /tmp/wxuniv_in.txt /tmp/wxuniv.txt
|
||||
#$TAR cf $2/wxWindows-${WXVER}-Univ.tar -T /tmp/wxuniv.txt
|
||||
#
|
||||
#echo Re-tarring wxUniversal in a subdirectory...
|
||||
#cd $2
|
||||
#mkdir wxWindows-${WXVER}
|
||||
#cd wxWindows-${WXVER}
|
||||
#$TAR xf ../wxWindows-${WXVER}-Univ.tar
|
||||
#cd ..
|
||||
#rm -f wxWindows-${WXVER}-Univ.tar
|
||||
#$TAR cf $2/wxWindows-${WXVER}-Univ.tar wxWindows-${WXVER}/*
|
||||
#rm -f -r wxWindows-${WXVER}
|
||||
#gzip $2/wxWindows-${WXVER}-Univ.tar
|
||||
|
||||
### wxAll: all distributions in one giant archive
|
||||
cd $1
|
||||
cat $1/distrib/msw/generic.rsp $1/distrib/msw/msw.rsp $1/distrib/msw/vc.rsp $1/distrib/msw/cw.rsp $1/distrib/msw/cw_mac.rsp $1/distrib/msw/gtk.rsp $1/distrib/msw/x11.rsp $1/distrib/msw/motif.rsp $1/distrib/msw/mac.rsp $1/distrib/msw/os2.rsp $1/distrib/msw/x11.rsp $1/distrib/msw/univ.rsp $1/distrib/msw/mgl.rsp $1/distrib/msw/contrib.rsp $1/distrib/msw/utilmake.rsp $1/distrib/msw/utils.rsp $1/distrib/msw/mmedia.rsp $1/distrib/msw/tex2rtf.rsp $1/distrib/msw/stc.rsp $1/distrib/msw/xml.rsp $1/distrib/msw/dialoged.rsp $1/distrib/msw/ogl.rsp $1/distrib/msw/makefile.rsp $1/distrib/msw/tiff.rsp $1/distrib/msw/jpeg.rsp $1/distrib/msw/docsrc.rsp | uniq > /tmp/wxall_in.txt
|
||||
expandlines /tmp/wxall_in.txt /tmp/wxall.txt
|
||||
$TAR cf $2/wxAll-${WXVER}.tar -T /tmp/wxall.txt
|
||||
|
||||
echo Re-tarring wxAll in a subdirectory...
|
||||
cd $2
|
||||
mkdir wxWindows-${WXVER}
|
||||
|
||||
# If we have the full set of VC++ project files,
|
||||
# get them
|
||||
if [ -f $2/extra/wxWindows-${WXVER}-VC.zip ]; then
|
||||
unzip -o $2/extra/wxWindows-${WXVER}-VC.zip
|
||||
else
|
||||
echo "Warning - did not find $2/deliver/extra/wxWindows-${WXVER}-VC.zip"
|
||||
if [ "$SPINWXX11" = "1" ] || [ "$SPINEVERYTHING" = "1" ]; then
|
||||
dospinwxx11
|
||||
fi
|
||||
|
||||
cd wxWindows-${WXVER}
|
||||
$TAR xf ../wxAll-${WXVER}.tar
|
||||
if [ "$SPINWXGTK" = "1" ] || [ "$SPINEVERYTHING" = "1" ]; then
|
||||
dospinwxgtk
|
||||
fi
|
||||
|
||||
# Translate all .dsp and .dsw files to DOS format
|
||||
unix2dos --unix2dos `cat $1/distrib/msw/vc.rsp`
|
||||
if [ "$SPINWXMAC" = "1" ] || [ "$SPINEVERYTHING" = "1" ]; then
|
||||
dospinwxmac
|
||||
fi
|
||||
|
||||
# Copy OS/2 specific configure files
|
||||
cp $1/distrib/os2/os2-specific.zip docs/os2
|
||||
if [ "$SPINWXMOTIF" = "1" ] || [ "$SPINEVERYTHING" = "1" ]; then
|
||||
dospinwxmotif
|
||||
fi
|
||||
|
||||
# Copy the OS/2 files which probably haven't been copied yet
|
||||
mkdir include/wx/os2
|
||||
mkdir src/os2
|
||||
cp $1/include/wx/os2/*.H include/wx/os2
|
||||
cp $1/src/os2/*.CPP $1/src/os2/*.I src/os2
|
||||
if [ "$SPINWXDOCS" = "1" ] || [ "$SPINEVERYTHING" = "1" ]; then
|
||||
dospinwxdocs
|
||||
fi
|
||||
|
||||
# Make all OS/2 files lower case
|
||||
$1/distrib/msw/namedown include/wx/os2/*.H
|
||||
$1/distrib/msw/namedown src/os2/*.CPP src/os2/*.I
|
||||
|
||||
cd ..
|
||||
rm -f wxAll-${WXVER}.tar
|
||||
$TAR cf $2/wxAll-${WXVER}.tar wxWindows-${WXVER}/*
|
||||
rm -f -r wxWindows-${WXVER}
|
||||
gzip $2/wxAll-${WXVER}.tar
|
||||
if [ "$SPINWXALL" = "1" ] || [ "$SPINEVERYTHING" = "1" ]; then
|
||||
dospinwxall
|
||||
fi
|
||||
|
||||
|
||||
### Doc sources
|
||||
#cd $1
|
||||
#cat $1/distrib/msw/docsrc.rsp > /tmp/docsrc_in.txt
|
||||
#expandlines /tmp/docsrc_in.txt /tmp/docsrc.txt
|
||||
#$TAR cf $2/wxWindows-${WXVER}-doc.tar -T /tmp/docsrc.txt
|
||||
#
|
||||
#echo Re-tarring docs in a subdirectory...
|
||||
#cd $2
|
||||
#mkdir wxWindows-${WXVER}
|
||||
#cd wxWindows-${WXVER}
|
||||
#$TAR xf ../wxWindows-${WXVER}-doc.tar
|
||||
#cd ..
|
||||
#rm -f wxWindows-${WXVER}-doc.tar
|
||||
#$TAR cf $2/wxWindows-${WXVER}-doc.tar wxWindows-${WXVER}/*
|
||||
#rm -f -r wxWindows-${WXVER}
|
||||
#gzip $2/wxWindows-${WXVER}-doc.tar
|
||||
|
||||
### HTML docs
|
||||
cd $1
|
||||
cat $1/distrib/msw/wx_html.rsp > /tmp/html_in.txt
|
||||
expandlines /tmp/html_in.txt /tmp/html.txt
|
||||
$TAR cf $2/wxWindows-${WXVER}-HTML.tar -T /tmp/html.txt
|
||||
|
||||
echo Re-tarring HTML in a subdirectory...
|
||||
cd $2
|
||||
mkdir wxWindows-${WXVER}
|
||||
cd wxWindows-${WXVER}
|
||||
$TAR xf ../wxWindows-${WXVER}-HTML.tar
|
||||
cd ..
|
||||
rm -f wxWindows-${WXVER}-HTML.tar
|
||||
$TAR cf $2/wxWindows-${WXVER}-HTML.tar wxWindows-${WXVER}/*
|
||||
rm -f -r wxWindows-${WXVER}
|
||||
gzip $2/wxWindows-${WXVER}-HTML.tar
|
||||
|
||||
### HTB docs
|
||||
cd $1
|
||||
cat $1/distrib/msw/wx_htb.rsp > /tmp/htb_in.txt
|
||||
expandlines /tmp/htb_in.txt /tmp/htb.txt
|
||||
$TAR cf $2/wxWindows-${WXVER}-HTB.tar -T /tmp/htb.txt
|
||||
|
||||
echo Re-tarring HTB in a subdirectory...
|
||||
cd $2
|
||||
mkdir wxWindows-${WXVER}
|
||||
cd wxWindows-${WXVER}
|
||||
$TAR xf ../wxWindows-${WXVER}-HTB.tar
|
||||
cd ..
|
||||
rm -f wxWindows-${WXVER}-HTB.tar
|
||||
$TAR cf $2/wxWindows-${WXVER}-HTB.tar wxWindows-${WXVER}/*
|
||||
rm -f -r wxWindows-${WXVER}
|
||||
gzip $2/wxWindows-${WXVER}-HTB.tar
|
||||
|
||||
### PDF docs
|
||||
cd $1
|
||||
cat $1/distrib/msw/wx_pdf.rsp > /tmp/pdf_in.txt
|
||||
expandlines /tmp/pdf_in.txt /tmp/pdf.txt
|
||||
$TAR cf $2/wxWindows-${WXVER}-PDF.tar -T /tmp/pdf.txt
|
||||
|
||||
echo Re-tarring PDF in a subdirectory...
|
||||
cd $2
|
||||
mkdir wxWindows-${WXVER}
|
||||
cd wxWindows-${WXVER}
|
||||
$TAR xf ../wxWindows-${WXVER}-PDF.tar
|
||||
cd ..
|
||||
rm -f wxWindows-${WXVER}-PDF.tar
|
||||
$TAR cf $2/wxWindows-${WXVER}-PDF.tar wxWindows-${WXVER}/*
|
||||
rm -f -r wxWindows-${WXVER}
|
||||
gzip $2/wxWindows-${WXVER}-PDF.tar
|
||||
|
||||
### Tex2RTF
|
||||
#cd $1
|
||||
#cat $1/distrib/msw/tex2rtf.rsp > /tmp/tex2rtf_in.txt
|
||||
#expandlines /tmp/tex2rtf_in.txt /tmp/tex2rtf.txt
|
||||
#$TAR cf $2/wxWindows-${WXVER}-tex2rtf.tar -T /tmp/tex2rtf.txt
|
||||
#
|
||||
#echo Re-tarring Tex2RTF in a subdirectory...
|
||||
#cd $2
|
||||
#mkdir wxWindows-${WXVER}
|
||||
#cd wxWindows-${WXVER}
|
||||
#$TAR xf ../wxWindows-${WXVER}-tex2rtf.tar
|
||||
#cd ..
|
||||
#rm -f wxWindows-${WXVER}-tex2rtf.tar
|
||||
#$TAR cf $2/wxWindows-${WXVER}-tex2rtf.tar wxWindows-${WXVER}/*
|
||||
#rm -f -r wxWindows-${WXVER}
|
||||
#gzip $2/wxWindows-${WXVER}-tex2rtf.tar
|
||||
|
||||
### OGL
|
||||
#cd $1
|
||||
#cat $1/distrib/msw/ogl.rsp > /tmp/ogl_in.txt
|
||||
#expandlines /tmp/ogl_in.txt /tmp/ogl.txt
|
||||
#$TAR cf $2/wxWindows-${WXVER}-ogl.tar -T /tmp/ogl.txt
|
||||
#
|
||||
#echo Re-tarring OGL in a subdirectory...
|
||||
#cd $2
|
||||
#mkdir wxWindows-${WXVER}
|
||||
#cd wxWindows-${WXVER}
|
||||
#$TAR xf ../wxWindows-${WXVER}-ogl.tar
|
||||
#cd ..
|
||||
#rm -f wxWindows-${WXVER}-ogl.tar
|
||||
#$TAR cf $2/wxWindows-${WXVER}-ogl.tar wxWindows-${WXVER}/*
|
||||
#rm -f -r wxWindows-${WXVER}
|
||||
#gzip $2/wxWindows-${WXVER}-ogl.tar
|
||||
|
||||
### JPEG
|
||||
#cd $1
|
||||
#cat $1/distrib/msw/jpeg.rsp > /tmp/jpeg_in.txt
|
||||
#expandlines /tmp/jpeg_in.txt /tmp/jpeg.txt
|
||||
#$TAR cf $2/wxWindows-${WXVER}-jpeg.tar -T /tmp/jpeg.txt
|
||||
#
|
||||
#echo Re-tarring jpeg in a subdirectory...
|
||||
#cd $2
|
||||
#mkdir wxWindows-${WXVER}
|
||||
#cd wxWindows-${WXVER}
|
||||
#$TAR xf ../wxWindows-${WXVER}-jpeg.tar
|
||||
#cd ..
|
||||
#rm -f wxWindows-${WXVER}-jpeg.tar
|
||||
#$TAR cf $2/wxWindows-${WXVER}-jpeg.tar wxWindows-${WXVER}/*
|
||||
#rm -f -r wxWindows-${WXVER}
|
||||
#gzip $2/wxWindows-${WXVER}-jpeg.tar
|
||||
|
||||
### TIFF
|
||||
#cd $1
|
||||
#cat $1/distrib/msw/tiff.rsp > /tmp/tiff_in.txt
|
||||
#expandlines /tmp/tiff_in.txt /tmp/tiff.txt
|
||||
#$TAR cf $2/wxWindows-${WXVER}-tiff.tar -T /tmp/tiff.txt
|
||||
#
|
||||
#echo Re-tarring docs in a subdirectory...
|
||||
#cd $2
|
||||
#mkdir wxWindows-${WXVER}
|
||||
#cd wxWindows-${WXVER}
|
||||
#$TAR xf ../wxWindows-${WXVER}-tiff.tar
|
||||
#cd ..
|
||||
#rm -f wxWindows-${WXVER}-tiff.tar
|
||||
#$TAR cf $2/wxWindows-${WXVER}-tiff.tar wxWindows-${WXVER}/*
|
||||
#rm -f -r wxWindows-${WXVER}
|
||||
#gzip $2/wxWindows-${WXVER}-tiff.tar
|
||||
|
||||
# Copy readme and other files
|
||||
cd $1
|
||||
cp $1/docs/readme.txt $2/readme-${WXVER}.txt
|
||||
cp $1/docs/changes.txt $2/changes-${WXVER}.txt
|
||||
cp $1/docs/mgl/readme.txt $2/readme-mgl-${WXVER}.txt
|
||||
cp $1/docs/mgl/install.txt $2/install-mgl-${WXVER}.txt
|
||||
cp $1/docs/x11/readme.txt $2/readme-x11-${WXVER}.txt
|
||||
cp $1/docs/x11/readme-nanox.txt $2/readme-nanox-${WXVER}.txt
|
||||
cp $1/docs/x11/install.txt $2/install-x11-${WXVER}.txt
|
||||
cp $1/docs/motif/readme.txt $2/readme-motif-${WXVER}.txt
|
||||
cp $1/docs/motif/install.txt $2/install-motif-${WXVER}.txt
|
||||
cp $1/docs/msw/readme.txt $2/readme-msw-${WXVER}.txt
|
||||
cp $1/docs/msw/install.txt $2/install-msw-${WXVER}.txt
|
||||
cp $1/docs/gtk/readme.txt $2/readme-gtk-${WXVER}.txt
|
||||
cp $1/docs/gtk/install.txt $2/install-gtk-${WXVER}.txt
|
||||
cp $1/docs/mac/readme.txt $2/readme-mac-${WXVER}.txt
|
||||
cp $1/docs/mac/install.txt $2/install-mac-${WXVER}.txt
|
||||
cp $1/docs/os2/install.txt $2/install-os2-${WXVER}.txt
|
||||
|
||||
echo Done!
|
||||
|
@@ -97,6 +97,8 @@
|
||||
$wxGTKINCLUDE{$filename} = $fileflags;
|
||||
} elsif ( $filetype eq "OS2H" ) {
|
||||
$wxOS2PMINCLUDE{$filename} = $fileflags;
|
||||
} elsif ( $filetype eq "MGLH" ) {
|
||||
$wxMGLINCLUDE{$filename} = $fileflags;
|
||||
} elsif ( $filetype eq "X11H" ) {
|
||||
$wxX11INCLUDE{$filename} = $fileflags;
|
||||
} elsif ( $filetype eq "UnivH" ) {
|
||||
|
@@ -30,6 +30,7 @@
|
||||
# MotifH /include/wx/motif
|
||||
# MSWH /include/wx/msw
|
||||
# OS2H /include/wx/os2
|
||||
# MGLH /include/wx/mgl
|
||||
# X11H /include/wx/x11
|
||||
# GenericH /include/wx/generic
|
||||
# HtmlH /include/wx/html
|
||||
@@ -1229,6 +1230,28 @@ textctrl.h X11H
|
||||
toplevel.h X11H
|
||||
window.h X11H
|
||||
|
||||
app.h MGLH
|
||||
bitmap.h MGLH
|
||||
brush.h MGLH
|
||||
clipbrd.h MGLH
|
||||
colour.h MGLH
|
||||
cursor.h MGLH
|
||||
dc.h MGLH
|
||||
dcclient.h MGLH
|
||||
dcmemory.h MGLH
|
||||
dcscreen.h MGLH
|
||||
font.h MGLH
|
||||
fontutil.h MGLH
|
||||
gdiobj.h MGLH
|
||||
icon.h MGLH
|
||||
palette.h MGLH
|
||||
pen.h MGLH
|
||||
popupwin.h MGLH
|
||||
private.h MGLH
|
||||
region.h MGLH
|
||||
toplevel.h MGLH
|
||||
window.h MGLH
|
||||
|
||||
accel.h MSWH
|
||||
app.h MSWH
|
||||
bitmap.h MSWH
|
||||
@@ -1266,7 +1289,7 @@ fontdlg.h MSWH
|
||||
frame.h MSWH
|
||||
gauge95.h MSWH
|
||||
gaugemsw.h MSWH
|
||||
gccpriv.h MSWH
|
||||
gccpriv.h MSWH Base
|
||||
gdiimage.h MSWH
|
||||
gdiobj.h MSWH
|
||||
glcanvas.h MSWH
|
||||
|
@@ -13,7 +13,6 @@
|
||||
IncludeTemplate("filelist.t");
|
||||
|
||||
#! find all our sources
|
||||
$project{"COMMONOBJS"} .= "parser.o ";
|
||||
|
||||
foreach $file (sort keys %wxGeneric) {
|
||||
next if $wxGeneric{$file} =~ /\bNotMGL\b/;
|
||||
|
@@ -170,6 +170,13 @@ wxThread and related classes:
|
||||
OTHER CHANGES
|
||||
=============
|
||||
|
||||
2.4.0
|
||||
-----
|
||||
|
||||
wxMSW:
|
||||
|
||||
- fixed loss of client data in wxChoice::SetString()
|
||||
|
||||
2.3.4
|
||||
-----
|
||||
|
||||
|
@@ -32,6 +32,7 @@ See also <a href="faq.htm">top-level FAQ page</a>.
|
||||
<li><a href="#redhat">Warning about GTK libraries supplied with RedHat</a></li>
|
||||
<li><a href="#bincompat">What range of Intel Linux platforms will a given application binary be usable on?</a></li>
|
||||
<li><a href="#static">Can I statically link the GTK+ library?</a></li>
|
||||
<li><a href="#charinframe">Why does my simple program using <tt>EVT_CHAR</tt> doesn't work?</a></li>
|
||||
</ul>
|
||||
|
||||
<hr>
|
||||
@@ -97,6 +98,17 @@ the image libraries and std C++ lib)."
|
||||
No, this is not possible. It leads to crashes in GTK+.
|
||||
<P>
|
||||
|
||||
<h3><a name="#charinframe">Why does my simple program using
|
||||
<tt>EVT_CHAR</tt> doesn't work?</a></h3>
|
||||
|
||||
In wxGTK, the frames never get focus and so can never receive <tt>CHAR</tt>
|
||||
nor <tt>KEY</tt> events so an <tt>EVT_CHAR</tt> handler for a frame will be
|
||||
never called. To receive these events, you should create a <tt>wxPanel</tt>
|
||||
inside the frame and register the key event handlers for the panel, not the
|
||||
frame.
|
||||
|
||||
<p>
|
||||
|
||||
</font>
|
||||
|
||||
</BODY>
|
||||
|
@@ -89,7 +89,7 @@ on the file name format and the only portable way to answer to this question is
|
||||
to use \helpref{IsAbsolute}{wxfilenameisabsolute} method. To ensure that the
|
||||
filename is absolute you may use \helpref{Normalize}{wxfilenamenormalize}. There
|
||||
is also an inverse function \helpref{MakeRelativeTo}{wxfilenamemakerelativeto}
|
||||
which undoes what \helpref{Normalize(wxPATH\_NORM\_DOTS}{wxfilenamenormalize}
|
||||
which undoes what \helpref{Normalize(wxPATH\_NORM\_DOTS)}{wxfilenamenormalize}
|
||||
does.
|
||||
|
||||
Other functions returning information about the file format provided by this
|
||||
|
@@ -371,7 +371,8 @@ call to this function.
|
||||
|
||||
\membersection{::wxSafeYield}\label{wxsafeyield}
|
||||
|
||||
\func{bool}{wxSafeYield}{\param{wxWindow*}{ win = NULL}}
|
||||
\func{bool}{wxSafeYield}{\param{wxWindow*}{ win = NULL}, \param{bool}{
|
||||
onlyIfNeeded = FALSE}}
|
||||
|
||||
This function is similar to wxYield, except that it disables the user input to
|
||||
all program windows before calling wxYield and re-enables it again
|
||||
@@ -401,7 +402,7 @@ once for each previous successful call to \helpref{wxInitialize}{wxinitialize}.
|
||||
|
||||
Calls \helpref{wxApp::Yield}{wxappyield}.
|
||||
|
||||
This function is kept only for backwards compatibility. Please use
|
||||
This function is kept only for backwards compatibility. Please use
|
||||
the \helpref{wxApp::Yield}{wxappyield} method instead in any new code.
|
||||
|
||||
\wxheading{Include files}
|
||||
@@ -476,10 +477,10 @@ case of using DDE under Windows for command execution). In particular, in this,
|
||||
and only this, case the calling code will not get the notification about
|
||||
process termination.
|
||||
|
||||
If callback isn't NULL and if execution is asynchronous,
|
||||
If callback isn't NULL and if execution is asynchronous,
|
||||
\helpref{wxProcess::OnTerminate}{wxprocessonterminate} will be called when
|
||||
the process finishes. Specifying this parameter also allows you to redirect the
|
||||
standard input and/or output of the process being launched by calling
|
||||
standard input and/or output of the process being launched by calling
|
||||
\helpref{Redirect}{wxprocessredirect}. If the child process IO is redirected,
|
||||
under Windows the process window is not shown by default (this avoids having to
|
||||
flush an unnecessary console for the processes which don't create any windows
|
||||
@@ -509,7 +510,7 @@ single string.}
|
||||
array, any additional ones are the command parameters and the array must be
|
||||
terminated with a NULL pointer.}
|
||||
|
||||
\docparam{flags}{Combination of bit masks {\tt wxEXEC\_ASYNC},
|
||||
\docparam{flags}{Combination of bit masks {\tt wxEXEC\_ASYNC},
|
||||
{\tt wxEXEC\_SYNC} and {\tt wxEXEC\_NOHIDE}}
|
||||
|
||||
\docparam{callback}{An optional pointer to \helpref{wxProcess}{wxprocess}}
|
||||
@@ -617,7 +618,7 @@ See also \helpref{wxExecute}{wxexecute}, \helpref{Exec sample}{sampleexec}.
|
||||
|
||||
\func{bool}{wxShutdown}{\param{wxShutdownFlags}{flags}}
|
||||
|
||||
This function shuts down or reboots the computer depending on the value of the
|
||||
This function shuts down or reboots the computer depending on the value of the
|
||||
{\it flags}. Please notice that doing this requires the corresponding access
|
||||
rights (superuser under Unix, {\tt SE\_SHUTDOWN} privelege under Windows NT)
|
||||
and that this function is only implemented under Unix and Win32.
|
||||
@@ -731,7 +732,7 @@ Returns time of last modification of given file.
|
||||
|
||||
\func{char *}{wxFileNameFromPath}{\param{char *}{path}}
|
||||
|
||||
{\bf NB:} This function is obsolete, please use
|
||||
{\bf NB:} This function is obsolete, please use
|
||||
\helpref{wxFileName::SplitPath}{wxfilenamesplitpath} instead.
|
||||
|
||||
Returns the filename for a full path. The second form returns a pointer to
|
||||
@@ -925,7 +926,7 @@ Under MS Windows, the current drive is also changed if {\it dir} contains a driv
|
||||
|
||||
\func{void}{wxSplitPath}{\param{const char *}{ fullname}, \param{wxString *}{ path}, \param{wxString *}{ name}, \param{wxString *}{ ext}}
|
||||
|
||||
{\bf NB:} This function is obsolete, please use
|
||||
{\bf NB:} This function is obsolete, please use
|
||||
\helpref{wxFileName::SplitPath}{wxfilenamesplitpath} instead.
|
||||
|
||||
This function splits a full file name into components: the path (including possible disk/drive
|
||||
@@ -1127,7 +1128,7 @@ Gets operating system version information.
|
||||
\func{const wxChar *}{wxGetUserHome}{\param{const wxString\& }{user = ""}}
|
||||
|
||||
Returns the home directory for the given user. If the username is empty
|
||||
(default value), this function behaves like
|
||||
(default value), this function behaves like
|
||||
\helpref{wxGetHomeDir}{wxgethomedir}.
|
||||
|
||||
\wxheading{Include files}
|
||||
@@ -2224,7 +2225,7 @@ Find a menu item identifier associated with the given frame's menu bar.
|
||||
|
||||
\func{wxWindow *}{wxFindWindowByLabel}{\param{const wxString\& }{label}, \param{wxWindow *}{parent=NULL}}
|
||||
|
||||
{\bf NB:} This function is obsolete, please use
|
||||
{\bf NB:} This function is obsolete, please use
|
||||
\helpref{wxWindow::FindWindowByLabel}{wxwindowfindwindowbylabel} instead.
|
||||
|
||||
Find a window by its label. Depending on the type of window, the label may be a window title
|
||||
@@ -2240,7 +2241,7 @@ The search is recursive in both cases.
|
||||
|
||||
\func{wxWindow *}{wxFindWindowByName}{\param{const wxString\& }{name}, \param{wxWindow *}{parent=NULL}}
|
||||
|
||||
{\bf NB:} This function is obsolete, please use
|
||||
{\bf NB:} This function is obsolete, please use
|
||||
\helpref{wxWindow::FindWindowByName}{wxwindowfindwindowbyname} instead.
|
||||
|
||||
Find a window by its name (as given in a window constructor or {\bf Create} function call).
|
||||
@@ -2418,7 +2419,7 @@ See also \helpref{wxGetDisplayName}{wxgetdisplayname}.
|
||||
|
||||
\func{void}{wxStripMenuCodes}{\param{char *}{in}, \param{char *}{out}}
|
||||
|
||||
{\bf NB:} This function is obsolete, please use
|
||||
{\bf NB:} This function is obsolete, please use
|
||||
\helpref{wxMenuItem::GetLabelFromText}{wxmenuitemgetlabelfromtext} instead.
|
||||
|
||||
Strips any menu codes from {\it in} and places the result
|
||||
@@ -3071,7 +3072,7 @@ instead.
|
||||
|
||||
\func{void}{wxError}{\param{const wxString\& }{msg}, \param{const wxString\& }{title = "wxWindows Internal Error"}}
|
||||
|
||||
{\bf NB:} This function is now obsolete, please use \helpref{wxLogError}{wxlogerror}
|
||||
{\bf NB:} This function is now obsolete, please use \helpref{wxLogError}{wxlogerror}
|
||||
instead.
|
||||
|
||||
Displays {\it msg} and continues. This writes to standard error under
|
||||
@@ -3086,7 +3087,7 @@ wxWindows errors. See also \helpref{wxFatalError}{wxfatalerror}.
|
||||
|
||||
\func{void}{wxFatalError}{\param{const wxString\& }{msg}, \param{const wxString\& }{title = "wxWindows Fatal Error"}}
|
||||
|
||||
{\bf NB:} This function is now obsolete, please use
|
||||
{\bf NB:} This function is now obsolete, please use
|
||||
\helpref{wxLogFatalError}{wxlogfatalerror} instead.
|
||||
|
||||
Displays {\it msg} and exits. This writes to standard error under Unix,
|
||||
@@ -3251,7 +3252,7 @@ trace masks.
|
||||
This function shows a message to the user in a safe way and should be safe to
|
||||
call even before the application has been initialized or if it is currently in
|
||||
some other strange state (for example, about to crash). Under Windows this
|
||||
function shows a message box using a native dialog instead of
|
||||
function shows a message box using a native dialog instead of
|
||||
\helpref{wxMessageBox}{wxmessagebox} (which might be unsafe to call), elsewhere
|
||||
it simply prints the message to the standard output using the title as prefix.
|
||||
|
||||
@@ -3494,7 +3495,7 @@ builds the \helpref{wxCHECK}{wxcheck} failures don't result in anything.
|
||||
|
||||
To override the default behaviour in the debug builds which is to show the user
|
||||
a dialog asking whether he wants to abort the program, continue or continue
|
||||
ignoring any subsequent assert failures, you may override
|
||||
ignoring any subsequent assert failures, you may override
|
||||
\helpref{wxApp::OnAssert}{wxapponassert} which is called by this function if
|
||||
the global application object exists.
|
||||
|
||||
@@ -3517,7 +3518,7 @@ because it will not be executed in release mode at all.
|
||||
|
||||
\func{}{wxASSERT\_MIN\_BITSIZE}{\param{}{type}, \param{}{size}}
|
||||
|
||||
This macro results in a
|
||||
This macro results in a
|
||||
\helpref{compile time assertion failure}{wxcompiletimeassert} if the size
|
||||
of the given type {\it type} is less than {\it size} bits.
|
||||
|
||||
@@ -3551,14 +3552,14 @@ specified {\it condition} is false. The compiler error message should include
|
||||
the {\it msg} identifier - please note that it must be a valid C++ identifier
|
||||
and not a string unlike in the other cases.
|
||||
|
||||
This macro is mostly useful for testing the expressions involving the
|
||||
This macro is mostly useful for testing the expressions involving the
|
||||
{\tt sizeof} operator as they can't be tested by the preprocessor but it is
|
||||
sometimes desirable to test them at the compile time.
|
||||
|
||||
Note that this macro internally declares a struct whose name it tries to make
|
||||
unique by using the {\tt \_\_LINE\_\_} in it but it may still not work if you
|
||||
use it on the same line in two different source files. In this case you may
|
||||
either change the line in which either of them appears on or use the
|
||||
either change the line in which either of them appears on or use the
|
||||
\helpref{wxCOMPILE\_TIME\_ASSERT2}{wxcompiletimeassert2} macro.
|
||||
|
||||
\wxheading{See also}
|
||||
@@ -3570,7 +3571,7 @@ either change the line in which either of them appears on or use the
|
||||
|
||||
\func{}{wxCOMPILE\_TIME\_ASSERT}{\param{}{condition}, \param{}{msg}, \param{}{name}}
|
||||
|
||||
This macro is identical to \helpref{wxCOMPILE\_TIME\_ASSERT2}{wxcompiletimeassert2}
|
||||
This macro is identical to \helpref{wxCOMPILE\_TIME\_ASSERT2}{wxcompiletimeassert2}
|
||||
except that it allows you to specify a unique {\it name} for the struct
|
||||
internally defined by this macro to avoid getting the compilation errors
|
||||
described \helpref{above}{wxcompiletimeassert}.
|
||||
|
@@ -68,9 +68,11 @@ future versions completely. The use of the latter is especially discouraged as
|
||||
it is not only unsafe but is also much less efficient than
|
||||
\helpref{wxArrayString}{wxarraystring} class.
|
||||
|
||||
In the documentation of the list classes below, you should replace wxNode with
|
||||
wxListName::Node and wxObject with the list element type (i.e. the first
|
||||
parameter of WX\_DECLARE\_LIST) for the template lists.
|
||||
In the documentation of the list classes below, the template notations are
|
||||
used even though these classes are not really templates at all -- but it helps
|
||||
to think about them as if they were. You should replace wxNode<T> with
|
||||
wxListName::Node and T itself with the list element type (i.e. the first
|
||||
parameter of WX\_DECLARE\_LIST).
|
||||
|
||||
\wxheading{Derived from}
|
||||
|
||||
@@ -138,9 +140,9 @@ members for getting to the next or previous node.
|
||||
|
||||
\func{}{wxList}{\param{unsigned int}{ key\_type}}
|
||||
|
||||
\func{}{wxList}{\param{int}{ n}, \param{wxObject *}{objects[]}}
|
||||
\func{}{wxList}{\param{int}{ n}, \param{T *}{objects[]}}
|
||||
|
||||
\func{}{wxList}{\param{wxObject *}{object}, ...}
|
||||
\func{}{wxList}{\param{T *}{object}, ...}
|
||||
|
||||
Constructors. {\it key\_type} is one of wxKEY\_NONE, wxKEY\_INTEGER, or wxKEY\_STRING,
|
||||
and indicates what sort of keying is required (if any).
|
||||
@@ -159,15 +161,16 @@ client data held in the nodes.
|
||||
|
||||
\membersection{wxList::Append}\label{wxlistappend}
|
||||
|
||||
\func{wxNode *}{Append}{\param{wxObject *}{object}}
|
||||
\func{wxNode<T> *}{Append}{\param{T *}{object}}
|
||||
|
||||
\func{wxNode *}{Append}{\param{long}{ key}, \param{wxObject *}{object}}
|
||||
\func{wxNode<T> *}{Append}{\param{long}{ key}, \param{T *}{object}}
|
||||
|
||||
\func{wxNode *}{Append}{\param{const wxString\& }{key}, \param{wxObject *}{object}}
|
||||
\func{wxNode<T> *}{Append}{\param{const wxString\& }{key}, \param{T *}{object}}
|
||||
|
||||
Appends a new {\bf wxNode} to the end of the list and puts a pointer to the
|
||||
\rtfsp{\it object} in the node. The last two forms store a key with the object for
|
||||
later retrieval using the key. The new node is returned in each case.
|
||||
Appends a new \helpref{wxNode}{wxnode} to the end of the list and puts a
|
||||
pointer to the \rtfsp{\it object} in the node. The last two forms store a key
|
||||
with the object for later retrieval using the key. The new node is returned in
|
||||
each case.
|
||||
|
||||
The key string is copied and stored by the list implementation.
|
||||
|
||||
@@ -187,22 +190,26 @@ a node whenever the node is destroyed. The default is {\tt FALSE}.
|
||||
|
||||
\membersection{wxList::DeleteNode}\label{wxlistdeletenode}
|
||||
|
||||
\func{bool}{DeleteNode}{\param{wxNode *}{node}}
|
||||
\func{bool}{DeleteNode}{\param{wxNode<T> *}{node}}
|
||||
|
||||
Deletes the given node from the list, returning {\tt TRUE} if successful.
|
||||
|
||||
\membersection{wxList::DeleteObject}\label{wxlistdeleteobject}
|
||||
|
||||
\func{bool}{DeleteObject}{\param{wxObject *}{object}}
|
||||
\func{bool}{DeleteObject}{\param{T *}{object}}
|
||||
|
||||
Finds the given client {\it object} and deletes the appropriate node from the list, returning
|
||||
{\tt TRUE} if successful. The application must delete the actual object separately.
|
||||
|
||||
\membersection{wxList::Find}\label{wxlistfind}
|
||||
|
||||
\func{wxNode *}{Find}{\param{long}{ key}}
|
||||
\func{wxNode<T> *}{Find}{\param{T *}{ object}}
|
||||
|
||||
\func{wxNode *}{Find}{\param{const wxString\& }{key}}
|
||||
Returns the node whose client date is {\it object} or NULL if none found.
|
||||
|
||||
\func{wxNode<T> *}{Find}{\param{long}{ key}}
|
||||
|
||||
\func{wxNode<T> *}{Find}{\param{const wxString\& }{key}}
|
||||
|
||||
Returns the node whose stored key matches {\it key}. Use on a keyed list only.
|
||||
|
||||
@@ -214,37 +221,37 @@ Returns the number of elements in the list.
|
||||
|
||||
\membersection{wxList::GetFirst}\label{wxlistgetfirst}
|
||||
|
||||
\func{wxNode *}{GetFirst}{\void}
|
||||
\func{wxNode<T> *}{GetFirst}{\void}
|
||||
|
||||
Returns the first node in the list (NULL if the list is empty).
|
||||
|
||||
\membersection{wxList::GetLast}\label{wxlistgetlast}
|
||||
|
||||
\func{wxNode *}{GetLast}{\void}
|
||||
\func{wxNode<T> *}{GetLast}{\void}
|
||||
|
||||
Returns the last node in the list (NULL if the list is empty).
|
||||
|
||||
\membersection{wxList::IndexOf}\label{wxlistindexof}
|
||||
|
||||
\func{int}{IndexOf}{\param{wxObject*}{ obj }}
|
||||
\func{int}{IndexOf}{\param{T*}{ obj }}
|
||||
|
||||
Returns the index of {\it obj} within the list or wxNOT\_FOUND if {\it obj}
|
||||
is not found in the list.
|
||||
|
||||
\membersection{wxList::Insert}\label{wxlistinsert}
|
||||
|
||||
\func{wxNode *}{Insert}{\param{wxObject *}{object}}
|
||||
\func{wxNode<T> *}{Insert}{\param{T *}{object}}
|
||||
|
||||
Insert object at front of list.
|
||||
|
||||
\func{wxNode *}{Insert}{\param{size\_t }{position}, \param{wxObject *}{object}}
|
||||
\func{wxNode<T> *}{Insert}{\param{size\_t }{position}, \param{T *}{object}}
|
||||
|
||||
Insert object before {\it position}, i.e. the index of the new item in the
|
||||
list will be equal to {\it position}. {\it position} should be less than or
|
||||
equal to \helpref{GetCount}{wxlistgetcount}; if it is equal to it, this is the
|
||||
same as calling \helpref{Append}{wxlistappend}.
|
||||
|
||||
\func{wxNode *}{Insert}{\param{wxNode *}{node}, \param{wxObject *}{object}}
|
||||
\func{wxNode<T> *}{Insert}{\param{wxNode<T> *}{node}, \param{T *}{object}}
|
||||
|
||||
Inserts the object before the given {\it node}.
|
||||
|
||||
@@ -257,13 +264,13 @@ Returns {\tt TRUE} if the list is empty, {\tt FALSE} otherwise.
|
||||
% Use different label name to avoid clashing with wxListItem label
|
||||
\membersection{wxList::Item}\label{wxlistitemfunc}
|
||||
|
||||
\constfunc{wxNode *}{Item}{\param{size\_t }{index}}
|
||||
\constfunc{wxNode<T> *}{Item}{\param{size\_t }{index}}
|
||||
|
||||
Returns the node at given position in the list.
|
||||
|
||||
\membersection{wxList::Member}\label{wxlistmember}
|
||||
|
||||
\func{wxNode *}{Member}{\param{wxObject *}{object}}
|
||||
\func{wxNode<T> *}{Member}{\param{T *}{object}}
|
||||
|
||||
{\bf NB:} This function is deprecated, use \helpref{Find}{wxlistfind} instead.
|
||||
|
||||
@@ -271,7 +278,7 @@ Returns the node associated with {\it object} if it is in the list, NULL otherwi
|
||||
|
||||
\membersection{wxList::Nth}\label{wxlistnth}
|
||||
|
||||
\func{wxNode *}{Nth}{\param{int}{ n}}
|
||||
\func{wxNode<T> *}{Nth}{\param{int}{ n}}
|
||||
|
||||
{\bf NB:} This function is deprecated, use \helpref{Item}{wxlistitemfunc} instead.
|
||||
|
||||
|
@@ -380,7 +380,9 @@ wxLogChain *logChain = new wxLogChain(new wxLogStderr);
|
||||
// all the log messages are sent to stderr and also processed as usually
|
||||
...
|
||||
|
||||
delete logChain;
|
||||
// don't delete logChain directly as this would leave a dangling
|
||||
// pointer as active log target, use SetActiveTarget() instead
|
||||
delete wxLog::SetActiveTarget(...something else or NULL...);
|
||||
|
||||
\end{verbatim}
|
||||
|
||||
|
@@ -26,7 +26,7 @@
|
||||
%\special{!/@scaleunit 1 def}
|
||||
\parskip=10pt
|
||||
\parindent=0pt
|
||||
\title{wxWindows 2.3: A portable C++ and Python GUI toolkit}
|
||||
\title{wxWindows 2.3.4: A portable C++ and Python GUI toolkit}
|
||||
\winhelponly{\author{by Julian Smart et al
|
||||
%\winhelponly{\\$$\image{1cm;0cm}{wxwin.wmf}$$}
|
||||
}}
|
||||
|
@@ -36,7 +36,9 @@ Constructs a wxMenuItem object.
|
||||
|
||||
\docparam{id}{Identifier for this menu item, or ID\_SEPARATOR to indicate a separator.}
|
||||
|
||||
\docparam{text}{Text for the menu item, as shown on the menu.}
|
||||
\docparam{text}{Text for the menu item, as shown on the menu. An accelerator
|
||||
key can be specified using the ampersand '\&' character. In order to embed an
|
||||
ampersand character in the menu item text, the ampersand must be doubled.}
|
||||
|
||||
\docparam{helpString}{Optional help string that will be shown on the status bar.}
|
||||
|
||||
|
@@ -1,12 +1,19 @@
|
||||
\section{\class{wxNodeBase}}\label{wxnode}
|
||||
\section{\class{wxNode}}\label{wxnode}
|
||||
|
||||
A node structure used in linked lists (see \helpref{wxList}{wxlist}) and
|
||||
derived classes. You should never use wxNodeBase class directly because it
|
||||
works with untyped (void *) data and this is unsafe. Use wxNode-derived classes
|
||||
which are defined by WX\_DECLARE\_LIST and WX\_DEFINE\_LIST macros instead as
|
||||
described in \helpref{wxList}{wxlist} documentation (see example there). wxNode
|
||||
is defined for compatibility as wxNodeBase containing "wxObject *" pointer, but
|
||||
usage of this class is deprecated.
|
||||
wxNodeBase is the node structure used in linked lists (see
|
||||
\helpref{wxList}{wxlist}) and derived classes. You should never use wxNodeBase
|
||||
class directly, however, because it works with untyped ({\tt void *}) data and
|
||||
this is unsafe. Use wxNodeBase-derived classes which are automatically defined
|
||||
by WX\_DECLARE\_LIST and WX\_DEFINE\_LIST macros instead as described in
|
||||
\helpref{wxList}{wxlist} documentation (see example there). Also note that
|
||||
although there is a class called wxNode, it is defined for backwards
|
||||
compatibility only and usage of this class is strongly deprecated.
|
||||
|
||||
In the documentation below, the type {\tt T} should be thought of as a
|
||||
``template'' parameter: this is the type of data stored in the linked list or,
|
||||
in other words, the first argument of WX\_DECLARE\_LIST macro. Also, wxNode is
|
||||
written as wxNode<T> even though it isn't really a template class -- but it
|
||||
helps to think of it as if it were.
|
||||
|
||||
\wxheading{Derived from}
|
||||
|
||||
@@ -22,32 +29,32 @@ None.
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxNodeBase::GetData}
|
||||
\membersection{wxNode<T>::GetData}
|
||||
|
||||
\func{void *}{Data}{\void}
|
||||
\constfunc{T *}{GetData}{\void}
|
||||
|
||||
Retrieves the client data pointer associated with the node.
|
||||
|
||||
\membersection{wxNodeBase::GetNext}
|
||||
\membersection{wxNode<T>::GetNext}
|
||||
|
||||
\func{wxNodeBase *}{Next}{\void}
|
||||
\constfunc{wxNode<T> *}{GetNext}{\void}
|
||||
|
||||
Retrieves the next node (NULL if at end of list).
|
||||
Retrieves the next node or NULL if this node is the last one.
|
||||
|
||||
\membersection{wxNodeBase::GetPrevious}
|
||||
\membersection{wxNode<T>::GetPrevious}
|
||||
|
||||
\func{wxNodeBase *}{GetPrevious}{\void}
|
||||
\func{wxNode<T> *}{GetPrevious}{\void}
|
||||
|
||||
Retrieves the previous node (NULL if at start of list).
|
||||
Retrieves the previous node or NULL if this node is the first one in the list.
|
||||
|
||||
\membersection{wxNodeBase::SetData}
|
||||
\membersection{wxNode<T>::SetData}
|
||||
|
||||
\func{void}{SetData}{\param{void *}{data}}
|
||||
\func{void}{SetData}{\param{T *}{data}}
|
||||
|
||||
Sets the data associated with the node (usually the pointer will have been
|
||||
set when the node was created).
|
||||
|
||||
\membersection{wxNodeBase::IndexOf}
|
||||
\membersection{wxNode<T>::IndexOf}
|
||||
|
||||
\func{int}{IndexOf}{\void}
|
||||
|
||||
|
@@ -1,7 +1,8 @@
|
||||
\section{\class{wxTreeCtrl}}\label{wxtreectrl}
|
||||
|
||||
A tree control presents information as a hierarchy, with items that may be expanded
|
||||
to show further items. Items in a tree control are referenced by wxTreeItemId handles.
|
||||
to show further items. Items in a tree control are referenced by wxTreeItemId handles,
|
||||
which may be tested for validity by calling wxTreeItemId::IsOk.
|
||||
|
||||
To intercept events from a tree control, use the event table macros described in \helpref{wxTreeEvent}{wxtreeevent}.
|
||||
|
||||
|
@@ -6,7 +6,8 @@ The tree control displays its items in a tree like structure. Each item has its
|
||||
own (optional) icon and a label. An item may be either collapsed (meaning that
|
||||
its children are not visible) or expanded (meaning that its children are
|
||||
shown). Each item in the tree is identified by its {\it itemId} which is of
|
||||
opaque data type {\it wxTreeItemId}.
|
||||
opaque data type {\it wxTreeItemId}. You can test whether an item is valid
|
||||
by calling wxTreeItemId::IsOk.
|
||||
|
||||
The items text and image may be retrieved and changed with
|
||||
\helpref{GetItemText}{wxtreectrlgetitemtext}/\helpref{SetItemText}{wxtreectrlsetitemtext}
|
||||
|
@@ -3,13 +3,13 @@
|
||||
wxWindow is the base class for all windows. Any children of the window will be deleted
|
||||
automatically by the destructor before the window itself is deleted.
|
||||
|
||||
Please note that we documented a number of handler functions (OnChar(), OnMouse() etc.) in this
|
||||
help text. These must not be called by a user program and are documented only for illustration.
|
||||
On several platforms, only a few of these handlers are actually written (they are not always
|
||||
needed) and if you are uncertain on how to add a certain behaviour to a window class, intercept
|
||||
the respective event as usual and call \helpref{wxEvent::Skip}{wxeventskip} so that the native
|
||||
platform can implement its native behaviour or just ignore the event if nothing needs to be
|
||||
done.
|
||||
%Please note that we documented a number of handler functions (OnChar(), OnMouse() etc.) in this
|
||||
%help text. These must not be called by a user program and are documented only for illustration.
|
||||
%On several platforms, only a few of these handlers are actually written (they are not always
|
||||
%needed) and if you are uncertain on how to add a certain behaviour to a window class, intercept
|
||||
%the respective event as usual and call \helpref{wxEvent::Skip}{wxeventskip} so that the native
|
||||
%platform can implement its native behaviour or just ignore the event if nothing needs to be
|
||||
%done.
|
||||
|
||||
\wxheading{Derived from}
|
||||
|
||||
|
@@ -1,26 +1,45 @@
|
||||
Installing and compiling wxMac
|
||||
============================================================
|
||||
|
||||
On MacOS X, you can download Apple's free developer tools (gcc
|
||||
and associated headers and libraries, such as the Carbon API).
|
||||
You can then use configure in a similar way to compiling
|
||||
wxWindows on Linux, (or on Windows using MinGW or Cygwin). See
|
||||
'Apple Developers Tools' below for more details on using
|
||||
configure.
|
||||
|
||||
To target on MacOS 8 or 9, you need to buy Metrowerks
|
||||
CodeWarrior. You can then compile Mac Classic or MacOS X
|
||||
applications on Mac OS X, or compile Mac Classic or MacOS X
|
||||
applications on Mac Classic. However you can only run and debug
|
||||
each type of application on the target operating system.
|
||||
|
||||
Installing latest headers (and Carbon Support)
|
||||
----------------------------------------------
|
||||
|
||||
NOTE : these steps are not necessary for Pro 6, only for Pro 5.3
|
||||
NOTE: these steps are not necessary for CW Pro 6 and above,
|
||||
only for CW Pro 5.3.
|
||||
|
||||
the latest build for carbon support lead to a few changes you will have to
|
||||
The latest build for carbon support leads to a few changes you will have to
|
||||
follow, in order to successfully compile the code (also necessary if you don't
|
||||
want to build the carbon targets)
|
||||
want to build the carbon targets).
|
||||
|
||||
1. you need CodeWarrior Pro 5.3 , i.e. 5.0 with all the upgrades
|
||||
2. you have to download the 3.4.0 (or greater) universal interfaces from
|
||||
ftp://ftp.apple.com/developer/Development_Kits/UniversalHeaders3.4.1.img.bin
|
||||
3. put the Interfaces and Libraries Folder into the MacOS Support folder and replace older versions
|
||||
4. remove from the MacOS Support folder the separate OpenTransport folder
|
||||
1. You need CodeWarrior Pro 5.3 , i.e. 5.0 with all the upgrades.
|
||||
2. You have to download the 3.4.0 (or greater) universal interfaces from
|
||||
ftp://ftp.apple.com/developer/Development_Kits/UniversalHeaders3.4.1.img.bin.
|
||||
3. put the Interfaces and Libraries Folder into the MacOS Support folder and
|
||||
replace older versions.
|
||||
4. remove from the MacOS Support folder the separate OpenTransport folder.
|
||||
5. open the file MacOS Support:MacHeaders:MacHeaders.c and add the line
|
||||
#include <ControlDefinitions.h>
|
||||
after the
|
||||
#include <Controls.h>
|
||||
6. rebuild all MacHeaders from the MacHeaders.mcp project in the same folder
|
||||
6. rebuild all MacHeaders from the MacHeaders.mcp project in the same folder.
|
||||
|
||||
if you want to build the carbon targets, you will also need the latest
|
||||
If you want to build the carbon targets, you will also need the latest
|
||||
carbonized version of MSL from Metrowerks, at the time of writing, this meant
|
||||
applying the changes from the folders
|
||||
applying the changes from the folders:
|
||||
|
||||
CodeWarrior Pro 5:Pre-Release:Carbon & MacOSX Development:Carbonized MSL and
|
||||
CodeWarrior Pro 5:Pre-Release:Carbon & MacOSX Development:Carbonized Runtimes
|
||||
(consult the file CodeWarrior Pro 5:Pre-Release:Carbon & MacOSX Development:Carbon & MacOSX README)
|
||||
@@ -43,8 +62,9 @@ libraries and headers from http://developer.apple.com/opengl/index.html
|
||||
If you want OpenGL support with CodeWarrior, set wxUSE_OPENGL to 1 in
|
||||
include/wx/setup.h
|
||||
|
||||
If you don't want OpenGl support, remove the file "glcanvas.cpp" from the
|
||||
project before compilation and leave the setting at 0
|
||||
If you don't want OpenGl support, set wxUSE_OPENGL to 0 (the
|
||||
default) and remove the file OpenGLLibraryStub from the project
|
||||
before compilation.
|
||||
|
||||
If you want OpenGL support with the Apple Developer Tools under Mac OS X, add
|
||||
--with-opengl to the arguments of configure when configuring wxMac.
|
||||
@@ -56,16 +76,22 @@ The project files are stored as xml text files and converted to binary
|
||||
CodeWarrior projects in the distribution (see AppleScript Files below):
|
||||
- *M5.xml -> *M5.mcp for CodeWarrior 5.3
|
||||
- *M6.xml -> *M6.mcp for CodeWarrior 6
|
||||
- *M7.xml -> *M7.mcp for CodeWarrior 7
|
||||
- *M7.xml -> *M7.mcp for CodeWarrior 7 and above.
|
||||
|
||||
In order to build the library (and then the samples) you need to make the
|
||||
following projects (for 5.3)
|
||||
:src:wxxindowsM5.mcp
|
||||
following projects (for CW 5.3, similar process for CW 7):
|
||||
|
||||
:src:wxwindowsM5.mcp
|
||||
:src:png:pngM5.mcp
|
||||
:src:tiff:tiffM5.mcp
|
||||
:src:jpeg:jpegM5.mcp
|
||||
:src:zlib:zlibM5.mcp
|
||||
|
||||
Note that if using CW 8 and above, when compiling the samples
|
||||
you may need to edit the target settings, click on Language
|
||||
Settings, C/++ Language and remove the forward slash at the
|
||||
start of /wx/wx_cw_d.h (or similar filename).
|
||||
|
||||
AppleScript Files
|
||||
-----------------
|
||||
|
||||
@@ -125,3 +151,4 @@ Missing PLStringFuncsLib
|
||||
------------------------
|
||||
|
||||
You will have to build All Targets for MacOS Support:Libraries:Sources:PLStringFuncs:Glue:PLStringFuncsGlue.mcp
|
||||
|
||||
|
@@ -4,7 +4,7 @@ More Information is available from the wxWindows project home page at
|
||||
|
||||
http://www.wxwindows.org
|
||||
|
||||
For more information, please see changes.txt, todo.txt, and the
|
||||
For more information, please see install.txt, todo.txt, and the
|
||||
manuals.
|
||||
|
||||
Please send problems concerning installation, feature requests,
|
||||
@@ -12,7 +12,7 @@ bug reports or comments to the wxWindows users list. Information
|
||||
on how to subscribe is available from the wxWindows.org homepage.
|
||||
|
||||
Questions/Problems related directly to the mac port can be sent directly
|
||||
csomor@advancedconcepts.ch
|
||||
csomor@advancedconcepts.ch.
|
||||
|
||||
wxWindows/Mac doesn't come with any guarantee whatsoever. It
|
||||
might crash your harddisk or destroy your monitor. It doesn't
|
||||
@@ -20,4 +20,4 @@ claim to be suitable for any special or general purpose.
|
||||
|
||||
Regards,
|
||||
|
||||
Stefan Csomor
|
||||
Stefan Csomor
|
||||
|
@@ -28,6 +28,18 @@ comp.windows.x
|
||||
comp.windows.x.announce
|
||||
comp.windows.x.motif
|
||||
|
||||
Note: submissions to comp.windows.linux.announce must be
|
||||
sent to cola@stump.algebra.com, with short descr
|
||||
of software and location. See http://stump.algebra.com/~cola/
|
||||
NO CROSSPOSTING when sending to this address.
|
||||
|
||||
Pack plenty information into the subject.
|
||||
Don't write a subject like "Foo version 1.1 released". Many
|
||||
people will not know what Foo is, so the subject won't help them
|
||||
select articles. Instead, say "Foo 1.1 - copy files more
|
||||
efficiently than cp". There is no need to say that the article
|
||||
is an announcement, so don't write a subject like "ANNOUNCEMENT:
|
||||
Foo version 1.1 released".
|
||||
|
||||
News and links sites:
|
||||
-----------------------
|
||||
|
@@ -13,7 +13,7 @@ the other Unix-based ports including wxMotif, wxX11 and wxBase.
|
||||
|
||||
a) Do a fresh checkout using the command
|
||||
|
||||
cvs -d :pserver:anoncvs@cvs.wxwindows.org:/home/wxcvs co wxGTK
|
||||
cvs -d :pserver:anoncvs@cvs.wxwindows.org:/packs/cvsroots/wxwindows co wxGTK
|
||||
|
||||
NB: if you realize later that some needed files were not checked out
|
||||
by this command, please modify CVSROOT/modules to include the missing
|
||||
@@ -79,7 +79,7 @@ a) Setting up the RPM tree: you should have the RPM tree set up properly
|
||||
there -- like this you won't forget to update them after redoing "make
|
||||
dist").
|
||||
|
||||
b) Start RPM build by going to RPM_ROOT directory and typing "rpmbuild -ba
|
||||
b) Start RPM build by going to RPM_ROOT directory and typing "rpm -ba
|
||||
SPECS/wxGTK.spec". It may be a good idea to append "2>&1 | tee wxGTK.out"
|
||||
(or "|& tee" if you're using the one true shell ;-) as it might be not
|
||||
easy to detect errors in the verbose rpm output if anything goes wrong.
|
||||
|
@@ -23,95 +23,96 @@
|
||||
// of new/delete
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
class wxCharBuffer
|
||||
{
|
||||
public:
|
||||
wxCharBuffer(const char *str)
|
||||
: m_str(str ? strdup(str) : NULL)
|
||||
{
|
||||
}
|
||||
#define DEFINE_BUFFER(classname, chartype, strdupfunc) \
|
||||
class classname \
|
||||
{ \
|
||||
public: \
|
||||
classname(const chartype *str) \
|
||||
: m_str(str ? strdupfunc(str) : NULL) \
|
||||
{ \
|
||||
} \
|
||||
\
|
||||
classname(size_t len) \
|
||||
: m_str((chartype *)malloc((len + 1)*sizeof(chartype))) \
|
||||
{ \
|
||||
m_str[len] = (chartype)0; \
|
||||
} \
|
||||
\
|
||||
/* no need to check for NULL, free() does it */ \
|
||||
~classname() { free(m_str); } \
|
||||
\
|
||||
/* \
|
||||
WARNING: \
|
||||
\
|
||||
the copy ctor and assignment operators change the passed in object \
|
||||
even although it is declared as "const", so: \
|
||||
\
|
||||
a) it shouldn't be really const \
|
||||
b) you shouldn't use it afterwards (or know that it was reset) \
|
||||
\
|
||||
This is very ugly but is unfortunately needed to make the normal use\
|
||||
of classname buffer objects possible and is very similar to what \
|
||||
std::auto_ptr<> does (as if it were an excuse...) \
|
||||
*/ \
|
||||
\
|
||||
/* \
|
||||
because of the remark above, release() is declared const even if it \
|
||||
isn't really const \
|
||||
*/ \
|
||||
chartype *release() const \
|
||||
{ \
|
||||
chartype *p = m_str; \
|
||||
((classname *)this)->m_str = NULL; \
|
||||
return p; \
|
||||
} \
|
||||
\
|
||||
classname(const classname& src) \
|
||||
: m_str(src.release()) \
|
||||
{ \
|
||||
} \
|
||||
\
|
||||
classname& operator=(const chartype *str) \
|
||||
{ \
|
||||
free(m_str); \
|
||||
m_str = str ? strdupfunc(str) : NULL; \
|
||||
return *this; \
|
||||
} \
|
||||
\
|
||||
classname& operator=(const classname& src) \
|
||||
{ \
|
||||
free(m_str); \
|
||||
m_str = src.release(); \
|
||||
\
|
||||
return *this; \
|
||||
} \
|
||||
\
|
||||
chartype *data() { return m_str; } \
|
||||
const chartype *data() const { return m_str; } \
|
||||
operator const chartype *() const { return m_str; } \
|
||||
chartype operator[](size_t n) const { return m_str[n]; } \
|
||||
\
|
||||
private: \
|
||||
chartype *m_str; \
|
||||
}
|
||||
|
||||
wxCharBuffer(size_t len)
|
||||
: m_str((char *)malloc((len + 1)*sizeof(char)))
|
||||
{
|
||||
m_str[len] = '\0';
|
||||
}
|
||||
|
||||
// no need to check for NULL, free() does it
|
||||
~wxCharBuffer() { free(m_str); }
|
||||
|
||||
wxCharBuffer(/* non const! */ wxCharBuffer& src)
|
||||
: m_str(src.m_str)
|
||||
{
|
||||
// no reference count yet...
|
||||
src.m_str = (char *)NULL;
|
||||
}
|
||||
wxCharBuffer& operator=(/* non const! */ wxCharBuffer& src)
|
||||
{
|
||||
m_str = src.m_str;
|
||||
|
||||
// no reference count yet...
|
||||
src.m_str = (char *)NULL;
|
||||
return *this;
|
||||
}
|
||||
|
||||
char *data() { return m_str; }
|
||||
const char *data() const { return m_str; }
|
||||
operator const char *() const { return m_str; }
|
||||
char operator[](size_t n) const { return m_str[n]; }
|
||||
|
||||
private:
|
||||
char *m_str;
|
||||
};
|
||||
DEFINE_BUFFER(wxCharBuffer, char, strdup);
|
||||
|
||||
#if wxUSE_WCHAR_T
|
||||
|
||||
class wxWCharBuffer
|
||||
inline wchar_t *wxWcsdupReplacement(const wchar_t *wcs)
|
||||
{
|
||||
public:
|
||||
wxWCharBuffer(const wchar_t *wcs)
|
||||
: m_wcs((wchar_t *)NULL)
|
||||
{
|
||||
if (wcs) {
|
||||
size_t siz = (wxWcslen(wcs) + 1)*sizeof(wchar_t);
|
||||
m_wcs = (wchar_t *)malloc(siz);
|
||||
memcpy(m_wcs, wcs, siz);
|
||||
}
|
||||
}
|
||||
wxWCharBuffer(size_t len)
|
||||
: m_wcs((wchar_t *)malloc((len + 1)*sizeof(wchar_t)))
|
||||
{
|
||||
m_wcs[len] = L'\0';
|
||||
}
|
||||
const size_t siz = (wxWcslen(wcs) + 1)*sizeof(wchar_t);
|
||||
wchar_t *wcsCopy = (wchar_t *)malloc(siz);
|
||||
memcpy(wcsCopy, wcs, siz);
|
||||
return wcsCopy;
|
||||
}
|
||||
|
||||
// no need to check for NULL, free() does it
|
||||
~wxWCharBuffer() { free(m_wcs); }
|
||||
|
||||
wxWCharBuffer(/* non const! */ wxWCharBuffer& src)
|
||||
: m_wcs(src.m_wcs)
|
||||
{
|
||||
// no reference count yet...
|
||||
src.m_wcs = (wchar_t *)NULL;
|
||||
}
|
||||
wxWCharBuffer& operator=(/* non const! */ wxWCharBuffer& src)
|
||||
{
|
||||
m_wcs = src.m_wcs;
|
||||
// no reference count yet...
|
||||
src.m_wcs = (wchar_t *)NULL;
|
||||
return *this;
|
||||
}
|
||||
|
||||
wchar_t *data() { return m_wcs; }
|
||||
const wchar_t *data() const { return m_wcs; }
|
||||
operator const wchar_t *() const { return m_wcs; }
|
||||
wchar_t operator[](size_t n) const { return m_wcs[n]; }
|
||||
|
||||
private:
|
||||
wchar_t *m_wcs;
|
||||
};
|
||||
DEFINE_BUFFER(wxWCharBuffer, wchar_t, wxWcsdupReplacement);
|
||||
|
||||
#endif // wxUSE_WCHAR_T
|
||||
|
||||
#undef DEFINE_BUFFER
|
||||
|
||||
#if wxUSE_UNICODE
|
||||
#define wxMB2WXbuf wxWCharBuffer
|
||||
#define wxWX2MBbuf wxCharBuffer
|
||||
|
@@ -218,9 +218,11 @@ public:
|
||||
#elif defined(__WXMAC__)
|
||||
void* m_macPageFormat ;
|
||||
void* m_macPrintSettings ;
|
||||
void* m_macPrintSession ;
|
||||
#endif
|
||||
|
||||
private:
|
||||
|
||||
int m_printNoCopies;
|
||||
int m_printOrientation;
|
||||
bool m_printCollate;
|
||||
|
@@ -714,7 +714,7 @@ int WXDLLEXPORT wxDbConnectionsInUse(void);
|
||||
|
||||
// Writes a message to the wxLog window (stdout usually) when an internal error
|
||||
// situation occurs. This function only works in DEBUG builds
|
||||
const wxChar WXDLLEXPORT *wxDbLogExtendedErrorMsg(const wxChar *userText,
|
||||
const wxChar* WXDLLEXPORT wxDbLogExtendedErrorMsg(const wxChar *userText,
|
||||
wxDb *pDb,
|
||||
const wxChar *ErrFile,
|
||||
int ErrLine);
|
||||
|
@@ -180,6 +180,13 @@ public:
|
||||
// remove all items from the m_Handlers list
|
||||
static void CleanUpHandlers();
|
||||
|
||||
// Returns the native path for a file URL
|
||||
static wxString URLToNativePath( const wxString& url );
|
||||
|
||||
// Returns the file URL for a native path
|
||||
static wxString NativePathToURL( const wxString& path );
|
||||
|
||||
|
||||
protected:
|
||||
wxString m_Path;
|
||||
// the path (location) we are currently in
|
||||
|
@@ -5,6 +5,8 @@
|
||||
|
||||
#if wxUSE_GLCANVAS
|
||||
|
||||
#define wxGLCanvasName _T("GLCanvas")
|
||||
|
||||
#if defined(__WXMSW__)
|
||||
#include "wx/msw/glcanvas.h"
|
||||
#elif defined(__WXMOTIF__)
|
||||
|
@@ -6,7 +6,7 @@
|
||||
// Created: 17/8/98
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) Robert Roebling
|
||||
// Licence: wxWindows licence
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#if defined(__GNUG__) && !defined(__APPLE__)
|
||||
@@ -65,15 +65,15 @@ class WXDLLEXPORT wxGLContext: public wxObject
|
||||
{
|
||||
public:
|
||||
wxGLContext( bool isRGB, wxWindow *win, const wxPalette& palette = wxNullPalette );
|
||||
wxGLContext(
|
||||
bool WXUNUSED(isRGB), wxWindow *win,
|
||||
wxGLContext(
|
||||
bool WXUNUSED(isRGB), wxWindow *win,
|
||||
const wxPalette& WXUNUSED(palette),
|
||||
const wxGLContext *other /* for sharing display lists */
|
||||
);
|
||||
~wxGLContext();
|
||||
|
||||
void SetCurrent();
|
||||
void SetColour(const char *colour);
|
||||
void SetColour(const wxChar *colour);
|
||||
void SwapBuffers();
|
||||
|
||||
void SetupPixelFormat();
|
||||
@@ -91,7 +91,7 @@ public:
|
||||
GtkWidget *m_widget;
|
||||
wxPalette m_palette;
|
||||
wxWindow* m_window;
|
||||
|
||||
|
||||
private:
|
||||
DECLARE_CLASS(wxGLContext)
|
||||
};
|
||||
@@ -110,51 +110,52 @@ public:
|
||||
m_vi = (void*) NULL;
|
||||
m_exposed = FALSE;
|
||||
}
|
||||
wxGLCanvas( wxWindow *parent, wxWindowID id = -1,
|
||||
wxGLCanvas( wxWindow *parent, wxWindowID id = -1,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0, const wxString& name = "GLCanvas",
|
||||
int *attribList = (int*) NULL,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0, const wxString& name = wxGLCanvasName,
|
||||
int *attribList = (int*) NULL,
|
||||
const wxPalette& palette = wxNullPalette );
|
||||
wxGLCanvas( wxWindow *parent, const wxGLContext *shared = (wxGLContext *)NULL,
|
||||
wxWindowID id = -1,
|
||||
wxWindowID id = -1,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0, const wxString& name = "GLCanvas",
|
||||
int *attribList = (int*) NULL,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0, const wxString& name = wxGLCanvasName,
|
||||
int *attribList = (int*) NULL,
|
||||
const wxPalette& palette = wxNullPalette );
|
||||
wxGLCanvas( wxWindow *parent, const wxGLCanvas *shared = (wxGLCanvas *)NULL,
|
||||
wxWindowID id = -1,
|
||||
wxWindowID id = -1,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0, const wxString& name = "GLCanvas",
|
||||
int *attribList = (int*) NULL,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0, const wxString& name = wxGLCanvasName,
|
||||
int *attribList = (int*) NULL,
|
||||
const wxPalette& palette = wxNullPalette );
|
||||
|
||||
bool Create( wxWindow *parent,
|
||||
const wxGLContext *shared = (wxGLContext*)NULL,
|
||||
const wxGLCanvas *shared_context_of = (wxGLCanvas*)NULL,
|
||||
wxWindowID id = -1,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0, const wxString& name = "GLCanvas",
|
||||
int *attribList = (int*) NULL,
|
||||
const wxPalette& palette = wxNullPalette );
|
||||
|
||||
bool Create( wxWindow *parent,
|
||||
const wxGLContext *shared = (wxGLContext*)NULL,
|
||||
const wxGLCanvas *shared_context_of = (wxGLCanvas*)NULL,
|
||||
wxWindowID id = -1,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0,
|
||||
const wxString& name = wxGLCanvasName,
|
||||
int *attribList = (int*) NULL,
|
||||
const wxPalette& palette = wxNullPalette );
|
||||
|
||||
~wxGLCanvas();
|
||||
|
||||
void SetCurrent();
|
||||
void SetColour(const char *colour);
|
||||
void SetColour(const wxChar *colour);
|
||||
void SwapBuffers();
|
||||
|
||||
void OnSize(wxSizeEvent& event);
|
||||
|
||||
|
||||
void OnInternalIdle();
|
||||
|
||||
inline wxGLContext* GetContext() const { return m_glContext; }
|
||||
inline wxGLContext* GetContext() const { return m_glContext; }
|
||||
|
||||
// implementation
|
||||
|
||||
|
||||
wxGLContext *m_glContext,
|
||||
*m_sharedContext;
|
||||
wxGLCanvas *m_sharedContextOf;
|
||||
@@ -162,10 +163,10 @@ public:
|
||||
bool m_canFreeVi;
|
||||
GtkWidget *m_glWidget;
|
||||
bool m_exposed;
|
||||
|
||||
|
||||
// returns an XVisualInfo* based on desired GL attributes;
|
||||
// returns NULL if an appropriate visual is not found. The
|
||||
// caller is reponsible for using XFree() to deallocate
|
||||
// caller is reponsible for using XFree() to deallocate
|
||||
// the returned structure.
|
||||
static void* ChooseGLVisual(int *attribList);
|
||||
|
||||
|
@@ -6,7 +6,7 @@
|
||||
// Created: 17/8/98
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) Robert Roebling
|
||||
// Licence: wxWindows licence
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#if defined(__GNUG__) && !defined(__APPLE__)
|
||||
@@ -65,15 +65,15 @@ class WXDLLEXPORT wxGLContext: public wxObject
|
||||
{
|
||||
public:
|
||||
wxGLContext( bool isRGB, wxWindow *win, const wxPalette& palette = wxNullPalette );
|
||||
wxGLContext(
|
||||
bool WXUNUSED(isRGB), wxWindow *win,
|
||||
wxGLContext(
|
||||
bool WXUNUSED(isRGB), wxWindow *win,
|
||||
const wxPalette& WXUNUSED(palette),
|
||||
const wxGLContext *other /* for sharing display lists */
|
||||
);
|
||||
~wxGLContext();
|
||||
|
||||
void SetCurrent();
|
||||
void SetColour(const char *colour);
|
||||
void SetColour(const wxChar *colour);
|
||||
void SwapBuffers();
|
||||
|
||||
void SetupPixelFormat();
|
||||
@@ -91,7 +91,7 @@ public:
|
||||
GtkWidget *m_widget;
|
||||
wxPalette m_palette;
|
||||
wxWindow* m_window;
|
||||
|
||||
|
||||
private:
|
||||
DECLARE_CLASS(wxGLContext)
|
||||
};
|
||||
@@ -110,51 +110,52 @@ public:
|
||||
m_vi = (void*) NULL;
|
||||
m_exposed = FALSE;
|
||||
}
|
||||
wxGLCanvas( wxWindow *parent, wxWindowID id = -1,
|
||||
wxGLCanvas( wxWindow *parent, wxWindowID id = -1,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0, const wxString& name = "GLCanvas",
|
||||
int *attribList = (int*) NULL,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0, const wxString& name = wxGLCanvasName,
|
||||
int *attribList = (int*) NULL,
|
||||
const wxPalette& palette = wxNullPalette );
|
||||
wxGLCanvas( wxWindow *parent, const wxGLContext *shared = (wxGLContext *)NULL,
|
||||
wxWindowID id = -1,
|
||||
wxWindowID id = -1,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0, const wxString& name = "GLCanvas",
|
||||
int *attribList = (int*) NULL,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0, const wxString& name = wxGLCanvasName,
|
||||
int *attribList = (int*) NULL,
|
||||
const wxPalette& palette = wxNullPalette );
|
||||
wxGLCanvas( wxWindow *parent, const wxGLCanvas *shared = (wxGLCanvas *)NULL,
|
||||
wxWindowID id = -1,
|
||||
wxWindowID id = -1,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0, const wxString& name = "GLCanvas",
|
||||
int *attribList = (int*) NULL,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0, const wxString& name = wxGLCanvasName,
|
||||
int *attribList = (int*) NULL,
|
||||
const wxPalette& palette = wxNullPalette );
|
||||
|
||||
bool Create( wxWindow *parent,
|
||||
const wxGLContext *shared = (wxGLContext*)NULL,
|
||||
const wxGLCanvas *shared_context_of = (wxGLCanvas*)NULL,
|
||||
wxWindowID id = -1,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0, const wxString& name = "GLCanvas",
|
||||
int *attribList = (int*) NULL,
|
||||
const wxPalette& palette = wxNullPalette );
|
||||
|
||||
bool Create( wxWindow *parent,
|
||||
const wxGLContext *shared = (wxGLContext*)NULL,
|
||||
const wxGLCanvas *shared_context_of = (wxGLCanvas*)NULL,
|
||||
wxWindowID id = -1,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0,
|
||||
const wxString& name = wxGLCanvasName,
|
||||
int *attribList = (int*) NULL,
|
||||
const wxPalette& palette = wxNullPalette );
|
||||
|
||||
~wxGLCanvas();
|
||||
|
||||
void SetCurrent();
|
||||
void SetColour(const char *colour);
|
||||
void SetColour(const wxChar *colour);
|
||||
void SwapBuffers();
|
||||
|
||||
void OnSize(wxSizeEvent& event);
|
||||
|
||||
|
||||
void OnInternalIdle();
|
||||
|
||||
inline wxGLContext* GetContext() const { return m_glContext; }
|
||||
inline wxGLContext* GetContext() const { return m_glContext; }
|
||||
|
||||
// implementation
|
||||
|
||||
|
||||
wxGLContext *m_glContext,
|
||||
*m_sharedContext;
|
||||
wxGLCanvas *m_sharedContextOf;
|
||||
@@ -162,10 +163,10 @@ public:
|
||||
bool m_canFreeVi;
|
||||
GtkWidget *m_glWidget;
|
||||
bool m_exposed;
|
||||
|
||||
|
||||
// returns an XVisualInfo* based on desired GL attributes;
|
||||
// returns NULL if an appropriate visual is not found. The
|
||||
// caller is reponsible for using XFree() to deallocate
|
||||
// caller is reponsible for using XFree() to deallocate
|
||||
// the returned structure.
|
||||
static void* ChooseGLVisual(int *attribList);
|
||||
|
||||
|
@@ -97,7 +97,7 @@ public:
|
||||
|
||||
WX_DECLARE_EXPORTED_HASH_MAP(unsigned long, wxImageHistogramEntry,
|
||||
wxIntegerHash, wxIntegerEqual,
|
||||
wxImageHistogram);
|
||||
wxImageHistogram)
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// wxImage
|
||||
|
@@ -208,6 +208,13 @@
|
||||
// Recommended setting: 1 (always)
|
||||
#define wxUSE_LOG_DIALOG 1
|
||||
|
||||
// Support for command line parsing using wxCmdLineParser class.
|
||||
//
|
||||
// Default is 1
|
||||
//
|
||||
// Recommended setting: 1 (can be set to 0 if you don't use the cmd line)
|
||||
#define wxUSE_CMDLINE_PARSER 1
|
||||
|
||||
// Support for multithreaded applications: if 1, compile in thread classes
|
||||
// (thread.h) and make the library a bit more thread safe. Although thread
|
||||
// support is quite stable by now, you may still consider recompiling the
|
||||
|
@@ -17,6 +17,8 @@
|
||||
#pragma interface "wave.h"
|
||||
#endif
|
||||
|
||||
#if wxUSE_WAVE
|
||||
|
||||
#include "wx/object.h"
|
||||
|
||||
class WXDLLEXPORT wxWave : public wxObject
|
||||
@@ -38,12 +40,13 @@ protected:
|
||||
|
||||
private:
|
||||
void* m_sndChan;
|
||||
|
||||
|
||||
wxString m_sndname;
|
||||
void* m_hSnd;
|
||||
int m_waveLength;
|
||||
bool m_isResource;
|
||||
};
|
||||
|
||||
#endif
|
||||
#endif
|
||||
// _WX_WAVE_H_
|
||||
|
@@ -66,7 +66,7 @@ public:
|
||||
~wxGLContext();
|
||||
|
||||
void SetCurrent();
|
||||
void SetColour(const char *colour);
|
||||
void SetColour(const wxChar *colour);
|
||||
void SwapBuffers();
|
||||
|
||||
|
||||
@@ -80,8 +80,6 @@ public:
|
||||
wxWindow* m_window;
|
||||
};
|
||||
|
||||
#define wxGLCanvasName _T("GLCanvas")
|
||||
|
||||
class WXDLLEXPORT wxGLCanvas: public wxWindow
|
||||
{
|
||||
DECLARE_CLASS(wxGLCanvas)
|
||||
@@ -106,7 +104,7 @@ class WXDLLEXPORT wxGLCanvas: public wxWindow
|
||||
const wxPoint& pos, const wxSize& size, long style, const wxString& name);
|
||||
|
||||
void SetCurrent();
|
||||
void SetColour(const char *colour);
|
||||
void SetColour(const wxChar *colour);
|
||||
void SwapBuffers();
|
||||
|
||||
void OnSize(wxSizeEvent& event);
|
||||
|
@@ -209,13 +209,6 @@
|
||||
// Recommended setting: 1 (always)
|
||||
#define wxUSE_LOG 1
|
||||
|
||||
// Support for command line parsing using wxCmdLineParser class.
|
||||
//
|
||||
// Default is 1
|
||||
//
|
||||
// Recommended setting: 1 (can be set to 0 if you don't use the cmd line)
|
||||
#define wxUSE_CMDLINE_PARSER 1
|
||||
|
||||
// Recommended setting: 1
|
||||
#define wxUSE_LOGWINDOW 1
|
||||
|
||||
@@ -225,6 +218,13 @@
|
||||
// Recommended setting: 1
|
||||
#define wxUSE_LOG_DIALOG 1
|
||||
|
||||
// Support for command line parsing using wxCmdLineParser class.
|
||||
//
|
||||
// Default is 1
|
||||
//
|
||||
// Recommended setting: 1 (can be set to 0 if you don't use the cmd line)
|
||||
#define wxUSE_CMDLINE_PARSER 1
|
||||
|
||||
// Support for multithreaded applications: if 1, compile in thread classes
|
||||
// (thread.h) and make the library a bit more thread safe. Although thread
|
||||
// support is quite stable by now, you may still consider recompiling the
|
||||
|
@@ -98,12 +98,7 @@ wxICON_SMALL_REMOVEABLE ICON "wx/msw/removble.ico"
|
||||
// Bitmaps
|
||||
//
|
||||
|
||||
#ifdef __SALFORDC__
|
||||
wxDISABLE_BUTTON_BITMAP BITMAP WXINCDIR"wx/msw/disable.bmp"
|
||||
#else
|
||||
wxDISABLE_BUTTON_BITMAP BITMAP "wx/msw/disable.bmp"
|
||||
#endif
|
||||
|
||||
|
||||
// For wxContextHelpButton
|
||||
csquery BITMAP "wx/msw/csquery.bmp"
|
||||
|
@@ -189,9 +189,6 @@ protected:
|
||||
//
|
||||
// Helper functions
|
||||
//
|
||||
void ChangePage( int nOldSel
|
||||
,int nSel
|
||||
); // change pages
|
||||
|
||||
int m_nSelection; // The current selection (-1 if none)
|
||||
|
||||
|
@@ -399,5 +399,9 @@
|
||||
#define wxUSE_PROTOCOL_FILE 1
|
||||
|
||||
#define wxUSE_GENERIC_MDI_AS_NATIVE 1
|
||||
|
||||
// use wxExpr (a.k.a. PrologIO)
|
||||
#define wxUSE_PROLOGIO 1
|
||||
|
||||
#endif
|
||||
// _WX_SETUP_H_
|
||||
|
@@ -30,6 +30,7 @@ public:
|
||||
{
|
||||
Create(pParent, vId, rsValue, rPos, rSize, lStyle, rValidator, rsName);
|
||||
}
|
||||
~wxTextCtrl();
|
||||
|
||||
bool Create( wxWindow* pParent
|
||||
,wxWindowID vId
|
||||
@@ -154,12 +155,16 @@ public:
|
||||
void OnPaste(wxCommandEvent& rEvent);
|
||||
void OnUndo(wxCommandEvent& rEvent);
|
||||
void OnRedo(wxCommandEvent& rEvent);
|
||||
void OnDelete(wxCommandEvent& rEvent);
|
||||
void OnSelectAll(wxCommandEvent& rEvent);
|
||||
|
||||
void OnUpdateCut(wxUpdateUIEvent& rEvent);
|
||||
void OnUpdateCopy(wxUpdateUIEvent& rEvent);
|
||||
void OnUpdatePaste(wxUpdateUIEvent& rEvent);
|
||||
void OnUpdateUndo(wxUpdateUIEvent& rEvent);
|
||||
void OnUpdateRedo(wxUpdateUIEvent& rEvent);
|
||||
void OnUpdateDelete(wxUpdateUIEvent& rEvent);
|
||||
void OnUpdateSelectAll(wxUpdateUIEvent& rEvent);
|
||||
|
||||
inline bool IsMLE(void) {return m_bIsMLE;}
|
||||
inline void SetMLE(bool bIsMLE) {m_bIsMLE = bIsMLE;}
|
||||
|
@@ -370,7 +370,7 @@ WXDLLEXPORT bool wxYield();
|
||||
WXDLLEXPORT bool wxYieldIfNeeded();
|
||||
|
||||
// Yield to other apps/messages and disable user input
|
||||
WXDLLEXPORT bool wxSafeYield(wxWindow *win = NULL);
|
||||
WXDLLEXPORT bool wxSafeYield(wxWindow *win = NULL, bool onlyIfNeeded = FALSE);
|
||||
|
||||
// Enable or disable input to all top level windows
|
||||
WXDLLEXPORT void wxEnableTopLevelWindows(bool enable = TRUE);
|
||||
|
1509
locale/nl.po
1509
locale/nl.po
File diff suppressed because it is too large
Load Diff
@@ -45,7 +45,7 @@ wxLANGUAGE_CHINESE_TRADITIONAL zh_CN LANG_CHINESE SUBLANG_CHINESE_T
|
||||
wxLANGUAGE_CHINESE_HONGKONG zh_HK LANG_CHINESE SUBLANG_CHINESE_HONGKONG "Chinese (Hongkong)"
|
||||
wxLANGUAGE_CHINESE_MACAU zh_MO LANG_CHINESE SUBLANG_CHINESE_MACAU "Chinese (Macau)"
|
||||
wxLANGUAGE_CHINESE_SINGAPORE zh_SG LANG_CHINESE SUBLANG_CHINESE_SINGAPORE "Chinese (Singapore)"
|
||||
wxLANGUAGE_CHINESE_TAIWAN zh_TW - - "Chinese (Taiwan)"
|
||||
wxLANGUAGE_CHINESE_TAIWAN zh_TW LANG_CHINESE SUBLANG_CHINESE_TRADITIONAL "Chinese (Taiwan)"
|
||||
wxLANGUAGE_CORSICAN co - - "Corsican"
|
||||
wxLANGUAGE_CROATIAN hr_HR LANG_CROATIAN SUBLANG_DEFAULT "Croatian"
|
||||
wxLANGUAGE_CZECH cs_CZ LANG_CZECH SUBLANG_DEFAULT "Czech"
|
||||
|
@@ -48,7 +48,7 @@
|
||||
*/
|
||||
|
||||
// what to test (in alphabetic order)? uncomment the line below to do all tests
|
||||
#define TEST_ALL
|
||||
//#define TEST_ALL
|
||||
#ifdef TEST_ALL
|
||||
#define TEST_ARRAYS
|
||||
#define TEST_CHARSET
|
||||
@@ -93,7 +93,7 @@
|
||||
#undef TEST_ALL
|
||||
static const bool TEST_ALL = TRUE;
|
||||
#else
|
||||
#define TEST_PRINTF
|
||||
#define TEST_DATETIME
|
||||
|
||||
static const bool TEST_ALL = FALSE;
|
||||
#endif
|
||||
@@ -1766,7 +1766,7 @@ static void TestMimeFilename()
|
||||
wxFileType::MessageParameters(fname, _T(""))) )
|
||||
cmd = _T("<no command available>");
|
||||
else
|
||||
cmd = wxString('"') + cmd + '"';
|
||||
cmd = wxString(_T('"')) + cmd + _T('"');
|
||||
|
||||
wxPrintf(_T("To open %s (%s) do %s.\n"),
|
||||
fname.c_str(), desc.c_str(), cmd.c_str());
|
||||
@@ -2169,9 +2169,9 @@ static void TestLongLongComparison()
|
||||
#endif // wxUSE_LONGLONG_WX
|
||||
}
|
||||
|
||||
static void TestLongLongPrint()
|
||||
static void TestLongLongToString()
|
||||
{
|
||||
wxPuts(_T("*** Testing wxLongLong printing ***\n"));
|
||||
wxPuts(_T("*** Testing wxLongLong::ToString() ***\n"));
|
||||
|
||||
for ( size_t n = 0; n < WXSIZEOF(testLongs); n++ )
|
||||
{
|
||||
@@ -2192,8 +2192,7 @@ static void TestLongLongPrintf()
|
||||
|
||||
#ifdef wxLongLongFmtSpec
|
||||
wxLongLong ll = wxLL(0x1234567890abcdef);
|
||||
wxString s = wxString::Format(_T("%") wxLongLongFmtSpec _T("x"),
|
||||
ll.GetValue());
|
||||
wxString s = wxString::Format(_T("%") wxLongLongFmtSpec _T("x"), ll);
|
||||
wxPrintf(_T("0x1234567890abcdef -> %s (%s)\n"),
|
||||
s.c_str(), s == _T("1234567890abcdef") ? _T("ok") : _T("ERROR"));
|
||||
#else // !wxLongLongFmtSpec
|
||||
@@ -2728,7 +2727,7 @@ I am ready for my first lesson today.");
|
||||
{
|
||||
wxChar buf[200];
|
||||
|
||||
wxSprintf (buf, _T("%07Lo"), (wxLongLong_t)040000000000);
|
||||
wxSprintf(buf, _T("%07") wxLongLongFmtSpec _T("o"), wxLL(040000000000));
|
||||
wxPrintf (_T("sprintf (buf, \"%%07Lo\", 040000000000ll) = %s"), buf);
|
||||
|
||||
if (wxStrcmp (buf, _T("40000000000")) != 0)
|
||||
@@ -3171,7 +3170,7 @@ static void TestFtpWuFtpd()
|
||||
}
|
||||
else
|
||||
{
|
||||
size_t size = in->GetSize();
|
||||
size_t size = in->StreamSize();
|
||||
wxPrintf(_T("Reading file %s (%u bytes)..."), filename, size);
|
||||
|
||||
wxChar *data = new wxChar[size];
|
||||
@@ -3254,7 +3253,7 @@ static void TestFtpDownload()
|
||||
}
|
||||
else
|
||||
{
|
||||
size_t size = in->GetSize();
|
||||
size_t size = in->StreamSize();
|
||||
wxPrintf(_T("Reading file %s (%u bytes)..."), filename, size);
|
||||
fflush(stdout);
|
||||
|
||||
@@ -3873,7 +3872,7 @@ static void TestUnicodeToFromAscii()
|
||||
#include "wx/encconv.h"
|
||||
#include "wx/buffer.h"
|
||||
|
||||
static const unsigned char textInUtf8_[] =
|
||||
static const unsigned char utf8koi8r[] =
|
||||
{
|
||||
208, 157, 208, 181, 209, 129, 208, 186, 208, 176, 208, 183, 208, 176,
|
||||
208, 189, 208, 189, 208, 190, 32, 208, 191, 208, 190, 209, 128, 208,
|
||||
@@ -3884,7 +3883,36 @@ static const unsigned char textInUtf8_[] =
|
||||
178, 208, 190, 209, 129, 209, 130, 209, 140, 209, 142, 0
|
||||
};
|
||||
|
||||
#define textInUtf8 ((const char *)textInUtf8_)
|
||||
static const unsigned char utf8iso8859_1[] =
|
||||
{
|
||||
0x53, 0x79, 0x73, 0x74, 0xc3, 0xa8, 0x6d, 0x65, 0x73, 0x20, 0x49, 0x6e,
|
||||
0x74, 0xc3, 0xa9, 0x67, 0x72, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x20, 0x65,
|
||||
0x6e, 0x20, 0x4d, 0xc3, 0xa9, 0x63, 0x61, 0x6e, 0x69, 0x71, 0x75, 0x65,
|
||||
0x20, 0x43, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x71, 0x75, 0x65, 0x20, 0x65,
|
||||
0x74, 0x20, 0x51, 0x75, 0x61, 0x6e, 0x74, 0x69, 0x71, 0x75, 0x65, 0
|
||||
};
|
||||
|
||||
static const unsigned char utf8Invalid[] =
|
||||
{
|
||||
0x3c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x3e, 0x32, 0x30, 0x30,
|
||||
0x32, 0xe5, 0xb9, 0xb4, 0x30, 0x39, 0xe6, 0x9c, 0x88, 0x32, 0x35, 0xe6,
|
||||
0x97, 0xa5, 0x20, 0x30, 0x37, 0xe6, 0x99, 0x82, 0x33, 0x39, 0xe5, 0x88,
|
||||
0x86, 0x35, 0x37, 0xe7, 0xa7, 0x92, 0x3c, 0x2f, 0x64, 0x69, 0x73, 0x70,
|
||||
0x6c, 0x61, 0x79, 0
|
||||
};
|
||||
|
||||
static const struct Utf8Data
|
||||
{
|
||||
const unsigned char *text;
|
||||
size_t len;
|
||||
const wxChar *charset;
|
||||
wxFontEncoding encoding;
|
||||
} utf8data[] =
|
||||
{
|
||||
{ utf8Invalid, WXSIZEOF(utf8Invalid), _T("iso8859-1"), wxFONTENCODING_ISO8859_1 },
|
||||
{ utf8koi8r, WXSIZEOF(utf8koi8r), _T("koi8-r"), wxFONTENCODING_KOI8 },
|
||||
{ utf8iso8859_1, WXSIZEOF(utf8iso8859_1), _T("iso8859-1"), wxFONTENCODING_ISO8859_1 },
|
||||
};
|
||||
|
||||
static void TestUtf8()
|
||||
{
|
||||
@@ -3892,30 +3920,33 @@ static void TestUtf8()
|
||||
|
||||
char buf[1024];
|
||||
wchar_t wbuf[1024];
|
||||
if ( wxConvUTF8.MB2WC(wbuf, textInUtf8, WXSIZEOF(textInUtf8)) <= 0 )
|
||||
|
||||
for ( size_t n = 0; n < WXSIZEOF(utf8data); n++ )
|
||||
{
|
||||
wxPuts(_T("ERROR: UTF-8 decoding failed."));
|
||||
}
|
||||
else
|
||||
{
|
||||
wxCSConv conv(_T("koi8-r"));
|
||||
if ( conv.WC2MB(buf, wbuf, 0 /* not needed wcslen(wbuf) */) <= 0 )
|
||||
const Utf8Data& u8d = utf8data[n];
|
||||
if ( wxConvUTF8.MB2WC(wbuf, (const char *)u8d.text,
|
||||
WXSIZEOF(wbuf)) == (size_t)-1 )
|
||||
{
|
||||
wxPuts(_T("ERROR: conversion to KOI8-R failed."));
|
||||
wxPuts(_T("ERROR: UTF-8 decoding failed."));
|
||||
}
|
||||
else
|
||||
{
|
||||
wxPrintf(_T("The resulting string (in KOI8-R): %s\n"), buf);
|
||||
wxCSConv conv(u8d.charset);
|
||||
if ( conv.WC2MB(buf, wbuf, WXSIZEOF(buf)) == (size_t)-1 )
|
||||
{
|
||||
wxPrintf(_T("ERROR: conversion to %s failed.\n"), u8d.charset);
|
||||
}
|
||||
else
|
||||
{
|
||||
wxPrintf(_T("String in %s: %s\n"), u8d.charset, buf);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ( wxConvUTF8.WC2MB(buf, L"<EFBFBD> la", WXSIZEOF(buf)) <= 0 )
|
||||
{
|
||||
wxPuts(_T("ERROR: conversion to UTF-8 failed."));
|
||||
}
|
||||
else
|
||||
{
|
||||
wxPrintf(_T("The string in UTF-8: %s\n"), buf);
|
||||
wxString s(wxConvUTF8.cMB2WC((const char *)u8d.text), *wxConvCurrent);
|
||||
if ( s.empty() )
|
||||
s = _T("<< conversion failed >>");
|
||||
wxPrintf(_T("String in current cset: %s\n"), s.c_str());
|
||||
|
||||
}
|
||||
|
||||
wxPuts(_T(""));
|
||||
@@ -3928,7 +3959,8 @@ static void TestEncodingConverter()
|
||||
// using wxEncodingConverter should give the same result as above
|
||||
char buf[1024];
|
||||
wchar_t wbuf[1024];
|
||||
if ( wxConvUTF8.MB2WC(wbuf, textInUtf8, WXSIZEOF(textInUtf8)) <= 0 )
|
||||
if ( wxConvUTF8.MB2WC(wbuf, (const char *)utf8koi8r,
|
||||
WXSIZEOF(utf8koi8r)) == (size_t)-1 )
|
||||
{
|
||||
wxPuts(_T("ERROR: UTF-8 decoding failed."));
|
||||
}
|
||||
@@ -3937,7 +3969,7 @@ static void TestEncodingConverter()
|
||||
wxEncodingConverter ec;
|
||||
ec.Init(wxFONTENCODING_UNICODE, wxFONTENCODING_KOI8);
|
||||
ec.Convert(wbuf, buf);
|
||||
wxPrintf(_T("The same string obtained using wxEC: %s\n"), buf);
|
||||
wxPrintf(_T("The same KOI8-R string using wxEC: %s\n"), buf);
|
||||
}
|
||||
|
||||
wxPuts(_T(""));
|
||||
@@ -4594,44 +4626,40 @@ for n in range(20):
|
||||
wmon2 = dt.GetWeekOfMonth(wxDateTime::Sunday_First),
|
||||
dnum = dt.GetDayOfYear();
|
||||
|
||||
wxPrintf(_T("%s: the day number is %d"), d.FormatDate().c_str(), dnum);
|
||||
if ( dnum == wn.dnum )
|
||||
{
|
||||
wxPrintf(_T(" (ok)"));
|
||||
}
|
||||
else
|
||||
wxPrintf(_T("%s: the day number = %d"), d.FormatDate().c_str(), dnum);
|
||||
if ( dnum != wn.dnum )
|
||||
{
|
||||
wxPrintf(_T(" (ERROR: should be %d)"), wn.dnum);
|
||||
}
|
||||
|
||||
wxPrintf(_T(", week in month is %d"), wmon);
|
||||
if ( wmon == wn.wmon )
|
||||
{
|
||||
wxPrintf(_T(" (ok)"));
|
||||
}
|
||||
else
|
||||
wxPrintf(_T(", week in month = %d"), wmon);
|
||||
if ( wmon != wn.wmon )
|
||||
{
|
||||
wxPrintf(_T(" (ERROR: should be %d)"), wn.wmon);
|
||||
}
|
||||
|
||||
wxPrintf(_T(" or %d"), wmon2);
|
||||
if ( wmon2 == wn.wmon2 )
|
||||
{
|
||||
wxPrintf(_T(" (ok)"));
|
||||
}
|
||||
else
|
||||
wxPrintf(_T(" (%d)"), wmon2);
|
||||
if ( wmon2 != wn.wmon2 )
|
||||
{
|
||||
wxPrintf(_T(" (ERROR: should be %d)"), wn.wmon2);
|
||||
}
|
||||
|
||||
wxPrintf(_T(", week in year is %d"), week);
|
||||
if ( week == wn.week )
|
||||
wxPrintf(_T(", week in year = %d"), week);
|
||||
if ( week != wn.week )
|
||||
{
|
||||
wxPuts(_T(" (ok)"));
|
||||
wxPrintf(_T(" (ERROR: should be %d)"), wn.week);
|
||||
}
|
||||
else
|
||||
|
||||
wxPutchar(_T('\n'));
|
||||
|
||||
wxDateTime dt2(1, wxDateTime::Jan, d.year);
|
||||
dt2.SetToTheWeek(wn.week, dt.GetWeekDay());
|
||||
if ( dt2 != dt )
|
||||
{
|
||||
wxPrintf(_T(" (ERROR: should be %d)\n"), wn.week);
|
||||
Date d2;
|
||||
d2.Init(dt2.GetTm());
|
||||
wxPrintf(_T("ERROR: SetToTheWeek() returned %s\n"),
|
||||
d2.FormatDate().c_str());
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -6406,7 +6434,8 @@ int main(int argc, char **argv)
|
||||
TestLongLongConversion();
|
||||
TestBitOperations();
|
||||
TestLongLongComparison();
|
||||
TestLongLongPrint();
|
||||
TestLongLongToString();
|
||||
TestLongLongPrintf();
|
||||
}
|
||||
#endif // TEST_LONGLONG
|
||||
|
||||
@@ -6531,7 +6560,8 @@ int main(int argc, char **argv)
|
||||
|
||||
TestTimeZoneBug();
|
||||
}
|
||||
TestTimeFormat();
|
||||
|
||||
TestTimeWNumber();
|
||||
|
||||
if ( TEST_INTERACTIVE )
|
||||
TestDateTimeInteractive();
|
||||
|
@@ -3,4 +3,3 @@ value1=one
|
||||
# a comment here
|
||||
value2=two
|
||||
value\ with\ spaces\ inside\ it=nothing special
|
||||
path=$PATH
|
||||
|
@@ -24,6 +24,10 @@
|
||||
#include "wx/wx.h"
|
||||
#endif
|
||||
|
||||
#if !wxUSE_RESOURCES
|
||||
#error "You should set wxUSE_RESOURCES to 1 to compile this sample"
|
||||
#endif
|
||||
|
||||
#if wxUSE_UNICODE
|
||||
#error "This sample can't be compiled in Unicode mode."
|
||||
#endif // wxUSE_UNICODE
|
||||
|
@@ -3750,7 +3750,7 @@ int WXDLLEXPORT wxDbConnectionsInUse(void)
|
||||
|
||||
/********** wxDbLogExtendedErrorMsg() **********/
|
||||
// DEBUG ONLY function
|
||||
const wxChar WXDLLEXPORT *wxDbLogExtendedErrorMsg(const wxChar *userText,
|
||||
const wxChar* WXDLLEXPORT wxDbLogExtendedErrorMsg(const wxChar *userText,
|
||||
wxDb *pDb,
|
||||
const wxChar *ErrFile,
|
||||
int ErrLine)
|
||||
|
@@ -146,7 +146,7 @@ wxLibrary::wxLibrary(wxDllType handle)
|
||||
m_handle = handle;
|
||||
|
||||
// Some system may use a local heap for library.
|
||||
get_first = (t_get_first)GetSymbol("wxGetClassFirst");
|
||||
get_first = (t_get_first)GetSymbol(_T("wxGetClassFirst"));
|
||||
// It is a wxWindows DLL.
|
||||
if (get_first)
|
||||
PrepareClasses(get_first());
|
||||
|
@@ -173,7 +173,8 @@ wxFSFile* wxLocalFSHandler::OpenFile(wxFileSystem& WXUNUSED(fs), const wxString&
|
||||
{
|
||||
// location has Unix path separators
|
||||
wxString right = ms_root + GetRightLocation(location);
|
||||
wxFileName fn(right, wxPATH_UNIX);
|
||||
wxString nativePath = wxFileSystem::URLToNativePath(right);
|
||||
wxFileName fn(nativePath, wxPATH_UNIX);
|
||||
|
||||
if (!wxFileExists(fn.GetFullPath()))
|
||||
return (wxFSFile*) NULL;
|
||||
@@ -417,7 +418,61 @@ void wxFileSystem::CleanUpHandlers()
|
||||
m_Handlers.Clear();
|
||||
}
|
||||
|
||||
const static wxString g_unixPathString(wxT("/"));
|
||||
const static wxString g_nativePathString(wxFILE_SEP_PATH);
|
||||
|
||||
// Returns the native path for a file URL
|
||||
wxString wxFileSystem::URLToNativePath( const wxString& url )
|
||||
{
|
||||
wxString path = url ;
|
||||
|
||||
if ( path.Find(wxT("file://")) == 0 )
|
||||
{
|
||||
path = path.Mid(7) ;
|
||||
}
|
||||
|
||||
#ifndef __UNIX__
|
||||
// file urls either start with a forward slash (local harddisk),
|
||||
// otherwise they have a servername/sharename notation,
|
||||
// which only exists on msw and corresponds to a unc
|
||||
if ( path[0u] == wxT('/') && path [1u] != wxT('/'))
|
||||
{
|
||||
path = path.Mid(1) ;
|
||||
}
|
||||
else if ( (url.Find(wxT("file://")) == 0) &&
|
||||
(path.Find(wxT('/')) != wxNOT_FOUND) &&
|
||||
(path.Length() > 1) && (path[1u] != wxT(':')) )
|
||||
{
|
||||
path = wxT("//") + path ;
|
||||
}
|
||||
#endif
|
||||
|
||||
path.Replace(g_unixPathString, g_nativePathString) ;
|
||||
|
||||
return path ;
|
||||
}
|
||||
|
||||
// Returns the file URL for a native path
|
||||
wxString wxFileSystem::NativePathToURL( const wxString& path )
|
||||
{
|
||||
wxString url = path ;
|
||||
|
||||
#ifdef __WXMSW__
|
||||
// unc notation
|
||||
if ( url.Find(wxT("\\\\")) == 0 )
|
||||
{
|
||||
url = url.Mid(2) ;
|
||||
}
|
||||
else
|
||||
#endif
|
||||
{
|
||||
url = wxT("/") + url ;
|
||||
}
|
||||
|
||||
url.Replace(g_nativePathString, g_unixPathString) ;
|
||||
url = wxT("file://") + url ;
|
||||
return url ;
|
||||
}
|
||||
|
||||
|
||||
///// Module:
|
||||
|
@@ -89,7 +89,9 @@ wxFSFile* wxZipFSHandler::OpenFile(wxFileSystem& WXUNUSED(fs), const wxString& l
|
||||
|
||||
if (right.GetChar(0) == wxT('/')) right = right.Mid(1);
|
||||
|
||||
s = new wxZipInputStream(left, right);
|
||||
wxString leftFilename = wxFileSystem::URLToNativePath(left);
|
||||
|
||||
s = new wxZipInputStream(leftFilename, right);
|
||||
if (s && s->IsOk() )
|
||||
{
|
||||
return new wxFSFile(s,
|
||||
|
@@ -676,31 +676,32 @@ bool wxLocale::Init(int language, int flags)
|
||||
|
||||
wxMB2WXbuf retloc = wxSetlocale(LC_ALL, locale);
|
||||
|
||||
if ((const wxChar*)retloc == NULL)
|
||||
if ( !retloc )
|
||||
{
|
||||
// Some C libraries don't like xx_YY form and require xx only
|
||||
wxMB2WXbuf tmp = wxSetlocale(LC_ALL, locale.Mid(0,2));
|
||||
retloc = tmp;
|
||||
retloc = wxSetlocale(LC_ALL, locale.Mid(0,2));
|
||||
}
|
||||
if ((const wxChar*)retloc == NULL)
|
||||
if ( !retloc )
|
||||
{
|
||||
// Some C libraries (namely glibc) still use old ISO 639,
|
||||
// so will translate the abbrev for them
|
||||
wxString mid = locale.Mid(0,2);
|
||||
if (mid == wxT("he")) locale = wxT("iw") + locale.Mid(3);
|
||||
else if (mid == wxT("id")) locale = wxT("in") + locale.Mid(3);
|
||||
else if (mid == wxT("yi")) locale = wxT("ji") + locale.Mid(3);
|
||||
wxMB2WXbuf tmp = wxSetlocale(LC_ALL, locale);
|
||||
retloc = tmp;
|
||||
if (mid == wxT("he"))
|
||||
locale = wxT("iw") + locale.Mid(3);
|
||||
else if (mid == wxT("id"))
|
||||
locale = wxT("in") + locale.Mid(3);
|
||||
else if (mid == wxT("yi"))
|
||||
locale = wxT("ji") + locale.Mid(3);
|
||||
|
||||
retloc = wxSetlocale(LC_ALL, locale);
|
||||
}
|
||||
if ((const wxChar*)retloc == NULL)
|
||||
if ( !retloc )
|
||||
{
|
||||
// (This time, we changed locale in previous if-branch, so try again.)
|
||||
// Some C libraries don't like xx_YY form and require xx only
|
||||
wxMB2WXbuf tmp = wxSetlocale(LC_ALL, locale.Mid(0,2));
|
||||
retloc = tmp;
|
||||
retloc = wxSetlocale(LC_ALL, locale.Mid(0,2));
|
||||
}
|
||||
if ((const wxChar*)retloc == NULL)
|
||||
if ( !retloc )
|
||||
{
|
||||
wxLogError(wxT("Cannot set locale to '%s'."), locale.c_str());
|
||||
return FALSE;
|
||||
@@ -720,8 +721,7 @@ bool wxLocale::Init(int language, int flags)
|
||||
SORT_DEFAULT);
|
||||
if (SetThreadLocale(lcid))
|
||||
{
|
||||
wxMB2WXbuf tmp = wxSetlocale(LC_ALL, wxEmptyString);
|
||||
retloc = tmp;
|
||||
retloc = wxSetlocale(LC_ALL, wxEmptyString);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -745,24 +745,22 @@ bool wxLocale::Init(int language, int flags)
|
||||
}
|
||||
else
|
||||
{
|
||||
wxMB2WXbuf tmp = wxSetlocale(LC_ALL, locale);
|
||||
retloc = tmp;
|
||||
retloc = wxSetlocale(LC_ALL, locale);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
wxMB2WXbuf tmp = wxSetlocale(LC_ALL, wxEmptyString);
|
||||
retloc = tmp;
|
||||
retloc = wxSetlocale(LC_ALL, wxEmptyString);
|
||||
}
|
||||
|
||||
if ((const wxChar*)retloc == NULL)
|
||||
if ( !retloc )
|
||||
{
|
||||
wxLogError(wxT("Cannot set locale to language %s."), name.c_str());
|
||||
return FALSE;
|
||||
}
|
||||
#elif defined(__WXMAC__)
|
||||
#elif defined(__WXMAC__) || defined(__WXPM__)
|
||||
wxMB2WXbuf retloc = wxSetlocale(LC_ALL , wxEmptyString);
|
||||
#else
|
||||
return FALSE;
|
||||
@@ -2174,7 +2172,7 @@ void wxLocale::InitLanguagesDB()
|
||||
LNG(wxLANGUAGE_CHINESE_HONGKONG, "zh_HK", LANG_CHINESE , SUBLANG_CHINESE_HONGKONG , "Chinese (Hongkong)")
|
||||
LNG(wxLANGUAGE_CHINESE_MACAU, "zh_MO", LANG_CHINESE , SUBLANG_CHINESE_MACAU , "Chinese (Macau)")
|
||||
LNG(wxLANGUAGE_CHINESE_SINGAPORE, "zh_SG", LANG_CHINESE , SUBLANG_CHINESE_SINGAPORE , "Chinese (Singapore)")
|
||||
LNG(wxLANGUAGE_CHINESE_TAIWAN, "zh_TW", 0 , 0 , "Chinese (Taiwan)")
|
||||
LNG(wxLANGUAGE_CHINESE_TAIWAN, "zh_TW", LANG_CHINESE , SUBLANG_CHINESE_TRADITIONAL , "Chinese (Taiwan)")
|
||||
LNG(wxLANGUAGE_CORSICAN, "co" , 0 , 0 , "Corsican")
|
||||
LNG(wxLANGUAGE_CROATIAN, "hr_HR", LANG_CROATIAN , SUBLANG_DEFAULT , "Croatian")
|
||||
LNG(wxLANGUAGE_CZECH, "cs_CZ", LANG_CZECH , SUBLANG_DEFAULT , "Czech")
|
||||
|
@@ -58,7 +58,7 @@
|
||||
|
||||
void wxStreamBuffer::SetError(wxStreamError err)
|
||||
{
|
||||
if ( m_stream->m_lasterror == wxSTREAM_NO_ERROR )
|
||||
if ( m_stream && m_stream->m_lasterror == wxSTREAM_NO_ERROR )
|
||||
m_stream->m_lasterror = err;
|
||||
}
|
||||
|
||||
@@ -198,7 +198,9 @@ bool wxStreamBuffer::FillBuffer()
|
||||
{
|
||||
wxInputStream *inStream = GetInputStream();
|
||||
|
||||
wxCHECK_MSG( inStream, FALSE, _T("should have a stream in wxStreamBuffer") );
|
||||
// It's legal to have no stream, so we don't complain about it just return FALSE
|
||||
if ( !inStream )
|
||||
return FALSE;
|
||||
|
||||
size_t count = inStream->OnSysRead(m_buffer_start, m_buffer_size);
|
||||
if ( !count )
|
||||
@@ -259,7 +261,7 @@ void wxStreamBuffer::GetFromBuffer(void *buffer, size_t size)
|
||||
void wxStreamBuffer::PutToBuffer(const void *buffer, size_t size)
|
||||
{
|
||||
size_t left = GetBytesLeft();
|
||||
|
||||
|
||||
if ( size > left )
|
||||
{
|
||||
if ( m_fixed )
|
||||
@@ -451,7 +453,7 @@ size_t wxStreamBuffer::Write(const void *buffer, size_t size)
|
||||
// lasterror is reset before all new IO calls
|
||||
m_stream->Reset();
|
||||
}
|
||||
|
||||
|
||||
size_t ret = 0;
|
||||
|
||||
if ( !HasBuffer() && m_fixed )
|
||||
@@ -479,7 +481,7 @@ size_t wxStreamBuffer::Write(const void *buffer, size_t size)
|
||||
//
|
||||
// FIXME: fine, but if it fails we should (re)try writing it by
|
||||
// chunks as this will (hopefully) always work (VZ)
|
||||
|
||||
|
||||
if ( size > left && m_fixed )
|
||||
{
|
||||
PutToBuffer(buffer, left);
|
||||
@@ -510,7 +512,7 @@ size_t wxStreamBuffer::Write(const void *buffer, size_t size)
|
||||
// i am not entirely sure what we do this for
|
||||
m_stream->m_lastcount = ret;
|
||||
}
|
||||
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -736,7 +738,7 @@ size_t wxInputStream::GetWBack(void *buf, size_t size)
|
||||
toget = size;
|
||||
}
|
||||
|
||||
// copy the data from the cache
|
||||
// copy the data from the cache
|
||||
memcpy(buf, m_wback + m_wbackcur, toget);
|
||||
|
||||
m_wbackcur += toget;
|
||||
@@ -871,11 +873,11 @@ off_t wxInputStream::SeekI(off_t pos, wxSeekMode mode)
|
||||
buffer if possible, but is it really needed? It would only work
|
||||
when seeking in wxFromCurrent mode, else it would invalidate
|
||||
anyway... */
|
||||
|
||||
|
||||
if (m_wback)
|
||||
{
|
||||
wxLogDebug( wxT("Seeking in stream which has data written back to it.") );
|
||||
|
||||
|
||||
free(m_wback);
|
||||
m_wback = NULL;
|
||||
m_wbacksize = 0;
|
||||
@@ -1108,13 +1110,13 @@ off_t wxBufferedInputStream::SeekI(off_t pos, wxSeekMode mode)
|
||||
if (m_wback)
|
||||
{
|
||||
wxLogDebug( wxT("Seeking in stream which has data written back to it.") );
|
||||
|
||||
|
||||
free(m_wback);
|
||||
m_wback = NULL;
|
||||
m_wbacksize = 0;
|
||||
m_wbackcur = 0;
|
||||
}
|
||||
|
||||
|
||||
return m_i_streambuf->Seek(pos, mode);
|
||||
}
|
||||
|
||||
@@ -1124,7 +1126,7 @@ off_t wxBufferedInputStream::TellI() const
|
||||
|
||||
if (pos != wxInvalidOffset)
|
||||
pos -= (m_wbacksize - m_wbackcur);
|
||||
|
||||
|
||||
return pos;
|
||||
}
|
||||
|
||||
|
@@ -872,11 +872,15 @@ wxWindowDisabler::~wxWindowDisabler()
|
||||
|
||||
// Yield to other apps/messages and disable user input to all windows except
|
||||
// the given one
|
||||
bool wxSafeYield(wxWindow *win)
|
||||
bool wxSafeYield(wxWindow *win, bool onlyIfNeeded)
|
||||
{
|
||||
wxWindowDisabler wd(win);
|
||||
|
||||
bool rc = wxYield();
|
||||
bool rc;
|
||||
if (onlyIfNeeded)
|
||||
rc = wxYieldIfNeeded();
|
||||
else
|
||||
rc = wxYield();
|
||||
|
||||
return rc;
|
||||
}
|
||||
@@ -900,13 +904,13 @@ bool wxSetDetectableAutoRepeat( bool WXUNUSED(flag) )
|
||||
const wxChar *wxGetInstallPrefix()
|
||||
{
|
||||
wxString prefix;
|
||||
|
||||
|
||||
if ( wxGetEnv(wxT("WXPREFIX"), &prefix) )
|
||||
return prefix.c_str();
|
||||
|
||||
|
||||
#ifdef wxINSTALL_PREFIX
|
||||
return wxT(wxINSTALL_PREFIX);
|
||||
#else
|
||||
#else
|
||||
return wxT("");
|
||||
#endif
|
||||
}
|
||||
|
@@ -180,6 +180,7 @@ ALL_HEADERS = \
|
||||
unix/gsockunx.h \
|
||||
unix/mimetype.h \
|
||||
msw/dde.h \
|
||||
msw/gccpriv.h \
|
||||
msw/mimetype.h \
|
||||
msw/winundef.h \
|
||||
protocol/file.h \
|
||||
|
@@ -878,6 +878,8 @@ void wxFileCtrl::GoToParentDir()
|
||||
SetItemState( id, wxLIST_STATE_SELECTED, wxLIST_STATE_SELECTED );
|
||||
EnsureVisible( id );
|
||||
}
|
||||
|
||||
m_labelDir->SetLabel(m_dirName);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -3835,6 +3835,8 @@ void wxGrid::Init()
|
||||
|
||||
// init attr cache
|
||||
m_attrCache.row = -1;
|
||||
m_attrCache.col = -1;
|
||||
m_attrCache.attr = NULL;
|
||||
|
||||
// TODO: something better than this ?
|
||||
//
|
||||
@@ -8638,13 +8640,16 @@ void wxGrid::ClearAttrCache()
|
||||
|
||||
void wxGrid::CacheAttr(int row, int col, wxGridCellAttr *attr) const
|
||||
{
|
||||
wxGrid *self = (wxGrid *)this; // const_cast
|
||||
if ( attr != NULL )
|
||||
{
|
||||
wxGrid *self = (wxGrid *)this; // const_cast
|
||||
|
||||
self->ClearAttrCache();
|
||||
self->m_attrCache.row = row;
|
||||
self->m_attrCache.col = col;
|
||||
self->m_attrCache.attr = attr;
|
||||
wxSafeIncRef(attr);
|
||||
self->ClearAttrCache();
|
||||
self->m_attrCache.row = row;
|
||||
self->m_attrCache.col = col;
|
||||
self->m_attrCache.attr = attr;
|
||||
wxSafeIncRef(attr);
|
||||
}
|
||||
}
|
||||
|
||||
bool wxGrid::LookupAttr(int row, int col, wxGridCellAttr **attr) const
|
||||
|
@@ -121,7 +121,7 @@ void wxGLContext::SetCurrent()
|
||||
}
|
||||
}
|
||||
|
||||
void wxGLContext::SetColour(const char *colour)
|
||||
void wxGLContext::SetColour(const wxChar *colour)
|
||||
{
|
||||
float r = 0.0;
|
||||
float g = 0.0;
|
||||
@@ -441,7 +441,7 @@ void wxGLCanvas::SetCurrent()
|
||||
m_glContext->SetCurrent();
|
||||
}
|
||||
|
||||
void wxGLCanvas::SetColour( const char *colour )
|
||||
void wxGLCanvas::SetColour( const wxChar *colour )
|
||||
{
|
||||
if (m_glContext)
|
||||
m_glContext->SetColour( colour );
|
||||
|
@@ -113,9 +113,16 @@ static wxString wxReplaceUnderscore( const wxString& title )
|
||||
|
||||
/* GTK 1.2 wants to have "_" instead of "&" for accelerators */
|
||||
wxString str;
|
||||
for ( pc = title; *pc != wxT('\0'); pc++ )
|
||||
pc = title;
|
||||
while (*pc != wxT('\0'))
|
||||
{
|
||||
if (*pc == wxT('&'))
|
||||
if ((*pc == wxT('&')) && (*(pc+1) == wxT('&')))
|
||||
{
|
||||
// "&" is doubled to indicate "&" instead of accelerator
|
||||
++pc;
|
||||
str << wxT('&');
|
||||
}
|
||||
else if (*pc == wxT('&'))
|
||||
{
|
||||
#if GTK_CHECK_VERSION(1, 2, 0)
|
||||
str << wxT('_');
|
||||
@@ -149,6 +156,7 @@ static wxString wxReplaceUnderscore( const wxString& title )
|
||||
|
||||
str << *pc;
|
||||
}
|
||||
++pc;
|
||||
}
|
||||
return str;
|
||||
}
|
||||
@@ -577,10 +585,9 @@ wxString wxMenuBar::GetLabelTop( size_t pos ) const
|
||||
wxString text( menu->GetTitle() );
|
||||
for ( const wxChar *pc = text.c_str(); *pc; pc++ )
|
||||
{
|
||||
if ( *pc == wxT('_') || *pc == wxT('&') )
|
||||
if ( *pc == wxT('_') )
|
||||
{
|
||||
// '_' is the escape character for GTK+ and '&' is the one for
|
||||
// wxWindows - skip both of them
|
||||
// '_' is the escape character for GTK+
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -789,12 +796,6 @@ wxString wxMenuItemBase::GetLabelFromText(const wxString& text)
|
||||
}
|
||||
#endif
|
||||
|
||||
if ( *pc == wxT('&') )
|
||||
{
|
||||
// wxMSW escapes &
|
||||
continue;
|
||||
}
|
||||
|
||||
label += *pc;
|
||||
}
|
||||
|
||||
@@ -848,13 +849,18 @@ void wxMenuItem::DoSetText( const wxString& str )
|
||||
// '\t' is the deliminator indicating a hot key
|
||||
m_text.Empty();
|
||||
const wxChar *pc = str;
|
||||
for (; (*pc != wxT('\0')) && (*pc != wxT('\t')); pc++ )
|
||||
while ( (*pc != wxT('\0')) && (*pc != wxT('\t')) )
|
||||
{
|
||||
if (*pc == wxT('&'))
|
||||
if ((*pc == wxT('&')) && (*(pc+1) == wxT('&')))
|
||||
{
|
||||
// "&" is doubled to indicate "&" instead of accelerator
|
||||
++pc;
|
||||
m_text << wxT('&');
|
||||
}
|
||||
else if (*pc == wxT('&'))
|
||||
{
|
||||
m_text << wxT('_');
|
||||
}
|
||||
|
||||
#if GTK_CHECK_VERSION(2, 0, 0)
|
||||
else if ( *pc == wxT('_') ) // escape underscores
|
||||
{
|
||||
@@ -878,10 +884,12 @@ void wxMenuItem::DoSetText( const wxString& str )
|
||||
m_text << wxT('\\'); /* ... and replace them with back slashes */
|
||||
}
|
||||
#endif
|
||||
else
|
||||
else {
|
||||
m_text << *pc;
|
||||
}
|
||||
++pc;
|
||||
}
|
||||
|
||||
|
||||
m_hotKey = wxT("");
|
||||
|
||||
if(*pc == wxT('\t'))
|
||||
@@ -957,9 +965,9 @@ wxString wxMenuItem::GetFactoryPath() const
|
||||
|
||||
for ( const wxChar *pc = m_text.c_str(); *pc; pc++ )
|
||||
{
|
||||
if ( *pc == wxT('_') || *pc == wxT('&') )
|
||||
if ( *pc == wxT('_') )
|
||||
{
|
||||
// remove '_' and '&' unconditionally
|
||||
// remove '_' unconditionally
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@@ -2267,7 +2267,7 @@ wxWindow *wxWindowBase::FindFocus()
|
||||
|
||||
// VZ: Robert commented the code using out so it generates warnings: should
|
||||
// be either fixed or removed completely
|
||||
#if 0
|
||||
//** #if 0
|
||||
|
||||
static void gtk_window_destroy_callback( GtkWidget* widget, wxWindow *win )
|
||||
{
|
||||
@@ -2275,7 +2275,7 @@ static void gtk_window_destroy_callback( GtkWidget* widget, wxWindow *win )
|
||||
win->GetEventHandler()->ProcessEvent(event);
|
||||
}
|
||||
|
||||
#endif // 0
|
||||
//** #endif // 0
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// "realize" from m_widget
|
||||
@@ -2928,9 +2928,9 @@ void wxWindowGTK::ConnectWidget( GtkWidget *widget )
|
||||
GTK_SIGNAL_FUNC(gtk_window_leave_callback), (gpointer)this );
|
||||
|
||||
// This keeps crashing on me. RR.
|
||||
//
|
||||
// gtk_signal_connect( GTK_OBJECT(widget), "destroy",
|
||||
// GTK_SIGNAL_FUNC(gtk_window_destroy_callback), (gpointer)this );
|
||||
//**
|
||||
gtk_signal_connect( GTK_OBJECT(widget), "destroy",
|
||||
GTK_SIGNAL_FUNC(gtk_window_destroy_callback), (gpointer)this );
|
||||
}
|
||||
|
||||
bool wxWindowGTK::Destroy()
|
||||
@@ -4591,10 +4591,8 @@ wxPoint wxGetMousePosition()
|
||||
|
||||
int x, y;
|
||||
GdkWindow* windowAtPtr = gdk_window_at_pointer(& x, & y);
|
||||
if (!windowAtPtr)
|
||||
return wxPoint(-999, -999);
|
||||
|
||||
Display *display = GDK_WINDOW_XDISPLAY(windowAtPtr);
|
||||
Display *display = windowAtPtr ? GDK_WINDOW_XDISPLAY(windowAtPtr) : GDK_DISPLAY();
|
||||
Window rootWindow = RootWindowOfScreen (DefaultScreenOfDisplay(display));
|
||||
Window rootReturn, childReturn;
|
||||
int rootX, rootY, winX, winY;
|
||||
|
@@ -121,7 +121,7 @@ void wxGLContext::SetCurrent()
|
||||
}
|
||||
}
|
||||
|
||||
void wxGLContext::SetColour(const char *colour)
|
||||
void wxGLContext::SetColour(const wxChar *colour)
|
||||
{
|
||||
float r = 0.0;
|
||||
float g = 0.0;
|
||||
@@ -441,7 +441,7 @@ void wxGLCanvas::SetCurrent()
|
||||
m_glContext->SetCurrent();
|
||||
}
|
||||
|
||||
void wxGLCanvas::SetColour( const char *colour )
|
||||
void wxGLCanvas::SetColour( const wxChar *colour )
|
||||
{
|
||||
if (m_glContext)
|
||||
m_glContext->SetColour( colour );
|
||||
|
@@ -113,9 +113,16 @@ static wxString wxReplaceUnderscore( const wxString& title )
|
||||
|
||||
/* GTK 1.2 wants to have "_" instead of "&" for accelerators */
|
||||
wxString str;
|
||||
for ( pc = title; *pc != wxT('\0'); pc++ )
|
||||
pc = title;
|
||||
while (*pc != wxT('\0'))
|
||||
{
|
||||
if (*pc == wxT('&'))
|
||||
if ((*pc == wxT('&')) && (*(pc+1) == wxT('&')))
|
||||
{
|
||||
// "&" is doubled to indicate "&" instead of accelerator
|
||||
++pc;
|
||||
str << wxT('&');
|
||||
}
|
||||
else if (*pc == wxT('&'))
|
||||
{
|
||||
#if GTK_CHECK_VERSION(1, 2, 0)
|
||||
str << wxT('_');
|
||||
@@ -149,6 +156,7 @@ static wxString wxReplaceUnderscore( const wxString& title )
|
||||
|
||||
str << *pc;
|
||||
}
|
||||
++pc;
|
||||
}
|
||||
return str;
|
||||
}
|
||||
@@ -577,10 +585,9 @@ wxString wxMenuBar::GetLabelTop( size_t pos ) const
|
||||
wxString text( menu->GetTitle() );
|
||||
for ( const wxChar *pc = text.c_str(); *pc; pc++ )
|
||||
{
|
||||
if ( *pc == wxT('_') || *pc == wxT('&') )
|
||||
if ( *pc == wxT('_') )
|
||||
{
|
||||
// '_' is the escape character for GTK+ and '&' is the one for
|
||||
// wxWindows - skip both of them
|
||||
// '_' is the escape character for GTK+
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -789,12 +796,6 @@ wxString wxMenuItemBase::GetLabelFromText(const wxString& text)
|
||||
}
|
||||
#endif
|
||||
|
||||
if ( *pc == wxT('&') )
|
||||
{
|
||||
// wxMSW escapes &
|
||||
continue;
|
||||
}
|
||||
|
||||
label += *pc;
|
||||
}
|
||||
|
||||
@@ -848,13 +849,18 @@ void wxMenuItem::DoSetText( const wxString& str )
|
||||
// '\t' is the deliminator indicating a hot key
|
||||
m_text.Empty();
|
||||
const wxChar *pc = str;
|
||||
for (; (*pc != wxT('\0')) && (*pc != wxT('\t')); pc++ )
|
||||
while ( (*pc != wxT('\0')) && (*pc != wxT('\t')) )
|
||||
{
|
||||
if (*pc == wxT('&'))
|
||||
if ((*pc == wxT('&')) && (*(pc+1) == wxT('&')))
|
||||
{
|
||||
// "&" is doubled to indicate "&" instead of accelerator
|
||||
++pc;
|
||||
m_text << wxT('&');
|
||||
}
|
||||
else if (*pc == wxT('&'))
|
||||
{
|
||||
m_text << wxT('_');
|
||||
}
|
||||
|
||||
#if GTK_CHECK_VERSION(2, 0, 0)
|
||||
else if ( *pc == wxT('_') ) // escape underscores
|
||||
{
|
||||
@@ -878,10 +884,12 @@ void wxMenuItem::DoSetText( const wxString& str )
|
||||
m_text << wxT('\\'); /* ... and replace them with back slashes */
|
||||
}
|
||||
#endif
|
||||
else
|
||||
else {
|
||||
m_text << *pc;
|
||||
}
|
||||
++pc;
|
||||
}
|
||||
|
||||
|
||||
m_hotKey = wxT("");
|
||||
|
||||
if(*pc == wxT('\t'))
|
||||
@@ -957,9 +965,9 @@ wxString wxMenuItem::GetFactoryPath() const
|
||||
|
||||
for ( const wxChar *pc = m_text.c_str(); *pc; pc++ )
|
||||
{
|
||||
if ( *pc == wxT('_') || *pc == wxT('&') )
|
||||
if ( *pc == wxT('_') )
|
||||
{
|
||||
// remove '_' and '&' unconditionally
|
||||
// remove '_' unconditionally
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@@ -2267,7 +2267,7 @@ wxWindow *wxWindowBase::FindFocus()
|
||||
|
||||
// VZ: Robert commented the code using out so it generates warnings: should
|
||||
// be either fixed or removed completely
|
||||
#if 0
|
||||
//** #if 0
|
||||
|
||||
static void gtk_window_destroy_callback( GtkWidget* widget, wxWindow *win )
|
||||
{
|
||||
@@ -2275,7 +2275,7 @@ static void gtk_window_destroy_callback( GtkWidget* widget, wxWindow *win )
|
||||
win->GetEventHandler()->ProcessEvent(event);
|
||||
}
|
||||
|
||||
#endif // 0
|
||||
//** #endif // 0
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// "realize" from m_widget
|
||||
@@ -2928,9 +2928,9 @@ void wxWindowGTK::ConnectWidget( GtkWidget *widget )
|
||||
GTK_SIGNAL_FUNC(gtk_window_leave_callback), (gpointer)this );
|
||||
|
||||
// This keeps crashing on me. RR.
|
||||
//
|
||||
// gtk_signal_connect( GTK_OBJECT(widget), "destroy",
|
||||
// GTK_SIGNAL_FUNC(gtk_window_destroy_callback), (gpointer)this );
|
||||
//**
|
||||
gtk_signal_connect( GTK_OBJECT(widget), "destroy",
|
||||
GTK_SIGNAL_FUNC(gtk_window_destroy_callback), (gpointer)this );
|
||||
}
|
||||
|
||||
bool wxWindowGTK::Destroy()
|
||||
@@ -4591,10 +4591,8 @@ wxPoint wxGetMousePosition()
|
||||
|
||||
int x, y;
|
||||
GdkWindow* windowAtPtr = gdk_window_at_pointer(& x, & y);
|
||||
if (!windowAtPtr)
|
||||
return wxPoint(-999, -999);
|
||||
|
||||
Display *display = GDK_WINDOW_XDISPLAY(windowAtPtr);
|
||||
Display *display = windowAtPtr ? GDK_WINDOW_XDISPLAY(windowAtPtr) : GDK_DISPLAY();
|
||||
Window rootWindow = RootWindowOfScreen (DefaultScreenOfDisplay(display));
|
||||
Window rootReturn, childReturn;
|
||||
int rootX, rootY, winX, winY;
|
||||
|
@@ -104,11 +104,8 @@ int wxPrintDialog::ShowModal()
|
||||
::UMAPrClose(NULL) ;
|
||||
#else
|
||||
#if PM_USE_SESSION_APIS
|
||||
PMPrintSession macPrintSession = kPMNoReference;
|
||||
Boolean accepted;
|
||||
|
||||
err = ::UMAPrOpen(&macPrintSession) ;
|
||||
if ( err == noErr )
|
||||
{
|
||||
m_printDialogData.ConvertToNative() ;
|
||||
|
||||
@@ -123,13 +120,13 @@ int wxPrintDialog::ShowModal()
|
||||
if ((err == noErr) &&
|
||||
(m_printDialogData.GetPrintData().m_macPageFormat != kPMNoPageFormat))
|
||||
{
|
||||
err = PMSessionDefaultPageFormat((PMPrintSession)macPrintSession,
|
||||
err = PMSessionDefaultPageFormat((PMPrintSession)m_printDialogData.GetPrintData().m_macPrintSession,
|
||||
(PMPageFormat)m_printDialogData.GetPrintData().m_macPageFormat);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
err = PMSessionValidatePageFormat((PMPrintSession)macPrintSession,
|
||||
err = PMSessionValidatePageFormat((PMPrintSession)m_printDialogData.GetPrintData().m_macPrintSession,
|
||||
(PMPageFormat)m_printDialogData.GetPrintData().m_macPageFormat,
|
||||
kPMDontWantBoolean);
|
||||
}
|
||||
@@ -145,13 +142,13 @@ int wxPrintDialog::ShowModal()
|
||||
if ((err == noErr) &&
|
||||
(m_printDialogData.GetPrintData().m_macPrintSettings != kPMNoPrintSettings))
|
||||
{
|
||||
err = PMSessionDefaultPrintSettings((PMPrintSession)macPrintSession,
|
||||
err = PMSessionDefaultPrintSettings((PMPrintSession)m_printDialogData.GetPrintData().m_macPrintSession,
|
||||
(PMPrintSettings)m_printDialogData.GetPrintData().m_macPrintSettings);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
err = PMSessionValidatePrintSettings((PMPrintSession)macPrintSession,
|
||||
err = PMSessionValidatePrintSettings((PMPrintSession)m_printDialogData.GetPrintData().m_macPrintSession,
|
||||
(PMPrintSettings)m_printDialogData.GetPrintData().m_macPrintSettings,
|
||||
kPMDontWantBoolean);
|
||||
}
|
||||
@@ -165,7 +162,7 @@ int wxPrintDialog::ShowModal()
|
||||
// Display the Print dialog.
|
||||
if (err == noErr)
|
||||
{
|
||||
err = PMSessionPrintDialog((PMPrintSession)macPrintSession,
|
||||
err = PMSessionPrintDialog((PMPrintSession)m_printDialogData.GetPrintData().m_macPrintSession,
|
||||
(PMPrintSettings)m_printDialogData.GetPrintData().m_macPrintSettings,
|
||||
(PMPageFormat)m_printDialogData.GetPrintData().m_macPageFormat,
|
||||
&accepted);
|
||||
@@ -186,7 +183,6 @@ int wxPrintDialog::ShowModal()
|
||||
wxMessageDialog dialog( NULL , message , "", wxICON_HAND | wxOK) ;
|
||||
dialog.ShowModal();
|
||||
}
|
||||
::UMAPrClose(&macPrintSession) ;
|
||||
#else
|
||||
#pragma warning "TODO: Printing for carbon without session apis"
|
||||
#endif
|
||||
@@ -256,11 +252,8 @@ int wxPageSetupDialog::ShowModal()
|
||||
::UMAPrClose(NULL) ;
|
||||
#else
|
||||
#if PM_USE_SESSION_APIS
|
||||
PMPrintSession macPrintSession = kPMNoReference;
|
||||
Boolean accepted;
|
||||
|
||||
err = ::UMAPrOpen(&macPrintSession) ;
|
||||
if ( err == noErr )
|
||||
{
|
||||
m_pageSetupData.ConvertToNative() ;
|
||||
|
||||
@@ -275,13 +268,13 @@ int wxPageSetupDialog::ShowModal()
|
||||
if ((err == noErr) &&
|
||||
(m_pageSetupData.GetPrintData().m_macPageFormat != kPMNoPageFormat))
|
||||
{
|
||||
err = PMSessionDefaultPageFormat((PMPrintSession)macPrintSession,
|
||||
err = PMSessionDefaultPageFormat((PMPrintSession)m_pageSetupData.GetPrintData().m_macPrintSession,
|
||||
(PMPageFormat)m_pageSetupData.GetPrintData().m_macPageFormat);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
err = PMSessionValidatePageFormat((PMPrintSession)macPrintSession,
|
||||
err = PMSessionValidatePageFormat((PMPrintSession)m_pageSetupData.GetPrintData().m_macPrintSession,
|
||||
(PMPageFormat)m_pageSetupData.GetPrintData().m_macPageFormat,
|
||||
kPMDontWantBoolean);
|
||||
}
|
||||
@@ -289,7 +282,7 @@ int wxPageSetupDialog::ShowModal()
|
||||
// Display the Page Setup dialog.
|
||||
if (err == noErr)
|
||||
{
|
||||
err = PMSessionPageSetupDialog((PMPrintSession)macPrintSession,
|
||||
err = PMSessionPageSetupDialog((PMPrintSession)m_pageSetupData.GetPrintData().m_macPrintSession,
|
||||
(PMPageFormat)m_pageSetupData.GetPrintData().m_macPageFormat,
|
||||
&accepted);
|
||||
if ((err == noErr) && !accepted)
|
||||
@@ -312,7 +305,6 @@ int wxPageSetupDialog::ShowModal()
|
||||
wxMessageDialog dialog( NULL , message , "", wxICON_HAND | wxOK) ;
|
||||
dialog.ShowModal();
|
||||
}
|
||||
::UMAPrClose(&macPrintSession) ;
|
||||
#else
|
||||
#pragma warning "TODO: Printing for carbon without session apis"
|
||||
#endif
|
||||
|
@@ -295,7 +295,10 @@ void wxMacPrintPreview::DetermineScaling(void)
|
||||
m_pageWidth = x ;
|
||||
m_pageHeight = y ;
|
||||
m_isOk = true ;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
m_isOk = false ;
|
||||
}
|
||||
// At 100%, the page should look about page-size on the screen.
|
||||
// m_previewScale = (float)((float)screenWidth/(float)printerWidth);
|
||||
|
@@ -17,6 +17,8 @@
|
||||
#include "wx/string.h"
|
||||
#include "wx/wave.h"
|
||||
|
||||
#if wxUSE_WAVE
|
||||
|
||||
#ifdef __WXMAC__
|
||||
#include "wx/mac/private.h"
|
||||
#ifndef __DARWIN__
|
||||
@@ -57,7 +59,7 @@ bool wxWave::Create(const wxString& fileName, bool isResource)
|
||||
ret = true;
|
||||
else
|
||||
{ /*
|
||||
if (sndChan)
|
||||
if (sndChan)
|
||||
{ // we're playing
|
||||
FSClose(SndRefNum);
|
||||
SndRefNum = 0;
|
||||
@@ -66,7 +68,7 @@ bool wxWave::Create(const wxString& fileName, bool isResource)
|
||||
sndChan = 0;
|
||||
KillTimer(0,timerID);
|
||||
}
|
||||
|
||||
|
||||
if (!lpSnd)
|
||||
return true;
|
||||
|
||||
@@ -81,14 +83,14 @@ bool wxWave::Create(const wxString& fileName, bool isResource)
|
||||
|
||||
sndChan->qLength = 128;
|
||||
|
||||
if (noErr != SndNewChannel (&sndChan, sampledSynth, initMono | initNoInterp, 0))
|
||||
if (noErr != SndNewChannel (&sndChan, sampledSynth, initMono | initNoInterp, 0))
|
||||
{
|
||||
free(sndChan);
|
||||
sndChan = 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!(SndRefNum = MacOpenSndFile ((char *)lpSnd)))
|
||||
if (!(SndRefNum = MacOpenSndFile ((char *)lpSnd)))
|
||||
{
|
||||
SndDisposeChannel(sndChan, TRUE);
|
||||
free(sndChan);
|
||||
@@ -102,7 +104,7 @@ bool wxWave::Create(const wxString& fileName, bool isResource)
|
||||
if (fdwSound & SND_ASYNC)
|
||||
async = true;
|
||||
|
||||
if (SndStartFilePlay(sndChan, SndRefNum, 0, 81920, 0, 0, 0, async) != noErr)
|
||||
if (SndStartFilePlay(sndChan, SndRefNum, 0, 81920, 0, 0, 0, async) != noErr)
|
||||
{
|
||||
FSClose (SndRefNum);
|
||||
SndRefNum = 0;
|
||||
@@ -112,11 +114,11 @@ bool wxWave::Create(const wxString& fileName, bool isResource)
|
||||
return false;
|
||||
}
|
||||
|
||||
if (async)
|
||||
if (async)
|
||||
{ // haven't finish yet
|
||||
timerID = SetTimer(0, 0, 250, TimerCallBack);
|
||||
}
|
||||
else
|
||||
}
|
||||
else
|
||||
{
|
||||
FSClose (SndRefNum);
|
||||
SndRefNum = 0;
|
||||
@@ -125,7 +127,7 @@ bool wxWave::Create(const wxString& fileName, bool isResource)
|
||||
sndChan = 0;
|
||||
}*/
|
||||
}
|
||||
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -135,8 +137,8 @@ bool wxWave::Play(bool async, bool looped) const
|
||||
{
|
||||
char lpSnd[32];
|
||||
bool ret = false;
|
||||
|
||||
if (m_isResource)
|
||||
|
||||
if (m_isResource)
|
||||
{
|
||||
#if TARGET_CARBON
|
||||
c2pstrcpy((unsigned char *)lpSnd, m_sndname);
|
||||
@@ -145,13 +147,13 @@ bool wxWave::Play(bool async, bool looped) const
|
||||
c2pstr((char *) lpSnd);
|
||||
#endif
|
||||
SndListHandle hSnd;
|
||||
|
||||
|
||||
hSnd = (SndListHandle) GetNamedResource('snd ',(const unsigned char *) lpSnd);
|
||||
|
||||
if ((hSnd != NULL) && (SndPlay((SndChannelPtr)m_sndChan, (SndListHandle) hSnd, async) == noErr))
|
||||
ret = true;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -159,7 +161,7 @@ bool wxWave::Play(bool async, bool looped) const
|
||||
bool wxWave::FreeData()
|
||||
{
|
||||
bool ret = false;
|
||||
|
||||
|
||||
if (m_isResource)
|
||||
{
|
||||
m_sndname.Empty();
|
||||
@@ -167,9 +169,9 @@ bool wxWave::FreeData()
|
||||
}
|
||||
else
|
||||
{
|
||||
//TODO,
|
||||
//TODO,
|
||||
}
|
||||
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -188,7 +190,7 @@ bool wxWave::FreeData()
|
||||
// first, get the volume reference number for the file. Start by
|
||||
// making a Pstring with just the volume name
|
||||
strcpy ((char *) name, path);
|
||||
if (c = strchr ((char *) name, ':'))
|
||||
if (c = strchr ((char *) name, ':'))
|
||||
{
|
||||
c++;
|
||||
*c = '\0';
|
||||
@@ -220,7 +222,7 @@ bool wxWave::FreeData()
|
||||
|
||||
void TimerCallBack(HWND hwnd,UINT uMsg,UINT idEvent,DWORD dwTime)
|
||||
{
|
||||
if(!sndChan)
|
||||
if(!sndChan)
|
||||
{
|
||||
KillTimer(0,timerID);
|
||||
return;
|
||||
@@ -243,3 +245,4 @@ void TimerCallBack(HWND hwnd,UINT uMsg,UINT idEvent,DWORD dwTime)
|
||||
}*/
|
||||
|
||||
|
||||
#endif
|
||||
|
@@ -104,11 +104,8 @@ int wxPrintDialog::ShowModal()
|
||||
::UMAPrClose(NULL) ;
|
||||
#else
|
||||
#if PM_USE_SESSION_APIS
|
||||
PMPrintSession macPrintSession = kPMNoReference;
|
||||
Boolean accepted;
|
||||
|
||||
err = ::UMAPrOpen(&macPrintSession) ;
|
||||
if ( err == noErr )
|
||||
{
|
||||
m_printDialogData.ConvertToNative() ;
|
||||
|
||||
@@ -123,13 +120,13 @@ int wxPrintDialog::ShowModal()
|
||||
if ((err == noErr) &&
|
||||
(m_printDialogData.GetPrintData().m_macPageFormat != kPMNoPageFormat))
|
||||
{
|
||||
err = PMSessionDefaultPageFormat((PMPrintSession)macPrintSession,
|
||||
err = PMSessionDefaultPageFormat((PMPrintSession)m_printDialogData.GetPrintData().m_macPrintSession,
|
||||
(PMPageFormat)m_printDialogData.GetPrintData().m_macPageFormat);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
err = PMSessionValidatePageFormat((PMPrintSession)macPrintSession,
|
||||
err = PMSessionValidatePageFormat((PMPrintSession)m_printDialogData.GetPrintData().m_macPrintSession,
|
||||
(PMPageFormat)m_printDialogData.GetPrintData().m_macPageFormat,
|
||||
kPMDontWantBoolean);
|
||||
}
|
||||
@@ -145,13 +142,13 @@ int wxPrintDialog::ShowModal()
|
||||
if ((err == noErr) &&
|
||||
(m_printDialogData.GetPrintData().m_macPrintSettings != kPMNoPrintSettings))
|
||||
{
|
||||
err = PMSessionDefaultPrintSettings((PMPrintSession)macPrintSession,
|
||||
err = PMSessionDefaultPrintSettings((PMPrintSession)m_printDialogData.GetPrintData().m_macPrintSession,
|
||||
(PMPrintSettings)m_printDialogData.GetPrintData().m_macPrintSettings);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
err = PMSessionValidatePrintSettings((PMPrintSession)macPrintSession,
|
||||
err = PMSessionValidatePrintSettings((PMPrintSession)m_printDialogData.GetPrintData().m_macPrintSession,
|
||||
(PMPrintSettings)m_printDialogData.GetPrintData().m_macPrintSettings,
|
||||
kPMDontWantBoolean);
|
||||
}
|
||||
@@ -165,7 +162,7 @@ int wxPrintDialog::ShowModal()
|
||||
// Display the Print dialog.
|
||||
if (err == noErr)
|
||||
{
|
||||
err = PMSessionPrintDialog((PMPrintSession)macPrintSession,
|
||||
err = PMSessionPrintDialog((PMPrintSession)m_printDialogData.GetPrintData().m_macPrintSession,
|
||||
(PMPrintSettings)m_printDialogData.GetPrintData().m_macPrintSettings,
|
||||
(PMPageFormat)m_printDialogData.GetPrintData().m_macPageFormat,
|
||||
&accepted);
|
||||
@@ -186,7 +183,6 @@ int wxPrintDialog::ShowModal()
|
||||
wxMessageDialog dialog( NULL , message , "", wxICON_HAND | wxOK) ;
|
||||
dialog.ShowModal();
|
||||
}
|
||||
::UMAPrClose(&macPrintSession) ;
|
||||
#else
|
||||
#pragma warning "TODO: Printing for carbon without session apis"
|
||||
#endif
|
||||
@@ -256,11 +252,8 @@ int wxPageSetupDialog::ShowModal()
|
||||
::UMAPrClose(NULL) ;
|
||||
#else
|
||||
#if PM_USE_SESSION_APIS
|
||||
PMPrintSession macPrintSession = kPMNoReference;
|
||||
Boolean accepted;
|
||||
|
||||
err = ::UMAPrOpen(&macPrintSession) ;
|
||||
if ( err == noErr )
|
||||
{
|
||||
m_pageSetupData.ConvertToNative() ;
|
||||
|
||||
@@ -275,13 +268,13 @@ int wxPageSetupDialog::ShowModal()
|
||||
if ((err == noErr) &&
|
||||
(m_pageSetupData.GetPrintData().m_macPageFormat != kPMNoPageFormat))
|
||||
{
|
||||
err = PMSessionDefaultPageFormat((PMPrintSession)macPrintSession,
|
||||
err = PMSessionDefaultPageFormat((PMPrintSession)m_pageSetupData.GetPrintData().m_macPrintSession,
|
||||
(PMPageFormat)m_pageSetupData.GetPrintData().m_macPageFormat);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
err = PMSessionValidatePageFormat((PMPrintSession)macPrintSession,
|
||||
err = PMSessionValidatePageFormat((PMPrintSession)m_pageSetupData.GetPrintData().m_macPrintSession,
|
||||
(PMPageFormat)m_pageSetupData.GetPrintData().m_macPageFormat,
|
||||
kPMDontWantBoolean);
|
||||
}
|
||||
@@ -289,7 +282,7 @@ int wxPageSetupDialog::ShowModal()
|
||||
// Display the Page Setup dialog.
|
||||
if (err == noErr)
|
||||
{
|
||||
err = PMSessionPageSetupDialog((PMPrintSession)macPrintSession,
|
||||
err = PMSessionPageSetupDialog((PMPrintSession)m_pageSetupData.GetPrintData().m_macPrintSession,
|
||||
(PMPageFormat)m_pageSetupData.GetPrintData().m_macPageFormat,
|
||||
&accepted);
|
||||
if ((err == noErr) && !accepted)
|
||||
@@ -312,7 +305,6 @@ int wxPageSetupDialog::ShowModal()
|
||||
wxMessageDialog dialog( NULL , message , "", wxICON_HAND | wxOK) ;
|
||||
dialog.ShowModal();
|
||||
}
|
||||
::UMAPrClose(&macPrintSession) ;
|
||||
#else
|
||||
#pragma warning "TODO: Printing for carbon without session apis"
|
||||
#endif
|
||||
|
@@ -295,7 +295,10 @@ void wxMacPrintPreview::DetermineScaling(void)
|
||||
m_pageWidth = x ;
|
||||
m_pageHeight = y ;
|
||||
m_isOk = true ;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
m_isOk = false ;
|
||||
}
|
||||
// At 100%, the page should look about page-size on the screen.
|
||||
// m_previewScale = (float)((float)screenWidth/(float)printerWidth);
|
||||
|
@@ -17,6 +17,8 @@
|
||||
#include "wx/string.h"
|
||||
#include "wx/wave.h"
|
||||
|
||||
#if wxUSE_WAVE
|
||||
|
||||
#ifdef __WXMAC__
|
||||
#include "wx/mac/private.h"
|
||||
#ifndef __DARWIN__
|
||||
@@ -57,7 +59,7 @@ bool wxWave::Create(const wxString& fileName, bool isResource)
|
||||
ret = true;
|
||||
else
|
||||
{ /*
|
||||
if (sndChan)
|
||||
if (sndChan)
|
||||
{ // we're playing
|
||||
FSClose(SndRefNum);
|
||||
SndRefNum = 0;
|
||||
@@ -66,7 +68,7 @@ bool wxWave::Create(const wxString& fileName, bool isResource)
|
||||
sndChan = 0;
|
||||
KillTimer(0,timerID);
|
||||
}
|
||||
|
||||
|
||||
if (!lpSnd)
|
||||
return true;
|
||||
|
||||
@@ -81,14 +83,14 @@ bool wxWave::Create(const wxString& fileName, bool isResource)
|
||||
|
||||
sndChan->qLength = 128;
|
||||
|
||||
if (noErr != SndNewChannel (&sndChan, sampledSynth, initMono | initNoInterp, 0))
|
||||
if (noErr != SndNewChannel (&sndChan, sampledSynth, initMono | initNoInterp, 0))
|
||||
{
|
||||
free(sndChan);
|
||||
sndChan = 0;
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!(SndRefNum = MacOpenSndFile ((char *)lpSnd)))
|
||||
if (!(SndRefNum = MacOpenSndFile ((char *)lpSnd)))
|
||||
{
|
||||
SndDisposeChannel(sndChan, TRUE);
|
||||
free(sndChan);
|
||||
@@ -102,7 +104,7 @@ bool wxWave::Create(const wxString& fileName, bool isResource)
|
||||
if (fdwSound & SND_ASYNC)
|
||||
async = true;
|
||||
|
||||
if (SndStartFilePlay(sndChan, SndRefNum, 0, 81920, 0, 0, 0, async) != noErr)
|
||||
if (SndStartFilePlay(sndChan, SndRefNum, 0, 81920, 0, 0, 0, async) != noErr)
|
||||
{
|
||||
FSClose (SndRefNum);
|
||||
SndRefNum = 0;
|
||||
@@ -112,11 +114,11 @@ bool wxWave::Create(const wxString& fileName, bool isResource)
|
||||
return false;
|
||||
}
|
||||
|
||||
if (async)
|
||||
if (async)
|
||||
{ // haven't finish yet
|
||||
timerID = SetTimer(0, 0, 250, TimerCallBack);
|
||||
}
|
||||
else
|
||||
}
|
||||
else
|
||||
{
|
||||
FSClose (SndRefNum);
|
||||
SndRefNum = 0;
|
||||
@@ -125,7 +127,7 @@ bool wxWave::Create(const wxString& fileName, bool isResource)
|
||||
sndChan = 0;
|
||||
}*/
|
||||
}
|
||||
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -135,8 +137,8 @@ bool wxWave::Play(bool async, bool looped) const
|
||||
{
|
||||
char lpSnd[32];
|
||||
bool ret = false;
|
||||
|
||||
if (m_isResource)
|
||||
|
||||
if (m_isResource)
|
||||
{
|
||||
#if TARGET_CARBON
|
||||
c2pstrcpy((unsigned char *)lpSnd, m_sndname);
|
||||
@@ -145,13 +147,13 @@ bool wxWave::Play(bool async, bool looped) const
|
||||
c2pstr((char *) lpSnd);
|
||||
#endif
|
||||
SndListHandle hSnd;
|
||||
|
||||
|
||||
hSnd = (SndListHandle) GetNamedResource('snd ',(const unsigned char *) lpSnd);
|
||||
|
||||
if ((hSnd != NULL) && (SndPlay((SndChannelPtr)m_sndChan, (SndListHandle) hSnd, async) == noErr))
|
||||
ret = true;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -159,7 +161,7 @@ bool wxWave::Play(bool async, bool looped) const
|
||||
bool wxWave::FreeData()
|
||||
{
|
||||
bool ret = false;
|
||||
|
||||
|
||||
if (m_isResource)
|
||||
{
|
||||
m_sndname.Empty();
|
||||
@@ -167,9 +169,9 @@ bool wxWave::FreeData()
|
||||
}
|
||||
else
|
||||
{
|
||||
//TODO,
|
||||
//TODO,
|
||||
}
|
||||
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@@ -188,7 +190,7 @@ bool wxWave::FreeData()
|
||||
// first, get the volume reference number for the file. Start by
|
||||
// making a Pstring with just the volume name
|
||||
strcpy ((char *) name, path);
|
||||
if (c = strchr ((char *) name, ':'))
|
||||
if (c = strchr ((char *) name, ':'))
|
||||
{
|
||||
c++;
|
||||
*c = '\0';
|
||||
@@ -220,7 +222,7 @@ bool wxWave::FreeData()
|
||||
|
||||
void TimerCallBack(HWND hwnd,UINT uMsg,UINT idEvent,DWORD dwTime)
|
||||
{
|
||||
if(!sndChan)
|
||||
if(!sndChan)
|
||||
{
|
||||
KillTimer(0,timerID);
|
||||
return;
|
||||
@@ -243,3 +245,4 @@ void TimerCallBack(HWND hwnd,UINT uMsg,UINT idEvent,DWORD dwTime)
|
||||
}*/
|
||||
|
||||
|
||||
#endif
|
||||
|
@@ -21,6 +21,7 @@ TOOLKITDIR = @TOOLKIT_DIR@
|
||||
|
||||
WXLIB = @WX_LIBRARY_NAME_STATIC@
|
||||
WXSHLIB = @WX_LIBRARY_NAME_SHARED@
|
||||
WXLIBBASE = @WX_LIBRARY_BASENAME@
|
||||
|
||||
########################### VERSION #################################
|
||||
|
||||
|
@@ -473,6 +473,27 @@ ALL_HEADERS = \
|
||||
xpmdecod.h \
|
||||
zipstrm.h \
|
||||
zstream.h \
|
||||
mgl/app.h \
|
||||
mgl/bitmap.h \
|
||||
mgl/brush.h \
|
||||
mgl/clipbrd.h \
|
||||
mgl/colour.h \
|
||||
mgl/cursor.h \
|
||||
mgl/dc.h \
|
||||
mgl/dcclient.h \
|
||||
mgl/dcmemory.h \
|
||||
mgl/dcscreen.h \
|
||||
mgl/font.h \
|
||||
mgl/fontutil.h \
|
||||
mgl/gdiobj.h \
|
||||
mgl/icon.h \
|
||||
mgl/palette.h \
|
||||
mgl/pen.h \
|
||||
mgl/popupwin.h \
|
||||
mgl/private.h \
|
||||
mgl/region.h \
|
||||
mgl/toplevel.h \
|
||||
mgl/window.h \
|
||||
generic/accel.h \
|
||||
generic/calctrl.h \
|
||||
generic/caret.h \
|
||||
@@ -537,7 +558,6 @@ ALL_HEADERS = \
|
||||
protocol/protocol.h
|
||||
|
||||
COMMONOBJS = \
|
||||
parser.o \
|
||||
appcmn.o \
|
||||
artprov.o \
|
||||
artstd.o \
|
||||
|
@@ -129,7 +129,8 @@ static void wxCaptureScreenshot(bool activeWindowOnly)
|
||||
g_displayDC->savePNGFromDC(screenshot.mb_str(),
|
||||
r.x, r. y, r.x+r.width, r.y+r.height);
|
||||
|
||||
wxMessageBox(_("Screenshot captured: ") + wxString(screenshot));
|
||||
wxMessageBox(wxString::Format(_T("Screenshot captured: %s"),
|
||||
screenshot.c_str()));
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
@@ -617,7 +617,7 @@ void wxListBoxCallback (Widget WXUNUSED(w), XtPointer clientData,
|
||||
event.SetString( item->GetString( n ) );
|
||||
|
||||
int x = -1;
|
||||
if( cbs->event->type == ButtonRelease )
|
||||
if( NULL != cbs->event && cbs->event->type == ButtonRelease )
|
||||
{
|
||||
XButtonEvent* evt = (XButtonEvent*)cbs->event;
|
||||
|
||||
|
@@ -139,10 +139,10 @@ wxMenuItem *wxMenu::DoRemove(wxMenuItem *item)
|
||||
|
||||
bool wxMenu::DoInsert(size_t pos, wxMenuItem *item)
|
||||
{
|
||||
if ( !wxMenuBase::DoInsert(pos, item) )
|
||||
return FALSE;
|
||||
if ( wxMenuBase::DoInsert(pos, item) )
|
||||
return TRUE;
|
||||
|
||||
wxFAIL_MSG(wxT("not implemented"));
|
||||
wxFAIL_MSG(wxT("DoInsert not implemented; or error in wxMenuBase::DoInsert"));
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
@@ -193,9 +193,31 @@ int wxChoice::FindString(const wxString& s) const
|
||||
|
||||
void wxChoice::SetString(int n, const wxString& s)
|
||||
{
|
||||
wxCHECK_RET( (n>=0)&&(n<GetCount()), wxT("invalid item index in wxChoice::SetString") );
|
||||
SendMessage(GetHwnd(), CB_DELETESTRING, n, 0);
|
||||
SendMessage(GetHwnd(), CB_INSERTSTRING, n, (LONG)s.c_str() );
|
||||
wxCHECK_RET( n >= 0 && n < GetCount(),
|
||||
wxT("invalid item index in wxChoice::SetString") );
|
||||
|
||||
// we have to delete and add back the string as there is no way to change a
|
||||
// string in place
|
||||
|
||||
// we need to preserve the client data
|
||||
void *data;
|
||||
if ( m_clientDataItemsType != wxClientData_None )
|
||||
{
|
||||
data = DoGetItemClientData(n);
|
||||
}
|
||||
else // no client data
|
||||
{
|
||||
data = NULL;
|
||||
}
|
||||
|
||||
::SendMessage(GetHwnd(), CB_DELETESTRING, n, 0);
|
||||
::SendMessage(GetHwnd(), CB_INSERTSTRING, n, (LPARAM)s.c_str() );
|
||||
|
||||
if ( data )
|
||||
{
|
||||
DoSetItemClientData(n, data);
|
||||
}
|
||||
//else: it's already NULL by default
|
||||
}
|
||||
|
||||
wxString wxChoice::GetString(int n) const
|
||||
@@ -228,7 +250,8 @@ wxString wxChoice::GetString(int n) const
|
||||
|
||||
void wxChoice::DoSetItemClientData( int n, void* clientData )
|
||||
{
|
||||
if ( SendMessage(GetHwnd(), CB_SETITEMDATA, n, (LPARAM)clientData) == CB_ERR )
|
||||
if ( ::SendMessage(GetHwnd(), CB_SETITEMDATA,
|
||||
n, (LPARAM)clientData) == CB_ERR )
|
||||
{
|
||||
wxLogLastError(wxT("CB_SETITEMDATA"));
|
||||
}
|
||||
|
@@ -105,7 +105,7 @@ wxColour wxNullColour;
|
||||
// Default window names
|
||||
const wxChar *wxControlNameStr = wxT("control");
|
||||
const wxChar *wxButtonNameStr = wxT("button");
|
||||
const wxChar *wxCanvasNameStr = wxT("canvas");
|
||||
const wxChar WXDLLEXPORT *wxCanvasNameStr = wxT("canvas");
|
||||
const wxChar *wxCheckBoxNameStr = wxT("check");
|
||||
const wxChar *wxChoiceNameStr = wxT("choice");
|
||||
const wxChar *wxComboBoxNameStr = wxT("comboBox");
|
||||
@@ -116,26 +116,26 @@ const wxChar *wxStaticBoxNameStr = wxT("groupBox");
|
||||
const wxChar *wxListBoxNameStr = wxT("listBox");
|
||||
const wxChar *wxStaticTextNameStr = wxT("message");
|
||||
const wxChar *wxStaticBitmapNameStr = wxT("message");
|
||||
const wxChar *wxMultiTextNameStr = wxT("multitext");
|
||||
const wxChar WXDLLEXPORT *wxMultiTextNameStr = wxT("multitext");
|
||||
const wxChar *wxPanelNameStr = wxT("panel");
|
||||
const wxChar *wxRadioBoxNameStr = wxT("radioBox");
|
||||
const wxChar *wxRadioButtonNameStr = wxT("radioButton");
|
||||
const wxChar *wxBitmapRadioButtonNameStr = wxT("radioButton");
|
||||
const wxChar WXDLLEXPORT *wxBitmapRadioButtonNameStr = wxT("radioButton");
|
||||
const wxChar *wxScrollBarNameStr = wxT("scrollBar");
|
||||
const wxChar *wxSliderNameStr = wxT("slider");
|
||||
const wxChar *wxStaticNameStr = wxT("static");
|
||||
const wxChar *wxTextCtrlWindowNameStr = wxT("textWindow");
|
||||
const wxChar WXDLLEXPORT *wxStaticNameStr = wxT("static");
|
||||
const wxChar WXDLLEXPORT *wxTextCtrlWindowNameStr = wxT("textWindow");
|
||||
const wxChar *wxTextCtrlNameStr = wxT("text");
|
||||
const wxChar *wxVirtListBoxNameStr = wxT("virtListBox");
|
||||
const wxChar *wxButtonBarNameStr = wxT("buttonbar");
|
||||
const wxChar *wxEnhDialogNameStr = wxT("Shell");
|
||||
const wxChar WXDLLEXPORT *wxVirtListBoxNameStr = wxT("virtListBox");
|
||||
const wxChar WXDLLEXPORT *wxButtonBarNameStr = wxT("buttonbar");
|
||||
const wxChar WXDLLEXPORT *wxEnhDialogNameStr = wxT("Shell");
|
||||
const wxChar *wxToolBarNameStr = wxT("toolbar");
|
||||
const wxChar *wxStatusLineNameStr = wxT("status_line");
|
||||
const wxChar *wxGetTextFromUserPromptStr = wxT("Input Text");
|
||||
const wxChar *wxMessageBoxCaptionStr = wxT("Message");
|
||||
const wxChar *wxFileSelectorPromptStr = wxT("Select a file");
|
||||
const wxChar *wxFileSelectorDefaultWildcardStr = wxT("*.*");
|
||||
const wxChar *wxTreeCtrlNameStr = wxT("treeCtrl");
|
||||
const wxChar WXDLLEXPORT *wxTreeCtrlNameStr = wxT("treeCtrl");
|
||||
const wxChar *wxDirDialogNameStr = wxT("wxDirCtrl");
|
||||
const wxChar *wxDirDialogDefaultFolderStr = wxT("/");
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user