Compare commits
1 Commits
v2.3.2
...
COPY_OBJEC
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3e211ae1b7 |
14
BuildCVS.txt
14
BuildCVS.txt
@@ -125,15 +125,11 @@ Refer to the readme.txt and install.txt files in docs/mac to build
|
||||
wxWindows under Classic Mac OS using CodeWarrior.
|
||||
|
||||
If you are checking out the CVS sources using cvs under Mac OS X and
|
||||
compiling under Classic Mac OS:
|
||||
|
||||
- make sure that all text files have a Mac OS type of 'TEXT' otherwise
|
||||
CodeWarrior may ignore them. Checking out the CVS sources using cvs
|
||||
under Mac OS X creates untyped files which can lead to compilation
|
||||
errors under CodeWarrior which are hard to track down.
|
||||
|
||||
- convert the xml files to CodeWarrior binary projects using the supplied
|
||||
AppleScript in docs/mac (M5xml2mcp.applescript for CodeWarrior 5.3)
|
||||
compiling under Classic Mac OS, make sure that all text files have a
|
||||
Mac OS type of 'TEXT' otherwise CodeWarrior may ignore them. Checking
|
||||
out the CVS sources using cvs under Mac OS X creates untyped files
|
||||
which can lead to compialtion errors under CodeWarrior which are hard
|
||||
to track down.
|
||||
|
||||
V) MacOS X using configure and the Developer Tools
|
||||
----------------------------------------
|
||||
|
||||
73
Makefile.in
73
Makefile.in
@@ -114,7 +114,6 @@ INTLDIR = $(WXDIR)/locale
|
||||
########################## Archive name ###############################
|
||||
|
||||
# append a version suffix x.y.z to all file names
|
||||
VER_MAJMIN=$(WX_MAJOR_VERSION_NUMBER).$(WX_MINOR_VERSION_NUMBER)
|
||||
VER_SUFFIX=$(WX_MAJOR_VERSION_NUMBER).$(WX_MINOR_VERSION_NUMBER).$(WX_RELEASE_NUMBER)$(EXTRA_VER)
|
||||
WXARCHIVE=@DISTDIR@-$(VER_SUFFIX).tar.gz
|
||||
WXGLARCHIVE=@DISTDIR@-gl-$(VER_SUFFIX).tar.gz
|
||||
@@ -395,15 +394,10 @@ CREATE_INSTALLED_LINKS_GL: preinstall_gl
|
||||
afminstall: preinstall
|
||||
@if test ! -d $(datadir); then $(INSTALL) -d $(datadir); fi
|
||||
$(INSTALL) -d $(datadir)/wx
|
||||
$(INSTALL) -d $(datadir)/wx/$(VER_MAJMIN)
|
||||
$(INSTALL) -d $(datadir)/wx/$(VER_MAJMIN)/afm
|
||||
$(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
|
||||
$(INSTALL) -d $(datadir)/wx/afm
|
||||
$(INSTALL) -d $(datadir)/wx/gs_afm
|
||||
$(INSTALL_DATA) $(top_srcdir)/misc/afm/*.afm $(datadir)/wx/afm
|
||||
$(INSTALL_DATA) $(top_srcdir)/misc/gs_afm/*.afm $(datadir)/wx/gs_afm
|
||||
|
||||
# this is the real install target: copies the library, wx-config and the
|
||||
# headers to the installation directory
|
||||
@@ -418,7 +412,7 @@ preinstall: $(build_libdir)/@WX_TARGET_LIBRARY@ $(top_builddir)/wx@TOOLCHAIN_NAM
|
||||
|
||||
$(INSTALL_SCRIPT) $(top_builddir)/wx@TOOLCHAIN_NAME@-config $(bindir)/wx@TOOLCHAIN_NAME@-config
|
||||
cd $(bindir) && rm -f wx-config && $(LN_S) wx@TOOLCHAIN_NAME@-config wx-config
|
||||
@INSTALL_LIBRARY@ $(build_libdir)/@WX_TARGET_LIBRARY@ $(libdir)/@WX_TARGET_LIBRARY@
|
||||
$(INSTALL_PROGRAM) $(build_libdir)/@WX_TARGET_LIBRARY@ $(libdir)/@WX_TARGET_LIBRARY@
|
||||
@if test "x@WX_LIBRARY_IMPORTLIB@" != "x"; then \
|
||||
$(INSTALL_PROGRAM) $(top_builddir)/lib/@WX_LIBRARY_IMPORTLIB@ $(libdir)/@WX_LIBRARY_IMPORTLIB@; fi
|
||||
|
||||
@@ -436,9 +430,6 @@ preinstall: $(build_libdir)/@WX_TARGET_LIBRARY@ $(top_builddir)/wx@TOOLCHAIN_NAM
|
||||
@if test "$(USE_GUI)" = 1; then $(INSTALL) -d $(includedir)/wx/generic; fi
|
||||
@if test "@TOOLKIT_DIR@" = "msw"; then $(INSTALL) -d $(includedir)/wx/msw/ole; fi
|
||||
|
||||
@# always install msw headers for wxBase, it's much simpler
|
||||
@if test "$(USE_GUI)" = 0; then $(INSTALL) -d $(includedir)/wx/msw; fi
|
||||
|
||||
$(INSTALL) -d $(includedir)/wx/protocol
|
||||
$(INSTALL) -d $(includedir)/wx/unix
|
||||
@list='$(HEADERS)'; for p in $$list; do \
|
||||
@@ -466,9 +457,9 @@ preinstall_gl: $(build_libdir)/@WX_TARGET_LIBRARY_GL@
|
||||
@echo " Installing wxWindows OpenGl add-on..."
|
||||
@echo " "
|
||||
@if test ! -d $(libdir); then $(INSTALL) -d $(libdir); fi
|
||||
@INSTALL_LIBRARY@ $(build_libdir)/@WX_TARGET_LIBRARY_GL@ $(libdir)/@WX_TARGET_LIBRARY_GL@
|
||||
$(INSTALL_PROGRAM) $(build_libdir)/@WX_TARGET_LIBRARY_GL@ $(libdir)/@WX_TARGET_LIBRARY_GL@
|
||||
|
||||
install: @AFMINSTALL@ @WX_ALL_INSTALLED@ m4datainstall
|
||||
install: @AFMINSTALL@ @WX_ALL_INSTALLED@
|
||||
@echo " "
|
||||
@echo " The installation of wxWindows is finished. On certain"
|
||||
@echo " platforms (e.g. Linux) you'll now have to run ldconfig"
|
||||
@@ -533,8 +524,9 @@ uninstall:
|
||||
ALL_DIST: distclean
|
||||
mkdir _dist_dir
|
||||
mkdir $(DISTDIR)
|
||||
cp $(WXDIR)/wxwin.m4 $(DISTDIR)
|
||||
cp $(WXDIR)/aclocal.m4 $(DISTDIR)
|
||||
cp $(WXDIR)/configure.in $(DISTDIR)
|
||||
cp $(WXDIR)/configure $(DISTDIR)
|
||||
cp $(WXDIR)/config.sub $(DISTDIR)
|
||||
cp $(WXDIR)/config.guess $(DISTDIR)
|
||||
cp $(WXDIR)/install-sh $(DISTDIR)
|
||||
@@ -544,11 +536,11 @@ ALL_DIST: distclean
|
||||
cp $(WXDIR)/setup.h_vms $(DISTDIR)
|
||||
cp $(WXDIR)/descrip.mms $(DISTDIR)
|
||||
cp $(WXDIR)/Makefile.in $(DISTDIR)
|
||||
cp $(WXDIR)/wxBase.spec $(DISTDIR)
|
||||
cp $(DOCDIR)/lgpl.txt $(DISTDIR)/COPYING.LIB
|
||||
cp $(DOCDIR)/licence.txt $(DISTDIR)/LICENCE.txt
|
||||
cp $(DOCDIR)/symbols.txt $(DISTDIR)/SYMBOLS.txt
|
||||
cp $(DOCDIR)/changes.txt $(DISTDIR)/CHANGES.txt
|
||||
cp $(DOCDIR)/readme.txt $(DISTDIR)/README.txt
|
||||
mkdir $(DISTDIR)/lib
|
||||
cp $(WXDIR)/lib/vms.opt $(DISTDIR)/lib
|
||||
cp $(WXDIR)/lib/vms_gtk.opt $(DISTDIR)/lib
|
||||
@@ -557,6 +549,7 @@ ALL_DIST: distclean
|
||||
mkdir $(DISTDIR)/src/zlib
|
||||
cp $(ZLIBDIR)/*.h $(DISTDIR)/src/zlib
|
||||
cp $(ZLIBDIR)/*.c $(DISTDIR)/src/zlib
|
||||
cp $(ZLIBDIR)/*.mcp $(DISTDIR)/src/zlib
|
||||
cp $(ZLIBDIR)/README $(DISTDIR)/src/zlib
|
||||
cp $(ZLIBDIR)/*.mms $(DISTDIR)/src/zlib
|
||||
mkdir $(DISTDIR)/src/regex
|
||||
@@ -573,10 +566,8 @@ ALL_DIST: distclean
|
||||
# this target is the common part of distribution script for all GUI toolkits,
|
||||
# but is not used when building wxBase distribution
|
||||
ALL_GUI_DIST: ALL_DIST
|
||||
cp $(WXDIR)/configure.in $(DISTDIR)
|
||||
cp $(WXDIR)/configure $(DISTDIR)
|
||||
cp $(DOCDIR)/readme.txt $(DISTDIR)/README.txt
|
||||
cp $(DOCDIR)/$(TOOLKITDIR)/install.txt $(DISTDIR)/INSTALL.txt
|
||||
cp $(WXDIR)/wxBase.spec $(DISTDIR)
|
||||
cp $(DOCDIR)/$(TOOLKITDIR)/install.txt $(DISTDIR)/INSTALL.txt
|
||||
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
|
||||
@@ -623,12 +614,15 @@ ALL_GUI_DIST: ALL_DIST
|
||||
cp $(HTMLDIR)/bitmaps/*.xpm $(DISTDIR)/src/html/bitmaps
|
||||
cp $(PNGDIR)/*.h $(DISTDIR)/src/png
|
||||
cp $(PNGDIR)/*.c $(DISTDIR)/src/png
|
||||
cp $(PNGDIR)/*.mcp $(DISTDIR)/src/png
|
||||
cp $(PNGDIR)/README $(DISTDIR)/src/png
|
||||
cp $(JPEGDIR)/*.h $(DISTDIR)/src/jpeg
|
||||
cp $(JPEGDIR)/*.c $(DISTDIR)/src/jpeg
|
||||
cp $(JPEGDIR)/*.mcp $(DISTDIR)/src/jpeg
|
||||
cp $(JPEGDIR)/README $(DISTDIR)/src/jpeg
|
||||
cp $(TIFFDIR)/*.h $(DISTDIR)/src/tiff
|
||||
cp $(TIFFDIR)/*.c $(DISTDIR)/src/tiff
|
||||
cp $(TIFFDIR)/*.mcp $(DISTDIR)/src/tiff
|
||||
cp $(TIFFDIR)/README $(DISTDIR)/src/tiff
|
||||
cp $(ODBCDIR)/*.h $(DISTDIR)/src/iodbc
|
||||
cp $(ODBCDIR)/*.c $(DISTDIR)/src/iodbc
|
||||
@@ -639,25 +633,19 @@ ALL_GUI_DIST: ALL_DIST
|
||||
cp $(ODBCDIR)/Changes.log $(DISTDIR)/src/iodbc
|
||||
|
||||
BASE_DIST: ALL_DIST
|
||||
# make --disable-gui the default
|
||||
sed 's/DEFAULT_wxUSE_GUI=yes/DEFAULT_wxUSE_GUI=no/' \
|
||||
$(WXDIR)/configure.in > $(DISTDIR)/configure.in
|
||||
sed 's/DEFAULT_wxUSE_GUI=yes/DEFAULT_wxUSE_GUI=no/' \
|
||||
$(WXDIR)/configure > $(DISTDIR)/configure
|
||||
chmod +x $(DISTDIR)/configure
|
||||
mkdir $(DISTDIR)/include
|
||||
mkdir $(DISTDIR)/include/wx
|
||||
mkdir $(DISTDIR)/include/wx/protocol
|
||||
mkdir $(DISTDIR)/include/wx/unix
|
||||
mkdir $(DISTDIR)/include/wx/msw
|
||||
mkdir $(DISTDIR)/src/common
|
||||
mkdir $(DISTDIR)/src/unix
|
||||
mkdir $(DISTDIR)/src/msw
|
||||
cp $(WXDIR)/wxBase.spec $(DISTDIR)
|
||||
cp @PORT_FILES@ $(DISTDIR)
|
||||
cp $(WXDIR)/src/wxBase*.dsp $(DISTDIR)
|
||||
cp $(WXDIR)/src/wxBase*.dsw $(DISTDIR)
|
||||
cp $(DOCDIR)/changes.txt $(DISTDIR)/CHANGES.txt
|
||||
cp $(DOCDIR)/install.txt $(DISTDIR)/README.txt
|
||||
cp $(DOCDIR)/readme.txt $(DISTDIR)/README.txt
|
||||
cp $(SRCDIR)/*.in $(DISTDIR)/src
|
||||
cp $(WXDIR)/src/common/*.inc $(DISTDIR)/src/common
|
||||
cp $(WXDIR)/src/common/base.rc $(DISTDIR)/src/common
|
||||
@@ -678,7 +666,6 @@ BASE_DIST: ALL_DIST
|
||||
cp $(SAMPDIR)/console/Makefile.in $(DISTDIR)/samples/console
|
||||
cp $(SAMPDIR)/console/makefile.unx $(DISTDIR)/samples/console
|
||||
cp $(SAMPDIR)/console/console.cpp $(DISTDIR)/samples/console
|
||||
cp $(SAMPDIR)/console/console.dsp $(DISTDIR)/samples/console
|
||||
cp $(SAMPDIR)/console/testdata.fc $(DISTDIR)/samples/console
|
||||
|
||||
GTK_DIST: ALL_GUI_DIST
|
||||
@@ -708,6 +695,7 @@ MOTIF_DIST: ALL_GUI_DIST
|
||||
MACX_DIST: ALL_GUI_DIST
|
||||
cp $(INCDIR)/*.* $(DISTDIR)/include
|
||||
cp $(INCDIR)/wx/mac/*.h $(DISTDIR)/include/wx/mac
|
||||
cp $(SRCDIR)/*.mcp $(DISTDIR)/src
|
||||
cp $(MACDIR)/files.lst $(DISTDIR)/src/mac
|
||||
cp $(MACDIR)/*.cpp $(DISTDIR)/src/mac
|
||||
cp $(MACDIR)/*.c $(DISTDIR)/src/mac
|
||||
@@ -716,6 +704,14 @@ MACX_DIST: ALL_GUI_DIST
|
||||
mkdir $(DISTDIR)/src/mac/morefile
|
||||
cp $(MACDIR)/morefile/*.h $(DISTDIR)/src/mac/morefile
|
||||
cp $(MACDIR)/morefile/*.c $(DISTDIR)/src/mac/morefile
|
||||
mkdir $(DISTDIR)/src/mac/cdef
|
||||
cp $(MACDIR)/cdef/*.h $(DISTDIR)/src/mac/cdef
|
||||
cp $(MACDIR)/cdef/*.c $(DISTDIR)/src/mac/cdef
|
||||
cp $(MACDIR)/cdef/*.mcp $(DISTDIR)/src/mac/cdef
|
||||
mkdir $(DISTDIR)/src/mac/ldef
|
||||
cp $(MACDIR)/ldef/*.h $(DISTDIR)/src/mac/ldef
|
||||
cp $(MACDIR)/ldef/*.c $(DISTDIR)/src/mac/ldef
|
||||
cp $(MACDIR)/ldef/*.mcp $(DISTDIR)/src/mac/cdef
|
||||
mkdir $(DISTDIR)/src/mac/macsock
|
||||
cp $(MACDIR)/macsock/*.lib $(DISTDIR)/src/mac/macsock
|
||||
|
||||
@@ -758,6 +754,8 @@ DEMOS_DIST: ALL_GUI_DIST
|
||||
cp $(DEMODIR)/configure $(DISTDIR)/demos
|
||||
cp $(DEMODIR)/configure.in $(DISTDIR)/demos
|
||||
|
||||
cp -R $(DEMODIR)/dbbrowse $(DISTDIR)/demos/dbbrowse
|
||||
|
||||
mkdir $(DISTDIR)/demos/bombs
|
||||
cp $(DEMODIR)/bombs/Makefile.in $(DISTDIR)/demos/bombs
|
||||
cp $(DEMODIR)/bombs/makefile.unx $(DISTDIR)/demos/bombs
|
||||
@@ -766,8 +764,6 @@ DEMOS_DIST: ALL_GUI_DIST
|
||||
cp $(DEMODIR)/bombs/*.xpm $(DISTDIR)/demos/bombs
|
||||
cp $(DEMODIR)/bombs/readme.txt $(DISTDIR)/demos/bombs
|
||||
|
||||
cp -R $(DEMODIR)/dbbrowse $(DISTDIR)/demos/dbbrowse
|
||||
|
||||
mkdir $(DISTDIR)/demos/forty
|
||||
cp $(DEMODIR)/forty/Makefile.in $(DISTDIR)/demos/forty
|
||||
cp $(DEMODIR)/forty/makefile.unx $(DISTDIR)/demos/forty
|
||||
@@ -810,6 +806,7 @@ SAMPLES_DIST: ALL_GUI_DIST
|
||||
mkdir $(DISTDIR)/samples/calendar
|
||||
cp $(SAMPDIR)/calendar/Makefile.in $(DISTDIR)/samples/calendar
|
||||
cp $(SAMPDIR)/calendar/makefile.unx $(DISTDIR)/samples/calendar
|
||||
cp $(SAMPDIR)/calendar/*.mcp $(DISTDIR)/samples/calendar
|
||||
cp $(SAMPDIR)/calendar/*.cpp $(DISTDIR)/samples/calendar
|
||||
|
||||
mkdir $(DISTDIR)/samples/caret
|
||||
@@ -821,6 +818,7 @@ SAMPLES_DIST: ALL_GUI_DIST
|
||||
mkdir $(DISTDIR)/samples/checklst
|
||||
cp $(SAMPDIR)/checklst/Makefile.in $(DISTDIR)/samples/checklst
|
||||
cp $(SAMPDIR)/checklst/makefile.unx $(DISTDIR)/samples/checklst
|
||||
cp $(SAMPDIR)/checklst/*.mcp $(DISTDIR)/samples/checklst
|
||||
cp $(SAMPDIR)/checklst/*.cpp $(DISTDIR)/samples/checklst
|
||||
cp $(SAMPDIR)/checklst/*.xpm $(DISTDIR)/samples/checklst
|
||||
cp $(SAMPDIR)/checklst/*.mms $(DISTDIR)/samples/checklst
|
||||
@@ -828,6 +826,7 @@ SAMPLES_DIST: ALL_GUI_DIST
|
||||
mkdir $(DISTDIR)/samples/config
|
||||
cp $(SAMPDIR)/config/Makefile.in $(DISTDIR)/samples/config
|
||||
cp $(SAMPDIR)/config/makefile.unx $(DISTDIR)/samples/config
|
||||
cp $(SAMPDIR)/config/*.mcp $(DISTDIR)/samples/config
|
||||
cp $(SAMPDIR)/config/*.cpp $(DISTDIR)/samples/config
|
||||
|
||||
mkdir $(DISTDIR)/samples/console
|
||||
@@ -839,6 +838,7 @@ SAMPLES_DIST: ALL_GUI_DIST
|
||||
mkdir $(DISTDIR)/samples/controls/icons
|
||||
cp $(SAMPDIR)/controls/Makefile.in $(DISTDIR)/samples/controls
|
||||
cp $(SAMPDIR)/controls/makefile.unx $(DISTDIR)/samples/controls
|
||||
cp $(SAMPDIR)/controls/*.mcp $(DISTDIR)/samples/controls
|
||||
cp $(SAMPDIR)/controls/*.cpp $(DISTDIR)/samples/controls
|
||||
cp $(SAMPDIR)/controls/*.xpm $(DISTDIR)/samples/controls
|
||||
cp $(SAMPDIR)/controls/*.mms $(DISTDIR)/samples/controls
|
||||
@@ -854,6 +854,7 @@ SAMPLES_DIST: ALL_GUI_DIST
|
||||
mkdir $(DISTDIR)/samples/dialogs
|
||||
cp $(SAMPDIR)/dialogs/Makefile.in $(DISTDIR)/samples/dialogs
|
||||
cp $(SAMPDIR)/dialogs/makefile.unx $(DISTDIR)/samples/dialogs
|
||||
cp $(SAMPDIR)/dialogs/*.mcp $(DISTDIR)/samples/dialogs
|
||||
cp $(SAMPDIR)/dialogs/*.cpp $(DISTDIR)/samples/dialogs
|
||||
cp $(SAMPDIR)/dialogs/*.h $(DISTDIR)/samples/dialogs
|
||||
cp $(SAMPDIR)/dialogs/*.txt $(DISTDIR)/samples/dialogs
|
||||
@@ -1311,7 +1312,6 @@ MANUAL_DIST:
|
||||
PYTHON_DIST:
|
||||
mkdir $(DISTDIR)/wxPython
|
||||
mkdir $(DISTDIR)/wxPython/contrib
|
||||
mkdir $(DISTDIR)/wxPython/contrib/gizmos
|
||||
mkdir $(DISTDIR)/wxPython/contrib/glcanvas
|
||||
mkdir $(DISTDIR)/wxPython/contrib/glcanvas/gtk
|
||||
mkdir $(DISTDIR)/wxPython/contrib/ogl
|
||||
@@ -1332,7 +1332,6 @@ PYTHON_DIST:
|
||||
cp $(WXDIR)/wxPython/*.py $(DISTDIR)/wxPython
|
||||
cp $(WXDIR)/wxPython/setup.cfg $(DISTDIR)/wxPython
|
||||
cp $(WXDIR)/wxPython/MANIFEST.in $(DISTDIR)/wxPython
|
||||
cp $(WXDIR)/wxPython/contrib/gizmos/*.{py,cpp,i} $(DISTDIR)/wxPython/contrib/gizmos
|
||||
-cp $(WXDIR)/wxPython/contrib/glcanvas/* $(DISTDIR)/wxPython/contrib/glcanvas
|
||||
cp $(WXDIR)/wxPython/contrib/glcanvas/gtk/glcanvas.* $(DISTDIR)/wxPython/contrib/glcanvas/gtk
|
||||
-cp $(WXDIR)/wxPython/contrib/ogl/* $(DISTDIR)/wxPython/contrib/ogl
|
||||
@@ -1453,7 +1452,7 @@ cleanall: clean
|
||||
|
||||
RPMTOP=_dist_dir/_rpm_top
|
||||
|
||||
rpm: bzip-dist
|
||||
rpm: dist
|
||||
@echo "*** Building RPMs ***"
|
||||
-mkdir $(RPMTOP)
|
||||
-mkdir $(RPMTOP)/SOURCES
|
||||
@@ -1461,7 +1460,7 @@ rpm: bzip-dist
|
||||
-mkdir $(RPMTOP)/BUILD
|
||||
-mkdir $(RPMTOP)/RPMS
|
||||
-mkdir $(RPMTOP)/SRPMS
|
||||
cp -f $(WXARCHIVE_BZIP) $(RPMTOP)/SOURCES
|
||||
cp -f $(WXARCHIVE) $(RPMTOP)/SOURCES
|
||||
rpm -ba --define "_topdir `pwd`/$(RPMTOP)" $(WXDIR)/wx$(TOOLKIT).spec
|
||||
mv -f `find $(RPMTOP) -name "wx$(TARGET)*.rpm"` .
|
||||
|
||||
|
||||
125
configure.in
125
configure.in
@@ -397,6 +397,7 @@ USE_SUN=
|
||||
USE_SOLARIS=
|
||||
USE_SUNOS=
|
||||
USE_ALPHA=
|
||||
USE_IA64=
|
||||
USE_OSF=
|
||||
USE_BSD=
|
||||
USE_DARWIN=
|
||||
@@ -461,6 +462,10 @@ case "${host}" in
|
||||
USE_ALPHA=1
|
||||
AC_DEFINE(__ALPHA__)
|
||||
fi
|
||||
if test "x$TMP" = "xia64"; then
|
||||
USE_IA64=1
|
||||
AC_DEFINE(__IA64__)
|
||||
fi
|
||||
DEFAULT_DEFAULT_wxUSE_GTK=1
|
||||
;;
|
||||
*-*-irix5* | *-*-irix6* )
|
||||
@@ -651,7 +656,6 @@ if test $DEBUG_CONFIGURE = 1; then
|
||||
DEFAULT_wxUSE_LOG=yes
|
||||
DEFAULT_wxUSE_LOGWINDOW=no
|
||||
DEFAULT_wxUSE_LOGGUI=no
|
||||
DEFAULT_wxUSE_LOGDIALOG=no
|
||||
|
||||
DEFAULT_wxUSE_GUI=yes
|
||||
DEFAULT_wxUSE_CONTROLS=no
|
||||
@@ -780,7 +784,6 @@ if test $DEBUG_CONFIGURE = 1; then
|
||||
DEFAULT_wxUSE_TOOLBAR_SIMPLE=no
|
||||
DEFAULT_wxUSE_TREECTRL=no
|
||||
DEFAULT_wxUSE_POPUPWIN=no
|
||||
DEFAULT_wxUSE_TIPWINDOW=no
|
||||
|
||||
DEFAULT_wxUSE_UNICODE=no
|
||||
DEFAULT_wxUSE_WCSRTOMBS=no
|
||||
@@ -816,7 +819,6 @@ else
|
||||
DEFAULT_wxUSE_LOG=yes
|
||||
DEFAULT_wxUSE_LOGWINDOW=yes
|
||||
DEFAULT_wxUSE_LOGGUI=yes
|
||||
DEFAULT_wxUSE_LOGDIALOG=yes
|
||||
|
||||
DEFAULT_wxUSE_GUI=yes
|
||||
|
||||
@@ -944,7 +946,6 @@ else
|
||||
DEFAULT_wxUSE_TOOLBAR_SIMPLE=yes
|
||||
DEFAULT_wxUSE_TREECTRL=yes
|
||||
DEFAULT_wxUSE_POPUPWIN=yes
|
||||
DEFAULT_wxUSE_TIPWINDOW=yes
|
||||
|
||||
DEFAULT_wxUSE_UNICODE=no
|
||||
DEFAULT_wxUSE_WCSRTOMBS=no
|
||||
@@ -1008,7 +1009,7 @@ WX_ARG_WITH(opengl, [ --with-opengl use OpenGL (or Mesa)], wxU
|
||||
fi
|
||||
dnl for GUI only
|
||||
|
||||
WX_ARG_WITH(dmalloc, [ --with-dmalloc use dmalloc library (http://dmalloc.com/)], wxUSE_DMALLOC)
|
||||
WX_ARG_WITH(dmalloc, [ --with-dmalloc use dmalloc library (www.letters.com/dmalloc)], wxUSE_DMALLOC)
|
||||
WX_ARG_SYS_WITH(regex, [ --with-regex enable support for wxRegEx class], wxUSE_REGEX)
|
||||
WX_ARG_SYS_WITH(zlib, [ --with-zlib use zlib for LZW compression], wxUSE_ZLIB)
|
||||
WX_ARG_WITH(odbc, [ --with-odbc use the IODBC and wxODBC classes], wxUSE_ODBC)
|
||||
@@ -1088,7 +1089,7 @@ WX_ARG_ENABLE(zipstream, [ --enable-zipstream use wxZipInputStream], w
|
||||
WX_ARG_ENABLE(catch_segvs, [ --enable-catch_segvs catch signals and pass them to wxApp::OnFatalException], wxUSE_ON_FATAL_EXCEPTION)
|
||||
WX_ARG_ENABLE(snglinst, [ --enable-snglinst use wxSingleInstanceChecker class], wxUSE_SNGLINST_CHECKER)
|
||||
|
||||
WX_ARG_ENABLE(mimetype, [ --enable-mimetype use wxMimeTypesManager], wxUSE_MIMETYPE)
|
||||
WX_ARG_ENABLE(mimetype, [ --enable-mimetypes use wxMimeTypesManager], wxUSE_MIMETYPE)
|
||||
WX_ARG_ENABLE(system_options,[ --enable-sysoptions use wxSystemOptions], wxUSE_SYSTEM_OPTIONS)
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
@@ -1114,7 +1115,6 @@ WX_ARG_ENABLE(printarch, [ --enable-printarch use printing architecture]
|
||||
WX_ARG_ENABLE(mdi, [ --enable-mdi use multiple document interface architecture], wxUSE_MDI_ARCHITECTURE)
|
||||
WX_ARG_ENABLE(loggui, [ --enable-loggui use standard GUI logger], wxUSE_LOGGUI)
|
||||
WX_ARG_ENABLE(logwin, [ --enable-logwin use wxLogWindow], wxUSE_LOGWINDOW)
|
||||
WX_ARG_ENABLE(logdialog, [ --enable-logdialog use wxLogDialog], wxUSE_LOGDIALOG)
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl PostScript options
|
||||
@@ -1191,7 +1191,6 @@ if test "$wxUSE_CONTROLS" = "yes"; then
|
||||
DEFAULT_wxUSE_TOOLTIPS=yes
|
||||
DEFAULT_wxUSE_TREECTRL=yes
|
||||
DEFAULT_wxUSE_POPUPWIN=yes
|
||||
DEFAULT_wxUSE_TIPWINDOW=yes
|
||||
elif test "$wxUSE_CONTROLS" = "no"; then
|
||||
DEFAULT_wxUSE_ACCEL=no
|
||||
DEFAULT_wxUSE_BMPBUTTON=no
|
||||
@@ -1230,7 +1229,6 @@ elif test "$wxUSE_CONTROLS" = "no"; then
|
||||
DEFAULT_wxUSE_TOOLTIPS=no
|
||||
DEFAULT_wxUSE_TREECTRL=no
|
||||
DEFAULT_wxUSE_POPUPWIN=no
|
||||
DEFAULT_wxUSE_TIPWINDOW=no
|
||||
fi
|
||||
|
||||
WX_ARG_ENABLE(accel, [ --enable-accel use accelerators], wxUSE_ACCEL)
|
||||
@@ -1270,7 +1268,6 @@ WX_ARG_ENABLE(toolbar, [ --enable-toolbar use wxToolBar class], wxUS
|
||||
WX_ARG_ENABLE(tbarnative, [ --enable-tbarnative use native wxToolBar class], wxUSE_TOOLBAR_NATIVE)
|
||||
WX_ARG_ENABLE(tbarsmpl, [ --enable-tbarsmpl use wxToolBarSimple class], wxUSE_TOOLBAR_SIMPLE)
|
||||
WX_ARG_ENABLE(treectrl, [ --enable-treectrl use wxTreeCtrl class], wxUSE_TREECTRL)
|
||||
WX_ARG_ENABLE(tipwindow, [ --enable-tipwindow use wxTipWindow class], wxUSE_TIPWINDOW)
|
||||
WX_ARG_ENABLE(popupwin, [ --enable-popupwin use wxPopUpWindow class], wxUSE_POPUPWIN)
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
@@ -1281,7 +1278,7 @@ WX_ARG_ENABLE(commondlg, [ --enable-commondlg use all common dialogs], w
|
||||
WX_ARG_ENABLE(choicedlg, [ --enable-choicedlg use wxChoiceDialog], wxUSE_CHOICEDLG)
|
||||
WX_ARG_ENABLE(coldlg, [ --enable-coldlg use wxColourDialog], wxUSE_COLOURDLG)
|
||||
WX_ARG_ENABLE(filedlg, [ --enable-filedlg use wxFileDialog], wxUSE_FILEDLG)
|
||||
WX_ARG_ENABLE(finddlg, [ --enable-finddlg use wxFindReplaceDialog], wxUSE_FINDREPLDLG)
|
||||
WX_ARG_ENABLE(filedlg, [ --enable-finddlg use wxFindReplaceDialog], wxUSE_FINDREPLDLG)
|
||||
WX_ARG_ENABLE(fontdlg, [ --enable-fontdlg use wxFontDialog], wxUSE_FONTDLG)
|
||||
WX_ARG_ENABLE(dirdlg, [ --enable-dirdlg use wxDirDialog], wxUSE_DIRDLG)
|
||||
WX_ARG_ENABLE(msgdlg, [ --enable-msgdlg use wxMessageDialog], wxUSE_MSGDLG)
|
||||
@@ -1315,7 +1312,7 @@ WX_ARG_ENABLE(image, [ --enable-image use wxImage class], wxUSE_
|
||||
WX_ARG_ENABLE(gif, [ --enable-gif use gif images (GIF file format)], wxUSE_GIF)
|
||||
WX_ARG_ENABLE(pcx, [ --enable-pcx use pcx images (PCX file format)], wxUSE_PCX)
|
||||
WX_ARG_ENABLE(pnm, [ --enable-pnm use pnm images (PNM file format)], wxUSE_PNM)
|
||||
WX_ARG_ENABLE(xpm, [ --enable-xpm use xpm images (XPM file format)], wxUSE_XPM)
|
||||
WX_ARG_ENABLE(pnm, [ --enable-xpm use xpm images (XPM file format)], wxUSE_XPM)
|
||||
|
||||
fi
|
||||
dnl for GUI only
|
||||
@@ -2446,11 +2443,9 @@ WX_LIBRARY_NAME_STATIC_GL="lib${WX_LIBRARY_GL}.a"
|
||||
|
||||
dnl define which libs wx-config should link.
|
||||
WXCONFIG_LIBS="-l${WX_LIBRARY}"
|
||||
WXCONFIG_LIBS_STATIC="lib${WX_LIBRARY}.a"
|
||||
|
||||
if test "$wxUSE_OPENGL" = "yes"; then
|
||||
WXCONFIG_LIBS_GL="-l${WX_LIBRARY_GL} ${OPENGL_LIBS}"
|
||||
WXCONFIG_LIBS_STATIC_GL="lib${WX_LIBRARY_GL}.a ${OPENGL_LIBS}"
|
||||
WXCONFIG_LIBS_GL="-l${WX_LIBRARY_GL} $OPENGL_LIBS"
|
||||
fi
|
||||
|
||||
|
||||
@@ -2537,9 +2532,9 @@ if test "$wxUSE_SHARED" = "yes"; then
|
||||
;;
|
||||
|
||||
*-*-darwin* )
|
||||
CFLAGS="$CFLAGS -fno-common -DDYLIB_INIT"
|
||||
CXXFLAGS="$CXXFLAGS -fno-common -DDYLIB_INIT"
|
||||
SHARED_LD="$CXX -dynamiclib -init _wxWindowsDylibInit -o"
|
||||
CFLAGS="$CFLAGS -fno-common"
|
||||
CXXFLAGS="$CXXFLAGS -fno-common"
|
||||
SHARED_LD="$CXX -dynamiclib -o"
|
||||
PIC_FLAG="-dynamic -fPIC"
|
||||
;;
|
||||
|
||||
@@ -2597,7 +2592,6 @@ if test "$wxUSE_SHARED" = "yes"; then
|
||||
|
||||
dnl do not alter the LIBRARY_TYPE strings "so" and "a", they are magic
|
||||
WX_TARGET_LIBRARY_TYPE="so"
|
||||
INSTALL_LIBRARY='$(INSTALL_PROGRAM)'
|
||||
fi
|
||||
|
||||
dnl do not 'else' this, it may be changed in the above conditional.
|
||||
@@ -2624,7 +2618,6 @@ if test "$wxUSE_SHARED" = "no"; then
|
||||
WX_TARGET_LIBRARY_GL="${WX_LIBRARY_NAME_STATIC_GL}"
|
||||
|
||||
WX_TARGET_LIBRARY_TYPE="a"
|
||||
INSTALL_LIBRARY='$(INSTALL_DATA)'
|
||||
fi
|
||||
|
||||
if test "$wxUSE_MAC" = 1; then
|
||||
@@ -2632,7 +2625,7 @@ if test "$wxUSE_MAC" = 1; then
|
||||
WX_ALL="${WX_ALL} \$(build_libdir)/lib${WX_LIBRARY}.r"
|
||||
WX_ALL_INSTALLED="${WX_ALL_INSTALLED} preinstall_res"
|
||||
AC_CHECK_PROG(RESCOMP, Rez, Rez, /Developer/Tools/Rez)
|
||||
AC_CHECK_PROG(DEREZ, DeRez, DeRez, /Developer/Tools/DeRez)
|
||||
AC_CHECK_PROG(DEREZ, Derez, Derez, /Developer/Tools/Derez)
|
||||
LIBWXMACRES="\$(top_builddir)/lib/lib${WX_LIBRARY}.r"
|
||||
LIBWXMACRESCOMP="\$(RESCOMP) Carbon.r -t APPL ${LIBWXMACRES} -o \$(BIN_PROGRAM)"
|
||||
LIBWXMACRESWXCONFIG="${RESCOMP} Carbon.r -t APPL \${prefix}/lib/${WX_RESOURCES_MACOSX_COMPILED} -o"
|
||||
@@ -2652,16 +2645,12 @@ fi
|
||||
|
||||
dnl defines HAVE_STDLIB_H
|
||||
AC_CHECK_HEADERS(stdlib.h)
|
||||
dnl defines HAVE_MALLOC_H
|
||||
AC_CHECK_HEADERS(malloc.h)
|
||||
dnl defines HAVE_UNISTD_H
|
||||
AC_CHECK_HEADERS(unistd.h)
|
||||
dnl defines HAVE_WCHAR_H
|
||||
AC_CHECK_HEADERS(wchar.h)
|
||||
dnl defines HAVE_WCSTR_H
|
||||
AC_CHECK_HEADERS(wcstr.h)
|
||||
dnl defined HAVE_WCTYPE_H
|
||||
AC_CHECK_HEADERS(wctype.h)
|
||||
dnl defines HAVE_FNMATCH_H
|
||||
AC_CHECK_HEADERS(fnmatch.h)
|
||||
dnl defines HAVE_ICONV_H (Unix98 encoding conversion routines)
|
||||
@@ -2693,15 +2682,11 @@ AC_TYPE_UID_T
|
||||
|
||||
dnl check for wchar_t
|
||||
dnl Mac OS X does not provide wchar.h and wchar_t is defined by stdlib.h (GD)
|
||||
dnl on Cygwin wchar.h needs stddef.h to be #included by hand
|
||||
AC_CACHE_CHECK([for wchar_t], wx_cv_type_wchar_t,
|
||||
[
|
||||
AC_TRY_COMPILE(
|
||||
[
|
||||
#ifdef HAVE_WCHAR_H
|
||||
# ifdef __CYGWIN__
|
||||
# include <stddef.h>
|
||||
# endif
|
||||
# include <wchar.h>
|
||||
#endif
|
||||
#ifdef HAVE_STDLIB_H
|
||||
@@ -2826,9 +2811,6 @@ AC_CACHE_CHECK([size of wchar_t], wx_cv_sizeof_wchar_t,
|
||||
AC_TRY_RUN(
|
||||
[
|
||||
#ifdef HAVE_WCHAR_H
|
||||
# ifdef __CYGWIN__
|
||||
# include <stddef.h>
|
||||
# endif
|
||||
# include <wchar.h>
|
||||
#endif
|
||||
#ifdef HAVE_STDLIB_H
|
||||
@@ -3055,9 +3037,6 @@ fi
|
||||
dnl check for vfork() (even if it's the same as fork() in modern Unices)
|
||||
AC_CHECK_FUNCS(vfork)
|
||||
|
||||
dnl check for the function for temp files creation
|
||||
AC_CHECK_FUNCS(mkstemp mktemp, break)
|
||||
|
||||
dnl get the library function to use for wxGetDiskSpace(): it is statfs() under
|
||||
dnl Linux and *BSD and statvfs() under Solaris
|
||||
AC_CACHE_CHECK(for statfs, wx_cv_func_statfs,
|
||||
@@ -3241,10 +3220,10 @@ if test "$TOOLKIT" != "MSW"; then
|
||||
|
||||
if test "$wxUSE_THREADS" = "yes" ; then
|
||||
if test "$wxUSE_WINE" = 1 ; then
|
||||
AC_MSG_WARN([Threads are not supported under WINE... disabled])
|
||||
AC_MSG_WARN([Threads are not supported under WINE])
|
||||
wxUSE_THREADS="no"
|
||||
elif test "$USE_BEOS" = 1; then
|
||||
AC_MSG_WARN([BeOS threads are not yet supported... disabled])
|
||||
AC_MSG_WARN([BeOS threads are not yet supported])
|
||||
wxUSE_THREADS="no"
|
||||
fi
|
||||
fi
|
||||
@@ -3280,7 +3259,7 @@ if test "$TOOLKIT" != "MSW"; then
|
||||
|
||||
if test -z "$THREADS_OBJ" ; then
|
||||
wxUSE_THREADS=no
|
||||
AC_MSG_WARN([No thread support on this system... disabled])
|
||||
AC_MSG_WARN(No thread support on this system)
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -3658,7 +3637,7 @@ fi
|
||||
|
||||
if test "$wxUSE_TEXTFILE" = "yes"; then
|
||||
if test "$wxUSE_FILE" != "yes" -o "$wxUSE_TEXTBUFFER" != "yes" ; then
|
||||
AC_MSG_WARN(wxTextFile requires wxFile and wxTextBuffer... disabled)
|
||||
AC_MSG_WARN(wxTextFile requires wxFile and wxTextBuffer and won't be compiled without them)
|
||||
else
|
||||
AC_DEFINE(wxUSE_TEXTFILE)
|
||||
fi
|
||||
@@ -3666,7 +3645,7 @@ fi
|
||||
|
||||
if test "$wxUSE_CONFIG" = "yes" ; then
|
||||
if test "$wxUSE_TEXTFILE" != "yes"; then
|
||||
AC_MSG_WARN(wxConfig requires wxTextFile... disabled)
|
||||
AC_MSG_WARN(wxConfig requires wxTextFile and it won't be compiled without it)
|
||||
else
|
||||
AC_DEFINE(wxUSE_CONFIG)
|
||||
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS config"
|
||||
@@ -3675,7 +3654,7 @@ fi
|
||||
|
||||
if test "$wxUSE_INTL" = "yes" ; then
|
||||
if test "$wxUSE_FILE" != "yes"; then
|
||||
AC_MSG_WARN(I18n code requires wxFile... disabled)
|
||||
AC_MSG_WARN(I18n code requires wxFile and it won't be compiled without it)
|
||||
else
|
||||
AC_DEFINE(wxUSE_INTL)
|
||||
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS internat"
|
||||
@@ -3693,10 +3672,6 @@ if test "$wxUSE_LOG" = "yes"; then
|
||||
if test "$wxUSE_LOGWINDOW" = "yes"; then
|
||||
AC_DEFINE(wxUSE_LOGWINDOW)
|
||||
fi
|
||||
|
||||
if test "$wxUSE_LOGDIALOG" = "yes"; then
|
||||
AC_DEFINE(wxUSE_LOG_DIALOG)
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "$wxUSE_LONGLONG" = "yes"; then
|
||||
@@ -3943,15 +3918,6 @@ dnl ---------------------------------------------------------------------------
|
||||
|
||||
if test "$wxUSE_GUI" = "yes"; then
|
||||
|
||||
if test "$TOOLKIT" = "MAC"; then
|
||||
AC_MSG_WARN([Joystick not yet supported under Mac OS X... disabled])
|
||||
wxUSE_JOYSTICK=no
|
||||
fi
|
||||
if test "$TOOLKIT" = "MOTIF"; then
|
||||
AC_MSG_WARN([Joystick not yet supported under Motif... disabled])
|
||||
wxUSE_JOYSTICK=no
|
||||
fi
|
||||
|
||||
dnl under MSW we always have joystick support
|
||||
if test "$TOOLKIT" != "MSW"; then
|
||||
if test "$wxUSE_JOYSTICK" = "yes"; then
|
||||
@@ -3959,7 +3925,7 @@ if test "$wxUSE_GUI" = "yes"; then
|
||||
AC_CHECK_HEADERS(linux/joystick.h)
|
||||
if test "$ac_cv_header_linux_joystick_h" != "yes"; then
|
||||
wxUSE_JOYSTICK=no
|
||||
AC_MSG_WARN(Joystick not supported by this system... disabled)
|
||||
AC_MSG_WARN(Joystick not supported by this system, disabled)
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
@@ -4101,7 +4067,7 @@ fi
|
||||
|
||||
if test "$wxUSE_MDI_ARCHITECTURE" = "yes"; then
|
||||
if test "$wxUSE_UNIVERSAL" = "yes"; then
|
||||
AC_MSG_WARN(MDI not yet supported for wxUNIVERSAL... disabled)
|
||||
AC_MSG_WARN(MDI is not supported for wxUNIVERSAL yet... disabled)
|
||||
wxUSE_MDI_ARCHITECTURE=no
|
||||
fi
|
||||
|
||||
@@ -4208,7 +4174,7 @@ fi
|
||||
|
||||
if test "$wxUSE_IPC" = "yes"; then
|
||||
if test "$wxUSE_SOCKETS" != "yes"; then
|
||||
AC_MSG_WARN(wxWindows IPC classes require sockets... disabled)
|
||||
AC_MSG_WARN(wxWindows IPC classes require sockets, disabled)
|
||||
fi
|
||||
|
||||
AC_DEFINE(wxUSE_IPC)
|
||||
@@ -4224,18 +4190,18 @@ fi
|
||||
if test "$wxUSE_DRAG_AND_DROP" = "yes" ; then
|
||||
if test "$wxUSE_GTK" = 1; then
|
||||
if test "$WXGTK12" != 1; then
|
||||
AC_MSG_WARN([Drag and drop is only supported under GTK+ 1.2... disabled])
|
||||
AC_MSG_WARN([Drag and drop is only supported under GTK+ 1.2])
|
||||
wxUSE_DRAG_AND_DROP=no
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "$wxUSE_MOTIF" = 1; then
|
||||
AC_MSG_WARN([Drag and drop not yet supported under Motif... disabled])
|
||||
AC_MSG_WARN([Drag and drop is not yet supported under Motif])
|
||||
wxUSE_DRAG_AND_DROP=no
|
||||
fi
|
||||
|
||||
if test "$wxUSE_MAC" = 1; then
|
||||
AC_MSG_WARN([Drag and drop not yet supported under Mac OS X... disabled])
|
||||
AC_MSG_WARN([Drag and drop is not yet supported under Mac OS X])
|
||||
wxUSE_DRAG_AND_DROP=no
|
||||
fi
|
||||
|
||||
@@ -4440,12 +4406,8 @@ if test "$wxUSE_TEXTCTRL" = "yes"; then
|
||||
fi
|
||||
|
||||
if test "$wxUSE_TOGGLEBTN" = "yes"; then
|
||||
if test "$wxUSE_MAC" = 1; then
|
||||
AC_MSG_WARN([Toggle button not yet supported under Mac OS X... disabled])
|
||||
wxUSE_TOGGLEBTN=no
|
||||
fi
|
||||
if test "$wxUSE_UNIVERSAL" = "yes"; then
|
||||
AC_MSG_WARN([Toggle button not yet supported under wxUNIVERSAL... disabled])
|
||||
if test "$wxUSE_MAC" = 1 -o "$wxUSE_UNIVERSAL" = "yes"; then
|
||||
AC_MSG_WARN([Toggle button not yet supported under Mac OS X or wxUNIVERSAL... disabled])
|
||||
wxUSE_TOGGLEBTN=no
|
||||
fi
|
||||
|
||||
@@ -4480,16 +4442,12 @@ fi
|
||||
|
||||
if test "$wxUSE_TOOLTIPS" = "yes"; then
|
||||
if test "$wxUSE_MOTIF" = 1; then
|
||||
AC_MSG_WARN([wxTooltip not supported yet under Motif... disabled])
|
||||
AC_MSG_WARN(wxTooltip not supported yet under Motif)
|
||||
else
|
||||
if test "$wxUSE_WINE" = 1; then
|
||||
AC_MSG_WARN([wxTooltip not supported under WINE... disabled])
|
||||
AC_MSG_WARN(wxTooltip not supported under WINE)
|
||||
else
|
||||
if test "$wxUSE_UNIVERSAL" = "yes"; then
|
||||
AC_MSG_WARN([wxTooltip not supported yet in wxUNIVERSAL... disabled])
|
||||
else
|
||||
AC_DEFINE(wxUSE_TOOLTIPS)
|
||||
fi
|
||||
AC_DEFINE(wxUSE_TOOLTIPS)
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
@@ -4506,22 +4464,13 @@ fi
|
||||
|
||||
if test "$wxUSE_POPUPWIN" = "yes"; then
|
||||
if test "$wxUSE_MAC" = 1; then
|
||||
AC_MSG_WARN([Popup window not yet supported under Mac OS X... disabled])
|
||||
AC_MSG_WARN(Popup window is not yet supported under Mac OS)
|
||||
else
|
||||
if test "$wxUSE_MOTIF" = 1; then
|
||||
AC_MSG_WARN([wxPopupWindow not yet supported under Motif... disabled])
|
||||
else
|
||||
AC_DEFINE(wxUSE_POPUPWIN)
|
||||
|
||||
USES_CONTROLS=1
|
||||
fi
|
||||
AC_DEFINE(wxUSE_POPUPWIN)
|
||||
USES_CONTROLS=1
|
||||
fi
|
||||
fi
|
||||
|
||||
if test "$wxUSE_TIPWINDOW" = "yes"; then
|
||||
AC_DEFINE(wxUSE_TIPWINDOW)
|
||||
fi
|
||||
|
||||
if test "$USES_CONTROLS" = 1; then
|
||||
AC_DEFINE(wxUSE_CONTROLS)
|
||||
fi
|
||||
@@ -4834,8 +4783,6 @@ AC_SUBST(host_alias)
|
||||
AC_SUBST(cross_compiling)
|
||||
AC_SUBST(WXCONFIG_LIBS)
|
||||
AC_SUBST(WXCONFIG_LIBS_GL)
|
||||
AC_SUBST(WXCONFIG_LIBS_STATIC)
|
||||
AC_SUBST(WXCONFIG_LIBS_STATIC_GL)
|
||||
AC_SUBST(WXCONFIG_INCLUDE)
|
||||
|
||||
dnl what to compile
|
||||
@@ -4875,10 +4822,10 @@ AC_SUBST(AS)
|
||||
AC_SUBST(NM)
|
||||
AC_SUBST(LD)
|
||||
AC_SUBST(MAKEINFO)
|
||||
AC_SUBST(INSTALL_LIBRARY)
|
||||
|
||||
|
||||
dnl MAKE_SET will be replaced with "MAKE=..." or nothing if make sets MAKE
|
||||
dnl itself (this macro is required if SUBDIRS variable is used in Makefile.am
|
||||
dnl itself (this is macro is required if SUBDIRS variable is used in Makefile.am
|
||||
dnl - and we do use it)
|
||||
AC_PROG_MAKE_SET
|
||||
|
||||
|
||||
@@ -79,7 +79,7 @@ WX_DEFINE_ARRAY( RowInfoPtrT, RowArrayT );
|
||||
|
||||
#define wxALL_PANES 0x000F
|
||||
|
||||
// enumeration of hittest results, see cbDockPane::HitTestPaneItems(..)
|
||||
// enumeration of hittest results, see cbDockPane::HitTestPaneItems(..)
|
||||
|
||||
enum CB_HITTEST_RESULT
|
||||
{
|
||||
@@ -100,7 +100,7 @@ enum CB_HITTEST_RESULT
|
||||
// helper class, used for spying for not-handled mouse events on control-bars
|
||||
// and forwarding them to the frame layout
|
||||
|
||||
class cbBarSpy : public wxEvtHandler
|
||||
class cbBarSpy : public wxEvtHandler
|
||||
{
|
||||
public:
|
||||
DECLARE_DYNAMIC_CLASS( cbBarSpy )
|
||||
@@ -120,8 +120,8 @@ public:
|
||||
virtual bool ProcessEvent(wxEvent& event);
|
||||
};
|
||||
|
||||
/* wxFrameLayout manages containment and docking of control bars.
|
||||
* which can be docked along top, bottom, righ, or left side of the
|
||||
/* wxFrameLayout manages containment and docking of control bars.
|
||||
* which can be docked along top, bottom, righ, or left side of the
|
||||
* parent frame
|
||||
*/
|
||||
|
||||
@@ -130,8 +130,8 @@ class wxFrameLayout : public wxEvtHandler
|
||||
public:
|
||||
wxFrameLayout(void); // used only while serializing
|
||||
|
||||
wxFrameLayout( wxWindow* pParentFrame,
|
||||
wxWindow* pFrameClient = NULL,
|
||||
wxFrameLayout( wxWindow* pParentFrame,
|
||||
wxWindow* pFrameClient = NULL,
|
||||
bool activateNow = TRUE );
|
||||
|
||||
// (doesn't destroy bar windows)
|
||||
@@ -143,7 +143,7 @@ public:
|
||||
// Can be called after some other layout has been deactivated,
|
||||
// and this one must "take over" the current contents of frame window.
|
||||
//
|
||||
// Effectively hooks itself to the frame window, re-displays all not-hidden
|
||||
// Effectively hooks itself to the frame window, re-displays all not-hidden
|
||||
// bar-windows and repaints decorations
|
||||
|
||||
virtual void Activate();
|
||||
@@ -151,7 +151,7 @@ public:
|
||||
// unhooks itself from frame window, and hides all not-hidden windows
|
||||
//
|
||||
// NOTE:: two frame-layouts should not be active at the same time in the
|
||||
// same frame window, it would cause messy overlapping of bar windows
|
||||
// same frame window, it would cause messy overlapping of bar windows
|
||||
// from both layouts
|
||||
|
||||
virtual void Deactivate();
|
||||
@@ -163,8 +163,8 @@ public:
|
||||
virtual void DestroyBarWindows();
|
||||
|
||||
// passes the client window (e.g. MDI-client frame) to be controled by
|
||||
// frame layout, the size and position of which should be adjusted to be
|
||||
// surrounded by controlbar panes, whenever frame is resized, or dimensions
|
||||
// frame layout, the size and position of which should be adjusted to be
|
||||
// surrounded by controlbar panes, whenever frame is resized, or dimensions
|
||||
// of control panes change
|
||||
|
||||
void SetFrameClient( wxWindow* pFrameClient );
|
||||
@@ -176,7 +176,7 @@ public:
|
||||
// used by updates-managers
|
||||
cbDockPane** GetPanesArray() { return mPanes; }
|
||||
|
||||
// see pane alignment types
|
||||
// see pane alignment types
|
||||
cbDockPane* GetPane( int alignment )
|
||||
|
||||
{ return mPanes[alignment]; }
|
||||
@@ -187,11 +187,11 @@ public:
|
||||
// NOTES:: argument pBarWnd can by NULL, resulting bar decorations to be drawn
|
||||
// around the empty rectangle (filled with default background colour).
|
||||
// Argument dimInfo, can be re-used for adding any number of bars, since
|
||||
// it is not used directly, instead it's members are copied. If dimensions-
|
||||
// handler is present, it's instance shared (reference counted). Dimension
|
||||
// it is not used directly, instead it's members are copied. If dimensions-
|
||||
// handler is present, it's instance shared (reference counted). Dimension
|
||||
// handler should always be allocated on the heap!)
|
||||
|
||||
virtual void AddBar( wxWindow* pBarWnd,
|
||||
virtual void AddBar( wxWindow* pBarWnd,
|
||||
const cbDimInfo& dimInfo,
|
||||
|
||||
// defaults:
|
||||
@@ -201,13 +201,13 @@ public:
|
||||
const wxString& name="bar",// name, by which the bar could be referred
|
||||
// in layout customization dialogs
|
||||
|
||||
bool spyEvents = FALSE, // if TRUE - input events for the bar should
|
||||
// be "spyed" in order to forward not-handled
|
||||
// mouse clicks to frame layout (e.g. to enable
|
||||
// easy-draggablity of toolbars just by clicking
|
||||
// on their interior regions). For widgets like
|
||||
// text/tree control this value should be FALSE
|
||||
// (since there's _no_ certain way to detect
|
||||
bool spyEvents = FALSE, // if TRUE - input events for the bar should
|
||||
// be "spyed" in order to forward not-handled
|
||||
// mouse clicks to frame layout (e.g. to enable
|
||||
// easy-draggablity of toolbars just by clicking
|
||||
// on their interior regions). For widgets like
|
||||
// text/tree control this value should be FALSE
|
||||
// (since there's _no_ certain way to detect
|
||||
// whether the event was actually handled...)
|
||||
|
||||
int state = wxCBAR_DOCKED_HORIZONTALLY // e.g. wxCBAR_FLOATING
|
||||
@@ -217,10 +217,10 @@ public:
|
||||
// can be used for repositioning already existing bars. The given bar is first removed
|
||||
// from the pane it currently belongs to, and inserted into the pane, which "matches"
|
||||
// the given recantular area. If pToPane is not NULL, bar is docked to this given pane
|
||||
|
||||
|
||||
// to dock the bar which is floated, use wxFrameLayout::DockBar(..) method
|
||||
|
||||
virtual bool RedockBar( cbBarInfo* pBar, const wxRect& shapeInParent,
|
||||
virtual bool RedockBar( cbBarInfo* pBar, const wxRect& shapeInParent,
|
||||
cbDockPane* pToPane = NULL, bool updateNow = TRUE );
|
||||
|
||||
// methods for access and modification of bars in frame layout
|
||||
@@ -255,9 +255,9 @@ public:
|
||||
wxRect& GetClientRect() { return mClntWndBounds; }
|
||||
|
||||
// NOTE:: in future ubdates-manager will become a normal plugin
|
||||
|
||||
|
||||
cbUpdatesManagerBase& GetUpdatesManager();
|
||||
|
||||
|
||||
// destroys the previous manager if any, set the new one
|
||||
|
||||
void SetUpdatesManager( cbUpdatesManagerBase* pUMgr );
|
||||
@@ -266,7 +266,7 @@ public:
|
||||
|
||||
virtual void GetPaneProperties( cbCommonPaneProperties& props, int alignment = FL_ALIGN_TOP );
|
||||
|
||||
virtual void SetPaneProperties( const cbCommonPaneProperties& props,
|
||||
virtual void SetPaneProperties( const cbCommonPaneProperties& props,
|
||||
int paneMask = wxALL_PANES );
|
||||
|
||||
// TODO:: margins should go into cbCommonPaneProperties in the future
|
||||
@@ -295,11 +295,11 @@ public:
|
||||
/*** plugin-related methods ***/
|
||||
|
||||
// should be used, instead of passing the event to ProcessEvent(..) method
|
||||
// of the top-plugin directly. This method checks if events are currently
|
||||
// of the top-plugin directly. This method checks if events are currently
|
||||
// captured and ensures that plugin-event is routed correctly.
|
||||
|
||||
virtual void FirePluginEvent( cbPluginEvent& event );
|
||||
|
||||
|
||||
// captures/releases user-input event's for the given plugin
|
||||
// Input events are: mouse movement, mouse clicks, keyboard input
|
||||
|
||||
@@ -312,7 +312,7 @@ public:
|
||||
|
||||
// returns current top-level plugin (the one which receives events first,
|
||||
// with an exception if input-events are currently captured by some other plugin)
|
||||
|
||||
|
||||
virtual cbPluginBase& GetTopPlugin();
|
||||
|
||||
// hooking custom plugins to frame layout
|
||||
@@ -340,7 +340,7 @@ public:
|
||||
// default plugins are : cbPaneDrawPlugin, cbRowLayoutPlugin, cbBarDragPlugin,
|
||||
// cbAntiflickerPlugin, cbSimpleCustomizePlugin
|
||||
//
|
||||
// this method is automatically invoked, if no plugins were found upon
|
||||
// this method is automatically invoked, if no plugins were found upon
|
||||
// fireing of the first plugin-event, i.e. wxFrameLayout *CONFIGURES* itself
|
||||
|
||||
virtual void PushDefaultPlugins();
|
||||
@@ -348,7 +348,7 @@ public:
|
||||
/* "Advanced" methods for plugin-configuration using their */
|
||||
/* dynamic class information (e.g. CLASSINFO(pluginClass) ) */
|
||||
|
||||
// first checks if plugin of the given class is already "hooked up",
|
||||
// first checks if plugin of the given class is already "hooked up",
|
||||
// if not, adds it to the top of plugins chain
|
||||
|
||||
virtual void AddPlugin( wxClassInfo* pPlInfo, int paneMask = wxALL_PANES );
|
||||
@@ -363,14 +363,14 @@ public:
|
||||
// thefore the former should be hooked before the one
|
||||
// who's functionality is being overriden
|
||||
|
||||
virtual void AddPluginBefore( wxClassInfo* pNextPlInfo, wxClassInfo* pPlInfo,
|
||||
virtual void AddPluginBefore( wxClassInfo* pNextPlInfo, wxClassInfo* pPlInfo,
|
||||
int paneMask = wxALL_PANES );
|
||||
|
||||
// checks if plugin of the given class is hooked, removes
|
||||
// it if found
|
||||
//
|
||||
// @param pPlInfo class information structure for the plugin
|
||||
// @note
|
||||
// @note
|
||||
// @see wxFrameLayout::Method
|
||||
|
||||
|
||||
@@ -417,7 +417,7 @@ public: /* protected really, acessed only by plugins and serializers */
|
||||
|
||||
// pane, from which mouse pointer had just left
|
||||
|
||||
cbDockPane* mpLRUPane;
|
||||
cbDockPane* mpLRUPane;
|
||||
|
||||
// bounds of client window in parent frame's coordinates
|
||||
|
||||
@@ -432,11 +432,11 @@ public: /* protected really, acessed only by plugins and serializers */
|
||||
|
||||
cbPluginBase* mpTopPlugin;
|
||||
|
||||
// plugin, which currently has captured all input events, otherwise NULL
|
||||
// plugin, which currently has captured all input events, otherwise NULL
|
||||
|
||||
cbPluginBase* mpCaputesInput;
|
||||
|
||||
// list of event handlers which are "pushed" onto each bar, to catch
|
||||
// list of event handlers which are "pushed" onto each bar, to catch
|
||||
// mouse events which are not handled by bars, and froward them to the ,
|
||||
// frome-layout and further to plugins
|
||||
|
||||
@@ -457,7 +457,7 @@ public: /* protected really, acessed only by plugins and serializers */
|
||||
|
||||
public: /* protected really (accessed only by plugins) */
|
||||
|
||||
// refrence to custom updates manager
|
||||
// refrence to custom updates manager
|
||||
cbUpdatesManagerBase* mpUpdatesMgr;
|
||||
|
||||
// called to set calculated layout to window objects
|
||||
@@ -468,7 +468,7 @@ public: /* protected really (accessed only by plugins) */
|
||||
void RepositionFloatedBar( cbBarInfo* pBar );
|
||||
void DoSetBarState( cbBarInfo* pBar );
|
||||
|
||||
bool LocateBar( cbBarInfo* pBarInfo,
|
||||
bool LocateBar( cbBarInfo* pBarInfo,
|
||||
cbRowInfo** ppRow,
|
||||
cbDockPane** ppPane );
|
||||
|
||||
@@ -481,7 +481,7 @@ public: /* protected really (accessed only by plugins) */
|
||||
cbDockPane* GetBarPane( cbBarInfo* pBar );
|
||||
|
||||
// delegated from "bar-spy"
|
||||
void ForwardMouseEvent( wxMouseEvent& event,
|
||||
void ForwardMouseEvent( wxMouseEvent& event,
|
||||
cbDockPane* pToPane,
|
||||
int eventType );
|
||||
|
||||
@@ -513,8 +513,8 @@ public: /* protected really (accessed only by plugins) */
|
||||
|
||||
/* structure, which is present in each item of layout,
|
||||
* it used by any specific updates-manager to store
|
||||
* auxilary information to be used by it's specific
|
||||
* updating algorithm
|
||||
* auxilary information to be used by it's specific
|
||||
* updating algorithm
|
||||
*/
|
||||
|
||||
class cbUpdateMgrData : public wxObject
|
||||
@@ -525,7 +525,7 @@ public:
|
||||
|
||||
bool mIsDirty; // overrides result of current-against-previous bounds comparison,
|
||||
// i.e. requires item to be updated, regardless of it's current area
|
||||
|
||||
|
||||
wxObject* mpCustomData; // any custom data stored by specific updates mgr.
|
||||
|
||||
cbUpdateMgrData(); // is-dirty flag is set TRUE initially
|
||||
@@ -540,8 +540,8 @@ public:
|
||||
};
|
||||
|
||||
/* Abstract interface for bar-size handler classes.
|
||||
* These objects receive notifications, whenever the docking
|
||||
* state of the bar is changed, thus they have a possibility
|
||||
* These objects receive notifications, whenever the docking
|
||||
* state of the bar is changed, thus they have a possibility
|
||||
* to adjust the values in cbDimInfo::mSizes accordingly.
|
||||
* Specific handlers can be hooked to specific types of bars.
|
||||
*/
|
||||
@@ -590,7 +590,7 @@ public:
|
||||
// from the bar's actual window, filled
|
||||
// with frame's beckground color, default: 0
|
||||
|
||||
int mVertGap;
|
||||
int mVertGap;
|
||||
|
||||
// left/right gap, separates decorations
|
||||
// from the bar's actual window, filled
|
||||
@@ -604,7 +604,7 @@ public:
|
||||
|
||||
bool mIsFixed;
|
||||
|
||||
cbBarDimHandlerBase* mpHandler; // NULL, if no handler present
|
||||
cbBarDimHandlerBase* mpHandler; // NULL, if no handler present
|
||||
|
||||
public:
|
||||
|
||||
@@ -625,18 +625,18 @@ public:
|
||||
cbBarDimHandlerBase* pDimHandler = NULL
|
||||
);
|
||||
|
||||
cbDimInfo( int x, int y,
|
||||
bool isFixed = TRUE,
|
||||
int gap = 6,
|
||||
cbDimInfo( int x, int y,
|
||||
bool isFixed = TRUE,
|
||||
int gap = 6,
|
||||
cbBarDimHandlerBase* pDimHandler = NULL
|
||||
);
|
||||
);
|
||||
|
||||
const cbDimInfo& operator=( const cbDimInfo& other );
|
||||
|
||||
// destroys handler automatically, if present
|
||||
~cbDimInfo();
|
||||
|
||||
inline cbBarDimHandlerBase* GetDimHandler() { return mpHandler; }
|
||||
inline cbBarDimHandlerBase* GetDimHandler() { return mpHandler; }
|
||||
};
|
||||
|
||||
WX_DEFINE_ARRAY(float, cbArrayFloat);
|
||||
@@ -679,7 +679,7 @@ public:
|
||||
|
||||
// convenience method
|
||||
|
||||
inline cbBarInfo* GetFirstBar()
|
||||
inline cbBarInfo* GetFirstBar()
|
||||
|
||||
{ return mBars.GetCount() ? mBars[0] : NULL; }
|
||||
};
|
||||
@@ -692,20 +692,20 @@ public:
|
||||
wxString mName;
|
||||
|
||||
// stores bar's bounds in pane's coordinates
|
||||
wxRect mBounds;
|
||||
wxRect mBounds;
|
||||
|
||||
// stores precalculated bar's bounds in parent frame's coordinates
|
||||
wxRect mBoundsInParent;
|
||||
wxRect mBoundsInParent;
|
||||
|
||||
// back-ref to the row, which contains this bar
|
||||
cbRowInfo* mpRow;
|
||||
cbRowInfo* mpRow;
|
||||
|
||||
// are set up according to the types of the surrounding bars in the row
|
||||
bool mHasLeftHandle;
|
||||
bool mHasRightHandle;
|
||||
|
||||
cbDimInfo mDimInfo; // preferred sizes for each, control bar state
|
||||
|
||||
|
||||
int mState; // (see definition of controlbar states)
|
||||
|
||||
int mAlignment; // alignment of the pane to which this
|
||||
@@ -721,7 +721,7 @@ public:
|
||||
|
||||
wxPoint mPosIfFloated; // stored last position when bar was in "floated" state
|
||||
// poistion is stored in parent-window's coordinates
|
||||
|
||||
|
||||
cbUpdateMgrData mUMgrData; // info stored for updates-manager
|
||||
|
||||
cbBarInfo* mpNext; // next. bar in the row
|
||||
@@ -760,14 +760,14 @@ public:
|
||||
|
||||
void Reset();
|
||||
bool Next(); // TRUE, if next bar is available
|
||||
|
||||
|
||||
cbBarInfo& BarInfo();
|
||||
|
||||
// returns reference to currently traversed row
|
||||
cbRowInfo& RowInfo();
|
||||
};
|
||||
|
||||
/* structure holds configuration options,
|
||||
/* structure holds configuration options,
|
||||
* which are usually the same for all panes in
|
||||
* frame layout
|
||||
*/
|
||||
@@ -795,16 +795,16 @@ class cbCommonPaneProperties : public wxObject
|
||||
|
||||
// minimal dimensions for not-fixed bars in this pane (16x16 default)
|
||||
|
||||
wxSize mMinCBarDim;
|
||||
wxSize mMinCBarDim;
|
||||
|
||||
// width/height of resizing sash
|
||||
|
||||
|
||||
int mResizeHandleSize;
|
||||
|
||||
cbCommonPaneProperties(void);
|
||||
};
|
||||
|
||||
/* class manages containment and control of control-bars
|
||||
/* class manages containment and control of control-bars
|
||||
* along one of the four edges of the parent frame
|
||||
*/
|
||||
|
||||
@@ -822,10 +822,10 @@ public:
|
||||
int mRightMargin; // default: 2 pixels
|
||||
int mTopMargin; // default: 2 pixels
|
||||
int mBottomMargin; // default: 2 pixels
|
||||
|
||||
|
||||
public:
|
||||
// position of the pane in frame's coordinates
|
||||
wxRect mBoundsInParent;
|
||||
wxRect mBoundsInParent;
|
||||
|
||||
// pane width and height in pane's coordinates
|
||||
int mPaneWidth;
|
||||
@@ -843,7 +843,7 @@ public: /* protected really */
|
||||
|
||||
// transient properties
|
||||
|
||||
wxList mRowShapeData; // shapes of bars of recently modified row,
|
||||
wxList mRowShapeData; // shapes of bars of recently modified row,
|
||||
// stored when in "non-destructive-firction" mode
|
||||
cbRowInfo* mpStoredRow; // row-info for which the shapes are stored
|
||||
|
||||
@@ -859,8 +859,8 @@ public: /* protected really (accessed only by plugins) */
|
||||
int GetRowAt( int paneY );
|
||||
int GetRowAt( int upperY, int lowerY );
|
||||
|
||||
// re-setups flags in the row-information structure, so that
|
||||
// the would match the changed state of row-items correctly
|
||||
// re-setups flags in the row-information structure, so that
|
||||
// the would match the changed state of row-items correctly
|
||||
void SyncRowFlags( cbRowInfo* pRow );
|
||||
|
||||
// layout "AI" helpers:
|
||||
@@ -886,7 +886,7 @@ public: /* protected really (accessed only by plugins) */
|
||||
void InitLinksForRow( cbRowInfo* pRow );
|
||||
void InitLinksForRows();
|
||||
|
||||
// coordinate translation between parent's frame and this pane
|
||||
// coordinate translation between parent's frame and this pane
|
||||
|
||||
void FrameToPane( int* x, int* y );
|
||||
void PaneToFrame( int* x, int* y );
|
||||
@@ -904,7 +904,7 @@ public: /* protected really (accessed only by plugins) */
|
||||
|
||||
public: /* protected really (accessed only by plugins) */
|
||||
|
||||
// methods for incramental on-screen refreshing of the pane
|
||||
// methods for incramental on-screen refreshing of the pane
|
||||
// (simply, they are wrappers around corresponding plugin-events)
|
||||
|
||||
virtual void PaintBarDecorations( cbBarInfo* pBar, wxDC& dc );
|
||||
@@ -941,7 +941,7 @@ public: /* public members */
|
||||
virtual void RemoveBar( cbBarInfo* pBar );
|
||||
|
||||
// rect given in the parent frame's coordinates
|
||||
|
||||
|
||||
virtual void InsertBar( cbBarInfo* pBar, const wxRect& atRect );
|
||||
|
||||
// inserts bar into the given row, with dimensions and position
|
||||
@@ -949,7 +949,7 @@ public: /* public members */
|
||||
|
||||
virtual void InsertBar( cbBarInfo* pBar, cbRowInfo* pIntoRow );
|
||||
|
||||
// inserts bar, sets its position according to the preferred settings
|
||||
// inserts bar, sets its position according to the preferred settings
|
||||
// given in (*pBarInfo) structure
|
||||
|
||||
virtual void InsertBar( cbBarInfo* pBarInfo );
|
||||
@@ -957,7 +957,7 @@ public: /* public members */
|
||||
// does not destroy the row object, only removes the corresponding
|
||||
// node from this pane
|
||||
virtual void RemoveRow( cbRowInfo* pRow );
|
||||
|
||||
|
||||
// does not refresh the inserted row immediately,
|
||||
// if pBeforeRowNode arg. is NULL, row is appended to the end of pane's row list
|
||||
virtual void InsertRow( cbRowInfo* pRow, cbRowInfo* pBeforeRow );
|
||||
@@ -975,8 +975,8 @@ public: /* public members */
|
||||
|
||||
// convenience method
|
||||
|
||||
inline cbRowInfo* GetFirstRow()
|
||||
|
||||
inline cbRowInfo* GetFirstRow()
|
||||
|
||||
{ return mRows.GetCount() ? mRows[0] : NULL; }
|
||||
|
||||
// TRUE, if the given bar node presents in this pane
|
||||
@@ -1053,7 +1053,7 @@ public:
|
||||
: mpLayout( pPanel ) {}
|
||||
|
||||
virtual ~cbUpdatesManagerBase() {}
|
||||
|
||||
|
||||
void SetLayout( wxFrameLayout* pLayout ) { mpLayout = pLayout; }
|
||||
|
||||
// notificiactions received from frame-layout (in the order, in which
|
||||
@@ -1089,7 +1089,7 @@ public:
|
||||
cbDockPane* mpPane; // NULL, if event is not addressed to any specific pane
|
||||
|
||||
/* OLD STUFF::
|
||||
// FOR NOW FOR NOW:: all-in-one plugin event structure
|
||||
// FOR NOW FOR NOW:: all-in-one plugin event structure
|
||||
wxNode* mpObjNode;
|
||||
wxNode* mpObjNodeAux;
|
||||
wxPoint mPos;
|
||||
@@ -1098,18 +1098,15 @@ public:
|
||||
bool mAuxBoolVal;
|
||||
*/
|
||||
|
||||
// Not used, but required
|
||||
virtual wxEvent* Clone() const { return NULL; }
|
||||
|
||||
#if wxCHECK_VERSION(2,3,0)
|
||||
cbPluginEvent( wxEventType eventType, cbDockPane* pPane )
|
||||
: mpPane( pPane )
|
||||
|
||||
|
||||
{ m_eventType = eventType; }
|
||||
#else
|
||||
cbPluginEvent( int eventType, cbDockPane* pPane )
|
||||
: mpPane( pPane )
|
||||
|
||||
|
||||
{ m_eventType = eventType; }
|
||||
#endif
|
||||
};
|
||||
@@ -1163,7 +1160,7 @@ public:
|
||||
|
||||
#define cbEVT_PL_LEFT_DCLICK 5
|
||||
|
||||
#define cbEVT_PL_LAYOUT_ROW 6
|
||||
#define cbEVT_PL_LAYOUT_ROW 6
|
||||
#define cbEVT_PL_RESIZE_ROW 7
|
||||
#define cbEVT_PL_LAYOUT_ROWS 8
|
||||
#define cbEVT_PL_INSERT_BAR 9
|
||||
@@ -1227,7 +1224,7 @@ class cbCustomizeBarEvent;
|
||||
class cbCustomizeLayoutEvent;
|
||||
|
||||
// defs. for handler-methods
|
||||
|
||||
|
||||
typedef void (wxEvtHandler::*cbLeftDownHandler )(cbLeftDownEvent&);
|
||||
typedef void (wxEvtHandler::*cbLeftUpHandler )(cbLeftUpEvent&);
|
||||
typedef void (wxEvtHandler::*cbRightDownHandler )(cbRightDownEvent&);
|
||||
@@ -1269,7 +1266,7 @@ typedef void (wxEvtHandler::*cbCustomizeLayoutHandler )(cbCustomizeLayoutEvent&)
|
||||
#define EVT_PL_RIGHT_UP(func) wxEventTableEntry( cbEVT_PL_RIGHT_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbRightUpHandler ) & func, (wxObject *) NULL ),
|
||||
#define EVT_PL_MOTION(func) wxEventTableEntry( cbEVT_PL_MOTION, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbMotionHandler ) & func, (wxObject *) NULL ),
|
||||
#define EVT_PL_LEFT_DCLICK(func) wxEventTableEntry( cbEVT_PL_LEFT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLeftDClickHandler ) & func, (wxObject *) NULL ),
|
||||
|
||||
|
||||
#define EVT_PL_LAYOUT_ROW(func) wxEventTableEntry( cbEVT_PL_LAYOUT_ROW, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLayoutRowHandler ) & func, (wxObject *) NULL ),
|
||||
#define EVT_PL_RESIZE_ROW(func) wxEventTableEntry( cbEVT_PL_RESIZE_ROW, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbResizeRowHandler ) & func, (wxObject *) NULL ),
|
||||
#define EVT_PL_LAYOUT_ROWS(func) wxEventTableEntry( cbEVT_PL_LAYOUT_ROWS, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLayoutRowsHandler ) & func, (wxObject *) NULL ),
|
||||
@@ -1277,7 +1274,7 @@ typedef void (wxEvtHandler::*cbCustomizeLayoutHandler )(cbCustomizeLayoutEvent&)
|
||||
#define EVT_PL_RESIZE_BAR(func) wxEventTableEntry( cbEVT_PL_RESIZE_BAR, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbResizeBarHandler ) & func, (wxObject *) NULL ),
|
||||
#define EVT_PL_REMOVE_BAR(func) wxEventTableEntry( cbEVT_PL_REMOVE_BAR, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbRemoveBarHandler ) & func, (wxObject *) NULL ),
|
||||
#define EVT_PL_SIZE_BAR_WND(func) wxEventTableEntry( cbEVT_PL_SIZE_BAR_WND, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbSizeBarWndHandler ) & func, (wxObject *) NULL ),
|
||||
|
||||
|
||||
#define EVT_PL_DRAW_BAR_DECOR(func) wxEventTableEntry( cbEVT_PL_DRAW_BAR_DECOR, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawBarDecorHandler ) & func, (wxObject *) NULL ),
|
||||
#define EVT_PL_DRAW_ROW_DECOR(func) wxEventTableEntry( cbEVT_PL_DRAW_ROW_DECOR, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawRowDecorHandler ) & func, (wxObject *) NULL ),
|
||||
#define EVT_PL_DRAW_PANE_DECOR(func) wxEventTableEntry( cbEVT_PL_DRAW_PANE_DECOR, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawPaneDecorHandler ) & func, (wxObject *) NULL ),
|
||||
@@ -1285,7 +1282,7 @@ typedef void (wxEvtHandler::*cbCustomizeLayoutHandler )(cbCustomizeLayoutEvent&)
|
||||
#define EVT_PL_DRAW_ROW_HANDLES(func) wxEventTableEntry( cbEVT_PL_DRAW_ROW_HANDLES, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawRowHandlesHandler ) & func, (wxObject *) NULL ),
|
||||
#define EVT_PL_DRAW_ROW_BKGROUND(func) wxEventTableEntry( cbEVT_PL_DRAW_ROW_BKGROUND, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawRowBkGroundHandler ) & func, (wxObject *) NULL ),
|
||||
#define EVT_PL_DRAW_PANE_BKGROUND(func) wxEventTableEntry( cbEVT_PL_DRAW_PANE_BKGROUND, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawPaneBkGroundHandler) & func, (wxObject *) NULL ),
|
||||
|
||||
|
||||
#define EVT_PL_START_BAR_DRAGGING(func) wxEventTableEntry( cbEVT_PL_START_BAR_DRAGGING, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbStartBarDraggingHandler) & func, (wxObject *) NULL ),
|
||||
#define EVT_PL_DRAW_HINT_RECT(func) wxEventTableEntry( cbEVT_PL_DRAW_HINT_RECT, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawHintRectHandler ) & func, (wxObject *) NULL ),
|
||||
|
||||
@@ -1302,7 +1299,7 @@ typedef void (wxEvtHandler::*cbCustomizeLayoutHandler )(cbCustomizeLayoutEvent&)
|
||||
#define EVT_PL_RIGHT_UP(func) { cbEVT_PL_RIGHT_UP, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbRightUpHandler ) & func },
|
||||
#define EVT_PL_MOTION(func) { cbEVT_PL_MOTION, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbMotionHandler ) & func },
|
||||
#define EVT_PL_LEFT_DCLICK(func) { cbEVT_PL_LEFT_DCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLeftDClickHandler ) & func },
|
||||
|
||||
|
||||
#define EVT_PL_LAYOUT_ROW(func) { cbEVT_PL_LAYOUT_ROW, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLayoutRowHandler ) & func },
|
||||
#define EVT_PL_RESIZE_ROW(func) { cbEVT_PL_RESIZE_ROW, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbResizeRowHandler ) & func },
|
||||
#define EVT_PL_LAYOUT_ROWS(func) { cbEVT_PL_LAYOUT_ROWS, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbLayoutRowsHandler ) & func },
|
||||
@@ -1310,7 +1307,7 @@ typedef void (wxEvtHandler::*cbCustomizeLayoutHandler )(cbCustomizeLayoutEvent&)
|
||||
#define EVT_PL_RESIZE_BAR(func) { cbEVT_PL_RESIZE_BAR, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbResizeBarHandler ) & func },
|
||||
#define EVT_PL_REMOVE_BAR(func) { cbEVT_PL_REMOVE_BAR, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbRemoveBarHandler ) & func },
|
||||
#define EVT_PL_SIZE_BAR_WND(func) { cbEVT_PL_SIZE_BAR_WND, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbSizeBarWndHandler ) & func },
|
||||
|
||||
|
||||
#define EVT_PL_DRAW_BAR_DECOR(func) { cbEVT_PL_DRAW_BAR_DECOR, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawBarDecorHandler ) & func },
|
||||
#define EVT_PL_DRAW_ROW_DECOR(func) { cbEVT_PL_DRAW_ROW_DECOR, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawRowDecorHandler ) & func },
|
||||
#define EVT_PL_DRAW_PANE_DECOR(func) { cbEVT_PL_DRAW_PANE_DECOR, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawPaneDecorHandler ) & func },
|
||||
@@ -1318,7 +1315,7 @@ typedef void (wxEvtHandler::*cbCustomizeLayoutHandler )(cbCustomizeLayoutEvent&)
|
||||
#define EVT_PL_DRAW_ROW_HANDLES(func) { cbEVT_PL_DRAW_ROW_HANDLES, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawRowHandlesHandler ) & func },
|
||||
#define EVT_PL_DRAW_ROW_BKGROUND(func) { cbEVT_PL_DRAW_ROW_BKGROUND, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawRowBkGroundHandler ) & func },
|
||||
#define EVT_PL_DRAW_PANE_BKGROUND(func) { cbEVT_PL_DRAW_PANE_BKGROUND, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawPaneBkGroundHandler) & func },
|
||||
|
||||
|
||||
#define EVT_PL_START_BAR_DRAGGING(func) { cbEVT_PL_START_BAR_DRAGGING, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbStartBarDraggingHandler) & func },
|
||||
#define EVT_PL_DRAW_HINT_RECT(func) { cbEVT_PL_DRAW_HINT_RECT, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbDrawHintRectHandler ) & func },
|
||||
|
||||
@@ -1328,8 +1325,8 @@ typedef void (wxEvtHandler::*cbCustomizeLayoutHandler )(cbCustomizeLayoutEvent&)
|
||||
#define EVT_PL_CUSTOMIZE_BAR(func) { cbEVT_PL_CUSTOMIZE_BAR, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbCustomizeBarHandler) & func },
|
||||
#define EVT_PL_CUSTOMIZE_LAYOUT(func) { cbEVT_PL_CUSTOMIZE_LAYOUT, -1, -1, (wxObjectEventFunction) (wxEventFunction) (cbCustomizeLayoutHandler) & func },
|
||||
#endif
|
||||
/*
|
||||
* abstract base class for all control-bar related plugins
|
||||
/*
|
||||
* abstract base class for all control-bar related plugins
|
||||
*/
|
||||
|
||||
class cbPluginBase : public wxEvtHandler
|
||||
@@ -1337,23 +1334,23 @@ class cbPluginBase : public wxEvtHandler
|
||||
DECLARE_ABSTRACT_CLASS( cbPluginBase )
|
||||
public:
|
||||
|
||||
wxFrameLayout* mpLayout; // back-reference to the frame layout
|
||||
wxFrameLayout* mpLayout; // back-reference to the frame layout
|
||||
|
||||
// specifies panes, for which this plugin receives events
|
||||
// (see pane masks definitions)
|
||||
int mPaneMask;
|
||||
int mPaneMask;
|
||||
|
||||
bool mIsReady; // is TRUE, when plugin is ready to handle events
|
||||
|
||||
public:
|
||||
cbPluginBase(void)
|
||||
cbPluginBase(void)
|
||||
|
||||
: mpLayout ( 0 ),
|
||||
mPaneMask( wxALL_PANES ),
|
||||
mIsReady ( FALSE )
|
||||
{}
|
||||
|
||||
cbPluginBase( wxFrameLayout* pPanel, int paneMask = wxALL_PANES )
|
||||
cbPluginBase( wxFrameLayout* pPanel, int paneMask = wxALL_PANES )
|
||||
|
||||
: mpLayout ( pPanel ),
|
||||
mPaneMask( paneMask ),
|
||||
|
||||
@@ -13,13 +13,6 @@
|
||||
#ifndef _WX_DYNAMICSASH_H_
|
||||
#define _WX_DYNAMICSASH_H_
|
||||
|
||||
#ifdef GIZMOISDLL
|
||||
#define GIZMODLLEXPORT WXDLLEXPORT
|
||||
#else
|
||||
#define GIZMODLLEXPORT
|
||||
#endif
|
||||
|
||||
|
||||
/*
|
||||
|
||||
wxDynamicSashWindow
|
||||
@@ -51,7 +44,7 @@
|
||||
for instance, you wish to scroll a subwindow of the view you add to
|
||||
your wxDynamicSashWindow object, rather than scrolling the whole view.)
|
||||
In this case, you will need to construct your wxDynamicSashWindow without
|
||||
the wxDS_MANAGE_SCROLLBARS style and you will need to use the
|
||||
the wxMANAGE_SCROLLBARS style and you will need to use the
|
||||
GetHScrollBar() and GetVScrollBar() methods to retrieve the scrollbar
|
||||
controls and call SetEventHanler() on them to redirect the scrolling
|
||||
events whenever your window is reparented by wxDyanmicSashWindow.
|
||||
@@ -80,19 +73,11 @@ class wxScrollBar;
|
||||
|
||||
|
||||
/*
|
||||
wxDS_MANAGE_SCROLLBARS is a default style of wxDynamicSashWindow which
|
||||
wxMANAGE_SCROLLBARS is a default style of wxDynamicSashWindow which
|
||||
will cause it to respond to scrollbar events for your application by
|
||||
automatically scrolling the child view.
|
||||
*/
|
||||
#define wxDS_MANAGE_SCROLLBARS 0x0010
|
||||
|
||||
|
||||
/*
|
||||
wxDS_DRAG_CORNER style indicates that the views can also be resized by
|
||||
dragging the corner piece between the scrollbars, and which is reflected up
|
||||
to the frame if necessary.
|
||||
*/
|
||||
#define wxDS_DRAG_CORNER 0x0020
|
||||
#define wxMANAGE_SCROLLBARS 0x00800000
|
||||
|
||||
|
||||
/*
|
||||
@@ -102,14 +87,11 @@ class wxScrollBar;
|
||||
a child of the wxDynamicSashWindow. wxDynamicSashWindow will
|
||||
automatically reparent it to the proper place in its window hierarchy.
|
||||
*/
|
||||
class GIZMODLLEXPORT wxDynamicSashSplitEvent : public wxCommandEvent {
|
||||
class wxDynamicSashSplitEvent : public wxCommandEvent {
|
||||
public:
|
||||
wxDynamicSashSplitEvent();
|
||||
wxDynamicSashSplitEvent(const wxDynamicSashSplitEvent& event): wxCommandEvent(event) { }
|
||||
wxDynamicSashSplitEvent(wxObject *target);
|
||||
|
||||
virtual wxEvent* Clone() const { return new wxDynamicSashSplitEvent(*this); }
|
||||
|
||||
private:
|
||||
DECLARE_DYNAMIC_CLASS(wxDynamicSashSplitEvent)
|
||||
};
|
||||
@@ -124,14 +106,11 @@ private:
|
||||
the scrollbars' event handlers connected to your view's event handler
|
||||
class.
|
||||
*/
|
||||
class GIZMODLLEXPORT wxDynamicSashUnifyEvent : public wxCommandEvent {
|
||||
class wxDynamicSashUnifyEvent : public wxCommandEvent {
|
||||
public:
|
||||
wxDynamicSashUnifyEvent();
|
||||
wxDynamicSashUnifyEvent(const wxDynamicSashUnifyEvent& event): wxCommandEvent(event) {}
|
||||
wxDynamicSashUnifyEvent(wxObject *target);
|
||||
|
||||
virtual wxEvent* Clone() const { return new wxDynamicSashUnifyEvent(*this); }
|
||||
|
||||
private:
|
||||
DECLARE_DYNAMIC_CLASS(wxDynamicSashUnifyEvent);
|
||||
};
|
||||
@@ -139,18 +118,18 @@ private:
|
||||
/*
|
||||
wxDynamicSashWindow. See above.
|
||||
*/
|
||||
class GIZMODLLEXPORT wxDynamicSashWindow : public wxWindow {
|
||||
class 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,
|
||||
long style = wxCLIP_CHILDREN | wxMANAGE_SCROLLBARS,
|
||||
const wxString& name = "dynamicSashWindow");
|
||||
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,
|
||||
long style = wxCLIP_CHILDREN | wxMANAGE_SCROLLBARS,
|
||||
const wxString& name = "dynamicSashWindow");
|
||||
virtual wxScrollBar *GetHScrollBar(const wxWindow *child) const;
|
||||
virtual wxScrollBar *GetVScrollBar(const wxWindow *child) const;
|
||||
|
||||
@@ -17,21 +17,15 @@
|
||||
|
||||
#include "wx/panel.h"
|
||||
|
||||
#ifdef GIZMOISDLL
|
||||
#define GIZMODLLEXPORT WXDLLEXPORT
|
||||
#else
|
||||
#define GIZMODLLEXPORT
|
||||
#endif
|
||||
|
||||
|
||||
class WXDLLEXPORT wxBitmapButton;
|
||||
class WXDLLEXPORT wxListCtrl;
|
||||
class WXDLLEXPORT wxListEvent;
|
||||
|
||||
|
||||
// This class provides a composite control that lets the
|
||||
// user easily enter list of strings
|
||||
|
||||
class GIZMODLLEXPORT wxEditableListBox : public wxPanel
|
||||
class WXDLLEXPORT wxEditableListBox : public wxPanel
|
||||
{
|
||||
DECLARE_CLASS(wxEditableListBox);
|
||||
|
||||
|
||||
@@ -1,89 +0,0 @@
|
||||
#ifndef _WX_LEDNUMBERCTRL_H_
|
||||
#define _WX_LEDNUMBERCTRL_H_
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma interface "wxLEDNumberCtrl.h"
|
||||
#endif
|
||||
|
||||
#ifdef GIZMOISDLL
|
||||
#define GIZMODLLEXPORT WXDLLEXPORT
|
||||
#else
|
||||
#define GIZMODLLEXPORT
|
||||
#endif
|
||||
|
||||
|
||||
#include <wx/window.h>
|
||||
#include <wx/control.h>
|
||||
|
||||
class wxEraseEvent;
|
||||
class wxPaintEvent;
|
||||
class wxSizeEvent;
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// enum and styles
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
enum wxLEDValueAlign
|
||||
{
|
||||
wxLED_ALIGN_LEFT = 0x01,
|
||||
wxLED_ALIGN_RIGHT = 0x02,
|
||||
wxLED_ALIGN_CENTER = 0x04,
|
||||
|
||||
wxLED_ALIGN_MASK = 0x04
|
||||
};
|
||||
|
||||
#define wxLED_DRAW_FADED 0x08
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// wxLEDNumberCtrl
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
class GIZMODLLEXPORT wxLEDNumberCtrl : public wxControl
|
||||
{
|
||||
public:
|
||||
// Constructors.
|
||||
wxLEDNumberCtrl();
|
||||
wxLEDNumberCtrl(wxWindow *parent, wxWindowID id = -1,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxLED_ALIGN_LEFT | wxLED_DRAW_FADED);
|
||||
|
||||
// Create functions.
|
||||
bool Create(wxWindow *parent, wxWindowID id = -1,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0);
|
||||
|
||||
wxLEDValueAlign GetAlignment() const { return m_Alignment; }
|
||||
bool GetDrawFaded() const { return m_DrawFaded; }
|
||||
const wxString &GetValue() const { return m_Value; }
|
||||
|
||||
void SetAlignment(wxLEDValueAlign Alignment, bool Redraw = TRUE);
|
||||
void SetDrawFaded(bool DrawFaded, bool Redraw = TRUE);
|
||||
void SetValue(const wxString &Value, bool Redraw = TRUE);
|
||||
|
||||
private:
|
||||
// Members.
|
||||
wxString m_Value;
|
||||
wxLEDValueAlign m_Alignment;
|
||||
|
||||
int m_LineMargin;
|
||||
int m_DigitMargin;
|
||||
int m_LineLength;
|
||||
int m_LineWidth;
|
||||
bool m_DrawFaded;
|
||||
int m_LeftStartPos;
|
||||
|
||||
// Functions.
|
||||
void DrawDigit(wxDC &Dc, int Digit, int Column);
|
||||
void RecalcInternals(const wxSize &CurrentSize);
|
||||
|
||||
// Events.
|
||||
DECLARE_EVENT_TABLE()
|
||||
|
||||
void OnEraseBackground(wxEraseEvent &Event);
|
||||
void OnPaint(wxPaintEvent &Event);
|
||||
void OnSize(wxSizeEvent &Event);
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -19,14 +19,6 @@
|
||||
#pragma interface "multicell.h"
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef GIZMOISDLL
|
||||
#define GIZMODLLEXPORT WXDLLEXPORT
|
||||
#else
|
||||
#define GIZMODLLEXPORT
|
||||
#endif
|
||||
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// headers
|
||||
// ----------------------------------------------------------------------------
|
||||
@@ -53,7 +45,7 @@ enum wxResizable
|
||||
// wxMultiCellItemHandle
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
class GIZMODLLEXPORT wxMultiCellItemHandle: public wxObject
|
||||
class WXDLLEXPORT wxMultiCellItemHandle: public wxObject
|
||||
{
|
||||
DECLARE_CLASS(wxMultiCellItemHandle);
|
||||
protected:
|
||||
@@ -89,7 +81,7 @@ private:
|
||||
// wxMultiCellSizer
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
class GIZMODLLEXPORT wxMultiCellSizer : virtual public wxSizer
|
||||
class WXDLLEXPORT wxMultiCellSizer : virtual public wxSizer
|
||||
{
|
||||
DECLARE_CLASS(wxMultiCellSizer);
|
||||
|
||||
@@ -139,7 +131,7 @@ class wxCell;
|
||||
// wxMultiCellCanvas
|
||||
//---------------------------------------------------------------------------
|
||||
|
||||
class GIZMODLLEXPORT wxMultiCellCanvas : public wxFlexGridSizer
|
||||
class wxMultiCellCanvas : public wxFlexGridSizer
|
||||
{
|
||||
public:
|
||||
wxMultiCellCanvas(wxWindow *parent, int numRows = 2, int numCols = 2);
|
||||
|
||||
@@ -15,13 +15,7 @@
|
||||
#define _WX_SPLITTREE_H_
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma interface "splittree.h"
|
||||
#endif
|
||||
|
||||
#ifdef GIZMOISDLL
|
||||
#define GIZMODLLEXPORT WXDLLEXPORT
|
||||
#else
|
||||
#define GIZMODLLEXPORT
|
||||
#pragma interface "splittree.h"
|
||||
#endif
|
||||
|
||||
// Set this to 1 to use generic tree control (doesn't yet work properly)
|
||||
@@ -52,19 +46,18 @@ class wxSplitterScrolledWindow;
|
||||
* It also updates the scrolled window vertical scrollbar as appropriate.
|
||||
*/
|
||||
|
||||
class GIZMODLLEXPORT wxRemotelyScrolledTreeCtrl: public wxTreeCtrl
|
||||
class wxRemotelyScrolledTreeCtrl: public wxTreeCtrl
|
||||
{
|
||||
DECLARE_CLASS(wxRemotelyScrolledTreeCtrl)
|
||||
DECLARE_CLASS(wxRemotelyScrolledTreeCtrl)
|
||||
public:
|
||||
wxRemotelyScrolledTreeCtrl(wxWindow* parent, wxWindowID id, const wxPoint& pt = wxDefaultPosition,
|
||||
const wxSize& sz = wxDefaultSize, long style = wxTR_HAS_BUTTONS);
|
||||
~wxRemotelyScrolledTreeCtrl();
|
||||
~wxRemotelyScrolledTreeCtrl();
|
||||
|
||||
//// Events
|
||||
void OnSize(wxSizeEvent& event);
|
||||
void OnExpand(wxTreeEvent& event);
|
||||
void OnSize(wxSizeEvent& event);
|
||||
void OnExpand(wxTreeEvent& event);
|
||||
void OnScroll(wxScrollWinEvent& event);
|
||||
void OnPaint(wxPaintEvent& event);
|
||||
|
||||
//// Overrides
|
||||
// Override this in case we're using the generic tree control.
|
||||
@@ -89,18 +82,18 @@ public:
|
||||
virtual int GetScrollPos(int orient) const;
|
||||
|
||||
//// Helpers
|
||||
void HideVScrollbar();
|
||||
void HideVScrollbar();
|
||||
|
||||
// Calculate the tree overall size so we can set the scrollbar
|
||||
// correctly
|
||||
void CalcTreeSize(wxRect& rect);
|
||||
void CalcTreeSize(const wxTreeItemId& id, wxRect& rect);
|
||||
// Calculate the tree overall size so we can set the scrollbar
|
||||
// correctly
|
||||
void CalcTreeSize(wxRect& rect);
|
||||
void CalcTreeSize(const wxTreeItemId& id, wxRect& rect);
|
||||
|
||||
// Adjust the containing wxScrolledWindow's scrollbars appropriately
|
||||
void AdjustRemoteScrollbars();
|
||||
// Adjust the containing wxScrolledWindow's scrollbars appropriately
|
||||
void AdjustRemoteScrollbars();
|
||||
|
||||
// Find the scrolled window that contains this control
|
||||
wxScrolledWindow* GetScrolledWindow() const;
|
||||
// Find the scrolled window that contains this control
|
||||
wxScrolledWindow* GetScrolledWindow() const;
|
||||
|
||||
// Scroll to the given line (in scroll units where each unit is
|
||||
// the height of an item)
|
||||
@@ -108,16 +101,15 @@ public:
|
||||
|
||||
//// Accessors
|
||||
|
||||
// The companion window is one which will get notified when certain
|
||||
// events happen such as node expansion
|
||||
void SetCompanionWindow(wxWindow* companion) { m_companionWindow = companion; }
|
||||
wxWindow* GetCompanionWindow() const { return m_companionWindow; }
|
||||
// The companion window is one which will get notified when certain
|
||||
// events happen such as node expansion
|
||||
void SetCompanionWindow(wxWindow* companion) { m_companionWindow = companion; }
|
||||
wxWindow* GetCompanionWindow() const { return m_companionWindow; }
|
||||
|
||||
|
||||
DECLARE_EVENT_TABLE()
|
||||
protected:
|
||||
wxWindow* m_companionWindow;
|
||||
bool m_drawRowLines;
|
||||
wxWindow* m_companionWindow;
|
||||
};
|
||||
|
||||
/*
|
||||
@@ -126,7 +118,7 @@ protected:
|
||||
* A window displaying values associated with tree control items.
|
||||
*/
|
||||
|
||||
class GIZMODLLEXPORT wxTreeCompanionWindow: public wxWindow
|
||||
class wxTreeCompanionWindow: public wxWindow
|
||||
{
|
||||
public:
|
||||
DECLARE_CLASS(wxTreeCompanionWindow)
|
||||
@@ -137,22 +129,22 @@ public:
|
||||
long style = 0);
|
||||
|
||||
//// Overrides
|
||||
virtual void DrawItem(wxDC& dc, wxTreeItemId id, const wxRect& rect);
|
||||
virtual void DrawItem(wxDC& dc, wxTreeItemId id, const wxRect& rect);
|
||||
|
||||
//// Events
|
||||
void OnPaint(wxPaintEvent& event);
|
||||
void OnPaint(wxPaintEvent& event);
|
||||
void OnScroll(wxScrollWinEvent& event);
|
||||
void OnExpand(wxTreeEvent& event);
|
||||
void OnExpand(wxTreeEvent& event);
|
||||
|
||||
//// Operations
|
||||
|
||||
//// Accessors
|
||||
wxRemotelyScrolledTreeCtrl* GetTreeCtrl() const { return m_treeCtrl; };
|
||||
void SetTreeCtrl(wxRemotelyScrolledTreeCtrl* treeCtrl) { m_treeCtrl = treeCtrl; }
|
||||
wxRemotelyScrolledTreeCtrl* GetTreeCtrl() const { return m_treeCtrl; };
|
||||
void SetTreeCtrl(wxRemotelyScrolledTreeCtrl* treeCtrl) { m_treeCtrl = treeCtrl; }
|
||||
|
||||
//// Data members
|
||||
protected:
|
||||
wxRemotelyScrolledTreeCtrl* m_treeCtrl;
|
||||
wxRemotelyScrolledTreeCtrl* m_treeCtrl;
|
||||
|
||||
DECLARE_EVENT_TABLE()
|
||||
};
|
||||
@@ -165,7 +157,7 @@ protected:
|
||||
* than the usual one.
|
||||
*/
|
||||
|
||||
class GIZMODLLEXPORT wxThinSplitterWindow: public wxSplitterWindow
|
||||
class wxThinSplitterWindow: public wxSplitterWindow
|
||||
{
|
||||
public:
|
||||
DECLARE_DYNAMIC_CLASS(wxThinSplitterWindow)
|
||||
@@ -181,10 +173,10 @@ public:
|
||||
// Tests for x, y over sash. Overriding this allows us to increase
|
||||
// the tolerance.
|
||||
bool SashHitTest(int x, int y, int tolerance = 2);
|
||||
void DrawSash(wxDC& dc);
|
||||
void DrawSash(wxDC& dc);
|
||||
|
||||
//// Events
|
||||
|
||||
|
||||
void OnSize(wxSizeEvent& event);
|
||||
|
||||
//// Operations
|
||||
@@ -205,7 +197,7 @@ protected:
|
||||
* scroll appropriately.
|
||||
*/
|
||||
|
||||
class GIZMODLLEXPORT wxSplitterScrolledWindow: public wxScrolledWindow
|
||||
class wxSplitterScrolledWindow: public wxScrolledWindow
|
||||
{
|
||||
public:
|
||||
DECLARE_DYNAMIC_CLASS(wxSplitterScrolledWindow)
|
||||
@@ -218,7 +210,7 @@ public:
|
||||
//// Overrides
|
||||
|
||||
//// Events
|
||||
|
||||
|
||||
void OnScroll(wxScrollWinEvent& event);
|
||||
void OnSize(wxSizeEvent& event);
|
||||
|
||||
|
||||
@@ -124,7 +124,7 @@ class WXDLLEXPORT wxExprDatabase;
|
||||
|
||||
|
||||
|
||||
class wxShapeEvtHandler: public wxObject, public wxClientDataContainer
|
||||
class wxShapeEvtHandler: public wxObject
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(wxShapeEvtHandler)
|
||||
|
||||
@@ -299,6 +299,8 @@ class wxShape: public wxShapeEvtHandler
|
||||
|
||||
void SetPen(wxPen *pen);
|
||||
void SetBrush(wxBrush *brush);
|
||||
inline void SetClientData(wxObject *client_data) { m_clientData = client_data; };
|
||||
inline wxObject *GetClientData() const { return m_clientData; };
|
||||
|
||||
virtual void Show(bool show);
|
||||
virtual bool IsShown() const { return m_visible; }
|
||||
@@ -513,10 +515,8 @@ class wxShape: public wxShapeEvtHandler
|
||||
// Clears points from a list of wxRealPoints
|
||||
void ClearPointList(wxList& list);
|
||||
|
||||
// Return pen or brush of the right colour for the background
|
||||
wxPen GetBackgroundPen();
|
||||
wxBrush GetBackgroundBrush();
|
||||
|
||||
private:
|
||||
wxObject* m_clientData;
|
||||
|
||||
protected:
|
||||
wxShapeEvtHandler* m_eventHandler;
|
||||
|
||||
@@ -53,20 +53,20 @@ void oglDrawFormattedText(wxDC& context, wxList *text_list,
|
||||
// Give it a list of points, finds the centre.
|
||||
void oglFindPolylineCentroid(wxList *points, double *x, double *y);
|
||||
|
||||
void oglCheckLineIntersection(double x1, double y1, double x2, double y2,
|
||||
void oglCheckLineIntersection(double x1, double y1, double x2, double y2,
|
||||
double x3, double y3, double x4, double y4,
|
||||
double *ratio1, double *ratio2);
|
||||
|
||||
void oglFindEndForPolyline(double n, double xvec[], double yvec[],
|
||||
void oglFindEndForPolyline(double n, double xvec[], double yvec[],
|
||||
double x1, double y1, double x2, double y2, double *x3, double *y3);
|
||||
|
||||
|
||||
void oglFindEndForBox(double width, double height,
|
||||
void oglFindEndForBox(double width, double height,
|
||||
double x1, double y1, // Centre of box (possibly)
|
||||
double x2, double y2, // other end of line
|
||||
double *x3, double *y3); // End on box edge
|
||||
|
||||
void oglFindEndForCircle(double radius,
|
||||
void oglFindEndForCircle(double radius,
|
||||
double x1, double y1, // Centre of circle
|
||||
double x2, double y2, // Other end of line
|
||||
double *x3, double *y3);
|
||||
@@ -83,7 +83,7 @@ void oglGetArrowPoints(double x1, double y1, double x2, double y2,
|
||||
* This function assumes that the centre of the ellipse is at x1, y1, and the
|
||||
* ellipse has a width of a1 and a height of b1. It also assumes you are
|
||||
* wanting to draw an arc FROM point x2, y2 TOWARDS point x3, y3.
|
||||
* This function calculates the x,y coordinates of the intersection point of
|
||||
* This function calculates the x,y coordinates of the intersection point of
|
||||
* the arc with the ellipse.
|
||||
* Author: Ian Harrison
|
||||
*/
|
||||
@@ -99,6 +99,7 @@ extern wxPen* g_oglWhiteBackgroundPen;
|
||||
extern wxPen* g_oglTransparentPen;
|
||||
extern wxBrush* g_oglWhiteBackgroundBrush;
|
||||
extern wxPen* g_oglBlackForegroundPen;
|
||||
extern wxCursor* g_oglBullseyeCursor;
|
||||
|
||||
extern wxFont* oglMatchFont(int point_size);
|
||||
|
||||
|
||||
@@ -1594,14 +1594,6 @@ public:
|
||||
// Send a message to Scintilla
|
||||
long SendMsg(int msg, long wp=0, long lp=0);
|
||||
|
||||
|
||||
// Set the vertical scrollbar to use instead of the ont that's built-in.
|
||||
void SetVScrollBar(wxScrollBar* bar) { m_vScrollBar = bar; }
|
||||
|
||||
|
||||
// Set the horizontal scrollbar to use instead of the ont that's built-in.
|
||||
void SetHScrollBar(wxScrollBar* bar) { m_hScrollBar = bar; }
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
|
||||
|
||||
@@ -1610,12 +1602,10 @@ private:
|
||||
// Event handlers
|
||||
void OnPaint(wxPaintEvent& evt);
|
||||
void OnScrollWin(wxScrollWinEvent& evt);
|
||||
void OnScroll(wxScrollEvent& evt);
|
||||
void OnSize(wxSizeEvent& evt);
|
||||
void OnMouseLeftDown(wxMouseEvent& evt);
|
||||
void OnMouseMove(wxMouseEvent& evt);
|
||||
void OnMouseLeftUp(wxMouseEvent& evt);
|
||||
void OnMouseRightUp(wxMouseEvent& evt);
|
||||
void OnContextMenu(wxContextMenuEvent& evt);
|
||||
void OnMouseWheel(wxMouseEvent& evt);
|
||||
void OnChar(wxKeyEvent& evt);
|
||||
@@ -1639,8 +1629,6 @@ private:
|
||||
|
||||
ScintillaWX* m_swx;
|
||||
wxStopWatch m_stopWatch;
|
||||
wxScrollBar* m_vScrollBar;
|
||||
wxScrollBar* m_hScrollBar;
|
||||
|
||||
bool m_lastKeyDownConsumed;
|
||||
|
||||
@@ -1654,9 +1642,6 @@ private:
|
||||
class wxStyledTextEvent : public wxCommandEvent {
|
||||
public:
|
||||
wxStyledTextEvent(wxEventType commandType=0, int id=0);
|
||||
#ifndef SWIG
|
||||
wxStyledTextEvent(const wxStyledTextEvent& event);
|
||||
#endif
|
||||
~wxStyledTextEvent() {}
|
||||
|
||||
void SetPosition(int pos) { m_position = pos; }
|
||||
@@ -1709,7 +1694,7 @@ public:
|
||||
bool GetControl() const;
|
||||
bool GetAlt() const;
|
||||
|
||||
virtual wxEvent* Clone() const { return new wxStyledTextEvent(*this); }
|
||||
void CopyObject(wxObject& obj) const;
|
||||
|
||||
#ifndef SWIG
|
||||
private:
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# $Id$
|
||||
|
||||
CONTRIB_SAMPLES=canvas fl gizmos mmedia net ogl plot stc xrc #applet
|
||||
CONTRIB_SAMPLES=mmedia ogl stc gizmos canvas xrc plot applet fl
|
||||
|
||||
all:
|
||||
@for d in $(CONTRIB_SAMPLES); do (cd $$d && $(MAKE)); done
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# Purpose: makefile for multicell example (Unix)
|
||||
# Created 2000-07-28
|
||||
|
||||
CXX = $(shell wx-config --cxx)
|
||||
CC = gcc
|
||||
|
||||
PROGRAM = mtest
|
||||
|
||||
@@ -13,12 +13,12 @@ EXTRAINC=-I../include
|
||||
.SUFFIXES: .o .cpp
|
||||
|
||||
.cpp.o :
|
||||
$(CXX) -c `wx-config --cxxflags` -o $@ $<
|
||||
$(CC) -c `wx-config --cflags` -o $@ $<
|
||||
|
||||
all: $(PROGRAM)
|
||||
|
||||
$(PROGRAM): $(OBJECTS)
|
||||
$(CXX) -o $(PROGRAM) $(OBJECTS) `wx-config --libs`
|
||||
$(CC) -o $(PROGRAM) $(OBJECTS) `wx-config --libs`
|
||||
|
||||
clean:
|
||||
rm -f *.o $(PROGRAM)
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
# under Linux.
|
||||
#
|
||||
|
||||
CXX = $(shell wx-config --cxx)
|
||||
CC = gcc
|
||||
|
||||
PROGRAM = minimal
|
||||
|
||||
@@ -24,12 +24,12 @@ OBJECTS = $(PROGRAM).o
|
||||
.SUFFIXES: .o .cpp
|
||||
|
||||
.cpp.o :
|
||||
$(CXX) -c `wx-config --cxxflags` -o $@ $<
|
||||
$(CC) -c `wx-config --cflags` -o $@ $<
|
||||
|
||||
all: $(PROGRAM)
|
||||
|
||||
$(PROGRAM): $(OBJECTS)
|
||||
$(CXX) -o $(PROGRAM) $(OBJECTS) `wx-config --libs`
|
||||
$(CC) -o $(PROGRAM) $(OBJECTS) `wx-config --libs`
|
||||
|
||||
clean:
|
||||
rm -f *.o $(PROGRAM)
|
||||
|
||||
@@ -169,10 +169,8 @@ MyFrame::MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size)
|
||||
m_splitter = new wxThinSplitterWindow(m_scrolledWindow, idSPLITTER_WINDOW, wxDefaultPosition,
|
||||
wxDefaultSize, wxSP_3DBORDER | wxCLIP_CHILDREN /* | wxSP_LIVE_UPDATE */);
|
||||
m_splitter->SetSashSize(2);
|
||||
|
||||
/* Note the wxTR_ROW_LINES style: draws horizontal lines between items */
|
||||
m_tree = new TestTree(m_splitter , idTREE_CTRL, wxDefaultPosition,
|
||||
wxDefaultSize, wxTR_HAS_BUTTONS | wxTR_NO_LINES | wxNO_BORDER | wxTR_ROW_LINES );
|
||||
m_tree = new TestTree(m_splitter, idTREE_CTRL, wxDefaultPosition,
|
||||
wxDefaultSize, wxTR_HAS_BUTTONS | wxTR_NO_LINES | wxNO_BORDER );
|
||||
m_valueWindow = new TestValueWindow(m_splitter, idVALUE_WINDOW, wxDefaultPosition,
|
||||
wxDefaultSize, wxNO_BORDER);
|
||||
m_splitter->SplitVertically(m_tree, m_valueWindow);
|
||||
@@ -232,6 +230,7 @@ void MyFrame::OnAbout(wxCommandEvent& WXUNUSED(event))
|
||||
IMPLEMENT_CLASS(TestTree, wxRemotelyScrolledTreeCtrl)
|
||||
|
||||
BEGIN_EVENT_TABLE(TestTree, wxRemotelyScrolledTreeCtrl)
|
||||
EVT_PAINT(TestTree::OnPaint)
|
||||
END_EVENT_TABLE()
|
||||
|
||||
TestTree::TestTree(wxWindow* parent, wxWindowID id, const wxPoint& pt,
|
||||
@@ -274,6 +273,39 @@ TestTree::~TestTree()
|
||||
delete m_imageList;
|
||||
}
|
||||
|
||||
void TestTree::OnPaint(wxPaintEvent& event)
|
||||
{
|
||||
wxPaintDC dc(this);
|
||||
|
||||
wxTreeCtrl::OnPaint(event);
|
||||
|
||||
// Reset the device origin since it may have been set
|
||||
dc.SetDeviceOrigin(0, 0);
|
||||
|
||||
wxPen pen(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_3DLIGHT), 1, wxSOLID);
|
||||
dc.SetPen(pen);
|
||||
dc.SetBrush(* wxTRANSPARENT_BRUSH);
|
||||
|
||||
wxSize clientSize = GetClientSize();
|
||||
wxRect itemRect;
|
||||
int cy=0;
|
||||
wxTreeItemId h, lastH;
|
||||
for(h=GetFirstVisibleItem();h;h=GetNextVisible(h))
|
||||
{
|
||||
if (GetBoundingRect(h, itemRect))
|
||||
{
|
||||
cy = itemRect.GetTop();
|
||||
dc.DrawLine(0, cy, clientSize.x, cy);
|
||||
lastH = h;
|
||||
}
|
||||
}
|
||||
if (GetBoundingRect(lastH, itemRect))
|
||||
{
|
||||
cy = itemRect.GetBottom();
|
||||
dc.DrawLine(0, cy, clientSize.x, cy);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* TestValueWindow
|
||||
*/
|
||||
|
||||
@@ -45,7 +45,6 @@ protected:
|
||||
wxRemotelyScrolledTreeCtrl* m_tree;
|
||||
wxThinSplitterWindow* m_splitter;
|
||||
wxSplitterScrolledWindow* m_scrolledWindow;
|
||||
//wxScrolledWindow* m_scrolledWindow;
|
||||
TestValueWindow* m_valueWindow;
|
||||
|
||||
private:
|
||||
@@ -79,6 +78,7 @@ public:
|
||||
const wxSize& sz = wxDefaultSize, long style = wxTR_HAS_BUTTONS);
|
||||
~TestTree();
|
||||
|
||||
void OnPaint(wxPaintEvent& event);
|
||||
DECLARE_EVENT_TABLE()
|
||||
protected:
|
||||
wxImageList* m_imageList;
|
||||
|
||||
@@ -12,7 +12,8 @@
|
||||
# on your system.
|
||||
#
|
||||
|
||||
CXX = $(shell wx-config --cxx)
|
||||
CPP = gcc -g
|
||||
CC = gcc
|
||||
WXCONFIG=../../../../wx-config
|
||||
WXINCLUDE=-I../../../../include -I../../../include
|
||||
WXLIB=-L../../../../lib -L../../../src/ogl
|
||||
@@ -20,19 +21,19 @@ WXLIB=-L../../../../lib -L../../../src/ogl
|
||||
OBJECTS=ogledit.o palette.o doc.o view.o
|
||||
|
||||
ogledit: $(OBJECTS)
|
||||
$(CXX) -o ogledit $(OBJECTS) `$(WXCONFIG) --libs` $(WXLIB) -logl
|
||||
$(CPP) -o ogledit $(OBJECTS) `$(WXCONFIG) --libs` $(WXLIB) -logl
|
||||
|
||||
ogledit.o: ogledit.cpp
|
||||
$(CXX) `$(WXCONFIG) --cxxflags` -I../../src $(WXINCLUDE) -c ogledit.cpp
|
||||
$(CPP) `$(WXCONFIG) --cflags` -I../../src $(WXINCLUDE) -c ogledit.cpp
|
||||
|
||||
palette.o: palette.cpp
|
||||
$(CXX) `$(WXCONFIG) --cxxflags` -I../../src $(WXINCLUDE) -c palette.cpp
|
||||
$(CPP) `$(WXCONFIG) --cflags` -I../../src $(WXINCLUDE) -c palette.cpp
|
||||
|
||||
doc.o: doc.cpp
|
||||
$(CXX) `$(WXCONFIG) --cxxflags` -I../../src $(WXINCLUDE) -c doc.cpp
|
||||
$(CPP) `$(WXCONFIG) --cflags` -I../../src $(WXINCLUDE) -c doc.cpp
|
||||
|
||||
view.o: view.cpp
|
||||
$(CXX) `$(WXCONFIG) --cxxflags` -I../../src $(WXINCLUDE) -c view.cpp
|
||||
$(CPP) `$(WXCONFIG) --cflags` -I../../src $(WXINCLUDE) -c view.cpp
|
||||
|
||||
clean:
|
||||
rm -f *.o ogledit
|
||||
|
||||
@@ -12,7 +12,8 @@
|
||||
# on your system.
|
||||
#
|
||||
|
||||
CXX = $(shell wx-config --cxx)
|
||||
CPP = gcc -g
|
||||
CC = gcc
|
||||
WXCONFIG=../../../../wx-config
|
||||
WXINCLUDE=-I../../../../include -I../../../include
|
||||
WXLIB=-L../../../../lib -L../../../src/ogl
|
||||
@@ -20,37 +21,37 @@ WXLIB=-L../../../../lib -L../../../src/ogl
|
||||
OBJECTS=studio.o cspalette.o csprint.o dialogs.o doc.o mainfrm.o project.o shapes.o symbols.o view.o
|
||||
|
||||
studio: $(OBJECTS)
|
||||
$(CXX) -o studio $(OBJECTS) `$(WXCONFIG) --libs` $(WXLIB) -logl
|
||||
$(CPP) -o studio $(OBJECTS) `$(WXCONFIG) --libs` $(WXLIB) -logl
|
||||
|
||||
studio.o: studio.cpp
|
||||
$(CXX) `$(WXCONFIG) --cxxflags` -I../../src $(WXINCLUDE) -c studio.cpp
|
||||
$(CPP) `$(WXCONFIG) --cflags` -I../../src $(WXINCLUDE) -c studio.cpp
|
||||
|
||||
cspalette.o: cspalette.cpp
|
||||
$(CXX) `$(WXCONFIG) --cxxflags` -I../../src $(WXINCLUDE) -c cspalette.cpp
|
||||
$(CPP) `$(WXCONFIG) --cflags` -I../../src $(WXINCLUDE) -c cspalette.cpp
|
||||
|
||||
doc.o: doc.cpp
|
||||
$(CXX) `$(WXCONFIG) --cxxflags` -I../../src $(WXINCLUDE) -c doc.cpp
|
||||
$(CPP) `$(WXCONFIG) --cflags` -I../../src $(WXINCLUDE) -c doc.cpp
|
||||
|
||||
view.o: view.cpp
|
||||
$(CXX) `$(WXCONFIG) --cxxflags` -I../../src $(WXINCLUDE) -c view.cpp
|
||||
$(CPP) `$(WXCONFIG) --cflags` -I../../src $(WXINCLUDE) -c view.cpp
|
||||
|
||||
dialogs.o: dialogs.cpp
|
||||
$(CXX) `$(WXCONFIG) --cxxflags` -I../../src $(WXINCLUDE) -c dialogs.cpp
|
||||
$(CPP) `$(WXCONFIG) --cflags` -I../../src $(WXINCLUDE) -c dialogs.cpp
|
||||
|
||||
mainfrm.o: mainfrm.cpp
|
||||
$(CXX) `$(WXCONFIG) --cxxflags` -I../../src $(WXINCLUDE) -c mainfrm.cpp
|
||||
$(CPP) `$(WXCONFIG) --cflags` -I../../src $(WXINCLUDE) -c mainfrm.cpp
|
||||
|
||||
project.o: project.cpp
|
||||
$(CXX) `$(WXCONFIG) --cxxflags` -I../../src $(WXINCLUDE) -c project.cpp
|
||||
$(CPP) `$(WXCONFIG) --cflags` -I../../src $(WXINCLUDE) -c project.cpp
|
||||
|
||||
shapes.o: shapes.cpp
|
||||
$(CXX) `$(WXCONFIG) --cxxflags` -I../../src $(WXINCLUDE) -c shapes.cpp
|
||||
$(CPP) `$(WXCONFIG) --cflags` -I../../src $(WXINCLUDE) -c shapes.cpp
|
||||
|
||||
symbols.o: symbols.cpp
|
||||
$(CXX) `$(WXCONFIG) --cxxflags` -I../../src $(WXINCLUDE) -c symbols.cpp
|
||||
$(CPP) `$(WXCONFIG) --cflags` -I../../src $(WXINCLUDE) -c symbols.cpp
|
||||
|
||||
csprint.o: csprint.cpp
|
||||
$(CXX) `$(WXCONFIG) --cxxflags` -I../../src $(WXINCLUDE) -c csprint.cpp
|
||||
$(CPP) `$(WXCONFIG) --cflags` -I../../src $(WXINCLUDE) -c csprint.cpp
|
||||
|
||||
clean:
|
||||
rm -f *.o studio
|
||||
|
||||
@@ -56,7 +56,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib winmm.lib /nologo /subsystem:windows /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib wxmsw.lib png.lib zlib.lib jpeg.lib tiff.lib regex.lib plot.lib /nologo /subsystem:windows /machine:I386 /nodefaultlib:"libc.lib" /nodefaultlib:"libci.lib" /nodefaultlib:"msvcrtd.lib" /out:"Release/plot.exe" /libpath:"../../../lib" /libpath:"../../../contrib/lib"
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib wx.lib png.lib zlib.lib jpeg.lib tiff.lib regex.lib plot.lib /nologo /subsystem:windows /machine:I386 /nodefaultlib:"libc.lib" /nodefaultlib:"libci.lib" /nodefaultlib:"msvcrtd.lib" /out:"Release/plot.exe" /libpath:"../../../lib" /libpath:"../../../contrib/lib"
|
||||
|
||||
!ELSEIF "$(CFG)" == "PlotVC - Win32 Debug"
|
||||
|
||||
@@ -83,7 +83,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib winmm.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib wxmswd.lib pngd.lib zlibd.lib jpegd.lib tiffd.lib regexd.lib plotd.lib /nologo /subsystem:windows /debug /machine:I386 /nodefaultlib:"libcd.lib" /nodefaultlib:"libcid.lib" /nodefaultlib:"msvcrt.lib" /out:"Debug/plot.exe" /pdbtype:sept /libpath:"../../../lib" /libpath:"../../../contrib/lib"
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib wxd.lib pngd.lib zlibd.lib jpegd.lib tiffd.lib regexd.lib plotd.lib /nologo /subsystem:windows /debug /machine:I386 /nodefaultlib:"libcd.lib" /nodefaultlib:"libcid.lib" /nodefaultlib:"msvcrt.lib" /out:"Debug/plot.exe" /pdbtype:sept /libpath:"../../../lib" /libpath:"../../../contrib/lib"
|
||||
|
||||
!ELSEIF "$(CFG)" == "PlotVC - Win32 Debug DLL"
|
||||
|
||||
@@ -109,7 +109,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib winmm.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib wxmsw232d.lib plotd.lib /nologo /subsystem:windows /debug /machine:I386 /nodefaultlib:"libcd.lib" /nodefaultlib:"libcid.lib" /out:"DebugDLL/plot.exe" /pdbtype:sept /libpath:"../../../lib" /libpath:"../../../contrib/lib"
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib wxdlld.lib plotd.lib /nologo /subsystem:windows /debug /machine:I386 /nodefaultlib:"libcd.lib" /nodefaultlib:"libcid.lib" /out:"DebugDLL/plot.exe" /pdbtype:sept /libpath:"../../../lib" /libpath:"../../../contrib/lib"
|
||||
|
||||
!ELSEIF "$(CFG)" == "PlotVC - Win32 Release DLL"
|
||||
|
||||
@@ -136,7 +136,7 @@ BSC32=bscmake.exe
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib winmm.lib /nologo /subsystem:windows /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib wxmsw232.lib plot.lib /nologo /subsystem:windows /machine:I386 /nodefaultlib:"libc.lib" /nodefaultlib:"libci.lib" /out:"ReleaseDLL/plot.exe" /libpath:"../../../lib" /libpath:"../../../contrib/lib"
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib wxdll.lib plot.lib /nologo /subsystem:windows /machine:I386 /nodefaultlib:"libc.lib" /nodefaultlib:"libci.lib" /out:"ReleaseDLL/plot.exe" /libpath:"../../../lib" /libpath:"../../../contrib/lib"
|
||||
|
||||
!ENDIF
|
||||
|
||||
@@ -169,7 +169,7 @@ SOURCE=.\plot.cpp
|
||||
|
||||
SOURCE=.\plot.rc
|
||||
# ADD BASE RSC /l 0x809
|
||||
# ADD RSC /l 0x809 /i "..\..\..\include" /i "..\..\..\contrib\include"
|
||||
# ADD RSC /l 0x809 /i "..\..\..\include"
|
||||
# End Source File
|
||||
# End Target
|
||||
# End Project
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# $Id$
|
||||
|
||||
CONTRIB_SUBDIRS=canvas fl gizmos mmedia net ogl plot stc xrc #applet
|
||||
CONTRIB_SUBDIRS=ogl mmedia stc xrc plot canvas animate fl #applet
|
||||
|
||||
all:
|
||||
@for d in $(CONTRIB_SUBDIRS); do (cd $$d && $(MAKE)); done
|
||||
|
||||
@@ -371,7 +371,7 @@ void cbBarDragPlugin::UnstickFromPane( cbDockPane* pPane, wxPoint& mousePos )
|
||||
|
||||
if ( pPane->IsHorizontal() && fromLowerEdge )
|
||||
{
|
||||
// bool fromLowerEdge = mousePos.y > bounds.y;
|
||||
bool fromLowerEdge = mousePos.y > bounds.y;
|
||||
|
||||
mHintRect.y = wxMax( bounds.y + bounds.height + 1, mousePos.y - newHeight );
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
// Created: 30/11/98 (my 22th birthday :-)
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) Aleksandras Gluchovas
|
||||
// Licence: wxWindows license
|
||||
// Licence: wxWindows license
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifdef __GNUG__
|
||||
@@ -49,42 +49,42 @@ IMPLEMENT_DYNAMIC_CLASS( cbBarHintsPlugin, cbPluginBase )
|
||||
|
||||
BEGIN_EVENT_TABLE( cbBarHintsPlugin, cbPluginBase )
|
||||
|
||||
EVT_PL_SIZE_BAR_WND ( cbBarHintsPlugin::OnSizeBarWindow )
|
||||
EVT_PL_DRAW_BAR_DECOR( cbBarHintsPlugin::OnDrawBarDecorations )
|
||||
EVT_PL_SIZE_BAR_WND ( cbBarHintsPlugin::OnSizeBarWindow )
|
||||
EVT_PL_DRAW_BAR_DECOR( cbBarHintsPlugin::OnDrawBarDecorations )
|
||||
|
||||
EVT_PL_LEFT_DOWN( cbBarHintsPlugin::OnLeftDown )
|
||||
EVT_PL_LEFT_UP ( cbBarHintsPlugin::OnLeftUp )
|
||||
EVT_PL_MOTION ( cbBarHintsPlugin::OnMotion )
|
||||
EVT_PL_LEFT_DOWN( cbBarHintsPlugin::OnLeftDown )
|
||||
EVT_PL_LEFT_UP ( cbBarHintsPlugin::OnLeftUp )
|
||||
EVT_PL_MOTION ( cbBarHintsPlugin::OnMotion )
|
||||
|
||||
END_EVENT_TABLE()
|
||||
|
||||
cbBarHintsPlugin::cbBarHintsPlugin(void)
|
||||
|
||||
: mpPane( 0 ),
|
||||
mBtnPressed ( FALSE ),
|
||||
mCloseBoxOn ( TRUE ),
|
||||
mCollapseBoxOn( TRUE ),
|
||||
mGrooveCount ( 2 ),
|
||||
mHintGap ( 4 ),
|
||||
mXWeight ( 2 )
|
||||
: mpPane( 0 ),
|
||||
mBtnPressed ( FALSE ),
|
||||
mCloseBoxOn ( TRUE ),
|
||||
mCollapseBoxOn( TRUE ),
|
||||
mGrooveCount ( 2 ),
|
||||
mHintGap ( 4 ),
|
||||
mXWeight ( 2 )
|
||||
{
|
||||
mBoxes[CLOSE_BOX_IDX] = NULL;
|
||||
mBoxes[COLLAPSE_BOX_IDX] = NULL;
|
||||
mBoxes[CLOSE_BOX_IDX] = NULL;
|
||||
mBoxes[COLLAPSE_BOX_IDX] = NULL;
|
||||
}
|
||||
|
||||
cbBarHintsPlugin::cbBarHintsPlugin( wxFrameLayout* pLayout, int paneMask )
|
||||
|
||||
: cbPluginBase( pLayout, paneMask ),
|
||||
mpPane( 0 ),
|
||||
mBtnPressed ( FALSE ),
|
||||
mCloseBoxOn ( TRUE ),
|
||||
mCollapseBoxOn( TRUE ),
|
||||
mGrooveCount ( 2 ),
|
||||
mHintGap ( 5 ),
|
||||
mXWeight ( 2 )
|
||||
: cbPluginBase( pLayout, paneMask ),
|
||||
mpPane( 0 ),
|
||||
mBtnPressed ( FALSE ),
|
||||
mCloseBoxOn ( TRUE ),
|
||||
mCollapseBoxOn( TRUE ),
|
||||
mGrooveCount ( 2 ),
|
||||
mHintGap ( 5 ),
|
||||
mXWeight ( 2 )
|
||||
{
|
||||
mBoxes[CLOSE_BOX_IDX] = NULL;
|
||||
mBoxes[COLLAPSE_BOX_IDX] = NULL;
|
||||
mBoxes[CLOSE_BOX_IDX] = NULL;
|
||||
mBoxes[COLLAPSE_BOX_IDX] = NULL;
|
||||
}
|
||||
|
||||
|
||||
@@ -93,31 +93,31 @@ cbBarHintsPlugin::~cbBarHintsPlugin()
|
||||
if (mBoxes[CLOSE_BOX_IDX])
|
||||
delete mBoxes[CLOSE_BOX_IDX];
|
||||
|
||||
if (mBoxes[COLLAPSE_BOX_IDX])
|
||||
if (mBoxes[COLLAPSE_BOX_IDX])
|
||||
delete mBoxes[COLLAPSE_BOX_IDX];
|
||||
} // cbBarHintsPlugin destructor
|
||||
|
||||
|
||||
void cbBarHintsPlugin::SetGrooveCount( int nGrooves )
|
||||
{
|
||||
mGrooveCount = nGrooves;
|
||||
mGrooveCount = nGrooves;
|
||||
}
|
||||
|
||||
void cbBarHintsPlugin::CreateBoxes()
|
||||
{
|
||||
cbCloseBox* box1 = new cbCloseBox();
|
||||
cbCollapseBox* box2 = new cbCollapseBox();
|
||||
cbCloseBox* box1 = new cbCloseBox();
|
||||
cbCollapseBox* box2 = new cbCollapseBox();
|
||||
|
||||
mBoxes[CLOSE_BOX_IDX] = box1;
|
||||
mBoxes[COLLAPSE_BOX_IDX] = box2;
|
||||
mBoxes[CLOSE_BOX_IDX] = box1;
|
||||
mBoxes[COLLAPSE_BOX_IDX] = box2;
|
||||
|
||||
int i;
|
||||
for ( i = 0; i != BOXES_IN_HINT; ++i )
|
||||
{
|
||||
mBoxes[i]->mpLayout = mpLayout;
|
||||
mBoxes[i]->mpPlugin = this;
|
||||
mBoxes[i]->mpWnd = NULL;
|
||||
}
|
||||
int i;
|
||||
for( i = 0; i != BOXES_IN_HINT; ++i )
|
||||
{
|
||||
mBoxes[i]->mpLayout = mpLayout;
|
||||
mBoxes[i]->mpPlugin = this;
|
||||
mBoxes[i]->mpWnd = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -130,434 +130,431 @@ void cbBarHintsPlugin::DrawCloseBox( wxDC& dc, const wxPoint& pos, bool pressed
|
||||
}
|
||||
|
||||
void cbBarHintsPlugin::DrawCollapseBox( wxDC& dc, const wxPoint& pos,
|
||||
bool atLeft, bool disabled, bool pressed )
|
||||
bool atLeft, bool disabled, bool pressed )
|
||||
{
|
||||
}
|
||||
|
||||
void cbBarHintsPlugin::DrawGrooves( wxDC& dc, const wxPoint& pos, int length )
|
||||
{
|
||||
int ofs = 0;
|
||||
int ofs = 0;
|
||||
|
||||
int i;
|
||||
for ( i = 0; i != mGrooveCount; ++i, ofs += ( GROOVE_WIDTH + GROOVE_TO_GROOVE_GAP ) )
|
||||
{
|
||||
if ( mpPane->IsHorizontal() )
|
||||
{
|
||||
dc.SetPen( mpLayout->mLightPen );
|
||||
dc.DrawLine( pos.x + ofs, pos.y, pos.x + ofs, pos.y + length - 1 );
|
||||
dc.DrawPoint( pos.x + ofs + 1, pos.y );
|
||||
int i;
|
||||
for( i = 0; i != mGrooveCount; ++i, ofs += ( GROOVE_WIDTH + GROOVE_TO_GROOVE_GAP ) )
|
||||
|
||||
if ( mpPane->IsHorizontal() )
|
||||
{
|
||||
dc.SetPen( mpLayout->mLightPen );
|
||||
dc.DrawLine( pos.x + ofs, pos.y, pos.x + ofs, pos.y + length - 1 );
|
||||
dc.DrawPoint( pos.x + ofs + 1, pos.y );
|
||||
|
||||
dc.SetPen( mpLayout->mDarkPen );
|
||||
dc.DrawLine( pos.x + ofs + 2, pos.y, pos.x + ofs + 2, pos.y + length );
|
||||
dc.DrawPoint( pos.x + ofs + 1, pos.y + length - 1 );
|
||||
dc.DrawPoint( pos.x + ofs, pos.y + length - 1 );
|
||||
}
|
||||
else
|
||||
{
|
||||
dc.SetPen( mpLayout->mLightPen );
|
||||
dc.DrawLine( pos.x, pos.y + ofs, pos.x + length - 1, pos.y + ofs );
|
||||
dc.DrawPoint( pos.x, pos.y + ofs + 1 );
|
||||
dc.SetPen( mpLayout->mDarkPen );
|
||||
dc.DrawLine( pos.x + ofs + 2, pos.y, pos.x + ofs + 2, pos.y + length );
|
||||
dc.DrawPoint( pos.x + ofs + 1, pos.y + length - 1 );
|
||||
dc.DrawPoint( pos.x + ofs, pos.y + length - 1 );
|
||||
}
|
||||
else
|
||||
{
|
||||
dc.SetPen( mpLayout->mLightPen );
|
||||
dc.DrawLine( pos.x, pos.y + ofs, pos.x + length - 1, pos.y + ofs );
|
||||
dc.DrawPoint( pos.x, pos.y + ofs + 1 );
|
||||
|
||||
dc.SetPen( mpLayout->mDarkPen );
|
||||
dc.DrawLine( pos.x, pos.y + ofs + 2, pos.x + length, pos.y + ofs + 2 );
|
||||
dc.DrawPoint( pos.x + length - 1, pos.y + ofs + 1 );
|
||||
dc.DrawPoint( pos.x + length - 1, pos.y + ofs );
|
||||
}
|
||||
}
|
||||
dc.SetPen( mpLayout->mDarkPen );
|
||||
dc.DrawLine( pos.x, pos.y + ofs + 2, pos.x + length, pos.y + ofs + 2 );
|
||||
dc.DrawPoint( pos.x + length - 1, pos.y + ofs + 1 );
|
||||
dc.DrawPoint( pos.x + length - 1, pos.y + ofs );
|
||||
}
|
||||
}
|
||||
|
||||
void cbBarHintsPlugin::ExcludeHints( wxRect& rect, cbBarInfo& info )
|
||||
{
|
||||
int boxHeight = BTN_BOX_HEIGHT;
|
||||
int boxHeight = BTN_BOX_HEIGHT;
|
||||
|
||||
// collapse and close box are not placed on fixed bars
|
||||
// collapse and close box are not placed on fixed bars
|
||||
|
||||
if ( info.IsFixed() || ( !mCloseBoxOn && !mCollapseBoxOn ) )
|
||||
if ( info.IsFixed() || ( !mCloseBoxOn && !mCollapseBoxOn ) )
|
||||
|
||||
boxHeight = 0;
|
||||
boxHeight = 0;
|
||||
|
||||
int height = wxMax( mGrooveCount*(GROOVE_WIDTH + GROOVE_TO_GROOVE_GAP)
|
||||
- GROOVE_TO_GROOVE_GAP,
|
||||
boxHeight
|
||||
);
|
||||
int height = wxMax( mGrooveCount*(GROOVE_WIDTH + GROOVE_TO_GROOVE_GAP)
|
||||
- GROOVE_TO_GROOVE_GAP,
|
||||
boxHeight
|
||||
);
|
||||
|
||||
if ( mpPane->IsHorizontal() )
|
||||
{
|
||||
rect.x += ( mHintGap*2 + height );
|
||||
rect.width -= (height + 2*mHintGap);
|
||||
if ( mpPane->IsHorizontal() )
|
||||
{
|
||||
rect.x += ( mHintGap*2 + height );
|
||||
rect.width -= (height + 2*mHintGap);
|
||||
|
||||
rect.x -= info.mDimInfo.mHorizGap + 2;
|
||||
rect.width += info.mDimInfo.mHorizGap + 2;
|
||||
}
|
||||
else
|
||||
{
|
||||
rect.y += (mHintGap*2 + height);
|
||||
rect.height -= (height + 2*mHintGap);
|
||||
rect.x -= info.mDimInfo.mHorizGap + 2;
|
||||
rect.width += info.mDimInfo.mHorizGap + 2;
|
||||
}
|
||||
else
|
||||
{
|
||||
rect.y += (mHintGap*2 + height);
|
||||
rect.height -= (height + 2*mHintGap);
|
||||
|
||||
rect.y -= info.mDimInfo.mVertGap + 2;
|
||||
rect.height += info.mDimInfo.mVertGap + 2;
|
||||
}
|
||||
rect.y -= info.mDimInfo.mVertGap + 2;
|
||||
rect.height += info.mDimInfo.mVertGap + 2;
|
||||
}
|
||||
}
|
||||
|
||||
void cbBarHintsPlugin::DoDrawHint( wxDC& dc, wxRect& rect,
|
||||
int pos, int boxOfs, int grooveOfs,
|
||||
bool isFixed )
|
||||
int pos, int boxOfs, int grooveOfs,
|
||||
bool isFixed )
|
||||
{
|
||||
if ( !isFixed )
|
||||
{
|
||||
if ( mpPane->IsHorizontal() )
|
||||
{
|
||||
if ( mCloseBoxOn )
|
||||
if ( !isFixed )
|
||||
{
|
||||
if ( mpPane->IsHorizontal() )
|
||||
{
|
||||
if ( mCloseBoxOn )
|
||||
|
||||
mBoxes[CLOSE_BOX_IDX]->Draw( dc );
|
||||
|
||||
mBoxes[CLOSE_BOX_IDX]->Draw( dc );
|
||||
if ( mCollapseBoxOn )
|
||||
|
||||
mBoxes[COLLAPSE_BOX_IDX]->Draw( dc );
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( mCloseBoxOn )
|
||||
|
||||
mBoxes[CLOSE_BOX_IDX]->Draw( dc );
|
||||
|
||||
if ( mCollapseBoxOn )
|
||||
|
||||
mBoxes[COLLAPSE_BOX_IDX]->Draw( dc );
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( mCloseBoxOn )
|
||||
|
||||
mBoxes[CLOSE_BOX_IDX]->Draw( dc );
|
||||
if ( mCollapseBoxOn )
|
||||
|
||||
mBoxes[COLLAPSE_BOX_IDX]->Draw( dc );
|
||||
}
|
||||
}
|
||||
|
||||
if ( mCollapseBoxOn )
|
||||
|
||||
mBoxes[COLLAPSE_BOX_IDX]->Draw( dc );
|
||||
}
|
||||
}
|
||||
|
||||
if ( mpPane->IsHorizontal() )
|
||||
|
||||
DrawGrooves( dc, wxPoint( rect.x + mHintGap + grooveOfs, pos ),
|
||||
rect.height - (pos - rect.y) - mHintGap );
|
||||
else
|
||||
DrawGrooves( dc, wxPoint( rect.x + mHintGap, rect.y + mHintGap + grooveOfs ),
|
||||
(pos - rect.x) - mHintGap );
|
||||
if ( mpPane->IsHorizontal() )
|
||||
|
||||
DrawGrooves( dc, wxPoint( rect.x + mHintGap + grooveOfs, pos ),
|
||||
rect.height - (pos - rect.y) - mHintGap );
|
||||
else
|
||||
DrawGrooves( dc, wxPoint( rect.x + mHintGap, rect.y + mHintGap + grooveOfs ),
|
||||
(pos - rect.x) - mHintGap );
|
||||
}
|
||||
|
||||
void cbBarHintsPlugin::GetHintsLayout( wxRect& rect, cbBarInfo& info,
|
||||
int& boxOfs, int& grooveOfs, int& pos )
|
||||
int& boxOfs, int& grooveOfs, int& pos )
|
||||
{
|
||||
int boxHeight = BTN_BOX_HEIGHT;
|
||||
// int boxWidth = BTN_BOX_WIDTH + BOX_TO_GROOVE_GAP + BTN_BOX_WIDTH;
|
||||
int boxHeight = BTN_BOX_HEIGHT;
|
||||
int boxWidth = BTN_BOX_WIDTH + BOX_TO_GROOVE_GAP + BTN_BOX_WIDTH;
|
||||
|
||||
// collapse and close box are not placed on fixed bars
|
||||
// collapse and close box are not placed on fixed bars
|
||||
|
||||
if ( info.IsFixed() || ( !mCloseBoxOn && !mCollapseBoxOn ) )
|
||||
{
|
||||
boxHeight = 0;
|
||||
// boxWidth = 0;
|
||||
}
|
||||
/*
|
||||
else
|
||||
if ( !mCloseBoxOn || !mCollapseBoxOn )
|
||||
if ( info.IsFixed() || ( !mCloseBoxOn && !mCollapseBoxOn ) )
|
||||
{
|
||||
boxHeight = 0;
|
||||
boxWidth = 0;
|
||||
}
|
||||
else
|
||||
if ( !mCloseBoxOn || !mCollapseBoxOn )
|
||||
|
||||
boxWidth = BTN_BOX_WIDTH;
|
||||
*/
|
||||
int grooveHeight = mGrooveCount*(GROOVE_WIDTH + GROOVE_TO_GROOVE_GAP)
|
||||
- GROOVE_TO_GROOVE_GAP;
|
||||
boxWidth = BTN_BOX_WIDTH;
|
||||
|
||||
int height = wxMax( grooveHeight, boxHeight );
|
||||
int grooveHeight = mGrooveCount*(GROOVE_WIDTH + GROOVE_TO_GROOVE_GAP)
|
||||
- GROOVE_TO_GROOVE_GAP;
|
||||
|
||||
// center boxs and groves with respect to each other
|
||||
int height = wxMax( grooveHeight, boxHeight );
|
||||
|
||||
boxOfs = ( height - boxHeight ) / 2;
|
||||
grooveOfs = ( height - grooveHeight ) / 2;
|
||||
// center boxs and groves with respect to each other
|
||||
|
||||
pos = ( mpPane->IsHorizontal() ) ? rect.y + mHintGap
|
||||
: rect.x + rect.width - mHintGap;
|
||||
boxOfs = ( height - boxHeight ) / 2;
|
||||
grooveOfs = ( height - grooveHeight ) / 2;
|
||||
|
||||
// setup positions for boxes
|
||||
pos = ( mpPane->IsHorizontal() ) ? rect.y + mHintGap
|
||||
: rect.x + rect.width - mHintGap;
|
||||
|
||||
if ( !info.IsFixed() )
|
||||
{
|
||||
// what direction "collapse-triangle" should look at?
|
||||
// setup positions for boxes
|
||||
|
||||
bool& isAtLeft = ((cbCollapseBox*)(mBoxes[COLLAPSE_BOX_IDX]))->mIsAtLeft;
|
||||
|
||||
isAtLeft= info.mBounds.x <= mpPane->mPaneWidth - ( info.mBounds.x + info.mBounds.width );
|
||||
if ( !info.IsFixed() )
|
||||
{
|
||||
// what direction "collapse-triangle" should look at?
|
||||
|
||||
if ( info.IsExpanded() )
|
||||
{
|
||||
isAtLeft = FALSE;
|
||||
bool& isAtLeft = ((cbCollapseBox*)(mBoxes[COLLAPSE_BOX_IDX]))->mIsAtLeft;
|
||||
|
||||
isAtLeft= info.mBounds.x <= mpPane->mPaneWidth - ( info.mBounds.x + info.mBounds.width );
|
||||
|
||||
cbBarInfo* pCur = info.mpPrev;
|
||||
if ( info.IsExpanded() )
|
||||
{
|
||||
isAtLeft = FALSE;
|
||||
|
||||
while( pCur )
|
||||
{
|
||||
if ( !pCur->IsFixed() )
|
||||
{
|
||||
isAtLeft = TRUE; break;
|
||||
}
|
||||
cbBarInfo* pCur = info.mpPrev;
|
||||
|
||||
pCur = pCur->mpPrev;
|
||||
}
|
||||
}
|
||||
while( pCur )
|
||||
{
|
||||
if ( !pCur->IsFixed() )
|
||||
{
|
||||
isAtLeft = TRUE; break;
|
||||
}
|
||||
|
||||
// collapse/expand works only when more not-fixed bars are present in the same row
|
||||
pCur = pCur->mpPrev;
|
||||
}
|
||||
}
|
||||
|
||||
mBoxes[COLLAPSE_BOX_IDX]->Enable( info.mpRow->mNotFixedBarsCnt > 1 );
|
||||
// collapse/expand works only when more not-fixed bars are present in the same row
|
||||
|
||||
int i;
|
||||
for ( i = 0; i != BOXES_IN_HINT; ++i )
|
||||
{
|
||||
mBoxes[i]->mpPane = mpPane;
|
||||
}
|
||||
mBoxes[COLLAPSE_BOX_IDX]->Enable( info.mpRow->mNotFixedBarsCnt > 1 );
|
||||
|
||||
if ( mpPane->IsHorizontal() )
|
||||
{
|
||||
if ( mCloseBoxOn )
|
||||
{
|
||||
mBoxes[CLOSE_BOX_IDX]->mPos = wxPoint( rect.x + mHintGap + boxOfs, pos );
|
||||
int i;
|
||||
for( i = 0; i != BOXES_IN_HINT; ++i )
|
||||
|
||||
pos += BTN_BOX_HEIGHT;
|
||||
}
|
||||
mBoxes[i]->mpPane = mpPane;
|
||||
|
||||
if ( mCollapseBoxOn )
|
||||
{
|
||||
if ( mCloseBoxOn ) pos += BOX_T_BOX_GAP;
|
||||
|
||||
mBoxes[COLLAPSE_BOX_IDX]->mPos = wxPoint( rect.x + mHintGap + boxOfs, pos );
|
||||
if ( mpPane->IsHorizontal() )
|
||||
{
|
||||
if ( mCloseBoxOn )
|
||||
{
|
||||
mBoxes[CLOSE_BOX_IDX]->mPos = wxPoint( rect.x + mHintGap + boxOfs, pos );
|
||||
|
||||
pos += BTN_BOX_HEIGHT;
|
||||
pos += BTN_BOX_HEIGHT;
|
||||
}
|
||||
|
||||
pos += BOX_TO_GROOVE_GAP;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( mCloseBoxOn )
|
||||
{
|
||||
pos -= BTN_BOX_WIDTH;
|
||||
if ( mCollapseBoxOn )
|
||||
{
|
||||
if ( mCloseBoxOn ) pos += BOX_T_BOX_GAP;
|
||||
|
||||
mBoxes[CLOSE_BOX_IDX]->mPos = wxPoint( pos , rect.y + mHintGap + boxOfs );
|
||||
}
|
||||
mBoxes[COLLAPSE_BOX_IDX]->mPos = wxPoint( rect.x + mHintGap + boxOfs, pos );
|
||||
|
||||
if ( mCollapseBoxOn )
|
||||
{
|
||||
if ( mCloseBoxOn ) pos -= BOX_T_BOX_GAP;
|
||||
pos += BTN_BOX_HEIGHT;
|
||||
|
||||
pos -= BTN_BOX_WIDTH;
|
||||
pos += BOX_TO_GROOVE_GAP;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( mCloseBoxOn )
|
||||
{
|
||||
pos -= BTN_BOX_WIDTH;
|
||||
|
||||
mBoxes[COLLAPSE_BOX_IDX]->mPos = wxPoint( pos, rect.y + mHintGap + boxOfs );
|
||||
mBoxes[CLOSE_BOX_IDX]->mPos = wxPoint( pos , rect.y + mHintGap + boxOfs );
|
||||
}
|
||||
|
||||
pos -= BOX_TO_GROOVE_GAP;
|
||||
}
|
||||
}
|
||||
}
|
||||
if ( mCollapseBoxOn )
|
||||
{
|
||||
if ( mCloseBoxOn ) pos -= BOX_T_BOX_GAP;
|
||||
|
||||
pos -= BTN_BOX_WIDTH;
|
||||
|
||||
mBoxes[COLLAPSE_BOX_IDX]->mPos = wxPoint( pos, rect.y + mHintGap + boxOfs );
|
||||
|
||||
pos -= BOX_TO_GROOVE_GAP;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static inline bool is_in_box( const wxPoint& rectPos, const wxPoint& mousePos )
|
||||
{
|
||||
return ( mousePos.x >= rectPos.x &&
|
||||
mousePos.y >= rectPos.y &&
|
||||
mousePos.x < rectPos.x + BTN_BOX_WIDTH &&
|
||||
mousePos.y < rectPos.y + BTN_BOX_HEIGHT );
|
||||
return ( mousePos.x >= rectPos.x &&
|
||||
mousePos.y >= rectPos.y &&
|
||||
mousePos.x < rectPos.x + BTN_BOX_WIDTH &&
|
||||
mousePos.y < rectPos.y + BTN_BOX_HEIGHT );
|
||||
}
|
||||
|
||||
int cbBarHintsPlugin::HitTestHints( cbBarInfo& info, const wxPoint& pos )
|
||||
{
|
||||
wxPoint inPane = pos;
|
||||
mpPane->PaneToFrame( &inPane.x, &inPane.y );
|
||||
wxPoint inPane = pos;
|
||||
mpPane->PaneToFrame( &inPane.x, &inPane.y );
|
||||
|
||||
wxRect& rect = info.mBoundsInParent;
|
||||
wxRect& rect = info.mBoundsInParent;
|
||||
|
||||
if ( info.IsFixed() ) return FALSE;
|
||||
if ( info.IsFixed() ) return FALSE;
|
||||
|
||||
int boxOfs, grooveOfs, coord;
|
||||
int boxOfs, grooveOfs, coord;
|
||||
|
||||
GetHintsLayout( rect, info, boxOfs, grooveOfs, coord );
|
||||
GetHintsLayout( rect, info, boxOfs, grooveOfs, coord );
|
||||
|
||||
if ( mpPane->IsHorizontal() )
|
||||
{
|
||||
if ( mCloseBoxOn )
|
||||
{
|
||||
if ( is_in_box( wxPoint( rect.x + mHintGap + boxOfs, coord ), inPane ) )
|
||||
if ( mpPane->IsHorizontal() )
|
||||
{
|
||||
if ( mCloseBoxOn )
|
||||
{
|
||||
if ( is_in_box( wxPoint( rect.x + mHintGap + boxOfs, coord ), inPane ) )
|
||||
|
||||
return CLOSE_BOX_HITTED;
|
||||
return CLOSE_BOX_HITTED;
|
||||
|
||||
coord += BTN_BOX_HEIGHT;
|
||||
}
|
||||
coord += BTN_BOX_HEIGHT;
|
||||
}
|
||||
|
||||
if ( mCollapseBoxOn )
|
||||
{
|
||||
if ( mCloseBoxOn ) coord += BOX_T_BOX_GAP;
|
||||
if ( mCollapseBoxOn )
|
||||
{
|
||||
if ( mCloseBoxOn ) coord += BOX_T_BOX_GAP;
|
||||
|
||||
if ( is_in_box( wxPoint( rect.x + mHintGap + boxOfs, coord ), inPane ) )
|
||||
if ( is_in_box( wxPoint( rect.x + mHintGap + boxOfs, coord ), inPane ) )
|
||||
|
||||
return COLLAPSE_BOX_HITTED;
|
||||
return COLLAPSE_BOX_HITTED;
|
||||
|
||||
coord += BTN_BOX_HEIGHT;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( mCloseBoxOn )
|
||||
{
|
||||
coord -= BTN_BOX_WIDTH;
|
||||
coord += BTN_BOX_HEIGHT;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( mCloseBoxOn )
|
||||
{
|
||||
coord -= BTN_BOX_WIDTH;
|
||||
|
||||
if ( is_in_box( wxPoint( coord , rect.y + mHintGap + boxOfs ), inPane ) )
|
||||
if ( is_in_box( wxPoint( coord , rect.y + mHintGap + boxOfs ), inPane ) )
|
||||
|
||||
return CLOSE_BOX_HITTED;
|
||||
}
|
||||
return CLOSE_BOX_HITTED;
|
||||
}
|
||||
|
||||
if ( mCollapseBoxOn )
|
||||
{
|
||||
if ( mCloseBoxOn ) coord -= BOX_T_BOX_GAP;
|
||||
coord -= BTN_BOX_WIDTH;
|
||||
if ( mCollapseBoxOn )
|
||||
{
|
||||
if ( mCloseBoxOn ) coord -= BOX_T_BOX_GAP;
|
||||
coord -= BTN_BOX_WIDTH;
|
||||
|
||||
if ( is_in_box( wxPoint( coord, rect.y + mHintGap + boxOfs ), inPane ) )
|
||||
if ( is_in_box( wxPoint( coord, rect.y + mHintGap + boxOfs ), inPane ) )
|
||||
|
||||
return COLLAPSE_BOX_HITTED;
|
||||
}
|
||||
}
|
||||
return COLLAPSE_BOX_HITTED;
|
||||
}
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
// handlers for plugin-events
|
||||
|
||||
void cbBarHintsPlugin::OnSizeBarWindow( cbSizeBarWndEvent& event )
|
||||
{
|
||||
wxRect& rect = event.mBoundsInParent;
|
||||
mpPane = event.mpPane;
|
||||
wxRect& rect = event.mBoundsInParent;
|
||||
mpPane = event.mpPane;
|
||||
|
||||
ExcludeHints( rect, *event.mpBar );
|
||||
ExcludeHints( rect, *event.mpBar );
|
||||
|
||||
event.Skip(); // pass event to the next plugin in the chain
|
||||
event.Skip(); // pass event to the next plugin in the chain
|
||||
}
|
||||
|
||||
void cbBarHintsPlugin::OnDrawBarDecorations( cbDrawBarDecorEvent& event )
|
||||
{
|
||||
wxRect& rect = event.mBoundsInParent;
|
||||
mpPane = event.mpPane;
|
||||
wxRect& rect = event.mBoundsInParent;
|
||||
mpPane = event.mpPane;
|
||||
|
||||
int boxOfs, grooveOfs, pos;
|
||||
int boxOfs, grooveOfs, pos;
|
||||
|
||||
GetHintsLayout( rect, *event.mpBar, boxOfs, grooveOfs, pos );
|
||||
GetHintsLayout( rect, *event.mpBar, boxOfs, grooveOfs, pos );
|
||||
|
||||
DoDrawHint( *event.mpDc, rect, pos, boxOfs, grooveOfs, event.mpBar->IsFixed() );
|
||||
DoDrawHint( *event.mpDc, rect, pos, boxOfs, grooveOfs, event.mpBar->IsFixed() );
|
||||
|
||||
// let other plugins add on their decorations
|
||||
// let other plugins add on their decorations
|
||||
|
||||
event.Skip();
|
||||
event.Skip();
|
||||
}
|
||||
|
||||
void cbBarHintsPlugin::OnLeftDown( cbLeftDownEvent& event )
|
||||
{
|
||||
mpPane = event.mpPane;
|
||||
wxPoint inFrame = event.mPos;
|
||||
mpPane = event.mpPane;
|
||||
|
||||
mpPane->PaneToFrame( &inFrame.x, &inFrame.y );
|
||||
wxPoint inFrame = event.mPos;
|
||||
mpPane->PaneToFrame( &inFrame.x, &inFrame.y );
|
||||
|
||||
wxBarIterator iter( mpPane->GetRowList() );
|
||||
wxBarIterator iter( mpPane->GetRowList() );
|
||||
|
||||
mpClickedBar = NULL;
|
||||
mpClickedBar = NULL;
|
||||
|
||||
while ( iter.Next() )
|
||||
{
|
||||
cbBarInfo& bar = iter.BarInfo();
|
||||
while ( iter.Next() )
|
||||
{
|
||||
cbBarInfo& bar = iter.BarInfo();
|
||||
|
||||
int boxOfs, grooveOfs, pos;
|
||||
int boxOfs, grooveOfs, pos;
|
||||
|
||||
GetHintsLayout( bar.mBoundsInParent, bar, boxOfs, grooveOfs, pos );
|
||||
GetHintsLayout( bar.mBoundsInParent, bar, boxOfs, grooveOfs, pos );
|
||||
|
||||
if ( !bar.IsFixed() )
|
||||
{
|
||||
int i;
|
||||
for ( i = 0; i != BOXES_IN_HINT; ++i )
|
||||
{
|
||||
mBoxes[i]->OnLeftDown( inFrame );
|
||||
if ( !bar.IsFixed() )
|
||||
{
|
||||
int i;
|
||||
for( i = 0; i != BOXES_IN_HINT; ++i )
|
||||
{
|
||||
mBoxes[i]->OnLeftDown( inFrame );
|
||||
|
||||
if ( mBoxes[i]->mPressed )
|
||||
{
|
||||
mBtnPressed = TRUE;
|
||||
mpClickedBar = &bar;
|
||||
if ( mBoxes[i]->mPressed )
|
||||
{
|
||||
mBtnPressed = TRUE;
|
||||
mpClickedBar = &bar;
|
||||
|
||||
return; // event handled
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return; // event handled
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
event.Skip();
|
||||
event.Skip();
|
||||
}
|
||||
|
||||
void cbBarHintsPlugin::OnLeftUp( cbLeftUpEvent& event )
|
||||
{
|
||||
if ( mBtnPressed )
|
||||
{
|
||||
wxPoint inFrame = event.mPos;
|
||||
mpPane->PaneToFrame( &inFrame.x, &inFrame.y );
|
||||
if ( mBtnPressed )
|
||||
{
|
||||
wxPoint inFrame = event.mPos;
|
||||
mpPane->PaneToFrame( &inFrame.x, &inFrame.y );
|
||||
|
||||
int boxOfs, grooveOfs, pos;
|
||||
int boxOfs, grooveOfs, pos;
|
||||
|
||||
GetHintsLayout( mpClickedBar->mBoundsInParent, *mpClickedBar, boxOfs, grooveOfs, pos );
|
||||
GetHintsLayout( mpClickedBar->mBoundsInParent, *mpClickedBar, boxOfs, grooveOfs, pos );
|
||||
|
||||
int result = HitTestHints( *mpClickedBar, event.mPos );
|
||||
int result = HitTestHints( *mpClickedBar, event.mPos );
|
||||
|
||||
int i;
|
||||
for ( i = 0; i != BOXES_IN_HINT; ++i )
|
||||
{
|
||||
mBoxes[i]->OnLeftUp( inFrame );
|
||||
for( i = 0; i != BOXES_IN_HINT; ++i )
|
||||
{
|
||||
mBoxes[i]->OnLeftUp( inFrame );
|
||||
|
||||
if ( mBoxes[i]->WasClicked() )
|
||||
{
|
||||
if ( i == 0 )
|
||||
{
|
||||
mpLayout->SetBarState( mpClickedBar, wxCBAR_HIDDEN, TRUE );
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( mpClickedBar->IsExpanded() )
|
||||
mpPane->ContractBar( mpClickedBar );
|
||||
else
|
||||
mpPane->ExpandBar( mpClickedBar );
|
||||
}
|
||||
}
|
||||
}
|
||||
if ( mBoxes[i]->WasClicked() )
|
||||
{
|
||||
if ( i == 0 )
|
||||
|
||||
mBtnPressed = FALSE;
|
||||
return;
|
||||
}
|
||||
else
|
||||
event.Skip();
|
||||
mpLayout->SetBarState( mpClickedBar, wxCBAR_HIDDEN, TRUE );
|
||||
else
|
||||
{
|
||||
if ( mpClickedBar->IsExpanded() )
|
||||
|
||||
mpPane->ContractBar( mpClickedBar );
|
||||
else
|
||||
mpPane->ExpandBar( mpClickedBar );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
mBtnPressed = FALSE;
|
||||
return;
|
||||
}
|
||||
else
|
||||
event.Skip();
|
||||
}
|
||||
|
||||
void cbBarHintsPlugin::OnMotion( cbMotionEvent& event )
|
||||
{
|
||||
if ( mBtnPressed )
|
||||
{
|
||||
wxPoint inFrame = event.mPos;
|
||||
mpPane->PaneToFrame( &inFrame.x, &inFrame.y );
|
||||
if ( mBtnPressed )
|
||||
{
|
||||
wxPoint inFrame = event.mPos;
|
||||
mpPane->PaneToFrame( &inFrame.x, &inFrame.y );
|
||||
|
||||
mpPane = event.mpPane;
|
||||
mpPane = event.mpPane;
|
||||
|
||||
int i;
|
||||
for ( i = 0; i != BOXES_IN_HINT; ++i )
|
||||
{
|
||||
mBoxes[i]->OnMotion( inFrame );
|
||||
}
|
||||
}
|
||||
else
|
||||
event.Skip();
|
||||
int i;
|
||||
for( i = 0; i != BOXES_IN_HINT; ++i )
|
||||
|
||||
mBoxes[i]->OnMotion( inFrame );
|
||||
}
|
||||
else
|
||||
event.Skip();
|
||||
}
|
||||
|
||||
void cbBarHintsPlugin::OnInitPlugin()
|
||||
{
|
||||
cbPluginBase::OnInitPlugin();
|
||||
cbPluginBase::OnInitPlugin();
|
||||
|
||||
cbDockPane** panes = mpLayout->GetPanesArray();
|
||||
cbDockPane** panes = mpLayout->GetPanesArray();
|
||||
|
||||
int i;
|
||||
for ( i = 0; i != MAX_PANES; ++i )
|
||||
{
|
||||
if ( panes[i]->MatchesMask( mPaneMask ) )
|
||||
{
|
||||
panes[i]->mProps.mMinCBarDim.x = 25;
|
||||
panes[i]->mProps.mMinCBarDim.y = 16;
|
||||
}
|
||||
}
|
||||
CreateBoxes();
|
||||
int i;
|
||||
for( i = 0; i != MAX_PANES; ++i )
|
||||
{
|
||||
if ( panes[i]->MatchesMask( mPaneMask ) )
|
||||
{
|
||||
panes[i]->mProps.mMinCBarDim.x = 25;
|
||||
panes[i]->mProps.mMinCBarDim.y = 16;
|
||||
}
|
||||
}
|
||||
CreateBoxes();
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -6,7 +6,7 @@
|
||||
// Created: 02/01/99
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) Aleksandras Gluchovas
|
||||
// Licence: wxWindows license
|
||||
// Licence: wxWindows license
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifdef __GNUG__
|
||||
@@ -31,86 +31,86 @@
|
||||
|
||||
BEGIN_EVENT_TABLE( wxFrameView, wxEvtHandler )
|
||||
|
||||
EVT_IDLE( wxFrameView::OnIdle )
|
||||
EVT_IDLE( wxFrameView::OnIdle )
|
||||
|
||||
END_EVENT_TABLE()
|
||||
|
||||
void wxFrameView::OnIdle( wxIdleEvent& event)
|
||||
{
|
||||
event.Skip();
|
||||
event.Skip();
|
||||
|
||||
if ( mDoToolUpdates )
|
||||
{
|
||||
int o = 0; //glt
|
||||
++o;
|
||||
if ( mDoToolUpdates )
|
||||
{
|
||||
int o = 0; //glt
|
||||
++o;
|
||||
|
||||
// TBD::
|
||||
}
|
||||
// TBD::
|
||||
}
|
||||
}
|
||||
|
||||
/*** public methods ***/
|
||||
|
||||
wxFrameView::wxFrameView()
|
||||
|
||||
: mpLayout( NULL ),
|
||||
mpFrameMgr( NULL )
|
||||
: mpLayout( NULL ),
|
||||
mpFrameMgr( NULL )
|
||||
{}
|
||||
|
||||
wxFrameView::~wxFrameView()
|
||||
{
|
||||
if ( mpLayout ) delete mpLayout;
|
||||
if ( mpLayout ) delete mpLayout;
|
||||
}
|
||||
|
||||
wxFrame* wxFrameView::GetParentFrame()
|
||||
{
|
||||
return mpFrameMgr->GetParentFrame();
|
||||
return mpFrameMgr->GetParentFrame();
|
||||
}
|
||||
|
||||
wxWindow* wxFrameView::GetClientWindow()
|
||||
{
|
||||
return mpFrameMgr->GetClientWindow();
|
||||
return mpFrameMgr->GetClientWindow();
|
||||
}
|
||||
|
||||
void wxFrameView::Activate()
|
||||
{
|
||||
mpFrameMgr->ActivateView( this );
|
||||
mpFrameMgr->ActivateView( this );
|
||||
}
|
||||
|
||||
void wxFrameView::Deactivate()
|
||||
{
|
||||
mpFrameMgr->DeactivateCurrentView();
|
||||
mpFrameMgr->DeactivateCurrentView();
|
||||
}
|
||||
|
||||
void wxFrameView::CreateLayout()
|
||||
{
|
||||
mpLayout = new wxFrameLayout( GetParentFrame(), mpFrameMgr->GetClientWindow(), FALSE );
|
||||
mpLayout = new wxFrameLayout( GetParentFrame(), mpFrameMgr->GetClientWindow(), FALSE );
|
||||
}
|
||||
|
||||
wxFrameLayout* wxFrameView::GetLayout()
|
||||
{
|
||||
return mpLayout;
|
||||
return mpLayout;
|
||||
}
|
||||
|
||||
void wxFrameView::SetToolUpdates( bool doToolUpdates )
|
||||
{
|
||||
mDoToolUpdates = doToolUpdates;
|
||||
mDoToolUpdates = doToolUpdates;
|
||||
}
|
||||
|
||||
void wxFrameView::SetLayout( wxFrameLayout* pLayout )
|
||||
{
|
||||
if ( mpLayout ) delete mpLayout;
|
||||
if ( mpLayout ) delete mpLayout;
|
||||
|
||||
mpLayout = pLayout;
|
||||
mpLayout = pLayout;
|
||||
}
|
||||
|
||||
wxFrameManager& wxFrameView::GetFrameManager()
|
||||
{
|
||||
return *mpFrameMgr;
|
||||
return *mpFrameMgr;
|
||||
}
|
||||
|
||||
void wxFrameView::RegisterMenu( const wxString& topMenuName )
|
||||
{
|
||||
mTopMenus.Add( topMenuName );
|
||||
mTopMenus.Add( topMenuName );
|
||||
}
|
||||
|
||||
#if 0
|
||||
@@ -121,32 +121,32 @@ void wxFrameView::RegisterMenu( const wxString& topMenuName )
|
||||
|
||||
class wxFrameViewSerializer : public wxEvtHandlerSerializer
|
||||
{
|
||||
DECLARE_SERIALIZER_CLASS( wxFrameViewSerializer );
|
||||
DECLARE_SERIALIZER_CLASS( wxFrameViewSerializer );
|
||||
|
||||
static void Serialize( wxObject* pObj, wxObjectStorage& store );
|
||||
static void Serialize( wxObject* pObj, wxObjectStorage& store );
|
||||
};
|
||||
|
||||
IMPLEMENT_SERIALIZER_CLASS( wxFrameView,
|
||||
wxFrameViewSerializer,
|
||||
wxFrameViewSerializer::Serialize,
|
||||
NO_CLASS_INIT )
|
||||
wxFrameViewSerializer,
|
||||
wxFrameViewSerializer::Serialize,
|
||||
NO_CLASS_INIT )
|
||||
|
||||
void wxFrameViewSerializer::Serialize( wxObject* pObj, wxObjectStorage& store )
|
||||
{
|
||||
// wxFrameViewSerializer is a kind of wxEvtHandler - peform serialization of
|
||||
// the base class first
|
||||
// wxFrameViewSerializer is a kind of wxEvtHandler - peform serialization of
|
||||
// the base class first
|
||||
|
||||
info.SerializeInherited( pObj, store );
|
||||
info.SerializeInherited( pObj, store );
|
||||
|
||||
wxFrameView* pView = (wxFrameView*)pObj;
|
||||
wxFrameView* pView = (wxFrameView*)pObj;
|
||||
|
||||
store.XchgObjPtr( (wxObject**) &pView->mpFrameMgr );
|
||||
store.XchgObjPtr( (wxObject**) &pView->mpLayout );
|
||||
store.XchgBool ( pView->mDoToolUpdates );
|
||||
store.XchgObjPtr( (wxObject**) &pView->mpFrameMgr );
|
||||
store.XchgObjPtr( (wxObject**) &pView->mpLayout );
|
||||
store.XchgBool ( pView->mDoToolUpdates );
|
||||
|
||||
// serialize members in derived classes
|
||||
// serialize members in derived classes
|
||||
|
||||
pView->OnSerialize( store );
|
||||
pView->OnSerialize( store );
|
||||
}
|
||||
|
||||
#endif
|
||||
@@ -156,262 +156,263 @@ void wxFrameViewSerializer::Serialize( wxObject* pObj, wxObjectStorage& store )
|
||||
void wxFrameManager::DoSerialize( wxObjectStorage& store )
|
||||
{
|
||||
#if 0
|
||||
store.AddInitialRef( mpFrameWnd );
|
||||
store.AddInitialRef( this );
|
||||
if ( mpClientWnd ) store.AddInitialRef( mpClientWnd );
|
||||
store.AddInitialRef( mpFrameWnd );
|
||||
store.AddInitialRef( this );
|
||||
if ( mpClientWnd ) store.AddInitialRef( mpClientWnd );
|
||||
|
||||
store.XchgObj( (wxObject*) &mViews );
|
||||
store.XchgInt( mActiveViewNo );
|
||||
store.XchgObj( (wxObject*) &mViews );
|
||||
store.XchgInt( mActiveViewNo );
|
||||
|
||||
store.Finalize(); // finish serialization
|
||||
store.Finalize(); // finish serialization
|
||||
#endif
|
||||
}
|
||||
|
||||
void wxFrameManager::DestroyViews()
|
||||
{
|
||||
DeactivateCurrentView();
|
||||
DeactivateCurrentView();
|
||||
|
||||
wxNode* pNode = mViews.First();
|
||||
wxNode* pNode = mViews.First();
|
||||
|
||||
while ( pNode )
|
||||
{
|
||||
delete (wxFrameView*)pNode->Data();
|
||||
while( pNode )
|
||||
{
|
||||
delete (wxFrameView*)pNode->Data();
|
||||
|
||||
pNode = pNode->Next();
|
||||
}
|
||||
pNode = pNode->Next();
|
||||
}
|
||||
|
||||
if ( mActiveViewNo != -1 && GetParentFrame() )
|
||||
if ( mActiveViewNo != -1 && GetParentFrame() )
|
||||
|
||||
GetParentFrame()->SetNextHandler( NULL );
|
||||
GetParentFrame()->SetNextHandler( NULL );
|
||||
}
|
||||
|
||||
int wxFrameManager::GetViewNo( wxFrameView* pView )
|
||||
{
|
||||
wxNode* pNode = mViews.First();
|
||||
int n = 0;
|
||||
wxNode* pNode = mViews.First();
|
||||
int n = 0;
|
||||
|
||||
while ( pNode )
|
||||
{
|
||||
if ( (wxFrameView*)pNode->Data() == pView )
|
||||
while( pNode )
|
||||
{
|
||||
if ( (wxFrameView*)pNode->Data() == pView )
|
||||
|
||||
return n;
|
||||
return n;
|
||||
|
||||
++n;
|
||||
pNode = pNode->Next();
|
||||
}
|
||||
++n;
|
||||
pNode = pNode->Next();
|
||||
}
|
||||
|
||||
return -1;
|
||||
return -1;
|
||||
}
|
||||
|
||||
void wxFrameManager::EnableMenusForView( wxFrameView* pView, bool enable )
|
||||
{
|
||||
wxMenuBar* pMenuBar = GetParentFrame()->GetMenuBar();
|
||||
int count = pMenuBar->GetMenuCount();
|
||||
wxMenuBar* pMenuBar = GetParentFrame()->GetMenuBar();
|
||||
int count = pMenuBar->GetMenuCount();
|
||||
|
||||
if ( !pMenuBar )
|
||||
return;
|
||||
if ( !pMenuBar ) return;
|
||||
|
||||
wxStringListNode* pNode = pView->mTopMenus.GetFirst();
|
||||
wxStringListNode* pNode = pView->mTopMenus.GetFirst();
|
||||
|
||||
int i;
|
||||
while ( pNode )
|
||||
{
|
||||
for ( i = 0; i != count; ++i )
|
||||
{
|
||||
if ( pMenuBar->GetMenu(i)->GetTitle() == pNode->GetData() )
|
||||
pMenuBar->EnableTop( i, enable );
|
||||
}
|
||||
while( pNode )
|
||||
{
|
||||
for( int i = 0; i != count; ++i )
|
||||
{
|
||||
if ( pMenuBar->GetMenu(i)->GetTitle() == pNode->GetData() )
|
||||
|
||||
pNode = pNode->GetNext();
|
||||
}
|
||||
pMenuBar->EnableTop( i, enable );
|
||||
}
|
||||
|
||||
pNode = pNode->GetNext();
|
||||
}
|
||||
}
|
||||
|
||||
void wxFrameManager::SyncAllMenus()
|
||||
{
|
||||
wxNode* pNode = mViews.First();
|
||||
int i = 0;
|
||||
wxNode* pNode = mViews.First();
|
||||
int i = 0;
|
||||
|
||||
while ( pNode )
|
||||
{
|
||||
if ( i != mActiveViewNo )
|
||||
while( pNode )
|
||||
{
|
||||
if ( i != mActiveViewNo )
|
||||
|
||||
EnableMenusForView( (wxFrameView*)pNode->GetData(), FALSE );
|
||||
EnableMenusForView( (wxFrameView*)pNode->GetData(), FALSE );
|
||||
|
||||
pNode = pNode->Next();
|
||||
}
|
||||
pNode = pNode->Next();
|
||||
}
|
||||
|
||||
EnableMenusForView( GetView( mActiveViewNo ), TRUE );
|
||||
EnableMenusForView( GetView( mActiveViewNo ), TRUE );
|
||||
}
|
||||
|
||||
/*** public methods ***/
|
||||
|
||||
wxFrameManager::wxFrameManager()
|
||||
|
||||
: mpFrameWnd( NULL ),
|
||||
mActiveViewNo( -1 ),
|
||||
mpClientWnd( NULL )
|
||||
: mpFrameWnd( NULL ),
|
||||
mActiveViewNo( -1 ),
|
||||
mpClientWnd( NULL )
|
||||
{
|
||||
}
|
||||
|
||||
wxFrameManager::~wxFrameManager()
|
||||
{
|
||||
SaveViewsNow();
|
||||
DestroyViews();
|
||||
SaveViewsNow();
|
||||
DestroyViews();
|
||||
}
|
||||
|
||||
void wxFrameManager::Init( wxWindow* pMainFrame, const wxString& settingsFile )
|
||||
{
|
||||
mSettingsFile = settingsFile;
|
||||
mpFrameWnd = pMainFrame;
|
||||
mSettingsFile = settingsFile;
|
||||
mpFrameWnd = pMainFrame;
|
||||
|
||||
wxNode* pNode = mViews.First();
|
||||
wxNode* pNode = mViews.First();
|
||||
|
||||
while ( pNode )
|
||||
{
|
||||
wxFrameView* pView = (wxFrameView*)pNode->Data();
|
||||
while( pNode )
|
||||
{
|
||||
wxFrameView* pView = (wxFrameView*)pNode->Data();
|
||||
|
||||
pView->OnInit();
|
||||
pView->OnInitMenus();
|
||||
pView->OnInit();
|
||||
pView->OnInitMenus();
|
||||
|
||||
pNode = pNode->Next();
|
||||
}
|
||||
pNode = pNode->Next();
|
||||
}
|
||||
|
||||
if ( !ReloadViews() )
|
||||
{
|
||||
// if loading of settings file failed (e.g. was not found),
|
||||
// do recreation of items in each view
|
||||
if ( !ReloadViews() )
|
||||
{
|
||||
// if loading of settings file failed (e.g. was not found),
|
||||
// do recreation of items in each view
|
||||
|
||||
pNode = mViews.First();
|
||||
pNode = mViews.First();
|
||||
|
||||
while ( pNode )
|
||||
{
|
||||
wxFrameView* pView = (wxFrameView*)pNode->Data();
|
||||
while( pNode )
|
||||
{
|
||||
wxFrameView* pView = (wxFrameView*)pNode->Data();
|
||||
|
||||
pView->OnRecreate();
|
||||
pView->OnRecreate();
|
||||
|
||||
pNode = pNode->Next();
|
||||
}
|
||||
}
|
||||
pNode = pNode->Next();
|
||||
}
|
||||
}
|
||||
|
||||
if ( mActiveViewNo >= mViews.Number() )
|
||||
mActiveViewNo = -1;
|
||||
if ( mActiveViewNo >= mViews.Number() )
|
||||
|
||||
mActiveViewNo = -1;
|
||||
|
||||
ActivateView( GetView( ( mActiveViewNo == -1 ) ? 0 : mActiveViewNo ) );
|
||||
ActivateView( GetView( ( mActiveViewNo == -1 ) ? 0 : mActiveViewNo ) );
|
||||
|
||||
SyncAllMenus();
|
||||
SyncAllMenus();
|
||||
}
|
||||
|
||||
void wxFrameManager::AddView( wxFrameView* pFrmView )
|
||||
{
|
||||
mViews.Append( pFrmView );
|
||||
mViews.Append( pFrmView );
|
||||
|
||||
pFrmView->mpFrameMgr = this; // back ref.
|
||||
pFrmView->mpFrameMgr = this; // back ref.
|
||||
}
|
||||
|
||||
void wxFrameManager::RemoveView( wxFrameView* pFrmView )
|
||||
{
|
||||
// TBD::
|
||||
wxFAIL_MSG("wxFrameManager::RemoveView() has not been implemented yet.");
|
||||
// TBD::
|
||||
int avoidCompilerWarning = 0;
|
||||
wxASSERT(avoidCompilerWarning);
|
||||
}
|
||||
|
||||
int wxFrameManager::GetActiveViewNo()
|
||||
{
|
||||
return mActiveViewNo;
|
||||
return mActiveViewNo;
|
||||
}
|
||||
|
||||
wxFrameView* wxFrameManager::GetActiveView()
|
||||
{
|
||||
wxNode* pNode = mViews.Nth( mActiveViewNo );
|
||||
wxNode* pNode = mViews.Nth( mActiveViewNo );
|
||||
|
||||
if ( pNode ) return (wxFrameView*)pNode->Data();
|
||||
else return NULL;
|
||||
if ( pNode ) return (wxFrameView*)pNode->Data();
|
||||
else return NULL;
|
||||
}
|
||||
|
||||
wxNode* wxFrameManager::GetActiveViewNode()
|
||||
{
|
||||
return mViews.Nth( mActiveViewNo );
|
||||
return mViews.Nth( mActiveViewNo );
|
||||
}
|
||||
|
||||
wxFrame* wxFrameManager::GetParentFrame()
|
||||
{
|
||||
return ((wxFrame*)mpFrameWnd);
|
||||
return ((wxFrame*)mpFrameWnd);
|
||||
}
|
||||
|
||||
wxWindow* wxFrameManager::GetParentWindow()
|
||||
{
|
||||
return mpFrameWnd;
|
||||
return mpFrameWnd;
|
||||
}
|
||||
|
||||
wxFrameView* wxFrameManager::GetView( int viewNo )
|
||||
{
|
||||
wxNode* pNode = mViews.Nth( viewNo );
|
||||
wxNode* pNode = mViews.Nth( viewNo );
|
||||
|
||||
if ( pNode ) return (wxFrameView*)pNode->Data();
|
||||
else return NULL;
|
||||
if ( pNode ) return (wxFrameView*)pNode->Data();
|
||||
else return NULL;
|
||||
}
|
||||
|
||||
void wxFrameManager::ActivateView( int viewNo )
|
||||
{
|
||||
ActivateView( GetView( viewNo ) );
|
||||
ActivateView( GetView( viewNo ) );
|
||||
}
|
||||
|
||||
void wxFrameManager::ActivateView( wxFrameView* pFrmView )
|
||||
{
|
||||
DeactivateCurrentView();
|
||||
DeactivateCurrentView();
|
||||
|
||||
mActiveViewNo = GetViewNo( pFrmView );
|
||||
mActiveViewNo = GetViewNo( pFrmView );
|
||||
|
||||
if ( pFrmView->mpLayout )
|
||||
if ( pFrmView->mpLayout )
|
||||
|
||||
pFrmView->mpLayout->Activate();
|
||||
pFrmView->mpLayout->Activate();
|
||||
|
||||
// FIXME:: we would have used PushEventHandler(),
|
||||
// but wxFrame bypasses attached handlers when
|
||||
// handling wxCommand events!
|
||||
// FIXME:: we would have used PushEventHandler(),
|
||||
// but wxFrame bypasses attached handlers when
|
||||
// handling wxCommand events!
|
||||
|
||||
GetParentFrame()->PushEventHandler( pFrmView );
|
||||
GetParentFrame()->PushEventHandler( pFrmView );
|
||||
|
||||
EnableMenusForView( pFrmView, TRUE );
|
||||
EnableMenusForView( pFrmView, TRUE );
|
||||
}
|
||||
|
||||
void wxFrameManager::SetClinetWindow( wxWindow* pFrameClient )
|
||||
{
|
||||
if ( mpClientWnd ) mpClientWnd->Destroy();
|
||||
if ( mpClientWnd ) mpClientWnd->Destroy();
|
||||
|
||||
mpClientWnd = pFrameClient;
|
||||
mpClientWnd = pFrameClient;
|
||||
}
|
||||
|
||||
wxWindow* wxFrameManager::GetClientWindow()
|
||||
{
|
||||
if ( !mpClientWnd )
|
||||
if ( !mpClientWnd )
|
||||
|
||||
mpClientWnd = new wxWindow( GetParentFrame(), -1 );
|
||||
mpClientWnd = new wxWindow( GetParentFrame(), -1 );
|
||||
|
||||
return mpClientWnd;
|
||||
return mpClientWnd;
|
||||
}
|
||||
|
||||
void wxFrameManager::DeactivateCurrentView()
|
||||
{
|
||||
if ( mActiveViewNo == -1 )
|
||||
return;
|
||||
if ( mActiveViewNo == -1 ) return;
|
||||
|
||||
wxFrameView* pView = GetActiveView();
|
||||
wxFrameView* pView = GetActiveView();
|
||||
|
||||
// FOR NOW::
|
||||
wxASSERT( GetParentFrame()->GetEventHandler() == pView );
|
||||
// FOR NOW::
|
||||
wxASSERT( GetParentFrame()->GetEventHandler() == pView );
|
||||
|
||||
GetParentFrame()->PopEventHandler();
|
||||
GetParentFrame()->PopEventHandler();
|
||||
|
||||
if ( pView->mpLayout )
|
||||
pView->mpLayout->Deactivate();
|
||||
if ( pView->mpLayout )
|
||||
|
||||
EnableMenusForView( pView, FALSE );
|
||||
pView->mpLayout->Deactivate();
|
||||
|
||||
EnableMenusForView( pView, FALSE );
|
||||
}
|
||||
|
||||
void wxFrameManager::SaveViewsNow()
|
||||
{
|
||||
#if 0
|
||||
if ( mSettingsFile == "" ) return;
|
||||
if ( mSettingsFile == "" ) return;
|
||||
|
||||
wxIOStreamWrapper stm;
|
||||
stm.CreateForOutput( mSettingsFile );
|
||||
@@ -423,14 +424,15 @@ void wxFrameManager::SaveViewsNow()
|
||||
|
||||
bool wxFrameManager::ReloadViews()
|
||||
{
|
||||
return FALSE;
|
||||
return FALSE;
|
||||
|
||||
// TBD: ????
|
||||
// TBD: ????
|
||||
#if 0
|
||||
if ( mSettingsFile == "" || !wxFileExists( mSettingsFile ) )
|
||||
return FALSE;
|
||||
if ( mSettingsFile == "" || !wxFileExists( mSettingsFile ) )
|
||||
|
||||
return FALSE;
|
||||
|
||||
DestroyViews();
|
||||
DestroyViews();
|
||||
|
||||
wxIOStreamWrapper stm;
|
||||
stm.CreateForInput( mSettingsFile );
|
||||
@@ -438,12 +440,12 @@ bool wxFrameManager::ReloadViews()
|
||||
mStore.SetDataStream( stm );
|
||||
DoSerialize( mStore );
|
||||
|
||||
return TRUE;
|
||||
return TRUE;
|
||||
#endif
|
||||
}
|
||||
|
||||
bool wxFrameManager::ViewsAreLoaded()
|
||||
{
|
||||
return ( mViews.Number() != 0 );
|
||||
return ( mViews.Number() != 0 );
|
||||
}
|
||||
|
||||
|
||||
@@ -141,8 +141,7 @@ void cbGCUpdatesMgr::UpdateNow()
|
||||
|
||||
wxList mBarsToResize;
|
||||
|
||||
int n;
|
||||
for ( n = 0; n != MAX_PANES; ++n )
|
||||
for( int n = 0; n != MAX_PANES; ++n )
|
||||
{
|
||||
cbDockPane& pane = *(panes[n]);
|
||||
|
||||
@@ -165,7 +164,7 @@ void cbGCUpdatesMgr::UpdateNow()
|
||||
cbBarInfo* pBar = pRow->GetFirstBar();
|
||||
|
||||
bool rowChanged = FALSE;
|
||||
// bool rowBkPainted = FALSE;
|
||||
bool rowBkPainted = FALSE;
|
||||
|
||||
// FIXME:: the below should not be fixed
|
||||
cbBarInfo* barsToRepaint[128];
|
||||
@@ -208,7 +207,7 @@ void cbGCUpdatesMgr::UpdateNow()
|
||||
|
||||
cbBarInfo* pCurBar = pRow->GetFirstBar();
|
||||
|
||||
while ( pCurBar )
|
||||
while( pCurBar )
|
||||
{
|
||||
if ( WasChanged( pCurBar->mUMgrData,
|
||||
pCurBar->mBoundsInParent ) )
|
||||
@@ -227,7 +226,7 @@ void cbGCUpdatesMgr::UpdateNow()
|
||||
else
|
||||
if ( nBars != 0 )
|
||||
{
|
||||
for ( int i = 0; i != nBars; ++i )
|
||||
for( int i = 0; i != nBars; ++i )
|
||||
|
||||
// postphone the resizement and refreshing the changed
|
||||
// bar windows
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -381,7 +381,14 @@ void cbPaneDrawPlugin::OnLDblClick( cbLeftDClickEvent& event )
|
||||
&pBarToFloat ) == CB_BAR_CONTENT_HITTED
|
||||
)
|
||||
{
|
||||
return;
|
||||
// TBD: ????
|
||||
return;
|
||||
|
||||
mpLayout->SetBarState( pBarToFloat, wxCBAR_FLOATING, TRUE );
|
||||
|
||||
mpLayout->RepositionFloatedBar( pBarToFloat );
|
||||
|
||||
return; // event is "eaten" by this plugin
|
||||
}
|
||||
|
||||
event.Skip();
|
||||
@@ -432,7 +439,7 @@ void cbPaneDrawPlugin::OnLButtonDown( cbLeftDownEvent& event )
|
||||
{
|
||||
// otehrwise if bar handle dragged
|
||||
|
||||
// cbRowInfo& rowInfo = *mpDraggedBar->mpRow;
|
||||
cbRowInfo& rowInfo = *mpDraggedBar->mpRow;
|
||||
wxRect& bounds = mpDraggedBar->mBounds;
|
||||
|
||||
mHandleIsVertical = ( event.mpPane->IsHorizontal() ) ? TRUE : FALSE;
|
||||
@@ -728,27 +735,27 @@ void cbPaneDrawPlugin::OnDrawRowBackground ( cbDrawRowBkGroundEvent& event )
|
||||
wxRect rowBounds = pRow->mBoundsInParent;
|
||||
bool isHorizontal = event.mpPane->IsHorizontal();
|
||||
|
||||
// int prevPos;
|
||||
int prevPos;
|
||||
|
||||
if ( isHorizontal )
|
||||
{
|
||||
// prevPos = rowBounds.x;
|
||||
// include one line above and below the row
|
||||
prevPos = rowBounds.x;
|
||||
// include one line obove and below the row
|
||||
--rowBounds.y;
|
||||
rowBounds.height += 2;
|
||||
rowBounds.height +=2;
|
||||
|
||||
--rowBounds.x;
|
||||
rowBounds.width += 2;
|
||||
rowBounds.width += 2;
|
||||
}
|
||||
else
|
||||
{
|
||||
// prevPos = rowBounds.y;
|
||||
// include one line above and below the row
|
||||
prevPos = rowBounds.y;
|
||||
// include one line obove and below the row
|
||||
--rowBounds.x;
|
||||
rowBounds.width += 2;
|
||||
rowBounds.width += 2;
|
||||
|
||||
--rowBounds.y;
|
||||
rowBounds.height += 2;
|
||||
rowBounds.height +=2;
|
||||
}
|
||||
|
||||
//#define TEST_BK_ERASING
|
||||
@@ -1163,7 +1170,7 @@ void cbPaneDrawPlugin::OnDrawPaneDecorations( cbDrawPaneDecorEvent& event )
|
||||
|
||||
void cbPaneDrawPlugin::OnDrawBarDecorations( cbDrawBarDecorEvent& event )
|
||||
{
|
||||
// cbBarInfo* pBar = event.mpBar;
|
||||
cbBarInfo* pBar = event.mpBar;
|
||||
wxDC& dc = *event.mpDc;
|
||||
|
||||
// draw brick borders
|
||||
|
||||
@@ -229,7 +229,7 @@ void cbRowDragPlugin::OnMouseMove( cbMotionEvent& event )
|
||||
// DBG::
|
||||
wxPoint p = event.mPos;
|
||||
wxPoint d = mDragOrigin;
|
||||
// int dif = event.mPos.x - mDragOrigin.x;
|
||||
int dif = event.mPos.x - mDragOrigin.x;
|
||||
|
||||
// row is dragged up or down;
|
||||
ShowDraggedRow( pos.y - mDragOrigin.y );
|
||||
@@ -239,7 +239,7 @@ void cbRowDragPlugin::OnMouseMove( cbMotionEvent& event )
|
||||
// DBG::
|
||||
wxPoint p = event.mPos;
|
||||
wxPoint d = mDragOrigin;
|
||||
// int dif = event.mPos.x - mDragOrigin.x;
|
||||
int dif = event.mPos.x - mDragOrigin.x;
|
||||
|
||||
// row is dragged left or right
|
||||
ShowDraggedRow( pos.x - mDragOrigin.x );
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -496,7 +496,8 @@ void wxToolWindow::CalcResizedRect( wxRect& rect, wxPoint& delta, const wxSize&
|
||||
}
|
||||
else
|
||||
{
|
||||
wxFAIL( _T("what did the cursor hit?") );
|
||||
int avoidCompilerWarning = 0;
|
||||
wxASSERT(avoidCompilerWarning); // DBG::
|
||||
}
|
||||
|
||||
rect.x = left;
|
||||
|
||||
@@ -289,4 +289,3 @@ void cbSimpleUpdatesMgr::UpdateNow()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -7,19 +7,19 @@
|
||||
CFG=GizmosVC - Win32 Debug
|
||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||
!MESSAGE use the Export Makefile command and run
|
||||
!MESSAGE
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "GizmosVC.mak".
|
||||
!MESSAGE
|
||||
!MESSAGE
|
||||
!MESSAGE You can specify a configuration when running NMAKE
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
!MESSAGE
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "GizmosVC.mak" CFG="GizmosVC - Win32 Debug"
|
||||
!MESSAGE
|
||||
!MESSAGE
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
!MESSAGE
|
||||
!MESSAGE
|
||||
!MESSAGE "GizmosVC - Win32 Release" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "GizmosVC - Win32 Debug" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
# PROP AllowPerConfigDependencies 0
|
||||
@@ -76,7 +76,7 @@ LIB32=link.exe -lib
|
||||
# ADD BASE LIB32 /nologo
|
||||
# ADD LIB32 /nologo /out:"..\..\..\lib\gizmosd.lib"
|
||||
|
||||
!ENDIF
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
@@ -118,9 +118,5 @@ SOURCE=.\multicell.cpp
|
||||
|
||||
SOURCE=.\splittree.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\ledctrl.cpp
|
||||
# End Source File
|
||||
# End Target
|
||||
# End Project
|
||||
|
||||
@@ -13,9 +13,9 @@ LIBVERSION_AGE=0
|
||||
HEADER_PATH=$(top_srcdir)/contrib/include/wx
|
||||
HEADER_SUBDIR=gizmos
|
||||
|
||||
HEADERS=multicell.h splittree.h editlbox.h dynamicsash.h ledctrl.h
|
||||
HEADERS=multicell.h splittree.h editlbox.h dynamicsash.h
|
||||
|
||||
OBJECTS=multicell.o splittree.o editlbox.o dynamicsash.o ledctrl.o
|
||||
OBJECTS=multicell.o splittree.o editlbox.o dynamicsash.o
|
||||
DEPFILES=$(OBJECTS:.o=.d)
|
||||
|
||||
APPEXTRADEFS=-I$(top_srcdir)/contrib/include
|
||||
|
||||
@@ -10,23 +10,6 @@
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma implementation "splittree.h"
|
||||
#endif
|
||||
|
||||
// For compilers that support precompilation, includes "wx/wx.h".
|
||||
#include "wx/wxprec.h"
|
||||
|
||||
#ifdef __BORLANDC__
|
||||
#pragma hdrstop
|
||||
#endif
|
||||
|
||||
// for all others, include the necessary headers (this file is usually all you
|
||||
// need because it includes almost all "standard" wxWindows headers)
|
||||
#ifndef WX_PRECOMP
|
||||
#include "wx/wx.h"
|
||||
#endif
|
||||
|
||||
#include "wx/gizmos/dynamicsash.h"
|
||||
|
||||
/*
|
||||
@@ -100,9 +83,6 @@ class wxDynamicSashReparentEvent : public wxEvent {
|
||||
public:
|
||||
wxDynamicSashReparentEvent();
|
||||
wxDynamicSashReparentEvent(wxObject *object);
|
||||
wxDynamicSashReparentEvent(const wxDynamicSashReparentEvent& evt);
|
||||
|
||||
virtual wxEvent* Clone() const { return new wxDynamicSashReparentEvent(*this); }
|
||||
|
||||
DECLARE_DYNAMIC_CLASS(wxDynamicSashReparentEvent);
|
||||
};
|
||||
@@ -348,8 +328,7 @@ void wxDynamicSashWindowImpl::DrawSash(int x, int y) const {
|
||||
dc.SetBrush(brush);
|
||||
dc.SetLogicalFunction(wxXOR);
|
||||
|
||||
if ((m_dragging == DSR_CORNER) &&
|
||||
(m_window->GetWindowStyle() & wxDS_DRAG_CORNER) != 0) {
|
||||
if (m_dragging == DSR_CORNER) {
|
||||
int cx = 0;
|
||||
int cy = 0;
|
||||
|
||||
@@ -551,6 +530,7 @@ void wxDynamicSashWindowImpl::Unify(int panel) {
|
||||
}
|
||||
|
||||
void wxDynamicSashWindowImpl::Split(int px, int py) {
|
||||
m_window->Hide();
|
||||
|
||||
m_add_child_target = NULL;
|
||||
|
||||
@@ -597,8 +577,9 @@ void wxDynamicSashWindowImpl::Split(int px, int py) {
|
||||
m_leaf = NULL;
|
||||
|
||||
m_container->Layout();
|
||||
}
|
||||
|
||||
m_window->Show();
|
||||
}
|
||||
|
||||
/* This code is called when you finish resizing a view by dragging the
|
||||
corner tab, but I think this implementation is lousy and will surprise
|
||||
@@ -791,8 +772,7 @@ void wxDynamicSashWindowImpl::OnPress(wxMouseEvent &event) {
|
||||
}
|
||||
|
||||
void wxDynamicSashWindowImpl::OnRelease(wxMouseEvent &event) {
|
||||
if ((m_dragging == DSR_CORNER) &&
|
||||
(m_window->GetWindowStyle() & wxDS_DRAG_CORNER) != 0) {
|
||||
if (m_dragging == DSR_CORNER) {
|
||||
DrawSash(m_drag_x, m_drag_y);
|
||||
m_container->ReleaseMouse();
|
||||
|
||||
@@ -894,7 +874,7 @@ bool wxDynamicSashWindowLeaf::Create() {
|
||||
m_viewport->SetEventHandler(this);
|
||||
Connect(-1, wxEVT_DYNAMIC_SASH_REPARENT, (wxObjectEventFunction)&wxDynamicSashWindowLeaf::OnReparent);
|
||||
|
||||
if (m_impl->m_window->GetWindowStyle() & wxDS_MANAGE_SCROLLBARS) {
|
||||
if (m_impl->m_window->GetWindowStyle() & wxMANAGE_SCROLLBARS) {
|
||||
m_hscroll->SetEventHandler(this);
|
||||
m_vscroll->SetEventHandler(this);
|
||||
|
||||
@@ -991,7 +971,7 @@ DynamicSashRegion wxDynamicSashWindowLeaf::GetRegion(int x, int y) {
|
||||
|
||||
void wxDynamicSashWindowLeaf::ResizeChild(wxSize size) {
|
||||
if (m_child) {
|
||||
if (m_impl->m_window->GetWindowStyle() & wxDS_MANAGE_SCROLLBARS) {
|
||||
if (m_impl->m_window->GetWindowStyle() & wxMANAGE_SCROLLBARS) {
|
||||
m_child->SetSize(size);
|
||||
wxSize best_size = m_child->GetBestSize();
|
||||
if (best_size.GetWidth() < size.GetWidth()) {
|
||||
@@ -1102,6 +1082,7 @@ void wxDynamicSashWindowLeaf::OnPaint(wxPaintEvent &event) {
|
||||
dc.DrawLine(9, h - sh - 3, 9, h - 4);
|
||||
dc.DrawLine(9, h - 4, 3, h - 4);
|
||||
|
||||
|
||||
int cy = (h - sh + h - 6) / 2 + 1;
|
||||
int cx = (w - sw + w - 6) / 2 + 1;
|
||||
int sy = cy;
|
||||
@@ -1154,8 +1135,7 @@ void wxDynamicSashWindowLeaf::OnMouseMove(wxMouseEvent &event) {
|
||||
cursor = wxCursor(wxCURSOR_SIZENS);
|
||||
} else if (region == DSR_VERTICAL_TAB) {
|
||||
cursor = wxCursor(wxCURSOR_SIZEWE);
|
||||
} else if ((region == DSR_CORNER) &&
|
||||
(m_impl->m_window->GetWindowStyle() & wxDS_DRAG_CORNER) != 0) {
|
||||
} else if (region == DSR_CORNER) {
|
||||
cursor = wxCursor(wxCURSOR_SIZENWSE);
|
||||
} else if (region == DSR_LEFT_EDGE || region == DSR_TOP_EDGE
|
||||
|| region == DSR_RIGHT_EDGE || region == DSR_BOTTOM_EDGE) {
|
||||
@@ -1180,9 +1160,6 @@ void wxDynamicSashWindowLeaf::OnLeave(wxMouseEvent &event) {
|
||||
void wxDynamicSashWindowLeaf::OnPress(wxMouseEvent &event) {
|
||||
DynamicSashRegion region = GetRegion(event.m_x, event.m_y);
|
||||
|
||||
if ((region == DSR_CORNER) && (m_impl->m_window->GetWindowStyle() & wxDS_DRAG_CORNER) == 0)
|
||||
return;
|
||||
|
||||
if (region == DSR_HORIZONTAL_TAB || region == DSR_VERTICAL_TAB || region == DSR_CORNER) {
|
||||
m_impl->m_dragging = region;
|
||||
m_impl->m_drag_x = event.m_x;
|
||||
@@ -1260,11 +1237,6 @@ wxDynamicSashReparentEvent::wxDynamicSashReparentEvent(wxObject *object) {
|
||||
m_eventType = wxEVT_DYNAMIC_SASH_REPARENT;
|
||||
}
|
||||
|
||||
wxDynamicSashReparentEvent::wxDynamicSashReparentEvent(const wxDynamicSashReparentEvent& evt)
|
||||
: wxEvent(evt)
|
||||
{
|
||||
}
|
||||
|
||||
IMPLEMENT_DYNAMIC_CLASS(wxDynamicSashReparentEvent, wxEvent)
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@@ -82,7 +82,7 @@ END_EVENT_TABLE()
|
||||
|
||||
IMPLEMENT_CLASS(wxEditableListBox, wxPanel)
|
||||
|
||||
enum
|
||||
enum
|
||||
{
|
||||
// ID value doesn't matter, it won't propagate out of wxEditableListBox
|
||||
// instance
|
||||
@@ -111,7 +111,7 @@ wxEditableListBox::wxEditableListBox(wxWindow *parent, wxWindowID id,
|
||||
: wxPanel(parent, id, pos, size, wxTAB_TRAVERSAL, name), m_edittingNew(FALSE)
|
||||
{
|
||||
wxSizer *sizer = new wxBoxSizer(wxVERTICAL);
|
||||
|
||||
|
||||
wxPanel *subp = new wxPanel(this, -1, wxDefaultPosition, wxDefaultSize,
|
||||
wxSUNKEN_BORDER | wxTAB_TRAVERSAL);
|
||||
wxSizer *subsizer = new wxBoxSizer(wxHORIZONTAL);
|
||||
@@ -121,32 +121,25 @@ wxEditableListBox::wxEditableListBox(wxWindow *parent, wxWindowID id,
|
||||
m_bDel = new wxBitmapButton(subp, wxID_ELB_DELETE, wxBitmap(eldel_xpm));
|
||||
m_bUp = new wxBitmapButton(subp, wxID_ELB_UP, wxBitmap(elup_xpm));
|
||||
m_bDown = new wxBitmapButton(subp, wxID_ELB_DOWN, wxBitmap(eldown_xpm));
|
||||
|
||||
m_bEdit->SetToolTip(wxT("Edit item"));
|
||||
m_bNew->SetToolTip(wxT("New item"));
|
||||
m_bDel->SetToolTip(wxT("Delete item"));
|
||||
m_bUp->SetToolTip(wxT("Move up"));
|
||||
m_bDown->SetToolTip(wxT("Move down"));
|
||||
|
||||
subsizer->Add(m_bEdit, 0, wxALIGN_CENTRE_VERTICAL);
|
||||
subsizer->Add(m_bNew, 0, wxALIGN_CENTRE_VERTICAL);
|
||||
subsizer->Add(m_bDel, 0, wxALIGN_CENTRE_VERTICAL);
|
||||
subsizer->Add(m_bUp, 0, wxALIGN_CENTRE_VERTICAL);
|
||||
subsizer->Add(m_bDown, 0, wxALIGN_CENTRE_VERTICAL);
|
||||
|
||||
|
||||
subp->SetAutoLayout(TRUE);
|
||||
subp->SetSizer(subsizer);
|
||||
subsizer->Fit(subp);
|
||||
|
||||
|
||||
sizer->Add(subp, 0, wxEXPAND);
|
||||
m_listCtrl = new CleverListCtrl(this, wxID_ELD_LISTCTRL,
|
||||
m_listCtrl = new CleverListCtrl(this, wxID_ELD_LISTCTRL,
|
||||
wxDefaultPosition, wxDefaultSize,
|
||||
wxLC_REPORT | wxLC_NO_HEADER |
|
||||
wxLC_REPORT | wxLC_NO_HEADER |
|
||||
wxLC_SINGLE_SEL | wxSUNKEN_BORDER |
|
||||
wxLC_EDIT_LABELS);
|
||||
wxArrayString empty_ar;
|
||||
SetStrings(empty_ar);
|
||||
|
||||
|
||||
sizer->Add(m_listCtrl, 1, wxEXPAND);
|
||||
|
||||
SetAutoLayout(TRUE);
|
||||
@@ -158,11 +151,11 @@ void wxEditableListBox::SetStrings(const wxArrayString& strings)
|
||||
{
|
||||
m_listCtrl->DeleteAllItems();
|
||||
size_t i;
|
||||
|
||||
|
||||
for (i = 0; i < strings.GetCount(); i++)
|
||||
m_listCtrl->InsertItem(i, strings[i]);
|
||||
|
||||
m_listCtrl->InsertItem(strings.GetCount(), _T(""));
|
||||
|
||||
m_listCtrl->InsertItem(strings.GetCount(), _T(""));
|
||||
m_listCtrl->SetItemState(0, wxLIST_STATE_SELECTED, wxLIST_STATE_SELECTED);
|
||||
}
|
||||
|
||||
@@ -185,7 +178,7 @@ void wxEditableListBox::OnItemSelected(wxListEvent& event)
|
||||
|
||||
void wxEditableListBox::OnNewItem(wxCommandEvent& event)
|
||||
{
|
||||
m_listCtrl->SetItemState(m_listCtrl->GetItemCount()-1,
|
||||
m_listCtrl->SetItemState(m_listCtrl->GetItemCount()-1,
|
||||
wxLIST_STATE_SELECTED, wxLIST_STATE_SELECTED);
|
||||
m_edittingNew = TRUE;
|
||||
m_listCtrl->EditLabel(m_selection);
|
||||
@@ -204,7 +197,7 @@ void wxEditableListBox::OnEndLabelEdit(wxListEvent& event)
|
||||
void wxEditableListBox::OnDelItem(wxCommandEvent& event)
|
||||
{
|
||||
m_listCtrl->DeleteItem(m_selection);
|
||||
m_listCtrl->SetItemState(m_selection,
|
||||
m_listCtrl->SetItemState(m_selection,
|
||||
wxLIST_STATE_SELECTED, wxLIST_STATE_SELECTED);
|
||||
}
|
||||
|
||||
@@ -216,7 +209,7 @@ void wxEditableListBox::OnEditItem(wxCommandEvent& event)
|
||||
void wxEditableListBox::OnUpItem(wxCommandEvent& event)
|
||||
{
|
||||
wxString t1, t2;
|
||||
|
||||
|
||||
t1 = m_listCtrl->GetItemText(m_selection - 1);
|
||||
t2 = m_listCtrl->GetItemText(m_selection);
|
||||
m_listCtrl->SetItemText(m_selection - 1, t2);
|
||||
@@ -228,7 +221,7 @@ void wxEditableListBox::OnUpItem(wxCommandEvent& event)
|
||||
void wxEditableListBox::OnDownItem(wxCommandEvent& event)
|
||||
{
|
||||
wxString t1, t2;
|
||||
|
||||
|
||||
t1 = m_listCtrl->GetItemText(m_selection + 1);
|
||||
t2 = m_listCtrl->GetItemText(m_selection);
|
||||
m_listCtrl->SetItemText(m_selection + 1, t2);
|
||||
|
||||
@@ -1,358 +0,0 @@
|
||||
// ============================================================================
|
||||
// headers
|
||||
// ============================================================================
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma implementation "wxLEDNumberCtrl.h"
|
||||
#endif
|
||||
|
||||
#include "wx/wxprec.h"
|
||||
|
||||
#ifdef __BORLANDC__
|
||||
#pragma hdrstop
|
||||
#endif //__BORLANDC__
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
#include "wx/dcclient.h"
|
||||
#include "wx/dcmemory.h"
|
||||
#include "wx/intl.h"
|
||||
#endif
|
||||
|
||||
#include "wx/gizmos/ledctrl.h"
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// constants
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// A LED digit is build up like this, with maximum 7 Lines :
|
||||
//
|
||||
// 111
|
||||
// 6 2
|
||||
// 777
|
||||
// 5 3
|
||||
// 444
|
||||
//
|
||||
// Each number contains combinations of the lines, and they are set up below.
|
||||
|
||||
const int LINE1 = 1;
|
||||
const int LINE2 = 2;
|
||||
const int LINE3 = 4;
|
||||
const int LINE4 = 8;
|
||||
const int LINE5 = 16;
|
||||
const int LINE6 = 32;
|
||||
const int LINE7 = 64;
|
||||
|
||||
const int DIGIT0 = LINE1 | LINE2 | LINE3 | LINE4 | LINE5 | LINE6;
|
||||
const int DIGIT1 = LINE2 | LINE3;
|
||||
const int DIGIT2 = LINE1 | LINE2 | LINE4 | LINE5 | LINE7;
|
||||
const int DIGIT3 = LINE1 | LINE2 | LINE3 | LINE4 | LINE7;
|
||||
const int DIGIT4 = LINE2 | LINE3 | LINE6 | LINE7;
|
||||
const int DIGIT5 = LINE1 | LINE3 | LINE4 | LINE6 | LINE7;
|
||||
const int DIGIT6 = LINE1 | LINE3 | LINE4 | LINE5 | LINE6 | LINE7;
|
||||
const int DIGIT7 = LINE1 | LINE2 | LINE3;
|
||||
const int DIGIT8 = LINE1 | LINE2 | LINE3 | LINE4 | LINE5 | LINE6 | LINE7;
|
||||
const int DIGIT9 = LINE1 | LINE2 | LINE3 | LINE6 | LINE7;
|
||||
const int DASH = LINE7;
|
||||
|
||||
const int DIGITALL = -1;
|
||||
|
||||
// ============================================================================
|
||||
// wxLEDNumberCtrl class implementation
|
||||
// ============================================================================
|
||||
|
||||
wxLEDNumberCtrl::wxLEDNumberCtrl()
|
||||
: m_Alignment(wxLED_ALIGN_LEFT),
|
||||
m_LineMargin(-1),
|
||||
m_DigitMargin(-1),
|
||||
m_LineLength(-1),
|
||||
m_LineWidth(-1),
|
||||
m_DrawFaded(FALSE),
|
||||
m_LeftStartPos(-1)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
wxLEDNumberCtrl::wxLEDNumberCtrl(wxWindow *parent, wxWindowID id,
|
||||
const wxPoint& pos, const wxSize& size,
|
||||
long style)
|
||||
: m_Alignment(wxLED_ALIGN_LEFT),
|
||||
m_LineMargin(-1),
|
||||
m_DigitMargin(-1),
|
||||
m_LineLength(-1),
|
||||
m_LineWidth(-1),
|
||||
m_DrawFaded(FALSE),
|
||||
m_LeftStartPos(-1)
|
||||
{
|
||||
Create(parent, id, pos, size, style);
|
||||
}
|
||||
|
||||
|
||||
bool wxLEDNumberCtrl::Create(wxWindow *parent, wxWindowID id,
|
||||
const wxPoint& pos, const wxSize& size,
|
||||
long style)
|
||||
{
|
||||
bool RetVal = wxControl::Create(parent, id, pos, size, style);
|
||||
|
||||
if ((style & wxLED_DRAW_FADED) != 0)
|
||||
SetDrawFaded(TRUE);
|
||||
if ((style & wxLED_ALIGN_MASK) != 0)
|
||||
SetAlignment((wxLEDValueAlign)(style & wxLED_ALIGN_MASK));
|
||||
|
||||
SetBackgroundColour(*wxBLACK);
|
||||
SetForegroundColour(*wxGREEN);
|
||||
|
||||
return RetVal;
|
||||
}
|
||||
|
||||
|
||||
void wxLEDNumberCtrl::SetAlignment(wxLEDValueAlign Alignment, bool Redraw)
|
||||
{
|
||||
if (Alignment != m_Alignment)
|
||||
{
|
||||
m_Alignment = Alignment;
|
||||
RecalcInternals(GetClientSize());
|
||||
|
||||
if (Redraw)
|
||||
Refresh(FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void wxLEDNumberCtrl::SetDrawFaded(bool DrawFaded, bool Redraw)
|
||||
{
|
||||
if (DrawFaded != m_DrawFaded)
|
||||
{
|
||||
m_DrawFaded = DrawFaded;
|
||||
|
||||
if (Redraw)
|
||||
Refresh(FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void wxLEDNumberCtrl::SetValue(wxString const &Value, bool Redraw)
|
||||
{
|
||||
if (Value != m_Value)
|
||||
{
|
||||
if (!Value.IsEmpty())
|
||||
{
|
||||
for(size_t i=0; i<Value.Length(); i++) {
|
||||
wxChar ch = Value[i];
|
||||
wxASSERT_MSG((ch>='0' && ch<='9') || ch=='-' || ch==' ',
|
||||
wxT("wxLEDNumberCtrl can only display numeric string values."));
|
||||
}
|
||||
}
|
||||
|
||||
m_Value = Value;
|
||||
RecalcInternals(GetClientSize());
|
||||
|
||||
if (Redraw)
|
||||
Refresh(FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
BEGIN_EVENT_TABLE(wxLEDNumberCtrl, wxControl)
|
||||
EVT_ERASE_BACKGROUND(wxLEDNumberCtrl::OnEraseBackground)
|
||||
EVT_PAINT(wxLEDNumberCtrl::OnPaint)
|
||||
EVT_SIZE(wxLEDNumberCtrl::OnSize)
|
||||
END_EVENT_TABLE()
|
||||
|
||||
|
||||
void wxLEDNumberCtrl::OnEraseBackground(wxEraseEvent &Event)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
void wxLEDNumberCtrl::OnPaint(wxPaintEvent &Event)
|
||||
{
|
||||
wxPaintDC Dc(this);
|
||||
|
||||
int Width, Height;
|
||||
GetClientSize(&Width, &Height);
|
||||
|
||||
wxBitmap *pMemoryBitmap = new wxBitmap(Width, Height);
|
||||
wxMemoryDC MemDc;
|
||||
|
||||
MemDc.SelectObject(*pMemoryBitmap);
|
||||
MemDc.BeginDrawing();
|
||||
|
||||
// Draw background.
|
||||
MemDc.SetBrush(wxBrush(GetBackgroundColour(), wxSOLID));
|
||||
MemDc.DrawRectangle(wxRect(0, 0, Width, Height));
|
||||
MemDc.SetBrush(wxNullBrush);
|
||||
|
||||
// Iterate each digit in the value, and draw.
|
||||
const int DigitCount = m_Value.Len();
|
||||
for (int i = 0; i < DigitCount; ++i)
|
||||
{
|
||||
// Draw faded lines if wanted.
|
||||
if (m_DrawFaded)
|
||||
DrawDigit(MemDc, DIGITALL, i);
|
||||
|
||||
// Draw the digits.
|
||||
switch (m_Value[i])
|
||||
{
|
||||
case '0' :
|
||||
DrawDigit(MemDc, DIGIT0, i);
|
||||
break;
|
||||
case '1' :
|
||||
DrawDigit(MemDc, DIGIT1, i);
|
||||
break;
|
||||
case '2' :
|
||||
DrawDigit(MemDc, DIGIT2, i);
|
||||
break;
|
||||
case '3' :
|
||||
DrawDigit(MemDc, DIGIT3, i);
|
||||
break;
|
||||
case '4' :
|
||||
DrawDigit(MemDc, DIGIT4, i);
|
||||
break;
|
||||
case '5' :
|
||||
DrawDigit(MemDc, DIGIT5, i);
|
||||
break;
|
||||
case '6' :
|
||||
DrawDigit(MemDc, DIGIT6, i);
|
||||
break;
|
||||
case '7' :
|
||||
DrawDigit(MemDc, DIGIT7, i);
|
||||
break;
|
||||
case '8' :
|
||||
DrawDigit(MemDc, DIGIT8, i);
|
||||
break;
|
||||
case '9' :
|
||||
DrawDigit(MemDc, DIGIT9, i);
|
||||
break;
|
||||
case '-' :
|
||||
DrawDigit(MemDc, DASH, i);
|
||||
break;
|
||||
case ' ' :
|
||||
// just skip it
|
||||
break;
|
||||
default :
|
||||
wxFAIL_MSG(_("Unknown digit value"));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
MemDc.EndDrawing();
|
||||
|
||||
// Blit the memory dc to screen.
|
||||
Dc.Blit(0, 0, Width, Height, &MemDc, 0, 0, wxCOPY);
|
||||
delete pMemoryBitmap;
|
||||
}
|
||||
|
||||
|
||||
void wxLEDNumberCtrl::DrawDigit(wxDC &Dc, int Digit, int Column)
|
||||
{
|
||||
wxColour LineColor(GetForegroundColour());
|
||||
|
||||
if (Digit == DIGITALL)
|
||||
{
|
||||
const int R = LineColor.Red() / 3;
|
||||
const int G = LineColor.Green() / 3;
|
||||
const int B = LineColor.Blue() / 3;
|
||||
|
||||
LineColor.Set(R, G, B);
|
||||
}
|
||||
|
||||
int XPos = m_LeftStartPos;
|
||||
|
||||
if (Column > 0)
|
||||
XPos += (Column * m_LineLength) + (m_DigitMargin) * Column;
|
||||
|
||||
// Create a pen and draw the lines.
|
||||
wxPen Pen(LineColor, m_LineWidth, wxSOLID);
|
||||
Dc.SetPen(Pen);
|
||||
|
||||
if ((Digit & LINE1))
|
||||
{
|
||||
Dc.DrawLine(XPos + m_LineMargin*2, m_LineMargin,
|
||||
XPos + m_LineLength, m_LineMargin);
|
||||
}
|
||||
|
||||
if (Digit & LINE2)
|
||||
{
|
||||
Dc.DrawLine(XPos + m_LineLength + m_LineMargin, m_LineMargin*2,
|
||||
XPos + m_LineLength + m_LineMargin, m_LineLength + (m_LineMargin*2));
|
||||
}
|
||||
|
||||
if (Digit & LINE3)
|
||||
{
|
||||
Dc.DrawLine(XPos + m_LineLength + m_LineMargin, m_LineLength + (m_LineMargin*4),
|
||||
XPos + m_LineLength + m_LineMargin, m_LineLength*2 + (m_LineMargin*3));
|
||||
}
|
||||
|
||||
if (Digit & LINE4)
|
||||
{
|
||||
Dc.DrawLine(XPos + m_LineMargin*2, m_LineLength*2 + (m_LineMargin*4),
|
||||
XPos + m_LineLength, m_LineLength*2 + (m_LineMargin*4));
|
||||
}
|
||||
|
||||
if (Digit & LINE5)
|
||||
{
|
||||
Dc.DrawLine(XPos + m_LineMargin, m_LineLength + (m_LineMargin*4),
|
||||
XPos + m_LineMargin, m_LineLength*2 + (m_LineMargin*3));
|
||||
}
|
||||
|
||||
if (Digit & LINE6)
|
||||
{
|
||||
Dc.DrawLine(XPos + m_LineMargin, m_LineMargin*2,
|
||||
XPos + m_LineMargin, m_LineLength + (m_LineMargin*2));
|
||||
}
|
||||
|
||||
if (Digit & LINE7)
|
||||
{
|
||||
Dc.DrawLine(XPos + m_LineMargin*2, m_LineLength + (m_LineMargin*3),
|
||||
XPos + m_LineMargin + m_LineLength - m_LineMargin, m_LineLength + (m_LineMargin*3));
|
||||
}
|
||||
|
||||
Dc.SetPen(wxNullPen);
|
||||
}
|
||||
|
||||
|
||||
void wxLEDNumberCtrl::RecalcInternals(const wxSize &CurrentSize)
|
||||
{
|
||||
const int Height = CurrentSize.GetHeight();
|
||||
|
||||
if ((Height * 0.07) < 1)
|
||||
m_LineMargin = 1;
|
||||
else
|
||||
m_LineMargin = Height * 0.07;
|
||||
|
||||
if ((Height * 0.35) < 1)
|
||||
m_LineLength = 1;
|
||||
else
|
||||
m_LineLength = Height * 0.35;
|
||||
|
||||
m_LineWidth = m_LineMargin;
|
||||
|
||||
m_DigitMargin = m_LineMargin * 4;
|
||||
|
||||
const int ValueWidth = (m_LineLength + m_DigitMargin) * m_Value.Len();
|
||||
const int ClientWidth = CurrentSize.GetWidth();
|
||||
|
||||
switch (m_Alignment)
|
||||
{
|
||||
case wxLED_ALIGN_LEFT :
|
||||
m_LeftStartPos = 0;
|
||||
break;
|
||||
case wxLED_ALIGN_RIGHT :
|
||||
m_LeftStartPos = ClientWidth - ValueWidth;
|
||||
break;
|
||||
case wxLED_ALIGN_CENTER :
|
||||
m_LeftStartPos = (ClientWidth - ValueWidth) / 2;
|
||||
break;
|
||||
default :
|
||||
wxFAIL_MSG(_("Unknown alignent value for wxLEDNumberCtrl."));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void wxLEDNumberCtrl::OnSize(wxSizeEvent &Event)
|
||||
{
|
||||
RecalcInternals(Event.GetSize());
|
||||
|
||||
Event.Skip();
|
||||
}
|
||||
@@ -2,7 +2,7 @@
|
||||
# File: makefile.b32
|
||||
# Author: Julian Smart
|
||||
# Created: 1999
|
||||
# Updated:
|
||||
# Updated:
|
||||
# Copyright:
|
||||
#
|
||||
# Makefile : Builds Gizmos library for 32-bit BC++
|
||||
@@ -11,7 +11,7 @@ WXDIR = $(WXWIN)
|
||||
|
||||
LIBTARGET=$(WXDIR)\lib\gizmos.lib
|
||||
|
||||
OBJECTS = multicell.obj splittree.obj editlbox.obj dynamicsash.obj ledctrl.obj
|
||||
OBJECTS = multicell.obj splittree.obj editlbox.obj dynamicsash.obj
|
||||
|
||||
!include $(WXDIR)\src\makelib.b32
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
# File: makefile.bcc
|
||||
# Author: Julian Smart
|
||||
# Created: 1998
|
||||
# Updated:
|
||||
# Updated:
|
||||
#
|
||||
# Builds Gizmos library for BC++, 16-bit
|
||||
|
||||
@@ -14,7 +14,7 @@ WXDIR = $(WXWIN)
|
||||
|
||||
LIBTARGET=$(WXDIR)\lib\gizmos.lib
|
||||
|
||||
OBJECTS = multicell.obj splittree.obj editlbox.obj dynamicsash.obj ledctrl.obj
|
||||
OBJECTS = multicell.obj splittree.obj editlbox.obj dynamicsash.obj
|
||||
|
||||
!include $(WXDIR)\src\makelib.bcc
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
WXDIR = ../../..
|
||||
|
||||
LIBTARGET=$(WXDIR)/lib/libgizmos.a
|
||||
OBJECTS = multicell.o splittree.o editlbox.o dynamicsash.o ledctrl.o
|
||||
OBJECTS = multicell.o splittree.o editlbox.o dynamicsash.o
|
||||
|
||||
include $(WXDIR)/src/makelib.g95
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ LOCALDOCDIR=$(WXDIR)\contrib\docs\latex\gizmos
|
||||
|
||||
!include $(WXDIR)\src\makevc.env
|
||||
|
||||
OBJECTS = $(D)\multicell.obj $(D)\splittree.obj $(D)\editlbox.obj $(D)\dynamicsash.obj $(D)\ledctrl.obj
|
||||
OBJECTS = $(D)\multicell.obj $(D)\splittree.obj $(D)\editlbox.obj $(D)\dynamicsash.obj
|
||||
|
||||
LIBTARGET=$(WXDIR)\lib\gizmos$(LIBEXT).lib
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ THISDIR = $(WXDIR)\contrib\src\gizmos
|
||||
NAME = gizmos
|
||||
LNK = $(name).lnk
|
||||
|
||||
OBJECTS = multicell.obj splittree.obj editlbox.obj dynamicsash.obj ledctrl.obj
|
||||
OBJECTS = multicell.obj splittree.obj editlbox.obj dynamicsash.obj
|
||||
|
||||
all: $(GIZMOSLIB)
|
||||
|
||||
|
||||
@@ -58,25 +58,17 @@ BEGIN_EVENT_TABLE(wxRemotelyScrolledTreeCtrl, wxGenericTreeCtrl)
|
||||
#else
|
||||
BEGIN_EVENT_TABLE(wxRemotelyScrolledTreeCtrl, wxTreeCtrl)
|
||||
#endif
|
||||
EVT_SIZE(wxRemotelyScrolledTreeCtrl::OnSize)
|
||||
EVT_PAINT(wxRemotelyScrolledTreeCtrl::OnPaint)
|
||||
EVT_TREE_ITEM_EXPANDED(-1, wxRemotelyScrolledTreeCtrl::OnExpand)
|
||||
EVT_TREE_ITEM_COLLAPSED(-1, wxRemotelyScrolledTreeCtrl::OnExpand)
|
||||
EVT_SCROLLWIN(wxRemotelyScrolledTreeCtrl::OnScroll)
|
||||
EVT_SIZE(wxRemotelyScrolledTreeCtrl::OnSize)
|
||||
EVT_TREE_ITEM_EXPANDED(-1, wxRemotelyScrolledTreeCtrl::OnExpand)
|
||||
EVT_TREE_ITEM_COLLAPSED(-1, wxRemotelyScrolledTreeCtrl::OnExpand)
|
||||
EVT_SCROLLWIN(wxRemotelyScrolledTreeCtrl::OnScroll)
|
||||
END_EVENT_TABLE()
|
||||
|
||||
wxRemotelyScrolledTreeCtrl::wxRemotelyScrolledTreeCtrl(
|
||||
wxWindow* parent, wxWindowID id, const wxPoint& pt,
|
||||
const wxSize& sz, long style)
|
||||
: wxTreeCtrl(parent, id, pt, sz, style & ~wxTR_ROW_LINES)
|
||||
wxRemotelyScrolledTreeCtrl::wxRemotelyScrolledTreeCtrl(wxWindow* parent, wxWindowID id, const wxPoint& pt,
|
||||
const wxSize& sz, long style):
|
||||
wxTreeCtrl(parent, id, pt, sz, style)
|
||||
{
|
||||
m_companionWindow = NULL;
|
||||
|
||||
// We draw the row lines ourself so they match what's done
|
||||
// by the companion window. That is why the flag is turned
|
||||
// off above, so wxGenericTreeCtrl doesn't draw them in a
|
||||
// different colour.
|
||||
m_drawRowLines = (style & wxTR_ROW_LINES) != 0;
|
||||
m_companionWindow = NULL;
|
||||
}
|
||||
|
||||
wxRemotelyScrolledTreeCtrl::~wxRemotelyScrolledTreeCtrl()
|
||||
@@ -85,20 +77,16 @@ wxRemotelyScrolledTreeCtrl::~wxRemotelyScrolledTreeCtrl()
|
||||
|
||||
void wxRemotelyScrolledTreeCtrl::HideVScrollbar()
|
||||
{
|
||||
#if defined(__WXMSW__)
|
||||
#if USE_GENERIC_TREECTRL
|
||||
#if defined(__WXMSW__) && USE_GENERIC_TREECTRL
|
||||
if (!IsKindOf(CLASSINFO(wxGenericTreeCtrl)))
|
||||
#endif
|
||||
{
|
||||
::ShowScrollBar((HWND) GetHWND(), SB_VERT, FALSE);
|
||||
}
|
||||
#if USE_GENERIC_TREECTRL
|
||||
else
|
||||
#endif
|
||||
{
|
||||
// Implicit in overriding SetScrollbars
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
|
||||
// Number of pixels per user unit (0 or -1 for no scrollbar)
|
||||
@@ -115,9 +103,9 @@ void wxRemotelyScrolledTreeCtrl::SetScrollbars(int pixelsPerUnitX, int pixelsPer
|
||||
wxGenericTreeCtrl* win = (wxGenericTreeCtrl*) this;
|
||||
win->wxGenericTreeCtrl::SetScrollbars(pixelsPerUnitX, 0, noUnitsX, 0, xPos, 0, noRefresh);
|
||||
|
||||
wxScrolledWindow* scrolledWindow = GetScrolledWindow();
|
||||
if (scrolledWindow)
|
||||
{
|
||||
wxScrolledWindow* scrolledWindow = GetScrolledWindow();
|
||||
if (scrolledWindow)
|
||||
{
|
||||
scrolledWindow->SetScrollbars(0, pixelsPerUnitY, 0, noUnitsY, 0, yPos, noRefresh);
|
||||
}
|
||||
}
|
||||
@@ -166,13 +154,13 @@ void wxRemotelyScrolledTreeCtrl::GetViewStart(int *x, int *y) const
|
||||
scrolledWindow->GetViewStart(& x2, & y2);
|
||||
* y = y2;
|
||||
}
|
||||
else
|
||||
else
|
||||
#endif
|
||||
{
|
||||
// x is wrong since the horizontal scrollbar is controlled by the
|
||||
// tree control, but we probably don't need it.
|
||||
{
|
||||
// x is wrong since the horizontal scrollbar is controlled by the
|
||||
// tree control, but we probably don't need it.
|
||||
scrolledWindow->GetViewStart(x, y);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// In case we're using the generic tree control.
|
||||
@@ -181,7 +169,7 @@ void wxRemotelyScrolledTreeCtrl::PrepareDC(wxDC& dc)
|
||||
#if USE_GENERIC_TREECTRL || !defined(__WXMSW__)
|
||||
if (IsKindOf(CLASSINFO(wxGenericTreeCtrl)))
|
||||
{
|
||||
wxScrolledWindow* scrolledWindow = GetScrolledWindow();
|
||||
wxScrolledWindow* scrolledWindow = GetScrolledWindow();
|
||||
|
||||
wxGenericTreeCtrl* win = (wxGenericTreeCtrl*) this;
|
||||
|
||||
@@ -207,9 +195,9 @@ void wxRemotelyScrolledTreeCtrl::ScrollToLine(int posHoriz, int posVert)
|
||||
if (!IsKindOf(CLASSINFO(wxGenericTreeCtrl)))
|
||||
#endif
|
||||
{
|
||||
UINT sbCode = SB_THUMBPOSITION;
|
||||
HWND vertScrollBar = 0;
|
||||
MSWDefWindowProc((WXUINT) WM_VSCROLL, MAKELONG(sbCode, posVert), (WXHWND) vertScrollBar);
|
||||
UINT sbCode = SB_THUMBPOSITION;
|
||||
HWND vertScrollBar = 0;
|
||||
MSWDefWindowProc((WXUINT) WM_VSCROLL, MAKELONG(sbCode, posVert), (WXHWND) vertScrollBar);
|
||||
}
|
||||
#if USE_GENERIC_TREECTRL
|
||||
else
|
||||
@@ -218,127 +206,90 @@ void wxRemotelyScrolledTreeCtrl::ScrollToLine(int posHoriz, int posVert)
|
||||
#if USE_GENERIC_TREECTRL || !defined(__WXMSW__)
|
||||
{
|
||||
wxGenericTreeCtrl* win = (wxGenericTreeCtrl*) this;
|
||||
win->Refresh();
|
||||
/* Doesn't work yet because scrolling is ignored by Scroll
|
||||
win->Refresh();
|
||||
/* Doesn't work yet because scrolling is ignored by Scroll
|
||||
int xppu, yppu;
|
||||
wxScrolledWindow* scrolledWindow = GetScrolledWindow();
|
||||
if (scrolledWindow)
|
||||
{
|
||||
scrolledWindow->GetScrollPixelsPerUnit(& xppu, & yppu);
|
||||
win->Scroll(-1, posVert*yppu);
|
||||
}
|
||||
*/
|
||||
wxScrolledWindow* scrolledWindow = GetScrolledWindow();
|
||||
if (scrolledWindow)
|
||||
{
|
||||
scrolledWindow->GetScrollPixelsPerUnit(& xppu, & yppu);
|
||||
win->Scroll(-1, posVert*yppu);
|
||||
}
|
||||
*/
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void wxRemotelyScrolledTreeCtrl::OnSize(wxSizeEvent& event)
|
||||
{
|
||||
HideVScrollbar();
|
||||
AdjustRemoteScrollbars();
|
||||
event.Skip();
|
||||
HideVScrollbar();
|
||||
AdjustRemoteScrollbars();
|
||||
event.Skip();
|
||||
}
|
||||
|
||||
void wxRemotelyScrolledTreeCtrl::OnExpand(wxTreeEvent& event)
|
||||
{
|
||||
AdjustRemoteScrollbars();
|
||||
event.Skip();
|
||||
AdjustRemoteScrollbars();
|
||||
event.Skip();
|
||||
|
||||
// If we don't have this, we get some bits of lines still remaining
|
||||
if (event.GetEventType() == wxEVT_COMMAND_TREE_ITEM_COLLAPSED)
|
||||
Refresh();
|
||||
|
||||
// Pass on the event
|
||||
if (m_companionWindow)
|
||||
m_companionWindow->GetEventHandler()->ProcessEvent(event);
|
||||
// Pass on the event
|
||||
if (m_companionWindow)
|
||||
m_companionWindow->GetEventHandler()->ProcessEvent(event);
|
||||
}
|
||||
|
||||
void wxRemotelyScrolledTreeCtrl::OnPaint(wxPaintEvent& event)
|
||||
{
|
||||
wxPaintDC dc(this);
|
||||
|
||||
wxTreeCtrl::OnPaint(event);
|
||||
|
||||
if (! m_drawRowLines)
|
||||
return;
|
||||
|
||||
// Reset the device origin since it may have been set
|
||||
dc.SetDeviceOrigin(0, 0);
|
||||
|
||||
wxPen pen(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_3DLIGHT), 1, wxSOLID);
|
||||
dc.SetPen(pen);
|
||||
dc.SetBrush(* wxTRANSPARENT_BRUSH);
|
||||
|
||||
wxSize clientSize = GetClientSize();
|
||||
wxRect itemRect;
|
||||
int cy=0;
|
||||
wxTreeItemId h, lastH;
|
||||
for(h=GetFirstVisibleItem();h;h=GetNextVisible(h))
|
||||
{
|
||||
if (GetBoundingRect(h, itemRect))
|
||||
{
|
||||
cy = itemRect.GetTop();
|
||||
dc.DrawLine(0, cy, clientSize.x, cy);
|
||||
lastH = h;
|
||||
}
|
||||
}
|
||||
if (GetBoundingRect(lastH, itemRect))
|
||||
{
|
||||
cy = itemRect.GetBottom();
|
||||
dc.DrawLine(0, cy, clientSize.x, cy);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Adjust the containing wxScrolledWindow's scrollbars appropriately
|
||||
void wxRemotelyScrolledTreeCtrl::AdjustRemoteScrollbars()
|
||||
{
|
||||
#if USE_GENERIC_TREECTRL || !defined(__WXMSW__)
|
||||
if (IsKindOf(CLASSINFO(wxGenericTreeCtrl)))
|
||||
{
|
||||
// This is for the generic tree control.
|
||||
// It calls SetScrollbars which has been overridden
|
||||
// to adjust the parent scrolled window vertical
|
||||
// scrollbar.
|
||||
((wxGenericTreeCtrl*) this)->AdjustMyScrollbars();
|
||||
{
|
||||
// This is for the generic tree control.
|
||||
// It calls SetScrollbars which has been overridden
|
||||
// to adjust the parent scrolled window vertical
|
||||
// scrollbar.
|
||||
((wxGenericTreeCtrl*) this)->AdjustMyScrollbars();
|
||||
return;
|
||||
}
|
||||
else
|
||||
}
|
||||
else
|
||||
#endif
|
||||
{
|
||||
// This is for the wxMSW tree control
|
||||
wxScrolledWindow* scrolledWindow = GetScrolledWindow();
|
||||
if (scrolledWindow)
|
||||
{
|
||||
wxRect itemRect;
|
||||
if (GetBoundingRect(GetRootItem(), itemRect))
|
||||
{
|
||||
{
|
||||
// This is for the wxMSW tree control
|
||||
wxScrolledWindow* scrolledWindow = GetScrolledWindow();
|
||||
if (scrolledWindow)
|
||||
{
|
||||
wxRect itemRect;
|
||||
if (GetBoundingRect(GetRootItem(), itemRect))
|
||||
{
|
||||
// Actually, the real height seems to be 1 less than reported
|
||||
// (e.g. 16 instead of 16)
|
||||
int itemHeight = itemRect.GetHeight() - 1;
|
||||
|
||||
int w, h;
|
||||
GetClientSize(&w, &h);
|
||||
|
||||
wxRect rect(0, 0, 0, 0);
|
||||
CalcTreeSize(rect);
|
||||
|
||||
int w, h;
|
||||
GetClientSize(&w, &h);
|
||||
|
||||
wxRect rect(0, 0, 0, 0);
|
||||
CalcTreeSize(rect);
|
||||
|
||||
double f = ((double) (rect.GetHeight()) / (double) itemHeight) ;
|
||||
int treeViewHeight = (int) ceil(f);
|
||||
|
||||
int scrollPixelsPerLine = itemHeight;
|
||||
int scrollPos = - (itemRect.y / itemHeight);
|
||||
|
||||
scrolledWindow->SetScrollbars(0, scrollPixelsPerLine, 0, treeViewHeight, 0, scrollPos);
|
||||
|
||||
// Ensure that when a scrollbar becomes hidden or visible,
|
||||
// the contained window sizes are right.
|
||||
// Problem: this is called too early (?)
|
||||
wxSizeEvent event(scrolledWindow->GetSize(), scrolledWindow->GetId());
|
||||
scrolledWindow->GetEventHandler()->ProcessEvent(event);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int scrollPixelsPerLine = itemHeight;
|
||||
int scrollPos = - (itemRect.y / itemHeight);
|
||||
|
||||
scrolledWindow->SetScrollbars(0, scrollPixelsPerLine, 0, treeViewHeight, 0, scrollPos);
|
||||
|
||||
// Ensure that when a scrollbar becomes hidden or visible,
|
||||
// the contained window sizes are right.
|
||||
// Problem: this is called too early (?)
|
||||
wxSizeEvent event(scrolledWindow->GetSize(), scrolledWindow->GetId());
|
||||
scrolledWindow->GetEventHandler()->ProcessEvent(event);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -351,10 +302,10 @@ static wxRect CombineRectangles(const wxRect& rect1, const wxRect& rect2)
|
||||
int bottom1 = rect1.GetBottom();
|
||||
int right2 = rect2.GetRight();
|
||||
int bottom2 = rect2.GetBottom();
|
||||
|
||||
|
||||
wxPoint topLeft = wxPoint(wxMin(rect1.x, rect2.x), wxMin(rect1.y, rect2.y));
|
||||
wxPoint bottomRight = wxPoint(wxMax(right1, right2), wxMax(bottom1, bottom2));
|
||||
|
||||
|
||||
rect.x = topLeft.x; rect.y = topLeft.y;
|
||||
rect.SetRight(bottomRight.x);
|
||||
rect.SetBottom(bottomRight.y);
|
||||
@@ -367,40 +318,40 @@ static wxRect CombineRectangles(const wxRect& rect1, const wxRect& rect2)
|
||||
// correctly
|
||||
void wxRemotelyScrolledTreeCtrl::CalcTreeSize(wxRect& rect)
|
||||
{
|
||||
CalcTreeSize(GetRootItem(), rect);
|
||||
CalcTreeSize(GetRootItem(), rect);
|
||||
}
|
||||
|
||||
void wxRemotelyScrolledTreeCtrl::CalcTreeSize(const wxTreeItemId& id, wxRect& rect)
|
||||
{
|
||||
// More efficient implementation would be to find the last item (but how?)
|
||||
// Q: is the bounding rect relative to the top of the virtual tree workspace
|
||||
// or the top of the window? How would we convert?
|
||||
wxRect itemSize;
|
||||
if (GetBoundingRect(id, itemSize))
|
||||
{
|
||||
rect = CombineRectangles(rect, itemSize);
|
||||
}
|
||||
// More efficient implementation would be to find the last item (but how?)
|
||||
// Q: is the bounding rect relative to the top of the virtual tree workspace
|
||||
// or the top of the window? How would we convert?
|
||||
wxRect itemSize;
|
||||
if (GetBoundingRect(id, itemSize))
|
||||
{
|
||||
rect = CombineRectangles(rect, itemSize);
|
||||
}
|
||||
|
||||
long cookie;
|
||||
wxTreeItemId childId = GetFirstChild(id, cookie);
|
||||
while (childId != 0)
|
||||
{
|
||||
CalcTreeSize(childId, rect);
|
||||
childId = GetNextChild(childId, cookie);
|
||||
}
|
||||
long cookie;
|
||||
wxTreeItemId childId = GetFirstChild(id, cookie);
|
||||
while (childId != 0)
|
||||
{
|
||||
CalcTreeSize(childId, rect);
|
||||
childId = GetNextChild(childId, cookie);
|
||||
}
|
||||
}
|
||||
|
||||
// Find the scrolled window that contains this control
|
||||
wxScrolledWindow* wxRemotelyScrolledTreeCtrl::GetScrolledWindow() const
|
||||
{
|
||||
wxWindow* parent = wxWindow::GetParent();
|
||||
while (parent)
|
||||
{
|
||||
if (parent->IsKindOf(CLASSINFO(wxScrolledWindow)))
|
||||
return (wxScrolledWindow*) parent;
|
||||
parent = parent->GetParent();
|
||||
}
|
||||
return NULL;
|
||||
wxWindow* parent = wxWindow::GetParent();
|
||||
while (parent)
|
||||
{
|
||||
if (parent->IsKindOf(CLASSINFO(wxScrolledWindow)))
|
||||
return (wxScrolledWindow*) parent;
|
||||
parent = parent->GetParent();
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
void wxRemotelyScrolledTreeCtrl::OnScroll(wxScrollWinEvent& event)
|
||||
@@ -430,78 +381,78 @@ void wxRemotelyScrolledTreeCtrl::OnScroll(wxScrollWinEvent& event)
|
||||
IMPLEMENT_CLASS(wxTreeCompanionWindow, wxWindow)
|
||||
|
||||
BEGIN_EVENT_TABLE(wxTreeCompanionWindow, wxWindow)
|
||||
EVT_PAINT(wxTreeCompanionWindow::OnPaint)
|
||||
EVT_SCROLLWIN(wxTreeCompanionWindow::OnScroll)
|
||||
EVT_TREE_ITEM_EXPANDED(-1, wxTreeCompanionWindow::OnExpand)
|
||||
EVT_TREE_ITEM_COLLAPSED(-1, wxTreeCompanionWindow::OnExpand)
|
||||
EVT_PAINT(wxTreeCompanionWindow::OnPaint)
|
||||
EVT_SCROLLWIN(wxTreeCompanionWindow::OnScroll)
|
||||
EVT_TREE_ITEM_EXPANDED(-1, wxTreeCompanionWindow::OnExpand)
|
||||
EVT_TREE_ITEM_COLLAPSED(-1, wxTreeCompanionWindow::OnExpand)
|
||||
END_EVENT_TABLE()
|
||||
|
||||
wxTreeCompanionWindow::wxTreeCompanionWindow(wxWindow* parent, wxWindowID id,
|
||||
const wxPoint& pos,
|
||||
const wxSize& sz,
|
||||
long style):
|
||||
wxWindow(parent, id, pos, sz, style)
|
||||
wxWindow(parent, id, pos, sz, style)
|
||||
{
|
||||
m_treeCtrl = NULL;
|
||||
m_treeCtrl = NULL;
|
||||
}
|
||||
|
||||
void wxTreeCompanionWindow::DrawItem(wxDC& dc, wxTreeItemId id, const wxRect& rect)
|
||||
{
|
||||
// TEST CODE
|
||||
// TEST CODE
|
||||
#if 1
|
||||
if (m_treeCtrl)
|
||||
{
|
||||
wxString text = m_treeCtrl->GetItemText(id);
|
||||
dc.SetTextForeground(* wxBLACK);
|
||||
dc.SetBackgroundMode(wxTRANSPARENT);
|
||||
if (m_treeCtrl)
|
||||
{
|
||||
wxString text = m_treeCtrl->GetItemText(id);
|
||||
dc.SetTextForeground(* wxBLACK);
|
||||
dc.SetBackgroundMode(wxTRANSPARENT);
|
||||
|
||||
int textW, textH;
|
||||
dc.GetTextExtent(text, & textW, & textH);
|
||||
int textW, textH;
|
||||
dc.GetTextExtent(text, & textW, & textH);
|
||||
|
||||
int x = 5;
|
||||
int y = rect.GetY() + wxMax(0, (rect.GetHeight() - textH) / 2);
|
||||
int x = 5;
|
||||
int y = rect.GetY() + wxMax(0, (rect.GetHeight() - textH) / 2);
|
||||
|
||||
dc.DrawText(text, x, y);
|
||||
}
|
||||
dc.DrawText(text, x, y);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void wxTreeCompanionWindow::OnPaint(wxPaintEvent& event)
|
||||
{
|
||||
wxPaintDC dc(this);
|
||||
wxPaintDC dc(this);
|
||||
|
||||
if (!m_treeCtrl)
|
||||
return;
|
||||
|
||||
wxPen pen(wxSystemSettings::GetSystemColour(wxSYS_COLOUR_3DLIGHT), 1, wxSOLID);
|
||||
dc.SetPen(pen);
|
||||
dc.SetBrush(* wxTRANSPARENT_BRUSH);
|
||||
wxFont font(wxSystemSettings::GetSystemFont(wxSYS_DEFAULT_GUI_FONT));
|
||||
dc.SetFont(font);
|
||||
dc.SetPen(pen);
|
||||
dc.SetBrush(* wxTRANSPARENT_BRUSH);
|
||||
wxFont font(wxSystemSettings::GetSystemFont(wxSYS_DEFAULT_GUI_FONT));
|
||||
dc.SetFont(font);
|
||||
|
||||
wxSize clientSize = GetClientSize();
|
||||
wxRect itemRect;
|
||||
int cy=0;
|
||||
wxTreeItemId h, lastH;
|
||||
for(h=m_treeCtrl->GetFirstVisibleItem();h;h=m_treeCtrl->GetNextVisible(h))
|
||||
{
|
||||
if (m_treeCtrl->GetBoundingRect(h, itemRect))
|
||||
{
|
||||
cy = itemRect.GetTop();
|
||||
wxRect drawItemRect(0, cy, clientSize.x, itemRect.GetHeight());
|
||||
wxRect itemRect;
|
||||
int cy=0;
|
||||
wxTreeItemId h, lastH;
|
||||
for(h=m_treeCtrl->GetFirstVisibleItem();h;h=m_treeCtrl->GetNextVisible(h))
|
||||
{
|
||||
if (m_treeCtrl->GetBoundingRect(h, itemRect))
|
||||
{
|
||||
cy = itemRect.GetTop();
|
||||
wxRect drawItemRect(0, cy, clientSize.x, itemRect.GetHeight());
|
||||
|
||||
lastH = h;
|
||||
lastH = h;
|
||||
|
||||
// Draw the actual item
|
||||
DrawItem(dc, h, drawItemRect);
|
||||
dc.DrawLine(0, cy, clientSize.x, cy);
|
||||
}
|
||||
}
|
||||
if (lastH.IsOk() && m_treeCtrl->GetBoundingRect(lastH, itemRect))
|
||||
{
|
||||
cy = itemRect.GetBottom();
|
||||
dc.DrawLine(0, cy, clientSize.x, cy);
|
||||
}
|
||||
// Draw the actual item
|
||||
DrawItem(dc, h, drawItemRect);
|
||||
dc.DrawLine(0, cy, clientSize.x, cy);
|
||||
}
|
||||
}
|
||||
if (lastH.IsOk() && m_treeCtrl->GetBoundingRect(lastH, itemRect))
|
||||
{
|
||||
cy = itemRect.GetBottom();
|
||||
dc.DrawLine(0, cy, clientSize.x, cy);
|
||||
}
|
||||
}
|
||||
|
||||
void wxTreeCompanionWindow::OnScroll(wxScrollWinEvent& event)
|
||||
@@ -515,15 +466,15 @@ void wxTreeCompanionWindow::OnScroll(wxScrollWinEvent& event)
|
||||
if (!m_treeCtrl)
|
||||
return;
|
||||
|
||||
// TODO: scroll the window physically instead of just refreshing.
|
||||
Refresh(TRUE);
|
||||
// TODO: scroll the window physically instead of just refreshing.
|
||||
Refresh(TRUE);
|
||||
}
|
||||
|
||||
void wxTreeCompanionWindow::OnExpand(wxTreeEvent& event)
|
||||
{
|
||||
// TODO: something more optimized than simply refresh the whole
|
||||
// window when the tree is expanded/collapsed. Tricky.
|
||||
Refresh();
|
||||
// TODO: something more optimized than simply refresh the whole
|
||||
// window when the tree is expanded/collapsed. Tricky.
|
||||
Refresh();
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -533,7 +484,7 @@ void wxTreeCompanionWindow::OnExpand(wxTreeEvent& event)
|
||||
IMPLEMENT_CLASS(wxThinSplitterWindow, wxSplitterWindow)
|
||||
|
||||
BEGIN_EVENT_TABLE(wxThinSplitterWindow, wxSplitterWindow)
|
||||
EVT_SIZE(wxThinSplitterWindow::OnSize)
|
||||
EVT_SIZE(wxThinSplitterWindow::OnSize)
|
||||
END_EVENT_TABLE()
|
||||
|
||||
wxThinSplitterWindow::wxThinSplitterWindow(wxWindow* parent, wxWindowID id,
|
||||
@@ -546,9 +497,9 @@ wxThinSplitterWindow::wxThinSplitterWindow(wxWindow* parent, wxWindowID id,
|
||||
|
||||
void wxThinSplitterWindow::SizeWindows()
|
||||
{
|
||||
// The client size may have changed inbetween
|
||||
// the sizing of the first window and the sizing of
|
||||
// the second. So repeat SizeWindows.
|
||||
// The client size may have changed inbetween
|
||||
// the sizing of the first window and the sizing of
|
||||
// the second. So repeat SizeWindows.
|
||||
wxSplitterWindow::SizeWindows();
|
||||
wxSplitterWindow::SizeWindows();
|
||||
}
|
||||
@@ -556,7 +507,7 @@ void wxThinSplitterWindow::SizeWindows()
|
||||
// Tests for x, y over sash
|
||||
bool wxThinSplitterWindow::SashHitTest(int x, int y, int tolerance)
|
||||
{
|
||||
return wxSplitterWindow::SashHitTest(x, y, 4);
|
||||
return wxSplitterWindow::SashHitTest(x, y, 4);
|
||||
}
|
||||
|
||||
void wxThinSplitterWindow::DrawSash(wxDC& dc)
|
||||
@@ -569,42 +520,42 @@ void wxThinSplitterWindow::DrawSash(wxDC& dc)
|
||||
int w, h;
|
||||
GetClientSize(&w, &h);
|
||||
|
||||
if ( m_splitMode == wxSPLIT_VERTICAL )
|
||||
{
|
||||
dc.SetPen(* m_facePen);
|
||||
dc.SetBrush(* m_faceBrush);
|
||||
int h1 = h-1;
|
||||
int y1 = 0;
|
||||
if ( (GetWindowStyleFlag() & wxSP_BORDER) != wxSP_BORDER && (GetWindowStyleFlag() & wxSP_3DBORDER) != wxSP_3DBORDER )
|
||||
h1 += 1; // Not sure why this is necessary...
|
||||
if ( (GetWindowStyleFlag() & wxSP_3DBORDER) == wxSP_3DBORDER)
|
||||
{
|
||||
y1 = 2; h1 -= 3;
|
||||
}
|
||||
dc.DrawRectangle(m_sashPosition, y1, m_sashSize, h1);
|
||||
}
|
||||
else
|
||||
{
|
||||
dc.SetPen(* m_facePen);
|
||||
dc.SetBrush(* m_faceBrush);
|
||||
int w1 = w-1;
|
||||
int x1 = 0;
|
||||
if ( (GetWindowStyleFlag() & wxSP_BORDER) != wxSP_BORDER && (GetWindowStyleFlag() & wxSP_3DBORDER) != wxSP_3DBORDER )
|
||||
w1 ++;
|
||||
if ( (GetWindowStyleFlag() & wxSP_3DBORDER) == wxSP_3DBORDER)
|
||||
{
|
||||
x1 = 2; w1 -= 3;
|
||||
}
|
||||
dc.DrawRectangle(x1, m_sashPosition, w1, m_sashSize);
|
||||
}
|
||||
|
||||
if ( m_splitMode == wxSPLIT_VERTICAL )
|
||||
{
|
||||
dc.SetPen(* m_facePen);
|
||||
dc.SetBrush(* m_faceBrush);
|
||||
int h1 = h-1;
|
||||
int y1 = 0;
|
||||
if ( (GetWindowStyleFlag() & wxSP_BORDER) != wxSP_BORDER && (GetWindowStyleFlag() & wxSP_3DBORDER) != wxSP_3DBORDER )
|
||||
h1 += 1; // Not sure why this is necessary...
|
||||
if ( (GetWindowStyleFlag() & wxSP_3DBORDER) == wxSP_3DBORDER)
|
||||
{
|
||||
y1 = 2; h1 -= 3;
|
||||
}
|
||||
dc.DrawRectangle(m_sashPosition, y1, m_sashSize, h1);
|
||||
}
|
||||
else
|
||||
{
|
||||
dc.SetPen(* m_facePen);
|
||||
dc.SetBrush(* m_faceBrush);
|
||||
int w1 = w-1;
|
||||
int x1 = 0;
|
||||
if ( (GetWindowStyleFlag() & wxSP_BORDER) != wxSP_BORDER && (GetWindowStyleFlag() & wxSP_3DBORDER) != wxSP_3DBORDER )
|
||||
w1 ++;
|
||||
if ( (GetWindowStyleFlag() & wxSP_3DBORDER) == wxSP_3DBORDER)
|
||||
{
|
||||
x1 = 2; w1 -= 3;
|
||||
}
|
||||
dc.DrawRectangle(x1, m_sashPosition, w1, m_sashSize);
|
||||
}
|
||||
|
||||
dc.SetPen(wxNullPen);
|
||||
dc.SetBrush(wxNullBrush);
|
||||
}
|
||||
|
||||
void wxThinSplitterWindow::OnSize(wxSizeEvent& event)
|
||||
{
|
||||
wxSplitterWindow::OnSize(event);
|
||||
wxSplitterWindow::OnSize(event);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -614,8 +565,8 @@ void wxThinSplitterWindow::OnSize(wxSizeEvent& event)
|
||||
IMPLEMENT_CLASS(wxSplitterScrolledWindow, wxScrolledWindow)
|
||||
|
||||
BEGIN_EVENT_TABLE(wxSplitterScrolledWindow, wxScrolledWindow)
|
||||
EVT_SCROLLWIN(wxSplitterScrolledWindow::OnScroll)
|
||||
EVT_SIZE(wxSplitterScrolledWindow::OnSize)
|
||||
EVT_SCROLLWIN(wxSplitterScrolledWindow::OnScroll)
|
||||
EVT_SIZE(wxSplitterScrolledWindow::OnSize)
|
||||
END_EVENT_TABLE()
|
||||
|
||||
wxSplitterScrolledWindow::wxSplitterScrolledWindow(wxWindow* parent, wxWindowID id,
|
||||
@@ -628,11 +579,11 @@ wxSplitterScrolledWindow::wxSplitterScrolledWindow(wxWindow* parent, wxWindowID
|
||||
|
||||
void wxSplitterScrolledWindow::OnSize(wxSizeEvent& event)
|
||||
{
|
||||
wxSize sz = GetClientSize();
|
||||
if (GetChildren().First())
|
||||
{
|
||||
((wxWindow*) GetChildren().First()->Data())->SetSize(0, 0, sz.x, sz.y);
|
||||
}
|
||||
wxSize sz = GetClientSize();
|
||||
if (GetChildren().First())
|
||||
{
|
||||
((wxWindow*) GetChildren().First()->Data())->SetSize(0, 0, sz.x, sz.y);
|
||||
}
|
||||
}
|
||||
|
||||
void wxSplitterScrolledWindow::OnScroll(wxScrollWinEvent& event)
|
||||
@@ -646,7 +597,7 @@ void wxSplitterScrolledWindow::OnScroll(wxScrollWinEvent& event)
|
||||
return;
|
||||
}
|
||||
inOnScroll = TRUE;
|
||||
|
||||
|
||||
int orient = event.GetOrientation();
|
||||
|
||||
int nScrollInc = CalcScrollInc(event);
|
||||
|
||||
@@ -134,10 +134,6 @@ SOURCE=.\sndg72x.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\sndmsad.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\sndpcm.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
@@ -77,7 +77,7 @@ void wxSoundFormatMSAdpcm::SetCoefs(wxInt16 **coefs, wxUint16 ncoefs,
|
||||
delete[] m_coefs;
|
||||
}
|
||||
// TODO: Add some memory checking here
|
||||
m_coefs = new wxInt16 *[ncoefs];
|
||||
m_coefs = new (wxInt16 *)[ncoefs];
|
||||
|
||||
for (i=0;i<ncoefs;i++)
|
||||
m_coefs[i] = new wxInt16[coefs_len];
|
||||
|
||||
@@ -288,6 +288,7 @@ wxShape::wxShape(wxShapeCanvas *can)
|
||||
m_textColour = wxBLACK;
|
||||
m_textColourName = "BLACK";
|
||||
m_visible = FALSE;
|
||||
m_clientData = NULL;
|
||||
m_selected = FALSE;
|
||||
m_attachmentMode = ATTACHMENT_MODE_NONE;
|
||||
m_spaceAttachments = TRUE;
|
||||
@@ -337,6 +338,11 @@ wxShape::~wxShape()
|
||||
if (m_canvas)
|
||||
m_canvas->RemoveShape(this);
|
||||
|
||||
if (m_clientData) {
|
||||
delete m_clientData;
|
||||
m_clientData = NULL;
|
||||
}
|
||||
|
||||
GetEventHandler()->OnDelete();
|
||||
}
|
||||
|
||||
@@ -991,9 +997,8 @@ void wxShape::OnEraseContents(wxDC& dc)
|
||||
if (m_pen)
|
||||
penWidth = m_pen->GetWidth();
|
||||
|
||||
dc.SetPen(GetBackgroundPen());
|
||||
dc.SetBrush(GetBackgroundBrush());
|
||||
|
||||
dc.SetPen(* g_oglWhiteBackgroundPen);
|
||||
dc.SetBrush(* g_oglWhiteBackgroundBrush);
|
||||
dc.DrawRectangle(WXROUND(topLeftX - penWidth), WXROUND(topLeftY - penWidth),
|
||||
WXROUND(maxX + penWidth*2.0 + 4.0), WXROUND(maxY + penWidth*2.0 + 4.0));
|
||||
}
|
||||
@@ -3276,25 +3281,3 @@ void wxShape::Rotate(double WXUNUSED(x), double WXUNUSED(y), double theta)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
wxPen wxShape::GetBackgroundPen()
|
||||
{
|
||||
if (GetCanvas())
|
||||
{
|
||||
wxColour c = GetCanvas()->GetBackgroundColour();
|
||||
return wxPen(c, 1, wxSOLID);
|
||||
}
|
||||
return * g_oglWhiteBackgroundPen;
|
||||
}
|
||||
|
||||
|
||||
wxBrush wxShape::GetBackgroundBrush()
|
||||
{
|
||||
if (GetCanvas())
|
||||
{
|
||||
wxColour c = GetCanvas()->GetBackgroundColour();
|
||||
return wxBrush(c, wxSOLID);
|
||||
}
|
||||
return * g_oglWhiteBackgroundBrush;
|
||||
}
|
||||
|
||||
|
||||
@@ -61,6 +61,8 @@
|
||||
#define CONTROL_POINT_ENDPOINT_FROM 5
|
||||
#define CONTROL_POINT_LINE 6
|
||||
|
||||
extern wxCursor *g_oglBullseyeCursor;
|
||||
|
||||
IMPLEMENT_DYNAMIC_CLASS(wxShapeCanvas, wxScrolledWindow)
|
||||
|
||||
BEGIN_EVENT_TABLE(wxShapeCanvas, wxScrolledWindow)
|
||||
@@ -92,11 +94,10 @@ void wxShapeCanvas::OnPaint(wxPaintEvent& event)
|
||||
|
||||
PrepareDC(dc);
|
||||
|
||||
dc.SetBackground(wxBrush(GetBackgroundColour(), wxSOLID));
|
||||
dc.Clear();
|
||||
|
||||
if (GetDiagram())
|
||||
GetDiagram()->Redraw(dc);
|
||||
if (GetDiagram())
|
||||
GetDiagram()->Redraw(dc);
|
||||
}
|
||||
|
||||
void wxShapeCanvas::OnMouseEvent(wxMouseEvent& event)
|
||||
|
||||
@@ -288,8 +288,8 @@ void wxLineShape::DrawRegion(wxDC& dc, wxShapeRegion *region, double x, double y
|
||||
// First, clear a rectangle for the text IF there is any
|
||||
if (region->GetFormattedText().Number() > 0)
|
||||
{
|
||||
dc.SetPen(GetBackgroundPen());
|
||||
dc.SetBrush(GetBackgroundBrush());
|
||||
dc.SetPen(* g_oglWhiteBackgroundPen);
|
||||
dc.SetBrush(* g_oglWhiteBackgroundBrush);
|
||||
|
||||
// Now draw the text
|
||||
if (region->GetFont()) dc.SetFont(* region->GetFont());
|
||||
@@ -300,7 +300,7 @@ void wxLineShape::DrawRegion(wxDC& dc, wxShapeRegion *region, double x, double y
|
||||
dc.SetTextForeground(* region->GetActualColourObject());
|
||||
|
||||
#ifdef __WXMSW__
|
||||
dc.SetTextBackground(GetBackgroundBrush().GetColour());
|
||||
dc.SetTextBackground(g_oglWhiteBackgroundBrush->GetColour());
|
||||
#endif
|
||||
|
||||
oglDrawFormattedText(dc, &(region->GetFormattedText()), xp, yp, w, h, region->GetFormatMode());
|
||||
@@ -324,8 +324,8 @@ void wxLineShape::EraseRegion(wxDC& dc, wxShapeRegion *region, double x, double
|
||||
|
||||
if (region->GetFormattedText().Number() > 0)
|
||||
{
|
||||
dc.SetPen(GetBackgroundPen());
|
||||
dc.SetBrush(GetBackgroundBrush());
|
||||
dc.SetPen(* g_oglWhiteBackgroundPen);
|
||||
dc.SetBrush(* g_oglWhiteBackgroundBrush);
|
||||
|
||||
dc.DrawRectangle((long)(xp - w/2.0), (long)(yp - h/2.0), (long)w, (long)h);
|
||||
}
|
||||
@@ -853,10 +853,8 @@ void wxLineShape::OnErase(wxDC& dc)
|
||||
{
|
||||
wxPen *old_pen = m_pen;
|
||||
wxBrush *old_brush = m_brush;
|
||||
wxPen bg_pen = GetBackgroundPen();
|
||||
wxBrush bg_brush = GetBackgroundBrush();
|
||||
SetPen(&bg_pen);
|
||||
SetBrush(&bg_brush);
|
||||
SetPen(g_oglWhiteBackgroundPen);
|
||||
SetBrush(g_oglWhiteBackgroundBrush);
|
||||
|
||||
double bound_x, bound_y;
|
||||
GetBoundingBoxMax(&bound_x, &bound_y);
|
||||
@@ -876,8 +874,8 @@ void wxLineShape::OnErase(wxDC& dc)
|
||||
}
|
||||
|
||||
// Undraw line
|
||||
dc.SetPen(GetBackgroundPen());
|
||||
dc.SetBrush(GetBackgroundBrush());
|
||||
dc.SetPen(* g_oglWhiteBackgroundPen);
|
||||
dc.SetBrush(* g_oglWhiteBackgroundBrush);
|
||||
|
||||
// Drawing over the line only seems to work if the line has a thickness
|
||||
// of 1.
|
||||
@@ -1819,7 +1817,7 @@ void wxLineShape::OnSizingBeginDragLeft(wxControlPoint* pt, double x, double y,
|
||||
|
||||
if (lpt->m_type == CONTROL_POINT_ENDPOINT_FROM || lpt->m_type == CONTROL_POINT_ENDPOINT_TO)
|
||||
{
|
||||
m_canvas->SetCursor(wxCursor(wxCURSOR_BULLSEYE));
|
||||
m_canvas->SetCursor(* g_oglBullseyeCursor);
|
||||
lpt->m_oldCursor = wxSTANDARD_CURSOR;
|
||||
}
|
||||
}
|
||||
@@ -1935,7 +1933,7 @@ void wxLineControlPoint::OnBeginDragRight(double x, double y, int keys, int atta
|
||||
lineShape->GetTo()->GetEventHandler()->OnDraw(dc);
|
||||
lineShape->GetTo()->GetEventHandler()->OnDrawContents(dc);
|
||||
}
|
||||
m_canvas->SetCursor(wxCursor(wxCURSOR_BULLSEYE));
|
||||
m_canvas->SetCursor(g_oglBullseyeCursor);
|
||||
m_oldCursor = wxSTANDARD_CURSOR;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -49,10 +49,11 @@
|
||||
|
||||
wxFont* g_oglNormalFont;
|
||||
wxPen* g_oglBlackPen;
|
||||
wxPen* g_oglTransparentPen;
|
||||
wxPen* g_oglBlackForegroundPen;
|
||||
wxPen* g_oglWhiteBackgroundPen;
|
||||
wxPen* g_oglTransparentPen;
|
||||
wxBrush* g_oglWhiteBackgroundBrush;
|
||||
wxPen* g_oglBlackForegroundPen;
|
||||
wxCursor* g_oglBullseyeCursor = NULL;
|
||||
|
||||
char* oglBuffer = NULL;
|
||||
|
||||
@@ -62,12 +63,16 @@ wxList oglObjectCopyMapping(wxKEY_INTEGER);
|
||||
|
||||
void wxOGLInitialize()
|
||||
{
|
||||
g_oglNormalFont = wxTheFontList->FindOrCreateFont(10, wxSWISS, wxNORMAL, wxNORMAL);
|
||||
g_oglBlackPen = wxThePenList->FindOrCreatePen("BLACK", 1, wxSOLID);
|
||||
g_oglTransparentPen = wxThePenList->FindOrCreatePen("WHITE", 1, wxTRANSPARENT);
|
||||
g_oglBlackForegroundPen = wxThePenList->FindOrCreatePen("BLACK", 1, wxSOLID);
|
||||
g_oglWhiteBackgroundPen = wxThePenList->FindOrCreatePen("WHITE", 1, wxSOLID);
|
||||
g_oglWhiteBackgroundBrush = wxTheBrushList->FindOrCreateBrush("WHITE", wxSOLID);
|
||||
g_oglBullseyeCursor = new wxCursor(wxCURSOR_BULLSEYE);
|
||||
|
||||
g_oglNormalFont = new wxFont(10, wxSWISS, wxNORMAL, wxNORMAL);
|
||||
|
||||
g_oglBlackPen = new wxPen("BLACK", 1, wxSOLID);
|
||||
|
||||
g_oglWhiteBackgroundPen = new wxPen("WHITE", 1, wxSOLID);
|
||||
g_oglTransparentPen = new wxPen("WHITE", 1, wxTRANSPARENT);
|
||||
g_oglWhiteBackgroundBrush = new wxBrush("WHITE", wxSOLID);
|
||||
g_oglBlackForegroundPen = new wxPen("BLACK", 1, wxSOLID);
|
||||
|
||||
OGLInitializeConstraintTypes();
|
||||
|
||||
@@ -84,13 +89,42 @@ void wxOGLCleanUp()
|
||||
oglBuffer = NULL;
|
||||
}
|
||||
oglBuffer = NULL;
|
||||
if (g_oglBullseyeCursor)
|
||||
{
|
||||
delete g_oglBullseyeCursor;
|
||||
g_oglBullseyeCursor = NULL;
|
||||
}
|
||||
|
||||
g_oglNormalFont = NULL; // These will be cleaned up by their GDI list
|
||||
g_oglBlackPen = NULL;
|
||||
g_oglTransparentPen = NULL;
|
||||
g_oglBlackForegroundPen = NULL;
|
||||
g_oglWhiteBackgroundPen = NULL;
|
||||
g_oglWhiteBackgroundBrush = NULL;
|
||||
if (g_oglNormalFont)
|
||||
{
|
||||
delete g_oglNormalFont;
|
||||
g_oglNormalFont = NULL;
|
||||
}
|
||||
if (g_oglBlackPen)
|
||||
{
|
||||
delete g_oglBlackPen;
|
||||
g_oglBlackPen = NULL;
|
||||
}
|
||||
if (g_oglWhiteBackgroundPen)
|
||||
{
|
||||
delete g_oglWhiteBackgroundPen;
|
||||
g_oglWhiteBackgroundPen = NULL;
|
||||
}
|
||||
if (g_oglTransparentPen)
|
||||
{
|
||||
delete g_oglTransparentPen;
|
||||
g_oglTransparentPen = NULL;
|
||||
}
|
||||
if (g_oglWhiteBackgroundBrush)
|
||||
{
|
||||
delete g_oglWhiteBackgroundBrush;
|
||||
g_oglWhiteBackgroundBrush = NULL;
|
||||
}
|
||||
if (g_oglBlackForegroundPen)
|
||||
{
|
||||
delete g_oglBlackForegroundPen;
|
||||
g_oglBlackForegroundPen = NULL;
|
||||
}
|
||||
|
||||
OGLCleanUpConstraintTypes();
|
||||
}
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
|
||||
const int H_SCROLL_MAX = 4000;
|
||||
const int H_SCROLL_MAX = 2000;
|
||||
const int H_SCROLL_STEP = 20;
|
||||
const int H_SCROLL_PAGE = 200;
|
||||
|
||||
@@ -138,7 +138,7 @@ void ScintillaWX::StartDrag() {
|
||||
dragText = evt.GetDragText();
|
||||
|
||||
if (dragText.Length()) {
|
||||
wxDropSource source(stc);
|
||||
wxDropSource source(wMain.GetID());
|
||||
wxTextDataObject data(dragText);
|
||||
wxDragResult result;
|
||||
|
||||
@@ -175,9 +175,9 @@ void ScintillaWX::SetTicking(bool on) {
|
||||
|
||||
void ScintillaWX::SetMouseCapture(bool on) {
|
||||
if (on && !capturedMouse)
|
||||
stc->CaptureMouse();
|
||||
wMain.GetID()->CaptureMouse();
|
||||
else if (!on && capturedMouse)
|
||||
stc->ReleaseMouse();
|
||||
wMain.GetID()->ReleaseMouse();
|
||||
capturedMouse = on;
|
||||
}
|
||||
|
||||
@@ -189,69 +189,36 @@ bool ScintillaWX::HaveMouseCapture() {
|
||||
|
||||
void ScintillaWX::ScrollText(int linesToMove) {
|
||||
int dy = vs.lineHeight * (linesToMove);
|
||||
stc->ScrollWindow(0, dy);
|
||||
stc->Update();
|
||||
wMain.GetID()->ScrollWindow(0, dy);
|
||||
wMain.GetID()->Update();
|
||||
}
|
||||
|
||||
void ScintillaWX::SetVerticalScrollPos() {
|
||||
if (stc->m_vScrollBar == NULL) { // Use built-in scrollbar
|
||||
stc->SetScrollPos(wxVERTICAL, topLine);
|
||||
}
|
||||
else { // otherwise use the one that's been given to us
|
||||
stc->m_vScrollBar->SetThumbPosition(topLine);
|
||||
}
|
||||
wMain.GetID()->SetScrollPos(wxVERTICAL, topLine);
|
||||
}
|
||||
|
||||
void ScintillaWX::SetHorizontalScrollPos() {
|
||||
if (stc->m_hScrollBar == NULL) { // Use built-in scrollbar
|
||||
stc->SetScrollPos(wxHORIZONTAL, xOffset);
|
||||
}
|
||||
else { // otherwise use the one that's been given to us
|
||||
stc->m_hScrollBar->SetThumbPosition(xOffset);
|
||||
}
|
||||
wMain.GetID()->SetScrollPos(wxHORIZONTAL, xOffset);
|
||||
}
|
||||
|
||||
|
||||
bool ScintillaWX::ModifyScrollBars(int nMax, int nPage) {
|
||||
bool modified = false;
|
||||
int sbMax = wMain.GetID()->GetScrollRange(wxVERTICAL);
|
||||
int sbThumb = wMain.GetID()->GetScrollThumb(wxVERTICAL);
|
||||
int sbPos = wMain.GetID()->GetScrollPos(wxVERTICAL);
|
||||
|
||||
if (stc->m_vScrollBar == NULL) { // Use built-in scrollbar
|
||||
int sbMax = stc->GetScrollRange(wxVERTICAL);
|
||||
int sbThumb = stc->GetScrollThumb(wxVERTICAL);
|
||||
int sbPos = stc->GetScrollPos(wxVERTICAL);
|
||||
if (sbMax != nMax || sbThumb != nPage) {
|
||||
stc->SetScrollbar(wxVERTICAL, sbPos, nPage, nMax);
|
||||
modified = true;
|
||||
}
|
||||
}
|
||||
else { // otherwise use the one that's been given to us
|
||||
int sbMax = stc->m_vScrollBar->GetRange();
|
||||
int sbPage = stc->m_vScrollBar->GetPageSize();
|
||||
int sbPos = stc->m_vScrollBar->GetThumbPosition();
|
||||
if (sbMax != nMax || sbPage != nPage) {
|
||||
stc->m_vScrollBar->SetScrollbar(sbPos, nPage, nMax, nPage);
|
||||
modified = true;
|
||||
}
|
||||
|
||||
if (sbMax != nMax || sbThumb != nPage) {
|
||||
wMain.GetID()->SetScrollbar(wxVERTICAL, sbPos, nPage, nMax);
|
||||
modified = true;
|
||||
}
|
||||
|
||||
|
||||
if (horizontalScrollBarVisible) {
|
||||
if (stc->m_hScrollBar == NULL) { // Use built-in scrollbar
|
||||
int sbMax = stc->GetScrollRange(wxHORIZONTAL);
|
||||
int sbThumb = stc->GetScrollThumb(wxHORIZONTAL);
|
||||
if ((sbMax != H_SCROLL_MAX) || (sbThumb != H_SCROLL_STEP)) {
|
||||
stc->SetScrollbar(wxHORIZONTAL, 0, H_SCROLL_STEP, H_SCROLL_MAX);
|
||||
modified = true;
|
||||
}
|
||||
}
|
||||
else { // otherwise use the one that's been given to us
|
||||
int sbMax = stc->m_hScrollBar->GetRange();
|
||||
int sbPage = stc->m_hScrollBar->GetPageSize();
|
||||
if ((sbMax != H_SCROLL_MAX) || (sbPage != H_SCROLL_STEP)) {
|
||||
stc->m_hScrollBar->SetScrollbar(0, H_SCROLL_STEP, H_SCROLL_MAX, H_SCROLL_STEP);
|
||||
modified = true;
|
||||
}
|
||||
}
|
||||
sbMax = wMain.GetID()->GetScrollRange(wxHORIZONTAL);
|
||||
sbThumb = wMain.GetID()->GetScrollThumb(wxHORIZONTAL);
|
||||
if ((sbMax != H_SCROLL_MAX) || (sbThumb != H_SCROLL_STEP)) {
|
||||
wMain.GetID()->SetScrollbar(wxHORIZONTAL, 0, H_SCROLL_STEP, H_SCROLL_MAX);
|
||||
modified = true;
|
||||
}
|
||||
return modified;
|
||||
}
|
||||
@@ -313,7 +280,7 @@ bool ScintillaWX::CanPaste() {
|
||||
}
|
||||
|
||||
void ScintillaWX::CreateCallTipWindow(PRectangle) {
|
||||
ct.wCallTip = new wxSTCCallTip(stc, -1, &ct);
|
||||
ct.wCallTip = new wxSTCCallTip(wMain.GetID(), -1, &ct);
|
||||
ct.wDraw = ct.wCallTip;
|
||||
}
|
||||
|
||||
@@ -378,19 +345,19 @@ void ScintillaWX::DoPaint(wxDC* dc, wxRect rect) {
|
||||
|
||||
void ScintillaWX::DoHScroll(int type, int pos) {
|
||||
int xPos = xOffset;
|
||||
if (type == wxEVT_SCROLLWIN_LINEUP || type == wxEVT_SCROLL_LINEUP)
|
||||
if (type == wxEVT_SCROLLWIN_LINEUP)
|
||||
xPos -= H_SCROLL_STEP;
|
||||
else if (type == wxEVT_SCROLLWIN_LINEDOWN || type == wxEVT_SCROLL_LINEDOWN)
|
||||
else if (type == wxEVT_SCROLLWIN_LINEDOWN)
|
||||
xPos += H_SCROLL_STEP;
|
||||
else if (type == wxEVT_SCROLLWIN_PAGEUP || type == wxEVT_SCROLL_PAGEUP)
|
||||
else if (type == wxEVT_SCROLLWIN_PAGEUP)
|
||||
xPos -= H_SCROLL_PAGE;
|
||||
else if (type == wxEVT_SCROLLWIN_PAGEDOWN || type == wxEVT_SCROLL_PAGEDOWN)
|
||||
else if (type == wxEVT_SCROLLWIN_PAGEDOWN)
|
||||
xPos += H_SCROLL_PAGE;
|
||||
else if (type == wxEVT_SCROLLWIN_TOP || type == wxEVT_SCROLL_TOP)
|
||||
else if (type == wxEVT_SCROLLWIN_TOP)
|
||||
xPos = 0;
|
||||
else if (type == wxEVT_SCROLLWIN_BOTTOM || type == wxEVT_SCROLL_BOTTOM)
|
||||
else if (type == wxEVT_SCROLLWIN_BOTTOM)
|
||||
xPos = H_SCROLL_MAX;
|
||||
else if (type == wxEVT_SCROLLWIN_THUMBTRACK || type == wxEVT_SCROLL_THUMBTRACK)
|
||||
else if (type == wxEVT_SCROLLWIN_THUMBTRACK)
|
||||
xPos = pos;
|
||||
|
||||
HorizontalScrollTo(xPos);
|
||||
@@ -398,19 +365,19 @@ void ScintillaWX::DoHScroll(int type, int pos) {
|
||||
|
||||
void ScintillaWX::DoVScroll(int type, int pos) {
|
||||
int topLineNew = topLine;
|
||||
if (type == wxEVT_SCROLLWIN_LINEUP || type == wxEVT_SCROLL_LINEUP)
|
||||
if (type == wxEVT_SCROLLWIN_LINEUP)
|
||||
topLineNew -= 1;
|
||||
else if (type == wxEVT_SCROLLWIN_LINEDOWN || type == wxEVT_SCROLL_LINEDOWN)
|
||||
else if (type == wxEVT_SCROLLWIN_LINEDOWN)
|
||||
topLineNew += 1;
|
||||
else if (type == wxEVT_SCROLLWIN_PAGEUP || type == wxEVT_SCROLL_PAGEUP)
|
||||
else if (type == wxEVT_SCROLLWIN_PAGEUP)
|
||||
topLineNew -= LinesToScroll();
|
||||
else if (type == wxEVT_SCROLLWIN_PAGEDOWN || type == wxEVT_SCROLL_PAGEDOWN)
|
||||
else if (type == wxEVT_SCROLLWIN_PAGEDOWN)
|
||||
topLineNew += LinesToScroll();
|
||||
else if (type == wxEVT_SCROLLWIN_TOP || type == wxEVT_SCROLL_TOP)
|
||||
else if (type == wxEVT_SCROLLWIN_TOP)
|
||||
topLineNew = 0;
|
||||
else if (type == wxEVT_SCROLLWIN_BOTTOM || type == wxEVT_SCROLL_BOTTOM)
|
||||
else if (type == wxEVT_SCROLLWIN_BOTTOM)
|
||||
topLineNew = MaxScrollPos();
|
||||
else if (type == wxEVT_SCROLLWIN_THUMBTRACK || type == wxEVT_SCROLL_THUMBTRACK)
|
||||
else if (type == wxEVT_SCROLLWIN_THUMBTRACK)
|
||||
topLineNew = pos;
|
||||
|
||||
ScrollTo(topLineNew);
|
||||
@@ -598,13 +565,13 @@ void ScintillaWX::FullPaint() {
|
||||
paintState = painting;
|
||||
rcPaint = GetTextRectangle();
|
||||
paintingAllText = true;
|
||||
wxClientDC dc(stc);
|
||||
wxClientDC dc(wMain.GetID());
|
||||
Surface surfaceWindow;
|
||||
surfaceWindow.Init(&dc);
|
||||
Paint(&surfaceWindow, rcPaint);
|
||||
surfaceWindow.Release();
|
||||
|
||||
// stc->Refresh(FALSE);
|
||||
// wMain.GetID()->Refresh(FALSE);
|
||||
|
||||
paintState = notPainting;
|
||||
}
|
||||
|
||||
@@ -103,7 +103,6 @@ DEFINE_EVENT_TYPE( wxEVT_STC_DO_DROP )
|
||||
BEGIN_EVENT_TABLE(wxStyledTextCtrl, wxControl)
|
||||
EVT_PAINT (wxStyledTextCtrl::OnPaint)
|
||||
EVT_SCROLLWIN (wxStyledTextCtrl::OnScrollWin)
|
||||
EVT_SCROLL (wxStyledTextCtrl::OnScroll)
|
||||
EVT_SIZE (wxStyledTextCtrl::OnSize)
|
||||
EVT_LEFT_DOWN (wxStyledTextCtrl::OnMouseLeftDown)
|
||||
#ifdef __WXMSW__
|
||||
@@ -112,11 +111,7 @@ BEGIN_EVENT_TABLE(wxStyledTextCtrl, wxControl)
|
||||
#endif
|
||||
EVT_MOTION (wxStyledTextCtrl::OnMouseMove)
|
||||
EVT_LEFT_UP (wxStyledTextCtrl::OnMouseLeftUp)
|
||||
#ifdef __WXGTK__
|
||||
EVT_RIGHT_UP (wxStyledTextCtrl::OnMouseRightUp)
|
||||
#else
|
||||
EVT_CONTEXT_MENU (wxStyledTextCtrl::OnContextMenu)
|
||||
#endif
|
||||
EVT_MOUSEWHEEL (wxStyledTextCtrl::OnMouseWheel)
|
||||
EVT_CHAR (wxStyledTextCtrl::OnChar)
|
||||
EVT_KEY_DOWN (wxStyledTextCtrl::OnKeyDown)
|
||||
@@ -148,8 +143,6 @@ wxStyledTextCtrl::wxStyledTextCtrl(wxWindow *parent,
|
||||
m_swx = new ScintillaWX(this);
|
||||
m_stopWatch.Start();
|
||||
m_lastKeyDownConsumed = FALSE;
|
||||
m_vScrollBar = NULL;
|
||||
m_hScrollBar = NULL;
|
||||
}
|
||||
|
||||
|
||||
@@ -1808,16 +1801,6 @@ void wxStyledTextCtrl::OnScrollWin(wxScrollWinEvent& evt) {
|
||||
m_swx->DoVScroll(evt.GetEventType(), evt.GetPosition());
|
||||
}
|
||||
|
||||
void wxStyledTextCtrl::OnScroll(wxScrollEvent& evt) {
|
||||
wxScrollBar* sb = wxDynamicCast(evt.GetEventObject(), wxScrollBar);
|
||||
if (sb) {
|
||||
if (sb->IsVertical())
|
||||
m_swx->DoVScroll(evt.GetEventType(), evt.GetPosition());
|
||||
else
|
||||
m_swx->DoHScroll(evt.GetEventType(), evt.GetPosition());
|
||||
}
|
||||
}
|
||||
|
||||
void wxStyledTextCtrl::OnSize(wxSizeEvent& evt) {
|
||||
wxSize sz = GetClientSize();
|
||||
m_swx->DoSize(sz.x, sz.y);
|
||||
@@ -1841,12 +1824,6 @@ void wxStyledTextCtrl::OnMouseLeftUp(wxMouseEvent& evt) {
|
||||
}
|
||||
|
||||
|
||||
void wxStyledTextCtrl::OnMouseRightUp(wxMouseEvent& evt) {
|
||||
wxPoint pt = evt.GetPosition();
|
||||
m_swx->DoContextMenu(Point(pt.x, pt.y));
|
||||
}
|
||||
|
||||
|
||||
void wxStyledTextCtrl::OnContextMenu(wxContextMenuEvent& evt) {
|
||||
wxPoint pt = evt.GetPosition();
|
||||
ScreenToClient(&pt.x, &pt.y);
|
||||
@@ -1879,7 +1856,7 @@ void wxStyledTextCtrl::OnChar(wxKeyEvent& evt) {
|
||||
bool alt = evt.AltDown();
|
||||
bool skip = ((ctrl || alt) && ! (ctrl && alt));
|
||||
|
||||
if (key <= 0xff && key >= 32 && !m_lastKeyDownConsumed && !skip) {
|
||||
if (key <= 0xff && !iscntrl(key) && !m_lastKeyDownConsumed && !skip) {
|
||||
m_swx->DoAddChar(key);
|
||||
return;
|
||||
}
|
||||
@@ -2087,35 +2064,35 @@ bool wxStyledTextEvent::GetShift() const { return (m_modifiers & SCI_SHIFT) != 0
|
||||
bool wxStyledTextEvent::GetControl() const { return (m_modifiers & SCI_CTRL) != 0; }
|
||||
bool wxStyledTextEvent::GetAlt() const { return (m_modifiers & SCI_ALT) != 0; }
|
||||
|
||||
void wxStyledTextEvent::CopyObject(wxObject& obj) const {
|
||||
wxCommandEvent::CopyObject(obj);
|
||||
|
||||
wxStyledTextEvent::wxStyledTextEvent(const wxStyledTextEvent& event):
|
||||
wxCommandEvent(event)
|
||||
{
|
||||
m_position = event.m_position;
|
||||
m_key = event.m_key;
|
||||
m_modifiers = event.m_modifiers;
|
||||
m_modificationType = event.m_modificationType;
|
||||
m_text = event.m_text;
|
||||
m_length = event.m_length;
|
||||
m_linesAdded = event.m_linesAdded;
|
||||
m_line = event.m_line;
|
||||
m_foldLevelNow = event.m_foldLevelNow;
|
||||
m_foldLevelPrev = event.m_foldLevelPrev;
|
||||
wxStyledTextEvent* o = (wxStyledTextEvent*)&obj;
|
||||
o->m_position = m_position;
|
||||
o->m_key = m_key;
|
||||
o->m_modifiers = m_modifiers;
|
||||
o->m_modificationType = m_modificationType;
|
||||
o->m_text = m_text;
|
||||
o->m_length = m_length;
|
||||
o->m_linesAdded = m_linesAdded;
|
||||
o->m_line = m_line;
|
||||
o->m_foldLevelNow = m_foldLevelNow;
|
||||
o->m_foldLevelPrev = m_foldLevelPrev;
|
||||
|
||||
m_margin = event.m_margin;
|
||||
o->m_margin = m_margin;
|
||||
|
||||
m_message = event.m_message;
|
||||
m_wParam = event.m_wParam;
|
||||
m_lParam = event.m_lParam;
|
||||
o->m_message = m_message;
|
||||
o->m_wParam = m_wParam;
|
||||
o->m_lParam = m_lParam;
|
||||
|
||||
m_listType = event.m_listType;
|
||||
m_x = event.m_x;
|
||||
m_y = event.m_y;
|
||||
o->m_listType = m_listType;
|
||||
o->m_x = m_x;
|
||||
o->m_y = m_y;
|
||||
|
||||
#if wxUSE_DRAG_AND_DROP
|
||||
m_dragText = event.m_dragText;
|
||||
m_dragAllowMove =event.m_dragAllowMove;
|
||||
m_dragResult = event.m_dragResult;
|
||||
o->m_dragText = m_dragText;
|
||||
o->m_dragAllowMove =m_dragAllowMove;
|
||||
o->m_dragResult = m_dragResult;
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -2125,8 +2102,3 @@ wxStyledTextEvent::wxStyledTextEvent(const wxStyledTextEvent& event):
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -103,7 +103,6 @@ DEFINE_EVENT_TYPE( wxEVT_STC_DO_DROP )
|
||||
BEGIN_EVENT_TABLE(wxStyledTextCtrl, wxControl)
|
||||
EVT_PAINT (wxStyledTextCtrl::OnPaint)
|
||||
EVT_SCROLLWIN (wxStyledTextCtrl::OnScrollWin)
|
||||
EVT_SCROLL (wxStyledTextCtrl::OnScroll)
|
||||
EVT_SIZE (wxStyledTextCtrl::OnSize)
|
||||
EVT_LEFT_DOWN (wxStyledTextCtrl::OnMouseLeftDown)
|
||||
#ifdef __WXMSW__
|
||||
@@ -112,11 +111,7 @@ BEGIN_EVENT_TABLE(wxStyledTextCtrl, wxControl)
|
||||
#endif
|
||||
EVT_MOTION (wxStyledTextCtrl::OnMouseMove)
|
||||
EVT_LEFT_UP (wxStyledTextCtrl::OnMouseLeftUp)
|
||||
#ifdef __WXGTK__
|
||||
EVT_RIGHT_UP (wxStyledTextCtrl::OnMouseRightUp)
|
||||
#else
|
||||
EVT_CONTEXT_MENU (wxStyledTextCtrl::OnContextMenu)
|
||||
#endif
|
||||
EVT_MOUSEWHEEL (wxStyledTextCtrl::OnMouseWheel)
|
||||
EVT_CHAR (wxStyledTextCtrl::OnChar)
|
||||
EVT_KEY_DOWN (wxStyledTextCtrl::OnKeyDown)
|
||||
@@ -148,8 +143,6 @@ wxStyledTextCtrl::wxStyledTextCtrl(wxWindow *parent,
|
||||
m_swx = new ScintillaWX(this);
|
||||
m_stopWatch.Start();
|
||||
m_lastKeyDownConsumed = FALSE;
|
||||
m_vScrollBar = NULL;
|
||||
m_hScrollBar = NULL;
|
||||
}
|
||||
|
||||
|
||||
@@ -352,16 +345,6 @@ void wxStyledTextCtrl::OnScrollWin(wxScrollWinEvent& evt) {
|
||||
m_swx->DoVScroll(evt.GetEventType(), evt.GetPosition());
|
||||
}
|
||||
|
||||
void wxStyledTextCtrl::OnScroll(wxScrollEvent& evt) {
|
||||
wxScrollBar* sb = wxDynamicCast(evt.GetEventObject(), wxScrollBar);
|
||||
if (sb) {
|
||||
if (sb->IsVertical())
|
||||
m_swx->DoVScroll(evt.GetEventType(), evt.GetPosition());
|
||||
else
|
||||
m_swx->DoHScroll(evt.GetEventType(), evt.GetPosition());
|
||||
}
|
||||
}
|
||||
|
||||
void wxStyledTextCtrl::OnSize(wxSizeEvent& evt) {
|
||||
wxSize sz = GetClientSize();
|
||||
m_swx->DoSize(sz.x, sz.y);
|
||||
@@ -385,12 +368,6 @@ void wxStyledTextCtrl::OnMouseLeftUp(wxMouseEvent& evt) {
|
||||
}
|
||||
|
||||
|
||||
void wxStyledTextCtrl::OnMouseRightUp(wxMouseEvent& evt) {
|
||||
wxPoint pt = evt.GetPosition();
|
||||
m_swx->DoContextMenu(Point(pt.x, pt.y));
|
||||
}
|
||||
|
||||
|
||||
void wxStyledTextCtrl::OnContextMenu(wxContextMenuEvent& evt) {
|
||||
wxPoint pt = evt.GetPosition();
|
||||
ScreenToClient(&pt.x, &pt.y);
|
||||
@@ -423,7 +400,7 @@ void wxStyledTextCtrl::OnChar(wxKeyEvent& evt) {
|
||||
bool alt = evt.AltDown();
|
||||
bool skip = ((ctrl || alt) && ! (ctrl && alt));
|
||||
|
||||
if (key <= 0xff && key >= 32 && !m_lastKeyDownConsumed && !skip) {
|
||||
if (key <= 0xff && !iscntrl(key) && !m_lastKeyDownConsumed && !skip) {
|
||||
m_swx->DoAddChar(key);
|
||||
return;
|
||||
}
|
||||
@@ -631,35 +608,35 @@ bool wxStyledTextEvent::GetShift() const { return (m_modifiers & SCI_SHIFT) != 0
|
||||
bool wxStyledTextEvent::GetControl() const { return (m_modifiers & SCI_CTRL) != 0; }
|
||||
bool wxStyledTextEvent::GetAlt() const { return (m_modifiers & SCI_ALT) != 0; }
|
||||
|
||||
void wxStyledTextEvent::CopyObject(wxObject& obj) const {
|
||||
wxCommandEvent::CopyObject(obj);
|
||||
|
||||
wxStyledTextEvent::wxStyledTextEvent(const wxStyledTextEvent& event):
|
||||
wxCommandEvent(event)
|
||||
{
|
||||
m_position = event.m_position;
|
||||
m_key = event.m_key;
|
||||
m_modifiers = event.m_modifiers;
|
||||
m_modificationType = event.m_modificationType;
|
||||
m_text = event.m_text;
|
||||
m_length = event.m_length;
|
||||
m_linesAdded = event.m_linesAdded;
|
||||
m_line = event.m_line;
|
||||
m_foldLevelNow = event.m_foldLevelNow;
|
||||
m_foldLevelPrev = event.m_foldLevelPrev;
|
||||
wxStyledTextEvent* o = (wxStyledTextEvent*)&obj;
|
||||
o->m_position = m_position;
|
||||
o->m_key = m_key;
|
||||
o->m_modifiers = m_modifiers;
|
||||
o->m_modificationType = m_modificationType;
|
||||
o->m_text = m_text;
|
||||
o->m_length = m_length;
|
||||
o->m_linesAdded = m_linesAdded;
|
||||
o->m_line = m_line;
|
||||
o->m_foldLevelNow = m_foldLevelNow;
|
||||
o->m_foldLevelPrev = m_foldLevelPrev;
|
||||
|
||||
m_margin = event.m_margin;
|
||||
o->m_margin = m_margin;
|
||||
|
||||
m_message = event.m_message;
|
||||
m_wParam = event.m_wParam;
|
||||
m_lParam = event.m_lParam;
|
||||
o->m_message = m_message;
|
||||
o->m_wParam = m_wParam;
|
||||
o->m_lParam = m_lParam;
|
||||
|
||||
m_listType = event.m_listType;
|
||||
m_x = event.m_x;
|
||||
m_y = event.m_y;
|
||||
o->m_listType = m_listType;
|
||||
o->m_x = m_x;
|
||||
o->m_y = m_y;
|
||||
|
||||
#if wxUSE_DRAG_AND_DROP
|
||||
m_dragText = event.m_dragText;
|
||||
m_dragAllowMove =event.m_dragAllowMove;
|
||||
m_dragResult = event.m_dragResult;
|
||||
o->m_dragText = m_dragText;
|
||||
o->m_dragAllowMove =m_dragAllowMove;
|
||||
o->m_dragResult = m_dragResult;
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -669,8 +646,3 @@ wxStyledTextEvent::wxStyledTextEvent(const wxStyledTextEvent& event):
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -148,14 +148,6 @@ public:
|
||||
// Send a message to Scintilla
|
||||
long SendMsg(int msg, long wp=0, long lp=0);
|
||||
|
||||
|
||||
// Set the vertical scrollbar to use instead of the ont that's built-in.
|
||||
void SetVScrollBar(wxScrollBar* bar) { m_vScrollBar = bar; }
|
||||
|
||||
|
||||
// Set the horizontal scrollbar to use instead of the ont that's built-in.
|
||||
void SetHScrollBar(wxScrollBar* bar) { m_hScrollBar = bar; }
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
|
||||
|
||||
@@ -164,12 +156,10 @@ private:
|
||||
// Event handlers
|
||||
void OnPaint(wxPaintEvent& evt);
|
||||
void OnScrollWin(wxScrollWinEvent& evt);
|
||||
void OnScroll(wxScrollEvent& evt);
|
||||
void OnSize(wxSizeEvent& evt);
|
||||
void OnMouseLeftDown(wxMouseEvent& evt);
|
||||
void OnMouseMove(wxMouseEvent& evt);
|
||||
void OnMouseLeftUp(wxMouseEvent& evt);
|
||||
void OnMouseRightUp(wxMouseEvent& evt);
|
||||
void OnContextMenu(wxContextMenuEvent& evt);
|
||||
void OnMouseWheel(wxMouseEvent& evt);
|
||||
void OnChar(wxKeyEvent& evt);
|
||||
@@ -193,8 +183,6 @@ private:
|
||||
|
||||
ScintillaWX* m_swx;
|
||||
wxStopWatch m_stopWatch;
|
||||
wxScrollBar* m_vScrollBar;
|
||||
wxScrollBar* m_hScrollBar;
|
||||
|
||||
bool m_lastKeyDownConsumed;
|
||||
|
||||
@@ -208,9 +196,6 @@ private:
|
||||
class wxStyledTextEvent : public wxCommandEvent {
|
||||
public:
|
||||
wxStyledTextEvent(wxEventType commandType=0, int id=0);
|
||||
#ifndef SWIG
|
||||
wxStyledTextEvent(const wxStyledTextEvent& event);
|
||||
#endif
|
||||
~wxStyledTextEvent() {}
|
||||
|
||||
void SetPosition(int pos) { m_position = pos; }
|
||||
@@ -263,7 +248,7 @@ public:
|
||||
bool GetControl() const;
|
||||
bool GetAlt() const;
|
||||
|
||||
virtual wxEvent* Clone() const { return new wxStyledTextEvent(*this); }
|
||||
void CopyObject(wxObject& obj) const;
|
||||
|
||||
#ifndef SWIG
|
||||
private:
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_bmp.cpp
|
||||
// Purpose: XRC resource for wxBitmap and wxIcon
|
||||
// Purpose: XML resource for wxBitmap and wxIcon
|
||||
// Author: Vaclav Slavik
|
||||
// Created: 2000/09/09
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_bmpbt.cpp
|
||||
// Purpose: XRC resource for bitmap buttons
|
||||
// Purpose: XML resource for bitmap buttons
|
||||
// Author: Brian Gavin
|
||||
// Created: 2000/09/09
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_bttn.cpp
|
||||
// Purpose: XRC resource for buttons
|
||||
// Purpose: XML resource for buttons
|
||||
// Author: Vaclav Slavik
|
||||
// Created: 2000/03/05
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_cald.cpp
|
||||
// Purpose: XRC resource for wxCalendarCtrl
|
||||
// Purpose: XML resource for wxCalendarCtrl
|
||||
// Author: Brian Gavin
|
||||
// Created: 2000/09/09
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_chckb.cpp
|
||||
// Purpose: XRC resource for wxCheckBox
|
||||
// Purpose: XML resource for wxCheckBox
|
||||
// Author: Bob Mitchell
|
||||
// Created: 2000/03/21
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_chckl.cpp
|
||||
// Purpose: XRC resource for wxCheckList
|
||||
// Purpose: XML resource for wxCheckList
|
||||
// Author: Bob Mitchell
|
||||
// Created: 2000/03/21
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_choic.cpp
|
||||
// Purpose: XRC resource for wxChoice
|
||||
// Purpose: XML resource for wxChoice
|
||||
// Author: Bob Mitchell
|
||||
// Created: 2000/03/21
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_combo.cpp
|
||||
// Purpose: XRC resource for wxRadioBox
|
||||
// Purpose: XML resource for wxRadioBox
|
||||
// Author: Bob Mitchell
|
||||
// Created: 2000/03/21
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_dlg.cpp
|
||||
// Purpose: XRC resource for dialogs
|
||||
// Purpose: XML resource for dialogs
|
||||
// Author: Vaclav Slavik
|
||||
// Created: 2000/03/05
|
||||
// RCS-ID: $Id$
|
||||
@@ -50,7 +50,7 @@ wxObject *wxDialogXmlHandler::DoCreateResource()
|
||||
{
|
||||
wxDialog *dlg = wxDynamicCast(m_instance, wxDialog);
|
||||
|
||||
wxASSERT_MSG(dlg, _("XRC resource: Cannot create dialog without instance."));
|
||||
wxASSERT_MSG(dlg, _("XML resource: Cannot create dialog without instance."));
|
||||
|
||||
dlg->Create(m_parentAsWindow,
|
||||
GetID(),
|
||||
@@ -64,7 +64,7 @@ wxObject *wxDialogXmlHandler::DoCreateResource()
|
||||
|
||||
CreateChildren(dlg);
|
||||
|
||||
if (GetBool(wxT("centered"), FALSE))
|
||||
if (GetBool(_("centered"), FALSE))
|
||||
dlg->Centre();
|
||||
|
||||
return dlg;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_frame.cpp
|
||||
// Purpose: XRC resource for dialogs
|
||||
// Purpose: XML resource for dialogs
|
||||
// Author: Vaclav Slavik & Aleks.
|
||||
// Created: 2000/03/05
|
||||
// RCS-ID: $Id$
|
||||
@@ -55,7 +55,7 @@ wxObject *wxFrameXmlHandler::DoCreateResource()
|
||||
{
|
||||
wxFrame *frame = wxDynamicCast(m_instance, wxFrame);
|
||||
|
||||
wxASSERT_MSG(frame, _("XRC resource: Cannot create dialog without instance."));
|
||||
wxASSERT_MSG(frame, _("XML resource: Cannot create dialog without instance."));
|
||||
|
||||
frame->Create(m_parentAsWindow,
|
||||
GetID(),
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_gauge.cpp
|
||||
// Purpose: XRC resource for wxGauge
|
||||
// Purpose: XML resource for wxGauge
|
||||
// Author: Bob Mitchell
|
||||
// Created: 2000/03/21
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_html.cpp
|
||||
// Purpose: XRC resource for wxHtmlWindow
|
||||
// Purpose: XML resource for wxHtmlWindow
|
||||
// Author: Bob Mitchell
|
||||
// Created: 2000/03/21
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_listb.cpp
|
||||
// Purpose: XRC resource for wxListBox
|
||||
// Purpose: XML resource for wxListBox
|
||||
// Author: Bob Mitchell & Vaclav Slavik
|
||||
// Created: 2000/07/29
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_listc.cpp
|
||||
// Purpose: XRC resource for wxListCtrl
|
||||
// Purpose: XML resource for wxListCtrl
|
||||
// Author: Brian Gavin
|
||||
// Created: 2000/09/09
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_menu.cpp
|
||||
// Purpose: XRC resource for menus and menubars
|
||||
// Purpose: XML resource for menus and menubars
|
||||
// Author: Vaclav Slavik
|
||||
// Created: 2000/03/05
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_notbk.cpp
|
||||
// Purpose: XRC resource for wxNotebook
|
||||
// Purpose: XML resource for wxNotebook
|
||||
// Author: Vaclav Slavik
|
||||
// Created: 2000/03/21
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_panel.cpp
|
||||
// Purpose: XRC resource for panels
|
||||
// Purpose: XML resource for panels
|
||||
// Author: Vaclav Slavik
|
||||
// Created: 2000/03/05
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_radbt.cpp
|
||||
// Purpose: XRC resource for wxRadioButton
|
||||
// Purpose: XML resource for wxRadioButton
|
||||
// Author: Bob Mitchell
|
||||
// Created: 2000/03/21
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_radbx.cpp
|
||||
// Purpose: XRC resource for wxRadioBox
|
||||
// Purpose: XML resource for wxRadioBox
|
||||
// Author: Bob Mitchell
|
||||
// Created: 2000/03/21
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_scrol.cpp
|
||||
// Purpose: XRC resource for wxScrollBar
|
||||
// Purpose: XML resource for wxScrollBar
|
||||
// Author: Brian Gavin
|
||||
// Created: 2000/09/09
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_sizer.cpp
|
||||
// Purpose: XRC resource for wxBoxSizer
|
||||
// Purpose: XML resource for wxBoxSizer
|
||||
// Author: Vaclav Slavik
|
||||
// Created: 2000/03/21
|
||||
// RCS-ID: $Id$
|
||||
@@ -119,7 +119,7 @@ wxObject *wxSizerXmlHandler::DoCreateResource()
|
||||
|
||||
else if (m_class == wxT("spacer"))
|
||||
{
|
||||
wxCHECK_MSG(m_parentSizer, NULL, wxT("Incorrect syntax of XRC resource: spacer not within sizer!"));
|
||||
wxCHECK_MSG(m_parentSizer, NULL, wxT("Incorrect syntax of XML resource: spacer not within sizer!"));
|
||||
wxSize sz = GetSize();
|
||||
m_parentSizer->Add(sz.x, sz.y,
|
||||
GetLong(wxT("option")), GetStyle(wxT("flag")), GetDimension(wxT("border")));
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_slidr.cpp
|
||||
// Purpose: XRC resource for wxSlider
|
||||
// Purpose: XML resource for wxSlider
|
||||
// Author: Bob Mitchell
|
||||
// Created: 2000/03/21
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_spin.cpp
|
||||
// Purpose: XRC resource for wxSpinButton
|
||||
// Purpose: XML resource for wxSpinButton
|
||||
// Author: Bob Mitchell
|
||||
// Created: 2000/03/21
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_stbmp.cpp
|
||||
// Purpose: XRC resource for wxStaticBitmap
|
||||
// Purpose: XML resource for wxStaticBitmap
|
||||
// Author: Vaclav Slavik
|
||||
// Created: 2000/04/22
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_stbox.cpp
|
||||
// Purpose: XRC resource for wxStaticBox
|
||||
// Purpose: XML resource for wxStaticBox
|
||||
// Author: Brian Gavin
|
||||
// Created: 2000/09/09
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_stbox.cpp
|
||||
// Purpose: XRC resource for wxStaticLine
|
||||
// Purpose: XML resource for wxStaticLine
|
||||
// Author: Brian Gavin
|
||||
// Created: 2000/09/09
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_sttxt.cpp
|
||||
// Purpose: XRC resource for wxStaticText
|
||||
// Purpose: XML resource for wxStaticText
|
||||
// Author: Bob Mitchell
|
||||
// Created: 2000/03/21
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_text.cpp
|
||||
// Purpose: XRC resource for wxTextCtrl
|
||||
// Purpose: XML resource for wxTextCtrl
|
||||
// Author: Aleksandras Gluchovas
|
||||
// Created: 2000/03/21
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_toolb.cpp
|
||||
// Purpose: XRC resource for wxBoxSizer
|
||||
// Purpose: XML resource for wxBoxSizer
|
||||
// Author: Vaclav Slavik
|
||||
// Created: 2000/08/11
|
||||
// RCS-ID: $Id$
|
||||
@@ -40,7 +40,7 @@ wxObject *wxToolBarXmlHandler::DoCreateResource()
|
||||
{
|
||||
if (m_class == wxT("tool"))
|
||||
{
|
||||
wxCHECK_MSG(m_toolbar, NULL, wxT("Incorrect syntax of XRC resource: tool not within a toolbar!"));
|
||||
wxCHECK_MSG(m_toolbar, NULL, wxT("Incorrect syntax of XML resource: tool not within a toolbar!"));
|
||||
m_toolbar->AddTool(GetID(),
|
||||
GetBitmap(wxT("bitmap")),
|
||||
GetBitmap(wxT("bitmap2")),
|
||||
@@ -55,7 +55,7 @@ wxObject *wxToolBarXmlHandler::DoCreateResource()
|
||||
|
||||
else if (m_class == wxT("separator"))
|
||||
{
|
||||
wxCHECK_MSG(m_toolbar, NULL, wxT("Incorrect syntax of XRC resource: separator not within a toolbar!"));
|
||||
wxCHECK_MSG(m_toolbar, NULL, wxT("Incorrect syntax of XML resource: separator not within a toolbar!"));
|
||||
m_toolbar->AddSeparator();
|
||||
return m_toolbar; // must return non-NULL
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_tree.cpp
|
||||
// Purpose: XRC resource for wxTreeCtrl
|
||||
// Purpose: XML resource for wxTreeCtrl
|
||||
// Author: Brian Gavin
|
||||
// Created: 2000/09/09
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xh_unkwn.cpp
|
||||
// Purpose: XRC resource for unknown widget
|
||||
// Purpose: XML resource for unknown widget
|
||||
// Author: Vaclav Slavik
|
||||
// Created: 2000/09/09
|
||||
// RCS-ID: $Id$
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
|
||||
- handle unknown encodings
|
||||
- process all elements, including CDATA
|
||||
- XRC resources should automatically select desired encoding based on
|
||||
- XML resources should automatically select desired encoding based on
|
||||
runtime environment (?) (would need BIN and BINZ formats modification,
|
||||
too)
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: xmlres.cpp
|
||||
// Purpose: XRC resources
|
||||
// Purpose: XML resources
|
||||
// Author: Vaclav Slavik
|
||||
// Created: 2000/03/05
|
||||
// RCS-ID: $Id$
|
||||
@@ -310,7 +310,7 @@ void wxXmlResource::UpdateResources()
|
||||
}
|
||||
else if (m_data[i].Doc->GetRoot()->GetName() != wxT("resource"))
|
||||
{
|
||||
wxLogError(_("Invalid XRC resource '%s': doesn't have root node 'resource'."), m_data[i].File.c_str());
|
||||
wxLogError(_("Invalid XML resource '%s': doesn't have root node 'resource'."), m_data[i].File.c_str());
|
||||
wxDELETE(m_data[i].Doc);
|
||||
}
|
||||
else
|
||||
@@ -368,7 +368,7 @@ wxXmlNode *wxXmlResource::FindResource(const wxString& name, const wxString& cla
|
||||
}
|
||||
}
|
||||
|
||||
wxLogError(_("XRC resource '%s' (class '%s') not found!"),
|
||||
wxLogError(_("XML resource '%s' (class '%s') not found!"),
|
||||
name.c_str(), classname.c_str());
|
||||
return NULL;
|
||||
}
|
||||
@@ -499,7 +499,7 @@ wxString wxXmlResourceHandler::GetText(const wxString& param)
|
||||
const wxChar *dt;
|
||||
wxChar amp_char;
|
||||
|
||||
// VS: First version of XRC resources used $ instead of & (which is illegal in XML),
|
||||
// VS: First version of XML resources used $ instead of & (which is illegal in XML),
|
||||
// but later I realized that '_' fits this purpose much better (because
|
||||
// &File means "File with F underlined").
|
||||
if (m_resource->CompareVersion(2,3,0,1) < 0)
|
||||
@@ -601,7 +601,7 @@ wxColour wxXmlResourceHandler::GetColour(const wxString& param)
|
||||
if (v.Length() != 7 || v[0u] != wxT('#') ||
|
||||
wxSscanf(v.c_str(), wxT("#%lX"), &tmp) != 1)
|
||||
{
|
||||
wxLogError(_("XRC resource: Incorrect colour specification '%s' for property '%s'."),
|
||||
wxLogError(_("XML resource: Incorrect colour specification '%s' for property '%s'."),
|
||||
v.c_str(), param.c_str());
|
||||
return wxNullColour;
|
||||
}
|
||||
@@ -621,7 +621,7 @@ wxBitmap wxXmlResourceHandler::GetBitmap(const wxString& param, wxSize size)
|
||||
wxFSFile *fsfile = GetCurFileSystem().OpenFile(name);
|
||||
if (fsfile == NULL)
|
||||
{
|
||||
wxLogError(_("XRC resource: Cannot create bitmap from '%s'."), param.c_str());
|
||||
wxLogError(_("XML resource: Cannot create bitmap from '%s'."), param.c_str());
|
||||
return wxNullBitmap;
|
||||
}
|
||||
wxImage img(*(fsfile->GetStream()));
|
||||
@@ -631,7 +631,7 @@ wxBitmap wxXmlResourceHandler::GetBitmap(const wxString& param, wxSize size)
|
||||
#endif
|
||||
if (!img.Ok())
|
||||
{
|
||||
wxLogError(_("XRC resource: Cannot create bitmap from '%s'."), param.c_str());
|
||||
wxLogError(_("XML resource: Cannot create bitmap from '%s'."), param.c_str());
|
||||
return wxNullBitmap;
|
||||
}
|
||||
if (!(size == wxDefaultSize)) img.Rescale(size.x, size.y);
|
||||
|
||||
19
debian/changelog
vendored
19
debian/changelog
vendored
@@ -22,25 +22,6 @@ wxwindows2.3 (2.3.0) unstable; urgency=low
|
||||
|
||||
-- Ron Lee <ron@debian.org> Sat, 27 Jan 2001 01:51:24 -0800
|
||||
|
||||
wxwindows2.2 (2.2.8.4) unstable; urgency=low
|
||||
|
||||
* Put the (modified) size_t == ulong kludge back into sndwav.cpp
|
||||
it's still needed until wxDataOutputStream is made 64 bit
|
||||
friendly, which may not happen for 2.2 since it will probably
|
||||
not be binary compatible.
|
||||
* caps a memory leak in the jpeg handler.
|
||||
|
||||
-- Ron Lee <ron@debian.org> Sun, 25 Nov 2001 11:53:59 -0800
|
||||
|
||||
wxwindows2.2 (2.2.8.3) unstable; urgency=low
|
||||
|
||||
* Backported size_t test from 2.3 tree, removes the need for
|
||||
specific tests for various 64 bit platforms including now
|
||||
S/390 (thanks to Gerhard Tonn for the report).
|
||||
Closes: #120768
|
||||
|
||||
-- Ron Lee <ron@debian.org> Fri, 23 Nov 2001 20:53:49 -0800
|
||||
|
||||
wxwindows2.2 (2.2.8.2) unstable; urgency=low
|
||||
|
||||
* python-dev doesn't get me python? More bytes in Build-Dep then
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
bombsM5.mcp
|
||||
bombsM*Data
|
||||
BombsM*Data
|
||||
*Classic?Debug*
|
||||
*Classic?Release*
|
||||
*Carbon?Debug*
|
||||
|
||||
BIN
demos/bombs/BombsM5.mcp
Normal file
BIN
demos/bombs/BombsM5.mcp
Normal file
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@@ -13,7 +13,7 @@
|
||||
# under Linux.
|
||||
#
|
||||
|
||||
CXX = $(shell wx-config --cxx)
|
||||
CC = gcc
|
||||
|
||||
PROGRAM = bombs
|
||||
|
||||
@@ -24,12 +24,12 @@ OBJECTS = $(PROGRAM).o game.o bombs1.o
|
||||
.SUFFIXES: .o .cpp
|
||||
|
||||
.cpp.o :
|
||||
$(CXX) -c `wx-config --cxxflags` -o $@ $<
|
||||
$(CC) -c `wx-config --cflags` -o $@ $<
|
||||
|
||||
all: $(PROGRAM)
|
||||
|
||||
$(PROGRAM): $(OBJECTS)
|
||||
$(CXX) -o $(PROGRAM) $(OBJECTS) `wx-config --libs`
|
||||
$(CC) -o $(PROGRAM) $(OBJECTS) `wx-config --libs`
|
||||
|
||||
clean:
|
||||
rm -f *.o $(PROGRAM)
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
dbbrowseM5.mcp
|
||||
dbbrowseM*Data
|
||||
DbbrowseM*Data
|
||||
*Classic?Debug*
|
||||
*Classic?Release*
|
||||
*Carbon?Debug*
|
||||
|
||||
BIN
demos/dbbrowse/DbbrowseM5.mcp
Normal file
BIN
demos/dbbrowse/DbbrowseM5.mcp
Normal file
Binary file not shown.
29
demos/dbbrowse/dbbrowse.dsw
Normal file
29
demos/dbbrowse/dbbrowse.dsw
Normal file
@@ -0,0 +1,29 @@
|
||||
Microsoft Developer Studio Workspace File, Format Version 6.00
|
||||
# WARNUNG: DIESE ARBEITSBEREICHSDATEI DARF NICHT BEARBEITET ODER GEL<45>SCHT WERDEN!
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "dbbrowse"=".\dbbrowse.dsp" - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Global:
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<3>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,15 +0,0 @@
|
||||
|
||||
# Top dir of wxWindows
|
||||
top_builddir = /gtm/bart/wxGTK
|
||||
|
||||
PROGRAM=dbbrowser_gtk
|
||||
|
||||
|
||||
OBJECTS= dbbrowse.o doc.o pgmctrl.o tabpgwin.o\
|
||||
browsedb.o dbtree.o dbgrid.o dlguser.o
|
||||
|
||||
|
||||
|
||||
|
||||
include $(top_builddir)/src/makeprog.env
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
fortyM5.mcp
|
||||
fortyM*Data
|
||||
FortyM*Data
|
||||
*Classic?Debug*
|
||||
*Classic?Release*
|
||||
*Carbon?Debug*
|
||||
|
||||
BIN
demos/forty/FortyM5.mcp
Normal file
BIN
demos/forty/FortyM5.mcp
Normal file
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user