Compare commits
33 Commits
TESTED
...
wxGTK_2_1_
Author | SHA1 | Date | |
---|---|---|---|
|
76fcde59c4 | ||
|
eff869aad2 | ||
|
dcda1c71b1 | ||
|
9707f3fddd | ||
|
6ed6d1239a | ||
|
d30ab05b0d | ||
|
ae550e6b64 | ||
|
e8fd750b53 | ||
|
47f12f58db | ||
|
a925b00678 | ||
|
154f22b3fa | ||
|
3b0c8308f1 | ||
|
2f5292c3df | ||
|
3c0df30065 | ||
|
a5fc62a112 | ||
|
19d89516dd | ||
|
fe26d444bb | ||
|
0d0837053c | ||
|
ea9144a3bc | ||
|
270c23f7bd | ||
|
e041ce574b | ||
|
18f4ad8673 | ||
|
e66ad5c68d | ||
|
ac99a98ff0 | ||
|
e3baecd7d6 | ||
|
6adaedf0fc | ||
|
5e84fc5a82 | ||
|
8a28f119c8 | ||
|
4120ef2b38 | ||
|
085078a1c4 | ||
|
5d4b632ba3 | ||
|
57c4d796c5 | ||
|
aa33452c94 |
@@ -566,7 +566,8 @@ MSW_HEADERS = \
|
||||
msw/xpmhand.h
|
||||
|
||||
UNIX_HEADERS = \
|
||||
unix/execute.h
|
||||
unix/execute.h \
|
||||
unix/fontutil.h
|
||||
|
||||
GENERIC_HEADERS = \
|
||||
generic/caret.h \
|
||||
|
@@ -44,6 +44,10 @@ docs/changes.txt
|
||||
docs/upgrade.txt
|
||||
docs/todo.txt
|
||||
docs/licence.txt
|
||||
docs/licendoc.txt
|
||||
docs/preamble.txt
|
||||
docs/gpl.txt
|
||||
docs/lgpl.txt
|
||||
docs/symbols.txt
|
||||
docs/bugs.txt
|
||||
docs/*.htm
|
||||
@@ -663,6 +667,8 @@ samples/internat/*.bmp
|
||||
samples/internat/*.mo
|
||||
samples/internat/fr/*.mo
|
||||
samples/internat/fr/*.po
|
||||
samples/internat/de/*.mo
|
||||
samples/internat/de/*.po
|
||||
|
||||
samples/checklst/*.cpp
|
||||
samples/checklst/*.h
|
||||
@@ -729,6 +735,10 @@ samples/image/*.bmp
|
||||
samples/image/*.xpm
|
||||
samples/image/*.xbm
|
||||
samples/image/*.png
|
||||
samples/image/*.pnm
|
||||
samples/image/*.pcx
|
||||
samples/image/*.jpg
|
||||
samples/image/*.gif
|
||||
samples/image/*.ico
|
||||
samples/image/*.txt
|
||||
|
||||
@@ -1024,15 +1034,3 @@ samples/menu/*.png
|
||||
samples/menu/*.ico
|
||||
samples/menu/*.txt
|
||||
|
||||
samples/font/*.cpp
|
||||
samples/font/*.h
|
||||
samples/font/makefile*
|
||||
samples/font/*.rc
|
||||
samples/font/*.def
|
||||
samples/font/*.bmp
|
||||
samples/font/*.xpm
|
||||
samples/font/*.xbm
|
||||
samples/font/*.png
|
||||
samples/font/*.ico
|
||||
samples/font/*.txt
|
||||
|
||||
|
@@ -32,53 +32,6 @@ src/iodbc/build
|
||||
src/iodbc/Changes.log
|
||||
src/iodbc/postgres/*.h
|
||||
|
||||
setup/*.in
|
||||
setup/*.hin
|
||||
|
||||
setup/general/createall
|
||||
setup/general/jointar
|
||||
setup/general/makeapp
|
||||
setup/general/makedirs
|
||||
setup/general/makedoc
|
||||
setup/general/mygrep
|
||||
setup/general/needed
|
||||
|
||||
setup/rules/bin
|
||||
setup/rules/bin2
|
||||
setup/rules/doc
|
||||
setup/rules/gbin
|
||||
setup/rules/gbin2
|
||||
setup/rules/glib
|
||||
setup/rules/glibbin
|
||||
setup/rules/glibgbin
|
||||
setup/rules/gslib
|
||||
setup/rules/lib
|
||||
setup/rules/libbin
|
||||
setup/rules/libgbin
|
||||
|
||||
setup/rules/generic/bin1
|
||||
setup/rules/generic/bin1gen
|
||||
setup/rules/generic/bin2
|
||||
setup/rules/generic/bin2gen
|
||||
setup/rules/generic/depend
|
||||
setup/rules/generic/globals
|
||||
setup/rules/generic/lib
|
||||
setup/rules/generic/needed
|
||||
setup/rules/generic/obj
|
||||
setup/rules/generic/slib
|
||||
setup/rules/generic/sobj
|
||||
|
||||
setup/shared/sharedAIX
|
||||
setup/shared/sharedBsd
|
||||
setup/shared/sharedDgux
|
||||
setup/shared/sharedHpux
|
||||
setup/shared/sharedIrix
|
||||
setup/shared/sharedLinux
|
||||
setup/shared/sharedOSF
|
||||
setup/shared/sharedSolaris2
|
||||
setup/shared/sharedSunos4
|
||||
setup/shared/sharedSysV
|
||||
|
||||
misc/afm/*.afm
|
||||
misc/gs_afm/*.afm
|
||||
|
||||
|
@@ -34,6 +34,7 @@ samples/printing/Makefile.in
|
||||
samples/proplist/Makefile.in
|
||||
samples/sashtest/Makefile.in
|
||||
samples/scroll/Makefile.in
|
||||
samples/scrollsub/Makefile.in
|
||||
samples/splitter/Makefile.in
|
||||
samples/text/Makefile.in
|
||||
samples/thread/Makefile.in
|
||||
@@ -45,35 +46,11 @@ samples/wizard/Makefile.in
|
||||
samples/wxpoem/Makefile.in
|
||||
samples/wxsocket/Makefile.in
|
||||
samples/nettest/Makefile.in
|
||||
samples/scrollsub/Makefile.in
|
||||
samples/font/Makefile.in
|
||||
samples/menu/Makefile.in
|
||||
samples/console/Makefile.in
|
||||
utils/glcanvas/motif/Makefile.in
|
||||
utils/Makefile.in
|
||||
utils/wxMMedia2/Makefile.in
|
||||
utils/wxMMedia2/lib/Makefile.in
|
||||
utils/wxMMedia2/sample/Makefile.in
|
||||
include/wx/msw/Makefile.am
|
||||
include/wx/msw/ctl3d/Makefile.am
|
||||
include/wx/msw/gnuwin32/Makefile.am
|
||||
misc/Makefile.am
|
||||
misc/afm/Makefile.am
|
||||
misc/gs_afm/Makefile.am
|
||||
samples/animatn/Makefile.am
|
||||
samples/db/Makefile.am
|
||||
samples/forty/Makefile.am
|
||||
samples/fractal/Makefile.am
|
||||
samples/grid/Makefile.am
|
||||
samples/help/Makefile.am
|
||||
samples/internat/Makefile.am
|
||||
samples/joytest/Makefile.am
|
||||
samples/memcheck/Makefile.am
|
||||
samples/mfc/Makefile.am
|
||||
samples/nativdlg/Makefile.am
|
||||
samples/oleauto/Makefile.am
|
||||
samples/ownerdrw/Makefile.am
|
||||
samples/png/Makefile.am
|
||||
samples/regtest/Makefile.am
|
||||
samples/resource/Makefile.am
|
||||
samples/richedit/Makefile.am
|
||||
samples/tab/Makefile.am
|
||||
samples/taskbar/Makefile.am
|
||||
src/msw/Makefile.am
|
||||
|
@@ -30,59 +30,9 @@ include/wx/install-sh
|
||||
|
||||
docs/motif/*.txt
|
||||
docs/motif/makewxmotif
|
||||
docs/motif2/*.txt
|
||||
docs/motif2/COPYING.LIB
|
||||
|
||||
lib/dummy
|
||||
|
||||
misc/afm/*.afm
|
||||
misc/gs_afm/*.afm
|
||||
|
||||
setup/*.in
|
||||
setup/*.hin
|
||||
|
||||
setup/general/createall
|
||||
setup/general/jointar
|
||||
setup/general/makeapp
|
||||
setup/general/makedirs
|
||||
setup/general/makedoc
|
||||
setup/general/mygrep
|
||||
setup/general/needed
|
||||
|
||||
setup/rules/bin
|
||||
setup/rules/bin2
|
||||
setup/rules/doc
|
||||
setup/rules/gbin
|
||||
setup/rules/gbin2
|
||||
setup/rules/glib
|
||||
setup/rules/glibbin
|
||||
setup/rules/glibgbin
|
||||
setup/rules/gslib
|
||||
setup/rules/lib
|
||||
setup/rules/libbin
|
||||
setup/rules/libgbin
|
||||
|
||||
setup/rules/generic/bin1
|
||||
setup/rules/generic/bin1gen
|
||||
setup/rules/generic/bin2
|
||||
setup/rules/generic/bin2gen
|
||||
setup/rules/generic/depend
|
||||
setup/rules/generic/globals
|
||||
setup/rules/generic/lib
|
||||
setup/rules/generic/needed
|
||||
setup/rules/generic/obj
|
||||
setup/rules/generic/slib
|
||||
setup/rules/generic/sobj
|
||||
|
||||
setup/shared/sharedAIX
|
||||
setup/shared/sharedBsd
|
||||
setup/shared/sharedDgux
|
||||
setup/shared/sharedHpux
|
||||
setup/shared/sharedIrix
|
||||
setup/shared/sharedLinux
|
||||
setup/shared/sharedOSF
|
||||
setup/shared/sharedSolaris2
|
||||
setup/shared/sharedSunos4
|
||||
setup/shared/sharedSysV
|
||||
|
||||
|
||||
|
@@ -16,7 +16,7 @@
|
||||
#! native wxDirDlg can't be compiled due to GnuWin32/OLE limitations,
|
||||
#! so take the generic version
|
||||
if ( $wxGeneric{$file} =~ /\b(PS|G|U|16)\b/ ) {
|
||||
next unless $file =~ /^dirdlgg\./;
|
||||
next #! unless $file =~ /^dirdlgg\./;
|
||||
}
|
||||
|
||||
$file =~ s/cp?p?$/\$(OBJSUFF)/;
|
||||
@@ -109,6 +109,18 @@ JPEGLIB = $(WXDIR)/lib/libjpeg.a
|
||||
|
||||
DOCDIR = $(WXDIR)\docs
|
||||
|
||||
# Only use the WIN32 wxDirDialog if we have a recent
|
||||
# version of Mingw32
|
||||
ifeq ($(MINGW32),1)
|
||||
ifeq ($(MINGW32VERSION),2.95)
|
||||
DIRDLGOBJ = $(MSWDIR)/dirdlg.$(OBJSUFF)
|
||||
else
|
||||
DIRDLGOBJ = $(GENDIR)/dirdlgg.$(OBJSUFF)
|
||||
endif
|
||||
else
|
||||
DIRDLGOBJ = $(GENDIR)/dirdlgg.$(OBJSUFF)
|
||||
endif
|
||||
|
||||
GENERICOBJS = \
|
||||
#$ ExpandList("WXGENERICOBJS");
|
||||
|
||||
@@ -219,16 +231,14 @@ XPMOBJECTS = $(XPMDIR)/crbuffri.o\
|
||||
$(XPMDIR)/simx.o $(XPMDIR)/wrffrdat.o\
|
||||
$(XPMDIR)/wrffrp.o $(XPMDIR)/wrffri.o
|
||||
|
||||
#OBJECTS = $(MSWOBJS) $(COMMONOBJS) $(GENERICOBJS) $(HTMLOBJS)
|
||||
|
||||
ifeq ($(MINGW32),1)
|
||||
ifeq ($(MINGW32VERSION),2.95)
|
||||
OBJECTS = $(MSWOBJS) $(COMMONOBJS) $(GENERICOBJS) $(HTMLOBJS) $(ADVANCEDOBJS) # $(XPMOBJECTS)
|
||||
OBJECTS = $(MSWOBJS) $(COMMONOBJS) $(GENERICOBJS) $(HTMLOBJS) $(DIRDLGOBJ) $(ADVANCEDOBJS) # $(XPMOBJECTS)
|
||||
else
|
||||
OBJECTS = $(MSWOBJS) $(COMMONOBJS) $(GENERICOBJS) $(HTMLOBJS) # $(XPMOBJECTS)
|
||||
OBJECTS = $(MSWOBJS) $(COMMONOBJS) $(GENERICOBJS) $(HTMLOBJS) $(DIRDLGOBJ) # $(XPMOBJECTS)
|
||||
endif
|
||||
else
|
||||
OBJECTS = $(MSWOBJS) $(COMMONOBJS) $(GENERICOBJS) $(HTMLOBJS) # $(XPMOBJECTS)
|
||||
OBJECTS = $(MSWOBJS) $(COMMONOBJS) $(GENERICOBJS) $(HTMLOBJS) $(DIRDLGOBJ) # $(XPMOBJECTS)
|
||||
endif
|
||||
|
||||
all: $(OBJECTS) $(WXLIB) $(ZLIBLIB) $(JPEGLIB) $(PNGLIB)
|
||||
|
@@ -43,7 +43,7 @@
|
||||
#! these files don't compile
|
||||
next if $file =~ /^pnghand\./;
|
||||
|
||||
next if $wxGeneric{$file} =~ /\b16\b/;
|
||||
#! next if $wxGeneric{$file} =~ /\b16\b/;
|
||||
|
||||
my $isOleObj = $wxMSW{$file} =~ /\bO\b/;
|
||||
my $isCFile = $file =~ /\.c$/;
|
||||
|
@@ -50,11 +50,6 @@ item: Create Shortcut
|
||||
Destination=%GROUP%\Tex2RTF Help.lnk
|
||||
Working Directory=%MAINDIR%
|
||||
end
|
||||
item: Create Shortcut
|
||||
Source=%MAINDIR%\docs\winhelp\wxtree.hlp
|
||||
Destination=%GROUP%\wxTree Help.lnk
|
||||
Working Directory=%MAINDIR%
|
||||
end
|
||||
item: Create Shortcut
|
||||
Source=%MAINDIR%\docs\html\index.htm
|
||||
Destination=%GROUP%\HTML Docs Index.lnk
|
||||
@@ -70,8 +65,30 @@ item: Create Shortcut
|
||||
Destination=%GROUP%\Dialog Editor.lnk
|
||||
Working Directory=%MAINDIR%
|
||||
end
|
||||
item: Create Shortcut
|
||||
Source=%MAINDIR%\docs\release.txt
|
||||
Destination=%GROUP%\Release Details.lnk
|
||||
Working Directory=%MAINDIR%
|
||||
end
|
||||
item: Create Shortcut
|
||||
Source=%MAINDIR%\docs\winhelp\wxtree.hlp
|
||||
Destination=%GROUP%\wxTreeLayout Help.lnk
|
||||
Working Directory=%MAINDIR%
|
||||
end
|
||||
item: Else Statement
|
||||
end
|
||||
item: Add ProgMan Icon
|
||||
Group=%GROUP%
|
||||
Icon Name=wxTreeLayout Help
|
||||
Command Line=%MAINDIR%\docs\winhelp\wxtree.hlp
|
||||
Default Directory=%MAINDIR%
|
||||
end
|
||||
item: Add ProgMan Icon
|
||||
Group=%GROUP%
|
||||
Icon Name=Release Details
|
||||
Command Line=%MAINDIR%\docs\release.txt
|
||||
Default Directory=%MAINDIR%
|
||||
end
|
||||
item: Add ProgMan Icon
|
||||
Group=%GROUP%
|
||||
Icon Name=Dialog Editor
|
||||
@@ -126,12 +143,6 @@ item: Add ProgMan Icon
|
||||
Command Line=%MAINDIR%\docs\winhelp\tex2rtf.hlp
|
||||
Default Directory=%MAINDIR%
|
||||
end
|
||||
item: Add ProgMan Icon
|
||||
Group=%GROUP%
|
||||
Icon Name=wxTree Help
|
||||
Command Line=%MAINDIR%\docs\winhelp\wxtree.hlp
|
||||
Default Directory=%MAINDIR%
|
||||
end
|
||||
item: End Block
|
||||
end
|
||||
item: Self-Register OCXs/DLLs
|
||||
|
@@ -1,7 +1,7 @@
|
||||
Document Type: WSE
|
||||
item: Global
|
||||
Version=5.0
|
||||
Title=wxWindows 2.1.10 Installation
|
||||
Title=wxWindows 2.1.11 Installation
|
||||
Flags=00000100
|
||||
Split=1420
|
||||
Languages=65 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
|
||||
@@ -47,7 +47,7 @@ item: End Block
|
||||
end
|
||||
item: Set Variable
|
||||
Variable=APPTITLE
|
||||
Value=wxWindows 2.1.10
|
||||
Value=wxWindows 2.1.11
|
||||
end
|
||||
item: Set Variable
|
||||
Variable=GROUP
|
||||
|
@@ -12,6 +12,7 @@ if "%dest" == "" goto usage
|
||||
if "%1" == "-help" goto usage
|
||||
if "%1" == "--help" goto usage
|
||||
if "%1" == "/?" goto usage
|
||||
if "%1" == "wiseonly" goto dounzip
|
||||
if "%1" == "wise" set wise=1
|
||||
echo About to archive an external wxWindows distribution:
|
||||
echo From %src
|
||||
@@ -20,8 +21,6 @@ if "%wise" == "1" echo with WISE setup creation.
|
||||
echo CTRL-C if this is not correct.
|
||||
pause
|
||||
|
||||
rem goto dounzip
|
||||
|
||||
erase %dest\wx*.zip
|
||||
erase %dest\glcanvas.zip
|
||||
erase %dest\ogl3.zip
|
||||
@@ -79,16 +78,17 @@ copy %src\docs\msw\install.txt %dest\install_msw.txt
|
||||
copy %src\docs\motif\install.txt %dest\install_motif.txt
|
||||
copy %src\docs\gtk\install.txt %dest\install_gtk.txt
|
||||
copy %src\docs\readme.txt %dest
|
||||
copy %src\docs\release.txt %dest
|
||||
copy %src\docs\motif\makewxmotif %dest
|
||||
copy %src\docs\gtk\makewxgtk %dest
|
||||
|
||||
Rem Skip WISE setup if wise is 0.
|
||||
if "%wise" == "0" goto end
|
||||
|
||||
:dounzip
|
||||
|
||||
cd %dest
|
||||
|
||||
Rem Skip WISE setup if wise is 0.
|
||||
if "%wise" == "0" goto end
|
||||
|
||||
rem Unzip the Windows files into 'wx'
|
||||
mkdir %dest\wx
|
||||
|
||||
@@ -134,14 +134,34 @@ Rem ren %WXWIN\deliver\setup.EXE %WXWIN\deliver\setup_%version%.exe
|
||||
|
||||
cd %dest
|
||||
|
||||
Rem tidy up capitalisation of filenames
|
||||
ren setup.EXE s
|
||||
ren s setup.exe
|
||||
|
||||
ren setup.w02 s
|
||||
ren s setup.w02
|
||||
|
||||
ren setup.w03 s
|
||||
ren s setup.w03
|
||||
|
||||
ren setup.w04 s
|
||||
ren s setup.w04
|
||||
|
||||
ren setup.w05 s
|
||||
ren s setup.w05
|
||||
|
||||
ren setup.w06 s
|
||||
ren s setup.w06
|
||||
|
||||
echo wxWindows archived.
|
||||
|
||||
goto end
|
||||
|
||||
:usage
|
||||
echo DOS wxWindows distribution. Zips up all GTK/Motif/MSW/doc files,
|
||||
echo and optionally makes a deliver\wx directory and a setup.exe
|
||||
echo if you specify 'wise'.
|
||||
echo if you specify 'wise' (skipping the zipping if you use 'wiseonly').
|
||||
echo.
|
||||
echo Usage: zipdist [wise]
|
||||
echo Usage: zipdist [wise | wiseonly]
|
||||
|
||||
:end
|
||||
|
@@ -3,9 +3,9 @@
|
||||
# and makes wxGTK.
|
||||
# Call from top-level wxWindows directory.
|
||||
# Note that this uses standard (but commonly-used) configure options;
|
||||
# if you're feeling brave, you may wish to compile with threads.
|
||||
# if you're feeling braven, you may wish to compile with threads.
|
||||
# -- Julian Smart
|
||||
chmod a+x configure config.sub config.guess setup/general/* setup/shared/*
|
||||
./configure --with-shared --with-gtk --with-debug_flag --with-debug_info --without-threads
|
||||
make makefiles
|
||||
rm -f *.cache
|
||||
chmod a+x configure config.sub config.guess
|
||||
./configure --disable-shared --with-gtk --with-debug_flag --with-debug_info --enable-debug --without-threads --without-sockets -without-odbc -without-libjpeg
|
||||
make
|
||||
|
@@ -202,6 +202,7 @@
|
||||
\input splitter.tex
|
||||
\input statbmp.tex
|
||||
\input statbox.tex
|
||||
\input statline.tex
|
||||
\input stattext.tex
|
||||
\input statusbr.tex
|
||||
\input strmbase.tex
|
||||
|
@@ -3,7 +3,7 @@
|
||||
A class for performing various debugging and memory tracing
|
||||
operations. Full functionality (such as printing out objects
|
||||
currently allocated) is only present in a debugging build of wxWindows,
|
||||
i.e. if the DEBUG symbol is defined and non-zero. wxDebugContext
|
||||
i.e. if the \_\_WXDEBUG\_\_ symbol is defined. wxDebugContext
|
||||
and related functions and macros can be compiled out by setting
|
||||
wxUSE\_DEBUG\_CONTEXT to 0 is setup.h
|
||||
|
||||
@@ -180,7 +180,7 @@ Sets the debug mode on or off. If debug mode is on, the wxObject new and delete
|
||||
operators store or use information about memory allocation. Otherwise,
|
||||
a straight malloc and free will be performed by these operators.
|
||||
|
||||
By default, debug mode is on if DEBUG is non-zero. If the application
|
||||
By default, debug mode is on if \_\_WXDEBUG\_\_ is defined. If the application
|
||||
uses this function, it should make sure that all object memory allocated
|
||||
is deallocated with the same value of debug mode. Otherwise, the
|
||||
delete operator might try to look for memory information that does not
|
||||
|
@@ -13,18 +13,33 @@ when it starts, and immediately call {\bf Initialize}\rtfsp
|
||||
to associate a filename with it. The help viewer will only get run, however,
|
||||
just before the first call to display something.
|
||||
|
||||
Although all help controller classes actually derive from wxHelpControllerBase and have
|
||||
names of the form wxXXXHelpController, the
|
||||
appropriate class is aliased to the name wxHelpController for each platform.
|
||||
Most help controller classes actually derive from wxHelpControllerBase and have
|
||||
names of the form wxXXXHelpController or wxHelpControllerXXX. An
|
||||
appropriate class is aliased to the name wxHelpController for each platform, as follows:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item On Windows, wxWinHelpController is used.
|
||||
\item On all other platforms, wxHelpControllerHtml is used if wxHTML is
|
||||
compiled into wxWindows; otherwise wxExtHelpController is used (for invoking an external
|
||||
browser).
|
||||
\end{itemize}
|
||||
|
||||
The remaining help controller classess need to be named
|
||||
explicitly by an application that wishes to make use of them.
|
||||
|
||||
There are currently the following help controller classes defined:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item wxWinHelpController, for controlling Windows Help.
|
||||
\item wxExtHelpController, for controlling external browsers under Unix.
|
||||
The default browser is Netscape Navigator.
|
||||
\item wxHelpControllerHtml, using wxHTML to display help
|
||||
\item wxXLPHelpController, for controlling wxHelp (from wxWindows 1).
|
||||
The default browser is Netscape Navigator. The 'help' sample shows its use.
|
||||
\item wxHelpControllerHtml, using \helpref{wxHTML}{wxhtml} to display help. The API for this class
|
||||
is reasonably close to the wxWindows help controller API; see {\tt wx/helpwxht.h} for
|
||||
details of use.
|
||||
\item \helpref{wxHtmlHelpController}{wxhtmlhelpcontroller}, a more sophisticated help controller using \helpref{wxHTML}{wxhtml}, in
|
||||
a similar style to the Windows HTML Help viewer and using some of the same files.
|
||||
The API is not the same as the standard API, which is why it is documented separately.
|
||||
\item wxXLPHelpController, for controlling wxHelp (from wxWindows 1). Obsolete.
|
||||
\end{itemize}
|
||||
|
||||
\wxheading{Derived from}
|
||||
@@ -41,6 +56,10 @@ wxHelpControllerBase\\
|
||||
<wx/generic/helpwxht.h> (wxHTML based help controller)
|
||||
<wx/generic/helpxlp.h> (wxHelp controller)
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{wxHtmlHelpController}{wxhtmlhelpcontroller}, \helpref{wxHTML}{wxhtml}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxHelpController::wxHelpController}
|
||||
|
@@ -31,7 +31,7 @@
|
||||
}}
|
||||
\winhelpignore{\author{Julian Smart, Robert Roebling, Vadim Zeitlin,
|
||||
Robin Dunn, et al}
|
||||
\date{November 1st 1999}
|
||||
\date{November 8th 1999}
|
||||
}
|
||||
\makeindex
|
||||
\begin{document}
|
||||
@@ -86,9 +86,9 @@ Robin Dunn, et al}
|
||||
\setfooter{\thepage}{}{}{}{}{\thepage}%
|
||||
|
||||
\begin{center}
|
||||
Copyright \copyright{} 1999 Julian Smart, Robert Roebling, Vadim Zeitlin and other
|
||||
(c) 1999 Julian Smart, Robert Roebling, Vadim Zeitlin and other
|
||||
members of the wxWindows team\\
|
||||
Portions \copyright{} 1996 Artificial Intelligence Applications Institute\\
|
||||
Portions (c) 1996 Artificial Intelligence Applications Institute\\
|
||||
\end{center}
|
||||
|
||||
Please see the wxWindows licence files (preamble.txt, lgpl.txt, gpl.txt, licence.txt,
|
||||
|
@@ -65,8 +65,8 @@ Currently wxWindows does not define Dump for derived classes, but
|
||||
programmers may wish to use it for their own applications. Be sure to
|
||||
call the Dump member of the class's base class to allow all information to be dumped.
|
||||
|
||||
The implementation of this function just writes the class name of the object.
|
||||
If DEBUG is undefined or zero, the implementation is empty.
|
||||
The implementation of this function just writes the class name of the object
|
||||
in debug build (\_\_WXDEBUG\_\_ defined), otherwise it does nothing.
|
||||
|
||||
\membersection{wxObject::GetClassInfo}\label{wxobjectgetclassinfo}
|
||||
|
||||
@@ -164,7 +164,7 @@ The {\bf m\_refData} member is set to NULL.
|
||||
\func{void *}{new}{\param{size\_t }{size}, \param{const wxString\& }{filename = NULL}, \param{int}{ lineNum = 0}}
|
||||
|
||||
The {\it new} operator is defined for debugging versions of the library only, when
|
||||
the identifier DEBUG is defined and is more than zero. It takes over memory allocation, allowing
|
||||
the identifier \_\_WXDEBUG\_\_ is defined. It takes over memory allocation, allowing
|
||||
wxDebugContext operations.
|
||||
|
||||
\membersection{wxObject::operator delete}\label{wxobjectdelete}
|
||||
@@ -172,7 +172,7 @@ wxDebugContext operations.
|
||||
\func{void}{delete}{\param{void }{buf}}
|
||||
|
||||
The {\it delete} operator is defined for debugging versions of the library only, when
|
||||
the identifier DEBUG is defined and is more than zero. It takes over memory deallocation, allowing
|
||||
the identifier \_\_WXDEBUG\_\_ is defined. It takes over memory deallocation, allowing
|
||||
wxDebugContext operations.
|
||||
|
||||
\section{\class{wxObjectRefData}}\label{wxobjectrefdata}
|
||||
|
@@ -78,7 +78,7 @@ Returns TRUE if the line is vertical, FALSE if horizontal.
|
||||
|
||||
\func{int}{GetDefaultSize}{\void}
|
||||
|
||||
This static function returns the size which will be given to the "lesser"
|
||||
This static function returns the size which will be given to the smaller
|
||||
dimension of the static line, i.e. its height for a horizontal line or its
|
||||
width for a vertical one.
|
||||
|
||||
|
@@ -113,7 +113,7 @@ to use the GUI portions.
|
||||
There are quite a few other GUI modules available for Python, some in
|
||||
active use, some that havn't been updated for ages. Most are simple
|
||||
wrappers around some C or C++ toolkit or another, and most are not
|
||||
cross-platform compatible. See \urlref{this link}{http://www.python.org/download/Contributed.html\#Graphics}
|
||||
cross-platform compatible. See \urlref{this link}{http://www.python.org/download/Contributed.html\#Graphics}
|
||||
for a listing of a few of them.
|
||||
|
||||
%----------------------------------------------------------------------
|
||||
@@ -159,16 +159,13 @@ You can use whatever flags you want, but I know these work.
|
||||
|
||||
For Win32 systems I use Visual C++ 6.0, but 5.0 should work also. The
|
||||
build utility currently does not support any other Win32 compilers.
|
||||
|
||||
\item At this point you may want to make an alias or symlink, script,
|
||||
batch file, whatever on the PATH that invokes \tt{\$(WXWIN)/utils/wxPython/distrib/build.py} to
|
||||
help simplify matters somewhat. For example, on my Win32 system I have a file named
|
||||
\tt{build}.bat in a directory on the PATH that contains:
|
||||
|
||||
\tt{python \%WXWIN/utils/wxPython/distrib/build.py \%1 \%2 \%3 \%4 \%5 \%6}
|
||||
|
||||
\item Change into the \tt{\$(WXWIN)/utils/wxPython/src} directory.
|
||||
|
||||
\item Type "\tt{build -b}" to build wxPython and "\tt{build -i}" to
|
||||
install it, or "\tt{build -bi}" to do both steps at once.
|
||||
|
||||
@@ -178,13 +175,10 @@ If you have troubles building or you want it built or installed in
|
||||
a different way, take a look at the docstring in build.py. You are
|
||||
able to to override many configuration options in a file named
|
||||
build.local.
|
||||
|
||||
\item To build and install the add-on modules, change to the appropriate
|
||||
directory under \tt{\$(WXWIN)/utils/wxPython/modules} and run the build
|
||||
utility again.
|
||||
|
||||
\item Change to the \tt{\$(WXWIN)/utils/wxPython/demo} directory.
|
||||
|
||||
\item Try executing the demo program. For example:
|
||||
|
||||
\tt{python demo.py}
|
||||
@@ -295,13 +289,12 @@ it by issuing this command:
|
||||
|
||||
\wxheading{Things to notice}
|
||||
|
||||
\begin{enumerate}\itemsep=0pt
|
||||
\begin{enumerate}\itemsep=11pt
|
||||
\item At line 2 the wxPython classes, constants, and etc. are imported
|
||||
into the current module's namespace. If you prefer to reduce
|
||||
namespace pollution you can use "\tt{from wxPython import wx}" and
|
||||
then access all the wxPython identifiers through the wx module, for
|
||||
example, "\tt{wx.wxFrame}".
|
||||
|
||||
\item At line 13 the frame's sizing and moving events are connected to
|
||||
methods of the class. These helper functions are intended to be like
|
||||
the event table macros that wxWindows employs. But since static event
|
||||
@@ -309,11 +302,9 @@ tables are impossible with wxPython, we use helpers that are named the
|
||||
same to dynamically build the table. The only real difference is
|
||||
that the first arguemnt to the event helpers is always the window that
|
||||
the event table entry should be added to.
|
||||
|
||||
\item Notice the use of \tt{wxDLG\_PNT} and \tt{wxDLG\_SZE} in lines 19
|
||||
- 29 to convert from dialog units to pixels. These helpers are unique
|
||||
to wxPython since Python can't do method overloading like C++.
|
||||
|
||||
\item There is an \tt{OnCloseWindow} method at line 34 but no call to
|
||||
EVT\_CLOSE to attach the event to the method. Does it really get
|
||||
called? The answer is, yes it does. This is because many of the
|
||||
@@ -322,7 +313,6 @@ called? The answer is, yes it does. This is because many of the
|
||||
C++ classes in this area to determine what is \em{standard} but since
|
||||
that changes from time to time I can make no guarentees, nor will it
|
||||
be fully documented. When in doubt, use an EVT\_*** function.
|
||||
|
||||
\item At lines 17 to 21 notice that there are no saved references to
|
||||
the panel or the static text items that are created. Those of you
|
||||
who know Python might be wondering what happens when Python deletes
|
||||
@@ -334,13 +324,11 @@ when necessary. For this reason, most wxPython objects do not need to
|
||||
have a \_\_del\_\_ method that explicitly causes the C++ object to be
|
||||
deleted. If you ever have the need to forcibly delete a window, use
|
||||
the Destroy() method as shown on line 36.
|
||||
|
||||
\item Just like wxWindows in C++, wxPython apps need to create a class
|
||||
derived from \tt{wxApp} (line 56) that implements a method named
|
||||
\tt{OnInit}, (line 59.) This method should create the application's
|
||||
main window (line 62) and use \tt{wxApp.SetTopWindow()} (line 66) to
|
||||
inform wxWindows about it.
|
||||
|
||||
\item And finally, at line 72 an instance of the application class is
|
||||
created. At this point wxPython finishes initializing itself, and calls
|
||||
the \tt{OnInit} method to get things started. (The zero parameter here is
|
||||
@@ -495,7 +483,7 @@ as possible to the C++ spec over time.
|
||||
\item \helpref{wxStaticBitmap}{wxstaticbitmap}
|
||||
\item \helpref{wxStaticBox}{wxstaticbox}
|
||||
\item \helpref{wxStaticBoxSizer}{wxstaticboxsizer}
|
||||
\item wxStaticLine
|
||||
\item \helpref{wxStaticLine}{wxstaticline}
|
||||
\item \helpref{wxStaticText}{wxstatictext}
|
||||
\item \helpref{wxStatusBar}{wxstatusbar}
|
||||
\item \helpref{wxSysColourChangedEvent}{wxsyscolourchangedevent}
|
||||
@@ -514,16 +502,13 @@ as possible to the C++ spec over time.
|
||||
\item \helpref{wxValidator}{wxvalidator}
|
||||
\item \helpref{wxWindowDC}{wxwindowdc}
|
||||
\item \helpref{wxWindow}{wxwindow}
|
||||
|
||||
|
||||
|
||||
\end{itemize}
|
||||
|
||||
%----------------------------------------------------------------------
|
||||
\section{Where to go for help}\label{wxphelp}
|
||||
|
||||
Since wxPython is a blending of multiple technologies, help comes from
|
||||
multiple sources. See
|
||||
multiple sources. See
|
||||
\urlref{http://alldunn.com/wxPython}{http://alldunn.com/wxPython} for details on
|
||||
various sources of help, but probably the best source is the
|
||||
wxPython-users mail list. You can view the archive or subscribe by
|
||||
|
@@ -1,4 +1,4 @@
|
||||
wxWindows 2.0 for Motif installation
|
||||
wxWindows 2.1 for Motif installation
|
||||
------------------------------------
|
||||
|
||||
IMPORTANT NOTE:
|
||||
@@ -20,8 +20,8 @@ First steps
|
||||
(not yet tested). Motif 2.0 and above may also be suitable.
|
||||
|
||||
- Download the appropriate .tgz archive, or alternatively the files
|
||||
wx200gen.zip and wx200mot.zip. Download documentation in a preferred format,
|
||||
such as wx200htm.zip or wx200pdf.zip.
|
||||
wx2_x_y_gen.zip and wx2_x_y_mot.zip. Download documentation in a
|
||||
preferred format, such as wx2_x_y_htm.zip or wx2_x_y_pdf.zip.
|
||||
|
||||
- Make a directory such as ~/wx and unarchive the files into this
|
||||
directory. If using the zip archives, use the -a option if available
|
||||
|
@@ -5,7 +5,7 @@
|
||||
# Note that this uses standard (but commonly-used) configure options;
|
||||
# if you're feeling brave, you may wish to compile with threads.
|
||||
# -- Julian Smart
|
||||
chmod a+x configure config.sub config.guess setup/general/* setup/shared/*
|
||||
./configure --with-shared --with-motif --without-gtk --with-debug_flag --with-debug_info --without-threads
|
||||
make makefiles
|
||||
rm -f *.cache
|
||||
chmod a+x configure config.sub config.guess
|
||||
./configure --disable-shared --with-motif --without-gtk --with-debug_flag --with-debug_info --enable-debug --without-sockets --without-odbc --without-threads --enable-newgrid
|
||||
make
|
||||
|
@@ -2,21 +2,22 @@
|
||||
Installing wxWindows 2.1
|
||||
------------------------
|
||||
|
||||
This is a snapshot release of wxWindows 2.1 for
|
||||
Microsoft Windows 95, 98 and NT. This is not a production release,
|
||||
This is a beta release of wxWindows 2.1 for Microsoft
|
||||
Windows 95, 98 and NT. This is not a production release,
|
||||
although a huge number of bugs found in wxWindows 2.0 have been
|
||||
fixed.
|
||||
|
||||
IMPORTANT NOTE: If you experience problems installing, please
|
||||
re-read this instructions and other related files (todo.txt,
|
||||
bugs.txt etc.) carefully before mailing wxwin-users or
|
||||
re-read this instructions and other related files (release.txt,
|
||||
todo.txt, bugs.txt etc.) carefully before mailing wxwin-users or
|
||||
the author. Preferably, try to fix the problem first and
|
||||
then send a patch to the author.
|
||||
then send a patch to the author. Please report bugs using the
|
||||
bug report form on the wxWindows web site.
|
||||
|
||||
Unarchiving
|
||||
-----------
|
||||
|
||||
A setup program is provided to automatically copy files to a
|
||||
A setup program is provided (setup.exe) to automatically copy files to a
|
||||
directory on your hard disk. Do not install into a path that contains spaces.
|
||||
The installation program should set the WXWIN environment variable, which
|
||||
will be activated when your machine is rebooted. The setup
|
||||
@@ -223,6 +224,11 @@ same alignment, or you could experience mysterious crashes. To
|
||||
change the alignment, add a suitable option to the $(CFG) target code
|
||||
in src/msw/makefile.b32.
|
||||
|
||||
Note (4): if you get undefined _SQL... symbols at link time,
|
||||
either install odbc32.lib from the BC++ CD-ROM into your BC++ lib
|
||||
directory, or set wxUSE_ODBC to 0 in include\wx\msw\setup.h and
|
||||
recompile wxWindows. The same applies if compiling using the IDE.
|
||||
|
||||
Compiling using the IDE files:
|
||||
|
||||
1. Load src\bc32.ide (Release settings)
|
||||
@@ -394,6 +400,9 @@ and other intermediate compiler files.
|
||||
|
||||
Notes:
|
||||
|
||||
- See also the Cygwin/Mingw32 on the web site or CD-ROM for
|
||||
further information about using wxWindows with these compilers.
|
||||
|
||||
- libwx.a is 48 MB or more - but much less if compiled with no
|
||||
debug info (-g0) and level 4 optimization (-O4).
|
||||
|
||||
@@ -401,8 +410,6 @@ Notes:
|
||||
isn't available with Cygwin. However, you can use it with external
|
||||
decompression utilities.
|
||||
|
||||
- Doesn't compile src/msw/ole files, so no drag and drop.
|
||||
|
||||
- There's a bug in Mingw32 headers for some early distributions.
|
||||
|
||||
in include/windows32/defines.h, where it says:
|
||||
|
@@ -32,13 +32,15 @@ wxWindows 2.1.11
|
||||
maintenance.
|
||||
- Ability to compile library in console (non-GUI) mode.
|
||||
- Integration of wxHTML widget and help controller into
|
||||
wxWindows. wxHTML allows HTML viewing and printing.
|
||||
wxWindows. wxHTML allows HTML viewing and printing (wxGTK
|
||||
and wxMSW, partial support in wxMotif).
|
||||
- New classes wxChrono, wxDialUpManager, wxFontEnumerator,
|
||||
wxWizard, wxStaticLine, etc.
|
||||
- wxShowTip for showing 'startup tips' to the user.
|
||||
- wxSocket and wxThread classes rewritten.
|
||||
- New, consistent drag and drop API (not wxMotif).
|
||||
- Better-looking dialogs in wxGTK.
|
||||
- Better-looking dialogs in wxGTK; native message box used
|
||||
in wxMotif.
|
||||
- wxSizers reimplemented and used to specify window layout
|
||||
for some generic dialogs.
|
||||
- New, more sophisticated wxGrid class (in beta). The old grid
|
||||
@@ -114,7 +116,6 @@ wxMotif-2.x.y.tgz wxMotif source distribution. You will
|
||||
-- OR -- from the zip set (above).
|
||||
|
||||
wx2_x_y_gen.zip
|
||||
wx2_x_y_msw.zip
|
||||
wx2_x_y_mot.zip
|
||||
jpeg.zip
|
||||
|
||||
@@ -167,9 +168,16 @@ commercial applications using wxWindows.
|
||||
Documentation
|
||||
-------------
|
||||
|
||||
See docs/changes.txt for a detailed history of changes to wxWindows 2.
|
||||
See docs/release.txt for some notes about the current release.
|
||||
|
||||
See docs/bugs.txt for a bug list: this file is new and will initially
|
||||
be edited by hand, later generated from a web-based bug database.
|
||||
|
||||
See docs/html/index.htm for an HTML index of the major documents.
|
||||
|
||||
See docs/changes.txt for a detailed history of changes to wxWindows 2
|
||||
(not up-to-date).
|
||||
|
||||
The Windows help files are located in docs/winhelp.
|
||||
The PDF help files are located in docs/pdf.
|
||||
|
||||
|
39
docs/release.txt
Normal file
39
docs/release.txt
Normal file
@@ -0,0 +1,39 @@
|
||||
wxWindows Release Notes
|
||||
-----------------------
|
||||
|
||||
2.1.11
|
||||
======
|
||||
|
||||
- wxMenu no longer takes a wxFunction argument: either use
|
||||
event handlers in the menu's host window or set WXWIN_COMPATIBILITY
|
||||
to 1 in setup.h, and recompile.
|
||||
|
||||
- wxMotif still lags behind other ports but is in much better
|
||||
shape than the 2.0.1 distribution.
|
||||
|
||||
- Clipboard/drag and drop is still not implemented in wxMotif.
|
||||
|
||||
- The new wxGrid implementation is in beta, but the original
|
||||
implementation can be restored by setting wxUSE_NEW_GRID
|
||||
to 0 (in wxMSW) or passing --disable-newgrid to configure
|
||||
(wxGTK/wxMSW). Pass --enable-newgrid to configure to enable
|
||||
the new implementation.
|
||||
|
||||
- wxHTML is partially working in wxMotif. The About sample
|
||||
works, but the others exhibit refresh problems. So light
|
||||
use of wxHTML is recommended on wxMotif.
|
||||
|
||||
- The wxHTML helpview application crashes on exit if
|
||||
using VC++ 6 in release mode and loading a large amount of
|
||||
HTML (such as the wxWindows manual generated using Tex2RTF).
|
||||
This may be a compiler problem and will be investigated
|
||||
for 2.1.12.
|
||||
|
||||
- wxHTML printing has spacing problems under Windows, and may not
|
||||
work fully under Unix. Hopefully this will be resolved for 2.1.12.
|
||||
|
||||
- wxStaticBox under Windows obscures controls placed within it:
|
||||
this will be fixed in 2.1.12.
|
||||
|
||||
- wxStaticBitmap under Windows doesn't respect the transparency mask.
|
||||
|
@@ -41,7 +41,13 @@ protected:
|
||||
const wxPoint& pos,
|
||||
const wxSize& size,
|
||||
long style,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator,
|
||||
# else
|
||||
const wxValidator& validator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name);
|
||||
|
||||
// inherit colour and font settings from the parent window
|
||||
|
@@ -428,7 +428,7 @@ struct DbList
|
||||
};
|
||||
|
||||
|
||||
#if __WXDEBUG__ > 0
|
||||
#ifdef __WXDEBUG__
|
||||
#include "wx/object.h"
|
||||
class CstructTablesInUse : public wxObject
|
||||
{
|
||||
|
@@ -157,7 +157,7 @@ public:
|
||||
bool QueryOnKeyFields(bool forUpdate = FALSE, bool distinct = FALSE);
|
||||
bool GetNext(void) { return(getRec(SQL_FETCH_NEXT)); }
|
||||
bool operator++(int) { return(getRec(SQL_FETCH_NEXT)); }
|
||||
#ifndef FWD_ONLY_CURSORS
|
||||
#if !wxODBC_FWD_ONLY_CURSORS
|
||||
bool GetPrev(void) { return(getRec(SQL_FETCH_PRIOR)); }
|
||||
bool operator--(int) { return(getRec(SQL_FETCH_PRIOR)); }
|
||||
bool GetFirst(void) { return(getRec(SQL_FETCH_FIRST)); }
|
||||
@@ -187,7 +187,7 @@ public:
|
||||
bool SetNull(int colNo);
|
||||
bool SetNull(char *colName);
|
||||
|
||||
#if __WXDEBUG__ > 0
|
||||
#ifdef __WXDEBUG__
|
||||
ULONG GetTableID() { return tableID; };
|
||||
#endif
|
||||
|
||||
|
@@ -53,7 +53,7 @@ struct WXDLLEXPORT wxNativeEncodingInfo
|
||||
{
|
||||
wxString facename; // may be empty meaning "any"
|
||||
|
||||
#if defined(__WXMSW__)
|
||||
#if defined(__WXMSW__) || defined(__WXPM__)
|
||||
wxNativeEncodingInfo() { charset = 0; /* ANSI_CHARSET */ }
|
||||
|
||||
int charset;
|
||||
|
@@ -225,7 +225,7 @@ public:
|
||||
int GetImage() const;
|
||||
void GetItem( wxListItem &info );
|
||||
wxColour *GetColour();
|
||||
|
||||
|
||||
private:
|
||||
DECLARE_DYNAMIC_CLASS(wxListItemData);
|
||||
};
|
||||
@@ -376,15 +376,21 @@ class WXDLLEXPORT wxListTextCtrl: public wxTextCtrl
|
||||
|
||||
public:
|
||||
wxListTextCtrl() {};
|
||||
wxListTextCtrl( wxWindow *parent, const wxWindowID id,
|
||||
wxListTextCtrl( wxWindow *parent, const wxWindowID id,
|
||||
bool *accept, wxString *res, wxListMainWindow *owner,
|
||||
const wxString &value = "",
|
||||
const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
int style = 0, const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
int style = 0, const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString &name = "wxListTextCtrlText" );
|
||||
void OnChar( wxKeyEvent &event );
|
||||
void OnKillFocus( wxFocusEvent &event );
|
||||
|
||||
|
||||
DECLARE_EVENT_TABLE()
|
||||
};
|
||||
|
||||
@@ -436,12 +442,12 @@ class WXDLLEXPORT wxListMainWindow: public wxScrolledWindow
|
||||
void SelectLine( wxListLineData *line );
|
||||
void DeselectLine( wxListLineData *line );
|
||||
void DeleteLine( wxListLineData *line );
|
||||
|
||||
|
||||
void EditLabel( long item );
|
||||
void Edit( long item ) { EditLabel(item); } // deprecated
|
||||
void OnRenameTimer();
|
||||
void OnRenameAccept();
|
||||
|
||||
|
||||
void OnMouse( wxMouseEvent &event );
|
||||
void MoveToFocus();
|
||||
void OnArrowChar( wxListLineData *newCurrent, bool shiftDown );
|
||||
@@ -450,7 +456,7 @@ class WXDLLEXPORT wxListMainWindow: public wxScrolledWindow
|
||||
void OnSetFocus( wxFocusEvent &event );
|
||||
void OnKillFocus( wxFocusEvent &event );
|
||||
void OnSize( wxSizeEvent &event );
|
||||
|
||||
|
||||
void DrawImage( int index, wxDC *dc, int x, int y );
|
||||
void GetImageSize( int index, int &width, int &height );
|
||||
int GetIndexOfLine( const wxListLineData *line );
|
||||
@@ -507,7 +513,13 @@ class WXDLLEXPORT wxListCtrl: public wxControl
|
||||
wxListCtrl();
|
||||
wxListCtrl( wxWindow *parent, wxWindowID id = -1,
|
||||
const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
long style = wxLC_ICON, const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
long style = wxLC_ICON, const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString &name = "listctrl" )
|
||||
{
|
||||
Create(parent, id, pos, size, style, validator, name);
|
||||
@@ -515,7 +527,13 @@ class WXDLLEXPORT wxListCtrl: public wxControl
|
||||
~wxListCtrl();
|
||||
bool Create( wxWindow *parent, wxWindowID id = -1,
|
||||
const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
long style = wxLC_ICON, const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
long style = wxLC_ICON, const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString &name = "listctrl" );
|
||||
void OnSize( wxSizeEvent &event );
|
||||
bool GetColumn( int col, wxListItem& item ) const;
|
||||
@@ -551,16 +569,16 @@ class WXDLLEXPORT wxListCtrl: public wxControl
|
||||
wxImageList *GetImageList( int which ) const;
|
||||
void SetImageList( wxImageList *imageList, int which );
|
||||
bool Arrange( int flag = wxLIST_ALIGN_DEFAULT ); // always wxLIST_ALIGN_LEFT in wxGLC
|
||||
|
||||
|
||||
void ClearAll();
|
||||
bool DeleteItem( long item );
|
||||
bool DeleteAllItems();
|
||||
bool DeleteAllColumns();
|
||||
bool DeleteColumn( int col );
|
||||
|
||||
|
||||
void EditLabel( long item ) { Edit(item); }
|
||||
void Edit( long item );
|
||||
|
||||
|
||||
bool EnsureVisible( long item );
|
||||
long FindItem( long start, const wxString& str, bool partial = FALSE );
|
||||
long FindItem( long start, long data );
|
||||
@@ -577,13 +595,13 @@ class WXDLLEXPORT wxListCtrl: public wxControl
|
||||
bool SortItems( wxListCtrlCompare fn, long data );
|
||||
bool Update( long item );
|
||||
void OnIdle( wxIdleEvent &event );
|
||||
|
||||
|
||||
// We have to hand down a few functions
|
||||
|
||||
|
||||
bool SetBackgroundColour( const wxColour &colour );
|
||||
bool SetForegroundColour( const wxColour &colour );
|
||||
bool SetFont( const wxFont &font );
|
||||
|
||||
|
||||
#if wxUSE_DRAG_AND_DROP
|
||||
void SetDropTarget( wxDropTarget *dropTarget )
|
||||
{ m_mainWin->SetDropTarget( dropTarget ); }
|
||||
@@ -603,7 +621,7 @@ class WXDLLEXPORT wxListCtrl: public wxControl
|
||||
{ m_mainWin->SetFocus(); }
|
||||
|
||||
// implementation
|
||||
|
||||
|
||||
wxImageList *m_imageListNormal;
|
||||
wxImageList *m_imageListSmall;
|
||||
wxImageList *m_imageListState; // what's that ?
|
||||
|
@@ -44,11 +44,13 @@ public:
|
||||
int min = 0, int max = 100, int initial = 0,
|
||||
const wxString& name = _T("wxSpinCtrl"))
|
||||
{
|
||||
SetValue(initial);
|
||||
SetRange(min, max);
|
||||
|
||||
return wxTextCtrl::Create(parent, id, value, pos, size, style,
|
||||
wxDefaultValidator, name);
|
||||
bool ok = wxTextCtrl::Create(parent, id, value, pos, size, style,
|
||||
wxDefaultValidator, name);
|
||||
SetValue(initial);
|
||||
|
||||
return ok;
|
||||
}
|
||||
|
||||
// accessors
|
||||
|
@@ -181,7 +181,13 @@ class WXDLLEXPORT wxTreeTextCtrl: public wxTextCtrl
|
||||
bool *accept, wxString *res, wxTreeCtrl *owner,
|
||||
const wxString &value = wxEmptyString,
|
||||
const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
int style = 0, const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
int style = 0, const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString &name = wxTextCtrlNameStr );
|
||||
void OnChar( wxKeyEvent &event );
|
||||
void OnKillFocus( wxFocusEvent &event );
|
||||
@@ -204,7 +210,13 @@ public:
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxTR_HAS_BUTTONS | wxTR_LINES_AT_ROOT,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator *validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator &validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxTreeCtrlNameStr)
|
||||
{
|
||||
Create(parent, id, pos, size, style, validator, name);
|
||||
@@ -216,7 +228,13 @@ public:
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxTR_HAS_BUTTONS | wxTR_LINES_AT_ROOT,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator *validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator &validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxTreeCtrlNameStr);
|
||||
|
||||
// accessors
|
||||
@@ -461,6 +479,9 @@ protected:
|
||||
friend class wxTreeRenameTimer;
|
||||
friend class wxTreeTextCtrl;
|
||||
|
||||
wxFont m_normalFont;
|
||||
wxFont m_boldFont;
|
||||
|
||||
wxGenericTreeItem *m_anchor;
|
||||
wxGenericTreeItem *m_current, *m_key_current, *m_currentEdit;
|
||||
bool m_hasFocus;
|
||||
|
@@ -52,13 +52,13 @@ public:
|
||||
|
||||
// implementation
|
||||
wxDataFormatId GetType() const;
|
||||
void SetType( wxDataFormatId type );
|
||||
|
||||
private:
|
||||
wxDataFormatId m_type;
|
||||
NativeFormat m_format;
|
||||
|
||||
void PrepareFormats();
|
||||
void SetType( wxDataFormatId type );
|
||||
};
|
||||
|
||||
#endif // _WX_GTK_DATAFORM_H
|
||||
|
@@ -52,13 +52,13 @@ public:
|
||||
|
||||
// implementation
|
||||
wxDataFormatId GetType() const;
|
||||
void SetType( wxDataFormatId type );
|
||||
|
||||
private:
|
||||
wxDataFormatId m_type;
|
||||
NativeFormat m_format;
|
||||
|
||||
void PrepareFormats();
|
||||
void SetType( wxDataFormatId type );
|
||||
};
|
||||
|
||||
#endif // _WX_GTK_DATAFORM_H
|
||||
|
@@ -16,12 +16,12 @@
|
||||
#pragma interface "choice.h"
|
||||
#endif
|
||||
|
||||
#include "wx/control.h"
|
||||
#include "wx/ctrlsub.h"
|
||||
|
||||
WXDLLEXPORT_DATA(extern const char*) wxChoiceNameStr;
|
||||
|
||||
// Choice item
|
||||
class WXDLLEXPORT wxChoice: public wxControl
|
||||
class WXDLLEXPORT wxChoice: public wxControlWithItems
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(wxChoice)
|
||||
|
||||
@@ -48,6 +48,21 @@ public:
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
const wxString& name = wxChoiceNameStr);
|
||||
|
||||
// Virtual functions required by wxControlWithItems.
|
||||
// They are not all implemented yet :-(
|
||||
virtual int GetCount() const;
|
||||
virtual int DoAppend(const wxString& item);
|
||||
virtual void DoInsertItems(const wxArrayString& items, int pos);
|
||||
virtual void DoSetItems(const wxArrayString& items, void **clientData);
|
||||
virtual void DoSetFirstItem(int n);
|
||||
virtual void DoSetItemClientData(int n, void* clientData);
|
||||
virtual void* DoGetItemClientData(int n) const;
|
||||
virtual void DoSetItemClientObject(int n, wxClientData* clientData);
|
||||
virtual wxClientData* DoGetItemClientObject(int n) const;
|
||||
virtual void Select(int n);
|
||||
virtual void SetString(int n, const wxString& s);
|
||||
|
||||
// Original API
|
||||
virtual void Append(const wxString& item);
|
||||
virtual void Delete(int n);
|
||||
virtual void Clear();
|
||||
|
@@ -16,7 +16,7 @@
|
||||
#pragma interface "listbox.h"
|
||||
#endif
|
||||
|
||||
#include "wx/control.h"
|
||||
#include "wx/ctrlsub.h"
|
||||
|
||||
WXDLLEXPORT_DATA(extern const char*) wxListBoxNameStr;
|
||||
|
||||
@@ -26,7 +26,7 @@ class WXDLLEXPORT wxArrayInt;
|
||||
WXDLLEXPORT_DATA(extern const char*) wxEmptyString;
|
||||
|
||||
// List box item
|
||||
class WXDLLEXPORT wxListBox: public wxControl
|
||||
class WXDLLEXPORT wxListBox: public wxControlWithItems
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(wxListBox)
|
||||
|
||||
@@ -54,6 +54,19 @@ public:
|
||||
|
||||
~wxListBox();
|
||||
|
||||
// Virtual functions required by wxControlWithItems.
|
||||
// They are not all implemented yet :-(
|
||||
virtual int GetCount() const;
|
||||
virtual int DoAppend(const wxString& item);
|
||||
virtual void DoInsertItems(const wxArrayString& items, int pos);
|
||||
virtual void DoSetItems(const wxArrayString& items, void **clientData);
|
||||
virtual void DoSetFirstItem(int n);
|
||||
virtual void DoSetItemClientData(int n, void* clientData);
|
||||
virtual void* DoGetItemClientData(int n) const;
|
||||
virtual void DoSetItemClientObject(int n, wxClientData* clientData);
|
||||
virtual wxClientData* DoGetItemClientObject(int n) const;
|
||||
virtual void Select(int n);
|
||||
|
||||
virtual void Append(const wxString& item);
|
||||
virtual void Append(const wxString& item, void *clientData);
|
||||
virtual void Set(int n, const wxString* choices, void **clientData = NULL);
|
||||
|
@@ -402,15 +402,13 @@
|
||||
|
||||
#endif
|
||||
|
||||
#if defined(__WXMSW__) && defined(__BORLANDC__)
|
||||
#undef wxUSE_ODBC
|
||||
#define wxUSE_ODBC 0
|
||||
#endif
|
||||
|
||||
// BC++/Win16 can't cope with the amount of data in resource.cpp
|
||||
#if defined(__WIN16__) && defined(__BORLANDC__)
|
||||
#undef wxUSE_WX_RESOURCES
|
||||
#define wxUSE_WX_RESOURCES 0
|
||||
|
||||
#undef wxUSE_ODBC
|
||||
#define wxUSE_ODBC 0
|
||||
#endif
|
||||
|
||||
#if defined(__WXMSW__) && defined(__WATCOMC__)
|
||||
@@ -452,13 +450,5 @@
|
||||
|
||||
#endif
|
||||
|
||||
// Problem with VC++ 5 and dobjcmn.cpp
|
||||
/*
|
||||
#if defined(_MSC_VER) && (_MSC_VER > 1020) && (_MSC_VER < 1200)
|
||||
#undef wxUSE_DRAG_AND_DROP
|
||||
#define wxUSE_DRAG_AND_DROP 0
|
||||
#endif
|
||||
*/
|
||||
|
||||
#endif
|
||||
// _WX_SETUP_H_
|
||||
|
@@ -26,7 +26,13 @@ class WXDLLEXPORT wxBitmapButton: public wxButton
|
||||
inline wxBitmapButton(wxWindow *parent, wxWindowID id, const wxBitmap& bitmap,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize, long style = wxBU_AUTODRAW,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxButtonNameStr)
|
||||
{
|
||||
Create(parent, id, bitmap, pos, size, style, validator, name);
|
||||
@@ -35,7 +41,13 @@ class WXDLLEXPORT wxBitmapButton: public wxButton
|
||||
bool Create(wxWindow *parent, wxWindowID id, const wxBitmap& bitmap,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize, long style = wxBU_AUTODRAW,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxButtonNameStr);
|
||||
|
||||
virtual void SetLabel(const wxBitmap& bitmap)
|
||||
|
@@ -25,7 +25,13 @@ class WXDLLEXPORT wxButton: public wxControl
|
||||
inline wxButton(wxWindow *parent, wxWindowID id, const wxString& label,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize, long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxButtonNameStr)
|
||||
{
|
||||
Create(parent, id, label, pos, size, style, validator, name);
|
||||
@@ -34,7 +40,13 @@ class WXDLLEXPORT wxButton: public wxControl
|
||||
bool Create(wxWindow *parent, wxWindowID id, const wxString& label,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize, long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxButtonNameStr);
|
||||
|
||||
virtual ~wxButton();
|
||||
|
@@ -27,7 +27,13 @@ class WXDLLEXPORT wxCheckBox: public wxControl
|
||||
inline wxCheckBox(wxWindow *parent, wxWindowID id, const wxString& label,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize, long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxCheckBoxNameStr)
|
||||
{
|
||||
Create(parent, id, label, pos, size, style, validator, name);
|
||||
@@ -36,7 +42,13 @@ class WXDLLEXPORT wxCheckBox: public wxControl
|
||||
bool Create(wxWindow *parent, wxWindowID id, const wxString& label,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize, long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxCheckBoxNameStr);
|
||||
|
||||
virtual void SetValue(bool);
|
||||
@@ -64,7 +76,13 @@ class WXDLLEXPORT wxBitmapCheckBox: public wxCheckBox
|
||||
inline wxBitmapCheckBox(wxWindow *parent, wxWindowID id, const wxBitmap *label,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize, long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxCheckBoxNameStr)
|
||||
{
|
||||
Create(parent, id, label, pos, size, style, validator, name);
|
||||
@@ -73,7 +91,13 @@ class WXDLLEXPORT wxBitmapCheckBox: public wxCheckBox
|
||||
bool Create(wxWindow *parent, wxWindowID id, const wxBitmap *bitmap,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize, long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxCheckBoxNameStr);
|
||||
|
||||
virtual void SetLabel(const wxBitmap& bitmap);
|
||||
|
@@ -31,7 +31,13 @@ public:
|
||||
int nStrings = 0,
|
||||
const wxString choices[] = NULL,
|
||||
long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxListBoxNameStr);
|
||||
|
||||
// override base class virtuals
|
||||
|
@@ -28,7 +28,13 @@ public:
|
||||
const wxSize& size = wxDefaultSize,
|
||||
int n = 0, const wxString choices[] = NULL,
|
||||
long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxChoiceNameStr)
|
||||
{
|
||||
Create(parent, id, pos, size, n, choices, style, validator, name);
|
||||
@@ -39,7 +45,13 @@ public:
|
||||
const wxSize& size = wxDefaultSize,
|
||||
int n = 0, const wxString choices[] = NULL,
|
||||
long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxChoiceNameStr);
|
||||
|
||||
// Implement base class virtuals
|
||||
|
@@ -33,7 +33,13 @@ class WXDLLEXPORT wxComboBox: public wxChoice
|
||||
const wxSize& size = wxDefaultSize,
|
||||
int n = 0, const wxString choices[] = NULL,
|
||||
long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxComboBoxNameStr)
|
||||
{
|
||||
Create(parent, id, value, pos, size, n, choices, style, validator, name);
|
||||
@@ -45,7 +51,13 @@ class WXDLLEXPORT wxComboBox: public wxChoice
|
||||
const wxSize& size = wxDefaultSize,
|
||||
int n = 0, const wxString choices[] = NULL,
|
||||
long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxComboBoxNameStr);
|
||||
|
||||
// List functions: see wxChoice
|
||||
|
@@ -27,7 +27,13 @@ class WXDLLEXPORT wxGauge: public wxControl
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxGA_HORIZONTAL,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxGaugeNameStr)
|
||||
{
|
||||
Create(parent, id, range, pos, size, style, validator, name);
|
||||
@@ -38,7 +44,13 @@ class WXDLLEXPORT wxGauge: public wxControl
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxGA_HORIZONTAL,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxGaugeNameStr);
|
||||
|
||||
void SetShadowWidth(int w);
|
||||
|
@@ -42,7 +42,13 @@ public:
|
||||
const wxSize& size = wxDefaultSize,
|
||||
int n = 0, const wxString choices[] = NULL,
|
||||
long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxListBoxNameStr)
|
||||
{
|
||||
Create(parent, id, pos, size, n, choices, style, validator, name);
|
||||
@@ -53,7 +59,13 @@ public:
|
||||
const wxSize& size = wxDefaultSize,
|
||||
int n = 0, const wxString choices[] = NULL,
|
||||
long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxListBoxNameStr);
|
||||
|
||||
virtual ~wxListBox();
|
||||
|
@@ -29,7 +29,13 @@ public:
|
||||
const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
|
||||
int n = 0, const wxString choices[] = NULL,
|
||||
int majorDim = 0, long style = wxRA_HORIZONTAL,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* val = wxDefaultValidator, const wxString& name = wxRadioBoxNameStr)
|
||||
# else
|
||||
const wxValidator& val = wxDefaultValidator, const wxString& name = wxRadioBoxNameStr)
|
||||
# endif
|
||||
#endif
|
||||
{
|
||||
Create(parent, id, title, pos, size, n, choices, majorDim, style, val, name);
|
||||
}
|
||||
@@ -40,7 +46,13 @@ public:
|
||||
const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
|
||||
int n = 0, const wxString choices[] = NULL,
|
||||
int majorDim = 0, long style = wxRA_HORIZONTAL,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* val = wxDefaultValidator, const wxString& name = wxRadioBoxNameStr);
|
||||
# else
|
||||
const wxValidator& val = wxDefaultValidator, const wxString& name = wxRadioBoxNameStr);
|
||||
# endif
|
||||
#endif
|
||||
|
||||
virtual bool OS2Command(WXUINT param, WXWORD id);
|
||||
virtual WXHBRUSH OnCtlColor(WXHDC pDC, WXHWND pWnd, WXUINT nCtlColor,
|
||||
|
@@ -26,7 +26,13 @@ class WXDLLEXPORT wxRadioButton: public wxControl
|
||||
const wxString& label,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize, long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxRadioButtonNameStr)
|
||||
{
|
||||
Create(parent, id, label, pos, size, style, validator, name);
|
||||
@@ -36,7 +42,13 @@ class WXDLLEXPORT wxRadioButton: public wxControl
|
||||
const wxString& label,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize, long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxRadioButtonNameStr);
|
||||
|
||||
virtual void SetLabel(const wxString& label);
|
||||
@@ -63,7 +75,13 @@ class WXDLLEXPORT wxBitmapRadioButton: public wxRadioButton
|
||||
const wxBitmap *label,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize, long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxBitmapRadioButtonNameStr)
|
||||
{
|
||||
Create(parent, id, label, pos, size, style, validator, name);
|
||||
@@ -73,7 +91,13 @@ class WXDLLEXPORT wxBitmapRadioButton: public wxRadioButton
|
||||
const wxBitmap *label,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize, long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxBitmapRadioButtonNameStr);
|
||||
|
||||
virtual void SetLabel(const wxBitmap *label);
|
||||
|
@@ -29,7 +29,13 @@ public:
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxSB_HORIZONTAL,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxScrollBarNameStr)
|
||||
{
|
||||
Create(parent, id, pos, size, style, validator, name);
|
||||
@@ -38,7 +44,13 @@ public:
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxSB_HORIZONTAL,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxScrollBarNameStr);
|
||||
|
||||
int GetThumbPosition() const ;
|
||||
|
@@ -166,8 +166,16 @@
|
||||
// Set this to 0 if your compiler can't cope
|
||||
// with omission of prototype parameters.
|
||||
|
||||
#define wxUSE_ODBC 0
|
||||
// Define 1 to use ODBC classes
|
||||
#define wxUSE_ODBC 0
|
||||
// Define 1 to use ODBC classes
|
||||
|
||||
#define wxODBC_FWD_ONLY_CURSORS 1
|
||||
// Some databases/ODBC drivers only allow forward scrolling cursors.
|
||||
// Unless you specifically want to use backward scrolling
|
||||
// cursors, and you know that all of the databases/ODBC drivers
|
||||
// that you will use these odbc classes with allow backward
|
||||
// scrolling cursors, this setting should remain set to 1
|
||||
// for maximum database/driver compatibilty
|
||||
|
||||
#define wxUSE_IOSTREAMH 1
|
||||
// VC++ 4.2 and above allows <iostream> and <iostream.h>
|
||||
|
@@ -29,7 +29,13 @@ public:
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxSL_HORIZONTAL,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxSliderNameStr)
|
||||
{
|
||||
Create(parent, id, value, minValue, maxValue, pos, size, style, validator, name);
|
||||
@@ -42,7 +48,13 @@ public:
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxSL_HORIZONTAL,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxSliderNameStr);
|
||||
|
||||
virtual int GetValue() const ;
|
||||
|
@@ -24,7 +24,13 @@ public:
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxTextCtrlNameStr)
|
||||
{
|
||||
Create(parent, id, value, pos, size, style, validator, name);
|
||||
@@ -35,7 +41,13 @@ public:
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name = wxTextCtrlNameStr);
|
||||
|
||||
// implement base class pure virtuals
|
||||
|
@@ -134,11 +134,9 @@ private:
|
||||
|
||||
// in order to avoid any overhead under !MSW make all wxCriticalSection class
|
||||
// functions inline - but this can't be done under MSW
|
||||
#if defined(__WXMSW__)
|
||||
#if defined(__WXMSW__) || defined(__WXPM__)
|
||||
class WXDLLEXPORT wxCriticalSectionInternal;
|
||||
#define WXCRITICAL_INLINE
|
||||
#elif defined(__WXPM__)
|
||||
#define WXCRITICAL_INLINE
|
||||
#else // !MSW && !PM
|
||||
#define WXCRITICAL_INLINE inline
|
||||
#endif // MSW/!MSW
|
||||
@@ -162,7 +160,7 @@ private:
|
||||
wxCriticalSection(const wxCriticalSection&);
|
||||
wxCriticalSection& operator=(const wxCriticalSection&);
|
||||
|
||||
#if defined(__WXMSW__)
|
||||
#if defined(__WXMSW__) || defined(__WXPM__)
|
||||
wxCriticalSectionInternal *m_critsect;
|
||||
#else // !MSW
|
||||
wxMutex m_mutex;
|
||||
@@ -177,10 +175,8 @@ private:
|
||||
class WXDLLEXPORT wxCriticalSectionLocker
|
||||
{
|
||||
public:
|
||||
wxCriticalSectionLocker(wxCriticalSection& critsect) : m_critsect(critsect)
|
||||
{ m_critsect.Enter(); }
|
||||
~wxCriticalSectionLocker()
|
||||
{ m_critsect.Leave(); }
|
||||
inline wxCriticalSectionLocker(wxCriticalSection& critsect);
|
||||
inline ~wxCriticalSectionLocker();
|
||||
|
||||
private:
|
||||
// no assignment operator nor copy ctor
|
||||
@@ -385,7 +381,9 @@ public:
|
||||
// -----------------------------------------------------------------------------
|
||||
// implementation only until the end of file
|
||||
// -----------------------------------------------------------------------------
|
||||
|
||||
#if wxUSE_THREADS
|
||||
|
||||
#if defined(__WXMSW__)
|
||||
// unlock GUI if there are threads waiting for and lock it back when
|
||||
// there are no more of them - should be called periodically by the main
|
||||
@@ -409,9 +407,6 @@ public:
|
||||
|
||||
// returns TRUE if the main thread has GUI lock
|
||||
extern bool WXDLLEXPORT wxGuiOwnedByMainThread();
|
||||
|
||||
inline wxCriticalSection::wxCriticalSection() { }
|
||||
inline wxCriticalSection::~wxCriticalSection() { }
|
||||
#else // !MSW && !PM
|
||||
// implement wxCriticalSection using mutexes
|
||||
inline wxCriticalSection::wxCriticalSection() { }
|
||||
@@ -420,6 +415,14 @@ public:
|
||||
inline void wxCriticalSection::Enter() { (void)m_mutex.Lock(); }
|
||||
inline void wxCriticalSection::Leave() { (void)m_mutex.Unlock(); }
|
||||
#endif // MSW/!MSW
|
||||
|
||||
// we can define these inline functions now (they should be defined after
|
||||
// wxCriticalSection::Enter/Leave)
|
||||
inline
|
||||
wxCriticalSectionLocker:: wxCriticalSectionLocker(wxCriticalSection& cs)
|
||||
: m_critsect(cs) { m_critsect.Enter(); }
|
||||
inline
|
||||
wxCriticalSectionLocker::~wxCriticalSectionLocker() { m_critsect.Leave(); }
|
||||
#endif // wxUSE_THREADS
|
||||
|
||||
#endif // __THREADH__
|
||||
|
@@ -13,8 +13,7 @@
|
||||
#define _WX_UNIX_FONTUTIL_H_
|
||||
|
||||
#ifdef __X__
|
||||
struct XFontStruct;
|
||||
typedef XFontStruct *wxNativeFont;
|
||||
typedef WXFontStructPtr wxNativeFont;
|
||||
#elif defined(__WXGTK__)
|
||||
typedef GdkFont *wxNativeFont;
|
||||
#else
|
||||
|
@@ -82,7 +82,11 @@ private:
|
||||
DECLARE_DYNAMIC_CLASS(wxValidator)
|
||||
};
|
||||
|
||||
#if defined(__VISAGECPP__)
|
||||
WXDLLEXPORT_DATA(extern const wxValidator*) wxDefaultValidator;
|
||||
#else
|
||||
WXDLLEXPORT_DATA(extern const wxValidator) wxDefaultValidator;
|
||||
#endif
|
||||
|
||||
#endif // wxUSE_VALIDATORS
|
||||
|
||||
|
@@ -122,7 +122,11 @@ public:
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator = wxDefaultValidator,
|
||||
# else
|
||||
const wxValidator& validator = wxDefaultValidator,
|
||||
# endif
|
||||
#endif // wxUSE_VALIDATORS
|
||||
const wxString& name = wxPanelNameStr);
|
||||
|
||||
@@ -281,7 +285,7 @@ public:
|
||||
int GetMinHeight() const { return m_minHeight; }
|
||||
int GetMaxWidth() const { return m_maxWidth; }
|
||||
int GetMaxHeight() const { return m_maxHeight; }
|
||||
|
||||
|
||||
// window state
|
||||
// ------------
|
||||
|
||||
@@ -376,7 +380,11 @@ public:
|
||||
#if wxUSE_VALIDATORS
|
||||
// a window may have an associated validator which is used to control
|
||||
// user input
|
||||
# if defined(__VISAGECPP__)
|
||||
virtual void SetValidator( const wxValidator *validator );
|
||||
# else
|
||||
virtual void SetValidator( const wxValidator &validator );
|
||||
# endif
|
||||
virtual wxValidator *GetValidator() { return m_windowValidator; }
|
||||
#endif // wxUSE_VALIDATORS
|
||||
|
||||
|
@@ -210,10 +210,19 @@ enum
|
||||
|
||||
bool MyApp::OnInit()
|
||||
{
|
||||
// parse the cmd line
|
||||
int x = 50,
|
||||
y = 50;
|
||||
if ( argc == 2 )
|
||||
{
|
||||
wxSscanf(argv[1], "%d", &x);
|
||||
wxSscanf(argv[2], "%d", &y);
|
||||
}
|
||||
|
||||
// Create the main frame window
|
||||
MyFrame *frame = new MyFrame((wxFrame *) NULL,
|
||||
"Controls wxWindows App",
|
||||
50, 50, 530, 420);
|
||||
x, y, 530, 420);
|
||||
|
||||
// Give it an icon
|
||||
// The wxICON() macros loads an icon from a resource under Windows
|
||||
@@ -221,7 +230,8 @@ bool MyApp::OnInit()
|
||||
|
||||
frame->SetIcon( wxICON(mondrian) );
|
||||
|
||||
wxMenu *file_menu = new wxMenu("", wxMENU_TEAROFF );
|
||||
wxMenu *file_menu = new wxMenu("", wxMENU_TEAROFF);
|
||||
|
||||
file_menu->Append(MINIMAL_ABOUT, "&About\tF1");
|
||||
file_menu->AppendSeparator();
|
||||
file_menu->Append(MINIMAL_QUIT, "E&xit\tAlt-X", "Quit controls sample");
|
||||
@@ -476,8 +486,10 @@ MyPanel::MyPanel( wxFrame *frame, int x, int y, int w, int h )
|
||||
m_choiceSorted = new wxChoice( panel, ID_CHOICE_SORTED, wxPoint(10,70), wxSize(120,-1),
|
||||
5, choices, wxCB_SORT );
|
||||
|
||||
#ifndef __WXMOTIF__
|
||||
SetControlClientData("choice", m_choice);
|
||||
SetControlClientData("choice", m_choiceSorted);
|
||||
#endif
|
||||
|
||||
m_choice->SetSelection(2);
|
||||
m_choice->SetBackgroundColour( "red" );
|
||||
@@ -702,6 +714,8 @@ void MyPanel::OnChangeColour(wxCommandEvent& WXUNUSED(event))
|
||||
|
||||
void MyPanel::OnListBox( wxCommandEvent &event )
|
||||
{
|
||||
GetParent()->Move(100, 100);
|
||||
|
||||
wxListBox *listbox = event.GetId() == ID_LISTBOX ? m_listbox
|
||||
: m_listboxSorted;
|
||||
|
||||
|
@@ -406,7 +406,7 @@ void ClookUpDlg::OnClose(wxCloseEvent& event)
|
||||
if (lookup2)
|
||||
delete lookup2;
|
||||
|
||||
wxEndBusyCursor();
|
||||
while (wxIsBusy()) wxEndBusyCursor();
|
||||
event.Skip();
|
||||
|
||||
// return TRUE;
|
||||
|
@@ -1,113 +0,0 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: minimal.cpp
|
||||
// Purpose: Dynamic events wxWindows sample
|
||||
// Author: Julian Smart
|
||||
// Modified by:
|
||||
// Created: 04/01/98
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) Julian Smart and Markus Holzem
|
||||
// Licence: wxWindows license
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma implementation "minimal.cpp"
|
||||
#pragma interface "minimal.cpp"
|
||||
#endif
|
||||
|
||||
// For compilers that support precompilation, includes "wx/wx.h".
|
||||
#include "wx/wxprec.h"
|
||||
|
||||
#ifdef __BORLANDC__
|
||||
#pragma hdrstop
|
||||
#endif
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
#include "wx/wx.h"
|
||||
#endif
|
||||
|
||||
#ifdef __WXGTK__
|
||||
#include "mondrian.xpm"
|
||||
#endif
|
||||
|
||||
// Define a new application type
|
||||
class MyApp: public wxApp
|
||||
{ public:
|
||||
bool OnInit(void);
|
||||
};
|
||||
|
||||
// Define a new frame type
|
||||
class MyFrame: public wxFrame
|
||||
{ public:
|
||||
MyFrame(wxFrame *frame, char *title, int x, int y, int w, int h);
|
||||
|
||||
public:
|
||||
void OnQuit(wxCommandEvent& event);
|
||||
void OnAbout(wxCommandEvent& event);
|
||||
bool OnClose(void) { return TRUE; }
|
||||
};
|
||||
|
||||
// ID for the menu commands
|
||||
#define MINIMAL_QUIT 1
|
||||
#define MINIMAL_TEXT 101
|
||||
#define MINIMAL_ABOUT 102
|
||||
|
||||
// Create a new application object
|
||||
IMPLEMENT_APP (MyApp)
|
||||
|
||||
// `Main program' equivalent, creating windows and returning main app frame
|
||||
bool MyApp::OnInit(void)
|
||||
{
|
||||
// Create the main frame window
|
||||
MyFrame *frame = new MyFrame((wxFrame *) NULL, (char *) "Minimal wxWindows App", 50, 50, 450, 340);
|
||||
|
||||
frame->Connect( MINIMAL_QUIT, -1, wxEVT_COMMAND_MENU_SELECTED, (wxObjectEventFunction)MyFrame::OnQuit );
|
||||
frame->Connect( MINIMAL_ABOUT, -1, wxEVT_COMMAND_MENU_SELECTED, (wxObjectEventFunction)MyFrame::OnAbout );
|
||||
|
||||
// Give it an icon
|
||||
#ifdef __WXMSW__
|
||||
frame->SetIcon(wxIcon("mondrian"));
|
||||
#else
|
||||
frame->SetIcon(wxIcon(mondrian_xpm));
|
||||
#endif
|
||||
|
||||
// Make a menubar
|
||||
wxMenu *file_menu = new wxMenu;
|
||||
|
||||
file_menu->Append(MINIMAL_ABOUT, "&About");
|
||||
file_menu->Append(MINIMAL_QUIT, "E&xit");
|
||||
wxMenuBar *menu_bar = new wxMenuBar;
|
||||
menu_bar->Append(file_menu, "&File");
|
||||
frame->SetMenuBar(menu_bar);
|
||||
|
||||
// Make a panel with a message
|
||||
wxPanel *panel = new wxPanel(frame, -1, wxPoint(0, 0), wxSize(400, 200), wxTAB_TRAVERSAL);
|
||||
|
||||
(void)new wxStaticText(panel, 311, "Hello!", wxPoint(10, 10), wxSize(-1, -1), 0);
|
||||
|
||||
// Show the frame
|
||||
frame->Show(TRUE);
|
||||
|
||||
SetTopWindow(frame);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
// My frame constructor
|
||||
MyFrame::MyFrame(wxFrame *frame, char *title, int x, int y, int w, int h):
|
||||
wxFrame(frame, -1, title, wxPoint(x, y), wxSize(w, h))
|
||||
{}
|
||||
|
||||
void MyFrame::OnQuit(wxCommandEvent& WXUNUSED(event) )
|
||||
{
|
||||
Close(TRUE);
|
||||
}
|
||||
|
||||
void MyFrame::OnAbout(wxCommandEvent& WXUNUSED(event) )
|
||||
{
|
||||
wxMessageDialog dialog(this, "This is a minimal sample\nA second line in the message box",
|
||||
"About Minimal", wxYES_NO|wxCANCEL);
|
||||
|
||||
dialog.ShowModal();
|
||||
}
|
||||
|
||||
|
@@ -296,29 +296,44 @@ bool MyFrame::DoEnumerateFamilies(bool fixedWidthOnly,
|
||||
|
||||
if ( fontEnumerator.GotAny() )
|
||||
{
|
||||
int n, nFacenames = fontEnumerator.GetFacenames().GetCount();
|
||||
wxLogStatus(this, "Found %d %sfonts",
|
||||
nFacenames, fixedWidthOnly ? "fixed width " : "");
|
||||
|
||||
wxString *facenames = new wxString[nFacenames];
|
||||
for ( n = 0; n < nFacenames; n++ )
|
||||
facenames[n] = fontEnumerator.GetFacenames().Item(n);
|
||||
int nFacenames = fontEnumerator.GetFacenames().GetCount();
|
||||
if ( !silent )
|
||||
{
|
||||
wxLogStatus(this, "Found %d %sfonts",
|
||||
nFacenames, fixedWidthOnly ? "fixed width " : "");
|
||||
}
|
||||
|
||||
wxString facename;
|
||||
if ( silent )
|
||||
n = 0;
|
||||
{
|
||||
// choose the first
|
||||
facename = fontEnumerator.GetFacenames().Item(0);
|
||||
}
|
||||
else
|
||||
{
|
||||
// let the user choose
|
||||
wxString *facenames = new wxString[nFacenames];
|
||||
int n;
|
||||
for ( n = 0; n < nFacenames; n++ )
|
||||
facenames[n] = fontEnumerator.GetFacenames().Item(n);
|
||||
|
||||
n = wxGetSingleChoiceIndex("Choose a facename", "Font demo",
|
||||
nFacenames, facenames, this);
|
||||
if ( n != -1 )
|
||||
|
||||
if ( n != -1 )
|
||||
facename = facenames[n];
|
||||
|
||||
delete [] facenames;
|
||||
}
|
||||
|
||||
if ( !facename.IsEmpty() )
|
||||
{
|
||||
wxFont font(14, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL,
|
||||
wxFONTWEIGHT_NORMAL, FALSE, facenames[n], encoding);
|
||||
wxFont font(12, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL,
|
||||
wxFONTWEIGHT_NORMAL, FALSE, facename, encoding);
|
||||
|
||||
DoChangeFont(font);
|
||||
}
|
||||
|
||||
delete [] facenames;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
else if ( !silent )
|
||||
@@ -477,7 +492,7 @@ void MyFrame::OnViewMsg(wxCommandEvent& WXUNUSED(event))
|
||||
// and now create the correct font
|
||||
if ( !DoEnumerateFamilies(FALSE, fontenc, TRUE /* silent */) )
|
||||
{
|
||||
wxFont font(14, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL,
|
||||
wxFont font(12, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL,
|
||||
wxFONTWEIGHT_NORMAL, FALSE /* !underlined */,
|
||||
wxEmptyString /* facename */, fontenc);
|
||||
if ( font.Ok() )
|
||||
|
@@ -1,9 +0,0 @@
|
||||
AUTOMAKE_OPTIONS = 1.3 no-dependencies
|
||||
|
||||
SUFFIXES = .cpp
|
||||
|
||||
DEFS = @DEFS@ $(TOOLKIT_DEF) $(WXDEBUG_DEFINE)
|
||||
|
||||
noinst_PROGRAMS = test
|
||||
|
||||
test_SOURCES = test.cpp
|
@@ -1,9 +0,0 @@
|
||||
AUTOMAKE_OPTIONS = 1.3 no-dependencies
|
||||
|
||||
SUFFIXES = .cpp
|
||||
|
||||
DEFS = @DEFS@ $(TOOLKIT_DEF) $(WXDEBUG_DEFINE)
|
||||
|
||||
noinst_PROGRAMS = demo
|
||||
|
||||
demo_SOURCES = demo.cpp
|
24
samples/help/Makefile.in
Normal file
24
samples/help/Makefile.in
Normal file
@@ -0,0 +1,24 @@
|
||||
#
|
||||
# File: makefile.unx
|
||||
# Author: Julian Smart
|
||||
# Created: 1998
|
||||
# Updated:
|
||||
# Copyright: (c) 1998 Julian Smart
|
||||
#
|
||||
# "%W% %G%"
|
||||
#
|
||||
# Makefile for toolbar example (UNIX).
|
||||
|
||||
top_srcdir = @top_srcdir@
|
||||
top_builddir = ../..
|
||||
program_dir = samples/help
|
||||
|
||||
PROGRAM=help
|
||||
|
||||
OBJECTS=demo.o
|
||||
|
||||
DATAFILES=doc
|
||||
|
||||
include ../../src/makeprog.env
|
||||
|
||||
|
@@ -71,6 +71,8 @@ public:
|
||||
// ctor(s)
|
||||
MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size);
|
||||
|
||||
wxHelpController& GetHelpController() { return m_help; }
|
||||
|
||||
// event handlers (these functions should _not_ be virtual)
|
||||
void OnQuit(wxCommandEvent& event);
|
||||
void OnHelp(wxCommandEvent& event);
|
||||
@@ -147,9 +149,17 @@ bool MyApp::OnInit()
|
||||
frame->Show(TRUE);
|
||||
SetTopWindow(frame);
|
||||
|
||||
// success: wxApp::OnRun() will be called which will enter the main message
|
||||
// loop and the application will run. If we returned FALSE here, the
|
||||
// application would exit immediately.
|
||||
|
||||
// initialise the help system: this means that we'll use doc.hlp file under
|
||||
// Windows and that the HTML docs are in the subdirectory doc for platforms
|
||||
// using HTML help
|
||||
if ( !frame->GetHelpController().Initialize("doc") )
|
||||
{
|
||||
wxLogError("Cannot initialize the help system, aborting.");
|
||||
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -174,7 +184,7 @@ MyFrame::MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size)
|
||||
menuFile->AppendSeparator();
|
||||
menuFile->Append(HelpDemo_Help_Search, "&Search help...");
|
||||
#ifndef __WXMSW__
|
||||
#ifndef wxUSE_HTML
|
||||
#if !wxUSE_HTML
|
||||
menuFile->AppendSeparator();
|
||||
menuFile->Append(HelpDemo_Help_KDE, "Use &KDE");
|
||||
menuFile->Append(HelpDemo_Help_GNOME, "Use &GNOME");
|
||||
@@ -203,11 +213,6 @@ MyFrame::MyFrame(const wxString& title, const wxPoint& pos, const wxSize& size)
|
||||
|
||||
// and a static control whose parent is the panel
|
||||
(void)new wxStaticText(panel, -1, "Hello, world!", wxPoint(10, 10));
|
||||
|
||||
// initialise the help system: this means that we'll use doc.hlp file under
|
||||
// Windows and that the HTML docs are in the subdirectory doc for platforms
|
||||
// using HTML help
|
||||
m_help.Initialize("doc");
|
||||
}
|
||||
|
||||
|
||||
|
@@ -25,6 +25,7 @@
|
||||
#include <wx/image.h>
|
||||
#include <wx/wxhtml.h>
|
||||
#include <wx/fs_zip.h>
|
||||
#include <wx/log.h>
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// private classes
|
||||
@@ -56,6 +57,10 @@ IMPLEMENT_APP(MyApp)
|
||||
|
||||
bool MyApp::OnInit()
|
||||
{
|
||||
#ifdef __WXMOTIF__
|
||||
delete wxLog::SetActiveTarget(new wxLogStderr); // So dialog boxes aren't used
|
||||
#endif
|
||||
|
||||
wxInitAllImageHandlers();
|
||||
wxFileSystem::AddHandler(new wxZipFSHandler);
|
||||
|
||||
@@ -72,6 +77,10 @@ bool MyApp::OnInit()
|
||||
for (int i = 1; i < argc; i++)
|
||||
help -> AddBook(argv[i]);
|
||||
|
||||
#ifdef __WXMOTIF__
|
||||
delete wxLog::SetActiveTarget(new wxLogGui);
|
||||
#endif
|
||||
|
||||
help -> DisplayContents();
|
||||
|
||||
return TRUE;
|
||||
|
@@ -1,7 +0,0 @@
|
||||
SUFFIXES = .cpp
|
||||
|
||||
DEFS = @DEFS@ $(TOOLKIT_DEF) $(WXDEBUG_DEFINE)
|
||||
|
||||
noinst_PROGRAMS = joytest
|
||||
|
||||
joytest_SOURCES = joytest.cpp
|
@@ -1,9 +0,0 @@
|
||||
AUTOMAKE_OPTIONS = 1.3 no-dependencies
|
||||
|
||||
SUFFIXES = .cpp
|
||||
|
||||
DEFS = @DEFS@ $(TOOLKIT_DEF) $(WXDEBUG_DEFINE)
|
||||
|
||||
noinst_PROGRAMS = memcheck
|
||||
|
||||
memcheck_SOURCES = memcheck.cpp
|
@@ -556,7 +556,7 @@ void MyFrame::OnRightDown(wxMouseEvent &event )
|
||||
menu.AppendSeparator();
|
||||
menu.Append(Menu_File_Quit, "E&xit");
|
||||
|
||||
menu.Delete(Menu_Popup_ToBeDeleted);
|
||||
//menu.Delete(Menu_Popup_ToBeDeleted);
|
||||
menu.Check(Menu_Popup_ToBeChecked, TRUE);
|
||||
menu.Enable(Menu_Popup_ToBeGreyed, FALSE);
|
||||
|
||||
|
@@ -1,7 +0,0 @@
|
||||
SUFFIXES = .cpp
|
||||
|
||||
DEFS = @DEFS@ $(TOOLKIT_DEF) $(WXDEBUG_DEFINE)
|
||||
|
||||
noinst_PROGRAMS = mfctest
|
||||
|
||||
mfctest_SOURCES = mfctest.cpp
|
@@ -1,7 +0,0 @@
|
||||
SUFFIXES = .cpp
|
||||
|
||||
DEFS = @DEFS@ $(TOOLKIT_DEF) $(WXDEBUG_DEFINE)
|
||||
|
||||
noinst_PROGRAMS = nativdlg
|
||||
|
||||
nativdlg_SOURCES = nativdlg.cpp
|
@@ -1,7 +0,0 @@
|
||||
SUFFIXES = .cpp
|
||||
|
||||
DEFS = @DEFS@ $(TOOLKIT_DEF) $(WXDEBUG_DEFINE)
|
||||
|
||||
noinst_PROGRAMS = oleauto
|
||||
|
||||
oleauto_SOURCES = oleauto.cpp
|
@@ -1,7 +0,0 @@
|
||||
SUFFIXES = .cpp
|
||||
|
||||
DEFS = @DEFS@ $(TOOLKIT_DEF) $(WXDEBUG_DEFINE)
|
||||
|
||||
noinst_PROGRAMS = ownerdrw
|
||||
|
||||
ownerdrw_SOURCES = ownerdrw.cpp
|
@@ -1,13 +1,13 @@
|
||||
/*
|
||||
* File: printing.cc
|
||||
* Purpose: Printing demo for wxWindows class library
|
||||
* Author: Julian Smart
|
||||
* Created: 1995
|
||||
* Updated:
|
||||
* Copyright: (c) 1995, AIAI, University of Edinburgh
|
||||
*/
|
||||
|
||||
/* static const char sccsid[] = "%W% %G%"; */
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: printing.cpp
|
||||
// Purpose: Printing demo for wxWindows
|
||||
// Author: Julian Smart
|
||||
// Modified by:
|
||||
// Created: 1995
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) Julian Smart
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma implementation
|
||||
@@ -290,6 +290,8 @@ void MyFrame::OnPrintAbout(wxCommandEvent& WXUNUSED(event))
|
||||
|
||||
void MyFrame::Draw(wxDC& dc)
|
||||
{
|
||||
dc.SetBackground(*wxWHITE_BRUSH);
|
||||
dc.Clear();
|
||||
dc.SetFont(* wxGetApp().m_testFont);
|
||||
|
||||
dc.SetBackgroundMode(wxTRANSPARENT);
|
||||
|
@@ -1,13 +1,13 @@
|
||||
/*
|
||||
* File: printing.h
|
||||
* Purpose: Printing demo for wxWindows class library
|
||||
* Author: Julian Smart
|
||||
* Created: 1995
|
||||
* Updated:
|
||||
* Copyright: (c) 1995, AIAI, University of Edinburgh
|
||||
*/
|
||||
|
||||
/* sccsid[] = "%W% %G%" */
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: printing.h
|
||||
// Purpose: Printing demo for wxWindows
|
||||
// Author: Julian Smart
|
||||
// Modified by:
|
||||
// Created: 1995
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) Julian Smart
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma interface
|
||||
|
@@ -1,7 +0,0 @@
|
||||
SUFFIXES = .cpp
|
||||
|
||||
DEFS = @DEFS@ $(TOOLKIT_DEF) $(WXDEBUG_DEFINE)
|
||||
|
||||
noinst_PROGRAMS = regtest
|
||||
|
||||
regtest_SOURCES = regtest.cpp
|
@@ -1,7 +0,0 @@
|
||||
SUFFIXES = .cpp
|
||||
|
||||
DEFS = @DEFS@ $(TOOLKIT_DEF) $(WXDEBUG_DEFINE)
|
||||
|
||||
noinst_PROGRAMS = wxLayout
|
||||
|
||||
wxLayout_SOURCES = wxLayout.cpp kbList.cpp wxllist.cpp wxlparser.cpp wxlwindow.cpp
|
@@ -2352,10 +2352,15 @@ wxLayoutList::Draw(wxDC &dc,
|
||||
}
|
||||
InvalidateUpdateRect();
|
||||
|
||||
WXLO_DEBUG(("Selection is %s : l%d,%ld/%ld,%ld",
|
||||
m_Selection.m_valid ? "valid" : "invalid",
|
||||
m_Selection.m_CursorA.x, m_Selection.m_CursorA.y,
|
||||
m_Selection.m_CursorB.x, m_Selection.m_CursorB.y));
|
||||
#ifdef DEBUG
|
||||
if ( m_Selection.m_valid )
|
||||
{
|
||||
WXLO_DEBUG(("Selection is %s : %ld,%ld/%ld,%ld",
|
||||
m_Selection.m_valid ? "valid" : "invalid",
|
||||
m_Selection.m_CursorA.x, m_Selection.m_CursorA.y,
|
||||
m_Selection.m_CursorB.x, m_Selection.m_CursorB.y));
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
wxLayoutObject *
|
||||
|
@@ -88,7 +88,7 @@ static const int Y_SCROLL_PAGE = 20;
|
||||
|
||||
|
||||
|
||||
#define wxUSE_PRIVATE_CLIPBOARD_FORMAT 0
|
||||
#define wxUSE_PRIVATE_CLIPBOARD_FORMAT 1
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// event tables
|
||||
@@ -1079,12 +1079,11 @@ wxLayoutWindow::Paste(bool primary)
|
||||
{
|
||||
#if wxUSE_PRIVATE_CLIPBOARD_FORMAT
|
||||
wxLayoutDataObject wxldo;
|
||||
if (wxTheClipboard->IsSupported( wxldo.GetFormat() ))
|
||||
if ( wxTheClipboard->GetData(wxldo) )
|
||||
{
|
||||
wxTheClipboard->GetData(wxldo);
|
||||
{
|
||||
}
|
||||
//FIXME: missing functionality m_llist->Insert(wxldo.GetList());
|
||||
wxLayoutImportText(m_llist, wxldo.GetLayoutData());
|
||||
SetDirty();
|
||||
}
|
||||
else
|
||||
#endif
|
||||
@@ -1113,10 +1112,20 @@ wxLayoutWindow::Copy(bool invalidate)
|
||||
m_llist->EndSelection();
|
||||
}
|
||||
|
||||
wxLayoutDataObject wldo;
|
||||
wxLayoutList *llist = m_llist->GetSelection(&wldo, invalidate);
|
||||
#if wxUSE_PRIVATE_CLIPBOARD_FORMAT
|
||||
// the data object which holds all different data objects, one for each
|
||||
// format we support
|
||||
wxDataObjectComposite *data = new wxDataObjectComposite;
|
||||
#endif
|
||||
|
||||
wxLayoutDataObject *wldo = new wxLayoutDataObject;
|
||||
wxLayoutList *llist = m_llist->GetSelection(wldo, invalidate);
|
||||
if(! llist)
|
||||
{
|
||||
delete wldo;
|
||||
delete data;
|
||||
return FALSE;
|
||||
}
|
||||
// Export selection as text:
|
||||
wxString text;
|
||||
wxLayoutExportObject *exp;
|
||||
@@ -1129,6 +1138,7 @@ wxLayoutWindow::Copy(bool invalidate)
|
||||
}
|
||||
delete llist;
|
||||
|
||||
bool rc;
|
||||
// The exporter always appends a newline, so we chop it off if it
|
||||
// is there:
|
||||
{
|
||||
@@ -1141,16 +1151,19 @@ wxLayoutWindow::Copy(bool invalidate)
|
||||
|
||||
if (wxTheClipboard->Open())
|
||||
{
|
||||
wxTextDataObject *data = new wxTextDataObject( text );
|
||||
bool rc = wxTheClipboard->SetData( data );
|
||||
#if wxUSE_PRIVATE_CLIPBOARD_FORMAT
|
||||
rc |= wxTheClipboard->AddData( &wldo );
|
||||
data->Add(wldo, TRUE /* preferred */);
|
||||
data->Add(new wxTextDataObject(text));
|
||||
#endif
|
||||
rc = wxTheClipboard->SetData( data );
|
||||
wxTheClipboard->Close();
|
||||
return rc;
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
else
|
||||
rc = FALSE;
|
||||
|
||||
delete wldo;
|
||||
delete data;
|
||||
return rc;
|
||||
}
|
||||
|
||||
bool
|
||||
|
@@ -1,7 +0,0 @@
|
||||
SUFFIXES = .cpp
|
||||
|
||||
DEFS = @DEFS@ $(TOOLKIT_DEF) $(WXDEBUG_DEFINE)
|
||||
|
||||
noinst_PROGRAMS = test
|
||||
|
||||
test_SOURCES = test.cpp
|
@@ -1,7 +0,0 @@
|
||||
SUFFIXES = .cpp
|
||||
|
||||
DEFS = @DEFS@ $(TOOLKIT_DEF) $(WXDEBUG_DEFINE)
|
||||
|
||||
noinst_PROGRAMS = tbtest
|
||||
|
||||
tbtest_SOURCES = tbtest.cpp
|
@@ -126,6 +126,7 @@ public:
|
||||
void OnMoveToEndOfEntry( wxCommandEvent &event )
|
||||
{ m_panel->DoMoveToEndOfEntry(); }
|
||||
|
||||
void OnLogClear(wxCommandEvent& event);
|
||||
void OnFileLoad(wxCommandEvent& event);
|
||||
|
||||
void OnIdle( wxIdleEvent& event );
|
||||
@@ -151,6 +152,7 @@ enum
|
||||
TEXT_QUIT = 100,
|
||||
TEXT_ABOUT,
|
||||
TEXT_LOAD,
|
||||
TEXT_CLEAR,
|
||||
|
||||
// clipboard menu
|
||||
TEXT_CLIPBOARD_COPY = 200,
|
||||
@@ -173,6 +175,8 @@ bool MyApp::OnInit()
|
||||
frame->SetSizeHints( 500, 400 );
|
||||
|
||||
wxMenu *file_menu = new wxMenu;
|
||||
file_menu->Append(TEXT_CLEAR, "&Clear the log\tCtrl-C",
|
||||
"Clear the log window contents");
|
||||
file_menu->Append(TEXT_LOAD, "&Load file\tCtrl-O",
|
||||
"Load the sample file into text control");
|
||||
file_menu->AppendSeparator();
|
||||
@@ -543,6 +547,11 @@ void MyPanel::DoPasteFromClipboard()
|
||||
|
||||
void MyPanel::DoCopyToClipboard()
|
||||
{
|
||||
// On X11, we want to get the data from the primary selection instead
|
||||
// of the normal clipboard (which isn't normal under X11 at all). This
|
||||
// call has no effect under MSW.
|
||||
wxTheClipboard->UsePrimarySelection();
|
||||
|
||||
wxString text( m_multitext->GetLineText(0) );
|
||||
|
||||
if (text.IsEmpty())
|
||||
@@ -601,6 +610,7 @@ BEGIN_EVENT_TABLE(MyFrame, wxFrame)
|
||||
EVT_MENU(TEXT_QUIT, MyFrame::OnQuit)
|
||||
EVT_MENU(TEXT_ABOUT, MyFrame::OnAbout)
|
||||
EVT_MENU(TEXT_LOAD, MyFrame::OnFileLoad)
|
||||
EVT_MENU(TEXT_CLEAR, MyFrame::OnLogClear)
|
||||
|
||||
#if wxUSE_TOOLTIPS
|
||||
EVT_MENU(TEXT_TOOLTIPS_SETDELAY, MyFrame::OnSetTooltipDelay)
|
||||
@@ -633,6 +643,9 @@ void MyFrame::OnQuit (wxCommandEvent& WXUNUSED(event) )
|
||||
|
||||
void MyFrame::OnAbout( wxCommandEvent& WXUNUSED(event) )
|
||||
{
|
||||
SetSize(40, 40, 200, 200);
|
||||
return;
|
||||
|
||||
wxBeginBusyCursor();
|
||||
|
||||
wxMessageDialog dialog(this,
|
||||
@@ -683,6 +696,11 @@ void MyFrame::OnToggleTooltips(wxCommandEvent& event)
|
||||
}
|
||||
#endif // tooltips
|
||||
|
||||
void MyFrame::OnLogClear(wxCommandEvent& WXUNUSED(event))
|
||||
{
|
||||
m_panel->m_log->Clear();
|
||||
}
|
||||
|
||||
void MyFrame::OnFileLoad(wxCommandEvent& event)
|
||||
{
|
||||
if ( m_panel->m_multitext->LoadFile("text.rc") )
|
||||
|
@@ -42,7 +42,13 @@ bool wxControlBase::CreateControl(wxWindowBase *parent,
|
||||
const wxPoint& pos,
|
||||
const wxSize& size,
|
||||
long style,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator,
|
||||
# else
|
||||
const wxValidator& validator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name)
|
||||
{
|
||||
// even if it's possible to create controls without parents in some port,
|
||||
|
@@ -63,6 +63,7 @@
|
||||
#include "wx/msgdlg.h"
|
||||
#endif
|
||||
#include "wx/filefn.h"
|
||||
#include "wx/wxchar.h"
|
||||
#endif
|
||||
|
||||
#if wxMAJOR_VERSION == 1
|
||||
@@ -91,7 +92,7 @@
|
||||
|
||||
DbList WXDLLEXPORT *PtrBegDbList = 0;
|
||||
|
||||
#if __WXDEBUG__ > 0
|
||||
#ifdef __WXDEBUG__
|
||||
extern wxList TablesInUse;
|
||||
#endif
|
||||
|
||||
@@ -177,7 +178,7 @@ bool wxDB::Open(char *Dsn, char *Uid, char *AuthStr)
|
||||
|
||||
RETCODE retcode;
|
||||
|
||||
#if wxODBC_FWD_ONLY_CURSORS
|
||||
#if !wxODBC_FWD_ONLY_CURSORS
|
||||
|
||||
// Specify that the ODBC cursor library be used, if needed. This must be
|
||||
// specified before the connection is made.
|
||||
@@ -762,7 +763,7 @@ void wxDB::Close(void)
|
||||
// There should be zero Ctable objects still connected to this db object
|
||||
assert(nTables == 0);
|
||||
|
||||
#if __WXDEBUG__ > 0
|
||||
#ifdef __WXDEBUG__
|
||||
CstructTablesInUse *tiu;
|
||||
wxNode *pNode;
|
||||
pNode = TablesInUse.First();
|
||||
@@ -1706,7 +1707,12 @@ bool wxDB::WriteSqlLog(char *logMsg)
|
||||
*/
|
||||
DBMS wxDB::Dbms(void)
|
||||
{
|
||||
if (!wxStrnicmp(dbInf.dbmsName,"Oracle",6))
|
||||
wxChar baseName[20];
|
||||
|
||||
wxStrncpy(baseName,dbInf.dbmsName,6);
|
||||
baseName[6] = 0;
|
||||
// if (!wxStrnicmp(dbInf.dbmsName,"Oracle",6))
|
||||
if (!wxStricmp(baseName,"Oracle"))
|
||||
return(dbmsORACLE);
|
||||
if (!wxStricmp(dbInf.dbmsName,"Adaptive Server Anywhere"))
|
||||
return(dbmsSYBASE_ASA);
|
||||
@@ -1720,7 +1726,10 @@ DBMS wxDB::Dbms(void)
|
||||
return(dbmsPOSTGRES);
|
||||
if (!wxStricmp(dbInf.dbmsName,"ACCESS"))
|
||||
return(dbmsACCESS);
|
||||
if (!wxStrnicmp(dbInf.dbmsName,"DBASE",5))
|
||||
wxStrncpy(baseName,dbInf.dbmsName,5);
|
||||
baseName[5] = 0;
|
||||
// if (!wxStrnicmp(dbInf.dbmsName,"DBASE",5))
|
||||
if (!wxStricmp(baseName,"DBASE"))
|
||||
return(dbmsDBASE);
|
||||
return(dbmsUNIDENTIFIED);
|
||||
|
||||
|
@@ -95,7 +95,7 @@
|
||||
ULONG lastTableID = 0;
|
||||
|
||||
|
||||
#if __WXDEBUG__ > 0
|
||||
#ifdef __WXDEBUG__
|
||||
wxList TablesInUse;
|
||||
#endif
|
||||
|
||||
@@ -144,7 +144,7 @@ wxTable::wxTable(wxDB *pwxDB, const char *tblName, const int nCols,
|
||||
tableID = ++lastTableID;
|
||||
sprintf(s, "wxTable constructor (%-20s) tableID:[%6lu] pDb:[%p]", tblName,tableID,pDb);
|
||||
|
||||
#if __WXDEBUG__ > 0
|
||||
#ifdef __WXDEBUG__
|
||||
CstructTablesInUse *tableInUse;
|
||||
tableInUse = new CstructTablesInUse();
|
||||
tableInUse->tableName = tblName;
|
||||
@@ -250,8 +250,7 @@ wxTable::~wxTable()
|
||||
pDb->WriteSqlLog(s);
|
||||
}
|
||||
|
||||
#ifndef PROGRAM_FP4UPG
|
||||
#if __WXDEBUG__ > 0
|
||||
#ifdef __WXDEBUG__
|
||||
if (tableID)
|
||||
{
|
||||
bool found = FALSE;
|
||||
@@ -276,7 +275,7 @@ wxTable::~wxTable()
|
||||
}
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
||||
// Decrement the wxDB table count
|
||||
if (pDb)
|
||||
pDb->nTables--;
|
||||
@@ -566,12 +565,15 @@ bool wxTable::getRec(UWORD fetchType)
|
||||
{
|
||||
RETCODE retcode;
|
||||
|
||||
#if wxODBC_FWD_ONLY_CURSORS
|
||||
#if !wxODBC_FWD_ONLY_CURSORS
|
||||
|
||||
// Fetch the NEXT, PREV, FIRST or LAST record, depending on fetchType
|
||||
UDWORD cRowsFetched;
|
||||
UWORD rowStatus;
|
||||
if ((retcode = SQLExtendedFetch(hstmt, fetchType, 0, &cRowsFetched, &rowStatus)) != SQL_SUCCESS)
|
||||
|
||||
// if ((retcode = SQLExtendedFetch(hstmt, fetchType, 0, &cRowsFetched, &rowStatus)) != SQL_SUCCESS)
|
||||
retcode = SQLExtendedFetch(hstmt, fetchType, 0, &cRowsFetched, &rowStatus);
|
||||
if (retcode != SQL_SUCCESS && retcode != SQL_SUCCESS_WITH_INFO)
|
||||
if (retcode == SQL_NO_DATA_FOUND)
|
||||
return(FALSE);
|
||||
else
|
||||
|
@@ -384,14 +384,21 @@ void wxPreviewControlBar::CreateButtons()
|
||||
"120%", "150%", "200%"
|
||||
};
|
||||
|
||||
m_zoomControl = new wxChoice(this, wxID_PREVIEW_ZOOM,
|
||||
wxPoint(x, y), wxSize(100, -1));
|
||||
|
||||
// Yes, this look stupid, but this is because gcc gives up otherwise.
|
||||
int n = WXSIZEOF(choices);
|
||||
// Someone is calling methods that do no exist in wxChoice!! So I'll just comment out for VA for now
|
||||
for ( int i = 0; i < n; i++ )
|
||||
m_zoomControl->Append(choices[i]);
|
||||
|
||||
wxString* strings = new wxString[n];
|
||||
int i;
|
||||
for (i = 0; i < n; i++ )
|
||||
strings[i] = choices[i];
|
||||
|
||||
m_zoomControl = new wxChoice(this, wxID_PREVIEW_ZOOM,
|
||||
wxPoint(x, y),
|
||||
wxSize(100, -1),
|
||||
n,
|
||||
strings
|
||||
);
|
||||
delete[] strings;
|
||||
|
||||
SetZoomControl(m_printPreview->GetZoom());
|
||||
}
|
||||
|
||||
|
@@ -36,7 +36,7 @@
|
||||
// treated as a static global class by VA and thus cannot use in this form.
|
||||
// Defined as a pointer and then explicity allocated and deallocated
|
||||
// by user if desired
|
||||
const wxValidator* wxDefaultValidator;
|
||||
const wxValidator* wxDefaultValidator = NULL;
|
||||
#else
|
||||
const wxValidator wxDefaultValidator;
|
||||
#endif
|
||||
|
@@ -154,7 +154,13 @@ bool wxWindowBase::CreateBase(wxWindowBase *parent,
|
||||
const wxPoint& WXUNUSED(pos),
|
||||
const wxSize& WXUNUSED(size),
|
||||
long style,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator* validator,
|
||||
# else
|
||||
const wxValidator& validator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name)
|
||||
{
|
||||
// m_isWindow is set to TRUE in wxWindowBase::Init() as well as many other
|
||||
@@ -589,6 +595,18 @@ void wxWindowBase::SetCaret(wxCaret *caret)
|
||||
// validators
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
# if defined(__VISAGECPP__)
|
||||
void wxWindowBase::SetValidator(const wxValidator* validator)
|
||||
{
|
||||
if ( m_windowValidator )
|
||||
delete m_windowValidator;
|
||||
|
||||
m_windowValidator = (wxValidator *)validator->Clone();
|
||||
|
||||
if ( m_windowValidator )
|
||||
m_windowValidator->SetWindow(this) ;
|
||||
}
|
||||
# else
|
||||
void wxWindowBase::SetValidator(const wxValidator& validator)
|
||||
{
|
||||
if ( m_windowValidator )
|
||||
@@ -599,6 +617,7 @@ void wxWindowBase::SetValidator(const wxValidator& validator)
|
||||
if ( m_windowValidator )
|
||||
m_windowValidator->SetWindow(this) ;
|
||||
}
|
||||
# endif // __VISAGECPP__
|
||||
#endif // wxUSE_VALIDATORS
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
@@ -895,14 +914,14 @@ bool wxWindowBase::Layout()
|
||||
{
|
||||
int w, h;
|
||||
GetClientSize(&w, &h);
|
||||
|
||||
|
||||
// If there is a sizer, use it instead of the constraints
|
||||
if ( GetSizer() )
|
||||
{
|
||||
GetSizer()->SetDimension( 0, 0, w, h );
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
if ( GetConstraints() )
|
||||
{
|
||||
GetConstraints()->width.SetValue(w);
|
||||
@@ -914,7 +933,7 @@ bool wxWindowBase::Layout()
|
||||
DoPhase(1); // Just one phase need if no sizers involved
|
||||
DoPhase(2);
|
||||
SetConstraintSizes(); // Recursively set the real window sizes
|
||||
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
@@ -1,6 +1,6 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: helpext.cpp
|
||||
// Purpose: an external help controller for wxWindows
|
||||
// Name: helpwxht.cpp
|
||||
// Purpose: A help controller using the wxHTML classes
|
||||
// Author: Karsten Ballueder
|
||||
// Modified by:
|
||||
// Created: 04/01/98
|
||||
|
@@ -956,7 +956,13 @@ END_EVENT_TABLE()
|
||||
wxListTextCtrl::wxListTextCtrl( wxWindow *parent, const wxWindowID id,
|
||||
bool *accept, wxString *res, wxListMainWindow *owner,
|
||||
const wxString &value, const wxPoint &pos, const wxSize &size,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
int style, const wxValidator* validator, const wxString &name ) :
|
||||
# else
|
||||
int style, const wxValidator& validator, const wxString &name ) :
|
||||
# endif
|
||||
#endif
|
||||
wxTextCtrl( parent, id, value, pos, size, style, validator, name )
|
||||
{
|
||||
m_res = res;
|
||||
@@ -2497,7 +2503,13 @@ wxListCtrl::~wxListCtrl()
|
||||
|
||||
bool wxListCtrl::Create( wxWindow *parent, wxWindowID id,
|
||||
const wxPoint &pos, const wxSize &size,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
long style, const wxValidator *validator,
|
||||
# else
|
||||
long style, const wxValidator &validator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString &name )
|
||||
{
|
||||
m_imageListNormal = (wxImageList *) NULL;
|
||||
|
@@ -196,7 +196,13 @@ END_EVENT_TABLE()
|
||||
wxTreeTextCtrl::wxTreeTextCtrl( wxWindow *parent, const wxWindowID id,
|
||||
bool *accept, wxString *res, wxTreeCtrl *owner,
|
||||
const wxString &value, const wxPoint &pos, const wxSize &size,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
int style, const wxValidator* validator, const wxString &name ) :
|
||||
# else
|
||||
int style, const wxValidator& validator, const wxString &name ) :
|
||||
# endif
|
||||
#endif
|
||||
wxTextCtrl( parent, id, value, pos, size, style, validator, name )
|
||||
{
|
||||
m_res = res;
|
||||
@@ -517,12 +523,25 @@ void wxTreeCtrl::Init()
|
||||
m_dragCount = 0;
|
||||
|
||||
m_renameTimer = new wxTreeRenameTimer( this );
|
||||
|
||||
m_normalFont = wxSystemSettings::GetSystemFont( wxSYS_DEFAULT_GUI_FONT );
|
||||
m_boldFont = wxFont( m_normalFont.GetPointSize(),
|
||||
m_normalFont.GetFamily(),
|
||||
m_normalFont.GetStyle(),
|
||||
wxBOLD,
|
||||
m_normalFont.GetUnderlined());
|
||||
}
|
||||
|
||||
bool wxTreeCtrl::Create(wxWindow *parent, wxWindowID id,
|
||||
const wxPoint& pos, const wxSize& size,
|
||||
long style,
|
||||
#if wxUSE_VALIDATORS
|
||||
# if defined(__VISAGECPP__)
|
||||
const wxValidator *validator,
|
||||
# else
|
||||
const wxValidator &validator,
|
||||
# endif
|
||||
#endif
|
||||
const wxString& name )
|
||||
{
|
||||
Init();
|
||||
@@ -1394,28 +1413,8 @@ int wxTreeCtrl::GetLineHeight(wxGenericTreeItem *item) const
|
||||
|
||||
void wxTreeCtrl::PaintItem(wxGenericTreeItem *item, wxDC& dc)
|
||||
{
|
||||
// render bold items in bold
|
||||
wxFont fontOld;
|
||||
wxFont fontNew;
|
||||
|
||||
if (item->IsBold())
|
||||
{
|
||||
fontOld = dc.GetFont();
|
||||
if (fontOld.Ok())
|
||||
{
|
||||
// VZ: is there any better way to make a bold variant of old font?
|
||||
fontNew = wxFont( fontOld.GetPointSize(),
|
||||
fontOld.GetFamily(),
|
||||
fontOld.GetStyle(),
|
||||
wxBOLD,
|
||||
fontOld.GetUnderlined());
|
||||
dc.SetFont(fontNew);
|
||||
}
|
||||
else
|
||||
{
|
||||
wxFAIL_MSG(wxT("wxDC::GetFont() failed!"));
|
||||
}
|
||||
}
|
||||
dc.SetFont(m_boldFont);
|
||||
|
||||
long text_w = 0;
|
||||
long text_h = 0;
|
||||
@@ -1448,11 +1447,8 @@ void wxTreeCtrl::PaintItem(wxGenericTreeItem *item, wxDC& dc)
|
||||
dc.DrawText( item->GetText(), image_w + item->GetX(), item->GetY()
|
||||
+ ((total_h > text_h) ? (total_h - text_h)/2 : 0));
|
||||
|
||||
// restore normal font for bold items
|
||||
if (fontOld.Ok())
|
||||
{
|
||||
dc.SetFont( fontOld);
|
||||
}
|
||||
// restore normal font
|
||||
dc.SetFont( m_normalFont );
|
||||
}
|
||||
|
||||
// Now y stands for the top of the item, whereas it used to stand for middle !
|
||||
@@ -1600,9 +1596,10 @@ void wxTreeCtrl::OnPaint( wxPaintEvent &WXUNUSED(event) )
|
||||
wxPaintDC dc(this);
|
||||
PrepareDC( dc );
|
||||
|
||||
dc.SetFont( wxSystemSettings::GetSystemFont( wxSYS_DEFAULT_GUI_FONT ) );
|
||||
|
||||
dc.SetFont( m_normalFont );
|
||||
dc.SetPen( m_dottedPen );
|
||||
|
||||
// this is now done dynamically
|
||||
//if(GetImageList() == NULL)
|
||||
// m_lineHeight = (int)(dc.GetCharHeight() + 4);
|
||||
|
||||
@@ -1999,33 +1996,14 @@ void wxTreeCtrl::CalculateSize( wxGenericTreeItem *item, wxDC &dc )
|
||||
long text_w = 0;
|
||||
long text_h = 0;
|
||||
|
||||
wxFont fontOld;
|
||||
wxFont fontNew;
|
||||
if (item->IsBold())
|
||||
{
|
||||
fontOld = dc.GetFont();
|
||||
if (fontOld.Ok())
|
||||
{
|
||||
// VZ: is there any better way to make a bold variant of old font?
|
||||
fontNew = wxFont( fontOld.GetPointSize(),
|
||||
fontOld.GetFamily(),
|
||||
fontOld.GetStyle(),
|
||||
wxBOLD,
|
||||
fontOld.GetUnderlined());
|
||||
dc.SetFont(fontNew);
|
||||
}
|
||||
else
|
||||
{
|
||||
wxFAIL_MSG(wxT("wxDC::GetFont() failed!"));
|
||||
}
|
||||
}
|
||||
dc.SetFont(m_boldFont);
|
||||
|
||||
dc.GetTextExtent( item->GetText(), &text_w, &text_h );
|
||||
text_h+=2;
|
||||
|
||||
// restore normal font for bold items
|
||||
if (fontOld.Ok())
|
||||
dc.SetFont( fontOld);
|
||||
// restore normal font
|
||||
dc.SetFont( m_normalFont );
|
||||
|
||||
int image_h = 0;
|
||||
int image_w = 0;
|
||||
@@ -2080,7 +2058,7 @@ void wxTreeCtrl::CalculatePositions()
|
||||
wxClientDC dc(this);
|
||||
PrepareDC( dc );
|
||||
|
||||
dc.SetFont( wxSystemSettings::GetSystemFont( wxSYS_DEFAULT_GUI_FONT ) );
|
||||
dc.SetFont( m_normalFont );
|
||||
|
||||
dc.SetPen( m_dottedPen );
|
||||
//if(GetImageList() == NULL)
|
||||
|
@@ -44,7 +44,7 @@ GdkAtom g_targetsAtom = 0;
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
/* The contents of a selection are returned in a GtkSelectionData
|
||||
structure. selection/target identify the request.
|
||||
structure. selection/target identify the request.
|
||||
type specifies the type of the return; if length < 0, and
|
||||
the data should be ignored. This structure has object semantics -
|
||||
no fields should be modified directly, they should not be created
|
||||
@@ -69,67 +69,58 @@ struct _GtkSelectionData
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
static void
|
||||
targets_selection_received( GtkWidget *WXUNUSED(widget),
|
||||
GtkSelectionData *selection_data,
|
||||
targets_selection_received( GtkWidget *WXUNUSED(widget),
|
||||
GtkSelectionData *selection_data,
|
||||
#if (GTK_MINOR_VERSION > 0)
|
||||
guint32 WXUNUSED(time),
|
||||
#endif
|
||||
wxClipboard *clipboard )
|
||||
{
|
||||
if (!wxTheClipboard)
|
||||
if ( wxTheClipboard && selection_data->length > 0 )
|
||||
{
|
||||
clipboard->m_waiting = FALSE;
|
||||
return;
|
||||
}
|
||||
|
||||
if (selection_data->length <= 0)
|
||||
{
|
||||
clipboard->m_waiting = FALSE;
|
||||
return;
|
||||
}
|
||||
|
||||
/* make sure we got the data in the correct form */
|
||||
if (selection_data->type != GDK_SELECTION_TYPE_ATOM)
|
||||
{
|
||||
clipboard->m_waiting = FALSE;
|
||||
return;
|
||||
}
|
||||
|
||||
/*
|
||||
wxDataFormat clip( selection_data->selection );
|
||||
wxLogDebug( wxT("selection received for targets, clipboard %s"), clip.GetId().c_str() );
|
||||
*/
|
||||
|
||||
// the atoms we received, holding a list of targets (= formats)
|
||||
GdkAtom *atoms = (GdkAtom *)selection_data->data;
|
||||
|
||||
for (unsigned int i=0; i<selection_data->length/sizeof(GdkAtom); i++)
|
||||
{
|
||||
wxDataFormat format( atoms[i] );
|
||||
|
||||
/*
|
||||
wxLogDebug( wxT("selection received for targets, format %s"), format.GetId().c_str() );
|
||||
*/
|
||||
|
||||
if (format == clipboard->m_targetRequested)
|
||||
/* make sure we got the data in the correct form */
|
||||
GdkAtom type = selection_data->type;
|
||||
if ( type != GDK_SELECTION_TYPE_ATOM )
|
||||
{
|
||||
clipboard->m_waiting = FALSE;
|
||||
clipboard->m_formatSupported = TRUE;
|
||||
return;
|
||||
}
|
||||
|
||||
/*
|
||||
wxDataFormat clip( selection_data->selection );
|
||||
wxLogDebug( wxT("selection received for targets, clipboard %s"), clip.GetId().c_str() );
|
||||
*/
|
||||
|
||||
// the atoms we received, holding a list of targets (= formats)
|
||||
GdkAtom *atoms = (GdkAtom *)selection_data->data;
|
||||
|
||||
for (unsigned int i=0; i<selection_data->length/sizeof(GdkAtom); i++)
|
||||
{
|
||||
wxDataFormat format( atoms[i] );
|
||||
|
||||
/*
|
||||
wxLogDebug( wxT("selection received for targets, format %s"), format.GetId().c_str() );
|
||||
*/
|
||||
|
||||
if (format == clipboard->m_targetRequested)
|
||||
{
|
||||
clipboard->m_waiting = FALSE;
|
||||
clipboard->m_formatSupported = TRUE;
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
clipboard->m_waiting = FALSE;
|
||||
return;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// "selection_received" for the actual data
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
static void
|
||||
selection_received( GtkWidget *WXUNUSED(widget),
|
||||
GtkSelectionData *selection_data,
|
||||
static void
|
||||
selection_received( GtkWidget *WXUNUSED(widget),
|
||||
GtkSelectionData *selection_data,
|
||||
#if (GTK_MINOR_VERSION > 0)
|
||||
guint32 WXUNUSED(time),
|
||||
#endif
|
||||
@@ -140,7 +131,7 @@ selection_received( GtkWidget *WXUNUSED(widget),
|
||||
clipboard->m_waiting = FALSE;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
wxDataObject *data_object = clipboard->m_receivedData;
|
||||
|
||||
if (!data_object)
|
||||
@@ -148,15 +139,15 @@ selection_received( GtkWidget *WXUNUSED(widget),
|
||||
clipboard->m_waiting = FALSE;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if (selection_data->length <= 0)
|
||||
{
|
||||
clipboard->m_waiting = FALSE;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
wxDataFormat format( selection_data->target );
|
||||
|
||||
|
||||
/* make sure we got the data in the correct format */
|
||||
if (!data_object->IsSupportedFormat( format ) )
|
||||
{
|
||||
@@ -171,9 +162,9 @@ selection_received( GtkWidget *WXUNUSED(widget),
|
||||
clipboard->m_waiting = FALSE;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
data_object->SetData( format, (size_t) selection_data->length, (const char*) selection_data->data );
|
||||
|
||||
|
||||
wxTheClipboard->m_formatSupported = TRUE;
|
||||
clipboard->m_waiting = FALSE;
|
||||
}
|
||||
@@ -186,7 +177,7 @@ static gint
|
||||
selection_clear_clip( GtkWidget *WXUNUSED(widget), GdkEventSelection *event )
|
||||
{
|
||||
if (!wxTheClipboard) return TRUE;
|
||||
|
||||
|
||||
if (event->selection == GDK_SELECTION_PRIMARY)
|
||||
{
|
||||
wxTheClipboard->m_ownsPrimarySelection = FALSE;
|
||||
@@ -201,20 +192,20 @@ selection_clear_clip( GtkWidget *WXUNUSED(widget), GdkEventSelection *event )
|
||||
wxTheClipboard->m_waiting = FALSE;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
if ((!wxTheClipboard->m_ownsPrimarySelection) &&
|
||||
(!wxTheClipboard->m_ownsClipboard))
|
||||
{
|
||||
/* the clipboard is no longer in our hands. we can the delete clipboard data. */
|
||||
if (wxTheClipboard->m_data)
|
||||
{
|
||||
wxLogDebug( wxT("wxClipboard will get cleared" ) );
|
||||
|
||||
wxLogDebug( wxT("wxClipboard will get cleared" ) );
|
||||
|
||||
delete wxTheClipboard->m_data;
|
||||
wxTheClipboard->m_data = (wxDataObject*) NULL;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
wxTheClipboard->m_waiting = FALSE;
|
||||
return TRUE;
|
||||
}
|
||||
@@ -224,18 +215,22 @@ selection_clear_clip( GtkWidget *WXUNUSED(widget), GdkEventSelection *event )
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
static void
|
||||
selection_handler( GtkWidget *WXUNUSED(widget), GtkSelectionData *selection_data, gpointer WXUNUSED(data) )
|
||||
selection_handler( GtkWidget *WXUNUSED(widget),
|
||||
GtkSelectionData *selection_data,
|
||||
guint WXUNUSED(info),
|
||||
guint WXUNUSED(time),
|
||||
gpointer WXUNUSED(data) )
|
||||
{
|
||||
if (!wxTheClipboard) return;
|
||||
|
||||
|
||||
if (!wxTheClipboard->m_data) return;
|
||||
|
||||
|
||||
wxDataObject *data = wxTheClipboard->m_data;
|
||||
|
||||
|
||||
wxDataFormat format( selection_data->target );
|
||||
|
||||
if (!data->IsSupportedFormat( format )) return;
|
||||
|
||||
|
||||
/* this will fail for composite formats */
|
||||
if (format.GetType() == wxDF_TEXT)
|
||||
{
|
||||
@@ -249,30 +244,30 @@ selection_handler( GtkWidget *WXUNUSED(widget), GtkSelectionData *selection_data
|
||||
const char *s = text.c_str();
|
||||
int len = (int) text.Length();
|
||||
#endif
|
||||
gtk_selection_data_set(
|
||||
selection_data,
|
||||
GDK_SELECTION_TYPE_STRING,
|
||||
gtk_selection_data_set(
|
||||
selection_data,
|
||||
GDK_SELECTION_TYPE_STRING,
|
||||
8*sizeof(gchar),
|
||||
(unsigned char*) (const char*) s,
|
||||
len );
|
||||
|
||||
len );
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
int size = data->GetDataSize( format );
|
||||
|
||||
|
||||
if (size == 0) return;
|
||||
|
||||
|
||||
char *d = new char[size];
|
||||
|
||||
|
||||
data->GetDataHere( selection_data->target, (void*) d );
|
||||
|
||||
gtk_selection_data_set(
|
||||
selection_data,
|
||||
GDK_SELECTION_TYPE_STRING,
|
||||
8*sizeof(gchar),
|
||||
gtk_selection_data_set(
|
||||
selection_data,
|
||||
GDK_SELECTION_TYPE_STRING,
|
||||
8*sizeof(gchar),
|
||||
(unsigned char*) d,
|
||||
size );
|
||||
size );
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
@@ -292,43 +287,43 @@ wxClipboard::wxClipboard()
|
||||
m_receivedData = (wxDataObject*) NULL;
|
||||
|
||||
/* we use m_targetsWidget to query what formats are available */
|
||||
|
||||
|
||||
m_targetsWidget = gtk_window_new( GTK_WINDOW_POPUP );
|
||||
gtk_widget_realize( m_targetsWidget );
|
||||
|
||||
gtk_signal_connect( GTK_OBJECT(m_targetsWidget),
|
||||
gtk_signal_connect( GTK_OBJECT(m_targetsWidget),
|
||||
"selection_received",
|
||||
GTK_SIGNAL_FUNC( targets_selection_received ),
|
||||
GTK_SIGNAL_FUNC( targets_selection_received ),
|
||||
(gpointer) this );
|
||||
|
||||
|
||||
/* we use m_clipboardWidget to get and to offer data */
|
||||
|
||||
|
||||
m_clipboardWidget = gtk_window_new( GTK_WINDOW_POPUP );
|
||||
gtk_widget_realize( m_clipboardWidget );
|
||||
|
||||
gtk_signal_connect( GTK_OBJECT(m_clipboardWidget),
|
||||
gtk_signal_connect( GTK_OBJECT(m_clipboardWidget),
|
||||
"selection_received",
|
||||
GTK_SIGNAL_FUNC( selection_received ),
|
||||
GTK_SIGNAL_FUNC( selection_received ),
|
||||
(gpointer) this );
|
||||
|
||||
gtk_signal_connect( GTK_OBJECT(m_clipboardWidget),
|
||||
gtk_signal_connect( GTK_OBJECT(m_clipboardWidget),
|
||||
"selection_clear_event",
|
||||
GTK_SIGNAL_FUNC( selection_clear_clip ),
|
||||
GTK_SIGNAL_FUNC( selection_clear_clip ),
|
||||
(gpointer) NULL );
|
||||
|
||||
|
||||
if (!g_clipboardAtom) g_clipboardAtom = gdk_atom_intern( "CLIPBOARD", FALSE );
|
||||
if (!g_targetsAtom) g_targetsAtom = gdk_atom_intern ("TARGETS", FALSE);
|
||||
|
||||
|
||||
m_formatSupported = FALSE;
|
||||
m_targetRequested = 0;
|
||||
|
||||
|
||||
m_usePrimary = FALSE;
|
||||
}
|
||||
|
||||
wxClipboard::~wxClipboard()
|
||||
{
|
||||
Clear();
|
||||
|
||||
Clear();
|
||||
|
||||
if (m_clipboardWidget) gtk_widget_destroy( m_clipboardWidget );
|
||||
if (m_targetsWidget) gtk_widget_destroy( m_targetsWidget );
|
||||
}
|
||||
@@ -341,41 +336,41 @@ void wxClipboard::Clear()
|
||||
/* disable GUI threads */
|
||||
wxapp_uninstall_thread_wakeup();
|
||||
#endif
|
||||
|
||||
|
||||
/* As we have data we also own the clipboard. Once we no longer own
|
||||
it, clear_selection is called which will set m_data to zero */
|
||||
if (gdk_selection_owner_get( g_clipboardAtom ) == m_clipboardWidget->window)
|
||||
{
|
||||
m_waiting = TRUE;
|
||||
|
||||
|
||||
gtk_selection_owner_set( (GtkWidget*) NULL, g_clipboardAtom,
|
||||
(guint32) GDK_CURRENT_TIME );
|
||||
|
||||
|
||||
while (m_waiting) gtk_main_iteration();
|
||||
}
|
||||
|
||||
|
||||
if (gdk_selection_owner_get( GDK_SELECTION_PRIMARY ) == m_clipboardWidget->window)
|
||||
{
|
||||
m_waiting = TRUE;
|
||||
|
||||
|
||||
gtk_selection_owner_set( (GtkWidget*) NULL, GDK_SELECTION_PRIMARY,
|
||||
(guint32) GDK_CURRENT_TIME );
|
||||
|
||||
|
||||
while (m_waiting) gtk_main_iteration();
|
||||
}
|
||||
|
||||
|
||||
if (m_data)
|
||||
{
|
||||
{
|
||||
delete m_data;
|
||||
m_data = (wxDataObject*) NULL;
|
||||
}
|
||||
|
||||
|
||||
#if wxUSE_THREADS
|
||||
/* re-enable GUI threads */
|
||||
wxapp_install_thread_wakeup();
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
m_targetRequested = 0;
|
||||
m_formatSupported = FALSE;
|
||||
}
|
||||
@@ -383,18 +378,18 @@ void wxClipboard::Clear()
|
||||
bool wxClipboard::Open()
|
||||
{
|
||||
wxCHECK_MSG( !m_open, FALSE, wxT("clipboard already open") );
|
||||
|
||||
|
||||
m_open = TRUE;
|
||||
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool wxClipboard::SetData( wxDataObject *data )
|
||||
{
|
||||
wxCHECK_MSG( m_open, FALSE, wxT("clipboard not open") );
|
||||
|
||||
|
||||
wxCHECK_MSG( data, FALSE, wxT("data is invalid") );
|
||||
|
||||
|
||||
Clear();
|
||||
|
||||
return AddData( data );
|
||||
@@ -403,12 +398,12 @@ bool wxClipboard::SetData( wxDataObject *data )
|
||||
bool wxClipboard::AddData( wxDataObject *data )
|
||||
{
|
||||
wxCHECK_MSG( m_open, FALSE, wxT("clipboard not open") );
|
||||
|
||||
|
||||
wxCHECK_MSG( data, FALSE, wxT("data is invalid") );
|
||||
|
||||
|
||||
/* we can only store one wxDataObject */
|
||||
Clear();
|
||||
|
||||
|
||||
m_data = data;
|
||||
|
||||
/* get formats from wxDataObjects */
|
||||
@@ -419,51 +414,51 @@ bool wxClipboard::AddData( wxDataObject *data )
|
||||
GdkAtom clipboard = m_usePrimary ? (GdkAtom)GDK_SELECTION_PRIMARY
|
||||
: g_clipboardAtom;
|
||||
|
||||
|
||||
|
||||
for (size_t i = 0; i < m_data->GetFormatCount(); i++)
|
||||
{
|
||||
wxLogDebug( wxT("wxClipboard now supports atom %s"), array[i].GetId().c_str() );
|
||||
|
||||
gtk_selection_add_target( GTK_WIDGET(m_clipboardWidget),
|
||||
clipboard,
|
||||
array[i],
|
||||
clipboard,
|
||||
array[i],
|
||||
0 ); /* what is info ? */
|
||||
}
|
||||
|
||||
delete[] array;
|
||||
|
||||
gtk_signal_connect( GTK_OBJECT(m_clipboardWidget),
|
||||
|
||||
gtk_signal_connect( GTK_OBJECT(m_clipboardWidget),
|
||||
"selection_get",
|
||||
GTK_SIGNAL_FUNC(selection_handler),
|
||||
GTK_SIGNAL_FUNC(selection_handler),
|
||||
(gpointer) NULL );
|
||||
|
||||
#if wxUSE_THREADS
|
||||
/* disable GUI threads */
|
||||
wxapp_uninstall_thread_wakeup();
|
||||
#endif
|
||||
|
||||
|
||||
/* Tell the world we offer clipboard data */
|
||||
bool res = (gtk_selection_owner_set( m_clipboardWidget,
|
||||
clipboard,
|
||||
(guint32) GDK_CURRENT_TIME ));
|
||||
|
||||
|
||||
if (m_usePrimary)
|
||||
m_ownsPrimarySelection = res;
|
||||
else
|
||||
m_ownsClipboard = res;
|
||||
|
||||
|
||||
#if wxUSE_THREADS
|
||||
/* re-enable GUI threads */
|
||||
wxapp_install_thread_wakeup();
|
||||
#endif
|
||||
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
void wxClipboard::Close()
|
||||
{
|
||||
wxCHECK_RET( m_open, wxT("clipboard not open") );
|
||||
|
||||
|
||||
m_open = FALSE;
|
||||
}
|
||||
|
||||
@@ -475,123 +470,125 @@ bool wxClipboard::IsOpened() const
|
||||
bool wxClipboard::IsSupported( const wxDataFormat& format )
|
||||
{
|
||||
/* reentrance problems */
|
||||
if (m_open) return TRUE;
|
||||
|
||||
if (m_waiting) return FALSE;
|
||||
|
||||
/* store requested format to be asked for by callbacks */
|
||||
m_targetRequested = format;
|
||||
|
||||
|
||||
wxLogDebug( wxT("wxClipboard:IsSupported: requested format: %s"), format.GetId().c_str() );
|
||||
|
||||
wxCHECK_MSG( m_targetRequested, FALSE, wxT("invalid clipboard format") );
|
||||
|
||||
|
||||
m_formatSupported = FALSE;
|
||||
|
||||
/* perform query. this will set m_formatSupported to
|
||||
|
||||
/* perform query. this will set m_formatSupported to
|
||||
TRUE if m_targetRequested is supported.
|
||||
alsom we have to wait for the "answer" from the
|
||||
also, we have to wait for the "answer" from the
|
||||
clipboard owner which is an asynchronous process.
|
||||
therefore we set m_waiting = TRUE here and wait
|
||||
until the callback "targets_selection_received"
|
||||
until the callback "targets_selection_received"
|
||||
sets it to FALSE */
|
||||
|
||||
m_waiting = TRUE;
|
||||
|
||||
gtk_selection_convert( m_targetsWidget,
|
||||
m_usePrimary ? (GdkAtom)GDK_SELECTION_PRIMARY
|
||||
: g_clipboardAtom,
|
||||
: g_clipboardAtom,
|
||||
g_targetsAtom,
|
||||
(guint32) GDK_CURRENT_TIME );
|
||||
|
||||
while (m_waiting) gtk_main_iteration();
|
||||
|
||||
|
||||
if (!m_formatSupported) return FALSE;
|
||||
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
bool wxClipboard::GetData( wxDataObject& data )
|
||||
{
|
||||
wxCHECK_MSG( m_open, FALSE, wxT("clipboard not open") );
|
||||
|
||||
|
||||
/* get formats from wxDataObjects */
|
||||
wxDataFormat *array = new wxDataFormat[ data.GetFormatCount() ];
|
||||
data.GetAllFormats( array );
|
||||
|
||||
|
||||
for (size_t i = 0; i < data.GetFormatCount(); i++)
|
||||
{
|
||||
wxDataFormat format( array[i] );
|
||||
|
||||
|
||||
wxLogDebug( wxT("wxClipboard::GetData: requested format: %s"), format.GetId().c_str() );
|
||||
|
||||
|
||||
/* is data supported by clipboard ? */
|
||||
|
||||
|
||||
/* store requested format to be asked for by callbacks */
|
||||
m_targetRequested = format;
|
||||
|
||||
|
||||
wxCHECK_MSG( m_targetRequested, FALSE, wxT("invalid clipboard format") );
|
||||
|
||||
|
||||
m_formatSupported = FALSE;
|
||||
|
||||
/* perform query. this will set m_formatSupported to
|
||||
|
||||
/* perform query. this will set m_formatSupported to
|
||||
TRUE if m_targetRequested is supported.
|
||||
also, we have to wait for the "answer" from the
|
||||
also, we have to wait for the "answer" from the
|
||||
clipboard owner which is an asynchronous process.
|
||||
therefore we set m_waiting = TRUE here and wait
|
||||
until the callback "targets_selection_received"
|
||||
until the callback "targets_selection_received"
|
||||
sets it to FALSE */
|
||||
|
||||
m_waiting = TRUE;
|
||||
|
||||
gtk_selection_convert( m_targetsWidget,
|
||||
m_usePrimary ? (GdkAtom)GDK_SELECTION_PRIMARY
|
||||
: g_clipboardAtom,
|
||||
: g_clipboardAtom,
|
||||
g_targetsAtom,
|
||||
(guint32) GDK_CURRENT_TIME );
|
||||
|
||||
while (m_waiting) gtk_main_iteration();
|
||||
|
||||
|
||||
if (!m_formatSupported) continue;
|
||||
|
||||
|
||||
/* store pointer to data object to be filled up by callbacks */
|
||||
m_receivedData = &data;
|
||||
|
||||
|
||||
/* store requested format to be asked for by callbacks */
|
||||
m_targetRequested = format;
|
||||
|
||||
|
||||
wxCHECK_MSG( m_targetRequested, FALSE, wxT("invalid clipboard format") );
|
||||
|
||||
|
||||
/* start query */
|
||||
m_formatSupported = FALSE;
|
||||
|
||||
/* ask for clipboard contents. this will set
|
||||
m_formatSupported to TRUE if m_targetRequested
|
||||
|
||||
/* ask for clipboard contents. this will set
|
||||
m_formatSupported to TRUE if m_targetRequested
|
||||
is supported.
|
||||
also, we have to wait for the "answer" from the
|
||||
also, we have to wait for the "answer" from the
|
||||
clipboard owner which is an asynchronous process.
|
||||
therefore we set m_waiting = TRUE here and wait
|
||||
until the callback "targets_selection_received"
|
||||
until the callback "targets_selection_received"
|
||||
sets it to FALSE */
|
||||
|
||||
m_waiting = TRUE;
|
||||
|
||||
wxLogDebug( wxT("wxClipboard::GetData: format found, start convert") );
|
||||
|
||||
|
||||
gtk_selection_convert( m_clipboardWidget,
|
||||
m_usePrimary ? (GdkAtom)GDK_SELECTION_PRIMARY
|
||||
: g_clipboardAtom,
|
||||
: g_clipboardAtom,
|
||||
m_targetRequested,
|
||||
(guint32) GDK_CURRENT_TIME );
|
||||
|
||||
|
||||
while (m_waiting) gtk_main_iteration();
|
||||
|
||||
/* this is a true error as we checked for the presence of such data before */
|
||||
wxCHECK_MSG( m_formatSupported, FALSE, wxT("error retrieving data from clipboard") );
|
||||
|
||||
|
||||
/* return success */
|
||||
delete[] array;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
wxLogDebug( wxT("wxClipboard::GetData: format not found") );
|
||||
|
||||
|
||||
/* return failure */
|
||||
delete[] array;
|
||||
return FALSE;
|
||||
|
@@ -40,9 +40,11 @@
|
||||
// Yuck this is really BOTH site and platform dependent
|
||||
// so we should use some other strategy!
|
||||
#ifdef __SUN__
|
||||
#define DEFAULT_XRESOURCE_DIR wxT("/usr/openwin/lib/app-defaults")
|
||||
# define DEFAULT_XRESOURCE_DIR wxT("/usr/openwin/lib/app-defaults")
|
||||
// prototype missing in header files on Solaris 2.5
|
||||
extern int gethostname(char *name, size_t len);
|
||||
#else
|
||||
#define DEFAULT_XRESOURCE_DIR wxT("/usr/lib/X11/app-defaults")
|
||||
# define DEFAULT_XRESOURCE_DIR wxT("/usr/lib/X11/app-defaults")
|
||||
#endif
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
|
@@ -44,7 +44,7 @@ GdkAtom g_targetsAtom = 0;
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
/* The contents of a selection are returned in a GtkSelectionData
|
||||
structure. selection/target identify the request.
|
||||
structure. selection/target identify the request.
|
||||
type specifies the type of the return; if length < 0, and
|
||||
the data should be ignored. This structure has object semantics -
|
||||
no fields should be modified directly, they should not be created
|
||||
@@ -69,67 +69,58 @@ struct _GtkSelectionData
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
static void
|
||||
targets_selection_received( GtkWidget *WXUNUSED(widget),
|
||||
GtkSelectionData *selection_data,
|
||||
targets_selection_received( GtkWidget *WXUNUSED(widget),
|
||||
GtkSelectionData *selection_data,
|
||||
#if (GTK_MINOR_VERSION > 0)
|
||||
guint32 WXUNUSED(time),
|
||||
#endif
|
||||
wxClipboard *clipboard )
|
||||
{
|
||||
if (!wxTheClipboard)
|
||||
if ( wxTheClipboard && selection_data->length > 0 )
|
||||
{
|
||||
clipboard->m_waiting = FALSE;
|
||||
return;
|
||||
}
|
||||
|
||||
if (selection_data->length <= 0)
|
||||
{
|
||||
clipboard->m_waiting = FALSE;
|
||||
return;
|
||||
}
|
||||
|
||||
/* make sure we got the data in the correct form */
|
||||
if (selection_data->type != GDK_SELECTION_TYPE_ATOM)
|
||||
{
|
||||
clipboard->m_waiting = FALSE;
|
||||
return;
|
||||
}
|
||||
|
||||
/*
|
||||
wxDataFormat clip( selection_data->selection );
|
||||
wxLogDebug( wxT("selection received for targets, clipboard %s"), clip.GetId().c_str() );
|
||||
*/
|
||||
|
||||
// the atoms we received, holding a list of targets (= formats)
|
||||
GdkAtom *atoms = (GdkAtom *)selection_data->data;
|
||||
|
||||
for (unsigned int i=0; i<selection_data->length/sizeof(GdkAtom); i++)
|
||||
{
|
||||
wxDataFormat format( atoms[i] );
|
||||
|
||||
/*
|
||||
wxLogDebug( wxT("selection received for targets, format %s"), format.GetId().c_str() );
|
||||
*/
|
||||
|
||||
if (format == clipboard->m_targetRequested)
|
||||
/* make sure we got the data in the correct form */
|
||||
GdkAtom type = selection_data->type;
|
||||
if ( type != GDK_SELECTION_TYPE_ATOM )
|
||||
{
|
||||
clipboard->m_waiting = FALSE;
|
||||
clipboard->m_formatSupported = TRUE;
|
||||
return;
|
||||
}
|
||||
|
||||
/*
|
||||
wxDataFormat clip( selection_data->selection );
|
||||
wxLogDebug( wxT("selection received for targets, clipboard %s"), clip.GetId().c_str() );
|
||||
*/
|
||||
|
||||
// the atoms we received, holding a list of targets (= formats)
|
||||
GdkAtom *atoms = (GdkAtom *)selection_data->data;
|
||||
|
||||
for (unsigned int i=0; i<selection_data->length/sizeof(GdkAtom); i++)
|
||||
{
|
||||
wxDataFormat format( atoms[i] );
|
||||
|
||||
/*
|
||||
wxLogDebug( wxT("selection received for targets, format %s"), format.GetId().c_str() );
|
||||
*/
|
||||
|
||||
if (format == clipboard->m_targetRequested)
|
||||
{
|
||||
clipboard->m_waiting = FALSE;
|
||||
clipboard->m_formatSupported = TRUE;
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
clipboard->m_waiting = FALSE;
|
||||
return;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// "selection_received" for the actual data
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
static void
|
||||
selection_received( GtkWidget *WXUNUSED(widget),
|
||||
GtkSelectionData *selection_data,
|
||||
static void
|
||||
selection_received( GtkWidget *WXUNUSED(widget),
|
||||
GtkSelectionData *selection_data,
|
||||
#if (GTK_MINOR_VERSION > 0)
|
||||
guint32 WXUNUSED(time),
|
||||
#endif
|
||||
@@ -140,7 +131,7 @@ selection_received( GtkWidget *WXUNUSED(widget),
|
||||
clipboard->m_waiting = FALSE;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
wxDataObject *data_object = clipboard->m_receivedData;
|
||||
|
||||
if (!data_object)
|
||||
@@ -148,15 +139,15 @@ selection_received( GtkWidget *WXUNUSED(widget),
|
||||
clipboard->m_waiting = FALSE;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if (selection_data->length <= 0)
|
||||
{
|
||||
clipboard->m_waiting = FALSE;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
wxDataFormat format( selection_data->target );
|
||||
|
||||
|
||||
/* make sure we got the data in the correct format */
|
||||
if (!data_object->IsSupportedFormat( format ) )
|
||||
{
|
||||
@@ -171,9 +162,9 @@ selection_received( GtkWidget *WXUNUSED(widget),
|
||||
clipboard->m_waiting = FALSE;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
data_object->SetData( format, (size_t) selection_data->length, (const char*) selection_data->data );
|
||||
|
||||
|
||||
wxTheClipboard->m_formatSupported = TRUE;
|
||||
clipboard->m_waiting = FALSE;
|
||||
}
|
||||
@@ -186,7 +177,7 @@ static gint
|
||||
selection_clear_clip( GtkWidget *WXUNUSED(widget), GdkEventSelection *event )
|
||||
{
|
||||
if (!wxTheClipboard) return TRUE;
|
||||
|
||||
|
||||
if (event->selection == GDK_SELECTION_PRIMARY)
|
||||
{
|
||||
wxTheClipboard->m_ownsPrimarySelection = FALSE;
|
||||
@@ -201,20 +192,20 @@ selection_clear_clip( GtkWidget *WXUNUSED(widget), GdkEventSelection *event )
|
||||
wxTheClipboard->m_waiting = FALSE;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
if ((!wxTheClipboard->m_ownsPrimarySelection) &&
|
||||
(!wxTheClipboard->m_ownsClipboard))
|
||||
{
|
||||
/* the clipboard is no longer in our hands. we can the delete clipboard data. */
|
||||
if (wxTheClipboard->m_data)
|
||||
{
|
||||
wxLogDebug( wxT("wxClipboard will get cleared" ) );
|
||||
|
||||
wxLogDebug( wxT("wxClipboard will get cleared" ) );
|
||||
|
||||
delete wxTheClipboard->m_data;
|
||||
wxTheClipboard->m_data = (wxDataObject*) NULL;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
wxTheClipboard->m_waiting = FALSE;
|
||||
return TRUE;
|
||||
}
|
||||
@@ -224,18 +215,22 @@ selection_clear_clip( GtkWidget *WXUNUSED(widget), GdkEventSelection *event )
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
static void
|
||||
selection_handler( GtkWidget *WXUNUSED(widget), GtkSelectionData *selection_data, gpointer WXUNUSED(data) )
|
||||
selection_handler( GtkWidget *WXUNUSED(widget),
|
||||
GtkSelectionData *selection_data,
|
||||
guint WXUNUSED(info),
|
||||
guint WXUNUSED(time),
|
||||
gpointer WXUNUSED(data) )
|
||||
{
|
||||
if (!wxTheClipboard) return;
|
||||
|
||||
|
||||
if (!wxTheClipboard->m_data) return;
|
||||
|
||||
|
||||
wxDataObject *data = wxTheClipboard->m_data;
|
||||
|
||||
|
||||
wxDataFormat format( selection_data->target );
|
||||
|
||||
if (!data->IsSupportedFormat( format )) return;
|
||||
|
||||
|
||||
/* this will fail for composite formats */
|
||||
if (format.GetType() == wxDF_TEXT)
|
||||
{
|
||||
@@ -249,30 +244,30 @@ selection_handler( GtkWidget *WXUNUSED(widget), GtkSelectionData *selection_data
|
||||
const char *s = text.c_str();
|
||||
int len = (int) text.Length();
|
||||
#endif
|
||||
gtk_selection_data_set(
|
||||
selection_data,
|
||||
GDK_SELECTION_TYPE_STRING,
|
||||
gtk_selection_data_set(
|
||||
selection_data,
|
||||
GDK_SELECTION_TYPE_STRING,
|
||||
8*sizeof(gchar),
|
||||
(unsigned char*) (const char*) s,
|
||||
len );
|
||||
|
||||
len );
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
int size = data->GetDataSize( format );
|
||||
|
||||
|
||||
if (size == 0) return;
|
||||
|
||||
|
||||
char *d = new char[size];
|
||||
|
||||
|
||||
data->GetDataHere( selection_data->target, (void*) d );
|
||||
|
||||
gtk_selection_data_set(
|
||||
selection_data,
|
||||
GDK_SELECTION_TYPE_STRING,
|
||||
8*sizeof(gchar),
|
||||
gtk_selection_data_set(
|
||||
selection_data,
|
||||
GDK_SELECTION_TYPE_STRING,
|
||||
8*sizeof(gchar),
|
||||
(unsigned char*) d,
|
||||
size );
|
||||
size );
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
@@ -292,43 +287,43 @@ wxClipboard::wxClipboard()
|
||||
m_receivedData = (wxDataObject*) NULL;
|
||||
|
||||
/* we use m_targetsWidget to query what formats are available */
|
||||
|
||||
|
||||
m_targetsWidget = gtk_window_new( GTK_WINDOW_POPUP );
|
||||
gtk_widget_realize( m_targetsWidget );
|
||||
|
||||
gtk_signal_connect( GTK_OBJECT(m_targetsWidget),
|
||||
gtk_signal_connect( GTK_OBJECT(m_targetsWidget),
|
||||
"selection_received",
|
||||
GTK_SIGNAL_FUNC( targets_selection_received ),
|
||||
GTK_SIGNAL_FUNC( targets_selection_received ),
|
||||
(gpointer) this );
|
||||
|
||||
|
||||
/* we use m_clipboardWidget to get and to offer data */
|
||||
|
||||
|
||||
m_clipboardWidget = gtk_window_new( GTK_WINDOW_POPUP );
|
||||
gtk_widget_realize( m_clipboardWidget );
|
||||
|
||||
gtk_signal_connect( GTK_OBJECT(m_clipboardWidget),
|
||||
gtk_signal_connect( GTK_OBJECT(m_clipboardWidget),
|
||||
"selection_received",
|
||||
GTK_SIGNAL_FUNC( selection_received ),
|
||||
GTK_SIGNAL_FUNC( selection_received ),
|
||||
(gpointer) this );
|
||||
|
||||
gtk_signal_connect( GTK_OBJECT(m_clipboardWidget),
|
||||
gtk_signal_connect( GTK_OBJECT(m_clipboardWidget),
|
||||
"selection_clear_event",
|
||||
GTK_SIGNAL_FUNC( selection_clear_clip ),
|
||||
GTK_SIGNAL_FUNC( selection_clear_clip ),
|
||||
(gpointer) NULL );
|
||||
|
||||
|
||||
if (!g_clipboardAtom) g_clipboardAtom = gdk_atom_intern( "CLIPBOARD", FALSE );
|
||||
if (!g_targetsAtom) g_targetsAtom = gdk_atom_intern ("TARGETS", FALSE);
|
||||
|
||||
|
||||
m_formatSupported = FALSE;
|
||||
m_targetRequested = 0;
|
||||
|
||||
|
||||
m_usePrimary = FALSE;
|
||||
}
|
||||
|
||||
wxClipboard::~wxClipboard()
|
||||
{
|
||||
Clear();
|
||||
|
||||
Clear();
|
||||
|
||||
if (m_clipboardWidget) gtk_widget_destroy( m_clipboardWidget );
|
||||
if (m_targetsWidget) gtk_widget_destroy( m_targetsWidget );
|
||||
}
|
||||
@@ -341,41 +336,41 @@ void wxClipboard::Clear()
|
||||
/* disable GUI threads */
|
||||
wxapp_uninstall_thread_wakeup();
|
||||
#endif
|
||||
|
||||
|
||||
/* As we have data we also own the clipboard. Once we no longer own
|
||||
it, clear_selection is called which will set m_data to zero */
|
||||
if (gdk_selection_owner_get( g_clipboardAtom ) == m_clipboardWidget->window)
|
||||
{
|
||||
m_waiting = TRUE;
|
||||
|
||||
|
||||
gtk_selection_owner_set( (GtkWidget*) NULL, g_clipboardAtom,
|
||||
(guint32) GDK_CURRENT_TIME );
|
||||
|
||||
|
||||
while (m_waiting) gtk_main_iteration();
|
||||
}
|
||||
|
||||
|
||||
if (gdk_selection_owner_get( GDK_SELECTION_PRIMARY ) == m_clipboardWidget->window)
|
||||
{
|
||||
m_waiting = TRUE;
|
||||
|
||||
|
||||
gtk_selection_owner_set( (GtkWidget*) NULL, GDK_SELECTION_PRIMARY,
|
||||
(guint32) GDK_CURRENT_TIME );
|
||||
|
||||
|
||||
while (m_waiting) gtk_main_iteration();
|
||||
}
|
||||
|
||||
|
||||
if (m_data)
|
||||
{
|
||||
{
|
||||
delete m_data;
|
||||
m_data = (wxDataObject*) NULL;
|
||||
}
|
||||
|
||||
|
||||
#if wxUSE_THREADS
|
||||
/* re-enable GUI threads */
|
||||
wxapp_install_thread_wakeup();
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
m_targetRequested = 0;
|
||||
m_formatSupported = FALSE;
|
||||
}
|
||||
@@ -383,18 +378,18 @@ void wxClipboard::Clear()
|
||||
bool wxClipboard::Open()
|
||||
{
|
||||
wxCHECK_MSG( !m_open, FALSE, wxT("clipboard already open") );
|
||||
|
||||
|
||||
m_open = TRUE;
|
||||
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
bool wxClipboard::SetData( wxDataObject *data )
|
||||
{
|
||||
wxCHECK_MSG( m_open, FALSE, wxT("clipboard not open") );
|
||||
|
||||
|
||||
wxCHECK_MSG( data, FALSE, wxT("data is invalid") );
|
||||
|
||||
|
||||
Clear();
|
||||
|
||||
return AddData( data );
|
||||
@@ -403,12 +398,12 @@ bool wxClipboard::SetData( wxDataObject *data )
|
||||
bool wxClipboard::AddData( wxDataObject *data )
|
||||
{
|
||||
wxCHECK_MSG( m_open, FALSE, wxT("clipboard not open") );
|
||||
|
||||
|
||||
wxCHECK_MSG( data, FALSE, wxT("data is invalid") );
|
||||
|
||||
|
||||
/* we can only store one wxDataObject */
|
||||
Clear();
|
||||
|
||||
|
||||
m_data = data;
|
||||
|
||||
/* get formats from wxDataObjects */
|
||||
@@ -419,51 +414,51 @@ bool wxClipboard::AddData( wxDataObject *data )
|
||||
GdkAtom clipboard = m_usePrimary ? (GdkAtom)GDK_SELECTION_PRIMARY
|
||||
: g_clipboardAtom;
|
||||
|
||||
|
||||
|
||||
for (size_t i = 0; i < m_data->GetFormatCount(); i++)
|
||||
{
|
||||
wxLogDebug( wxT("wxClipboard now supports atom %s"), array[i].GetId().c_str() );
|
||||
|
||||
gtk_selection_add_target( GTK_WIDGET(m_clipboardWidget),
|
||||
clipboard,
|
||||
array[i],
|
||||
clipboard,
|
||||
array[i],
|
||||
0 ); /* what is info ? */
|
||||
}
|
||||
|
||||
delete[] array;
|
||||
|
||||
gtk_signal_connect( GTK_OBJECT(m_clipboardWidget),
|
||||
|
||||
gtk_signal_connect( GTK_OBJECT(m_clipboardWidget),
|
||||
"selection_get",
|
||||
GTK_SIGNAL_FUNC(selection_handler),
|
||||
GTK_SIGNAL_FUNC(selection_handler),
|
||||
(gpointer) NULL );
|
||||
|
||||
#if wxUSE_THREADS
|
||||
/* disable GUI threads */
|
||||
wxapp_uninstall_thread_wakeup();
|
||||
#endif
|
||||
|
||||
|
||||
/* Tell the world we offer clipboard data */
|
||||
bool res = (gtk_selection_owner_set( m_clipboardWidget,
|
||||
clipboard,
|
||||
(guint32) GDK_CURRENT_TIME ));
|
||||
|
||||
|
||||
if (m_usePrimary)
|
||||
m_ownsPrimarySelection = res;
|
||||
else
|
||||
m_ownsClipboard = res;
|
||||
|
||||
|
||||
#if wxUSE_THREADS
|
||||
/* re-enable GUI threads */
|
||||
wxapp_install_thread_wakeup();
|
||||
#endif
|
||||
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
void wxClipboard::Close()
|
||||
{
|
||||
wxCHECK_RET( m_open, wxT("clipboard not open") );
|
||||
|
||||
|
||||
m_open = FALSE;
|
||||
}
|
||||
|
||||
@@ -475,123 +470,125 @@ bool wxClipboard::IsOpened() const
|
||||
bool wxClipboard::IsSupported( const wxDataFormat& format )
|
||||
{
|
||||
/* reentrance problems */
|
||||
if (m_open) return TRUE;
|
||||
|
||||
if (m_waiting) return FALSE;
|
||||
|
||||
/* store requested format to be asked for by callbacks */
|
||||
m_targetRequested = format;
|
||||
|
||||
|
||||
wxLogDebug( wxT("wxClipboard:IsSupported: requested format: %s"), format.GetId().c_str() );
|
||||
|
||||
wxCHECK_MSG( m_targetRequested, FALSE, wxT("invalid clipboard format") );
|
||||
|
||||
|
||||
m_formatSupported = FALSE;
|
||||
|
||||
/* perform query. this will set m_formatSupported to
|
||||
|
||||
/* perform query. this will set m_formatSupported to
|
||||
TRUE if m_targetRequested is supported.
|
||||
alsom we have to wait for the "answer" from the
|
||||
also, we have to wait for the "answer" from the
|
||||
clipboard owner which is an asynchronous process.
|
||||
therefore we set m_waiting = TRUE here and wait
|
||||
until the callback "targets_selection_received"
|
||||
until the callback "targets_selection_received"
|
||||
sets it to FALSE */
|
||||
|
||||
m_waiting = TRUE;
|
||||
|
||||
gtk_selection_convert( m_targetsWidget,
|
||||
m_usePrimary ? (GdkAtom)GDK_SELECTION_PRIMARY
|
||||
: g_clipboardAtom,
|
||||
: g_clipboardAtom,
|
||||
g_targetsAtom,
|
||||
(guint32) GDK_CURRENT_TIME );
|
||||
|
||||
while (m_waiting) gtk_main_iteration();
|
||||
|
||||
|
||||
if (!m_formatSupported) return FALSE;
|
||||
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
bool wxClipboard::GetData( wxDataObject& data )
|
||||
{
|
||||
wxCHECK_MSG( m_open, FALSE, wxT("clipboard not open") );
|
||||
|
||||
|
||||
/* get formats from wxDataObjects */
|
||||
wxDataFormat *array = new wxDataFormat[ data.GetFormatCount() ];
|
||||
data.GetAllFormats( array );
|
||||
|
||||
|
||||
for (size_t i = 0; i < data.GetFormatCount(); i++)
|
||||
{
|
||||
wxDataFormat format( array[i] );
|
||||
|
||||
|
||||
wxLogDebug( wxT("wxClipboard::GetData: requested format: %s"), format.GetId().c_str() );
|
||||
|
||||
|
||||
/* is data supported by clipboard ? */
|
||||
|
||||
|
||||
/* store requested format to be asked for by callbacks */
|
||||
m_targetRequested = format;
|
||||
|
||||
|
||||
wxCHECK_MSG( m_targetRequested, FALSE, wxT("invalid clipboard format") );
|
||||
|
||||
|
||||
m_formatSupported = FALSE;
|
||||
|
||||
/* perform query. this will set m_formatSupported to
|
||||
|
||||
/* perform query. this will set m_formatSupported to
|
||||
TRUE if m_targetRequested is supported.
|
||||
also, we have to wait for the "answer" from the
|
||||
also, we have to wait for the "answer" from the
|
||||
clipboard owner which is an asynchronous process.
|
||||
therefore we set m_waiting = TRUE here and wait
|
||||
until the callback "targets_selection_received"
|
||||
until the callback "targets_selection_received"
|
||||
sets it to FALSE */
|
||||
|
||||
m_waiting = TRUE;
|
||||
|
||||
gtk_selection_convert( m_targetsWidget,
|
||||
m_usePrimary ? (GdkAtom)GDK_SELECTION_PRIMARY
|
||||
: g_clipboardAtom,
|
||||
: g_clipboardAtom,
|
||||
g_targetsAtom,
|
||||
(guint32) GDK_CURRENT_TIME );
|
||||
|
||||
while (m_waiting) gtk_main_iteration();
|
||||
|
||||
|
||||
if (!m_formatSupported) continue;
|
||||
|
||||
|
||||
/* store pointer to data object to be filled up by callbacks */
|
||||
m_receivedData = &data;
|
||||
|
||||
|
||||
/* store requested format to be asked for by callbacks */
|
||||
m_targetRequested = format;
|
||||
|
||||
|
||||
wxCHECK_MSG( m_targetRequested, FALSE, wxT("invalid clipboard format") );
|
||||
|
||||
|
||||
/* start query */
|
||||
m_formatSupported = FALSE;
|
||||
|
||||
/* ask for clipboard contents. this will set
|
||||
m_formatSupported to TRUE if m_targetRequested
|
||||
|
||||
/* ask for clipboard contents. this will set
|
||||
m_formatSupported to TRUE if m_targetRequested
|
||||
is supported.
|
||||
also, we have to wait for the "answer" from the
|
||||
also, we have to wait for the "answer" from the
|
||||
clipboard owner which is an asynchronous process.
|
||||
therefore we set m_waiting = TRUE here and wait
|
||||
until the callback "targets_selection_received"
|
||||
until the callback "targets_selection_received"
|
||||
sets it to FALSE */
|
||||
|
||||
m_waiting = TRUE;
|
||||
|
||||
wxLogDebug( wxT("wxClipboard::GetData: format found, start convert") );
|
||||
|
||||
|
||||
gtk_selection_convert( m_clipboardWidget,
|
||||
m_usePrimary ? (GdkAtom)GDK_SELECTION_PRIMARY
|
||||
: g_clipboardAtom,
|
||||
: g_clipboardAtom,
|
||||
m_targetRequested,
|
||||
(guint32) GDK_CURRENT_TIME );
|
||||
|
||||
|
||||
while (m_waiting) gtk_main_iteration();
|
||||
|
||||
/* this is a true error as we checked for the presence of such data before */
|
||||
wxCHECK_MSG( m_formatSupported, FALSE, wxT("error retrieving data from clipboard") );
|
||||
|
||||
|
||||
/* return success */
|
||||
delete[] array;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
wxLogDebug( wxT("wxClipboard::GetData: format not found") );
|
||||
|
||||
|
||||
/* return failure */
|
||||
delete[] array;
|
||||
return FALSE;
|
||||
|
@@ -40,9 +40,11 @@
|
||||
// Yuck this is really BOTH site and platform dependent
|
||||
// so we should use some other strategy!
|
||||
#ifdef __SUN__
|
||||
#define DEFAULT_XRESOURCE_DIR wxT("/usr/openwin/lib/app-defaults")
|
||||
# define DEFAULT_XRESOURCE_DIR wxT("/usr/openwin/lib/app-defaults")
|
||||
// prototype missing in header files on Solaris 2.5
|
||||
extern int gethostname(char *name, size_t len);
|
||||
#else
|
||||
#define DEFAULT_XRESOURCE_DIR wxT("/usr/lib/X11/app-defaults")
|
||||
# define DEFAULT_XRESOURCE_DIR wxT("/usr/lib/X11/app-defaults")
|
||||
#endif
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
|
@@ -142,6 +142,14 @@ bool wxHtmlHelpFrame::Create(wxWindow* parent, wxWindowID id, const wxString& ti
|
||||
|
||||
wxFrame::Create(parent, id, _("Help"), wxPoint(m_Cfg.x, m_Cfg.y), wxSize(m_Cfg.w, m_Cfg.h));
|
||||
|
||||
#if defined(__WXMSW__) || (__WXPM__)
|
||||
wxIcon frameIcon("wxhelp", wxBITMAP_TYPE_ICO_RESOURCE, 32, 32);
|
||||
#else
|
||||
wxIcon frameIcon(help_xpm);
|
||||
#endif
|
||||
if (frameIcon.Ok())
|
||||
SetIcon(frameIcon);
|
||||
|
||||
GetPosition(&m_Cfg.x, &m_Cfg.y);
|
||||
|
||||
SetIcon(wxICON(help));
|
||||
@@ -157,7 +165,7 @@ bool wxHtmlHelpFrame::Create(wxWindow* parent, wxWindowID id, const wxString& ti
|
||||
toolBar -> SetMargins(2, 2);
|
||||
wxBitmap* toolBarBitmaps[3];
|
||||
|
||||
#ifdef __WXMSW__
|
||||
#if defined(__WXMSW__) || (__WXPM__)
|
||||
toolBarBitmaps[0] = new wxBitmap("panel");
|
||||
toolBarBitmaps[1] = new wxBitmap("back");
|
||||
toolBarBitmaps[2] = new wxBitmap("forward");
|
||||
@@ -614,7 +622,7 @@ void wxHtmlHelpFrame::OnContentsSel(wxTreeEvent& event)
|
||||
|
||||
void wxHtmlHelpFrame::OnIndexSel(wxCommandEvent& WXUNUSED(event))
|
||||
{
|
||||
wxHtmlContentsItem *it = (wxHtmlContentsItem*) m_IndexBox -> GetClientData(m_IndexBox -> GetSelection());
|
||||
wxHtmlContentsItem *it = (wxHtmlContentsItem*) m_IndexBox -> GetClientData(m_IndexBox -> GetSelection());
|
||||
m_HtmlWin -> LoadPage(it -> m_Book -> GetBasePath() + it -> m_Page);
|
||||
}
|
||||
|
||||
|
@@ -1,74 +0,0 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: search.cpp
|
||||
// Purpose: search engine
|
||||
// Author: Vaclav Slavik
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) 1999 Vaclav Slavik
|
||||
// Licence: wxWindows Licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma implementation
|
||||
#endif
|
||||
|
||||
#include "wx/wxprec.h"
|
||||
|
||||
#include "wx/defs.h"
|
||||
#if wxUSE_HTML
|
||||
|
||||
#ifdef __BORDLANDC__
|
||||
#pragma hdrstop
|
||||
#endif
|
||||
|
||||
#ifndef WXPRECOMP
|
||||
#include <wx/wx.h>
|
||||
#endif
|
||||
|
||||
#include "wx/html/helpdata.h"
|
||||
|
||||
|
||||
|
||||
//--------------------------------------------------------------------------------
|
||||
// wxSearchEngine
|
||||
//--------------------------------------------------------------------------------
|
||||
|
||||
void wxSearchEngine::LookFor(const wxString& keyword)
|
||||
{
|
||||
if (m_Keyword) delete[] m_Keyword;
|
||||
m_Keyword = new wxChar[keyword.Length() + 1];
|
||||
wxStrcpy(m_Keyword, keyword.c_str());
|
||||
for (int i = wxStrlen(m_Keyword) - 1; i >= 0; i--)
|
||||
if ((m_Keyword[i] >= wxT('A')) && (m_Keyword[i] <= wxT('Z')))
|
||||
m_Keyword[i] += wxT('a') - wxT('A');
|
||||
}
|
||||
|
||||
|
||||
|
||||
bool wxSearchEngine::Scan(wxInputStream *stream)
|
||||
{
|
||||
wxASSERT_MSG(m_Keyword != NULL, _("wxSearchEngine::LookFor must be called before scanning!"));
|
||||
|
||||
int i, j;
|
||||
int lng = stream ->GetSize();
|
||||
int wrd = wxStrlen(m_Keyword);
|
||||
bool found = FALSE;
|
||||
char *buf = new char[lng + 1];
|
||||
stream -> Read(buf, lng);
|
||||
buf[lng] = 0;
|
||||
|
||||
for (i = 0; i < lng; i++)
|
||||
if ((buf[i] >= 'A') && (buf[i] <= 'Z')) buf[i] += 'a' - 'A';
|
||||
|
||||
for (i = 0; i < lng - wrd; i++) {
|
||||
j = 0;
|
||||
while ((j < wrd) && (buf[i + j] == m_Keyword[j])) j++;
|
||||
if (j == wrd) {found = TRUE; break;}
|
||||
}
|
||||
|
||||
delete[] buf;
|
||||
return found;
|
||||
}
|
||||
|
||||
#endif
|
BIN
src/make_cw.mcp
BIN
src/make_cw.mcp
Binary file not shown.
@@ -1,265 +0,0 @@
|
||||
cool(<03><03>F<1E>ICodeWarrior Project<63><74>+.@
|
||||
.<2E>R5<52><06><>S
|
||||
<08><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>B<08><>) <13>*<><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
/wx/wx_cw_d.htupdebug.h<01><>#<23>"<><EFBFBD><EFBFBD><EFBFBD>
|
||||
O]<03><><EFBFBD><EFBFBD><EFBFBD>(
|
||||
|
||||
/wx/wx_cw_d.htupdebug.h<01><01>,,0<01>erator<char, std::c a.out????APPL<01>X<EFBFBD>????U<01> {<01> a.out????APPL<01>X<EFBFBD>????U<01> {<01>JavaClasses.jarZIP MWZP
|
||||
|
||||
!"#$%&'()*+,-./0123456789:;<=>?s@wABCDEFGH<47>NOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrtuvxyz{|}~<><7F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>JIKLM<4C>MNNNNNN
|
||||
UPI.prefix
|
||||
!"#$&'(*+,-./0123456789:;<=>@ABCDFHJKNOPQRS<01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01><01>
|
||||
|
||||
%&'()*+*
|
||||
!"#$&'()*+,-./0123456789:;<=>?@ABCDEFGHJKLMNOPQRS<><EFBFBD><EFBFBD><EFBFBD>__start Merge Out????APPLDLGXckidProjWSPC__startHIJKLBEMNOAGFDPQRSTUVWXYZ[\]^_`abCcdefghP<68><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><C2A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
<12> !"#$%&'()*+,-./0123456789:;<=>?@pqrstjmuvwionlxyz{|}~<01><01><01><01><01><01><01><01><01><01><01>k<01><01><01><01><01><01>/0123),456(.-+789:;<=>?@ABCDEFGHI*JKLMNO<4E><4F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>XYZ[\RU]^_QWVT`abcdefghijklmnopqrSstuvwx<77><78><EFBFBD><EFBFBD><EFBFBD>z}<7D><><EFBFBD>y~|<7C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>{<7B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
!"#$%&'<1C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>+<0B>%z{|}~<><7F>f<EFBFBD><66>&<26><>g<EFBFBD>'<27><><EFBFBD><EFBFBD><EFBFBD>҈<EFBFBD><D288><EFBFBD><EFBFBD><EFBFBD>()*+<2B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,-./<2F><>012345<34>6<EFBFBD><36>h<EFBFBD>78<37><38><EFBFBD>9<EFBFBD>i:;j<>k<EFBFBD><<3C>=l<>>?<3F>@mA<6D>nB<6E>C<EFBFBD>D<EFBFBD><44><EFBFBD><EFBFBD>E"$#! %<1E>oF<6F><0B>GHI<48><49><EFBFBD><EFBFBD><EFBFBD>ج<EFBFBD>p<EFBFBD><70><EFBFBD>J<EFBFBD><4A>q<EFBFBD>KrLM<4C><4D><EFBFBD><EFBFBD><EFBFBD>NsOPQR<51>tS<74><53><EFBFBD><EFBFBD>T<EFBFBD>u<EFBFBD><75><EFBFBD><EFBFBD>vUV<55>w<EFBFBD><77>W<EFBFBD>X<EFBFBD>xY<78>Z<EFBFBD>[\<5C>y]<5D>^<5E>_`a<>bc<62><63><EFBFBD>d<EFBFBD><64><EFBFBD><EFBFBD>(<28>e&<1B>'<18><01><03><10>)*
|
||||
<06><07>
|
||||
<0E> <08> -<2D><08>,<0F><><EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD>
|
||||
!"#$JavaClasses.jarZIP MWZPwx_mac.rsrcRSEDrsrcDLGXckidProjWSPC
|
||||
UPI.prefix@:<01><><EFBFBD><EFBFBD>:<01><><EFBFBD><EFBFBD>@a.out????APPL<01><01>@X<>????a.out????APPL<01><01>@X<>????wx_x86_d.libU<01> {Win32 x86 Linkerwxlib W32 debug::lib:MSIEhttp://java.sun.com/products/jdk/1.1/docs/api/
|
||||
|
||||
/wx/wx_cw_d.htupdebug.hJavaClasses.jarZIP MWZP
|
||||
|
||||
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\ Merge Out????APPLDLGXckidProjWSPC
|
||||
P'CODE' 'DATA' 'PICT'__start a.out????APPL<01>X<EFBFBD>????U<01> {<01>
|
||||
UPI.prefix
|
||||
NONAME.EXE@U<01> {<><EFBFBD><EFBFBD><EFBFBD>__startMSIEhttp://java.sun.com/products/jdk/1.1/docs/api/
|
||||
|
||||
!"#$%&'()*+,-./0123456789:;<=>?s@wABCDEFGH<47>NOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrtuvxyz{|}~<><7F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>JIKLM<4C>MNNNNNNJavaClasses.jarZIP MWZP
|
||||
!"#$&'(*+,-./0123456789:;<=>@ABCDFHJKNOPQRS<04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04><04>
|
||||
|
||||
#$%&'()
|
||||
UPI.prefix
|
||||
|
||||
!"#$%&'()*+,-./0123456789:;<=>k?n@ABCDEF<45>LMNOPQRSTUVWXYZ[\]^_`acdefhjlmopqrstuvwxz{|}~<><7F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>HGIJKbgiy<69><79><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(@
|
||||
::include:<3A><><EFBFBD><EFBFBD>:msw:<01><><EFBFBD><EFBFBD>:generic:<01><><EFBFBD><EFBFBD>:common:<01><><EFBFBD><EFBFBD>:zlib:<01><><EFBFBD><EFBFBD> :png:<01><><EFBFBD><EFBFBD>
|
||||
:Metrowerks Standard Library:MSL C:\<01><><EFBFBD><EFBFBD>@:Metrowerks Standard Library:MSL C:MSL Win32:Include:rks Standard Library:MSL C:MSL Win32:Include:<01><><EFBFBD><EFBFBD>@:Metrowerks Standard Library:MSL C++:<01><><EFBFBD><EFBFBD>@:Win32-x86 Support:Headers:\<01><><EFBFBD><EFBFBD>@:Win32-x86 Support:Libraries:\<01><><EFBFBD><EFBFBD>@:Win32-x86 Support:Headers:Win32 SDK:<01><><EFBFBD><EFBFBD>@ DFLTMetrowerks JavaInternet ExplorerNone x86 Linkerwx code repository::lib:__start__starta.out????APPL<01><01>@X<>????wx_x86_d.libU<01> { JBoundApp????<08><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>WINDnullNoneMMPr@Java LinkerAPPLApplGIFf.gifJAR Importer@JPEG.jpgJAR Importer@MWCDRSRCTEXT.bhBalloon HelpTEXT.htmlTEXT.javaMW JavaTEXT.mfTEXT.rRezdocursrc.auJAR Importer@.classMW Java.gifJAR Importer@.jpegJAR Importer@.zipMW JavaMacOS 68K LinkerAPPL`Appl`MMLBLib Import 68KMPLFLib Import 68KMWCD`OBJ MPW Import 68KPLob`RSRC`TEXT.bhBalloon HelpTEXT.cMW C/C++ 68KTEXT.c++MW C/C++ 68KTEXT.ccMW C/C++ 68KTEXT.cpMW C/C++ 68KTEXT.cppMW C/C++ 68KTEXT.expTEXT.hMW C/C++ 68KTEXT.pMW Pascal 68KTEXT.pasMW Pascal 68KTEXT.pchMW C/C++ 68K<38>TEXT.pch++MW C/C++ 68K<38>TEXT.ppuMW Pascal 68K<38>TEXT.rRezTEXT.segdocu`rsrc`shlbPEF Import 68KstubPEF Import 68K.docP.oMPW Import 68K.ppob`.rsrc`MacOS MergeAPPL`Appl`RSRC`TEXT.bhBalloon HelpTEXT.rRezrsrc`shlbMacOS PPC LinkerAPPL`Appl`MMLBLib Import PPCMPLFLib Import PPCMWCD`RSRC`TEXT.bhBalloon HelpTEXT.cMW C/C++ PPCTEXT.c++MW C/C++ PPCTEXT.ccMW C/C++ PPCTEXT.cpMW C/C++ PPCTEXT.cppMW C/C++ PPCTEXT.expTEXT.hMW C/C++ PPCTEXT.pMW Pascal PPCTEXT.pasMW Pascal PPCTEXT.pchMW C/C++ PPC<50>TEXT.pch++MW C/C++ PPC<50>TEXT.ppuMW Pascal PPC<50>TEXT.rRezTEXT.sPPCAsmXCOFXCOFF Import PPCdocu`rsrc`shlbPEF Import PPCstubPEF Import PPC.docP.oXCOFF Import PPC.ppob`.rsrc`Win32 x86 LinkerTEXT.cMW C/C++ x86TEXT.c++MW C/C++ x86TEXT.ccMW C/C++ x86TEXT.cpMW C/C++ x86TEXT.cppMW C/C++ x86TEXT.defTEXT.hMW C/C++ x86TEXT.pMW Pascal x86TEXT.pasMW Pascal x86TEXT.pchMW C/C++ x86<38>TEXT.pch++MW C/C++ x86<38>TEXT.ppuMW Pascal x86<38>TEXT.rcMW WinRCTEXT.resWinRes Import.docP.libLib Import x86.objObj Import x86MSIEhttp://java.sun.com/products/jdk/1.1/docs/api/P'CODE' 'DATA' 'PICT'
|
||||
!"#$%<02>
|
||||
<02>+ a.out????APPL<01>X<EFBFBD>????U<01> {<01> Merge Out????APPLDLGXckidProjWSPC DFLTMetrowerks JavaInternet ExplorerJavaClasses.jarZIP MWZP -<IVd h
|
||||
w<0B><0C>
|
||||
<EFBFBD><0E><0F><10><11><12><13>!/<L]l{<01><01><01> <01>!<01>"<01>#<01>$<01>%&'%(1);*H+P,]-i.v/<02>0<02>1<02>2<02>3<02>4<02>5<02>6<02>7<02>8<02>9<02>:;
|
||||
<=%>0?:@GASB]CfDrE~F<03>G<03>H<03>I<03>J<03>K<03>L<03>M<03>N<03>O<03>PQR%S2T?UKVWWcXqYZ<04>[<04>\<04>]<04>^<04>_<04>`<04>a<04>b<04>c<04>def$g2h@iNjYkflsm<05>n<05>o<05>p<05>q<05>r<05>s<05>t<05>u<05>v<05>wxyz,{7|@}L~Ze<>q<><><06><><06><><06><><06><><06><>Έۉ<06><><06><><06><><05><13>!<21>.<2E><<3C>E<>Q<>Z<>h<>t<><><07><><07><><07><><07><><07><>ɝמ<07><><07><><07><><07><15>"<22>,<2C>5<>?<3F>M<>[<5B>i<>u<><08><><08><><08><><08><><08><><08><>βܳ<08><><08><> <06> <13> <1F> -<2D> ;<3B> I<> W<> e<> s<> <09><> <09><> <09><> <09><> <09><> <09><> <09><> <09><> <09><> <09><>
|
||||
<01>
|
||||
<0C>
|
||||
<1A>
|
||||
$<24>
|
||||
0<EFBFBD>
|
||||
8<EFBFBD>
|
||||
C<EFBFBD>
|
||||
W<EFBFBD>
|
||||
m<EFBFBD>
|
||||
<EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD>
|
||||
<EFBFBD><1B>!<21>(<28>9<>E<>V<>k<>v<><0B><><0B><><0B><><0B><><0B><><0B><><0B><><0B><><0B><><0B><><0B><><0B><><0B><><04><16>'<27>2<>?<3F>L<>[<5B>k<>t<><><0C><><0C><><0C><><0C><><0C><><0C><><0C><><0C><0C><0C>
|
||||
|
||||
|
||||
+
|
||||
<
|
||||
Q
|
||||
\
|
||||
d
|
||||
p
|
||||
|
||||
}
|
||||
<EFBFBD>
|
||||
<EFBFBD>
|
||||
|
||||
<EFBFBD>
|
||||
<EFBFBD>
|
||||
<EFBFBD>
|
||||
<EFBFBD>
|
||||
<EFBFBD>
|
||||
<EFBFBD>4I^s<0E><0E><0E><0E><0E><0E>
|
||||
!!6"K#b$y%<0F>&<0F>'<0F>(<0F>)<0F>*<0F>+<0F>,<0F>-<0F>.__start<><EFBFBD><EFBFBD><EFBFBD><01><>$Win32 x86 Linkerwxlib W32 release::lib: a.out????APPL<01>X<EFBFBD>????U<01> {<01>
|
||||
/wx/wx_cw.hhhtupdebug.h__start Merge Out????APPLDLGXckidProjWSPC
|
||||
UPI.prefix@::include:<3A><><EFBFBD><EFBFBD>:msw:<01><><EFBFBD><EFBFBD>:generic:<01><><EFBFBD><EFBFBD>:common:<01><><EFBFBD><EFBFBD>:zlib:<01><><EFBFBD><EFBFBD> :png:<01><><EFBFBD><EFBFBD>
|
||||
:Metrowerks Standard Library:MSL C:\<01><><EFBFBD><EFBFBD>@:Metrowerks Standard Library:MSL C:MSL Win32:Include:rks Standard Library:MSL C:MSL Win32:Include:<01><><EFBFBD><EFBFBD>@:Metrowerks Standard Library:MSL C++:<01><><EFBFBD><EFBFBD>@:Win32-x86 Support:Headers:\<01><><EFBFBD><EFBFBD>@:Win32-x86 Support:Libraries:\<01><><EFBFBD><EFBFBD>@:Win32-x86 Support:Headers:Win32 SDK:<01><><EFBFBD><EFBFBD>@ DFLTMetrowerks JavaInternet ExplorerMSIEhttp://java.sun.com/products/jdk/1.1/docs/api/__starta.out????APPL<01><01>@X<>????JavaClasses.jarZIP MWZP JBoundApp????<08><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>WINDnullP'CODE' 'DATA' 'PICT'
|
||||
wx_x86.libibU<01> {
|
||||
!"#$&'(*+,-./0123456789:;<=>@ABCDHKNOPQRS<05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05><05>
|
||||
|
||||
wx_PPC_d.lib????????????
|
||||
/wx/wx_cw.h.htupdebug.happl****TL hmnu hdlg hwin hrct hfdr hovr __startwx_x86_d.libU<01> {'()*+,-.12
|
||||
3456789:;<=>?@ABCDE F!G"H#I$J&L'M(N)O*P+Q,R-S.T/U0V1W2X3Y4Z5[6\7]8^9_:`;a<b=c>d?e@fAgBhCiDjEkFlGmHnJpKqLrMsNtOuPvQwRxSySyTzTzU{V|W}X~YZ<>[<5B>\<5C>]<5D>^<5E>_<>MacOS PPC Linkerwxlib PPC debug::lib:
|
||||
UPI.prefix hovr P'CODE' 'DATA' 'PICT'NoneMMPr@Java LinkerAPPLApplGIFf.gifJAR Importer@JPEG.jpgJAR Importer@MWCDRSRCTEXT.bhBalloon HelpTEXT.htmlTEXT.javaMW JavaTEXT.mfTEXT.rRezdocursrc.auJAR Importer@.classMW Java.gifJAR Importer@.jpegJAR Importer@.zipMW JavaMacOS 68K LinkerAPPL`Appl`MMLBLib Import 68KMPLFLib Import 68KMWCD`OBJ MPW Import 68KPLob`RSRC`TEXT.bhBalloon HelpTEXT.cMW C/C++ 68KTEXT.c++MW C/C++ 68KTEXT.ccMW C/C++ 68KTEXT.cpMW C/C++ 68KTEXT.cppMW C/C++ 68KTEXT.expTEXT.hMW C/C++ 68KTEXT.pMW Pascal 68KTEXT.pasMW Pascal 68KTEXT.pchMW C/C++ 68K<38>TEXT.pch++MW C/C++ 68K<38>TEXT.ppuMW Pascal 68K<38>TEXT.rRezTEXT.segdocu`rsrc`shlbPEF Import 68KstubPEF Import 68K.docP.oMPW Import 68K.ppob`.rsrc`MacOS MergeAPPL`Appl`RSRC`TEXT.bhBalloon HelpTEXT.rRezrsrc`shlbMacOS PPC LinkerAPPL`Appl`MMLBLib Import PPCMPLFLib Import PPCMWCD`RSRC`TEXT.bhBalloon HelpTEXT.cMW C/C++ PPCTEXT.c++MW C/C++ PPCTEXT.ccMW C/C++ PPCTEXT.cpMW C/C++ PPCTEXT.cppMW C/C++ PPCTEXT.expTEXT.hMW C/C++ PPCTEXT.pMW Pascal PPCTEXT.pasMW Pascal PPCTEXT.pchMW C/C++ PPC<50>TEXT.pch++MW C/C++ PPC<50>TEXT.ppuMW Pascal PPC<50>TEXT.rRezTEXT.sPPCAsmXCOFXCOFF Import PPCdocu`rsrc`shlbPEF Import PPCstubPEF Import PPC.docP.oXCOFF Import PPC.ppob`.rsrc`Win32 x86 LinkerTEXT.cMW C/C++ x86TEXT.c++MW C/C++ x86TEXT.ccMW C/C++ x86TEXT.cpMW C/C++ x86TEXT.cppMW C/C++ x86TEXT.defTEXT.hMW C/C++ x86TEXT.pMW Pascal x86TEXT.pasMW Pascal x86TEXT.pchMW C/C++ x86<38>TEXT.pch++MW C/C++ x86<38>TEXT.ppuMW Pascal x86<38>TEXT.rcMW WinRCTEXT.resWinRes Import.docP.libLib Import x86.objObj Import x86@
|
||||
::include:<3A><><EFBFBD><EFBFBD>:msw:<01><><EFBFBD><EFBFBD>:generic:<01><><EFBFBD><EFBFBD>:common:<01><><EFBFBD><EFBFBD>:zlib:<01><><EFBFBD><EFBFBD> :png:<01><><EFBFBD><EFBFBD>
|
||||
:Metrowerks Standard Library:MSL C:\<01><><EFBFBD><EFBFBD>@:Metrowerks Standard Library:MSL C:MSL Win32:Include:rks Standard Library:MSL C:MSL Win32:Include:<01><><EFBFBD><EFBFBD>@:Metrowerks Standard Library:MSL C++:<01><><EFBFBD><EFBFBD>@:Win32-x86 Support:Headers:\<01><><EFBFBD><EFBFBD>@:Win32-x86 Support:Libraries:\<01><><EFBFBD><EFBFBD>@:Win32-x86 Support:Headers:Win32 SDK:<01><><EFBFBD><EFBFBD>@wxWin_CWFirst Segment:a.outLib Import 68KMPW Import 68KBalloon HelpMW C/C++ 68KMW Pascal 68KRezPEF Import 68Kwxlib W32 debug:NONAME.EXEMW C/C++ x86MW Pascal x86MW WinRCWinRes ImportLib Import x86Obj Import x86Win32 x86 LinkerCustom KeywordsAccess PathsTarget SettingsFile MappingsBuild ExtrasDebugger TargetDebugger RuntimeC/C++ CompilerC/C++ WarningsPalmRez PanelPascal CompilerPascal WarningsWinRC Compilerx86 CodeGenx86 Exceptions Panelx86 Global Optimizerx86 Linkerx86 Project::lib:wx_x86_d.lib:cmndata.cpp:config.cpp:date.cpp:datstrm.cpp:db.cpp:dbtable.cpp:docmdi.cpp:docview.cpp:doslex.c:dosyacc.c:dynarray.cpp:dynlib.cpp:event.cpp:extended.c:file.cpp:fileconf.cpp:filefn.cpp:framecmn.cpp:ftp.cpp:gdicmn.cpp:hash.cpp:helpbase.cpp:http.cpp:image.cpp:intl.cpp:ipcbase.cpp:layout.cpp:list.cpp:log.cpp:matrix.cpp:memory.cpp:module.cpp:mstream.cpp:object.cpp:objstrm.cpp:odbc.cpp:postscrp.cpp:prntbase.cpp:process.cpp:protocol.cpp:resource.cpp:sckaddr.cpp:sckfile.cpp:sckipc.cpp:sckstrm.cpp:serbase.cpp:socket.cpp:stream.cpp:string.cpp:tbarbase.cpp:tbarsmpl.cpp:textfile.cpp:time.cpp:timercmn.cpp:tokenzr.cpp:url.cpp:utilscmn.cpp:validate.cpp:valtext.cpp:variant.cpp:wfstream.cpp:wincmn.cpp:wxexpr.cpp:zstream.cpp:choicdgg.cpp:colrdlgg.cpp:fontdlgg.cpp:gridg.cpp:helpext.cpp:helpxlp.cpp:imaglist.cpp:laywin.cpp:listctrl.cpp:msgdlgg.cpp:panelg.cpp:printps.cpp:prntdlgg.cpp:sashwin.cpp:scrolwin.cpp:splitter.cpp:statusbr.cpp:tabg.cpp:textdlgg.cpp:treectrl.cpp:accel.cpp:app.cpp:bitmap.cpp:bmpbuttn.cpp:brush.cpp:button.cpp:checkbox.cpp:checklst.cpp:choice.cpp:clipbrd.cpp:colordlg.cpp:colour.cpp:combobox.cpp:control.cpp:curico.cpp:cursor.cpp:data.cpp:dc.cpp:dcclient.cpp:dcmemory.cpp:dcprint.cpp:dcscreen.cpp:dde.cpp:dialog.cpp:dib.cpp:dibutils.cpp:dirdlg.cpp:dummy.cpp:dummydll.cpp:filedlg.cpp:font.cpp:fontdlg.cpp:frame.cpp:gauge95.cpp:gaugemsw.cpp:gdiobj.cpp:helpwin.cpp:icon.cpp:iniconf.cpp:joystick.cpp:listbox.cpp:main.cpp:mdi.cpp:menu.cpp:menuitem.cpp:metafile.cpp:minifram.cpp:msgdlg.cpp:nativdlg.cpp:notebook.cpp:ownerdrw.cpp:palette.cpp:pen.cpp:penwin.cpp:pnghand.cpp:printdlg.cpp:printwin.cpp:radiobox.cpp:radiobut.cpp:regconf.cpp:region.cpp:registry.cpp:scrolbar.cpp:settings.cpp:slider95.cpp:slidrmsw.cpp:spinbutt.cpp:statbmp.cpp:statbox.cpp:statbr95.cpp:stattext.cpp:tabctrl.cpp:taskbar.cpp:tbar95.cpp:tbarmsw.cpp:textctrl.cpp:thread.cpp:timer.cpp:utils.cpp:utilsexc.cpp:wave.cpp:window.cpp:wx.def:wxb32.def:ctl3d:msvc:ctl3d.h:ctl3d:msvc:ctl3d.lib:ctl3d:msvc:ctl3dv2.lib:ctl3d:wat386:ctl3d32.c:ctl3d:wat386:ctl3d32.obj:ole:automtn.cpp:ole:dataobj.cpp:ole:dropsrc.cpp:ole:droptgt.cpp:ole:oleutils.cpp:ole:uuid.cppwxlibwxrestMacOS 68K Linker68K CodeGen68K Disassembler68K Global Optimizer68K Linker68K ProjectCFM68KFTP PanelRez Compilerwxexpr.cppdosyacc.c:cwlexyy.c:cwytab.c:y_tab.c:cwy_tab.cresource.cppNonewx code repositorywxlib W32 release::lib:wx_x86.lib:wx_cw.pch:wx_cw.pch++:wx_cw_d.pch:wx_cw_d.pch++wxlib PPC debug:dnd.cpp:gauge.cpp:helpxxxx.cpp:print.cpp:slider.cpp:toolbar.cpp::lib:a.outLib Import PPCMW C/C++ PPCMW Pascal PPCPPCAsmXCOFF Import PPCPEF Import PPCMacOS PPC LinkerPPC CodeGenPPC DisassemblerPPC Global OptimizerPPC LinkerPPC PEFPPC ProjectPPCAsm Panelmsgdlgg.cpp::lib:wx_PPC_d.libwxlib PPC releasewx_cw.pch++wx_cw.pchall targets::lib:wx_PPC.libwxlib resources:morefile:FullPath.h:morefile:IterateD.cpp:morefile:MoreFile.cpp:morefile:Director.h:morefile:Search.cpp:morefile:IterateD.h:morefile:FullPath.cpp:morefile:Director.cpp:morefile:MoreFile.h:morefile:FSpCompa.cpp:morefile:FSpCompa.h:morefile:OptimEnd.h:morefile:Search.h:morefile:MoreExtr.cpp:morefile:MoreExtr.h:morefile:MoreDesk.h:morefile:FileCopy.cpp:morefile:MoreDesk.cpp:morefile:F
|
||||
<EFBFBD><0B><0C>
|
||||
<EFBFBD><0E><0F><10><11><12><13><14><16><17><18>z<1A><1B><1C><1D><1E><1F>%<25>&<26>'<27>(<28>)<29>*<2A>+-*<2A>*<2A>*<2A>*<2A>*<2A>*<2A>*<2A>$ROOT FILEFILEFILE<05>FILE<05>GRUPcommon>FILE<05>FILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILE
|
||||
FILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILE FILE!FILE"FILE#FILE$FILE&FILE'FILE(FILE<05>FILE*FILE+FILE,FILE-FILE.FILE/FILE0FILE1FILE2FILE3FILE4FILE5FILE6FILE7FILE8FILE9FILE:FILE;FILE<FILE=FILE>FILE<05>FILE@GRUPgenericFILEAFILEBFILECFILEDFILEEFILEFFILEGFILEHFILE
|
||||
FILEKFILELFILEMFILENFILEOFILEPFILEQFILERFILESGRUPmacGFILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILE<05>FILEFILEFILEFILEFILEFILEFILEFILEFILEFILE FILE
|
||||
FILEFILEGRUP#morefile
|
||||
FILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEGRUPmswVGRUP!oleGRUP"CVSFILE%FILE&FILE'FILE(FILE)FILE*FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILE<01>FILEFILEFILEFILEFILEFILEFILEFILEFILEFILE FILE
|
||||
FILEFILEFILE
|
||||
FILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILEFILE+<2B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>MSIEhttp://java.sun.com/products/jdk/1.1/docs/api/ JBoundApp????<08><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>WINDnull JBoundApp????<08><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>WINDnullappl****TL hmnu hdlg hwin hrct hfdr hovr DFLTMetrowerks JavaInternet ExplorerP'CODE' 'DATA' 'PICT' a.out????APPL<01>X<EFBFBD>????U<01> {<01> Merge Out????APPLDLGXckidProjWSPCwx_x86_d.libU<01> { JBoundApp????<08><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>WINDnull
|
||||
wx_PPC.libib????????????<><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
!"#$%&'()*+,-./0123456789:;<=>i?l@ABCDEF<45>JKLMNOPQRSTUVWXYZ[\]^_abcdfhjkmnopqrstuvxyz{|}<><7F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>HGI`egw~<7E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
!"#$&'(*+,-./0123456789:;<=>@ABCDHKNOPQRS<06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06><06>
|
||||
|
||||
!__start'('()*+,-.12
|
||||
3456789:;<=>?@ABCDE F!G"H#I$J&L'M(N*P+Q,R-S.T/U0V1W2X3Y4Z5[6\7]8^9_:`;a<b=c>d@fAgBhCiDjFlHnJpKqNtOuPvQwRxSy<04><><04><><04><><04><><04><><04>{<04>|<04>}<04>~<04>̀́σЄх҆ӇԈՉ֊،ٍڎۏܐݑޒߓ<04><><04><><04><><04><><04><><04><><04><><04><><04><><04><><04><><04><><04>m<04><><04><><04><><04>o<04><><04><><04><><04><><04><><04><><04><><04><><04><><04><><04><><04><><04><><04><><01><01><02><03><04><05><06><07><08> <09>
|
||||
<EFBFBD><0B><0C>
|
||||
<EFBFBD><0E><0F><10><11><12><14><15><16>z<18><19><1A><1B><1C><1D>#<23>$<24>%<25>&<26>'<27>(<28>)-(<28>(<28>(<28>(<28>(<28>(<28>(<28>appl****TL hmnu hdlg hwin hrct hfdr hovr MacOS PPC Linkerwxlib PPC release::lib:wxwinU<01> {U<01> {@:<01><><EFBFBD><EFBFBD>:<01><><EFBFBD><EFBFBD>@appl****TL hmnu hdlg hwin hrct hfdr hovr None 68K Linkerall targets:
|
||||
JavaClasses.jarZIP MWZP'()*+,-.12
|
||||
3456789:;<=>?@ABCDE F!G"H#I$J&L'M(N*P+Q,R-S.T/U0V1W2X3Y4Z5[6\7]8^9_:`;a<b=c>d@fAgBhCiDjHnKqNtOuPvQwRxSy<05><><05><><05><><05><><05><><05>{@
|
||||
<05>|@
|
||||
<05>}@
|
||||
<05>~@
|
||||
<05>@
|
||||
@
|
||||
ρ@
|
||||
Ђ@
|
||||
у@
|
||||
҄@
|
||||
Ӆ@
|
||||
Ԇ@
|
||||
Շ@
|
||||
ֈ@
|
||||
@
|
||||
؋@
|
||||
ٌ@
|
||||
ڍ@
|
||||
ێ@
|
||||
ܐ@
|
||||
ݒ@
|
||||
ޕ@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05>m@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05>o@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<05><>@
|
||||
<01>@
|
||||
<01>@
|
||||
<02>@
|
||||
<03>@
|
||||
<04>@
|
||||
<05>@
|
||||
<06>@
|
||||
<07>@
|
||||
z@
|
||||
<09>@
|
||||
|
||||
<EFBFBD>@
|
||||
<0B>@
|
||||
<0C>@
|
||||
|
||||
@
|
||||
@
|
||||
@
|
||||
@
|
||||
@
|
||||
@
|
||||
@
|
||||
"@
|
||||
#@
|
||||
$@
|
||||
#.@::include:<3A><><EFBFBD><EFBFBD>:generic:<01><><EFBFBD><EFBFBD>:common:<01><><EFBFBD><EFBFBD>:zlib:<01><><EFBFBD><EFBFBD> :png:<01><><EFBFBD><EFBFBD>
|
||||
:mac:<01><><EFBFBD><EFBFBD>@
|
||||
:Metrowerks Standard Library:MSL C:MSL Mac:Public Includes:<01><><EFBFBD><EFBFBD>@:Metrowerks Standard Library:MSL C:\<01><><EFBFBD><EFBFBD>@:Metrowerks Standard Library:MSL C++:<01><><EFBFBD><EFBFBD>@:MacOS Support:rt:Headers:\<01><><EFBFBD><EFBFBD>@__start JBoundApp????<08><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>WINDnullMacOS Mergenkerwxlib resources::lib: JBoundApp????<08><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>WINDnull
|
||||
wx_PPC.libib????????????appl****TL hmnu hdlg hwin hrct hfdr hovr a.out????APPL<01>X<EFBFBD>????U<01> {<01>__start
|
||||
UPI.prefixMSIEhttp://java.sun.com/products/jdk/1.1/docs/api/MSIEhttp://java.sun.com/products/jdk/1.1/docs/api/ DFLTMetrowerks JavaInternet Explorerappl****TL hmnu hdlg hwin hrct hfdr hovr <20><><EFBFBD><EFBFBD>NoneMMPr@Java LinkerAPPLApplGIFf.gifJAR Importer@JPEG.jpgJAR Importer@MWCDRSRCTEXT.bhBalloon HelpTEXT.htmlTEXT.javaMW JavaTEXT.mfTEXT.rRezdocursrc.auJAR Importer@.classMW Java.gifJAR Importer@.jpegJAR Importer@.zipMW JavaMacOS 68K LinkerAPPL`Appl`MMLBLib Import 68KMPLFLib Import 68KMWCD`OBJ MPW Import 68KPLob`RSRC`TEXT.bhBalloon HelpTEXT.cMW C/C++ 68KTEXT.c++MW C/C++ 68KTEXT.ccMW C/C++ 68KTEXT.cpMW C/C++ 68KTEXT.cppMW C/C++ 68KTEXT.expTEXT.hMW C/C++ 68KTEXT.pMW Pascal 68KTEXT.pasMW Pascal 68KTEXT.pchMW C/C++ 68K<38>TEXT.pch++MW C/C++ 68K<38>TEXT.ppuMW Pascal 68K<38>TEXT.rRezTEXT.segdocu`rsrc`shlbPEF Import 68KstubPEF Import 68K.docP.oMPW Import 68K.ppob`.rsrc`MacOS MergeAPPL`Appl`RSRC`TEXT.bhBalloon HelpTEXT.rRezrsrc`shlbMacOS PPC LinkerAPPL`Appl`MMLBLib Import PPCMPLFLib Import PPCMWCD`RSRC`TEXT.bhBalloon HelpTEXT.cMW C/C++ PPCTEXT.c++MW C/C++ PPCTEXT.ccMW C/C++ PPCTEXT.cpMW C/C++ PPCTEXT.cppMW C/C++ PPCTEXT.expTEXT.hMW C/C++ PPCTEXT.pMW Pascal PPCTEXT.pasMW Pascal PPCTEXT.pchMW C/C++ PPC<50>TEXT.pch++MW C/C++ PPC<50>TEXT.ppuMW Pascal PPC<50>TEXT.rRezTEXT.sPPCAsmXCOFXCOFF Import PPCdocu`rsrc`shlbPEF Import PPCstubPEF Import PPC.docP.oXCOFF Import PPC.ppob`.rsrc`Win32 x86 LinkerTEXT.cMW C/C++ x86TEXT.c++MW C/C++ x86TEXT.ccMW C/C++ x86TEXT.cpMW C/C++ x86TEXT.cppMW C/C++ x86TEXT.defTEXT.hMW C/C++ x86TEXT.pMW Pascal x86TEXT.pasMW Pascal x86TEXT.pchMW C/C++ x86<38>TEXT.pch++MW C/C++ x86<38>TEXT.ppuMW Pascal x86<38>TEXT.rcMW WinRCTEXT.resWinRes Import.docP.libLib Import x86.objObj Import x86'()*+,-.12
|
||||
3456789:;<=>?@ABCDE F!G"H#I$J&L'M(N*P+Q,R-S.T/U0V1W2X3Y4Z5[6\7]8^9_:`;a<b=c>d@fAgBhCiDjHnKqNtOuPvQwRxSy<06><><06><><06><><06>{@
|
||||
<06>|@
|
||||
<06>}@
|
||||
<06>~@
|
||||
<06>@
|
||||
@
|
||||
ρ@
|
||||
Ђ@
|
||||
у@
|
||||
҄@
|
||||
Ӆ@
|
||||
Ԇ@
|
||||
Շ@
|
||||
ֈ@
|
||||
@
|
||||
؋@
|
||||
ٌ@
|
||||
ڍ@
|
||||
ێ@
|
||||
ܐ@
|
||||
ݒ@
|
||||
ޕ@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06>m@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06>o@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<06><>@
|
||||
<01>@
|
||||
<01>@
|
||||
<02>@
|
||||
<03>@
|
||||
<04>@
|
||||
<05>@
|
||||
<06>@
|
||||
<07>@
|
||||
z@
|
||||
<09>@
|
||||
|
||||
<EFBFBD>@
|
@@ -7,7 +7,7 @@
|
||||
|
||||
# If using Cygwin, set this to 0.
|
||||
# If using Mingw32, set this to 1.
|
||||
MINGW32=1
|
||||
MINGW32=0
|
||||
|
||||
# Set to the version you have
|
||||
MINGW32VERSION=2.95
|
||||
|
@@ -2,7 +2,7 @@
|
||||
# File: makelib.vc
|
||||
# Author: Julian Smart
|
||||
# Created: 1999
|
||||
# Updated:
|
||||
# Updated:
|
||||
# Copyright: (c) Julian Smart
|
||||
#
|
||||
# Makefile : Builds a library for a utility
|
||||
|
@@ -13,7 +13,7 @@
|
||||
WXDIR = $(WXWIN)
|
||||
!include $(WXDIR)\src\makeb32.env
|
||||
|
||||
LIBS=$(WXLIB) $(EXTRALIBS) cw32mt import32 ole2w32 winpng zlib jpeg
|
||||
LIBS=$(WXLIB) $(EXTRALIBS) cw32mt import32 ole2w32 winpng zlib jpeg odbc32
|
||||
|
||||
!if "$(FINAL)" == "0"
|
||||
LINKFLAGS=/v /Tpe /L$(WXLIBDIR);$(BCCDIR)\lib $(EXTRALINKFLAGS)
|
||||
|
@@ -17,7 +17,7 @@ WXUSINGDLL=0
|
||||
|
||||
!include $(WXDIR)\src\makevc.env
|
||||
|
||||
all: $(PROGRAM).exe $(EXTRATARGETS)
|
||||
all: $(PROGRAM).exe
|
||||
|
||||
wx:
|
||||
cd $(WXDIR)\src\msw
|
||||
@@ -29,17 +29,14 @@ wxclean:
|
||||
nmake -f makefile.vc clean
|
||||
# cd $(THISDIR)
|
||||
|
||||
$(PROGRAM).exe: $(DUMMYOBJ) $(WXLIB) $(OBJECTS) $(PROGRAM).res
|
||||
$(PROGRAM).exe: $(DUMMYOBJ) $(WXLIB) $(OBJECTS)
|
||||
$(link) @<<
|
||||
-out:$(PROGRAM).exe
|
||||
$(LINKFLAGS)
|
||||
$(DUMMYOBJ) $(OBJECTS) $(PROGRAM).res
|
||||
$(DUMMYOBJ) $(OBJECTS)
|
||||
$(LIBS)
|
||||
<<
|
||||
|
||||
$(PROGRAM).res : $(PROGRAM).rc $(WXDIR)\include\wx\msw\wx.rc
|
||||
$(rc) -r /i$(WXDIR)\include -fo$@ $(PROGRAM).rc
|
||||
|
||||
clean:
|
||||
-erase $(OBJECTS)
|
||||
-erase *.exe
|
||||
|
@@ -17,7 +17,7 @@ OS2LIBFLAGS=/NOL /NOE
|
||||
OS2LIBS=CPPOM30.lib CPPOOC3.LIB OS2386.LIB
|
||||
|
||||
# Change this to your WXWIN directory
|
||||
WXDIR=j:\dev\Wx2\wxwindows
|
||||
WXDIR=h:\dev\Wx2\wxwindows
|
||||
|
||||
WXSRC=$(WXDIR)\src\os2
|
||||
WXINC=$(WXDIR)\include
|
||||
@@ -95,9 +95,9 @@ WXLIBNAME=$(NEW_WXLIBNAME)
|
||||
!endif
|
||||
|
||||
!if "$(FINAL)" == "1"
|
||||
D=Release
|
||||
D=RelseOS2
|
||||
!else
|
||||
D=Debug
|
||||
D=DebugOS2
|
||||
!endif
|
||||
|
||||
WXLIB=$(WXDIR)\lib\$(WXLIBNAME).lib
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user