Compare commits
1 Commits
v2.6.1
...
WX_HTML_BE
Author | SHA1 | Date | |
---|---|---|---|
|
3126696b7c |
60
.cvsignore
@@ -1,60 +0,0 @@
|
||||
system.list
|
||||
bin
|
||||
.gdb_history
|
||||
Test
|
||||
config.cache
|
||||
configarg.cache
|
||||
config.status
|
||||
system.list
|
||||
linux.system.cache
|
||||
wx-config
|
||||
config.log
|
||||
linux-gnu.system.cache
|
||||
*.dsp
|
||||
*.dsw
|
||||
*.plg
|
||||
*.opt
|
||||
*.aps
|
||||
*.ncb
|
||||
*.pro
|
||||
*.opt
|
||||
*.d
|
||||
*.swp
|
||||
*.swo
|
||||
Release
|
||||
Debug
|
||||
ReleaseDLL
|
||||
DebugDLL
|
||||
UnivRelease
|
||||
UnivDebug
|
||||
BaseRelease
|
||||
BaseDebug
|
||||
robert
|
||||
stamp-h.in
|
||||
Makefile
|
||||
configure
|
||||
setup.h
|
||||
stamp-h
|
||||
libtool
|
||||
aclocal.m4
|
||||
base
|
||||
gtk
|
||||
gtk2
|
||||
motif
|
||||
win32
|
||||
x11
|
||||
univ
|
||||
univ-debug
|
||||
univ-release
|
||||
base-debug
|
||||
gtk-debug
|
||||
motif-debug
|
||||
win32-debug
|
||||
base-release
|
||||
gtk-release
|
||||
motif-release
|
||||
win32-release
|
||||
*tags
|
||||
log
|
||||
univtags.cmd
|
||||
.DS_Store
|
253
BuildCVS.txt
@@ -1,253 +0,0 @@
|
||||
------------------------------------------------------------------------
|
||||
How to build the sources from CVS
|
||||
------------------------------------------------------------------------
|
||||
|
||||
Please use the install.txt files in docs/gtk, docs/msw, docs/motif, docs/mac
|
||||
etc. alongside these instructions.
|
||||
|
||||
I) Windows using plain makefiles
|
||||
----------------------------------------
|
||||
|
||||
a) If using Microsoft Visual C++ 5.0 or 6.0
|
||||
|
||||
Ensure that the command-line compiler and tools (including
|
||||
nmake) are installed and ready to run. Depending on your
|
||||
installation there may be a batch file (named something like
|
||||
VCVARS32.BAT) that needs to be run to set correct environment
|
||||
varaibles and PATH entries.
|
||||
|
||||
Continue with item c) below.
|
||||
|
||||
|
||||
b) If using the MinGW or Cygwin compilers
|
||||
|
||||
You can get MinGW from http://www.mingw.org/
|
||||
|
||||
Cygwin is available at http://sources.redhat.com/cygwin/
|
||||
|
||||
The makefile might have small problems with Cygwin's tools
|
||||
so it is recommended to use MinGW and its toolchain instead
|
||||
if possible.
|
||||
|
||||
-> Set your path so that it includes the directory
|
||||
where your compiler and tools reside
|
||||
|
||||
-> If your are using an old MinGW version (gcc-2.95 or older),
|
||||
you might need to fix some headers with the patches contained
|
||||
in the wxWin\Mingw32-gcc295.patches file. PLEASE APPLY THESE
|
||||
PATCHES BY HAND! There are apparently a few different versions
|
||||
of the headers floating around. Note that these patches are
|
||||
not needed if you are using MinGW gcc-2.95.2 or newer.
|
||||
|
||||
-> Edit wx/src/makeg95.env and set the MINGW32 variable at the top of
|
||||
the file to either 1 (you have MinGW) or 0 (you have Cygwin).
|
||||
Also set the MINGW32VERSION variable appropiately.
|
||||
|
||||
|
||||
c) Build instructions
|
||||
|
||||
-> Assumming that you installed the wxWindows sources
|
||||
into c:\wxWin
|
||||
-> Copy c:\wxWin\include\wx\msw\setup0.h
|
||||
to c:\wxWin\include\wx\msw\setup.h
|
||||
-> Edit c:\wxWin\include\wx\msw\setup.h to choose
|
||||
the features you would like to compile wxWindows with[out].
|
||||
|
||||
and std iostreams are disabled with
|
||||
#define wxUSE_STD_IOSTREAM 0
|
||||
|
||||
-> type: cd c:\wxWin\src\msw
|
||||
-> type: set WXWIN=c:\wxWin
|
||||
-> type: make -f makefile.g95 (if using GNU tools)
|
||||
or type: nmake -f makefile.vc (if using MS VC++)
|
||||
|
||||
See also docs/msw/install.txt for additional compilation options.
|
||||
|
||||
d) Borland (including free command line tools)
|
||||
Download tools from http://www.borland.com/downloads/
|
||||
|
||||
See docs/msw/install.txt for details; in brief
|
||||
|
||||
-> type set WXWIN=c:\wxwindows
|
||||
-> type cd %WXWIN%\src\msw
|
||||
-> type make -f makefile.b32
|
||||
|
||||
II) Unix ports
|
||||
--------------
|
||||
|
||||
Building wxGTK or wxMotif completely without configure
|
||||
won't ever work, but there is now a new makefile system
|
||||
that works without libtool and automake, using only
|
||||
configure to create what is needed.
|
||||
|
||||
In order to create configure, you need to have the
|
||||
GNU autoconf package (version 2.13 or 2.14) installed
|
||||
on your system and type run "autoconf" in the base
|
||||
directory (or run the autogen.sh script in the same
|
||||
directory, which just calls autoconf).
|
||||
|
||||
Set WXWIN environment variable to the base directory such
|
||||
as ~/wxWindows (this is actually not really needed).
|
||||
|
||||
-> type: export WXWIN=~/wxWindows
|
||||
-> type: md mybuild
|
||||
-> type: cd mybuild
|
||||
-> type: ../configure --with-motif
|
||||
or type: ../configure --with-gtk
|
||||
-> type: make
|
||||
-> type: su <type root password>
|
||||
-> type: make install
|
||||
-> type: ldconfig
|
||||
-> type: exit
|
||||
|
||||
Call configure with --disable-shared to create a static
|
||||
library. Calling "make uninstall" will remove the installed
|
||||
library and "make dist" will create a distribution (not
|
||||
yet complete).
|
||||
|
||||
III) Windows using configure
|
||||
----------------------------------------
|
||||
|
||||
wxWindows can be built on Windows using MSYS (see
|
||||
http://www.mingw.org/), which is a POSIX build environment
|
||||
for Windows. With MSYS you can just ./configure && make (see also VII,
|
||||
Unix->Windows cross-compiling using configure).
|
||||
|
||||
Of course, you can also build the library using plain makefiles (see
|
||||
section I).
|
||||
|
||||
IV) Classic MacOS using CodeWarrior (eg MacOS 8.x/9.x)
|
||||
----------------------------------------
|
||||
|
||||
Refer to the readme.txt and install.txt files in docs/mac to build
|
||||
wxWindows under Classic Mac OS using CodeWarrior.
|
||||
|
||||
If you are checking out the CVS sources using cvs under Mac OS X and
|
||||
compiling under Classic Mac OS:
|
||||
|
||||
- make sure that all text files have a Mac OS type of 'TEXT' otherwise
|
||||
CodeWarrior may ignore them. Checking out the CVS sources using cvs
|
||||
under Mac OS X creates untyped files which can lead to compilation
|
||||
errors under CodeWarrior which are hard to track down.
|
||||
|
||||
- convert the xml files to CodeWarrior binary projects using the supplied
|
||||
AppleScript in docs/mac (M5xml2mcp.applescript for CodeWarrior 5.3)
|
||||
|
||||
V) MacOS X using configure and the Developer Tools
|
||||
----------------------------------------
|
||||
|
||||
You need to have the Developer Tools installed. If this is not the case,
|
||||
you will need to register at the Apple Developer web site (this is a free
|
||||
registration) in order to download the Developer Tools installer.
|
||||
|
||||
In order to create configure, you need to have the
|
||||
GNU autoconf package (version 2.13 or 2.14) installed
|
||||
on your system and type run "autoconf" in the base
|
||||
directory (or run the autogen.sh script in the same
|
||||
directory, which just calls autoconf).
|
||||
|
||||
-> type: mkdir macbuild
|
||||
-> type: cd macbuild
|
||||
-> type: ../configure --with-mac
|
||||
or type: ../configure
|
||||
-> type: make
|
||||
|
||||
VI) OS/2
|
||||
----------------------------------------
|
||||
|
||||
VII) Unix->Windows cross-compiling using configure
|
||||
--------------------------------------------------
|
||||
|
||||
First you'll need a cross-compiler; linux glibc binaries of MinGW and
|
||||
Cygwin (both based on egcs) can be found at
|
||||
ftp://ftp.objsw.com/pub/crossgcc/linux-x-win32. Alternative binaries,
|
||||
based on the latest MinGW release can be found at
|
||||
http://members.telering.at/jessich/mingw/mingwcross/mingw_cross.html
|
||||
Otherwise you can compile one yourself.
|
||||
|
||||
[ A Note about Cygwin and MinGW: the main difference is that Cygwin
|
||||
binaries are always linked against cygwin.dll. This dll encapsulates most
|
||||
standard Unix C extensions, which is very handy if you're porting unix
|
||||
software to windows. However, wxMSW doesn't need this, so MinGW is
|
||||
preferable if you write portable C(++). ]
|
||||
|
||||
You might want to build both Unix and Windows binaries in the same source
|
||||
tree; to do this make subdirs for each e.g. unix and win32. If you've
|
||||
already build wxWindows in the main dir, do a 'make distclean' there,
|
||||
otherwise configure will get confused. (In any case, read the section 'Unix
|
||||
using configure' and make sure you're able to build a native wxWindows
|
||||
library; cross-compiling errors can be pretty obscure and you'll want to be
|
||||
sure that your configure setup is basically sound.)
|
||||
|
||||
To cross compile the windows library, do
|
||||
-> cd win32
|
||||
(or whatever you called it)
|
||||
Now run configure. There are two ways to do this
|
||||
-> ../configure --host=i586-mingw32 --build=i586-linux --with-mingw
|
||||
where --build= should read whatever platform you're building on. Configure
|
||||
will notice that build and host platforms differ, and automatically prepend
|
||||
i586-mingw32- to gcc, ar, ld, etc (make sure they're in the PATH!).
|
||||
The other way to run configure is by specifying the names of the binaries
|
||||
yourself:
|
||||
-> CC=i586-mingw32-gcc CXX=i586-mingw32-g++ RANLIB=i586-mingw32-ranlib \
|
||||
DLLTOOL=i586-mingw32-dlltool LD=i586-mingw32-ld NM=i586-mingw32-nm \
|
||||
../configure --host=i586-mingw32 --with-mingw
|
||||
|
||||
(all assuming you're using MinGW)
|
||||
By default this will compile a DLL, if you want a static library,
|
||||
specify --disable-shared.
|
||||
|
||||
Type
|
||||
-> make
|
||||
and wait, wait, wait. Don't leave the room, because the minute you do there
|
||||
will be a compile error :-)
|
||||
|
||||
NB: if you are using a very old compiler you risk to get quite a few warnings
|
||||
about "ANSI C++ forbids implicit conversion from 'void *'" in all places
|
||||
where va_arg macro is used. This is due to a bug in (some versions of)
|
||||
MinGW headers which may be corrected by upgrading your compier,
|
||||
otherwise you might edit the file
|
||||
|
||||
${install_prefix}/lib/gcc-lib/i586-mingw32/egcs-2.91.57/include/stdarg.h
|
||||
|
||||
(instead of egcs-2.91.57 you may have something different), searching for
|
||||
the lines
|
||||
|
||||
/* Define __gnuc_va_list. */
|
||||
|
||||
#ifndef __GNUC_VA_LIST
|
||||
#define __GNUC_VA_LIST
|
||||
#if defined(__svr4__) || defined(_AIX) || defined(_M_UNIX) || defined(__NetBSD__)
|
||||
typedef char *__gnuc_va_list;
|
||||
#else
|
||||
typedef void *__gnuc_va_list;
|
||||
#endif
|
||||
#endif
|
||||
|
||||
and adding "|| defined(_WIN32)" to the list of platforms on which
|
||||
__gnuc_va_list is char *.
|
||||
|
||||
If this is successful, you end up with a wx23_2.dll/libwx23_2.a in win32/lib
|
||||
(or just libwx_msw.a if you opted for a static build).
|
||||
Now try building the minimal sample:
|
||||
|
||||
-> cd samples/minimal
|
||||
-> make
|
||||
|
||||
and run it with wine, for example (or copy to a Windows box)
|
||||
-> wine minimal.exe
|
||||
|
||||
If all is well, do an install; from win32
|
||||
-> make install
|
||||
|
||||
Native and cross-compiled installations can co-exist peacefully
|
||||
(as long as their widget sets differ), except for wx-config. You might
|
||||
want to rename the cross-compiled one to i586-mingw32-wx-config, or something.
|
||||
|
||||
Cross-compiling TODO:
|
||||
---------------------
|
||||
- resource compiling must be done manually for now (should/can we link the
|
||||
default wx resources into libwx_msw.a?) [ No we can't; the linker won't
|
||||
link it in... you have to supply an object file ]
|
||||
- static executables are HUGE -- there must be room for improvement.
|
||||
|
1641
Makefile.in
@@ -1,169 +0,0 @@
|
||||
*** \gcc-inc\basetyps.h Sat Jul 31 16:48:36 1999
|
||||
--- basetyps.h Fri Aug 06 11:14:36 1999
|
||||
***************
|
||||
*** 74,91 ****
|
||||
--- 74,97 ----
|
||||
STDMETHOD(Clone)(IENUM_THIS_(I) I**) PURE; \
|
||||
}
|
||||
#define DECLARE_ENUMERATOR(T) DECLARE_ENUMERATOR_(IEnum##T,T)
|
||||
|
||||
+ #ifndef GUID_DEFINED
|
||||
+ #define GUID_DEFINED
|
||||
typedef struct _GUID
|
||||
{
|
||||
unsigned long Data1;
|
||||
unsigned short Data2;
|
||||
unsigned short Data3;
|
||||
unsigned char Data4[8];
|
||||
} GUID;
|
||||
+ #endif /* GUID_DEFINED */
|
||||
typedef GUID *REFGUID;
|
||||
typedef GUID *LPGUID;
|
||||
+ #ifndef UUID_DEFINED
|
||||
+ #define UUID_DEFINED
|
||||
typedef GUID UUID;
|
||||
+ #endif /* UUID_DEFINED */
|
||||
typedef GUID IID;
|
||||
typedef GUID CLSID;
|
||||
typedef CLSID *LPCLSID;
|
||||
typedef IID *LPIID;
|
||||
|
||||
|
||||
*** \gcc-inc\oaidl.h Sat Jul 31 16:48:42 1999
|
||||
--- oaidl.h Fri Aug 06 13:18:48 1999
|
||||
***************
|
||||
*** 39,44 ****
|
||||
--- 39,53 ----
|
||||
#define IMPLTYPEFLAG_FRESTRICTED 4
|
||||
#define IMPLTYPEFLAG_FDEFAULTVTABLE 8
|
||||
|
||||
+ #define DISPID_UNKNOWN ( -1 )
|
||||
+ #define DISPID_VALUE ( 0 )
|
||||
+ #define DISPID_PROPERTYPUT ( -3 )
|
||||
+ #define DISPID_NEWENUM ( -4 )
|
||||
+ #define DISPID_EVALUATE ( -5 )
|
||||
+ #define DISPID_CONSTRUCTOR ( -6 )
|
||||
+ #define DISPID_DESTRUCTOR ( -7 )
|
||||
+ #define DISPID_COLLECT ( -8 )
|
||||
+
|
||||
typedef interface ITypeLib *LPTYPELIB;
|
||||
typedef interface ICreateTypeInfo *LPCREATETYPEINFO;
|
||||
typedef interface ICreateTypeInfo2 *LPCREATETYPEINFO2;
|
||||
***************
|
||||
*** 49,54 ****
|
||||
--- 58,73 ----
|
||||
typedef interface IDispatch *LPDISPATCH;
|
||||
typedef interface ICreateErrorInfo *LPCREATEERRORINFO;
|
||||
|
||||
+ extern "C" const IID IID_ITypeLib;
|
||||
+ extern "C" const IID IID_ICreateTypeInfo;
|
||||
+ extern "C" const IID IID_ICreateTypeInfo2;
|
||||
+ extern "C" const IID IID_ICreateTypeLib;
|
||||
+ extern "C" const IID IID_ICreateTypeLib2;
|
||||
+ extern "C" const IID IID_ITypeInfo;
|
||||
+ extern "C" const IID IID_IErrorInfo;
|
||||
+ extern "C" const IID IID_IDispatch;
|
||||
+ extern "C" const IID IID_ICreateErrorInfo;
|
||||
+
|
||||
typedef enum tagSYSKIND {
|
||||
SYS_WIN16,SYS_WIN32,SYS_MAC
|
||||
} SYSKIND;
|
||||
***************
|
||||
*** 375,382 ****
|
||||
STDMETHOD_(ULONG,Release)(THIS) PURE;
|
||||
STDMETHOD(GetTypeInfoCount)(THIS_ UINT*) PURE;
|
||||
STDMETHOD(GetTypeInfo)(THIS_ UINT,LCID,LPTYPEINFO*) PURE;
|
||||
! STDMETHOD(GetIDsOfNames)(THIS_ REFIID,LPOLESTR*,UINT,LCID,DISPID)
|
||||
PURE;
|
||||
! STDMETHOD(Invoked)(THIS_ DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*) PURE;
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
--- 394,401 ----
|
||||
STDMETHOD_(ULONG,Release)(THIS) PURE;
|
||||
STDMETHOD(GetTypeInfoCount)(THIS_ UINT*) PURE;
|
||||
STDMETHOD(GetTypeInfo)(THIS_ UINT,LCID,LPTYPEINFO*) PURE;
|
||||
! STDMETHOD(GetIDsOfNames)(THIS_ REFIID,LPOLESTR*,UINT,LCID,DISPID*)
|
||||
PURE;
|
||||
! STDMETHOD(Invoke)(THIS_ DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*) PURE;
|
||||
};
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
|
||||
*** \gcc-inc\objidl.h Sat Jul 31 16:48:42 1999
|
||||
--- objidl.h Fri Aug 06 11:00:19 1999
|
||||
***************
|
||||
*** 627,633 ****
|
||||
STDMETHOD(QueryGetData)(THIS_ FORMATETC*) PURE;
|
||||
STDMETHOD(GetCanonicalFormatEtc)(THIS_ FORMATETC*,FORMATETC*) PURE;
|
||||
STDMETHOD(SetData)(THIS_ FORMATETC*,STGMEDIUM*,BOOL) PURE;
|
||||
! STDMETHOD(EnumFormatEtc)(THIS_ DWORD,IEnumFORMATETC*) PURE;
|
||||
STDMETHOD(DAdvise)(THIS_ FORMATETC*,DWORD,IAdviseSink*,PDWORD) PURE;
|
||||
STDMETHOD(DUnadvise)(THIS_ DWORD) PURE;
|
||||
STDMETHOD(EnumDAdvise)(THIS_ IEnumSTATDATA**);
|
||||
--- 627,633 ----
|
||||
STDMETHOD(QueryGetData)(THIS_ FORMATETC*) PURE;
|
||||
STDMETHOD(GetCanonicalFormatEtc)(THIS_ FORMATETC*,FORMATETC*) PURE;
|
||||
STDMETHOD(SetData)(THIS_ FORMATETC*,STGMEDIUM*,BOOL) PURE;
|
||||
! STDMETHOD(EnumFormatEtc)(THIS_ DWORD,IEnumFORMATETC**) PURE;
|
||||
STDMETHOD(DAdvise)(THIS_ FORMATETC*,DWORD,IAdviseSink*,PDWORD) PURE;
|
||||
STDMETHOD(DUnadvise)(THIS_ DWORD) PURE;
|
||||
STDMETHOD(EnumDAdvise)(THIS_ IEnumSTATDATA**);
|
||||
|
||||
|
||||
--- i386-mingw32\include\stdio.h Sun Aug 1 06:18:20 1999
|
||||
+++ stdio.h Sun Nov 7 03:41:40 1999
|
||||
@@ -203,9 +203,12 @@
|
||||
int fprintf (FILE* filePrintTo, const char* szFormat, ...);
|
||||
int printf (const char* szFormat, ...);
|
||||
int sprintf (char* caBuffer, const char* szFormat, ...);
|
||||
+int _snprintf (char* caBuffer, size_t n, const char* szFormat, ...);
|
||||
int vfprintf (FILE* filePrintTo, const char* szFormat, va_list varg);
|
||||
int vprintf (const char* szFormat, va_list varg);
|
||||
int vsprintf (char* caBuffer, const char* szFormat, va_list varg);
|
||||
+int _vsnprintf (char* caBuffer, size_t n, const char* szFormat,
|
||||
+ va_list varg);
|
||||
|
||||
/* Wide character versions */
|
||||
int fwprintf (FILE* filePrintTo, const wchar_t* wsFormat, ...);
|
||||
|
||||
|
||||
|
||||
--- i386-mingw32\include\winbase.h Sat Jul 31 17:48:48 1999
|
||||
+++ winbase.h Fri Feb 25 01:49:08 2000
|
||||
@@ -989,7 +989,7 @@
|
||||
BOOL WINAPI CopyFileExW(LPCWSTR,LPCWSTR,LPPROGRESS_ROUTINE,LPVOID,LPBOOL,DWORD);
|
||||
#define RtlMoveMemory memmove
|
||||
#define RtlCopyMemory memcpy
|
||||
-#define RtlFillMemory memset
|
||||
+#define RtlFillMemory(d,l,f) memset ((d),(f),(l))
|
||||
#define RtlZeroMemory(d,l) memset((d),0,(l))
|
||||
#define MoveMemory RtlMoveMemory
|
||||
#define CopyMemory RtlCopyMemory
|
||||
|
||||
--- i386-mingw32\include\winsock.h Sat Jul 31 17:48:50 1999
|
||||
+++ winsock.h Mon Mar 20 13:47:12 2000
|
||||
@@ -13,6 +13,10 @@
|
||||
#define _GNU_H_WINDOWS32_SOCKETS
|
||||
#include <windows.h>
|
||||
|
||||
+#ifdef __cplusplus
|
||||
+extern "C" {
|
||||
+#endif
|
||||
+
|
||||
#ifndef _SYS_TYPES_H
|
||||
typedef unsigned char u_char;
|
||||
typedef unsigned short u_short;
|
||||
@@ -495,4 +499,9 @@
|
||||
typedef struct timeval TIMEVAL;
|
||||
typedef struct timeval *PTIMEVAL;
|
||||
typedef struct timeval *LPTIMEVAL;
|
||||
+
|
||||
+#ifdef __cplusplus
|
||||
+}
|
||||
#endif
|
||||
+#endif
|
||||
+
|
||||
|
||||
|
600
acinclude.m4
@@ -1,600 +0,0 @@
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl
|
||||
dnl Macros for configure.in for wxWindows by Robert Roebling, Phil Blecker,
|
||||
dnl Vadim Zeitlin and Ron Lee
|
||||
dnl
|
||||
dnl This script is under the wxWindows licence.
|
||||
dnl
|
||||
dnl Version: $Id$
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
dnl ===========================================================================
|
||||
dnl macros to find the a file in the list of include/lib paths
|
||||
dnl ===========================================================================
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl call WX_PATH_FIND_INCLUDES(search path, header name), sets ac_find_includes
|
||||
dnl to the full name of the file that was found or leaves it empty if not found
|
||||
dnl ---------------------------------------------------------------------------
|
||||
AC_DEFUN([WX_PATH_FIND_INCLUDES],
|
||||
[
|
||||
ac_find_includes=
|
||||
for ac_dir in $1 /usr/include;
|
||||
do
|
||||
if test -f "$ac_dir/$2"; then
|
||||
ac_find_includes=$ac_dir
|
||||
break
|
||||
fi
|
||||
done
|
||||
])
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl call WX_PATH_FIND_LIBRARIES(search path, header name), sets ac_find_libraries
|
||||
dnl to the full name of the file that was found or leaves it empty if not found
|
||||
dnl ---------------------------------------------------------------------------
|
||||
AC_DEFUN([WX_PATH_FIND_LIBRARIES],
|
||||
[
|
||||
ac_find_libraries=
|
||||
for ac_dir in $1 /usr/lib;
|
||||
do
|
||||
for ac_extension in a so sl dylib; do
|
||||
if test -f "$ac_dir/lib$2.$ac_extension"; then
|
||||
ac_find_libraries=$ac_dir
|
||||
break 2
|
||||
fi
|
||||
done
|
||||
done
|
||||
])
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl Path to include, already defined
|
||||
dnl ---------------------------------------------------------------------------
|
||||
AC_DEFUN([WX_INCLUDE_PATH_EXIST],
|
||||
[
|
||||
dnl never add -I/usr/include to the CPPFLAGS
|
||||
if test "x$1" = "x/usr/include"; then
|
||||
ac_path_to_include=""
|
||||
else
|
||||
echo "$2" | grep "\-I$1" > /dev/null
|
||||
result=$?
|
||||
if test $result = 0; then
|
||||
ac_path_to_include=""
|
||||
else
|
||||
ac_path_to_include=" -I$1"
|
||||
fi
|
||||
fi
|
||||
])
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl Path to link, already defined
|
||||
dnl ---------------------------------------------------------------------------
|
||||
AC_DEFUN([WX_LINK_PATH_EXIST],
|
||||
[
|
||||
echo "$2" | grep "\-L$1" > /dev/null
|
||||
result=$?
|
||||
if test $result = 0; then
|
||||
ac_path_to_link=""
|
||||
else
|
||||
ac_path_to_link=" -L$1"
|
||||
fi
|
||||
])
|
||||
|
||||
dnl ===========================================================================
|
||||
dnl C++ features test
|
||||
dnl ===========================================================================
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl WX_CPP_NEW_HEADERS checks whether the compiler has "new" <iostream> header
|
||||
dnl or only the old <iostream.h> one - it may be generally assumed that if
|
||||
dnl <iostream> exists, the other "new" headers (without .h) exist too.
|
||||
dnl
|
||||
dnl call WX_CPP_NEW_HEADERS(actiof-if-true, action-if-false-or-cross-compiling)
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
AC_DEFUN([WX_CPP_NEW_HEADERS],
|
||||
[
|
||||
if test "$cross_compiling" = "yes"; then
|
||||
ifelse([$2], , :, [$2])
|
||||
else
|
||||
AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
|
||||
AC_CHECK_HEADERS(iostream)
|
||||
|
||||
if test "$ac_cv_header_iostream" = "yes" ; then
|
||||
ifelse([$1], , :, [$1])
|
||||
else
|
||||
ifelse([$2], , :, [$2])
|
||||
fi
|
||||
|
||||
AC_LANG_RESTORE
|
||||
fi
|
||||
])
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl WX_CPP_BOOL checks whether the C++ compiler has a built in bool type
|
||||
dnl
|
||||
dnl call WX_CPP_BOOL - will define HAVE_BOOL if the compiler supports bool
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
AC_DEFUN([WX_CPP_BOOL],
|
||||
[
|
||||
AC_CACHE_CHECK([if C++ compiler supports bool], wx_cv_cpp_bool,
|
||||
[
|
||||
AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
|
||||
AC_TRY_COMPILE(
|
||||
[
|
||||
],
|
||||
[
|
||||
bool b = true;
|
||||
|
||||
return 0;
|
||||
],
|
||||
[
|
||||
wx_cv_cpp_bool=yes
|
||||
],
|
||||
[
|
||||
wx_cv_cpp_bool=no
|
||||
]
|
||||
)
|
||||
|
||||
AC_LANG_RESTORE
|
||||
])
|
||||
|
||||
if test "$wx_cv_cpp_bool" = "yes"; then
|
||||
AC_DEFINE(HAVE_BOOL)
|
||||
fi
|
||||
])
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl WX_CPP_EXPLICIT checks whether the C++ compiler support the explicit
|
||||
dnl keyword and defines HAVE_EXPLICIT if this is the case
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
AC_DEFUN([WX_CPP_EXPLICIT],
|
||||
[
|
||||
AC_CACHE_CHECK([if C++ compiler supports the explicit keyword],
|
||||
wx_cv_explicit,
|
||||
[
|
||||
AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
|
||||
dnl do the test in 2 steps: first check that the compiler knows about the
|
||||
dnl explicit keyword at all and then verify that it really honours it
|
||||
AC_TRY_COMPILE(
|
||||
[
|
||||
class Foo { public: explicit Foo(int) {} };
|
||||
],
|
||||
[
|
||||
return 0;
|
||||
],
|
||||
[
|
||||
AC_TRY_COMPILE(
|
||||
[
|
||||
class Foo { public: explicit Foo(int) {} };
|
||||
static void TakeFoo(const Foo& foo) { }
|
||||
],
|
||||
[
|
||||
TakeFoo(17);
|
||||
return 0;
|
||||
],
|
||||
wx_cv_explicit=no,
|
||||
wx_cv_explicit=yes
|
||||
)
|
||||
],
|
||||
wx_cv_explicit=no
|
||||
)
|
||||
|
||||
AC_LANG_RESTORE
|
||||
])
|
||||
|
||||
if test "$wx_cv_explicit" = "yes"; then
|
||||
AC_DEFINE(HAVE_EXPLICIT)
|
||||
fi
|
||||
])
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl a slightly better AC_C_BIGENDIAN macro which allows cross-compiling
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
AC_DEFUN([WX_C_BIGENDIAN],
|
||||
[AC_CACHE_CHECK([whether byte ordering is bigendian], ac_cv_c_bigendian,
|
||||
[ac_cv_c_bigendian=unknown
|
||||
# See if sys/param.h defines the BYTE_ORDER macro.
|
||||
AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <sys/param.h>], [
|
||||
#if !BYTE_ORDER || !BIG_ENDIAN || !LITTLE_ENDIAN
|
||||
bogus endian macros
|
||||
#endif], [# It does; now see whether it defined to BIG_ENDIAN or not.
|
||||
AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <sys/param.h>], [
|
||||
#if BYTE_ORDER != BIG_ENDIAN
|
||||
not big endian
|
||||
#endif], ac_cv_c_bigendian=yes, ac_cv_c_bigendian=no)])
|
||||
if test $ac_cv_c_bigendian = unknown; then
|
||||
AC_TRY_RUN([main () {
|
||||
/* Are we little or big endian? From Harbison&Steele. */
|
||||
union
|
||||
{
|
||||
long l;
|
||||
char c[sizeof (long)];
|
||||
} u;
|
||||
u.l = 1;
|
||||
exit (u.c[sizeof (long) - 1] == 1);
|
||||
}], [ac_cv_c_bigendian=no], [ac_cv_c_bigendian=yes], [ac_cv_c_bigendian=unknown])
|
||||
fi])
|
||||
if test $ac_cv_c_bigendian = unknown; then
|
||||
AC_MSG_WARN([Assuming little-endian target machine - this may be overriden by adding the line "ac_cv_c_bigendian=${ac_cv_c_bigendian='yes'}" to config.cache file])
|
||||
fi
|
||||
if test $ac_cv_c_bigendian = yes; then
|
||||
AC_DEFINE(WORDS_BIGENDIAN)
|
||||
fi
|
||||
])
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl override AC_ARG_ENABLE/WITH to cache the results in .cache file
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
AC_DEFUN([WX_ARG_CACHE_INIT],
|
||||
[
|
||||
wx_arg_cache_file="configarg.cache"
|
||||
echo "loading argument cache $wx_arg_cache_file"
|
||||
rm -f ${wx_arg_cache_file}.tmp
|
||||
touch ${wx_arg_cache_file}.tmp
|
||||
touch ${wx_arg_cache_file}
|
||||
])
|
||||
|
||||
AC_DEFUN([WX_ARG_CACHE_FLUSH],
|
||||
[
|
||||
echo "saving argument cache $wx_arg_cache_file"
|
||||
mv ${wx_arg_cache_file}.tmp ${wx_arg_cache_file}
|
||||
])
|
||||
|
||||
dnl this macro checks for a three-valued command line --with argument:
|
||||
dnl possible arguments are 'yes', 'no', 'sys', or 'builtin'
|
||||
dnl usage: WX_ARG_SYS_WITH(option, helpmessage, variable-name)
|
||||
AC_DEFUN([WX_ARG_SYS_WITH],
|
||||
[
|
||||
AC_MSG_CHECKING([for --with-$1])
|
||||
no_cache=0
|
||||
AC_ARG_WITH($1, [$2],
|
||||
[
|
||||
if test "$withval" = yes; then
|
||||
ac_cv_use_$1='$3=yes'
|
||||
elif test "$withval" = no; then
|
||||
ac_cv_use_$1='$3=no'
|
||||
elif test "$withval" = sys; then
|
||||
ac_cv_use_$1='$3=sys'
|
||||
elif test "$withval" = builtin; then
|
||||
ac_cv_use_$1='$3=builtin'
|
||||
else
|
||||
AC_MSG_ERROR([Invalid value for --with-$1: should be yes, no, sys, or builtin])
|
||||
fi
|
||||
],
|
||||
[
|
||||
LINE=`grep "$3" ${wx_arg_cache_file}`
|
||||
if test "x$LINE" != x ; then
|
||||
eval "DEFAULT_$LINE"
|
||||
else
|
||||
no_cache=1
|
||||
fi
|
||||
|
||||
ac_cv_use_$1='$3='$DEFAULT_$3
|
||||
])
|
||||
|
||||
eval "$ac_cv_use_$1"
|
||||
if test "$no_cache" != 1; then
|
||||
echo $ac_cv_use_$1 >> ${wx_arg_cache_file}.tmp
|
||||
fi
|
||||
|
||||
if test "$$3" = yes; then
|
||||
AC_MSG_RESULT(yes)
|
||||
elif test "$$3" = no; then
|
||||
AC_MSG_RESULT(no)
|
||||
elif test "$$3" = sys; then
|
||||
AC_MSG_RESULT([system version])
|
||||
elif test "$$3" = builtin; then
|
||||
AC_MSG_RESULT([builtin version])
|
||||
else
|
||||
AC_MSG_ERROR([Invalid value for --with-$1: should be yes, no, sys, or builtin])
|
||||
fi
|
||||
])
|
||||
|
||||
dnl this macro checks for a command line argument and caches the result
|
||||
dnl usage: WX_ARG_WITH(option, helpmessage, variable-name)
|
||||
AC_DEFUN([WX_ARG_WITH],
|
||||
[
|
||||
AC_MSG_CHECKING([for --with-$1])
|
||||
no_cache=0
|
||||
AC_ARG_WITH($1, [$2],
|
||||
[
|
||||
if test "$withval" = yes; then
|
||||
ac_cv_use_$1='$3=yes'
|
||||
else
|
||||
ac_cv_use_$1='$3=no'
|
||||
fi
|
||||
],
|
||||
[
|
||||
LINE=`grep "$3" ${wx_arg_cache_file}`
|
||||
if test "x$LINE" != x ; then
|
||||
eval "DEFAULT_$LINE"
|
||||
else
|
||||
no_cache=1
|
||||
fi
|
||||
|
||||
ac_cv_use_$1='$3='$DEFAULT_$3
|
||||
])
|
||||
|
||||
eval "$ac_cv_use_$1"
|
||||
if test "$no_cache" != 1; then
|
||||
echo $ac_cv_use_$1 >> ${wx_arg_cache_file}.tmp
|
||||
fi
|
||||
|
||||
if test "$$3" = yes; then
|
||||
AC_MSG_RESULT(yes)
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
fi
|
||||
])
|
||||
|
||||
dnl like WX_ARG_WITH but uses AC_ARG_ENABLE instead of AC_ARG_WITH
|
||||
dnl usage: WX_ARG_ENABLE(option, helpmessage, variable-name, enablestring)
|
||||
dnl
|
||||
dnl enablestring is a hack and allows to show "checking for --disable-foo"
|
||||
dnl message when running configure instead of the default "checking for
|
||||
dnl --enable-foo" one whih is useful for the options enabled by default
|
||||
AC_DEFUN([WX_ARG_ENABLE],
|
||||
[
|
||||
enablestring=$4
|
||||
AC_MSG_CHECKING([for --${enablestring:-enable}-$1])
|
||||
no_cache=0
|
||||
AC_ARG_ENABLE($1, [$2],
|
||||
[
|
||||
if test "$enableval" = yes; then
|
||||
ac_cv_use_$1='$3=yes'
|
||||
else
|
||||
ac_cv_use_$1='$3=no'
|
||||
fi
|
||||
],
|
||||
[
|
||||
LINE=`grep "$3" ${wx_arg_cache_file}`
|
||||
if test "x$LINE" != x ; then
|
||||
eval "DEFAULT_$LINE"
|
||||
else
|
||||
no_cache=1
|
||||
fi
|
||||
|
||||
ac_cv_use_$1='$3='$DEFAULT_$3
|
||||
])
|
||||
|
||||
eval "$ac_cv_use_$1"
|
||||
if test "$no_cache" != 1; then
|
||||
echo $ac_cv_use_$1 >> ${wx_arg_cache_file}.tmp
|
||||
fi
|
||||
|
||||
if test "$$3" = yes; then
|
||||
AC_MSG_RESULT(yes)
|
||||
else
|
||||
AC_MSG_RESULT(no)
|
||||
fi
|
||||
])
|
||||
|
||||
|
||||
dnl ===========================================================================
|
||||
dnl Linker features test
|
||||
dnl ===========================================================================
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl WX_VERSIONED_SYMBOLS checks whether the linker can create versioned
|
||||
dnl symbols. If it can, sets LDFLAGS_VERSIONING to $CXX flags needed to use
|
||||
dnl version script file named versionfile
|
||||
dnl
|
||||
dnl call WX_VERSIONED_SYMBOLS(versionfile)
|
||||
dnl ---------------------------------------------------------------------------
|
||||
AC_DEFUN([WX_VERSIONED_SYMBOLS],
|
||||
[
|
||||
found_versioning=no
|
||||
|
||||
dnl FIXME - doesn't work, Solaris linker doesn't accept wildcards
|
||||
dnl in the script.
|
||||
dnl dnl Check for known non-gcc cases:
|
||||
dnl case "${host}" in
|
||||
dnl *-*-solaris2* )
|
||||
dnl if test "x$GCC" != "xyes" ; then
|
||||
dnl LDFLAGS_VERSIONING="-M $1"
|
||||
dnl found_versioning=yes
|
||||
dnl fi
|
||||
dnl ;;
|
||||
dnl esac
|
||||
|
||||
dnl Generic check for GCC or GCC-like behaviour (Intel C++, GCC):
|
||||
if test $found_versioning = no ; then
|
||||
AC_CACHE_CHECK([if the linker accepts --version-script], wx_cv_version_script,
|
||||
[
|
||||
echo "VER_1 { *; };" >conftest.sym
|
||||
echo "int main() { return 0; }" >conftest.cpp
|
||||
|
||||
if AC_TRY_COMMAND([
|
||||
$CXX -o conftest.output $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.cpp
|
||||
-Wl,--version-script,conftest.sym >/dev/null 2>conftest.stderr]) ; then
|
||||
if test -s conftest.stderr ; then
|
||||
wx_cv_version_script=no
|
||||
else
|
||||
wx_cv_version_script=yes
|
||||
fi
|
||||
else
|
||||
wx_cv_version_script=no
|
||||
fi
|
||||
rm -f conftest.output conftest.stderr conftest.sym conftest.cpp
|
||||
])
|
||||
if test $wx_cv_version_script = yes ; then
|
||||
LDFLAGS_VERSIONING="-Wl,--version-script,$1"
|
||||
fi
|
||||
fi
|
||||
])
|
||||
|
||||
|
||||
dnl ===========================================================================
|
||||
dnl "3rd party" macros included here because they are not widely available
|
||||
dnl ===========================================================================
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl test for availability of iconv()
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
dnl From Bruno Haible.
|
||||
|
||||
AC_DEFUN([AM_ICONV],
|
||||
[
|
||||
dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and
|
||||
dnl those with the standalone portable GNU libiconv installed).
|
||||
|
||||
AC_ARG_WITH([libiconv-prefix],
|
||||
[ --with-libiconv-prefix=DIR search for libiconv in DIR/include and DIR/lib], [
|
||||
for dir in `echo "$withval" | tr : ' '`; do
|
||||
if test -d $dir/include; then CPPFLAGS="$CPPFLAGS -I$dir/include"; fi
|
||||
if test -d $dir/lib; then LDFLAGS="$LDFLAGS -L$dir/lib"; fi
|
||||
done
|
||||
])
|
||||
|
||||
AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [
|
||||
am_cv_func_iconv="no, consider installing GNU libiconv"
|
||||
am_cv_lib_iconv=no
|
||||
AC_TRY_LINK([#include <stdlib.h>
|
||||
#include <iconv.h>],
|
||||
[iconv_t cd = iconv_open("","");
|
||||
iconv(cd,NULL,NULL,NULL,NULL);
|
||||
iconv_close(cd);],
|
||||
am_cv_func_iconv=yes)
|
||||
if test "$am_cv_func_iconv" != yes; then
|
||||
am_save_LIBS="$LIBS"
|
||||
LIBS="$LIBS -liconv"
|
||||
AC_TRY_LINK([#include <stdlib.h>
|
||||
#include <iconv.h>],
|
||||
[iconv_t cd = iconv_open("","");
|
||||
iconv(cd,NULL,NULL,NULL,NULL);
|
||||
iconv_close(cd);],
|
||||
am_cv_lib_iconv=yes
|
||||
am_cv_func_iconv=yes)
|
||||
LIBS="$am_save_LIBS"
|
||||
fi
|
||||
])
|
||||
if test "$am_cv_func_iconv" = yes; then
|
||||
AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.])
|
||||
AC_CACHE_CHECK([if iconv needs const], wx_cv_func_iconv_const,
|
||||
AC_TRY_COMPILE([
|
||||
#include <stdlib.h>
|
||||
#include <iconv.h>
|
||||
extern
|
||||
#ifdef __cplusplus
|
||||
"C"
|
||||
#endif
|
||||
#if defined(__STDC__) || defined(__cplusplus)
|
||||
size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
|
||||
#else
|
||||
size_t iconv();
|
||||
#endif
|
||||
],
|
||||
[],
|
||||
wx_cv_func_iconv_const="no",
|
||||
wx_cv_func_iconv_const="yes"
|
||||
)
|
||||
)
|
||||
|
||||
iconv_const=
|
||||
if test "x$wx_cv_func_iconv_const" = "xyes"; then
|
||||
iconv_const="const"
|
||||
fi
|
||||
|
||||
AC_DEFINE_UNQUOTED(ICONV_CONST, $iconv_const,
|
||||
[Define as const if the declaration of iconv() needs const.])
|
||||
fi
|
||||
LIBICONV=
|
||||
if test "$am_cv_lib_iconv" = yes; then
|
||||
LIBICONV="-liconv"
|
||||
fi
|
||||
AC_SUBST(LIBICONV)
|
||||
])
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl AC_SYS_LARGEFILE (partly based on the code from autoconf 2.5x)
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
dnl WX_SYS_LARGEFILE_TEST
|
||||
dnl
|
||||
dnl NB: original autoconf test was checking if compiler supported 6 bit off_t
|
||||
dnl arithmetic properly but this failed miserably with gcc under Linux
|
||||
dnl whereas the system still supports 64 bit files, so now simply check
|
||||
dnl that off_t is big enough
|
||||
define(WX_SYS_LARGEFILE_TEST,
|
||||
[typedef struct {
|
||||
unsigned int field: sizeof(off_t) == 8;
|
||||
} wxlf;
|
||||
])
|
||||
|
||||
|
||||
dnl WX_SYS_LARGEFILE_MACRO_VALUE(C-MACRO, VALUE, CACHE-VAR)
|
||||
define(WX_SYS_LARGEFILE_MACRO_VALUE,
|
||||
[
|
||||
AC_CACHE_CHECK([for $1 value needed for large files], [$3],
|
||||
[
|
||||
AC_TRY_COMPILE([#define $1 $2
|
||||
#include <sys/types.h>],
|
||||
WX_SYS_LARGEFILE_TEST,
|
||||
[$3=$2],
|
||||
[$3=no])
|
||||
]
|
||||
)
|
||||
|
||||
if test "$$3" != no; then
|
||||
wx_largefile=yes
|
||||
AC_DEFINE_UNQUOTED([$1], [$$3])
|
||||
fi
|
||||
])
|
||||
|
||||
|
||||
dnl AC_SYS_LARGEFILE
|
||||
dnl ----------------
|
||||
dnl By default, many hosts won't let programs access large files;
|
||||
dnl one must use special compiler options to get large-file access to work.
|
||||
dnl For more details about this brain damage please see:
|
||||
dnl http://www.sas.com/standards/large.file/x_open.20Mar96.html
|
||||
AC_DEFUN([AC_SYS_LARGEFILE],
|
||||
[AC_ARG_ENABLE(largefile,
|
||||
[ --disable-largefile omit support for large files])
|
||||
if test "$enable_largefile" != no; then
|
||||
dnl _FILE_OFFSET_BITS==64 is needed for Linux, Solaris, ...
|
||||
dnl _LARGE_FILES -- for AIX
|
||||
wx_largefile=no
|
||||
WX_SYS_LARGEFILE_MACRO_VALUE(_FILE_OFFSET_BITS, 64, ac_cv_sys_file_offset_bits)
|
||||
if test "x$wx_largefile" != "xyes"; then
|
||||
WX_SYS_LARGEFILE_MACRO_VALUE(_LARGE_FILES, 1, ac_cv_sys_large_files)
|
||||
fi
|
||||
|
||||
AC_MSG_CHECKING(if large file support is available)
|
||||
if test "x$wx_largefile" = "xyes"; then
|
||||
AC_DEFINE(HAVE_LARGEFILE_SUPPORT)
|
||||
fi
|
||||
AC_MSG_RESULT($wx_largefile)
|
||||
fi
|
||||
])
|
||||
|
||||
|
||||
dnl Available from the GNU Autoconf Macro Archive at:
|
||||
dnl http://www.gnu.org/software/ac-archive/htmldoc/ac_cxx_const_cast.html
|
||||
dnl
|
||||
AC_DEFUN([AC_CXX_CONST_CAST],
|
||||
[AC_CACHE_CHECK(whether the compiler supports const_cast<>,
|
||||
ac_cv_cxx_const_cast,
|
||||
[AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
AC_TRY_COMPILE(,[int x = 0;const int& y = x;int& z = const_cast<int&>(y);return z;],
|
||||
ac_cv_cxx_const_cast=yes, ac_cv_cxx_const_cast=no)
|
||||
AC_LANG_RESTORE
|
||||
])
|
||||
if test "$ac_cv_cxx_const_cast" = yes; then
|
||||
AC_DEFINE(HAVE_CONST_CAST,,[define if the compiler supports const_cast<>])
|
||||
fi
|
||||
])
|
1063
aclocal.m4
vendored
@@ -1,21 +0,0 @@
|
||||
/* XPM */
|
||||
static char * addbookm_xpm[] = {
|
||||
"16 15 3 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"+ c #C3F9BD",
|
||||
" .. ",
|
||||
" .. ",
|
||||
" .. . ",
|
||||
"........ .+. ",
|
||||
"........ .+++. ",
|
||||
" .. .+++++. ",
|
||||
" .. .+++++. ",
|
||||
" .. .+++++. ",
|
||||
" .+++++. ",
|
||||
" .+++++. ",
|
||||
" .+++++. ",
|
||||
" ....++. ",
|
||||
" .+. ",
|
||||
" .. ",
|
||||
" . "};
|
24
art/back.xpm
@@ -1,24 +0,0 @@
|
||||
/* XPM */
|
||||
static char * back_xpm[] = {
|
||||
"16 16 5 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"+ c #C0E4CB",
|
||||
"@ c #77C490",
|
||||
"# c #808080",
|
||||
" ",
|
||||
" ",
|
||||
" . ",
|
||||
" .. ",
|
||||
" .+. ",
|
||||
" .++........ ",
|
||||
" .++@+++++++. ",
|
||||
" .++@@@@@@@@@. ",
|
||||
" .+@@@@@@@@@. ",
|
||||
" #.+@........ ",
|
||||
" #.+.####### ",
|
||||
" #..# ",
|
||||
" #.# ",
|
||||
" ## ",
|
||||
" # ",
|
||||
" "};
|
@@ -1,32 +0,0 @@
|
||||
/* XPM */
|
||||
static char *cross_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"10 10 16 1",
|
||||
" c Gray0",
|
||||
". c #bf0000",
|
||||
"X c #00bf00",
|
||||
"o c #bfbf00",
|
||||
"O c #0000bf",
|
||||
"+ c #bf00bf",
|
||||
"@ c #00bfbf",
|
||||
"# c None",
|
||||
"$ c #808080",
|
||||
"% c Red",
|
||||
"& c Green",
|
||||
"* c Yellow",
|
||||
"= c Blue",
|
||||
"- c Magenta",
|
||||
"; c Cyan",
|
||||
": c Gray100",
|
||||
/* pixels */
|
||||
" ######## ",
|
||||
" #### ",
|
||||
"# ## #",
|
||||
"## ##",
|
||||
"### ###",
|
||||
"### ###",
|
||||
"## ##",
|
||||
"# ## #",
|
||||
" #### ",
|
||||
" ###### "
|
||||
};
|
@@ -1,31 +0,0 @@
|
||||
/* XPM */
|
||||
static char * deffile_xpm[] = {
|
||||
"16 16 12 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"+ c #808080",
|
||||
"@ c #FFFFFF",
|
||||
"# c #282829",
|
||||
"$ c #505052",
|
||||
"% c #78787B",
|
||||
"& c #A0A0A4",
|
||||
"* c #404040",
|
||||
"= c #1F1F1F",
|
||||
"- c #3F3F3F",
|
||||
"; c #2F2F2F",
|
||||
" ",
|
||||
" ....... ",
|
||||
" .+@@@@@@# ",
|
||||
" .+@@@@@@$% ",
|
||||
" .+@@@@@@$&% ",
|
||||
" .+@@@@@@#$$# ",
|
||||
" .+@@@@@@@@@@. ",
|
||||
" .+@@@@@@@@@@. ",
|
||||
" .+@@@@@@@@@@. ",
|
||||
" .+@@@@@@@@@@. ",
|
||||
" .+@@@@@@@@@@. ",
|
||||
" .+@@@@@@@@@@. ",
|
||||
" .*++++++++++. ",
|
||||
" .=---=;-----. ",
|
||||
" ",
|
||||
" "};
|
@@ -1,23 +0,0 @@
|
||||
/* XPM */
|
||||
static char * delbookm_xpm[] = {
|
||||
"16 15 5 1",
|
||||
" c None",
|
||||
". c #808080",
|
||||
"+ c #000000",
|
||||
"@ c #FFFFFF",
|
||||
"# c #F4D4D6",
|
||||
" .+++++. ",
|
||||
".+@+++@+. ",
|
||||
"+@@@+@@@+ + ",
|
||||
"++@@@@@++ +#+ ",
|
||||
"+++@@@++++###+ ",
|
||||
"++@@@@@++#####+ ",
|
||||
"+@@@+@@@+####+ ",
|
||||
".+@+++@+.###+ ",
|
||||
" .+++++.###+ ",
|
||||
" +#####+ ",
|
||||
" +#####+ ",
|
||||
" ++++##+ ",
|
||||
" +#+ ",
|
||||
" ++ ",
|
||||
" + "};
|
@@ -1,42 +0,0 @@
|
||||
/* XPM */
|
||||
static char *dir_up_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"20 20 16 1",
|
||||
" c Gray0",
|
||||
". c #800000",
|
||||
"X c #008000",
|
||||
"o c #808000",
|
||||
"O c #000080",
|
||||
"+ c #800080",
|
||||
"@ c #008080",
|
||||
"# c None",
|
||||
"$ c #808080",
|
||||
"% c Red",
|
||||
"& c Green",
|
||||
"* c Yellow",
|
||||
"= c Blue",
|
||||
"- c Magenta",
|
||||
"; c Cyan",
|
||||
": c Gray100",
|
||||
/* pixels */
|
||||
"####################",
|
||||
"####################",
|
||||
"####################",
|
||||
"#### ###########",
|
||||
"### *:*:* ##########",
|
||||
"## ####",
|
||||
"## :*:*:*:*:*:*: ###",
|
||||
"## *:*: :*:*:*:* ###",
|
||||
"## :*: :*:*:*: ###",
|
||||
"## *: :*:*:* ###",
|
||||
"## :*:* *:*:*:*: ###",
|
||||
"## *:*: :*:*:*:* ###",
|
||||
"## :*:* :*: ###",
|
||||
"## *:*:*:*:*:*:* ###",
|
||||
"## :*:*:*:*:*:*: ###",
|
||||
"## ###",
|
||||
"####################",
|
||||
"####################",
|
||||
"####################",
|
||||
"####################",
|
||||
};
|
24
art/down.xpm
@@ -1,24 +0,0 @@
|
||||
/* XPM */
|
||||
static char * down_xpm[] = {
|
||||
"16 16 5 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"+ c #808080",
|
||||
"@ c #C0E4CB",
|
||||
"# c #77C490",
|
||||
" ",
|
||||
" .....+ ",
|
||||
" .@##.+ ",
|
||||
" .@##.+ ",
|
||||
" .@##.+ ",
|
||||
" .@##.+ ",
|
||||
" .@##.+ ",
|
||||
" .@##.+++++ ",
|
||||
" ....@##....+ ",
|
||||
" .@@####@.+ ",
|
||||
" .@@##@.+ ",
|
||||
" .@@@.+ ",
|
||||
" .@.+ ",
|
||||
" . ",
|
||||
" ",
|
||||
" "};
|
@@ -1,76 +0,0 @@
|
||||
/* XPM */
|
||||
static char * exefile_xpm[] = {
|
||||
"16 16 57 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"+ c #808080",
|
||||
"@ c #650000",
|
||||
"# c #CB0000",
|
||||
"$ c #700000",
|
||||
"% c #CDCDCD",
|
||||
"& c #D2D2D2",
|
||||
"* c #D7D7D7",
|
||||
"= c #282829",
|
||||
"- c #FF0000",
|
||||
"; c #E60000",
|
||||
"> c #FFFFFF",
|
||||
", c #505052",
|
||||
"' c #78787B",
|
||||
") c #CC0000",
|
||||
"! c #F70000",
|
||||
"~ c #A0A0A4",
|
||||
"{ c #8C4848",
|
||||
"] c #FFA0A0",
|
||||
"^ c #A95959",
|
||||
"/ c #DBDBDB",
|
||||
"( c #F7F7F7",
|
||||
"_ c #0000C8",
|
||||
": c #0000F4",
|
||||
"< c #ECECEC",
|
||||
"[ c #1010BC",
|
||||
"} c #1313E8",
|
||||
"| c #EDEDED",
|
||||
"1 c #8B8B8B",
|
||||
"2 c #AFAFAF",
|
||||
"3 c #C4C4C4",
|
||||
"4 c #FDFDFD",
|
||||
"5 c #E8E8E8",
|
||||
"6 c #FFFF00",
|
||||
"7 c #007300",
|
||||
"8 c #00B200",
|
||||
"9 c #BFBFBF",
|
||||
"0 c #CBCBCB",
|
||||
"a c #DEDEDE",
|
||||
"b c #00A800",
|
||||
"c c #00FF00",
|
||||
"d c #BEBEBE",
|
||||
"e c #FCFCFC",
|
||||
"f c #7D7D7D",
|
||||
"g c #F8F8F8",
|
||||
"h c #888888",
|
||||
"i c #F8F800",
|
||||
"j c #F7F700",
|
||||
"k c #006200",
|
||||
"l c #00A100",
|
||||
"m c #757575",
|
||||
"n c #959595",
|
||||
"o c #404040",
|
||||
"p c #1F1F1F",
|
||||
"q c #3F3F3F",
|
||||
"r c #2F2F2F",
|
||||
" ",
|
||||
" ........ ",
|
||||
" .+@#$%&*= ",
|
||||
" .+#-;>>>,' ",
|
||||
" .+)-!>>>,~' ",
|
||||
" .+{]^>>>=,,= ",
|
||||
" .+/>(>>>>>_:. ",
|
||||
" .+<>>>>>>>[}. ",
|
||||
" .+|>>>>>>>12. ",
|
||||
" .+|>>>>>>>34. ",
|
||||
" .+/>56667894. ",
|
||||
" .+0>a666bcde. ",
|
||||
" .+fghiijklmn. ",
|
||||
" .o++++++++++. ",
|
||||
" .pqqqpprqqqq. ",
|
||||
" "};
|
@@ -1,26 +0,0 @@
|
||||
/* XPM */
|
||||
static char *fileopen_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 5 1",
|
||||
" c None",
|
||||
". c Black",
|
||||
"X c Yellow",
|
||||
"o c Gray100",
|
||||
"O c #bfbf00",
|
||||
/* pixels */
|
||||
" ",
|
||||
" ... ",
|
||||
" . . .",
|
||||
" ..",
|
||||
" ... ...",
|
||||
" .XoX....... ",
|
||||
" .oXoXoXoXo. ",
|
||||
" .XoXoXoXoX. ",
|
||||
" .oXoX..........",
|
||||
" .XoX.OOOOOOOOO.",
|
||||
" .oo.OOOOOOOOO. ",
|
||||
" .X.OOOOOOOOO. ",
|
||||
" ..OOOOOOOOO. ",
|
||||
" ........... ",
|
||||
" "
|
||||
};
|
@@ -1,28 +0,0 @@
|
||||
/* XPM */
|
||||
static char * folder_xpm[] = {
|
||||
/* width height ncolors chars_per_pixel */
|
||||
"16 16 6 1",
|
||||
/* colors */
|
||||
" s None c None",
|
||||
". c #000000",
|
||||
"+ c #c0c0c0",
|
||||
"@ c #808080",
|
||||
"# c #ffff00",
|
||||
"$ c #ffffff",
|
||||
/* pixels */
|
||||
" ",
|
||||
" @@@@@ ",
|
||||
" @#+#+#@ ",
|
||||
" @#+#+#+#@@@@@@ ",
|
||||
" @$$$$$$$$$$$$@.",
|
||||
" @$#+#+#+#+#+#@.",
|
||||
" @$+#+#+#+#+#+@.",
|
||||
" @$#+#+#+#+#+#@.",
|
||||
" @$+#+#+#+#+#+@.",
|
||||
" @$#+#+#+#+#+#@.",
|
||||
" @$+#+#+#+#+#+@.",
|
||||
" @$#+#+#+#+#+#@.",
|
||||
" @@@@@@@@@@@@@@.",
|
||||
" ..............",
|
||||
" ",
|
||||
" "};
|
@@ -1,24 +0,0 @@
|
||||
/* XPM */
|
||||
static char * forward_xpm[] = {
|
||||
"16 16 5 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"+ c #C0E4CB",
|
||||
"@ c #77C490",
|
||||
"# c #808080",
|
||||
" ",
|
||||
" ",
|
||||
" . ",
|
||||
" .. ",
|
||||
" .+. ",
|
||||
" ........++. ",
|
||||
" .+++++++@++. ",
|
||||
" .@@@@@@@@@++. ",
|
||||
" .@@@@@@@@@+. ",
|
||||
" ........@+.# ",
|
||||
" #######.+.# ",
|
||||
" #..# ",
|
||||
" #.# ",
|
||||
" ## ",
|
||||
" # ",
|
||||
" "};
|
@@ -1,522 +0,0 @@
|
||||
/* XPM */
|
||||
static char * error_xpm[] = {
|
||||
"48 48 471 2",
|
||||
" c None",
|
||||
". c #FD3819",
|
||||
"+ c #FD3319",
|
||||
"@ c #FA3019",
|
||||
"# c #F33119",
|
||||
"$ c #EE301A",
|
||||
"% c #EB311B",
|
||||
"& c #E9301A",
|
||||
"* c #E9321C",
|
||||
"= c #EB331E",
|
||||
"- c #FF3A1A",
|
||||
"; c #FF3318",
|
||||
"> c #ED2E17",
|
||||
", c #D32914",
|
||||
"' c #C32714",
|
||||
") c #BA2614",
|
||||
"! c #B52514",
|
||||
"~ c #B22514",
|
||||
"{ c #B12615",
|
||||
"] c #B42717",
|
||||
"^ c #BC2A18",
|
||||
"/ c #C62C1A",
|
||||
"( c #CD2E1C",
|
||||
"_ c #CF2F1C",
|
||||
": c #FF3216",
|
||||
"< c #DD2A14",
|
||||
"[ c #C32613",
|
||||
"} c #B32311",
|
||||
"| c #AE2312",
|
||||
"1 c #AB2313",
|
||||
"2 c #A82212",
|
||||
"3 c #A52212",
|
||||
"4 c #961F11",
|
||||
"5 c #952011",
|
||||
"6 c #A22314",
|
||||
"7 c #A72516",
|
||||
"8 c #A92718",
|
||||
"9 c #AB2719",
|
||||
"0 c #B32A1A",
|
||||
"a c #BD2C1D",
|
||||
"b c #B52A1C",
|
||||
"c c #FD3518",
|
||||
"d c #EB2D14",
|
||||
"e c #C32512",
|
||||
"f c #B12311",
|
||||
"g c #AC2211",
|
||||
"h c #A92211",
|
||||
"i c #A82312",
|
||||
"j c #A62212",
|
||||
"k c #9F2112",
|
||||
"l c #A32313",
|
||||
"m c #A72415",
|
||||
"n c #A62617",
|
||||
"o c #A32518",
|
||||
"p c #A62718",
|
||||
"q c #A62719",
|
||||
"r c #A8291B",
|
||||
"s c #AD2A1B",
|
||||
"t c #AB291C",
|
||||
"u c #FE3317",
|
||||
"v c #D82914",
|
||||
"w c #B92311",
|
||||
"x c #A92111",
|
||||
"y c #A72212",
|
||||
"z c #962011",
|
||||
"A c #A02214",
|
||||
"B c #A72517",
|
||||
"C c #A62618",
|
||||
"D c #A2271A",
|
||||
"E c #A5281B",
|
||||
"F c #A5291B",
|
||||
"G c #A82A1D",
|
||||
"H c #A5291D",
|
||||
"I c #FF3417",
|
||||
"J c #D02813",
|
||||
"K c #B32310",
|
||||
"L c #A92110",
|
||||
"M c #A82211",
|
||||
"N c #A82313",
|
||||
"O c #A42313",
|
||||
"P c #9B2013",
|
||||
"Q c #A62517",
|
||||
"R c #AB3326",
|
||||
"S c #A5281A",
|
||||
"T c #A2281C",
|
||||
"U c #A42A1D",
|
||||
"V c #98271C",
|
||||
"W c #FD3517",
|
||||
"X c #D52913",
|
||||
"Y c #A82314",
|
||||
"Z c #A72414",
|
||||
"` c #A42415",
|
||||
" . c #9D2214",
|
||||
".. c #A02416",
|
||||
"+. c #A52516",
|
||||
"@. c #A52719",
|
||||
"#. c #AA3427",
|
||||
"$. c #AA3428",
|
||||
"%. c #A4291C",
|
||||
"&. c #9B281C",
|
||||
"*. c #A1291D",
|
||||
"=. c #A1291E",
|
||||
"-. c #9E2A1E",
|
||||
";. c #852319",
|
||||
">. c #FC391A",
|
||||
",. c #E22B15",
|
||||
"'. c #B62412",
|
||||
"). c #AC3021",
|
||||
"!. c #AC3022",
|
||||
"~. c #9C2316",
|
||||
"{. c #992416",
|
||||
"]. c #A22618",
|
||||
"^. c #A5271A",
|
||||
"/. c #AA3529",
|
||||
"(. c #A93529",
|
||||
"_. c #A9362A",
|
||||
":. c #A42A1E",
|
||||
"<. c #A42B1E",
|
||||
"[. c #A02A1F",
|
||||
"}. c #A02A20",
|
||||
"|. c #99291E",
|
||||
"1. c #671C16",
|
||||
"2. c #FC3017",
|
||||
"3. c #BE2512",
|
||||
"4. c #AA2F20",
|
||||
"5. c #A92F20",
|
||||
"6. c #AC3123",
|
||||
"7. c #A02518",
|
||||
"8. c #962417",
|
||||
"9. c #9C2518",
|
||||
"0. c #A5291C",
|
||||
"a. c #A9362B",
|
||||
"b. c #A9372B",
|
||||
"c. c #A32B1F",
|
||||
"d. c #A32C20",
|
||||
"e. c #A02B20",
|
||||
"f. c #9E2A20",
|
||||
"g. c #8C271D",
|
||||
"h. c #FA3619",
|
||||
"i. c #AE2212",
|
||||
"j. c #A82414",
|
||||
"k. c #941F12",
|
||||
"l. c #9E2E20",
|
||||
"m. c #AB3224",
|
||||
"n. c #AB3225",
|
||||
"o. c #A3271A",
|
||||
"p. c #942417",
|
||||
"q. c #962418",
|
||||
"r. c #A1281C",
|
||||
"s. c #A42B1F",
|
||||
"t. c #A8372C",
|
||||
"u. c #A8382D",
|
||||
"v. c #A32C21",
|
||||
"w. c #A02C20",
|
||||
"x. c #A02C21",
|
||||
"y. c #962920",
|
||||
"z. c #5B1A13",
|
||||
"A. c #FA3118",
|
||||
"B. c #BB2513",
|
||||
"C. c #A42212",
|
||||
"D. c #981F11",
|
||||
"E. c #9D2314",
|
||||
"F. c #AA3326",
|
||||
"G. c #A3281B",
|
||||
"H. c #922519",
|
||||
"I. c #902419",
|
||||
"J. c #9D271B",
|
||||
"K. c #A8382E",
|
||||
"L. c #A8392E",
|
||||
"M. c #A22D22",
|
||||
"N. c #A02D22",
|
||||
"O. c #9B2C21",
|
||||
"P. c #7D231C",
|
||||
"Q. c #DD2D17",
|
||||
"R. c #AF2413",
|
||||
"S. c #A62213",
|
||||
"T. c #9C2112",
|
||||
"U. c #AA3327",
|
||||
"V. c #AF3F33",
|
||||
"W. c #A2291C",
|
||||
"X. c #99271B",
|
||||
"Y. c #92251B",
|
||||
"Z. c #9B281D",
|
||||
"`. c #A22D21",
|
||||
" + c #A7392F",
|
||||
".+ c #A93F2F",
|
||||
"++ c #A12F22",
|
||||
"@+ c #A02E23",
|
||||
"#+ c #88281F",
|
||||
"$+ c #300E0B",
|
||||
"%+ c #F6361B",
|
||||
"&+ c #C72816",
|
||||
"*+ c #A92413",
|
||||
"=+ c #D48D1D",
|
||||
"-+ c #E4AF21",
|
||||
";+ c #E3AF22",
|
||||
">+ c #E1AE24",
|
||||
",+ c #E0AD25",
|
||||
"'+ c #DFAE28",
|
||||
")+ c #DEAD29",
|
||||
"!+ c #DDA82A",
|
||||
"~+ c #DDAC2A",
|
||||
"{+ c #DEB139",
|
||||
"]+ c #DFB445",
|
||||
"^+ c #DDB03A",
|
||||
"/+ c #DAAC2F",
|
||||
"(+ c #D9A832",
|
||||
"_+ c #D9AC32",
|
||||
":+ c #D8A733",
|
||||
"<+ c #D2A332",
|
||||
"[+ c #C89B30",
|
||||
"}+ c #D1A333",
|
||||
"|+ c #D4A637",
|
||||
"1+ c #D3A638",
|
||||
"2+ c #C1782E",
|
||||
"3+ c #A12D22",
|
||||
"4+ c #9F2E24",
|
||||
"5+ c #902B22",
|
||||
"6+ c #41130F",
|
||||
"7+ c #F7321B",
|
||||
"8+ c #BD2716",
|
||||
"9+ c #DCAD2D",
|
||||
"0+ c #DBAC2E",
|
||||
"a+ c #DAAE39",
|
||||
"b+ c #DBAF3A",
|
||||
"c+ c #DBAD3E",
|
||||
"d+ c #D7A734",
|
||||
"e+ c #D5A634",
|
||||
"f+ c #D2A436",
|
||||
"g+ c #D3A63A",
|
||||
"h+ c #D2A539",
|
||||
"i+ c #A12F25",
|
||||
"j+ c #9F2F25",
|
||||
"k+ c #952C23",
|
||||
"l+ c #4D1712",
|
||||
"m+ c #F1321B",
|
||||
"n+ c #B52615",
|
||||
"o+ c #E2B232",
|
||||
"p+ c #DAA82F",
|
||||
"q+ c #D5A82E",
|
||||
"r+ c #D1A230",
|
||||
"s+ c #D9AB3E",
|
||||
"t+ c #DAAC3F",
|
||||
"u+ c #D6A735",
|
||||
"v+ c #D1A53C",
|
||||
"w+ c #A13026",
|
||||
"x+ c #9F2F26",
|
||||
"y+ c #962E24",
|
||||
"z+ c #571B15",
|
||||
"A+ c #020303",
|
||||
"B+ c #EE321B",
|
||||
"C+ c #E0B234",
|
||||
"D+ c #DFB135",
|
||||
"E+ c #D3A332",
|
||||
"F+ c #D0A131",
|
||||
"G+ c #D5A533",
|
||||
"H+ c #D8AC40",
|
||||
"I+ c #C79D37",
|
||||
"J+ c #C59C39",
|
||||
"K+ c #C49C3A",
|
||||
"L+ c #A13027",
|
||||
"M+ c #9E3026",
|
||||
"N+ c #942D25",
|
||||
"O+ c #581B16",
|
||||
"P+ c #010202",
|
||||
"Q+ c #E4311B",
|
||||
"R+ c #B12617",
|
||||
"S+ c #DFAD36",
|
||||
"T+ c #DFB036",
|
||||
"U+ c #D3A433",
|
||||
"V+ c #CC9F32",
|
||||
"W+ c #D2A435",
|
||||
"X+ c #D6AB42",
|
||||
"Y+ c #D5AB43",
|
||||
"Z+ c #D0A53D",
|
||||
"`+ c #D0A53F",
|
||||
" @ c #A03127",
|
||||
".@ c #9E3027",
|
||||
"+@ c #912D25",
|
||||
"@@ c #4E1814",
|
||||
"#@ c #000101",
|
||||
"$@ c #DF301C",
|
||||
"%@ c #B12718",
|
||||
"&@ c #CC9D30",
|
||||
"*@ c #D1A436",
|
||||
"=@ c #CA9E34",
|
||||
"-@ c #CFA337",
|
||||
";@ c #D4AA44",
|
||||
">@ c #D3AA47",
|
||||
",@ c #CFA53E",
|
||||
"'@ c #CFA540",
|
||||
")@ c #A03128",
|
||||
"!@ c #9E3128",
|
||||
"~@ c #892B24",
|
||||
"{@ c #3D130F",
|
||||
"]@ c #D02E1B",
|
||||
"^@ c #B62819",
|
||||
"/@ c #CD8622",
|
||||
"(@ c #DCB03B",
|
||||
"_@ c #CB9D31",
|
||||
":@ c #D1A437",
|
||||
"<@ c #CBA037",
|
||||
"[@ c #CFA338",
|
||||
"}@ c #D2AA48",
|
||||
"|@ c #C18138",
|
||||
"1@ c #A03229",
|
||||
"2@ c #9A3029",
|
||||
"3@ c #7F2821",
|
||||
"4@ c #240B0A",
|
||||
"5@ c #B72819",
|
||||
"6@ c #BA2B1A",
|
||||
"7@ c #A32618",
|
||||
"8@ c #9C271B",
|
||||
"9@ c #9A261B",
|
||||
"0@ c #A9372C",
|
||||
"a@ c #9A2B1F",
|
||||
"b@ c #992B20",
|
||||
"c@ c #A22E23",
|
||||
"d@ c #992C21",
|
||||
"e@ c #992C22",
|
||||
"f@ c #A02E24",
|
||||
"g@ c #9C2D23",
|
||||
"h@ c #A53D34",
|
||||
"i@ c #9D3129",
|
||||
"j@ c #953028",
|
||||
"k@ c #6C221D",
|
||||
"l@ c #0D0404",
|
||||
"m@ c #C72E1D",
|
||||
"n@ c #AB281A",
|
||||
"o@ c #98271B",
|
||||
"p@ c #95261B",
|
||||
"q@ c #9F291E",
|
||||
"r@ c #A6362B",
|
||||
"s@ c #A32D21",
|
||||
"t@ c #902A1F",
|
||||
"u@ c #A22F24",
|
||||
"v@ c #982D23",
|
||||
"w@ c #A02F25",
|
||||
"x@ c #9D2F26",
|
||||
"y@ c #9F3026",
|
||||
"z@ c #A53E35",
|
||||
"A@ c #9F332A",
|
||||
"B@ c #9D322A",
|
||||
"C@ c #8B2C26",
|
||||
"D@ c #4E1915",
|
||||
"E@ c #010101",
|
||||
"F@ c #AE281A",
|
||||
"G@ c #AD291B",
|
||||
"H@ c #A2271B",
|
||||
"I@ c #99281C",
|
||||
"J@ c #9E291F",
|
||||
"K@ c #9A291E",
|
||||
"L@ c #A2362C",
|
||||
"M@ c #A22E24",
|
||||
"N@ c #87281E",
|
||||
"O@ c #8A291F",
|
||||
"P@ c #982D24",
|
||||
"Q@ c #9C2F26",
|
||||
"R@ c #9F3128",
|
||||
"S@ c #A23E36",
|
||||
"T@ c #983129",
|
||||
"U@ c #752620",
|
||||
"V@ c #1D0908",
|
||||
"W@ c #020202",
|
||||
"X@ c #6B1B12",
|
||||
"Y@ c #B42C1D",
|
||||
"Z@ c #A8291C",
|
||||
"`@ c #9A2A1E",
|
||||
" # c #A22B20",
|
||||
".# c #A3382E",
|
||||
"+# c #A1372D",
|
||||
"@# c #9C2C21",
|
||||
"## c #9F2D23",
|
||||
"$# c #A12F24",
|
||||
"%# c #9A2C23",
|
||||
"&# c #9D2F25",
|
||||
"*# c #972D25",
|
||||
"=# c #9D3027",
|
||||
"-# c #9E3129",
|
||||
";# c #9F332B",
|
||||
"># c #9F3E36",
|
||||
",# c #8F3832",
|
||||
"'# c #4E1A16",
|
||||
")# c #8A2216",
|
||||
"!# c #AD2B1D",
|
||||
"~# c #A4291D",
|
||||
"{# c #A73A2F",
|
||||
"]# c #A02D23",
|
||||
"^# c #9D2E23",
|
||||
"/# c #972E26",
|
||||
"(# c #9F322A",
|
||||
"_# c #9E3229",
|
||||
":# c #9D332B",
|
||||
"<# c #8F2F28",
|
||||
"[# c #66221D",
|
||||
"}# c #100605",
|
||||
"|# c #A12A1F",
|
||||
"1# c #A63B31",
|
||||
"2# c #972F27",
|
||||
"3# c #9C322A",
|
||||
"4# c #94302A",
|
||||
"5# c #722620",
|
||||
"6# c #270D0B",
|
||||
"7# c #3A0F0B",
|
||||
"8# c #9C281C",
|
||||
"9# c #9F3930",
|
||||
"0# c #8F2A22",
|
||||
"a# c #982E25",
|
||||
"b# c #963028",
|
||||
"c# c #963029",
|
||||
"d# c #772822",
|
||||
"e# c #361210",
|
||||
"f# c #030303",
|
||||
"g# c #330D09",
|
||||
"h# c #8B251C",
|
||||
"i# c #9B2A1F",
|
||||
"j# c #A23B32",
|
||||
"k# c #90362F",
|
||||
"l# c #982E26",
|
||||
"m# c #A0322A",
|
||||
"n# c #9D332A",
|
||||
"o# c #9A322A",
|
||||
"p# c #8D2E28",
|
||||
"q# c #6D241F",
|
||||
"r# c #33100E",
|
||||
"s# c #1D0907",
|
||||
"t# c #6E1E16",
|
||||
"u# c #96291F",
|
||||
"v# c #9D2B21",
|
||||
"w# c #9F2E23",
|
||||
"x# c #9D3A32",
|
||||
"y# c #943029",
|
||||
"z# c #832C25",
|
||||
"A# c #5C1F1B",
|
||||
"B# c #1E0A08",
|
||||
"C# c #000000",
|
||||
"D# c #41130E",
|
||||
"E# c #85251C",
|
||||
"F# c #912920",
|
||||
"G# c #972C22",
|
||||
"H# c #9C2D24",
|
||||
"I# c #9E3127",
|
||||
"J# c #A23D35",
|
||||
"K# c #9D3229",
|
||||
"L# c #9A312A",
|
||||
"M# c #933028",
|
||||
"N# c #832B24",
|
||||
"O# c #6B241E",
|
||||
"P# c #401512",
|
||||
"Q# c #070302",
|
||||
"R# c #0C0403",
|
||||
"S# c #37100D",
|
||||
"T# c #681E17",
|
||||
"U# c #81261E",
|
||||
"V# c #8B2921",
|
||||
"W# c #8F2B23",
|
||||
"X# c #942E26",
|
||||
"Y# c #902D26",
|
||||
"Z# c #842A24",
|
||||
"`# c #5C1E1A",
|
||||
" $ c #36120F",
|
||||
".$ c #0D0504",
|
||||
"+$ c #170706",
|
||||
"@$ c #2D0E0B",
|
||||
"#$ c #401310",
|
||||
"$$ c #4E1813",
|
||||
"%$ c #581C17",
|
||||
"&$ c #401411",
|
||||
"*$ c #2B0E0C",
|
||||
"=$ c #140706",
|
||||
"-$ c #030202",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" . + @ # $ % & * = ",
|
||||
" - ; > , ' ) ! ~ ~ { ] ^ / ( _ ",
|
||||
" : < [ } | 1 2 3 4 5 6 7 7 8 9 0 a b ",
|
||||
" c d e f g h 2 i j k l m 7 7 n o p q r s t ",
|
||||
" u v w g x h 2 y j z A m 7 B n C q q D E F G H ",
|
||||
" I J K L x M 2 N N O P O 7 Q n C R R S E F T U U V ",
|
||||
" W X f L h 2 2 N Y Z m ` ...+.C q @.#.$.F %.&.*.=.-.;. ",
|
||||
" >.,.'.L h 2 i N Y ).!.7 7 +.~.{.].^.S E /.(._.:.<.[.}.|.1. ",
|
||||
" 2.3.g h 2 i N 4.5.m 6.6.n C p 7.8.9.E 0.%.U a.b.c.d.e.f.g. ",
|
||||
" h., i.M 2 N N j.k.l.6.B m.n.q q S o.p.q.r.U :.s.t.u.v.w.x.y.z. ",
|
||||
" A.B.M 2 C.D.Z m E.7 Q m.n.R F.S E F G.H.I.J.s.c.d.K.L.M.N.O.P. ",
|
||||
" Q.R.y N S.T.m 7 7 n C C R U.V.$.0.%.U W.X.Y.Z.d.v.`. +.+++@+#+$+ ",
|
||||
" %+&+*+=+-+-+;+>+>+,+'+'+)+!+~+{+]+^+/+(+_+:+<+[+}+|+|+1+2+3+4+5+6+ ",
|
||||
" 7+8+N -+;+;+>+>+,+'+'+)+~+~+9+0+a+b+c+_+:+d+d+e+f+|+1+g+h+i+j+k+l+ ",
|
||||
" m+n+Z ;+;+>+o+,+'+)+)+~+9+9+0+p+q+r+s+t+d+u+u+|+1+1+g+v+v+w+x+y+z+A+ ",
|
||||
" B+{ m ;+>+,+,+C+D+)+~+9+9+0+/+/+(+E+F+G+H+H+|+1+1+I+J+J+K+L+M+N+O+P+ ",
|
||||
" Q+R+7 >+,+'+'+)+S+T+9+0+0+/+(+_+:+d+U+V+W+X+Y+Y+g+v+v+Z+`+ @.@+@@@#@ ",
|
||||
" $@%@7 ,+'+'+)+~+~+{+^+0+/+(+_+&@d+d+u+*@=@-@g+;@>@Z+Z+,@'@)@!@~@{@#@ ",
|
||||
" ]@^@n /@)+)+~+~+9+0+^+(@(+_+:+_@_@u+|+|+:@<@[@v+}@}@,@'@|@1@2@3@4@#@ ",
|
||||
" 5@6@C 7@q S E F 8@9@U a.0@c.d.v.a@b@c@d@e@f@g@j+L+ @h@1@1@i@j@k@l@P+ ",
|
||||
" m@n@@.S E F %.U o@p@q@r@d.v.s@M.t@t@u@v@i+w@x@y@)@1@z@A@B@C@D@E@A+ ",
|
||||
" F@G@S H@0.%.U :.<.I@J@K@L@x.M.c@M@N@O@P@P@L+y@Q@R@1@A@S@T@U@V@W@ ",
|
||||
" X@Y@Z@0.%.U :.<.c.d.`@ #.#+#@###$#%#&#w+*#)@)@=#-#A@;#>#,#'#E@A+ ",
|
||||
" )#!#~#*.:.<.c.d.d.a@b@M.{#]#^#f@w+w+ @/#/#1@(#_#;#:#<#[#}#W@A+ ",
|
||||
" 8@U =.|#c.d.v.s@M.d@d@M@1#i+w+L+ @)@1@2#(#;#;#3#4#5#6#E@A+ ",
|
||||
" 7#8#[.[.e.v.s@M.c@c@u@i+1#9#0#a#)@1@1@b#c#;#:#4#d#e#E@W@f# ",
|
||||
" g#h#i#e.x.x.c@M@$#i+w+P@j#k#l#1@m#A@;#n#o#p#q#r#E@W@A+ ",
|
||||
" s#t#u#v#N.]#w#i+w+w+ @/#x#z@(#A@B@o#y#z#A#B#E@W@A+ ",
|
||||
" C#D#E#F#G#H#j+j+M+.@I#!@J#K#L#M#N#O#P#Q#W@W@A+ ",
|
||||
" C#R#S#T#U#V#W#N+X#X#Y#C@Z#U@`# $.$E@W@W@f# ",
|
||||
" f#W@+$@$#$$$O+%$D@&$*$=$-$W@W@W@A+ ",
|
||||
" f#f#W@W@W@W@W@W@W@W@W@W@W@A+f# ",
|
||||
" f#f#E@E@A+#@f#f#f# ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" "};
|
474
art/gtk/info.xpm
@@ -1,474 +0,0 @@
|
||||
/* XPM */
|
||||
static char * info_xpm[] = {
|
||||
"48 48 423 2",
|
||||
" c None",
|
||||
". c #FEFEFE",
|
||||
"+ c #FFFFFF",
|
||||
"@ c #F1F1F1",
|
||||
"# c #CACACA",
|
||||
"$ c #CBCBCB",
|
||||
"% c #EDEDED",
|
||||
"& c #999999",
|
||||
"* c #4B4B4B",
|
||||
"= c #131313",
|
||||
"- c #2E2E2E",
|
||||
"; c #393732",
|
||||
"> c #423F36",
|
||||
", c #242119",
|
||||
"' c #282828",
|
||||
") c #626262",
|
||||
"! c #C2C2C2",
|
||||
"~ c #FAFAFA",
|
||||
"{ c #2D2D2D",
|
||||
"] c #736F61",
|
||||
"^ c #E0CE8A",
|
||||
"/ c #EFDD8F",
|
||||
"( c #F4E298",
|
||||
"_ c #F4E191",
|
||||
": c #F3E093",
|
||||
"< c #ECD78C",
|
||||
"[ c #D8C78E",
|
||||
"} c #B7AA7C",
|
||||
"| c #9B8C5A",
|
||||
"1 c #5F5C4F",
|
||||
"2 c #B6B6B6",
|
||||
"3 c #FEFEFD",
|
||||
"4 c #A1A1A1",
|
||||
"5 c #1E1E1E",
|
||||
"6 c #C2BEAF",
|
||||
"7 c #F1DC92",
|
||||
"8 c #F5E190",
|
||||
"9 c #F7E7A5",
|
||||
"0 c #F8EAAE",
|
||||
"a c #F9E9A7",
|
||||
"b c #F8E795",
|
||||
"c c #F8E796",
|
||||
"d c #F5E49C",
|
||||
"e c #EBDB99",
|
||||
"f c #E2CD7F",
|
||||
"g c #D7C480",
|
||||
"h c #21201E",
|
||||
"i c #838383",
|
||||
"j c #F9F9F9",
|
||||
"k c #DDD9CA",
|
||||
"l c #EFD986",
|
||||
"m c #EFDA8E",
|
||||
"n c #F8EAAF",
|
||||
"o c #F9F0C7",
|
||||
"p c #FAF5DE",
|
||||
"q c #FAF3D0",
|
||||
"r c #FAEAA6",
|
||||
"s c #F9E89E",
|
||||
"t c #F8E793",
|
||||
"u c #F7E493",
|
||||
"v c #EFDD93",
|
||||
"w c #E5D187",
|
||||
"x c #DFD2A9",
|
||||
"y c #595958",
|
||||
"z c #939393",
|
||||
"A c #474747",
|
||||
"B c #BAB6A9",
|
||||
"C c #F5E4A3",
|
||||
"D c #F4DE87",
|
||||
"E c #F4E7B2",
|
||||
"F c #F9F5E3",
|
||||
"G c #FAF6E6",
|
||||
"H c #FBF8ED",
|
||||
"I c #FBF9EF",
|
||||
"J c #FAF8EC",
|
||||
"K c #FAF3DA",
|
||||
"L c #F9E99B",
|
||||
"M c #F8E791",
|
||||
"N c #F6E38F",
|
||||
"O c #EFDD92",
|
||||
"P c #DFCB80",
|
||||
"Q c #D7C896",
|
||||
"R c #333333",
|
||||
"S c #C9C9C9",
|
||||
"T c #B4B4B4",
|
||||
"U c #545454",
|
||||
"V c #F0DD9C",
|
||||
"W c #F3DF8D",
|
||||
"X c #F7E69F",
|
||||
"Y c #F8EFCF",
|
||||
"Z c #FAF5E5",
|
||||
"` c #F9F4E2",
|
||||
" . c #FBF6E7",
|
||||
".. c #FAF5E7",
|
||||
"+. c #FAF6E9",
|
||||
"@. c #FAEDB7",
|
||||
"#. c #F9E89B",
|
||||
"$. c #F8E691",
|
||||
"%. c #F5E391",
|
||||
"&. c #E8D68B",
|
||||
"*. c #D1BC70",
|
||||
"=. c #A29C84",
|
||||
"-. c #525252",
|
||||
";. c #848484",
|
||||
">. c #989585",
|
||||
",. c #EED681",
|
||||
"'. c #F5E293",
|
||||
"). c #F8E8A9",
|
||||
"!. c #FAF4E1",
|
||||
"~. c #FAF6E7",
|
||||
"{. c #F9F5E4",
|
||||
"]. c #F9F5E6",
|
||||
"^. c #F7EEC3",
|
||||
"/. c #F7E7A0",
|
||||
"(. c #F7E691",
|
||||
"_. c #F7E58F",
|
||||
":. c #F1E08E",
|
||||
"<. c #DBC878",
|
||||
"[. c #C6B677",
|
||||
"}. c #2A2A27",
|
||||
"|. c #DADADA",
|
||||
"1. c #646464",
|
||||
"2. c #C1B999",
|
||||
"3. c #EFD882",
|
||||
"4. c #F6E499",
|
||||
"5. c #F8EDBA",
|
||||
"6. c #FAF5E4",
|
||||
"7. c #FBF5E6",
|
||||
"8. c #FAF5E6",
|
||||
"9. c #F9F1DB",
|
||||
"0. c #F9F4E3",
|
||||
"a. c #F8F2DB",
|
||||
"b. c #F6EBBE",
|
||||
"c. c #F6E6A0",
|
||||
"d. c #F3E290",
|
||||
"e. c #E4D07E",
|
||||
"f. c #C1AE67",
|
||||
"g. c #646159",
|
||||
"h. c #A0A0A0",
|
||||
"i. c #EFD881",
|
||||
"j. c #F6E498",
|
||||
"k. c #FAF6E8",
|
||||
"l. c #F9F5E5",
|
||||
"m. c #F8F2DE",
|
||||
"n. c #F7EFD0",
|
||||
"o. c #F5E9C2",
|
||||
"p. c #F4E5A0",
|
||||
"q. c #F7E695",
|
||||
"r. c #F3E295",
|
||||
"s. c #E6D27E",
|
||||
"t. c #C6B36A",
|
||||
"u. c #79766C",
|
||||
"v. c #7B7B7B",
|
||||
"w. c #636363",
|
||||
"x. c #B8B095",
|
||||
"y. c #FBF8EE",
|
||||
"z. c #FAF7EB",
|
||||
"A. c #F9F6E5",
|
||||
"B. c #F9F6EA",
|
||||
"C. c #F9F4E0",
|
||||
"D. c #F4EAC9",
|
||||
"E. c #F7EBB1",
|
||||
"F. c #F5E7A2",
|
||||
"G. c #F6E697",
|
||||
"H. c #F6E59B",
|
||||
"I. c #F2E093",
|
||||
"J. c #E7D480",
|
||||
"K. c #CCB96E",
|
||||
"L. c #797157",
|
||||
"M. c #949494",
|
||||
"N. c #818181",
|
||||
"O. c #898782",
|
||||
"P. c #F0DC91",
|
||||
"Q. c #F6E496",
|
||||
"R. c #F7EAAF",
|
||||
"S. c #FBF7EC",
|
||||
"T. c #F9F6E7",
|
||||
"U. c #FAF5E8",
|
||||
"V. c #FBF7ED",
|
||||
"W. c #FAEEBB",
|
||||
"X. c #F8ECB8",
|
||||
"Y. c #F4EACA",
|
||||
"Z. c #F3E6A3",
|
||||
"`. c #F6E593",
|
||||
" + c #F6E493",
|
||||
".+ c #F2E090",
|
||||
"++ c #E4D17E",
|
||||
"@+ c #C4B269",
|
||||
"#+ c #6D664D",
|
||||
"$+ c #A5A5A5",
|
||||
"%+ c #BFBFBF",
|
||||
"&+ c #464646",
|
||||
"*+ c #EDD990",
|
||||
"=+ c #F2DC8A",
|
||||
"-+ c #F7E8A6",
|
||||
";+ c #FAF4D9",
|
||||
">+ c #F8F1DB",
|
||||
",+ c #F9F4E7",
|
||||
"'+ c #F9EFCB",
|
||||
")+ c #FAECAF",
|
||||
"!+ c #F5E7B2",
|
||||
"~+ c #EDE7BA",
|
||||
"{+ c #F2E29A",
|
||||
"]+ c #F6E591",
|
||||
"^+ c #F5E393",
|
||||
"/+ c #EFDC8B",
|
||||
"(+ c #D9C677",
|
||||
"_+ c #AB9B5B",
|
||||
":+ c #201D13",
|
||||
"<+ c #D5D5D5",
|
||||
"[+ c #FCFCFC",
|
||||
"}+ c #FDFDFC",
|
||||
"|+ c #6F6F6F",
|
||||
"1+ c #9B9584",
|
||||
"2+ c #F1DC86",
|
||||
"3+ c #F6E59D",
|
||||
"4+ c #FAF2D3",
|
||||
"5+ c #FBF7EA",
|
||||
"6+ c #F9F4E5",
|
||||
"7+ c #FAF3E5",
|
||||
"8+ c #F8ECB9",
|
||||
"9+ c #F6E7A7",
|
||||
"0+ c #F3E7AD",
|
||||
"a+ c #F1E3A4",
|
||||
"b+ c #F4E395",
|
||||
"c+ c #EADA91",
|
||||
"d+ c #E4D07F",
|
||||
"e+ c #CDBC70",
|
||||
"f+ c #817959",
|
||||
"g+ c #4E4E4E",
|
||||
"h+ c #DEDEDD",
|
||||
"i+ c #3E3E3E",
|
||||
"j+ c #EEDA8D",
|
||||
"k+ c #F7E8A7",
|
||||
"l+ c #FAF2D2",
|
||||
"m+ c #FAF7EA",
|
||||
"n+ c #F9F4E6",
|
||||
"o+ c #F7EED9",
|
||||
"p+ c #F1E6AD",
|
||||
"q+ c #F4E49D",
|
||||
"r+ c #F2E4A1",
|
||||
"s+ c #F1E19B",
|
||||
"t+ c #F0DF92",
|
||||
"u+ c #E5D48D",
|
||||
"v+ c #DBC97E",
|
||||
"w+ c #D9C577",
|
||||
"x+ c #B9A964",
|
||||
"y+ c #4F4938",
|
||||
"z+ c #A7A7A7",
|
||||
"A+ c #FDFDFD",
|
||||
"B+ c #262626",
|
||||
"C+ c #F2E097",
|
||||
"D+ c #F9EBB1",
|
||||
"E+ c #FAF3DB",
|
||||
"F+ c #F8F1DC",
|
||||
"G+ c #F7EFD8",
|
||||
"H+ c #F4E9C4",
|
||||
"I+ c #F3E4A1",
|
||||
"J+ c #F3E296",
|
||||
"K+ c #F1E195",
|
||||
"L+ c #E9DA96",
|
||||
"M+ c #E6D68C",
|
||||
"N+ c #DAC87E",
|
||||
"O+ c #DAC777",
|
||||
"P+ c #C4B36B",
|
||||
"Q+ c #958857",
|
||||
"R+ c #353535",
|
||||
"S+ c #F4F4F4",
|
||||
"T+ c #E4E4E4",
|
||||
"U+ c #434032",
|
||||
"V+ c #F3DE87",
|
||||
"W+ c #F8EBB1",
|
||||
"X+ c #F9F2DB",
|
||||
"Y+ c #F3EAC1",
|
||||
"Z+ c #F4E9C1",
|
||||
"`+ c #F3E6AD",
|
||||
" @ c #EEDB8B",
|
||||
".@ c #DCCB84",
|
||||
"+@ c #D1C076",
|
||||
"@@ c #D1BF73",
|
||||
"#@ c #C9B76D",
|
||||
"$@ c #9D9164",
|
||||
"%@ c #43433D",
|
||||
"&@ c #C2C2C1",
|
||||
"*@ c #4D493C",
|
||||
"=@ c #EFD782",
|
||||
"-@ c #F4E9BB",
|
||||
";@ c #F4E7BB",
|
||||
">@ c #F1DFA1",
|
||||
",@ c #F3E3A7",
|
||||
"'@ c #E3D186",
|
||||
")@ c #D9C679",
|
||||
"!@ c #CAB871",
|
||||
"~@ c #C1B372",
|
||||
"{@ c #AEA475",
|
||||
"]@ c #7F7A64",
|
||||
"^@ c #0B0B0B",
|
||||
"/@ c #7D7D7D",
|
||||
"(@ c #6D6D64",
|
||||
"_@ c #121211",
|
||||
":@ c #383526",
|
||||
"<@ c #5F5E59",
|
||||
"[@ c #5A594C",
|
||||
"}@ c #A9A077",
|
||||
"|@ c #E8D48D",
|
||||
"1@ c #E7D180",
|
||||
"2@ c #DBC77C",
|
||||
"3@ c #DBC97C",
|
||||
"4@ c #BAA864",
|
||||
"5@ c #8F8255",
|
||||
"6@ c #3B3724",
|
||||
"7@ c #0F0E0C",
|
||||
"8@ c #494949",
|
||||
"9@ c #BBBBBB",
|
||||
"0@ c #35352E",
|
||||
"a@ c #9D9D99",
|
||||
"b@ c #B4B4B2",
|
||||
"c@ c #EFEFEE",
|
||||
"d@ c #DADAD8",
|
||||
"e@ c #696964",
|
||||
"f@ c #1D1D16",
|
||||
"g@ c #928963",
|
||||
"h@ c #C2B071",
|
||||
"i@ c #B3A05E",
|
||||
"j@ c #A99959",
|
||||
"k@ c #474439",
|
||||
"l@ c #DCDCDC",
|
||||
"m@ c #F5F5F5",
|
||||
"n@ c #050504",
|
||||
"o@ c #161614",
|
||||
"p@ c #55554E",
|
||||
"q@ c #8D8D85",
|
||||
"r@ c #D4D4D1",
|
||||
"s@ c #F6F6F6",
|
||||
"t@ c #CACAC4",
|
||||
"u@ c #585851",
|
||||
"v@ c #4D4C47",
|
||||
"w@ c #80795F",
|
||||
"x@ c #716D5B",
|
||||
"y@ c #2A2A2A",
|
||||
"z@ c #D9D9D9",
|
||||
"A@ c #585858",
|
||||
"B@ c #23231F",
|
||||
"C@ c #C7C7C5",
|
||||
"D@ c #A9A9A4",
|
||||
"E@ c #3D3D35",
|
||||
"F@ c #131311",
|
||||
"G@ c #8D8D87",
|
||||
"H@ c #C3C3C1",
|
||||
"I@ c #7B7B7A",
|
||||
"J@ c #5C5C5B",
|
||||
"K@ c #0D0D0A",
|
||||
"L@ c #3B3B3B",
|
||||
"M@ c #BABABA",
|
||||
"N@ c #191919",
|
||||
"O@ c #525248",
|
||||
"P@ c #D7D7D3",
|
||||
"Q@ c #F7F7F7",
|
||||
"R@ c #CFCFC8",
|
||||
"S@ c #2F2F29",
|
||||
"T@ c #474742",
|
||||
"U@ c #71716F",
|
||||
"V@ c #757571",
|
||||
"W@ c #0F0F0F",
|
||||
"X@ c #ECECEC",
|
||||
"Y@ c #000000",
|
||||
"Z@ c #080807",
|
||||
"`@ c #96968E",
|
||||
" # c #DFDFDE",
|
||||
".# c #FBFBFB",
|
||||
"+# c #B3B3B1",
|
||||
"@# c #70706B",
|
||||
"## c #4F4F4E",
|
||||
"$# c #42423A",
|
||||
"%# c #434343",
|
||||
"&# c #BCBCB9",
|
||||
"*# c #AEAEA9",
|
||||
"=# c #4B4B44",
|
||||
"-# c #0F0F0E",
|
||||
";# c #92928D",
|
||||
"># c #929292",
|
||||
",# c #696968",
|
||||
"'# c #141412",
|
||||
")# c #878787",
|
||||
"!# c #75756C",
|
||||
"~# c #C3C3C2",
|
||||
"{# c #F0F0F0",
|
||||
"]# c #B9B9B1",
|
||||
"^# c #525249",
|
||||
"/# c #464644",
|
||||
"(# c #7F7F7B",
|
||||
"_# c #6D6D6D",
|
||||
":# c #050505",
|
||||
"<# c #44443B",
|
||||
"[# c #333331",
|
||||
"}# c #B3B3B0",
|
||||
"|# c #EFEFEF",
|
||||
"1# c #CFCFCE",
|
||||
"2# c #434342",
|
||||
"3# c #56564F",
|
||||
"4# c #272727",
|
||||
"5# c #161613",
|
||||
"6# c #12120F",
|
||||
"7# c #2C2C2A",
|
||||
"8# c #9E9E9A",
|
||||
"9# c #6B6B6A",
|
||||
"0# c #10100E",
|
||||
"a# c #21211D",
|
||||
"b# c #20201C",
|
||||
"c# c #383837",
|
||||
"d# c #737373",
|
||||
"e# c #141411",
|
||||
"f# c #090908",
|
||||
"g# c #0B0B09",
|
||||
"h# c #31312B",
|
||||
"i# c #33332F",
|
||||
"j# c #30302F",
|
||||
"k# c #101010",
|
||||
"l# c #4E4E45",
|
||||
"m# c #010101",
|
||||
"n# c #1A1A17",
|
||||
"o# c #0C0C0B",
|
||||
"p# c #020202",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" . . + + . . . ",
|
||||
" . . . . . . . . . . . . ",
|
||||
" + . . . . . . . . . . . . . . . ",
|
||||
" . . . . . . @ # $ $ % . . . . . . . ",
|
||||
" . . . . % & * = - ; > , ' ) ! ~ . . . . ",
|
||||
" . . . . ! { ] ^ / ( _ : < [ } | 1 2 . . . . ",
|
||||
" 3 . . . 4 5 6 7 8 9 0 a b c d e f g h i j . . + ",
|
||||
" . . . ! 5 k l m n o p q r s t u v w x y z . . . . ",
|
||||
" . . ~ A B C D E F G H I J K L M N O P Q R S . . . ",
|
||||
" . . . T U V W X Y Z ` ...+.G @.#.$.%.&.*.=.-.. . . ",
|
||||
" . . . ;.>.,.'.).!.~.` {.` ]...^./.(._.:.<.[.}.|.. . . ",
|
||||
" . . . 1.2.3.4.5.6.Z 7.8.9.0.a.b.c.$.$.d.e.f.g.h.. . . ",
|
||||
" . . . 1.2.i.j.5.{.k.k.l.` m.n.o.p.q.q.r.s.t.u.v.. . + ",
|
||||
" . . . w.x.i.'.5...y.z.A.B.C.D.E.F.G.H.I.J.K.L.M.. + + ",
|
||||
" . . . N.O.P.Q.R.Z S.T.U.V.W.X.Y.Z.`. +.+++@+#+$+. . + ",
|
||||
" . . %+&+*+=+-+;+y.>+,+'+)+!+~+{+]+^+/+(+_+:+<+. . . ",
|
||||
" [+}+j |+1+2+3+4+5+6+7+8+9+0+a+b+%.c+d+e+f+g+j . . ",
|
||||
" [+}+}+h+i+j+k+l+m+n+o+p+q+r+s+t+u+v+w+x+y+z+. . . ",
|
||||
" }+}+A+B+C+D+E+F+G+H+I+J+K+L+M+N+O+P+Q+R+S+. . . ",
|
||||
" [+}+T+U+V+W+X+Y+Z+`+s+/ @.@+@@@#@$@%@4 . . . ",
|
||||
" [+&@*@=@-@;@>@,@C+/ '@)@!@~@{@]@^@/@~ . . . ",
|
||||
" (@_@:@<@[@}@|@1@2@3@4@5@6@7@8@9@. . + + ",
|
||||
" 0@a@b@c@d@e@f@g@h@i@j@k@) l@m@. . . + ",
|
||||
" n@o@p@q@r@s@t@u@v@w@x@y@z@}+}+. . . ",
|
||||
" A@B@C@D@E@F@G@H@I@J@K@L@M@}+}+}+. ",
|
||||
" N@O@P@A+Q@R@S@T@U@V@W@X@[+[+[+ ",
|
||||
" Y@Z@S@`@ #.#+#@###$#%# ",
|
||||
" N@Y@&#*#=#-#;#>#|+,#'#)# ",
|
||||
" Y@!#~#{#{#]#^#/#(#_#:# ",
|
||||
" Y@Y@<#[#}#|#1#,#2#3#4# ",
|
||||
" Y@5#6#S@7#8#|+9#Y@ ",
|
||||
" Y@Y@0#a#b#c#,#d#Y@ ",
|
||||
" e#f#5#F@g#h#i#j#k# ",
|
||||
" l#m#e#n#o#0#Y@ ",
|
||||
" m#p# ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" "};
|
@@ -1,125 +0,0 @@
|
||||
/* XPM */
|
||||
static char * question_xpm[] = {
|
||||
"48 48 74 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"+ c #A27F3B",
|
||||
"@ c #B89243",
|
||||
"# c #D8AB4E",
|
||||
"$ c #9D7D3A",
|
||||
"% c #A6823C",
|
||||
"& c #7C622D",
|
||||
"* c #F7D899",
|
||||
"= c #F7E2B8",
|
||||
"- c #D8BA7B",
|
||||
"; c #BE9B53",
|
||||
"> c #F7C35A",
|
||||
", c #F7DFAF",
|
||||
"' c #F7E5C0",
|
||||
") c #F7D48C",
|
||||
"! c #F7CF7E",
|
||||
"~ c #D8B15F",
|
||||
"{ c #6E5526",
|
||||
"] c #F7DCA5",
|
||||
"^ c #A8843D",
|
||||
"/ c #937435",
|
||||
"( c #AA863E",
|
||||
"_ c #D8B66E",
|
||||
": c #BEA363",
|
||||
"< c #947536",
|
||||
"[ c #927335",
|
||||
"} c #F7C96D",
|
||||
"| c #80632D",
|
||||
"1 c #C39F57",
|
||||
"2 c #A38E55",
|
||||
"3 c #A48B5A",
|
||||
"4 c #D2A64D",
|
||||
"5 c #82662F",
|
||||
"6 c #654F24",
|
||||
"7 c #DCB463",
|
||||
"8 c #BE9544",
|
||||
"9 c #C3A466",
|
||||
"0 c #8C6D31",
|
||||
"a c #D2B06C",
|
||||
"b c #D8BE86",
|
||||
"c c #715929",
|
||||
"d c #B99344",
|
||||
"e c #B38D40",
|
||||
"f c #D8B56E",
|
||||
"g c #D8AC58",
|
||||
"h c #997A3B",
|
||||
"i c #000001",
|
||||
"j c #6B5527",
|
||||
"k c #C39F55",
|
||||
"l c #DCC494",
|
||||
"m c #DAB872",
|
||||
"n c #C9AC73",
|
||||
"o c #BFA16A",
|
||||
"p c #19150D",
|
||||
"q c #876A31",
|
||||
"r c #C9A45B",
|
||||
"s c #C6A76A",
|
||||
"t c #7F6941",
|
||||
"u c #977737",
|
||||
"v c #D8B165",
|
||||
"w c #D8AC5B",
|
||||
"x c #BEA272",
|
||||
"y c #C09745",
|
||||
"z c #D8B163",
|
||||
"A c #927C52",
|
||||
"B c #735F3B",
|
||||
"C c #A68748",
|
||||
"D c #1A1A1A",
|
||||
"E c #393939",
|
||||
"F c #221C12",
|
||||
"G c #DDBC74",
|
||||
"H c #D2A64C",
|
||||
"I c #705627",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ........ ",
|
||||
" ...+@#$%&... ",
|
||||
" ..#**=*---;%... ",
|
||||
" ..>,'*)>>>!-~%{.. ",
|
||||
" .>,]>^//(>>!_~%.. ",
|
||||
" .:*=><....[>>}~~|.. ",
|
||||
" .}'!<.. .1>!#~%.. ",
|
||||
" .2),#.. .3>}~#%.. ",
|
||||
" .4!>%.. .3}}_#5.. ",
|
||||
" .>!>%.. .3>__#6.. ",
|
||||
" .7~85.. .9}-#%... ",
|
||||
" ....... 0ab~#c.. ",
|
||||
" ..... .d)b#8... ",
|
||||
" .e}b##... ",
|
||||
" ..>)fgh..i ",
|
||||
" jklmnop.. ",
|
||||
" .qafrst.. ",
|
||||
" .u-vwx.. ",
|
||||
" .y-zwA.. ",
|
||||
" .#b~#B.. ",
|
||||
" .;-#8.. ",
|
||||
" .CC%|.. ",
|
||||
" .DE... ",
|
||||
" .... ",
|
||||
" ",
|
||||
" F.... ",
|
||||
" .G!)8.. ",
|
||||
" .!**#.. ",
|
||||
" .))~8.. ",
|
||||
" .)_#8.. ",
|
||||
" .H~8I.. ",
|
||||
" ...... ",
|
||||
" .... ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" "};
|
@@ -1,291 +0,0 @@
|
||||
/* XPM */
|
||||
static char * warning_xpm[] = {
|
||||
"48 48 240 2",
|
||||
" c None",
|
||||
". c #F42A14",
|
||||
"+ c #C62210",
|
||||
"@ c #F62B14",
|
||||
"# c #D22411",
|
||||
"$ c #A91D0F",
|
||||
"% c #85170C",
|
||||
"& c #F62913",
|
||||
"* c #D52511",
|
||||
"= c #A71D0E",
|
||||
"- c #A11C0E",
|
||||
"; c #9B1B0E",
|
||||
"> c #641209",
|
||||
", c #F72913",
|
||||
"' c #E02712",
|
||||
") c #B31F0F",
|
||||
"! c #A41C0E",
|
||||
"~ c #8A180C",
|
||||
"{ c #EC2913",
|
||||
"] c #B9200F",
|
||||
"^ c #B14010",
|
||||
"/ c #9A1C0F",
|
||||
"( c #631109",
|
||||
"_ c #F52A13",
|
||||
": c #CA2310",
|
||||
"< c #BB5B11",
|
||||
"[ c #C26F12",
|
||||
"} c #A31D0F",
|
||||
"| c #A01D0F",
|
||||
"1 c #921A0E",
|
||||
"2 c #F52913",
|
||||
"3 c #DB2612",
|
||||
"4 c #A61D0F",
|
||||
"5 c #E0AD11",
|
||||
"6 c #DFB112",
|
||||
"7 c #77150C",
|
||||
"8 c #B72010",
|
||||
"9 c #A31C0E",
|
||||
"0 c #E1AE12",
|
||||
"a c #D28814",
|
||||
"b c #9F1D10",
|
||||
"c c #911A0F",
|
||||
"d c #4D0D07",
|
||||
"e c #C56B12",
|
||||
"f c #A11D10",
|
||||
"g c #A21D10",
|
||||
"h c #73150C",
|
||||
"i c #DE2612",
|
||||
"j c #DCAE11",
|
||||
"k c #B9930E",
|
||||
"l c #DEAC13",
|
||||
"m c #CF8812",
|
||||
"n c #901A0F",
|
||||
"o c #490D07",
|
||||
"p c #EF2914",
|
||||
"q c #BA2010",
|
||||
"r c #D18912",
|
||||
"s c #C39B0F",
|
||||
"t c #010100",
|
||||
"u c #0E0B00",
|
||||
"v c #403105",
|
||||
"w c #A11D11",
|
||||
"x c #9E1D11",
|
||||
"y c #F32912",
|
||||
"z c #D12412",
|
||||
"A c #7A6109",
|
||||
"B c #070400",
|
||||
"C c #130F00",
|
||||
"D c #020200",
|
||||
"E c #CD8713",
|
||||
"F c #490E09",
|
||||
"G c #E82814",
|
||||
"H c #B21F10",
|
||||
"I c #E0B213",
|
||||
"J c #2C2303",
|
||||
"K c #030100",
|
||||
"L c #010000",
|
||||
"M c #191300",
|
||||
"N c #DCAB15",
|
||||
"O c #9D1E12",
|
||||
"P c #72150D",
|
||||
"Q c #C82312",
|
||||
"R c #251D02",
|
||||
"S c #000000",
|
||||
"T c #040300",
|
||||
"U c #292003",
|
||||
"V c #A01E12",
|
||||
"W c #8F1B10",
|
||||
"X c #DC2613",
|
||||
"Y c #271E02",
|
||||
"Z c #1D1602",
|
||||
"` c #423305",
|
||||
" . c #71150D",
|
||||
".. c #ED2914",
|
||||
"+. c #BD2111",
|
||||
"@. c #D08C13",
|
||||
"#. c #4E3D06",
|
||||
"$. c #403104",
|
||||
"%. c #453506",
|
||||
"&. c #DBAA16",
|
||||
"*. c #CC8614",
|
||||
"=. c #891A11",
|
||||
"-. c #470E09",
|
||||
";. c #F42914",
|
||||
">. c #D92613",
|
||||
",. c #1E1702",
|
||||
"'. c #251D03",
|
||||
"). c #413206",
|
||||
"!. c #9F1E13",
|
||||
"~. c #991D13",
|
||||
"{. c #5E110A",
|
||||
"]. c #EA2915",
|
||||
"^. c #A21D0F",
|
||||
"/. c #090700",
|
||||
"(. c #0B0900",
|
||||
"_. c #CC8615",
|
||||
":. c #9C1E13",
|
||||
"<. c #861910",
|
||||
"[. c #2C0805",
|
||||
"}. c #D42513",
|
||||
"|. c #050400",
|
||||
"1. c #100D01",
|
||||
"2. c #0A0800",
|
||||
"3. c #332704",
|
||||
"4. c #DAAA17",
|
||||
"5. c #981D14",
|
||||
"6. c #5E120C",
|
||||
"7. c #130F01",
|
||||
"8. c #524007",
|
||||
"9. c #9E1E14",
|
||||
"0. c #9B1E14",
|
||||
"a. c #7A1710",
|
||||
"b. c #382C05",
|
||||
"c. c #513F07",
|
||||
"d. c #151001",
|
||||
"e. c #71570A",
|
||||
"f. c #D8A919",
|
||||
"g. c #8D1B12",
|
||||
"h. c #490E0A",
|
||||
"i. c #BD9312",
|
||||
"j. c #675009",
|
||||
"k. c #312604",
|
||||
"l. c #C79A14",
|
||||
"m. c #CB8617",
|
||||
"n. c #9A1F15",
|
||||
"o. c #6D160E",
|
||||
"p. c #9D1F15",
|
||||
"q. c #871B12",
|
||||
"r. c #440E09",
|
||||
"s. c #B62111",
|
||||
"t. c #CB9E13",
|
||||
"u. c #241C03",
|
||||
"v. c #C49813",
|
||||
"w. c #D7A81A",
|
||||
"x. c #C16916",
|
||||
"y. c #971E15",
|
||||
"z. c #5C120D",
|
||||
"A. c #D22614",
|
||||
"B. c #CF8C12",
|
||||
"C. c #4B3A07",
|
||||
"D. c #020100",
|
||||
"E. c #69520A",
|
||||
"F. c #C98517",
|
||||
"G. c #991F16",
|
||||
"H. c #7B1912",
|
||||
"I. c #2B0A07",
|
||||
"J. c #EC2A16",
|
||||
"K. c #3C2E05",
|
||||
"L. c #090701",
|
||||
"M. c #745A0C",
|
||||
"N. c #9C1F16",
|
||||
"O. c #8C1C14",
|
||||
"P. c #460E0A",
|
||||
"Q. c #D82715",
|
||||
"R. c #C87E14",
|
||||
"S. c #E0AE14",
|
||||
"T. c #DFAD13",
|
||||
"U. c #312605",
|
||||
"V. c #7C610C",
|
||||
"W. c #D7A816",
|
||||
"X. c #BF6F16",
|
||||
"Y. c #61130E",
|
||||
"Z. c #EA2A16",
|
||||
"`. c #BF2212",
|
||||
" + c #B95B13",
|
||||
".+ c #C16F14",
|
||||
"++ c #C77E14",
|
||||
"@+ c #CB8914",
|
||||
"#+ c #DAAA16",
|
||||
"$+ c #DBAB17",
|
||||
"%+ c #D9AA19",
|
||||
"&+ c #D8A91A",
|
||||
"*+ c #D8A51C",
|
||||
"=+ c #C57E16",
|
||||
"-+ c #AB4216",
|
||||
";+ c #781812",
|
||||
">+ c #260806",
|
||||
",+ c #CD2513",
|
||||
"'+ c #9B1F17",
|
||||
")+ c #8B1C15",
|
||||
"!+ c #440E0A",
|
||||
"~+ c #78150B",
|
||||
"{+ c #520E07",
|
||||
"]+ c #6A130B",
|
||||
"^+ c #6F140B",
|
||||
"/+ c #78150C",
|
||||
"(+ c #86180D",
|
||||
"_+ c #8A190F",
|
||||
":+ c #931B10",
|
||||
"<+ c #981F17",
|
||||
"[+ c #5A120D",
|
||||
"}+ c #020202",
|
||||
"|+ c #0E0302",
|
||||
"1+ c #230704",
|
||||
"2+ c #2E0906",
|
||||
"3+ c #410C07",
|
||||
"4+ c #420C07",
|
||||
"5+ c #571109",
|
||||
"6+ c #5D110B",
|
||||
"7+ c #60120B",
|
||||
"8+ c #6E150C",
|
||||
"9+ c #73160E",
|
||||
"0+ c #801810",
|
||||
"a+ c #881A11",
|
||||
"b+ c #861B13",
|
||||
"c+ c #851B14",
|
||||
"d+ c #801A13",
|
||||
"e+ c #731711",
|
||||
"f+ c #4D100C",
|
||||
"g+ c #0D0403",
|
||||
"h+ c #220705",
|
||||
"i+ c #210705",
|
||||
"j+ c #230705",
|
||||
"k+ c #420D08",
|
||||
"l+ c #3E0C08",
|
||||
"m+ c #3D0C09",
|
||||
"n+ c #3C0C09",
|
||||
"o+ c #3B0C09",
|
||||
"p+ c #2E0A08",
|
||||
"q+ c #1C0705",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" . + ",
|
||||
" @ # $ % ",
|
||||
" & * = - ; > ",
|
||||
" , ' ) ! ! - ~ ",
|
||||
" { ] ! ! ^ ! / ( ",
|
||||
" _ : ! ! < [ } | 1 ",
|
||||
" 2 3 4 ! ! 5 6 } } | 7 ",
|
||||
" { 8 ! 9 0 6 6 a } b c d ",
|
||||
" _ : ! ! e 6 6 6 6 f g b h ",
|
||||
" i 4 ! ! 5 j k j l m g b n o ",
|
||||
" p q ! ! r s t u v l l g w x h ",
|
||||
" y z ! ! ! 6 A B C D l l E w x n F ",
|
||||
" G H ! ! I 6 J K L M l l N w w O P ",
|
||||
" _ Q ! ! a 6 6 R S T U l N N E V O W F ",
|
||||
" X 4 ! } 6 6 6 Y S Z ` N N N N V V O . ",
|
||||
" ..+.! ! @.6 6 l #.S $.%.N N N &.*.V O =.-. ",
|
||||
" ;.>.4 ! } 6 6 6 l ,.t '.).N N &.&.&.V !.~.{. ",
|
||||
" ].8 ! ^.I 6 6 l l /.t (.'.N &.&.&.&._.!.:.<.[. ",
|
||||
" p }.! } a 6 6 l l l |.1.2.3.&.&.&.&.4.4.!.!.5.6. ",
|
||||
" ].8 } } 6 6 l l l l |.7.T 8.&.&.&.4.4.4._.9.0.a. ",
|
||||
" p }.} } @.6 l l l l N b.c.d.e.&.&.4.4.4.4.f.9.9.g.h. ",
|
||||
" ].8 } } 6 l l l l N N i.j.k.l.&.&.4.4.4.f.f.m.9.n.o. ",
|
||||
" p }.} } @.6 l l l N N N N &.&.&.&.4.4.4.4.f.f.f.p.n.q.r. ",
|
||||
" ].s.} } 6 l l l N N N N t.'.u.v.4.4.4.4.f.f.f.w.x.p.y.z. ",
|
||||
" p A.} } B.l l l l N N N &.C.D.D.E.4.4.4.f.f.f.f.w.F.p.G.H.I. ",
|
||||
" J.s.} } l l l l N N N N &.K.T L.M.4.4.f.f.f.f.w.w.w.p.N.O.P. ",
|
||||
" Q.} } R.S.T.l N N N N &.&.i.U.V.W.4.f.f.f.f.w.w.w.w.X.N.G.Y. ",
|
||||
" Z.`.} g g g g w w w +.+++@+#+$+$+$+%+%+%+%+&+&+&+&+*+=+-+G.;+>+ ",
|
||||
" ,+} | g g g w w w w V V V V !.!.!.!.9.9.9.p.p.p.p.N.N.N.N.'+)+!+ ",
|
||||
" ~+{+]+^+/+(+_+:+x O V V V !.!.!.!.9.9.9.p.p.p.p.N.N.N.N.'+'+<+[+ ",
|
||||
" }+}+|+1+2+3+4+5+6+7+8+9+9+9+0+a+a+a+a+q.q.q.b+b+b+b+c+c+d+e+f+}+ ",
|
||||
" }+}+}+}+}+}+}+}+}+g+h+i+i+j+k+l+l+l+l+l+l+m+m+m+n+n+n+o+p+q+}+ ",
|
||||
" }+}+}+}+}+}+}+}+}+}+}+}+}+}+}+}+}+}+}+}+}+}+}+}+}+S ",
|
||||
" }+}+}+}+}+}+}+}+}+}+}+}+}+}+ ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" "};
|
@@ -1,44 +0,0 @@
|
||||
/* XPM */
|
||||
static char *helpicon_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"32 32 6 1",
|
||||
" c Gray0",
|
||||
". c Blue",
|
||||
"X c #808080808080",
|
||||
"o c #c0c0c0c0c0c0",
|
||||
"O c Gray100",
|
||||
"+ c None",
|
||||
/* pixels */
|
||||
"+++++++++++XXXXXXXX+++++++++++++",
|
||||
"++++++++XXXoOOOOOOoXXX++++++++++",
|
||||
"++++++XXoOOOOOOOOOOOOoXX++++++++",
|
||||
"+++++XoOOOOOOOOOOOOOOOOoX+++++++",
|
||||
"++++XOOOOOOOOOOOOOOOOOOOO ++++++",
|
||||
"+++XOOOOOOOo......oOOOOOOO +++++",
|
||||
"++XOOOOOOOo.oOO....oOOOOOOO ++++",
|
||||
"+XoOOOOOOO..OOOO....OOOOOOOo +++",
|
||||
"+XOOOOOOOO....OO....OOOOOOOO X++",
|
||||
"XoOOOOOOOO....Oo....OOOOOOOOo X+",
|
||||
"XOOOOOOOOOo..oO....OOOOOOOOOO X+",
|
||||
"XOOOOOOOOOOOOOo...OOOOOOOOOOO XX",
|
||||
"XOOOOOOOOOOOOO...OOOOOOOOOOOO XX",
|
||||
"XOOOOOOOOOOOOO..oOOOOOOOOOOOO XX",
|
||||
"XOOOOOOOOOOOOO..OOOOOOOOOOOOO XX",
|
||||
"XoOOOOOOOOOOOOOOOOOOOOOOOOOOo XX",
|
||||
"+XOOOOOOOOOOOo..oOOOOOOOOOOO XXX",
|
||||
"+XoOOOOOOOOOO....OOOOOOOOOOo XXX",
|
||||
"++XOOOOOOOOOO....OOOOOOOOOO XXX+",
|
||||
"+++ OOOOOOOOOo..oOOOOOOOOO XXXX+",
|
||||
"++++ OOOOOOOOOOOOOOOOOOOO XXXX++",
|
||||
"+++++ oOOOOOOOOOOOOOOOOo XXXX+++",
|
||||
"++++++ oOOOOOOOOOOOOo XXXX++++",
|
||||
"+++++++X oOOOOOOo XXXXX+++++",
|
||||
"++++++++XXX oOOO XXXXXXX++++++",
|
||||
"++++++++++XXXX OOO XXXXX++++++++",
|
||||
"+++++++++++++X OOO XX+++++++++++",
|
||||
"+++++++++++++++ OO XX+++++++++++",
|
||||
"++++++++++++++++ O XX+++++++++++",
|
||||
"+++++++++++++++++ XX+++++++++++",
|
||||
"++++++++++++++++++XXX+++++++++++",
|
||||
"+++++++++++++++++++XX+++++++++++"
|
||||
};
|
26
art/home.xpm
@@ -1,26 +0,0 @@
|
||||
/* XPM */
|
||||
static char * home_xpm[] = {
|
||||
"20 20 3 1",
|
||||
" c None",
|
||||
". c #000000000000",
|
||||
"X c #FFFFFFFFFFFF",
|
||||
" ",
|
||||
" ",
|
||||
" .. ",
|
||||
" . .... ",
|
||||
" . .XX . ",
|
||||
" . .XXXX . ",
|
||||
" ..XXXXXX . ",
|
||||
" .XXXXXXXX . ",
|
||||
" .XXXXXXXXX . ",
|
||||
" ...XXXXXXXX ... ",
|
||||
" .XXXXXXXX . ",
|
||||
" .XXX...XX . ",
|
||||
" .XXX. .XX . ",
|
||||
" .XXX. .XX . ",
|
||||
" .XXX. .XX . ",
|
||||
" .XXX. .XX . ",
|
||||
" ..... ...... ",
|
||||
" ",
|
||||
" ",
|
||||
" "};
|
@@ -1,40 +0,0 @@
|
||||
/* XPM */
|
||||
static char * htmbook_xpm[] = {
|
||||
"16 16 21 1",
|
||||
" c None",
|
||||
". c #007F7F",
|
||||
"+ c #660000",
|
||||
"@ c #CC0000",
|
||||
"# c #E50000",
|
||||
"$ c #FF0000",
|
||||
"% c #F20000",
|
||||
"& c #D80000",
|
||||
"* c #720000",
|
||||
"= c #7F0000",
|
||||
"- c #BFBFBF",
|
||||
"; c #E57F7F",
|
||||
"> c #7F7F7F",
|
||||
", c #FFFFFF",
|
||||
"' c #F2BFBF",
|
||||
") c #723F3F",
|
||||
"! c #A5A5A5",
|
||||
"~ c #E5E5E5",
|
||||
"{ c #B2B2B2",
|
||||
"] c #003F3F",
|
||||
"^ c #000000",
|
||||
" ",
|
||||
" ......... ",
|
||||
" +@#$$$$$%&+ ",
|
||||
" +##$$$$$$$* ",
|
||||
" +##$$$$$$$=- ",
|
||||
" +##$$$$$$$=;> ",
|
||||
" +##$$$$$$$=;,. ",
|
||||
" +##$$$$$$$=;,. ",
|
||||
" +##$$$$$$$=''. ",
|
||||
" +##$$$$$$$=,;. ",
|
||||
" +##$$$$$$%+,;. ",
|
||||
" +&++++++++),;. ",
|
||||
" ++!~~~~~~~~~,. ",
|
||||
" ++!~~~~~~~~~{. ",
|
||||
" ]^^^^^^^^^^^ ",
|
||||
" "};
|
@@ -1,28 +0,0 @@
|
||||
/* XPM */
|
||||
static char * htmfoldr_xpm[] = {
|
||||
/* width height ncolors chars_per_pixel */
|
||||
"16 16 6 1",
|
||||
/* colors */
|
||||
" s None c None",
|
||||
". c #000000",
|
||||
"+ c #c0c0c0",
|
||||
"@ c #808080",
|
||||
"# c #ffff00",
|
||||
"$ c #ffffff",
|
||||
/* pixels */
|
||||
" ",
|
||||
" @@@@@ ",
|
||||
" @#+#+#@ ",
|
||||
" @#+#+#+#@@@@@@ ",
|
||||
" @$$$$$$$$$$$$@.",
|
||||
" @$#+#+#+#+#+#@.",
|
||||
" @$+#+#+#+#+#+@.",
|
||||
" @$#+#+#+#+#+#@.",
|
||||
" @$+#+#+#+#+#+@.",
|
||||
" @$#+#+#+#+#+#@.",
|
||||
" @$+#+#+#+#+#+@.",
|
||||
" @$#+#+#+#+#+#@.",
|
||||
" @@@@@@@@@@@@@@.",
|
||||
" ..............",
|
||||
" ",
|
||||
" "};
|
@@ -1,21 +0,0 @@
|
||||
/* XPM */
|
||||
static char * htmoptns_xpm[] = {
|
||||
"16 16 2 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
" ",
|
||||
" .. ",
|
||||
" ... ",
|
||||
" .... ",
|
||||
" . ... ",
|
||||
" .. ... ",
|
||||
" . .. ",
|
||||
" .. ... ",
|
||||
" . .. ",
|
||||
" ......... ",
|
||||
" .. ... ",
|
||||
" . ... ",
|
||||
" .. ... ",
|
||||
" .... ....... ",
|
||||
" ",
|
||||
" "};
|
@@ -1,25 +0,0 @@
|
||||
/* XPM */
|
||||
static char * htmpage_xpm[] = {
|
||||
/* width height ncolors chars_per_pixel */
|
||||
"16 16 3 1",
|
||||
/* colors */
|
||||
" s None c None",
|
||||
". c #000000",
|
||||
"+ c #ffffff",
|
||||
/* pixels */
|
||||
" ",
|
||||
" ........ ",
|
||||
" .++++++.. ",
|
||||
" .+.+.++.+. ",
|
||||
" .++++++.... ",
|
||||
" .+.+.+++++. ",
|
||||
" .+++++++++. ",
|
||||
" .+.+.+.+.+. ",
|
||||
" .+++++++++. ",
|
||||
" .+.+.+.+.+. ",
|
||||
" .+++++++++. ",
|
||||
" .+.+.+.+.+. ",
|
||||
" .+++++++++. ",
|
||||
" ........... ",
|
||||
" ",
|
||||
" "};
|
@@ -1,35 +0,0 @@
|
||||
/* XPM */
|
||||
static char * htmsidep_xpm[] = {
|
||||
"16 15 17 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"+ c #800000",
|
||||
"@ c #008000",
|
||||
"# c #808000",
|
||||
"$ c #000080",
|
||||
"% c #800080",
|
||||
"& c #008080",
|
||||
"* c #C0C0C0",
|
||||
"= c #808080",
|
||||
"- c #FF0000",
|
||||
"; c #00FF00",
|
||||
"> c #FFFF00",
|
||||
", c #0000FF",
|
||||
"' c #FF00FF",
|
||||
") c #00FFFF",
|
||||
"! c #FFFFFF",
|
||||
"****************",
|
||||
"*..............*",
|
||||
"*.************.*",
|
||||
"*..............*",
|
||||
"*.****.!!!!!!!.*",
|
||||
"*.****.!====*!.*",
|
||||
"*.****.!!!!!!!.*",
|
||||
"*.****.!===*!!.*",
|
||||
"*.****.!!!!!!!.*",
|
||||
"*.****.!====*!.*",
|
||||
"*.****.!!!!!!!.*",
|
||||
"*.****.!===*!!.*",
|
||||
"*.****.!!!!!!!.*",
|
||||
"*..............*",
|
||||
"****************"};
|
@@ -1,28 +0,0 @@
|
||||
/* XPM */
|
||||
static char * listview_xpm[] = {
|
||||
"20 20 5 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"+ c #FFFFFF",
|
||||
"@ c #000083",
|
||||
"# c #838183",
|
||||
" ",
|
||||
" ",
|
||||
" ................ ",
|
||||
" .++++++++++++++. ",
|
||||
" .+@@+++++@@++++. ",
|
||||
" .+@+@+.#+@+@+.+. ",
|
||||
" .+@@@++++@@@+++. ",
|
||||
" .++++++++++++++. ",
|
||||
" .++++++++++++++. ",
|
||||
" .+@@+++++@@++++. ",
|
||||
" .+@+@+.#+@+@+.+. ",
|
||||
" .+@@@++++@@@+++. ",
|
||||
" .++++++++++++++. ",
|
||||
" .++++++++++++++. ",
|
||||
" .+@@+++++@@++++. ",
|
||||
" .+@+@+.#+@+@+.+. ",
|
||||
" .+@@@++++@@@+++. ",
|
||||
" ................ ",
|
||||
" ",
|
||||
" "};
|
@@ -1,41 +0,0 @@
|
||||
/* XPM */
|
||||
static char * missimg_xpm[] = {
|
||||
"29 31 7 1",
|
||||
" c None",
|
||||
". c #808080",
|
||||
"+ c #FFFFFF",
|
||||
"@ c #C0C0C0",
|
||||
"# c #000000",
|
||||
"$ c #333366",
|
||||
"% c #B2B2B2",
|
||||
"..................... ",
|
||||
".+++++++++++++++++++.. ",
|
||||
".+++++++++++++++++++.@. ",
|
||||
".++@@@@@@@@@@@@@@@@@.+@. ",
|
||||
".++@@@@@@@@@@@@@@@@@.++@. ",
|
||||
".++@@@@@.@@@@.@@@@@@.+++@. ",
|
||||
".++@@@@@@@@@@@@@@@@@.++++@. ",
|
||||
".++@@@@@@@@@@@@@@@@@.+++++@. ",
|
||||
".++@@.@@@@@@@@@@.@@@######## ",
|
||||
".++@@@@@@@@@@@@@@@@@@$$$$$$#.",
|
||||
".######@@@@@@@@@@@@@@@.....#.",
|
||||
" ###@@@@@@@@@@@@@@@++#.",
|
||||
" #####@@@@@@@@@@++#.",
|
||||
" #@.@@@@@@@@++#.",
|
||||
".. ###@@@@@@@++#.",
|
||||
".+.... #@@@@@@++#.",
|
||||
".++@@@... ####@@++#.",
|
||||
".++@@@@@@.. #####.",
|
||||
".++@@@@@@@@... ",
|
||||
".++@@@@@@%%%%@. ",
|
||||
".++@@@@@@%%%%@@.... ",
|
||||
".++@@@@@@%%%%@@@@@@.... ",
|
||||
".++@@@@@@%%%%@@@@@@@@@@.... ",
|
||||
".++@@@@@@@@@@@@@@@@@@@@@@++#.",
|
||||
".++@@@@@@@@@@@@@@@@@@@@@@++#.",
|
||||
".++@@@@@@@@@@@@@@@@@@@@@@++#.",
|
||||
".++@@@@@@@@@@@@@@@@@@@@@@++#.",
|
||||
".++@@@@@@@@@@@@@@@@@@@@@@++#.",
|
||||
".++++++++++++++++++++++++++#.",
|
||||
".++++++++++++++++++++++++++#.",
|
||||
"############################."};
|
@@ -1,129 +0,0 @@
|
||||
/* XPM */
|
||||
static char * error_xpm[] = {
|
||||
"48 48 78 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"+ c #200000",
|
||||
"@ c #4A0000",
|
||||
"# c #6B0000",
|
||||
"$ c #8F0000",
|
||||
"% c #890000",
|
||||
"& c #5F0000",
|
||||
"* c #380000",
|
||||
"= c #0E0000",
|
||||
"- c #030000",
|
||||
"; c #480000",
|
||||
"> c #9C0000",
|
||||
", c #E40000",
|
||||
"' c #FE0000",
|
||||
") c #FF0000",
|
||||
"! c #C90000",
|
||||
"~ c #7E0000",
|
||||
"{ c #250000",
|
||||
"] c #090000",
|
||||
"^ c #700000",
|
||||
"/ c #DE0000",
|
||||
"( c #FB0000",
|
||||
"_ c #BB0000",
|
||||
": c #410000",
|
||||
"< c #500000",
|
||||
"[ c #DF0000",
|
||||
"} c #B00000",
|
||||
"| c #0D0000",
|
||||
"1 c #AB0000",
|
||||
"2 c #F60000",
|
||||
"3 c #600000",
|
||||
"4 c #010000",
|
||||
"5 c #220000",
|
||||
"6 c #DA0000",
|
||||
"7 c #950000",
|
||||
"8 c #070000",
|
||||
"9 c #350000",
|
||||
"0 c #F00000",
|
||||
"a c #BD0000",
|
||||
"b c #080000",
|
||||
"c c #B10000",
|
||||
"d c #880000",
|
||||
"e c #FD0000",
|
||||
"f c #4D0000",
|
||||
"g c #0B0000",
|
||||
"h c #F50000",
|
||||
"i c #1A0000",
|
||||
"j c #820000",
|
||||
"k c #E30000",
|
||||
"l c #040000",
|
||||
"m c #3C0000",
|
||||
"n c #FEAFAF",
|
||||
"o c #FFFEFE",
|
||||
"p c #FEFEFE",
|
||||
"q c #FF7F7F",
|
||||
"r c #840000",
|
||||
"s c #FFAFAF",
|
||||
"t c #FFFFFF",
|
||||
"u c #C00000",
|
||||
"v c #EA0000",
|
||||
"w c #2F0000",
|
||||
"x c #290000",
|
||||
"y c #D80000",
|
||||
"z c #AE0000",
|
||||
"A c #FE6D6D",
|
||||
"B c #FF9F9F",
|
||||
"C c #FE9F9F",
|
||||
"D c #FF4F4F",
|
||||
"E c #690000",
|
||||
"F c #C10000",
|
||||
"G c #5B0000",
|
||||
"H c #050000",
|
||||
"I c #B70000",
|
||||
"J c #E50000",
|
||||
"K c #F40000",
|
||||
"L c #420000",
|
||||
"M c #650000",
|
||||
" ",
|
||||
" ",
|
||||
" ..+@#$$$%&*=. ",
|
||||
" -;>,''''''))))!~{. ",
|
||||
" ]^/'''''''''))))))(_:. ",
|
||||
" .<['''''''''''))))))))'}+. ",
|
||||
" |1'''''''''''''))))))))))234 ",
|
||||
" 56)'''''''''''''))))))))))))78 ",
|
||||
" 90))''''''''''''')))))))))))))ab ",
|
||||
" 50)))'''''''''''''))))))))))))))c4 ",
|
||||
" |6))))''''''''''''')))))))))))))))d. ",
|
||||
" .1'))))''''''''''''')))))))))))))))ef ",
|
||||
" <''))))''''''''''''')))))))))))))))),g ",
|
||||
" ][')))))''''''''''''')))))))))))))))))%. ",
|
||||
" ^'''))))''''''''''''')))))))))))))))))hi ",
|
||||
" -/'''))))'''''''''''''))))))))))))))))))j ",
|
||||
" ;)'')))))'''''''''''''))))))))))))))))))kl ",
|
||||
" >''''))))''''''''''''')))))))))))))))))))m ",
|
||||
" .,'''noooopppppppppppppoooooooooooooooq)))r ",
|
||||
" +))')sttttppppppppppppptttttttttttttttq)))u. ",
|
||||
" @''''nttttppppppppppppptttttttttttttttq)))v. ",
|
||||
" #))''nttttppppppppppppptttttttttttttttq))))g ",
|
||||
" $)'''nttttppppppppppppptttttttttttttttq))))w ",
|
||||
" $''''nttttppppppppppppptttttttttttttttq))))w ",
|
||||
" $)'''nttttppppppppppppptttttttttttttttq))))w ",
|
||||
" %)'''nttttppppppppppppptttttttttttttttq))))x ",
|
||||
" &''''nttttppppppppppppptttttttttttttttq)))). ",
|
||||
" *)'''nttttppppppppppppptttttttttttttttq)))y. ",
|
||||
" =))''sttttppppppppppppptttttttttttttttq)))z ",
|
||||
" .!'''ABBBBCCCCCCCCCCCCCBBBBBBBBBBBBBBBD)))E ",
|
||||
" ~''''))))'''''''''''''))))))))))))))))))e+ ",
|
||||
" {('))))))'''''''''''''))))))))))))))))))F. ",
|
||||
" ._'''))))'''''''''''''))))))))))))))))))G ",
|
||||
" :'''))))''''''''''''')))))))))))))))))6H ",
|
||||
" .}))))))''''''''''''')))))))))))))))))< ",
|
||||
" +2'))))'''''''''''''))))))))))))))))I. ",
|
||||
" .3)))))''''''''''''')))))))))))))))Ji ",
|
||||
" 47))))'''''''''''''))))))))))))))KL ",
|
||||
" 8a)))'''''''''''''))))))))))))))M. ",
|
||||
" bc))'''''''''''''))))))))))))KM. ",
|
||||
" 4de''''''''''''')))))))))))JL. ",
|
||||
" .f,''''''''''''))))))))))Ii ",
|
||||
" g%h''''''''''))))))))6<. ",
|
||||
" .ijk'''''''')))))eFGH ",
|
||||
" .lmruv''''))yzE+. ",
|
||||
" ..gwwwx... ",
|
||||
" ",
|
||||
" "};
|
@@ -1,210 +0,0 @@
|
||||
/* XPM */
|
||||
static char * info_xpm[] = {
|
||||
"48 48 159 2",
|
||||
" c None",
|
||||
". c #12165C",
|
||||
"+ c #9E9EC4",
|
||||
"@ c #565294",
|
||||
"# c #2E3274",
|
||||
"$ c #1A227C",
|
||||
"% c #16229C",
|
||||
"& c #262274",
|
||||
"* c #362E8C",
|
||||
"= c #262A9C",
|
||||
"- c #121E7C",
|
||||
"; c #1A2AAC",
|
||||
"> c #162284",
|
||||
", c #262EA4",
|
||||
"' c #2A2A84",
|
||||
") c #1E1E6C",
|
||||
"! c #3E3A84",
|
||||
"~ c #7A72B4",
|
||||
"{ c #121E74",
|
||||
"] c #1E2284",
|
||||
"^ c #2A2E9C",
|
||||
"/ c #362E9C",
|
||||
"( c #D2D2E4",
|
||||
"_ c #62669C",
|
||||
": c #1E269C",
|
||||
"< c #1A2AB4",
|
||||
"[ c #6A6EAC",
|
||||
"} c #121A6C",
|
||||
"| c #2E2A84",
|
||||
"1 c #26268C",
|
||||
"2 c #3E328C",
|
||||
"3 c #322E9C",
|
||||
"4 c #B6B6CC",
|
||||
"5 c #1626AC",
|
||||
"6 c #1E268C",
|
||||
"7 c #2E267C",
|
||||
"8 c #363294",
|
||||
"9 c #1A2694",
|
||||
"0 c #22226C",
|
||||
"a c #26267C",
|
||||
"b c #2E2A9C",
|
||||
"c c #1A1E7C",
|
||||
"d c #222A9C",
|
||||
"e c #162294",
|
||||
"f c #1E2EBC",
|
||||
"g c #2A2EAC",
|
||||
"h c #6A6A9C",
|
||||
"i c #2E2A94",
|
||||
"j c #CACADC",
|
||||
"k c #1A1A64",
|
||||
"l c #16269C",
|
||||
"m c #262AAC",
|
||||
"n c #161E8C",
|
||||
"o c #464294",
|
||||
"p c #8286C4",
|
||||
"q c #1A1E64",
|
||||
"r c #222AB4",
|
||||
"s c #6A6EB4",
|
||||
"t c #1A1A6C",
|
||||
"u c #BABAD4",
|
||||
"v c #1E2694",
|
||||
"w c #121A64",
|
||||
"x c #2E2E94",
|
||||
"y c #3A2E8C",
|
||||
"z c #2A2A9C",
|
||||
"A c #161E7C",
|
||||
"B c #1A2284",
|
||||
"C c #262A94",
|
||||
"D c #2E2E9C",
|
||||
"E c #36329C",
|
||||
"F c #FEFEFC",
|
||||
"G c #666AA4",
|
||||
"H c #1E2AB4",
|
||||
"I c #161A6C",
|
||||
"J c #322A84",
|
||||
"K c #2A267C",
|
||||
"L c #262EB4",
|
||||
"M c #1A269C",
|
||||
"N c #1E2274",
|
||||
"O c #1E2AA4",
|
||||
"P c #221E6C",
|
||||
"Q c #423E8C",
|
||||
"R c #222284",
|
||||
"S c #E6E6EC",
|
||||
"T c #22269C",
|
||||
"U c #6E6EA4",
|
||||
"V c #3232A4",
|
||||
"W c #BAB6D4",
|
||||
"X c #1A26AC",
|
||||
"Y c #222684",
|
||||
"Z c #3A328C",
|
||||
"` c #22227C",
|
||||
" . c #222AAC",
|
||||
".. c #222EB4",
|
||||
"+. c #8A86BC",
|
||||
"@. c #1A1E74",
|
||||
"#. c #161A5C",
|
||||
"$. c #322E8C",
|
||||
"%. c #3A329C",
|
||||
"&. c #A29ECC",
|
||||
"*. c #26227C",
|
||||
"=. c #362E94",
|
||||
"-. c #262AA4",
|
||||
";. c #121E84",
|
||||
">. c #16228C",
|
||||
",. c #262EAC",
|
||||
"'. c #2A2A8C",
|
||||
"). c #1E1E74",
|
||||
"!. c #7A76B4",
|
||||
"~. c #161E74",
|
||||
"{. c #1E228C",
|
||||
"]. c #2A2EA4",
|
||||
"^. c #6266A4",
|
||||
"/. c #1E26A4",
|
||||
"(. c #1A2ABC",
|
||||
"_. c #121A74",
|
||||
":. c #2E2A8C",
|
||||
"<. c #262694",
|
||||
"[. c #3E3294",
|
||||
"}. c #322EA4",
|
||||
"|. c #B6B6D4",
|
||||
"1. c #222274",
|
||||
"2. c #262684",
|
||||
"3. c #222AA4",
|
||||
"4. c #1A2294",
|
||||
"5. c #2E2EAC",
|
||||
"6. c #6E6AA4",
|
||||
"7. c #322A94",
|
||||
"8. c #1626A4",
|
||||
"9. c #8E8ABC",
|
||||
"0. c #4A429C",
|
||||
"a. c #6E6EBC",
|
||||
"b. c #222694",
|
||||
"c. c #2A2A94",
|
||||
"d. c #1A1E6C",
|
||||
"e. c #BABADC",
|
||||
"f. c #3A2E94",
|
||||
"g. c #2A2AA4",
|
||||
"h. c #161E84",
|
||||
"i. c #1A228C",
|
||||
"j. c #2E2EA4",
|
||||
"k. c #3632A4",
|
||||
"l. c #666AAC",
|
||||
"m. c #1E2ABC",
|
||||
"n. c #161A74",
|
||||
"o. c #322A8C",
|
||||
"p. c #2A2684",
|
||||
"q. c #1A26A4",
|
||||
"r. c #1E227C",
|
||||
"s. c #1E2AAC",
|
||||
"t. c #423E94",
|
||||
"u. c #E6E6F4",
|
||||
"v. c #6E6EAC",
|
||||
"w. c #1A26B4",
|
||||
"x. c #22268C",
|
||||
"y. c #3A3294",
|
||||
"z. c #222EBC",
|
||||
"A. c #161A64",
|
||||
"B. c #322E94",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" 7 7 7 7 7 7 7 7 & ",
|
||||
" 2 2 2 2 2 2 y y y f.f.[.y 7 *. ",
|
||||
" J y 2 2 2 2 2 [.[.[.[.y.=.=.f.=./ B.p. ",
|
||||
" 2 2 2 2 [.2 [.[.f.y y y * * =.=.B./ B.3 o.*.*. ",
|
||||
" y 2 2 [.2 [.2 2 y [.[.f.f.o.* $.$.B.B.7.D 3 D }.D ",
|
||||
" 2 2 [.[.2 [.2 [.f.[.y ~ ( F F W 0.$.:.i x 7.3 D D <.R ",
|
||||
" y 2 [.[.[.2 [.2 2 y y ~ F F F F F u.o :.:.c.c.b b D }.}.g. ",
|
||||
" 2 [.[.2 [.2 [.2 [.y 2 Z ( F F F F F F +.7 '.:.:.i D b ].].z R ",
|
||||
" y 2 2 [.[.[.[.[.2 f.y y y F F F F F F F |.p.p.'.'.<.z z g.].].5.m ",
|
||||
" 2 2 [.t.[.[.2 2 2 f.2 f.* * u.F F F F F F + *.2.2.C '.c.z ^ ].g m = n ",
|
||||
" y 2 [.2 [.[.[.[.2 f.2 f.* * &.F F F F F F @ a *.2.2.C C z = g.].,.g. . ",
|
||||
" 2 2 [.[.[.[.[.2 [.[.[.f.* o.J $.u F F F u.U 1.0 Y *.2.1 <.C ^ -.m g.L = n ",
|
||||
" 2 2 2 [.2 t.[.[.f.[.Z y.* $.J 7 | Q U 6.P 1.P P ` ` 2.1 <.= = , ,.,.m m . ",
|
||||
" 2 [.[.[.[.[.[.2 f.2 f.f.* =.o.:.| K & & 0 0 P N 1.1.` R 2.d <.= -.-.m ..../.n ",
|
||||
" 2 2 [.2 [.2 [.[.[.[.y.=.=.* o.:.p.K ! 6.h 4 4 ) ) ).r.6 Y b.= = , ,.,.m ..r r ",
|
||||
" [.2 t.[.[.[.[.[.f.y.8 y.* B.9.W S F F F F F F ) ) N 1.R R x.b.= 3.m m ..m ..s. ",
|
||||
" 7 [.2 [.2 [.[.[.[.[.f.=.=.=.o.e.F F F F F F F F ) ) ).N R x.b.T 3.3. .m ..r H m.H ",
|
||||
" 2 [.[.[.[.[.[.[.[.f.%.=.=.$.B.:.o W F F F F F F k q N r.] R b.d T , . .r ....s.n ",
|
||||
" y 2 2 [.[.[.[.[.%.f.%.=.=.B.$.:.'.v.F F F F F F t k ) N ] 6 x.d T 3... .H r H m.< ",
|
||||
" 2 [.[.[.[.[.[.%.y.%.=.E / 7.7.p.p.v.F F F F F F q d.t @.r.R v T O . .....f r X n ",
|
||||
" y 2 2 [.[.[.[.%.=.%.=.B.B.x B.:.| v.F F F F F F k d.d.c $ {.6 T d O .r r f f m.(. ",
|
||||
" 2 [.[.[.[.[.%.%.%./ E / 3 7.i '.2.v.F F F F F F A.A.t @.r.] b.: /. .s.H H H m.5 ;. ",
|
||||
" J 2 [.[.[.[.f.%.8 / E 8 3 i i :.p.v.F F F F F F k A.d.~.$ B 6 : : /.s.H m.m.f (.(. ",
|
||||
" [.[.[.%.[.%.%./ f.E / 3 3 B.i p.1 v.F F F F F F . A.I @.c {.{.: O s. .H H m.(.w.;. ",
|
||||
" 7 [.[.%.f.%.%.E / V =.3 D D ^ '.1 v.F F F F F F #.A.I @.A i.9 : O s.s.H f m.(.(.w. ",
|
||||
" [.[.[.[.%.%.E E E / 3 3 7.i i c.2.v.F F F F F F . . A.~.c B {.M /.X H H (.(.(.w.;. ",
|
||||
" [.%.%./ %.f./ V 3 3 D D c.c.<.Y v.F F F F F F #.A.A.~.A B 4.9 /.X ; < f f (.(. ",
|
||||
" %.f.E %./ k.k./ V }.}.D D c.'.1 [ F F F F F F . . } I c >.i.M q.; H < (.(.(.5 ",
|
||||
" J f.k.E E E / / 3 V 3 D b z 1 x.v.F F F F F F #.. A.} c B 4.M /.X < (.(.(.(.(. ",
|
||||
" %.%.%.E / V }.V D j.z z c.C 1 [ F F F F F F . A.} ~.A h.4.4.q.; w.(.(.(.5 ",
|
||||
" 7 k./ V / V D }.j.j.^ z z <.x.[ F F F F F F . . . _.A h.4.% q.; 5 w.w.(.(. ",
|
||||
" / k./ V }.}.j.j.j.b z C C R l.F F F F F F . } I ~.A >.e M 5 5 (.(.(.5 ",
|
||||
" 7 V 3 V V V }.j.].].g.= C <.s F F F F F F # w } n.A >.e 4.X 5 < (.w.(. ",
|
||||
" / k.}.}.j.j.j.j.g.z = a.p u.F F F F F F j _ _ - - n e 8.5 5 w.w.5 ",
|
||||
" V V j.j.j.].].].z = F F F F F F F F F F F F n.;.n e % X 5 (.(. ",
|
||||
" j.V j.j.j.].-.-.<.a.a.s [ l.G G _ _ _ ^.^.- h.e % 8.5 < 5 ",
|
||||
" 5.].g j.]., , d T b.{.{.c A ~._.} } _.n.;.;.e % % 5 5 ",
|
||||
" 5.j.].g g.-.-.d : v i.> A A ~._.- - - >.e e % 5 % ",
|
||||
" g g.g -., 3.d : v v i.B h.A n.h.;.;.;.n % 8.% ",
|
||||
" -.,. .-.3.T : 4.{.>.>.>.>.;.>.n % % % ",
|
||||
" 3.-.3.3.O M 4.4.i.n e n e e e ",
|
||||
" : : : /.4.% e n ;. ",
|
||||
" ",
|
||||
" "};
|
@@ -1,216 +0,0 @@
|
||||
/* XPM */
|
||||
static char * question_xpm[] = {
|
||||
"48 48 165 2",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"+ c #080808",
|
||||
"@ c #2A2A2A",
|
||||
"# c #434343",
|
||||
"$ c #545454",
|
||||
"% c #626262",
|
||||
"& c #6A6A6A",
|
||||
"* c #6E6E6E",
|
||||
"= c #424242",
|
||||
"- c #525252",
|
||||
"; c #898989",
|
||||
"> c #DCDCDC",
|
||||
", c #E5E5E5",
|
||||
"' c #EDEDED",
|
||||
") c #F4F4F4",
|
||||
"! c #F9F9F9",
|
||||
"~ c #FCFCFC",
|
||||
"{ c #FFFFFF",
|
||||
"] c #888888",
|
||||
"^ c #4F4F4F",
|
||||
"/ c #050505",
|
||||
"( c #0F0F0F",
|
||||
"_ c #9C9C9C",
|
||||
": c #E6E6E6",
|
||||
"< c #9B9B9B",
|
||||
"[ c #1F1F1F",
|
||||
"} c #A1A1A1",
|
||||
"| c #E3E3E3",
|
||||
"1 c #4D4D4D",
|
||||
"2 c #D6D6D6",
|
||||
"3 c #ECECEC",
|
||||
"4 c #D9D9D9",
|
||||
"5 c #C6C6C6",
|
||||
"6 c #B0B0B0",
|
||||
"7 c #848484",
|
||||
"8 c #D3D3D3",
|
||||
"9 c #010101",
|
||||
"0 c #8B8B8B",
|
||||
"a c #F2F2F2",
|
||||
"b c #F3F3F3",
|
||||
"c c #A6A6A6",
|
||||
"d c #5E5E5E",
|
||||
"e c #2F2F2F",
|
||||
"f c #272727",
|
||||
"g c #202020",
|
||||
"h c #4E4E4E",
|
||||
"i c #8A8A8A",
|
||||
"j c #0B0B0B",
|
||||
"k c #B6B6B6",
|
||||
"l c #5D5D5D",
|
||||
"m c #131313",
|
||||
"n c #9A9A9A",
|
||||
"o c #C9C9C9",
|
||||
"p c #878787",
|
||||
"q c #0A0A0A",
|
||||
"r c #373737",
|
||||
"s c #DADADA",
|
||||
"t c #B4B4B4",
|
||||
"u c #B1B1B1",
|
||||
"v c #030303",
|
||||
"w c #767676",
|
||||
"x c #FDFDFD",
|
||||
"y c #FAFAFA",
|
||||
"z c #383838",
|
||||
"A c #F8F8F8",
|
||||
"B c #AFAFAF",
|
||||
"C c #070707",
|
||||
"D c #818181",
|
||||
"E c #555555",
|
||||
"F c #BDBDBD",
|
||||
"G c #7D7D7D",
|
||||
"H c #3C3C3C",
|
||||
"I c #F6F6F6",
|
||||
"J c #535353",
|
||||
"K c #242424",
|
||||
"L c #ABABAB",
|
||||
"M c #393939",
|
||||
"N c #BBBBBB",
|
||||
"O c #EAEAEA",
|
||||
"P c #A3A3A3",
|
||||
"Q c #4B4B4B",
|
||||
"R c #616161",
|
||||
"S c #CFCFCF",
|
||||
"T c #060606",
|
||||
"U c #EFEFEF",
|
||||
"V c #B9B9B9",
|
||||
"W c #303030",
|
||||
"X c #161616",
|
||||
"Y c #2C2C2C",
|
||||
"Z c #C0C0C0",
|
||||
"` c #2E2E2E",
|
||||
" . c #858585",
|
||||
".. c #E4E4E4",
|
||||
"+. c #1C1C1C",
|
||||
"@. c #D4D4D4",
|
||||
"#. c #828282",
|
||||
"$. c #C7C7C7",
|
||||
"%. c #3A3A3A",
|
||||
"&. c #090909",
|
||||
"*. c #151515",
|
||||
"=. c #8E8E8E",
|
||||
"-. c #F7F7F7",
|
||||
";. c #C4C4C4",
|
||||
">. c #EBEBEB",
|
||||
",. c #CECECE",
|
||||
"'. c #3D3D3D",
|
||||
"). c #676767",
|
||||
"!. c #F1F1F1",
|
||||
"~. c #FBFBFB",
|
||||
"{. c #353535",
|
||||
"]. c #212121",
|
||||
"^. c #EEEEEE",
|
||||
"/. c #444444",
|
||||
"(. c #DEDEDE",
|
||||
"_. c #020202",
|
||||
":. c #6B6B6B",
|
||||
"<. c #E1E1E1",
|
||||
"[. c #575757",
|
||||
"}. c #111111",
|
||||
"|. c #939393",
|
||||
"1. c #ADADAD",
|
||||
"2. c #6C6C6C",
|
||||
"3. c #929292",
|
||||
"4. c #4A4A4A",
|
||||
"5. c #1E1E1E",
|
||||
"6. c #3B3B3B",
|
||||
"7. c #A0A0A0",
|
||||
"8. c #696969",
|
||||
"9. c #FEFEFE",
|
||||
"0. c #CBCBCB",
|
||||
"a. c #F0F0F0",
|
||||
"b. c #0E0E0E",
|
||||
"c. c #DFDFDF",
|
||||
"d. c #808080",
|
||||
"e. c #D0D0D0",
|
||||
"f. c #636363",
|
||||
"g. c #323232",
|
||||
"h. c #D2D2D2",
|
||||
"i. c #333333",
|
||||
"j. c #292929",
|
||||
"k. c #484848",
|
||||
"l. c #646464",
|
||||
"m. c #F5F5F5",
|
||||
"n. c #B2B2B2",
|
||||
"o. c #494949",
|
||||
"p. c #E2E2E2",
|
||||
"q. c #3F3F3F",
|
||||
"r. c #0D0D0D",
|
||||
"s. c #E0E0E0",
|
||||
"t. c #2D2D2D",
|
||||
"u. c #3E3E3E",
|
||||
"v. c #C8C8C8",
|
||||
"w. c #D1D1D1",
|
||||
"x. c #7C7C7C",
|
||||
"y. c #141414",
|
||||
"z. c #A4A4A4",
|
||||
"A. c #C2C2C2",
|
||||
"B. c #262626",
|
||||
"C. c #191919",
|
||||
"D. c #999999",
|
||||
"E. c #0C0C0C",
|
||||
"F. c #101010",
|
||||
"G. c #787878",
|
||||
"H. c #797979",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" . . . . . . . . . . . . . . . . ",
|
||||
" . . . . + @ # $ % & * * & % $ = @ + . . . . ",
|
||||
" . . . . - ; > , ' ) ! ~ { { ~ ! ) ' , > ] ^ . . . . ",
|
||||
" . . / ( _ : { { { { { { { { { { { { { { { { { { : < ( / . . ",
|
||||
" . . [ } | { { { { { { { { { { { { { { { { { { { { { { | } [ . . ",
|
||||
" . . 1 2 { { { { { { { { 3 4 5 6 7 7 7 < 5 8 : ! { { { { { { 2 1 . . . ",
|
||||
" . . 9 0 a { { { { { { { b c d e 9 9 9 f 9 9 9 g h i 4 { { { { { { a ; 9 . . ",
|
||||
" . . j k { { { { { { { { ' l m 9 9 9 9 n o p 9 9 9 9 q r s { { { { { { { t q . . ",
|
||||
" . . + u { { { { { { { { { # v 9 9 9 9 w x { y z 9 9 9 9 9 @ A { { { { { { { B C . . ",
|
||||
" . . . D y { { { { { { { { { 9 9 9 9 9 j ' { { { E 9 9 9 9 9 9 F { { { { { { { y G . . . ",
|
||||
" . . H I { { { { { { { { { { J 9 9 9 9 ^ { { { { K 9 9 9 9 9 9 L { { { { { { { { I M . . . ",
|
||||
" . . . N { { { { { { { { { { { O P Q Q R S { { { } 9 9 9 9 9 9 T U { { { { { { { { { V . . . ",
|
||||
" . . W ! { { { { { { { { { { { { { { { { { { A 6 X 9 9 9 9 9 Y Z { { { { { { { { { { ! ` . . ",
|
||||
" . . .{ { { { { { { { { { { { { { { { { { ..7 ( 9 9 9 9 +.* @.{ { { { { { { { { { { { #.. . . ",
|
||||
". . . $.{ { { { { { { { { { { { { { { { { < %.&.9 9 9 *.=.5 -.{ { { { { { { { { { { { { ;.. . . ",
|
||||
". . . >.{ { { { { { { { { { { { { { { ,.'.+ . . . . ).!.~ { { { { { { { { { { { { { { { O . . . ",
|
||||
". . . ~.{ { { { { { { { { { { { { { O {.. . . . . ].^.{ { { { { { { { { { { { { { { { { ~.. . . ",
|
||||
". . . A { { { { { { { { { { { { { { k 9 9 9 9 9 9 /.{ { { { { { { { { { { { { { { { { { A . . . ",
|
||||
". . . (.{ { { { { { { { { { { { { { 5 _.. . . . . q :.4 U U <.{ { { { { { { { { { { { { > . . . ",
|
||||
". . . 6 { { { { { { { { { { { { { { { [.&.. . . . . . . . }.|.{ { { { { { { { { { { { { 1.. . . ",
|
||||
". . . 2.{ { { { { { { { { { { { { { { a 3.4.5.9 9 9 5.6.).7.a { { { { { { { { { { { { { 8.. . . ",
|
||||
" . . ( !.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.<.0.F F F 0.s a.9.9.9.9.9.9.9.9.9.9.9.9.9.9.!.b.. . . ",
|
||||
" . . . D { { { { { { { { { { { { { { { { { U c.c.c.U { { { { { { { { { { { { { { { { d.. . . ",
|
||||
" . . . ( 8 { { { { { { { { { { { { { { { e.f.g.g.g.f.;.{ { { { { { { { { { { { { { h.b.. . . ",
|
||||
" . . . 4.) { { { { { { { { { { { { { ' i.9 9 9 9 9 j.' { { { { { { { { { { { { ) k.. . . ",
|
||||
" . . . l.m.{ { { { { { { { { { { { n.. . . . . . . n.{ { { { { { { { { { { m.f.. . . . ",
|
||||
" . . . o.p.{ { { { { { { { { { { F 9 9 9 9 9 9 9 5 { { { { { { { { { { p.k.. . . . ",
|
||||
" . . . @ 0.{ { { { { { { { { { b q.. . . . . d { { { { { { { { { { b j.. . . . ",
|
||||
" . . . r.7.{ { { { { { { { { { s.* = t.= < 3 { { { { { { { { { { A e . . . ",
|
||||
" . . . . u._ >.y { { { { { { { { { { { { { { { { { { { { { { { { a - . . ",
|
||||
" . . . . . W % v., { { { { { { { { { { { { { { , w.e.>.{ { { { { U x.T ",
|
||||
" . . . . . y.f D z.A.4 >.-.x x -.>.4 A.z.d.B.C.C.Y i c h.{ { { ) D.. ",
|
||||
" . . . . . . / &.E.( F.}.}.F.b.E.&./ . . . . . 9 T E.}.] 5 ' ) G.. ",
|
||||
" . . . . . . . . . . . . . . . . . . . . . . . . . . . . M H.H.. ",
|
||||
" . . . . . . . . . . . . . . . . . . . . . . . . ",
|
||||
" . . . . ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" "};
|
@@ -1,202 +0,0 @@
|
||||
/* XPM */
|
||||
static char * warning_xpm[] = {
|
||||
"48 48 151 2",
|
||||
" c None",
|
||||
". c #C70707",
|
||||
"+ c #F80808",
|
||||
"@ c #EA0808",
|
||||
"# c #A50505",
|
||||
"$ c #E10808",
|
||||
"% c #F70808",
|
||||
"& c #E85959",
|
||||
"* c #F80909",
|
||||
"= c #F90909",
|
||||
"- c #CD0707",
|
||||
"; c #EE0808",
|
||||
"> c #F12B2B",
|
||||
", c #F5F4F4",
|
||||
"' c #DE5F5F",
|
||||
") c #AE0606",
|
||||
"! c #D2ACAC",
|
||||
"~ c #FEFEFE",
|
||||
"{ c #E5DFDF",
|
||||
"] c #F91717",
|
||||
"^ c #E30808",
|
||||
"/ c #DC4C4C",
|
||||
"( c #FCFCFC",
|
||||
"_ c #D68585",
|
||||
": c #DB0707",
|
||||
"< c #F80C0C",
|
||||
"[ c #DECDCD",
|
||||
"} c #F6F5F5",
|
||||
"| c #ED2B2B",
|
||||
"1 c #F50808",
|
||||
"2 c #D66D6D",
|
||||
"3 c #FFFFFF",
|
||||
"4 c #D2A9A9",
|
||||
"5 c #BB0606",
|
||||
"6 c #E70808",
|
||||
"7 c #F11A1A",
|
||||
"8 c #EDE9E9",
|
||||
"9 c #E84646",
|
||||
"0 c #D59696",
|
||||
"a c #DDCCCC",
|
||||
"b c #F90E0E",
|
||||
"c c #CE0707",
|
||||
"d c #EA3030",
|
||||
"e c #F8F8F8",
|
||||
"f c #383838",
|
||||
"g c #000000",
|
||||
"h c #555555",
|
||||
"i c #DE6D6D",
|
||||
"j c #B20606",
|
||||
"k c #DAB9B9",
|
||||
"l c #A9A9A9",
|
||||
"m c #AAAAAA",
|
||||
"n c #EAE6E6",
|
||||
"o c #F81919",
|
||||
"p c #F30808",
|
||||
"q c #E05252",
|
||||
"r c #D58D8D",
|
||||
"s c #E00808",
|
||||
"t c #F81111",
|
||||
"u c #E1D5D5",
|
||||
"v c #C6C6C6",
|
||||
"w c #C7C7C7",
|
||||
"x c #F22F2F",
|
||||
"y c #CF7979",
|
||||
"z c #D4B4B4",
|
||||
"A c #F90A0A",
|
||||
"B c #C60707",
|
||||
"C c #EF0808",
|
||||
"D c #EF2222",
|
||||
"E c #EEEBEB",
|
||||
"F c #E14E4E",
|
||||
"G c #D69E9E",
|
||||
"H c #E0D2D2",
|
||||
"I c #F91111",
|
||||
"J c #D40707",
|
||||
"K c #E93A3A",
|
||||
"L c #545454",
|
||||
"M c #D97373",
|
||||
"N c #C80707",
|
||||
"O c #F80A0A",
|
||||
"P c #DAC3C3",
|
||||
"Q c #717171",
|
||||
"R c #727272",
|
||||
"S c #EFEDED",
|
||||
"T c #F91F1F",
|
||||
"U c #E45757",
|
||||
"V c #CE9999",
|
||||
"W c #E40808",
|
||||
"X c #F81313",
|
||||
"Y c #E3DADA",
|
||||
"Z c #F9F9F9",
|
||||
"` c #F13737",
|
||||
" . c #F60808",
|
||||
".. c #D37979",
|
||||
"+. c #D8BDBD",
|
||||
"@. c #F90B0B",
|
||||
"#. c #C90707",
|
||||
"$. c #F12424",
|
||||
"%. c #F0EFEF",
|
||||
"&. c #DB5656",
|
||||
"*. c #D39F9F",
|
||||
"=. c #1C1C1C",
|
||||
"-. c #E7E0E0",
|
||||
";. c #D50707",
|
||||
">. c #F40808",
|
||||
",. c #E93F3F",
|
||||
"'. c #FBFBFB",
|
||||
"). c #D77575",
|
||||
"!. c #F90C0C",
|
||||
"~. c #D9C5C5",
|
||||
"{. c #F1EEEE",
|
||||
"]. c #F42121",
|
||||
"^. c #E60808",
|
||||
"/. c #F90808",
|
||||
"(. c #DC5F5F",
|
||||
"_. c #E2E2E2",
|
||||
":. c #D19D9D",
|
||||
"<. c #F91616",
|
||||
"[. c #E9E3E3",
|
||||
"}. c #FAFAFA",
|
||||
"|. c #E33D3D",
|
||||
"1. c #D58383",
|
||||
"2. c #8D8D8D",
|
||||
"3. c #E3E3E3",
|
||||
"4. c #D9C0C0",
|
||||
"5. c #F70909",
|
||||
"6. c #F02C2C",
|
||||
"7. c #DA5D5D",
|
||||
"8. c #BC0606",
|
||||
"9. c #D0A9A9",
|
||||
"0. c #E8DFDF",
|
||||
"a. c #F51414",
|
||||
"b. c #DF0808",
|
||||
"c. c #E34646",
|
||||
"d. c #FDFDFD",
|
||||
"e. c #393939",
|
||||
"f. c #D57E7E",
|
||||
"g. c #F80B0B",
|
||||
"h. c #DDCDCD",
|
||||
"i. c #F4F3F3",
|
||||
"j. c #F12626",
|
||||
"k. c #ED0808",
|
||||
"l. c #E35D5D",
|
||||
"m. c #EBE9E9",
|
||||
"n. c #ECEAEA",
|
||||
"o. c #D99292",
|
||||
"p. c #A10505",
|
||||
"q. c #F80E0E",
|
||||
"r. c #F80D0D",
|
||||
"s. c #F90F0F",
|
||||
"t. c #F20808",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" . + @ ",
|
||||
" + + + # ",
|
||||
" $ + + + % ",
|
||||
" + % & * = - ",
|
||||
" ; % > , ' = = ",
|
||||
" ) + + ! ~ { ] = ^ ",
|
||||
" + + / ( ~ ~ _ * = ",
|
||||
" : + < [ ~ ~ ~ } | = 1 ",
|
||||
" + % 2 ~ ~ ~ ~ 3 4 = = 5 ",
|
||||
" 6 + 7 8 ~ ~ ~ ~ 3 3 9 = = ",
|
||||
" + % 0 ~ ~ ~ ~ ~ 3 3 a b = c ",
|
||||
" % % d e ~ f g g g h 3 3 i = = ",
|
||||
" j + * k ~ l g g g g g m 3 n o = p ",
|
||||
" + + q ~ ~ l g g g g g m 3 3 r = = ",
|
||||
" s + t u ~ ~ v g g g g g w 3 3 e x = = ",
|
||||
" + + y ~ ~ ~ ~ g g g g g 3 3 3 3 z A = B ",
|
||||
" C + D E ~ ~ ~ ~ g g g g g 3 3 3 3 ~ F = % ",
|
||||
" + % G ~ ~ ~ ~ ~ f g g g h 3 3 3 3 3 H I = J ",
|
||||
" + % K ( ~ ~ ~ ~ ~ L g g g h 3 3 3 3 3 3 M = = ",
|
||||
" N + O P ~ ~ ~ ~ ~ ~ Q g g g R 3 3 3 3 3 3 S T = @ ",
|
||||
" = % U ~ ~ ~ ~ ~ ~ ~ l g g g m 3 3 3 3 3 3 3 V * = ",
|
||||
" W = X Y ~ ~ ~ ~ ~ ~ ~ l g g g m 3 3 3 3 3 3 3 Z ` = . ",
|
||||
" = = ..~ ~ ~ ~ ~ ~ ~ ~ ~ g g g 3 3 3 3 3 3 3 3 3 +.@.= #. ",
|
||||
" .= $.%.~ ~ ~ ~ ~ ~ ~ ~ ~ g g g 3 3 3 3 3 3 3 3 3 3 &.= = ",
|
||||
" = * *.~ ~ ~ ~ ~ ~ ~ ~ ~ ~ =.g f 3 3 3 3 3 3 3 3 3 3 -.I = ;. ",
|
||||
" >.= ,.'.~ ~ ~ ~ ~ ~ ~ ~ ~ ~ L g L 3 3 3 3 3 3 3 3 3 3 3 ).= = ",
|
||||
" N = !.~.3 ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ v l v 3 3 3 3 3 3 3 3 3 3 3 {.].= ^. ",
|
||||
" /.= (.3 3 ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ v l _.3 3 3 3 3 3 3 3 3 3 3 3 :.= = ",
|
||||
" : + <.[.3 3 ~ ~ ~ ~ ~ ~ ~ ~ ~ L g g g m 3 3 3 3 3 3 3 3 3 3 3 }.|.= = ",
|
||||
" = + 1.3 3 3 ~ ~ ~ ~ ~ ~ ~ ~ 2.g g g g g 3.3 3 3 3 3 3 3 3 3 3 3 4.A = - ",
|
||||
" p 5.6.} 3 3 3 ~ ~ ~ ~ ~ ~ ~ ~ L g g g g g m 3 3 3 3 3 3 3 3 3 3 3 3 7.= = ",
|
||||
" 8.+ * 9.3 3 3 3 ~ ~ ~ ~ ~ ~ ~ ~ Q g g g g g w 3 3 3 3 3 3 3 3 3 3 3 3 0.a.= b. ",
|
||||
" % % c.d.3 3 3 3 ~ ~ ~ ~ ~ ~ ~ ~ _.=.g g g e.3 3 3 3 3 3 3 3 3 3 3 3 3 3 f.= = ",
|
||||
" - * g.h.~ 3 3 3 3 ~ ~ ~ ~ ~ ~ ~ ~ ~ _.Q L Q 3.3 3 3 3 3 3 3 3 3 3 3 3 3 3 i.j.= k. ",
|
||||
" = = l.m.m.n.n.n.n.m.m.m.m.m.m.m.m.m.m.m.m.m.n.n.n.n.n.n.n.n.n.n.n.n.n.n.n.n.o.* = p. ",
|
||||
" ^.* + g.q.r.b s.b s.r.< r.< r.r.< r.< r.< r.r.b s.b s.s.b s.b s.s.b s.b s.s.b b A = = ",
|
||||
" t.= * + * + = = = = + + + + + + + + + + + + + = = = = = = = = = = = = = = = = = = = = ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" "};
|
@@ -1,42 +0,0 @@
|
||||
/* XPM */
|
||||
static char *new_dir_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"20 20 16 1",
|
||||
" c Gray0",
|
||||
". c #800000",
|
||||
"X c #008000",
|
||||
"o c #808000",
|
||||
"O c #000080",
|
||||
"+ c #800080",
|
||||
"@ c #008080",
|
||||
"# c None",
|
||||
"$ c #808080",
|
||||
"% c Red",
|
||||
"& c Green",
|
||||
"* c Yellow",
|
||||
"= c Blue",
|
||||
"- c Magenta",
|
||||
"; c Cyan",
|
||||
": c Gray100",
|
||||
/* pixels */
|
||||
"####################",
|
||||
"####################",
|
||||
"############# ######",
|
||||
"####################",
|
||||
"############# ######",
|
||||
"########## ##### ###",
|
||||
"##### ## # # ####",
|
||||
"#### *:*: ## # #####",
|
||||
"### ## # ##",
|
||||
"### :*:*:*:*: #####",
|
||||
"### *:*:*:*:* # ####",
|
||||
"### :*:*:*:*: ## ###",
|
||||
"### *:*:*:*:* ######",
|
||||
"### :*:*:*:*: ######",
|
||||
"### *:*:*:*:* ######",
|
||||
"### ######",
|
||||
"####################",
|
||||
"####################",
|
||||
"####################",
|
||||
"####################"
|
||||
};
|
@@ -1,26 +0,0 @@
|
||||
/* XPM */
|
||||
static char *print_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"16 15 5 1",
|
||||
" c None",
|
||||
". c Black",
|
||||
"X c Gray100",
|
||||
"o c #808000",
|
||||
"O c Yellow",
|
||||
/* pixels */
|
||||
" ",
|
||||
" ......... ",
|
||||
" .XXXXXXXX. ",
|
||||
" .X.....X. ",
|
||||
" .XXXXXXXX. ",
|
||||
" .X.....X.... ",
|
||||
" .XXXXXXXX. . .",
|
||||
" .......... . ..",
|
||||
". . . .",
|
||||
"............. .",
|
||||
". ooo . . ",
|
||||
". OOO ... ",
|
||||
"............. . ",
|
||||
" . . . ",
|
||||
" ........... "
|
||||
};
|
@@ -1,27 +0,0 @@
|
||||
/* XPM */
|
||||
static char * repview_xpm[] = {
|
||||
"20 20 4 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"+ c #FFFFFF",
|
||||
"@ c #000083",
|
||||
" ",
|
||||
" ",
|
||||
" ................ ",
|
||||
" .++++++++++++++. ",
|
||||
" .++++++++++++++. ",
|
||||
" .+++....+...+.+. ",
|
||||
" .++++++++++++++. ",
|
||||
" .+@@@@@@@@@@@.+. ",
|
||||
" .++++++++++++++. ",
|
||||
" .+@+....+...+.+. ",
|
||||
" .++++++++++++++. ",
|
||||
" .+@+....+...+.+. ",
|
||||
" .++++++++++++++. ",
|
||||
" .+@+....+...+.+. ",
|
||||
" .++++++++++++++. ",
|
||||
" .+@+....+...+.+. ",
|
||||
" .++++++++++++++. ",
|
||||
" ................ ",
|
||||
" ",
|
||||
" "};
|
32
art/tick.xpm
@@ -1,32 +0,0 @@
|
||||
/* XPM */
|
||||
static char *tick_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"10 10 16 1",
|
||||
" c Gray0",
|
||||
". c #bf0000",
|
||||
"X c #00bf00",
|
||||
"o c #bfbf00",
|
||||
"O c #0000bf",
|
||||
"+ c #bf00bf",
|
||||
"@ c #00bfbf",
|
||||
"# c None",
|
||||
"$ c #808080",
|
||||
"% c Red",
|
||||
"& c Green",
|
||||
"* c Yellow",
|
||||
"= c Blue",
|
||||
"- c Magenta",
|
||||
"; c Cyan",
|
||||
": c Gray100",
|
||||
/* pixels */
|
||||
"##########",
|
||||
"######## #",
|
||||
"####### ",
|
||||
"###### ",
|
||||
"##### #",
|
||||
" ## ##",
|
||||
" ###",
|
||||
"# ####",
|
||||
"## #####",
|
||||
"### ######"
|
||||
};
|
@@ -1,45 +0,0 @@
|
||||
/* XPM */
|
||||
static char *tipicon_xpm[] = {
|
||||
/* columns rows colors chars-per-pixel */
|
||||
"32 32 7 1",
|
||||
" c Gray0",
|
||||
". c Cyan",
|
||||
"X c Yellow",
|
||||
"o c #808080808080",
|
||||
"O c #c0c0c0c0c0c0",
|
||||
"+ c Gray100",
|
||||
"@ c None",
|
||||
/* pixels */
|
||||
"@@@@@@@@@@@@ @@@@@@@@@@@@@@",
|
||||
"@@@@@@@@@@ XXXXXX @@@@@@@@@@@@",
|
||||
"@@@@@@@@@ XXXXXXXXXX @@@@@@@@@@@",
|
||||
"@@@@@@@@@ XXXXXXXXXX @@@@@@@@@@@",
|
||||
"@@@@@@@@ XXXXX XXXXX @@@@@@@@@@",
|
||||
"@@@@@@@ XXXXXX XXXXXX @@@@@@@@@",
|
||||
"@@@@@@@ XXXXXX XXXXXX @@@@@@@@@",
|
||||
"@@@@@@@ XXXXXX XXXXXX @@@@@@@@@",
|
||||
"@@@@@@@ XXXXXX XXXXXX @@@@@@@@@",
|
||||
"@@@@@@@ XXXXXX XXXXXX @@@@@@@@@",
|
||||
"@@@@@@@@ XXXXX XXXXX @@@@@@@@@",
|
||||
"@@@@@@@@oXXXXXXXXXXXX @@@@@@@@@@",
|
||||
"@@@@@@@o+ XXXX XXXX o@@@@@@@@@@",
|
||||
"@@@@@@o++ XXXX XXXX +o@@@@@@@@@",
|
||||
"@@@@@o++++ XXX XXX +++o@@@@@@@@",
|
||||
"@@@@o++.+.+ XXXXXX .+..+o@@@@@@@",
|
||||
"@@@o++++++++ XXXX +++++++o@@@@@@",
|
||||
"@@ +..+.+.+. oooo +.+..+.+ @@@@@",
|
||||
"@@@ ++++++++ OOOO +++++++ @@@@@@",
|
||||
"@@@@ ++.+.+. oooo +.+..+ @@@@@@@",
|
||||
"@@@oo ++++++ OO +++++ oo@@@@@@",
|
||||
"@@@ooo ++.+.+ ++.++ ooo@@@@@@",
|
||||
"@@@@ooo +.+.+ ++.+ ooo@@@@@@@",
|
||||
"@@@@@ooo +++++++++++ ooo@@@@@@@@",
|
||||
"@@@@@@ooo +.+.+.+.+ ooo@@@@@@@@@",
|
||||
"@@@@@@@ooo +++++++ ooo@@@@@@@@@@",
|
||||
"@@@@@@@@ooo +.+.+ ooo@@@@@@@@@@@",
|
||||
"@@@@@@@@@ooo +++ ooo@@@@@@@@@@@@",
|
||||
"@@@@@@@@@@ooo + ooo@@@@@@@@@@@@@",
|
||||
"@@@@@@@@@@@ooo ooo@@@@@@@@@@@@@@",
|
||||
"@@@@@@@@@@@@ooooo@@@@@@@@@@@@@@@",
|
||||
"@@@@@@@@@@@@@ooo@@@@@@@@@@@@@@@@"
|
||||
};
|
@@ -1,24 +0,0 @@
|
||||
/* XPM */
|
||||
static char * toparent_xpm[] = {
|
||||
"16 16 5 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"+ c #C0E4CB",
|
||||
"@ c #808080",
|
||||
"# c #77C490",
|
||||
" ",
|
||||
" ",
|
||||
" . ",
|
||||
" .+.@ ",
|
||||
" .+++.@ ",
|
||||
" .++##+.@ ",
|
||||
" .++####+.@ ",
|
||||
" ....+##....@ ",
|
||||
" .+##.@@@@@ ",
|
||||
" .+##...... ",
|
||||
" .+#######.@ ",
|
||||
" .+#######.@ ",
|
||||
" .+#######.@ ",
|
||||
" ..........@ ",
|
||||
" ",
|
||||
" "};
|
24
art/up.xpm
@@ -1,24 +0,0 @@
|
||||
/* XPM */
|
||||
static char * up_xpm[] = {
|
||||
"16 16 5 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"+ c #C0E4CB",
|
||||
"@ c #808080",
|
||||
"# c #77C490",
|
||||
" ",
|
||||
" . ",
|
||||
" .+.@ ",
|
||||
" .+++.@ ",
|
||||
" .++##+.@ ",
|
||||
" .++####+.@ ",
|
||||
" ....+##....@ ",
|
||||
" .+##.@@@@@ ",
|
||||
" .+##.@ ",
|
||||
" .+##.@ ",
|
||||
" .+##.@ ",
|
||||
" .+##.@ ",
|
||||
" .+##.@ ",
|
||||
" .....@ ",
|
||||
" ",
|
||||
" "};
|
BIN
art/wxwin.ico
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.2 KiB |
@@ -1,25 +0,0 @@
|
||||
/* XPM */
|
||||
static char *wxwin16x16_xpm[] = {
|
||||
"16 16 6 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"X c #000084",
|
||||
"o c #FFFFFF",
|
||||
"O c #FFFF00",
|
||||
"+ c #FF0000",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ....... ",
|
||||
" .XXXXX. ",
|
||||
" .oXXXX. ",
|
||||
" .oXXX.......",
|
||||
".....oXXX.OOOOO.",
|
||||
".+++.XXXX.oOOOO.",
|
||||
".o++......oOOOO.",
|
||||
".o++++. .oOOOO.",
|
||||
".o++++. .OOOOO.",
|
||||
".+++++. .......",
|
||||
"....... ",
|
||||
" ",
|
||||
" "};
|
Before Width: | Height: | Size: 1.2 KiB |
@@ -1,41 +0,0 @@
|
||||
/* XPM */
|
||||
static char *wxwin32x32_xpm[] = {
|
||||
"32 32 6 1",
|
||||
" c None",
|
||||
". c #000000",
|
||||
"X c #000084",
|
||||
"o c #FFFFFF",
|
||||
"O c #FFFF00",
|
||||
"+ c #FF0000",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" .............. ",
|
||||
" .XXXXXXXXXXXX. ",
|
||||
" .XXXXXXXXXXXX. ",
|
||||
" .XooXXXXXXXXX. ",
|
||||
" .XooXXXXXXXXX. ",
|
||||
" .XooXXXXXXXXX. ",
|
||||
" .XooXXXXXX..............",
|
||||
" .XooXXXXXX.OOOOOOOOOOOO.",
|
||||
".........XooXXXXXX.OOOOOOOOOOOO.",
|
||||
".+++++++.XooXXXXXX.OooOOOOOOOOO.",
|
||||
".+++++++.XooXXXXXX.OooOOOOOOOOO.",
|
||||
".+oo++++.XXXXXXXXX.OooOOOOOOOOO.",
|
||||
".+oo++++.XXXXXXXXX.OooOOOOOOOOO.",
|
||||
".+oo++++...........OooOOOOOOOOO.",
|
||||
".+oo+++++++++. .OooOOOOOOOOO.",
|
||||
".+oo+++++++++. .OooOOOOOOOOO.",
|
||||
".+oo+++++++++. .OooOOOOOOOOO.",
|
||||
".+oo+++++++++. .OOOOOOOOOOOO.",
|
||||
".+oo+++++++++. .OOOOOOOOOOOO.",
|
||||
".++++++++++++. ..............",
|
||||
".++++++++++++. ",
|
||||
".............. ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" ",
|
||||
" "};
|
@@ -1,2 +0,0 @@
|
||||
#!/bin/sh
|
||||
autoconf
|
1400
config.guess
vendored
1411
config.sub
vendored
5718
configure.in
@@ -1,15 +0,0 @@
|
||||
#
|
||||
# Makefile : Builds wxWindows utils for Unix.
|
||||
#
|
||||
|
||||
all:
|
||||
cd src; $(MAKE)
|
||||
|
||||
clean:
|
||||
cd src; $(MAKE) clean
|
||||
cd samples; $(MAKE) clean
|
||||
cd utils; $(MAKE) clean
|
||||
|
||||
|
||||
samples:
|
||||
cd samples; $(MAKE)
|
1063
contrib/configure
vendored
@@ -1,99 +0,0 @@
|
||||
dnl Process this file with autoconf to produce a configure script.
|
||||
AC_REVISION($Id$)dnl
|
||||
|
||||
AC_INIT(Makefile.in)
|
||||
|
||||
dnl we need the values the main configure determined for us, so refuse
|
||||
dnl to run if we don't have them
|
||||
if test "x$wx_cv_path_ifs" = "x"; then
|
||||
AC_MSG_ERROR([Please run configure from the top level directory.])
|
||||
fi
|
||||
|
||||
dnl ---------------
|
||||
dnl MMedia specific
|
||||
dnl ---------------
|
||||
|
||||
dnl Check for ESD
|
||||
|
||||
ESD_LINK=
|
||||
AC_CHECK_HEADER(esd.h, [
|
||||
AC_CHECK_LIB(esd, esd_close, [
|
||||
ESD_LINK="-lesd"
|
||||
])
|
||||
])
|
||||
|
||||
if test "$ESD_LINK" != "" ; then
|
||||
echo "ESound detected"
|
||||
fi
|
||||
|
||||
dnl -----------
|
||||
dnl Final subst
|
||||
|
||||
PATH_IFS=$wx_cv_path_ifs
|
||||
WX_TARGET_LIBRARY=$wx_cv_target_library
|
||||
WX_TARGET_LIBRARY_TYPE=$wx_cv_target_libtype
|
||||
WX_LIBRARY_BASENAME=$wx_cv_library_basename
|
||||
WX_RELEASE=$wx_cv_release
|
||||
WX_CURRENT=$wx_cv_current
|
||||
WX_REVISION=$wx_cv_revision
|
||||
WX_AGE=$wx_cv_age
|
||||
|
||||
AC_SUBST(PATH_IFS)
|
||||
AC_SUBST(ESD_LINK)
|
||||
AC_SUBST(WX_TARGET_LIBRARY)
|
||||
AC_SUBST(WX_TARGET_LIBRARY_TYPE)
|
||||
AC_SUBST(WX_LIBRARY_BASENAME)
|
||||
AC_SUBST(WX_RELEASE)
|
||||
AC_SUBST(WX_CURRENT)
|
||||
AC_SUBST(WX_REVISION)
|
||||
AC_SUBST(WX_AGE)
|
||||
|
||||
dnl -----------
|
||||
dnl File output
|
||||
|
||||
|
||||
AC_OUTPUT([
|
||||
src/Makefile
|
||||
src/deprecated/Makefile
|
||||
src/ogl/Makefile
|
||||
src/mmedia/Makefile
|
||||
src/stc/Makefile
|
||||
src/svg/Makefile
|
||||
src/xrc/Makefile
|
||||
src/gizmos/Makefile
|
||||
src/plot/Makefile
|
||||
src/applet/Makefile
|
||||
src/fl/Makefile
|
||||
src/net/Makefile
|
||||
samples/Makefile
|
||||
samples/deprecated/Makefile
|
||||
samples/deprecated/proplist/Makefile
|
||||
samples/deprecated/resource/Makefile
|
||||
samples/deprecated/treelay/Makefile
|
||||
samples/mmedia/Makefile
|
||||
samples/ogl/Makefile
|
||||
samples/ogl/ogledit/Makefile
|
||||
samples/ogl/studio/Makefile
|
||||
samples/stc/Makefile
|
||||
samples/svg/Makefile
|
||||
samples/gizmos/Makefile
|
||||
samples/gizmos/editlbox/Makefile
|
||||
samples/gizmos/dynsash/Makefile
|
||||
samples/gizmos/dynsash_switch/Makefile
|
||||
samples/gizmos/multicell/Makefile
|
||||
samples/gizmos/splittree/Makefile
|
||||
samples/gizmos/led/Makefile
|
||||
samples/xrc/Makefile
|
||||
samples/plot/Makefile
|
||||
samples/applet/Makefile
|
||||
samples/fl/Makefile
|
||||
samples/fl/fl_demo1/Makefile
|
||||
samples/fl/fl_demo2/Makefile
|
||||
samples/fl/fl_sample1/Makefile
|
||||
samples/fl/fl_sample2/Makefile
|
||||
samples/fl/fl_sample3/Makefile
|
||||
utils/Makefile
|
||||
utils/wxrc/Makefile
|
||||
utils/wxrcedit/Makefile
|
||||
utils/convertrc/Makefile
|
||||
])
|
@@ -1,15 +0,0 @@
|
||||
\chapter{Classes by category}\label{classesbycat}
|
||||
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
|
||||
\setfooter{\thepage}{}{}{}{}{\thepage}%
|
||||
|
||||
A classification of deprecated wxWindows classes by category.
|
||||
|
||||
{\large {\bf Miscellaneous}}
|
||||
|
||||
\twocolwidtha{6cm}
|
||||
\begin{twocollist}\itemsep=0pt
|
||||
\twocolitem{\helpref{wxTreeLayout}{wxtreelayout}}{Tree layout algorithm}
|
||||
\twocolitem{\helpref{wxExpr}{wxexpr}}{A class for parsing WXR (and other) data files}
|
||||
\twocolitem{\helpref{wxExprDatabase}{wxexprdatabase}}{A class for storing parsed WXR (and other) data files}
|
||||
\end{twocollist}
|
||||
|
@@ -1,35 +0,0 @@
|
||||
\chapter{Alphabetical class reference}\label{classref}
|
||||
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
|
||||
\setfooter{\thepage}{}{}{}{}{\thepage}%
|
||||
|
||||
% NB: the files should be in alphabetic order of the classes documented in
|
||||
% them and *not* in alphabetic order of the file names!
|
||||
|
||||
\input propbfva.tex
|
||||
\input propblva.tex
|
||||
\input propflva.tex
|
||||
\input propifva.tex
|
||||
\input propilva.tex
|
||||
\input proplosv.tex
|
||||
\input property.tex
|
||||
\input propford.tex
|
||||
\input propforf.tex
|
||||
\input propforp.tex
|
||||
\input propforv.tex
|
||||
\input propfovi.tex
|
||||
\input proplisd.tex
|
||||
\input proplisf.tex
|
||||
\input proplisp.tex
|
||||
\input propliva.tex
|
||||
\input proplstv.tex
|
||||
\input propsht.tex
|
||||
\input propvald.tex
|
||||
\input propregv.tex
|
||||
\input propval.tex
|
||||
\input propview.tex
|
||||
\input proprfva.tex
|
||||
\input proprlva.tex
|
||||
\input propstfv.tex
|
||||
\input propslv.tex
|
||||
\input treelay.tex
|
||||
|
@@ -1,496 +0,0 @@
|
||||
\section{\class{wxExpr}}\label{wxexpr}
|
||||
|
||||
The {\bf wxExpr} class is the building brick of expressions similar to Prolog
|
||||
clauses, or objects. It can represent an expression of type long integer, float, string, word,
|
||||
or list, and lists can be nested.
|
||||
|
||||
\wxheading{Derived from}
|
||||
|
||||
None
|
||||
|
||||
\wxheading{Include files}
|
||||
|
||||
<wx/wxexpr.h>
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{wxExpr overview}{exproverview}, \helpref{wxExprDatabase}{wxexprdatabase}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxExpr::wxExpr}\label{wxexprconstr}
|
||||
|
||||
\func{}{wxExpr}{\param{const wxString\&}{functor}}
|
||||
|
||||
Construct a new clause with this form, supplying the functor name. A clause is an object
|
||||
that will appear in the data file, with a list of attribute/value pairs.
|
||||
|
||||
\func{}{wxExpr}{\param{wxExprType}{ type}, \param{const wxString\&}{ wordOrString = ``"}}
|
||||
|
||||
Construct a new empty list, or a word (will be output with no quotes), or a string, depending on the
|
||||
value of {\it type}.
|
||||
|
||||
{\it type} can be {\bf wxExprList}, {\bf wxExprWord}, or {\bf wxExprString}. If {\it type} is wxExprList,
|
||||
the value of {\it wordOrString} will be ignored.
|
||||
|
||||
\func{}{wxExpr}{\param{long}{ value}}
|
||||
|
||||
Construct an integer expression.
|
||||
|
||||
\func{}{wxExpr}{\param{float}{ value}}
|
||||
|
||||
Construct a floating point expression.
|
||||
|
||||
\func{}{wxExpr}{\param{wxList* }{value}}
|
||||
|
||||
Construct a list expression. The list's nodes' data should
|
||||
themselves be {\bf wxExpr}s.
|
||||
|
||||
wxExpr no longer uses the {\bf wxList} internally,
|
||||
so this constructor turns the list into its internal
|
||||
format (assuming a non-nested list) and then deletes the supplied
|
||||
list.
|
||||
|
||||
\membersection{wxExpr::\destruct{wxExpr}}
|
||||
|
||||
\func{}{\destruct{wxExpr}}{\void}
|
||||
|
||||
Destructor.
|
||||
|
||||
\membersection{wxExpr::AddAttributeValue}\label{wxexpraddattributevalue}
|
||||
|
||||
Use these on clauses ONLY. Note that the functions for adding strings
|
||||
and words must be differentiated by function name which is why
|
||||
they are missing from this group (see \helpref{wxExpr::AddAttributeValueString}{wxexpraddattributevaluestring} and
|
||||
\rtfsp\helpref{wxExpr::AddAttributeValueWord}{wxexpraddattributevalueword}).
|
||||
|
||||
\func{void}{AddAttributeValue}{\param{const wxString\&}{ attribute}, \param{float }{value}}
|
||||
|
||||
Adds an attribute and floating point value pair to the clause.
|
||||
|
||||
\func{void}{AddAttributeValue}{\param{const wxString\&}{ attribute}, \param{long }{value}}
|
||||
|
||||
Adds an attribute and long integer value pair to the clause.
|
||||
|
||||
\func{void}{AddAttributeValue}{\param{const wxString\&}{ attribute}, \param{wxList* }{value}}
|
||||
|
||||
Adds an attribute and list value pair to the clause, converting the list into
|
||||
internal form and then deleting {\bf value}. Note that the list should not contain
|
||||
nested lists (except if in internal {\bf wxExpr} form.)
|
||||
|
||||
\func{void}{AddAttributeValue}{\param{const wxString\&}{ attribute}, \param{wxExpr* }{value}}
|
||||
|
||||
Adds an attribute and wxExpr value pair to the clause. Do not delete\rtfsp
|
||||
{\it value} once this function has been called.
|
||||
|
||||
\membersection{wxExpr::AddAttributeValueString}\label{wxexpraddattributevaluestring}
|
||||
|
||||
\func{void}{AddAttributeValueString}{\param{const wxString\&}{ attribute}, \param{const wxString\&}{ value}}
|
||||
|
||||
Adds an attribute and string value pair to the clause.
|
||||
|
||||
\membersection{wxExpr::AddAttributeValueStringList}\label{wxexpraddattributevaluestringlist}
|
||||
|
||||
\func{void}{AddAttributeValueStringList}{\param{const wxString\&}{ attribute}, \param{wxList* }{value}}
|
||||
|
||||
Adds an attribute and string list value pair to the clause.
|
||||
|
||||
Note that the list passed to this function is a list of strings, NOT a list
|
||||
of {\bf wxExpr}s; it gets turned into a list of {\bf wxExpr}s
|
||||
automatically. This is a convenience function, since lists of strings
|
||||
are often manipulated in C++.
|
||||
|
||||
\membersection{wxExpr::AddAttributeValueWord}\label{wxexpraddattributevalueword}
|
||||
|
||||
\func{void}{AddAttributeValueWord}{\param{const wxString\&}{ attribute}, \param{const wxString\&}{ value}}
|
||||
|
||||
Adds an attribute and word value pair to the clause.
|
||||
|
||||
\membersection{wxExpr::Append}\label{wxexprappend}
|
||||
|
||||
\func{void}{Append}{\param{wxExpr*}{ value}}
|
||||
|
||||
Append the {\bf value} to the end of the list. `this' must be a list.
|
||||
|
||||
\membersection{wxExpr::Arg}\label{wxexprarg}
|
||||
|
||||
\constfunc{wxExpr* }{Arg}{\param{wxExprType}{ type}, \param{int}{ n}}
|
||||
|
||||
Get nth arg of the given clause (starting from 1). NULL is returned if
|
||||
the expression is not a clause, or {\it n} is invalid, or the given type
|
||||
does not match the actual type. See also \helpref{wxExpr::Nth}{wxexprnth}.
|
||||
|
||||
\membersection{wxExpr::Insert}\label{wxexprinsert}
|
||||
|
||||
\func{void}{Insert}{\param{wxExpr* }{value}}
|
||||
|
||||
Insert the {\bf value} at the start of the list. `this' must be a list.
|
||||
|
||||
\membersection{wxExpr::GetAttributeValue}\label{wxexprgetattributevalue}
|
||||
|
||||
These functions are the easiest way to retrieve attribute values, by
|
||||
passing a pointer to variable. If the attribute is present, the
|
||||
variable will be filled with the appropriate value. If not, the
|
||||
existing value is left alone. This style of retrieving attributes
|
||||
makes it easy to set variables to default values before calling these
|
||||
functions; no code is necessary to check whether the attribute is
|
||||
present or not.
|
||||
|
||||
\constfunc{bool}{GetAttributeValue}{\param{const wxString\&}{ attribute}, \param{wxString\&}{ value}}
|
||||
|
||||
Retrieve a string (or word) value.
|
||||
|
||||
\constfunc{bool}{GetAttributeValue}{\param{const wxString\&}{ attribute}, \param{float\& }{value}}
|
||||
|
||||
Retrieve a floating point value.
|
||||
|
||||
\constfunc{bool}{GetAttributeValue}{\param{const wxString\&}{ attribute}, \param{int\& }{value}}
|
||||
|
||||
Retrieve an integer value.
|
||||
|
||||
\constfunc{bool}{GetAttributeValue}{\param{const wxString\&}{ attribute}, \param{long\& }{value}}
|
||||
|
||||
Retrieve a long integer value.
|
||||
|
||||
\constfunc{bool}{GetAttributeValue}{\param{const wxString\&}{ attribute}, \param{wxExpr**}{ value}}
|
||||
|
||||
Retrieve a wxExpr pointer.
|
||||
|
||||
\membersection{wxExpr::GetAttributeValueStringList}\label{wxexprgetattributestringlist}
|
||||
|
||||
\constfunc{void}{GetAttributeValueStringList}{\param{const wxString\&}{attribute}, \param{wxList* }{value}}
|
||||
|
||||
Use this on clauses ONLY. See above for comments on this style of
|
||||
attribute value retrieval. This function expects to receive a pointer to
|
||||
a new list (created by the calling application); it will append strings
|
||||
to the list if the attribute is present in the clause.
|
||||
|
||||
\membersection{wxExpr::AttributeValue}\label{wxexprattributevalue}
|
||||
|
||||
\constfunc{wxExpr*}{AttributeValue}{\param{const wxString\&}{ word}}
|
||||
|
||||
Use this on clauses ONLY. Searches the clause for an attribute
|
||||
matching {\it word}, and returns the value associated with it.
|
||||
|
||||
\membersection{wxExpr::Copy}\label{wxexprcopy}
|
||||
|
||||
\constfunc{wxExpr*}{Copy}{\void}
|
||||
|
||||
Recursively copies the expression, allocating new storage space.
|
||||
|
||||
\membersection{wxExpr::DeleteAttributeValue}\label{wxexprdeletattributevalue}
|
||||
|
||||
\func{void}{DeleteAttributeValue}{\param{const wxString\&}{ attribute}}
|
||||
|
||||
Use this on clauses only. Deletes the attribute and its value (if any) from the
|
||||
clause.
|
||||
|
||||
\membersection{wxExpr::Functor}\label{wxexprfunctor}
|
||||
|
||||
\constfunc{wxString}{Functor}{\void}
|
||||
|
||||
Use this on clauses only. Returns the clause's functor (object name).
|
||||
|
||||
\membersection{wxExpr::GetClientData}\label{wxexprgetclientdata}
|
||||
|
||||
\constfunc{wxObject*}{GetClientData}{\void}
|
||||
|
||||
Retrieve arbitrary data stored with this clause. This can be useful when
|
||||
reading in data for storing a pointer to the C++ object, so when another
|
||||
clause makes a reference to this clause, its C++ object can be retrieved.
|
||||
See \helpref{wxExpr::SetClientData}{wxexprsetclientdata}.
|
||||
|
||||
\membersection{wxExpr::GetFirst}\label{wxexprgetfirst}
|
||||
|
||||
\constfunc{wxExpr*}{GetFirst}{\void}
|
||||
|
||||
If this is a list expression (or clause), gets the first element in the list.
|
||||
|
||||
See also \helpref{wxExpr::GetLast}{wxexprgetlast}, \helpref{wxExpr::GetNext}{wxexprgetnext}, \helpref{wxExpr::Nth}{wxexprnth}.
|
||||
|
||||
\membersection{wxExpr::GetLast}\label{wxexprgetlast}
|
||||
|
||||
\constfunc{wxExpr*}{GetLast}{\void}
|
||||
|
||||
If this is a list expression (or clause), gets the last element in the list.
|
||||
|
||||
See also \helpref{wxExpr::GetFirst}{wxexprgetfirst}, \helpref{wxExpr::GetNext}{wxexprgetnext}, \helpref{wxExpr::Nth}{wxexprnth}.
|
||||
|
||||
\membersection{wxExpr::GetNext}\label{wxexprgetnext}
|
||||
|
||||
\constfunc{wxExpr*}{GetNext}{\void}
|
||||
|
||||
If this is a node in a list (any wxExpr may be a node in a list), gets the
|
||||
next element in the list.
|
||||
|
||||
See also \helpref{wxExpr::GetFirst}{wxexprgetfirst}, \helpref{wxExpr::GetLast}{wxexprgetlast}, \helpref{wxExpr::Nth}{wxexprnth}.
|
||||
|
||||
\membersection{wxExpr::IntegerValue}\label{wxexprintegervalue}
|
||||
|
||||
\constfunc{long}{IntegerValue}{\void}
|
||||
|
||||
Returns the integer value of the expression.
|
||||
|
||||
\membersection{wxExpr::Nth}\label{wxexprnth}
|
||||
|
||||
\constfunc{wxExpr*}{Nth}{\param{int}{ n}}
|
||||
|
||||
Get nth arg of the given list expression (starting from 0). NULL is returned if
|
||||
the expression is not a list expression, or {\it n} is invalid. See also \helpref{wxExpr::Arg}{wxexprarg}.
|
||||
|
||||
Normally, you would use attribute-value pairs to add and retrieve data
|
||||
from objects (clauses) in a data file. However, if the data gets complex,
|
||||
you may need to store attribute values as lists, and pick them apart
|
||||
yourself.
|
||||
|
||||
\membersection{wxExpr::RealValue}\label{wxexprrealvalue}
|
||||
|
||||
\constfunc{float}{RealValue}{\void}
|
||||
|
||||
Returns the floating point value of the expression.
|
||||
|
||||
\membersection{wxExpr::SetClientData}\label{wxexprsetclientdata}
|
||||
|
||||
\func{void}{SetClientData}{\param{wxObject *}{data}}
|
||||
|
||||
Associate arbitrary data with this clause. This can be useful when
|
||||
reading in data for storing a pointer to the C++ object, so when another
|
||||
clause makes a reference to this clause, its C++ object can be retrieved.
|
||||
See \helpref{wxExpr::GetClientData}{wxexprgetclientdata}.
|
||||
|
||||
\membersection{wxExpr::StringValue}\label{wxexprstringvalue}
|
||||
|
||||
\constfunc{wxString}{StringValue}{\void}
|
||||
|
||||
Returns the string value of the expression.
|
||||
|
||||
\membersection{wxExpr::Type}\label{wxexprtype}
|
||||
|
||||
\constfunc{wxExprType}{Type}{\void}
|
||||
|
||||
Returns the type of the expression. {\bf wxExprType} is defined as follows:
|
||||
|
||||
\begin{verbatim}
|
||||
typedef enum {
|
||||
wxExprNull,
|
||||
wxExprInteger,
|
||||
wxExprReal,
|
||||
wxExprWord,
|
||||
wxExprString,
|
||||
wxExprList
|
||||
} wxExprType;
|
||||
\end{verbatim}
|
||||
|
||||
\membersection{wxExpr::WordValue}\label{wxexprwordvalue}
|
||||
|
||||
\constfunc{wxString}{WordValue}{\void}
|
||||
|
||||
Returns the word value of the expression.
|
||||
|
||||
\membersection{wxExpr::WriteClause}\label{wxexprwriteprologclause}
|
||||
|
||||
\func{void}{WriteClause}{\param{FILE *}{ stream}}
|
||||
|
||||
Writes the clause to the given stream in Prolog format. Not normally needed, since
|
||||
the whole {\bf wxExprDatabase} will usually be written at once. The format is:
|
||||
functor, open parenthesis, list of comma-separated expressions, close parenthesis,
|
||||
full stop.
|
||||
|
||||
\membersection{wxExpr::WriteExpr}\label{wxexprwriteexpr}
|
||||
|
||||
\func{void}{WriteExpr}{\param{FILE *}{ stream}}
|
||||
|
||||
Writes the expression (not clause) to the given stream in Prolog
|
||||
format. Not normally needed, since the whole {\bf wxExprDatabase} will
|
||||
usually be written at once. Lists are written in square bracketed,
|
||||
comma-delimited format.
|
||||
|
||||
\membersection{Functions and macros}
|
||||
|
||||
Below are miscellaneous functions and macros associated with wxExpr objects.
|
||||
|
||||
\func{bool}{wxExprIsFunctor}{\param{wxExpr *}{expr}, \param{const wxString\&}{ functor}}
|
||||
|
||||
Checks that the functor of {\it expr} is {\it functor}.
|
||||
|
||||
\func{void}{wxExprCleanUp}{\void}
|
||||
|
||||
Cleans up the wxExpr system (YACC/LEX buffers) to avoid memory-checking warnings as the program exits.
|
||||
|
||||
\begin{verbatim}
|
||||
#define wxMakeInteger(x) (new wxExpr((long)x))
|
||||
#define wxMakeReal(x) (new wxExpr((float)x))
|
||||
#define wxMakeString(x) (new wxExpr(PrologString, x))
|
||||
#define wxMakeWord(x) (new wxExpr(PrologWord, x))
|
||||
#define wxMake(x) (new wxExpr(x))
|
||||
\end{verbatim}
|
||||
|
||||
Macros to help make wxExpr objects.
|
||||
|
||||
\section{\class{wxExprDatabase}}\label{wxexprdatabase}
|
||||
|
||||
The {\bf wxExprDatabase} class represents a database, or list,
|
||||
of Prolog-like expressions. Instances of this class are used for reading,
|
||||
writing and creating data files.
|
||||
|
||||
\wxheading{Derived from}
|
||||
|
||||
\helpref{wxList}{wxlist}\\
|
||||
\helpref{wxObject}{wxobject}
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{wxExpr overview}{exproverview}, \helpref{wxExpr}{wxexpr}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxExprDatabase::wxExprDatabase}\label{wxexprdatabaseconstr}
|
||||
|
||||
\func{void}{wxExprDatabase}{\param{proioErrorHandler}{ handler = 0}}
|
||||
|
||||
Construct a new, unhashed database, with an optional error handler. The
|
||||
error handler must be a function returning a bool and taking an integer and a string
|
||||
argument. When an error occurs when reading or writing a database, this function is
|
||||
called. The error is given as the first argument (currently one of WXEXPR\_ERROR\_GENERAL,
|
||||
WXEXPR\_ERROR\_SYNTAX) and an error message is given as the second argument. If false
|
||||
is returned by the error handler, processing of the wxExpr operation stops.
|
||||
|
||||
Another way of handling errors is simply to call \helpref{wxExprDatabase::GetErrorCount}{wxexprdatabasegeterrorcount} after
|
||||
the operation, to check whether errors have occurred, instead of installing an error handler.
|
||||
If the error count is more than zero, \helpref{wxExprDatabase::Write}{wxexprdatabasewrite} and
|
||||
\rtfsp\helpref{wxExprDatabase::Read}{wxexprdatabaseread} will return false to
|
||||
the application.
|
||||
|
||||
For example:
|
||||
|
||||
\begin{verbatim}
|
||||
bool myErrorHandler(int err, chat *msg)
|
||||
{
|
||||
if (err == WXEXPR_ERROR_SYNTAX)
|
||||
{
|
||||
wxMessageBox(msg, "Syntax error");
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
wxExprDatabase database(myErrorHandler);
|
||||
\end{verbatim}
|
||||
|
||||
\func{}{wxExprDatabase}{\param{wxExprType}{ type}, \param{const wxString\&}{attribute},
|
||||
\rtfsp\param{int}{ size = 500}, \param{proioErrorHandler}{ handler = 0}}
|
||||
|
||||
Construct a new database hashed on a combination of the clause functor and
|
||||
a named attribute (often an integer identification).
|
||||
|
||||
See above for an explanation of the error handler.
|
||||
|
||||
\membersection{wxExprDatabase::\destruct{wxExprDatabase}}
|
||||
|
||||
\func{}{\destruct{wxExprDatabase}}{\void}
|
||||
|
||||
Delete the database and contents.
|
||||
|
||||
\membersection{wxExprDatabase::Append}\label{wxexprdatabaseappend}
|
||||
|
||||
\func{void}{Append}{\param{wxExpr* }{clause}}
|
||||
|
||||
Append a clause to the end of the database. If the database is hashing,
|
||||
the functor and a user-specified attribute will be hashed upon, giving the
|
||||
option of random access in addition to linear traversal of the database.
|
||||
|
||||
\membersection{wxExprDatabase::BeginFind}\label{wxexprdatabasebeginfind}
|
||||
|
||||
\func{void}{BeginFind}{\void}
|
||||
|
||||
Reset the current position to the start of the database. Subsequent
|
||||
\rtfsp\helpref{wxExprDatabase::FindClause}{wxexprdatabasefindclause} calls will move the pointer.
|
||||
|
||||
\membersection{wxExprDatabase::ClearDatabase}\label{wxexprdatabasecleardatabase}
|
||||
|
||||
\func{void}{ClearDatabase}{\void}
|
||||
|
||||
Clears the contents of the database.
|
||||
|
||||
\membersection{wxExprDatabase::FindClause}\label{wxexprdatabasefindclause}
|
||||
|
||||
Various ways of retrieving clauses from the database. A return
|
||||
value of NULL indicates no (more) clauses matching the given criteria.
|
||||
Calling the functions repeatedly retrieves more matching clauses, if any.
|
||||
|
||||
\func{wxExpr* }{FindClause}{\param{long}{ id}}
|
||||
|
||||
Find a clause based on the special ``id'' attribute.
|
||||
|
||||
\func{wxExpr* }{FindClause}{\param{const wxString\&}{ attribute}, \param{const wxString\&}{ value}}
|
||||
|
||||
Find a clause which has the given attribute set to the given string or word value.
|
||||
|
||||
\func{wxExpr*}{FindClause}{\param{const wxString\&}{ attribute}, \param{long}{ value}}
|
||||
|
||||
Find a clause which has the given attribute set to the given integer value.
|
||||
|
||||
\func{wxExpr*}{FindClause}{\param{const wxString\&}{ attribute}, \param{float}{ value}}
|
||||
|
||||
Find a clause which has the given attribute set to the given floating point value.
|
||||
|
||||
\membersection{wxExprDatabase::FindClauseByFunctor}\label{wxexprdatabasefindclausebyfunctor}
|
||||
|
||||
\func{wxExpr*}{FindClauseByFunctor}{\param{const wxString\&}{ functor}}
|
||||
|
||||
Find the next clause with the specified functor.
|
||||
|
||||
\membersection{wxExprDatabase::GetErrorCount}\label{wxexprdatabasegeterrorcount}
|
||||
|
||||
\constfunc{int}{GetErrorCount}{\void}
|
||||
|
||||
Returns the number of errors encountered during the last read or write operation.
|
||||
|
||||
\membersection{wxExprDatabase::HashFind}\label{wxexprdatabasehashfind}
|
||||
|
||||
\constfunc{wxExpr*}{HashFind}{\param{const wxString\&}{ functor}, \param{long}{ value}}
|
||||
|
||||
Finds the clause with the given functor and with the attribute specified
|
||||
in the database constructor having the given integer value.
|
||||
|
||||
For example,
|
||||
|
||||
\begin{verbatim}
|
||||
// Hash on a combination of functor and integer "id" attribute when reading in
|
||||
wxExprDatabase db(wxExprInteger, "id");
|
||||
|
||||
// Read it in
|
||||
db.ReadProlog("data");
|
||||
|
||||
// Retrieve a clause with specified functor and id
|
||||
wxExpr *clause = db.HashFind("node", 24);
|
||||
\end{verbatim}
|
||||
|
||||
This would retrieve a clause which is written: {\tt node(id = 24, ..., )}.
|
||||
|
||||
\func{wxExpr*}{HashFind}{\param{const wxString\&}{ functor}, \param{const wxString\&}{ value}}
|
||||
|
||||
Finds the clause with the given functor and with the attribute specified
|
||||
in the database constructor having the given string value.
|
||||
|
||||
\membersection{wxExprDatabase::Read}\label{wxexprdatabaseread}
|
||||
|
||||
\func{bool}{Read}{\param{const wxString\&}{ filename}}
|
||||
|
||||
Reads in the given file, returning true if successful.
|
||||
|
||||
\membersection{wxExprDatabase::ReadFromString}\label{wxexprdatabasereadfromstring}
|
||||
|
||||
\func{bool}{ReadFromString}{\param{const wxString\&}{ buffer}}
|
||||
|
||||
Reads a Prolog database from the given string buffer, returning true if
|
||||
successful.
|
||||
|
||||
\membersection{wxExprDatabase::Write}\label{wxexprdatabasewrite}
|
||||
|
||||
\func{bool}{Write}{\param{FILE *}{stream}}
|
||||
|
||||
\func{bool}{Write}{\param{const wxString\&}{ filename}}
|
||||
|
||||
Writes the database as a Prolog-format file.
|
||||
|
||||
|
@@ -1,361 +0,0 @@
|
||||
\chapter{Functions}\label{functions}
|
||||
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
|
||||
\setfooter{\thepage}{}{}{}{}{\thepage}
|
||||
|
||||
Deprecated functions and macros defined in wxWindows are described here: you can
|
||||
either look up a function using the alphabetical listing of them or find it in
|
||||
the corresponding topic.
|
||||
|
||||
\section{Alphabetical functions and macros list}
|
||||
|
||||
%\helpref{wxGetResource}{wxgetresource}\\
|
||||
%\helpref{wxLoadUserResource}{wxloaduserresource}\\
|
||||
%\helpref{wxMakeMetafilePlaceable}{wxmakemetafileplaceable}\\
|
||||
%\helpref{wxNewId}{wxnewid}\\
|
||||
\helpref{wxLoadFromResource}{wxloadfromresource}\\
|
||||
\helpref{wxResourceAddIdentifier}{wxresourceaddidentifier}\\
|
||||
\helpref{wxResourceClear}{wxresourceclear}\\
|
||||
\helpref{wxResourceCreateBitmap}{wxresourcecreatebitmap}\\
|
||||
\helpref{wxResourceCreateIcon}{wxresourcecreateicon}\\
|
||||
\helpref{wxResourceCreateMenuBar}{wxresourcecreatemenubar}\\
|
||||
\helpref{wxResourceGetIdentifier}{wxresourcegetidentifier}\\
|
||||
\helpref{wxResourceParseData}{wxresourcedata}\\
|
||||
\helpref{wxResourceParseFile}{wxresourceparsefile}\\
|
||||
\helpref{wxResourceParseString}{wxresourceparsestring}\\
|
||||
\helpref{wxResourceRegisterBitmapData}{registerbitmapdata}\\
|
||||
\helpref{wxResourceRegisterIconData}{wxresourceregistericondata}\\
|
||||
%\helpref{wxSetPrinterCommand}{wxsetprintercommand}\\
|
||||
%\helpref{wxSetPrinterFile}{wxsetprinterfile}\\
|
||||
%\helpref{wxSetPrinterMode}{wxsetprintermode}\\
|
||||
%\helpref{wxSetPrinterOptions}{wxsetprinteroptions}\\
|
||||
%\helpref{wxSetPrinterOrientation}{wxsetprinterorientation}\\
|
||||
%\helpref{wxSetPrinterPreviewCommand}{wxsetprinterpreviewcommand}\\
|
||||
%\helpref{wxSetPrinterScaling}{wxsetprinterscaling}\\
|
||||
%\helpref{wxSetPrinterTranslation}{wxsetprintertranslation}\\
|
||||
|
||||
\section{Printer settings}\label{printersettings}
|
||||
|
||||
{\bf NB:} These routines are obsolete and should no longer be used!
|
||||
|
||||
The following functions are used to control PostScript printing. Under
|
||||
Windows, PostScript output can only be sent to a file.
|
||||
|
||||
\wxheading{Include files}
|
||||
|
||||
<wx/dcps.h>
|
||||
|
||||
\membersection{::wxGetPrinterCommand}\label{wxgetprintercommand}
|
||||
|
||||
\func{wxString}{wxGetPrinterCommand}{\void}
|
||||
|
||||
Gets the printer command used to print a file. The default is {\tt lpr}.
|
||||
|
||||
\membersection{::wxGetPrinterFile}\label{wxgetprinterfile}
|
||||
|
||||
\func{wxString}{wxGetPrinterFile}{\void}
|
||||
|
||||
Gets the PostScript output filename.
|
||||
|
||||
\membersection{::wxGetPrinterMode}\label{wxgetprintermode}
|
||||
|
||||
\func{int}{wxGetPrinterMode}{\void}
|
||||
|
||||
Gets the printing mode controlling where output is sent (PS\_PREVIEW, PS\_FILE or PS\_PRINTER).
|
||||
The default is PS\_PREVIEW.
|
||||
|
||||
\membersection{::wxGetPrinterOptions}\label{wxgetprinteroptions}
|
||||
|
||||
\func{wxString}{wxGetPrinterOptions}{\void}
|
||||
|
||||
Gets the additional options for the print command (e.g. specific printer). The default is nothing.
|
||||
|
||||
\membersection{::wxGetPrinterOrientation}\label{wxgetprinterorientation}
|
||||
|
||||
\func{int}{wxGetPrinterOrientation}{\void}
|
||||
|
||||
Gets the orientation (PS\_PORTRAIT or PS\_LANDSCAPE). The default is PS\_PORTRAIT.
|
||||
|
||||
\membersection{::wxGetPrinterPreviewCommand}\label{wxgetprinterpreviewcommand}
|
||||
|
||||
\func{wxString}{wxGetPrinterPreviewCommand}{\void}
|
||||
|
||||
Gets the command used to view a PostScript file. The default depends on the platform.
|
||||
|
||||
\membersection{::wxGetPrinterScaling}\label{wxgetprinterscaling}
|
||||
|
||||
\func{void}{wxGetPrinterScaling}{\param{float *}{x}, \param{float *}{y}}
|
||||
|
||||
Gets the scaling factor for PostScript output. The default is 1.0, 1.0.
|
||||
|
||||
\membersection{::wxGetPrinterTranslation}\label{wxgetprintertranslation}
|
||||
|
||||
\func{void}{wxGetPrinterTranslation}{\param{float *}{x}, \param{float *}{y}}
|
||||
|
||||
Gets the translation (from the top left corner) for PostScript output. The default is 0.0, 0.0.
|
||||
|
||||
\membersection{::wxSetPrinterCommand}\label{wxsetprintercommand}
|
||||
|
||||
\func{void}{wxSetPrinterCommand}{\param{const wxString\& }{command}}
|
||||
|
||||
Sets the printer command used to print a file. The default is {\tt lpr}.
|
||||
|
||||
\membersection{::wxSetPrinterFile}\label{wxsetprinterfile}
|
||||
|
||||
\func{void}{wxSetPrinterFile}{\param{const wxString\& }{filename}}
|
||||
|
||||
Sets the PostScript output filename.
|
||||
|
||||
\membersection{::wxSetPrinterMode}\label{wxsetprintermode}
|
||||
|
||||
\func{void}{wxSetPrinterMode}{\param{int }{mode}}
|
||||
|
||||
Sets the printing mode controlling where output is sent (PS\_PREVIEW, PS\_FILE or PS\_PRINTER).
|
||||
The default is PS\_PREVIEW.
|
||||
|
||||
\membersection{::wxSetPrinterOptions}\label{wxsetprinteroptions}
|
||||
|
||||
\func{void}{wxSetPrinterOptions}{\param{const wxString\& }{options}}
|
||||
|
||||
Sets the additional options for the print command (e.g. specific printer). The default is nothing.
|
||||
|
||||
\membersection{::wxSetPrinterOrientation}\label{wxsetprinterorientation}
|
||||
|
||||
\func{void}{wxSetPrinterOrientation}{\param{int}{ orientation}}
|
||||
|
||||
Sets the orientation (PS\_PORTRAIT or PS\_LANDSCAPE). The default is PS\_PORTRAIT.
|
||||
|
||||
\membersection{::wxSetPrinterPreviewCommand}\label{wxsetprinterpreviewcommand}
|
||||
|
||||
\func{void}{wxSetPrinterPreviewCommand}{\param{const wxString\& }{command}}
|
||||
|
||||
Sets the command used to view a PostScript file. The default depends on the platform.
|
||||
|
||||
\membersection{::wxSetPrinterScaling}\label{wxsetprinterscaling}
|
||||
|
||||
\func{void}{wxSetPrinterScaling}{\param{float }{x}, \param{float }{y}}
|
||||
|
||||
Sets the scaling factor for PostScript output. The default is 1.0, 1.0.
|
||||
|
||||
\membersection{::wxSetPrinterTranslation}\label{wxsetprintertranslation}
|
||||
|
||||
\func{void}{wxSetPrinterTranslation}{\param{float }{x}, \param{float }{y}}
|
||||
|
||||
Sets the translation (from the top left corner) for PostScript output. The default is 0.0, 0.0.
|
||||
|
||||
\section{Resource functions}\label{resourcefunctions}
|
||||
|
||||
\overview{Resource functions}{resourceformats}
|
||||
|
||||
This section details functions for manipulating wxWindows (.WXR) resource
|
||||
files and loading user interface elements from resources.
|
||||
|
||||
\normalbox{Please note that this use of the word `resource' is different from that used when talking
|
||||
about initialisation file resource reading and writing, using such functions
|
||||
as wxWriteResource and wxGetResource. It is just an unfortunate clash of terminology.}
|
||||
|
||||
\helponly{For an overview of the wxWindows resource mechanism, see \helpref{the wxWindows resource system}{resourceformats}.}
|
||||
|
||||
See also \helpref{wxWindow::LoadFromResource}{wxwindowloadfromresource} for
|
||||
loading from resource data.
|
||||
|
||||
\membersection{wxLoadFromResource}\label{wxloadfromresource}
|
||||
|
||||
\func{virtual bool}{LoadFromResource}{\param{wxWindow* thisWindow}, \param{wxWindow* }{parent},\rtfsp
|
||||
\param{const wxString\& }{resourceName}, \param{const wxResourceTable* }{resourceTable = NULL}}
|
||||
|
||||
Loads a panel or dialog from a resource file.
|
||||
|
||||
\wxheading{Parameters}
|
||||
|
||||
\docparam{thisWindow}{Window to load the resource into.}
|
||||
|
||||
\docparam{parent}{Parent window.}
|
||||
|
||||
\docparam{resourceName}{The name of the resource to load.}
|
||||
|
||||
\docparam{resourceTable}{The resource table to load it from. If this is NULL, the
|
||||
default resource table will be used.}
|
||||
|
||||
\wxheading{Return value}
|
||||
|
||||
{\tt true} if the operation succeeded, otherwise {\tt false}.
|
||||
|
||||
\membersection{::wxResourceAddIdentifier}\label{wxresourceaddidentifier}
|
||||
|
||||
\func{bool}{wxResourceAddIdentifier}{\param{const wxString\& }{name}, \param{int }{value}}
|
||||
|
||||
Used for associating a name with an integer identifier (equivalent to dynamically\rtfsp
|
||||
{\tt\#}defining a name to an integer). Unlikely to be used by an application except
|
||||
perhaps for implementing resource functionality for interpreted languages.
|
||||
|
||||
\membersection{::wxResourceClear}\label{wxresourceclear}
|
||||
|
||||
\func{void}{wxResourceClear}{\void}
|
||||
|
||||
Clears the wxWindows resource table.
|
||||
|
||||
\membersection{::wxResourceCreateBitmap}\label{wxresourcecreatebitmap}
|
||||
|
||||
\func{wxBitmap *}{wxResourceCreateBitmap}{\param{const wxString\& }{resource}}
|
||||
|
||||
Creates a new bitmap from a file, static data, or Windows resource, given a valid
|
||||
wxWindows bitmap resource identifier. For example, if the .WXR file contains
|
||||
the following:
|
||||
|
||||
\begin{verbatim}
|
||||
static const wxString\& project_resource = "bitmap(name = 'project_resource',\
|
||||
bitmap = ['project', wxBITMAP_TYPE_BMP_RESOURCE, 'WINDOWS'],\
|
||||
bitmap = ['project.xpm', wxBITMAP_TYPE_XPM, 'X']).";
|
||||
\end{verbatim}
|
||||
|
||||
then this function can be called as follows:
|
||||
|
||||
\begin{verbatim}
|
||||
wxBitmap *bitmap = wxResourceCreateBitmap("project_resource");
|
||||
\end{verbatim}
|
||||
|
||||
\membersection{::wxResourceCreateIcon}\label{wxresourcecreateicon}
|
||||
|
||||
\func{wxIcon *}{wxResourceCreateIcon}{\param{const wxString\& }{resource}}
|
||||
|
||||
Creates a new icon from a file, static data, or Windows resource, given a valid
|
||||
wxWindows icon resource identifier. For example, if the .WXR file contains
|
||||
the following:
|
||||
|
||||
\begin{verbatim}
|
||||
static const wxString\& project_resource = "icon(name = 'project_resource',\
|
||||
icon = ['project', wxBITMAP_TYPE_ICO_RESOURCE, 'WINDOWS'],\
|
||||
icon = ['project', wxBITMAP_TYPE_XBM_DATA, 'X']).";
|
||||
\end{verbatim}
|
||||
|
||||
then this function can be called as follows:
|
||||
|
||||
\begin{verbatim}
|
||||
wxIcon *icon = wxResourceCreateIcon("project_resource");
|
||||
\end{verbatim}
|
||||
|
||||
\membersection{::wxResourceCreateMenuBar}\label{wxresourcecreatemenubar}
|
||||
|
||||
\func{wxMenuBar *}{wxResourceCreateMenuBar}{\param{const wxString\& }{resource}}
|
||||
|
||||
Creates a new menu bar given a valid wxWindows menubar resource
|
||||
identifier. For example, if the .WXR file contains the following:
|
||||
|
||||
\begin{verbatim}
|
||||
static const wxString\& menuBar11 = "menu(name = 'menuBar11',\
|
||||
menu = \
|
||||
[\
|
||||
['&File', 1, '', \
|
||||
['&Open File', 2, 'Open a file'],\
|
||||
['&Save File', 3, 'Save a file'],\
|
||||
[],\
|
||||
['E&xit', 4, 'Exit program']\
|
||||
],\
|
||||
['&Help', 5, '', \
|
||||
['&About', 6, 'About this program']\
|
||||
]\
|
||||
]).";
|
||||
\end{verbatim}
|
||||
|
||||
then this function can be called as follows:
|
||||
|
||||
\begin{verbatim}
|
||||
wxMenuBar *menuBar = wxResourceCreateMenuBar("menuBar11");
|
||||
\end{verbatim}
|
||||
|
||||
|
||||
\membersection{::wxResourceGetIdentifier}\label{wxresourcegetidentifier}
|
||||
|
||||
\func{int}{wxResourceGetIdentifier}{\param{const wxString\& }{name}}
|
||||
|
||||
Used for retrieving the integer value associated with an identifier.
|
||||
A zero value indicates that the identifier was not found.
|
||||
|
||||
See \helpref{wxResourceAddIdentifier}{wxresourceaddidentifier}.
|
||||
|
||||
\membersection{::wxResourceParseData}\label{wxresourcedata}
|
||||
|
||||
\func{bool}{wxResourceParseData}{\param{const wxString\& }{resource}, \param{wxResourceTable *}{table = NULL}}
|
||||
|
||||
Parses a string containing one or more wxWindows resource objects. If
|
||||
the resource objects are global static data that are included into the
|
||||
C++ program, then this function must be called for each variable
|
||||
containing the resource data, to make it known to wxWindows.
|
||||
|
||||
{\it resource} should contain data in the following form:
|
||||
|
||||
\begin{verbatim}
|
||||
dialog(name = 'dialog1',
|
||||
style = 'wxCAPTION | wxDEFAULT_DIALOG_STYLE',
|
||||
title = 'Test dialog box',
|
||||
x = 312, y = 234, width = 400, height = 300,
|
||||
modal = 0,
|
||||
control = [1000, wxStaticBox, 'Groupbox', '0', 'group6', 5, 4, 380, 262,
|
||||
[11, 'wxSWISS', 'wxNORMAL', 'wxNORMAL', 0]],
|
||||
control = [1001, wxTextCtrl, '', 'wxTE_MULTILINE', 'text3',
|
||||
156, 126, 200, 70, 'wxWindows is a multi-platform, GUI toolkit.',
|
||||
[11, 'wxSWISS', 'wxNORMAL', 'wxNORMAL', 0],
|
||||
[11, 'wxSWISS', 'wxNORMAL', 'wxNORMAL', 0]]).
|
||||
\end{verbatim}
|
||||
|
||||
This function will typically be used after including a {\tt .wxr} file into
|
||||
a C++ program as follows:
|
||||
|
||||
\begin{verbatim}
|
||||
#include "dialog1.wxr"
|
||||
\end{verbatim}
|
||||
|
||||
Each of the contained resources will declare a new C++ variable, and each
|
||||
of these variables should be passed to wxResourceParseData.
|
||||
|
||||
\membersection{::wxResourceParseFile}\label{wxresourceparsefile}
|
||||
|
||||
\func{bool}{wxResourceParseFile}{\param{const wxString\& }{filename}, \param{wxResourceTable *}{table = NULL}}
|
||||
|
||||
Parses a file containing one or more wxWindows resource objects
|
||||
in C++-compatible syntax. Use this function to dynamically load
|
||||
wxWindows resource data.
|
||||
|
||||
\membersection{::wxResourceParseString}\label{wxresourceparsestring}
|
||||
|
||||
\func{bool}{wxResourceParseString}{\param{char *}{s}, \param{wxResourceTable *}{table = NULL}}
|
||||
|
||||
Parses a string containing one or more wxWindows resource objects. If
|
||||
the resource objects are global static data that are included into the
|
||||
C++ program, then this function must be called for each variable
|
||||
containing the resource data, to make it known to wxWindows.
|
||||
|
||||
{\it resource} should contain data with the following form:
|
||||
|
||||
\begin{verbatim}
|
||||
dialog(name = 'dialog1',
|
||||
style = 'wxCAPTION | wxDEFAULT_DIALOG_STYLE',
|
||||
title = 'Test dialog box',
|
||||
x = 312, y = 234, width = 400, height = 300,
|
||||
modal = 0,
|
||||
control = [1000, wxStaticBox, 'Groupbox', '0', 'group6', 5, 4, 380, 262,
|
||||
[11, 'wxSWISS', 'wxNORMAL', 'wxNORMAL', 0]],
|
||||
control = [1001, wxTextCtrl, '', 'wxTE_MULTILINE', 'text3',
|
||||
156, 126, 200, 70, 'wxWindows is a multi-platform, GUI toolkit.',
|
||||
[11, 'wxSWISS', 'wxNORMAL', 'wxNORMAL', 0],
|
||||
[11, 'wxSWISS', 'wxNORMAL', 'wxNORMAL', 0]]).
|
||||
\end{verbatim}
|
||||
|
||||
This function will typically be used after calling \helpref{wxLoadUserResource}{wxloaduserresource} to
|
||||
load an entire {\tt .wxr file} into a string.
|
||||
|
||||
\membersection{::wxResourceRegisterBitmapData}\label{registerbitmapdata}
|
||||
|
||||
\func{bool}{wxResourceRegisterBitmapData}{\param{const wxString\& }{name}, \param{char *}{xbm\_data}, \param{int }{width},
|
||||
\param{int }{height}, \param{wxResourceTable *}{table = NULL}}
|
||||
|
||||
\func{bool}{wxResourceRegisterBitmapData}{\param{const wxString\& }{name}, \param{char **}{xpm\_data}}
|
||||
|
||||
Makes {\tt\#}included XBM or XPM bitmap data known to the wxWindows resource system.
|
||||
This is required if other resources will use the bitmap data, since otherwise there
|
||||
is no connection between names used in resources, and the global bitmap data.
|
||||
|
||||
\membersection{::wxResourceRegisterIconData}\label{wxresourceregistericondata}
|
||||
|
||||
Another name for \helpref{wxResourceRegisterBitmapData}{registerbitmapdata}.
|
||||
|
@@ -1,649 +0,0 @@
|
||||
\documentstyle[a4,11pt,makeidx,verbatim,texhelp,fancyheadings,palatino]{report}
|
||||
% JACS: doesn't make it through Tex2RTF, sorry. I will put it into texhelp.sty
|
||||
% since Tex2RTF doesn't parse it.
|
||||
% BTW, style MUST be report for it to work for Tex2RTF.
|
||||
%KB:
|
||||
%\addtolength{\textwidth}{1in}
|
||||
%\addtolength{\oddsidemargin}{-0.5in}
|
||||
%\addtolength{\topmargin}{-0.5in}
|
||||
%\addtolength{\textheight}{1in}
|
||||
%\sloppy
|
||||
%end of my changes
|
||||
\newcommand{\indexit}[1]{#1\index{#1}}%
|
||||
\newcommand{\pipe}[0]{$\|$\ }%
|
||||
\definecolour{black}{0}{0}{0}%
|
||||
\definecolour{cyan}{0}{255}{255}%
|
||||
\definecolour{green}{0}{255}{0}%
|
||||
\definecolour{magenta}{255}{0}{255}%
|
||||
\definecolour{red}{255}{0}{0}%
|
||||
\definecolour{blue}{0}{0}{200}%
|
||||
\definecolour{yellow}{255}{255}{0}%
|
||||
\definecolour{white}{255}{255}{255}%
|
||||
%
|
||||
\input psbox.tex
|
||||
\input ltx.tex
|
||||
% Remove this for processing with dvi2ps instead of dvips
|
||||
%\special{!/@scaleunit 1 def}
|
||||
\parskip=10pt
|
||||
\parindent=0pt
|
||||
\title{wxWindows Deprecated Classes}
|
||||
\winhelponly{\author{by Julian Smart et al
|
||||
%\winhelponly{\\$$\image{1cm;0cm}{wxwin.wmf}$$}
|
||||
}}
|
||||
\winhelpignore{\author{Julian Smart, Robert Roebling, Vadim Zeitlin,
|
||||
Robin Dunn, et al}
|
||||
\date{April 2003}
|
||||
}
|
||||
\makeindex
|
||||
\begin{document}
|
||||
\maketitle
|
||||
\pagestyle{fancyplain}
|
||||
\bibliographystyle{plain}
|
||||
\setheader{{\it CONTENTS}}{}{}{}{}{{\it CONTENTS}}
|
||||
\setfooter{\thepage}{}{}{}{}{\thepage}%
|
||||
\pagenumbering{roman}
|
||||
\tableofcontents
|
||||
|
||||
\chapter{Copyright notice}
|
||||
\setheader{{\it COPYRIGHT}}{}{}{}{}{{\it COPYRIGHT}}%
|
||||
\setfooter{\thepage}{}{}{}{}{\thepage}%
|
||||
|
||||
\begin{center}
|
||||
Copyright (c) 1992-2002 Julian Smart, Robert Roebling, Vadim Zeitlin and other
|
||||
members of the wxWindows team\\
|
||||
Portions (c) 1996 Artificial Intelligence Applications Institute\\
|
||||
\end{center}
|
||||
|
||||
Please also see the wxWindows license files (preamble.txt, lgpl.txt, gpl.txt, license.txt,
|
||||
licendoc.txt) for conditions of software and documentation use.
|
||||
|
||||
\section*{wxWindows Library License, Version 3}
|
||||
|
||||
Copyright (c) 1992-2002 Julian Smart, Robert Roebling, Vadim Zeitlin et al.
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
\begin{center}
|
||||
WXWINDOWS LIBRARY LICENSE\\
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
\end{center}
|
||||
|
||||
This library is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU Library General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or (at
|
||||
your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public License
|
||||
along with this software, usually in a file named COPYING.LIB. If not,
|
||||
write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
|
||||
Boston, MA~02111-1307 USA.
|
||||
|
||||
EXCEPTION NOTICE
|
||||
|
||||
1. As a special exception, the copyright holders of this library give
|
||||
permission for additional uses of the text contained in this release of
|
||||
the library as licensed under the wxWindows Library License, applying
|
||||
either version 3 of the License, or (at your option) any later version of
|
||||
the License as published by the copyright holders of version 3 of the
|
||||
License document.
|
||||
|
||||
2. The exception is that you may create binary object code versions of any
|
||||
works using this library or based on this library, and use, copy, modify,
|
||||
link and distribute such binary object code files unrestricted under terms
|
||||
of your choice.
|
||||
|
||||
3. If you copy code from files distributed under the terms of the GNU
|
||||
General Public License or the GNU Library General Public License into a
|
||||
copy of this library, as this license permits, the exception does not
|
||||
apply to the code that you add in this way. To avoid misleading anyone as
|
||||
to the status of such modified files, you must delete this exception
|
||||
notice from such code and/or adjust the licensing conditions notice
|
||||
accordingly.
|
||||
|
||||
4. If you write modifications of your own for this library, it is your
|
||||
choice whether to permit this exception to apply to your modifications.
|
||||
If you do not wish that, you must delete the exception notice from such
|
||||
code and/or adjust the licensing conditions notice accordingly.
|
||||
|
||||
\section*{GNU Library General Public License, Version 2}
|
||||
|
||||
Copyright (C) 1991 Free Software Foundation, Inc.
|
||||
675 Mass Ave, Cambridge, MA 02139, USA
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
[This is the first released version of the library GPL. It is
|
||||
numbered 2 because it goes with version 2 of the ordinary GPL.]
|
||||
|
||||
\wxheading{Preamble}
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
Licenses are intended to guarantee your freedom to share and change
|
||||
free software -- to make sure the software is free for all its users.
|
||||
|
||||
This license, the Library General Public License, applies to some
|
||||
specially designated Free Software Foundation software, and to any
|
||||
other libraries whose authors decide to use it. You can use it for
|
||||
your libraries, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if
|
||||
you distribute copies of the library, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of the library, whether gratis
|
||||
or for a fee, you must give the recipients all the rights that we gave
|
||||
you. You must make sure that they, too, receive or can get the source
|
||||
code. If you link a program with the library, you must provide
|
||||
complete object files to the recipients so that they can relink them
|
||||
with the library, after making changes to the library and recompiling
|
||||
it. And you must show them these terms so they know their rights.
|
||||
|
||||
Our method of protecting your rights has two steps: (1) copyright
|
||||
the library, and (2) offer you this license which gives you legal
|
||||
permission to copy, distribute and/or modify the library.
|
||||
|
||||
Also, for each distributor's protection, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
library. If the library is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original
|
||||
version, so that any problems introduced by others will not reflect on
|
||||
the original authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that companies distributing free
|
||||
software will individually obtain patent licenses, thus in effect
|
||||
transforming the program into proprietary software. To prevent this,
|
||||
we have made it clear that any patent must be licensed for everyone's
|
||||
free use or not licensed at all.
|
||||
|
||||
Most GNU software, including some libraries, is covered by the ordinary
|
||||
GNU General Public License, which was designed for utility programs. This
|
||||
license, the GNU Library General Public License, applies to certain
|
||||
designated libraries. This license is quite different from the ordinary
|
||||
one; be sure to read it in full, and don't assume that anything in it is
|
||||
the same as in the ordinary license.
|
||||
|
||||
The reason we have a separate public license for some libraries is that
|
||||
they blur the distinction we usually make between modifying or adding to a
|
||||
program and simply using it. Linking a program with a library, without
|
||||
changing the library, is in some sense simply using the library, and is
|
||||
analogous to running a utility program or application program. However, in
|
||||
a textual and legal sense, the linked executable is a combined work, a
|
||||
derivative of the original library, and the ordinary General Public License
|
||||
treats it as such.
|
||||
|
||||
Because of this blurred distinction, using the ordinary General
|
||||
Public License for libraries did not effectively promote software
|
||||
sharing, because most developers did not use the libraries. We
|
||||
concluded that weaker conditions might promote sharing better.
|
||||
|
||||
However, unrestricted linking of non-free programs would deprive the
|
||||
users of those programs of all benefit from the free status of the
|
||||
libraries themselves. This Library General Public License is intended to
|
||||
permit developers of non-free programs to use free libraries, while
|
||||
preserving your freedom as a user of such programs to change the free
|
||||
libraries that are incorporated in them. (We have not seen how to achieve
|
||||
this as regards changes in header files, but we have achieved it as regards
|
||||
changes in the actual functions of the Library.) The hope is that this
|
||||
will lead to faster development of free libraries.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow. Pay close attention to the difference between a
|
||||
"work based on the library" and a "work that uses the library". The
|
||||
former contains code derived from the library, while the latter only
|
||||
works together with the library.
|
||||
|
||||
Note that it is possible for a library to be covered by the ordinary
|
||||
General Public License rather than by this special one.
|
||||
|
||||
\begin{center}
|
||||
GNU LIBRARY GENERAL PUBLIC LICENSE\\
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
\end{center}
|
||||
|
||||
0. This License Agreement applies to any software library which
|
||||
contains a notice placed by the copyright holder or other authorized
|
||||
party saying it may be distributed under the terms of this Library
|
||||
General Public License (also called "this License"). Each licensee is
|
||||
addressed as "you".
|
||||
|
||||
A "library" means a collection of software functions and/or data
|
||||
prepared so as to be conveniently linked with application programs
|
||||
(which use some of those functions and data) to form executables.
|
||||
|
||||
The "Library", below, refers to any such software library or work
|
||||
which has been distributed under these terms. A "work based on the
|
||||
Library" means either the Library or any derivative work under
|
||||
copyright law: that is to say, a work containing the Library or a
|
||||
portion of it, either verbatim or with modifications and/or translated
|
||||
straightforwardly into another language. (Hereinafter, translation is
|
||||
included without limitation in the term "modification".)
|
||||
|
||||
"Source code" for a work means the preferred form of the work for
|
||||
making modifications to it. For a library, complete source code means
|
||||
all the source code for all modules it contains, plus any associated
|
||||
interface definition files, plus the scripts used to control compilation
|
||||
and installation of the library.
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running a program using the Library is not restricted, and output from
|
||||
such a program is covered only if its contents constitute a work based
|
||||
on the Library (independent of the use of the Library in a tool for
|
||||
writing it). Whether that is true depends on what the Library does
|
||||
and what the program that uses the Library does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Library's
|
||||
complete source code as you receive it, in any medium, provided that
|
||||
you conspicuously and appropriately publish on each copy an
|
||||
appropriate copyright notice and disclaimer of warranty; keep intact
|
||||
all the notices that refer to this License and to the absence of any
|
||||
warranty; and distribute a copy of this License along with the
|
||||
Library.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy,
|
||||
and you may at your option offer warranty protection in exchange for a
|
||||
fee.
|
||||
|
||||
2. You may modify your copy or copies of the Library or any portion
|
||||
of it, thus forming a work based on the Library, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
\begin{indented}{1cm}
|
||||
a) The modified work must itself be a software library.
|
||||
|
||||
b) You must cause the files modified to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
c) You must cause the whole of the work to be licensed at no
|
||||
charge to all third parties under the terms of this License.
|
||||
|
||||
d) If a facility in the modified Library refers to a function or a
|
||||
table of data to be supplied by an application program that uses
|
||||
the facility, other than as an argument passed when the facility
|
||||
is invoked, then you must make a good faith effort to ensure that,
|
||||
in the event an application does not supply such function or
|
||||
table, the facility still operates, and performs whatever part of
|
||||
its purpose remains meaningful.
|
||||
|
||||
(For example, a function in a library to compute square roots has
|
||||
a purpose that is entirely well-defined independent of the
|
||||
application. Therefore, Subsection 2d requires that any
|
||||
application-supplied function or table used by this function must
|
||||
be optional: if the application does not supply it, the square
|
||||
root function must still compute square roots.)
|
||||
\end{indented}
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Library,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Library, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote
|
||||
it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Library.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Library
|
||||
with the Library (or with a work based on the Library) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may opt to apply the terms of the ordinary GNU General Public
|
||||
License instead of this License to a given copy of the Library. To do
|
||||
this, you must alter all the notices that refer to this License, so
|
||||
that they refer to the ordinary GNU General Public License, version 2,
|
||||
instead of to this License. (If a newer version than version 2 of the
|
||||
ordinary GNU General Public License has appeared, then you can specify
|
||||
that version instead if you wish.) Do not make any other change in
|
||||
these notices.
|
||||
|
||||
Once this change is made in a given copy, it is irreversible for
|
||||
that copy, so the ordinary GNU General Public License applies to all
|
||||
subsequent copies and derivative works made from that copy.
|
||||
|
||||
This option is useful when you wish to copy part of the code of
|
||||
the Library into a program that is not a library.
|
||||
|
||||
4. You may copy and distribute the Library (or a portion or
|
||||
derivative of it, under Section 2) in object code or executable form
|
||||
under the terms of Sections 1 and 2 above provided that you accompany
|
||||
it with the complete corresponding machine-readable source code, which
|
||||
must be distributed under the terms of Sections 1 and 2 above on a
|
||||
medium customarily used for software interchange.
|
||||
|
||||
If distribution of object code is made by offering access to copy
|
||||
from a designated place, then offering equivalent access to copy the
|
||||
source code from the same place satisfies the requirement to
|
||||
distribute the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
5. A program that contains no derivative of any portion of the
|
||||
Library, but is designed to work with the Library by being compiled or
|
||||
linked with it, is called a "work that uses the Library". Such a
|
||||
work, in isolation, is not a derivative work of the Library, and
|
||||
therefore falls outside the scope of this License.
|
||||
|
||||
However, linking a "work that uses the Library" with the Library
|
||||
creates an executable that is a derivative of the Library (because it
|
||||
contains portions of the Library), rather than a "work that uses the
|
||||
library". The executable is therefore covered by this License.
|
||||
Section 6 states terms for distribution of such executables.
|
||||
|
||||
When a "work that uses the Library" uses material from a header file
|
||||
that is part of the Library, the object code for the work may be a
|
||||
derivative work of the Library even though the source code is not.
|
||||
Whether this is true is especially significant if the work can be
|
||||
linked without the Library, or if the work is itself a library. The
|
||||
threshold for this to be true is not precisely defined by law.
|
||||
|
||||
If such an object file uses only numerical parameters, data
|
||||
structure layouts and accessors, and small macros and small inline
|
||||
functions (ten lines or less in length), then the use of the object
|
||||
file is unrestricted, regardless of whether it is legally a derivative
|
||||
work. (Executables containing this object code plus portions of the
|
||||
Library will still fall under Section 6.)
|
||||
|
||||
Otherwise, if the work is a derivative of the Library, you may
|
||||
distribute the object code for the work under the terms of Section 6.
|
||||
Any executables containing that work also fall under Section 6,
|
||||
whether or not they are linked directly with the Library itself.
|
||||
|
||||
6. As an exception to the Sections above, you may also compile or
|
||||
link a "work that uses the Library" with the Library to produce a
|
||||
work containing portions of the Library, and distribute that work
|
||||
under terms of your choice, provided that the terms permit
|
||||
modification of the work for the customer's own use and reverse
|
||||
engineering for debugging such modifications.
|
||||
|
||||
You must give prominent notice with each copy of the work that the
|
||||
Library is used in it and that the Library and its use are covered by
|
||||
this License. You must supply a copy of this License. If the work
|
||||
during execution displays copyright notices, you must include the
|
||||
copyright notice for the Library among them, as well as a reference
|
||||
directing the user to the copy of this License. Also, you must do one
|
||||
of these things:
|
||||
|
||||
\begin{indented}{1cm}
|
||||
a) Accompany the work with the complete corresponding
|
||||
machine-readable source code for the Library including whatever
|
||||
changes were used in the work (which must be distributed under
|
||||
Sections 1 and 2 above); and, if the work is an executable linked
|
||||
with the Library, with the complete machine-readable "work that
|
||||
uses the Library", as object code and/or source code, so that the
|
||||
user can modify the Library and then relink to produce a modified
|
||||
executable containing the modified Library. (It is understood
|
||||
that the user who changes the contents of definitions files in the
|
||||
Library will not necessarily be able to recompile the application
|
||||
to use the modified definitions.)
|
||||
|
||||
b) Accompany the work with a written offer, valid for at
|
||||
least three years, to give the same user the materials
|
||||
specified in Subsection 6a, above, for a charge no more
|
||||
than the cost of performing this distribution.
|
||||
|
||||
c) If distribution of the work is made by offering access to copy
|
||||
from a designated place, offer equivalent access to copy the above
|
||||
specified materials from the same place.
|
||||
|
||||
d) Verify that the user has already received a copy of these
|
||||
materials or that you have already sent this user a copy.
|
||||
\end{indented}
|
||||
|
||||
For an executable, the required form of the "work that uses the
|
||||
Library" must include any data and utility programs needed for
|
||||
reproducing the executable from it. However, as a special exception,
|
||||
the source code distributed need not include anything that is normally
|
||||
distributed (in either source or binary form) with the major
|
||||
components (compiler, kernel, and so on) of the operating system on
|
||||
which the executable runs, unless that component itself accompanies
|
||||
the executable.
|
||||
|
||||
It may happen that this requirement contradicts the license
|
||||
restrictions of other proprietary libraries that do not normally
|
||||
accompany the operating system. Such a contradiction means you cannot
|
||||
use both them and the Library together in an executable that you
|
||||
distribute.
|
||||
|
||||
7. You may place library facilities that are a work based on the
|
||||
Library side-by-side in a single library together with other library
|
||||
facilities not covered by this License, and distribute such a combined
|
||||
library, provided that the separate distribution of the work based on
|
||||
the Library and of the other library facilities is otherwise
|
||||
permitted, and provided that you do these two things:
|
||||
|
||||
\begin{indented}{1cm}
|
||||
a) Accompany the combined library with a copy of the same work
|
||||
based on the Library, uncombined with any other library
|
||||
facilities. This must be distributed under the terms of the
|
||||
Sections above.
|
||||
|
||||
b) Give prominent notice with the combined library of the fact
|
||||
that part of it is a work based on the Library, and explaining
|
||||
where to find the accompanying uncombined form of the same work.
|
||||
\end{indented}
|
||||
|
||||
8. You may not copy, modify, sublicense, link with, or distribute
|
||||
the Library except as expressly provided under this License. Any
|
||||
attempt otherwise to copy, modify, sublicense, link with, or
|
||||
distribute the Library is void, and will automatically terminate your
|
||||
rights under this License. However, parties who have received copies,
|
||||
or rights, from you under this License will not have their licenses
|
||||
terminated so long as such parties remain in full compliance.
|
||||
|
||||
9. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Library or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Library (or any work based on the
|
||||
Library), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Library or works based on it.
|
||||
|
||||
10. Each time you redistribute the Library (or any work based on the
|
||||
Library), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute, link with or modify the Library
|
||||
subject to these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
11. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Library at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Library by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Library.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under any
|
||||
particular circumstance, the balance of the section is intended to apply,
|
||||
and the section as a whole is intended to apply in other circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
12. If the distribution and/or use of the Library is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Library under this License may add
|
||||
an explicit geographical distribution limitation excluding those countries,
|
||||
so that distribution is permitted only in or among countries not thus
|
||||
excluded. In such case, this License incorporates the limitation as if
|
||||
written in the body of this License.
|
||||
|
||||
13. The Free Software Foundation may publish revised and/or new
|
||||
versions of the Library General Public License from time to time.
|
||||
Such new versions will be similar in spirit to the present version,
|
||||
but may differ in detail to address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Library
|
||||
specifies a version number of this License which applies to it and
|
||||
"any later version", you have the option of following the terms and
|
||||
conditions either of that version or of any later version published by
|
||||
the Free Software Foundation. If the Library does not specify a
|
||||
license version number, you may choose any version ever published by
|
||||
the Free Software Foundation.
|
||||
|
||||
14. If you wish to incorporate parts of the Library into other free
|
||||
programs whose distribution conditions are incompatible with these,
|
||||
write to the author to ask for permission. For software which is
|
||||
copyrighted by the Free Software Foundation, write to the Free
|
||||
Software Foundation; we sometimes make exceptions for this. Our
|
||||
decision will be guided by the two goals of preserving the free status
|
||||
of all derivatives of our free software and of promoting the sharing
|
||||
and reuse of software generally.
|
||||
|
||||
\begin{center}
|
||||
NO WARRANTY
|
||||
\end{center}
|
||||
|
||||
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
|
||||
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
|
||||
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
|
||||
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
|
||||
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
|
||||
LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
|
||||
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||
|
||||
16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
|
||||
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
|
||||
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
|
||||
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
|
||||
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
|
||||
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
|
||||
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
|
||||
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
|
||||
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
||||
DAMAGES.
|
||||
|
||||
|
||||
\begin{center}
|
||||
END OF TERMS AND CONDITIONS
|
||||
\end{center}
|
||||
|
||||
\wxheading{Appendix: How to Apply These Terms to Your New Libraries}
|
||||
|
||||
If you develop a new library, and you want it to be of the greatest
|
||||
possible use to the public, we recommend making it free software that
|
||||
everyone can redistribute and change. You can do so by permitting
|
||||
redistribution under these terms (or, alternatively, under the terms of the
|
||||
ordinary General Public License).
|
||||
|
||||
To apply these terms, attach the following notices to the library. It is
|
||||
safest to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least the
|
||||
"copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
\footnotesize{
|
||||
\begin{verbatim}
|
||||
<one line to give the library's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 of the License, or (at your option) any later version.
|
||||
|
||||
This library is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with this library; if not, write to the Free
|
||||
Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
\end{verbatim}
|
||||
}
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the library, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
\footnotesize{
|
||||
\begin{verbatim}
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the
|
||||
library `Frob' (a library for tweaking knobs) written by James Random Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1990
|
||||
Ty Coon, President of Vice
|
||||
\end{verbatim}
|
||||
}
|
||||
|
||||
That's all there is to it!
|
||||
|
||||
\chapter{Introduction}\label{introduction}
|
||||
\pagenumbering{arabic}%
|
||||
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
|
||||
\setfooter{\thepage}{}{}{}{}{\thepage}%
|
||||
|
||||
This manual contains documentation for classes that are
|
||||
now obsolete.
|
||||
|
||||
\input classes.tex
|
||||
\input function.tex
|
||||
\input category.tex
|
||||
\input topics.tex
|
||||
\input proplist.tex
|
||||
|
||||
\newpage
|
||||
|
||||
% Note: In RTF, the \printindex must come before the
|
||||
% change of header/footer, since the \printindex inserts
|
||||
% the RTF \sect command which divides one chapter from
|
||||
% the next.
|
||||
\rtfonly{\printindex
|
||||
\addcontentsline{toc}{chapter}{Index}
|
||||
\setheader{{\it INDEX}}{}{}{}{}{{\it INDEX}}%
|
||||
\setfooter{\thepage}{}{}{}{}{\thepage}
|
||||
}
|
||||
% In Latex, it must be this way around (I think)
|
||||
\latexonly{\addcontentsline{toc}{chapter}{Index}
|
||||
\setheader{{\it INDEX}}{}{}{}{}{{\it INDEX}}%
|
||||
\setfooter{\thepage}{}{}{}{}{\thepage}
|
||||
\printindex
|
||||
}
|
||||
|
||||
\end{document}
|
Before Width: | Height: | Size: 29 KiB |
@@ -1,539 +0,0 @@
|
||||
%!PS-Adobe-2.0 EPSF-2.0
|
||||
%%Title: prop1.eps
|
||||
%%Creator: XV Version 2.20 Rev: 4/24/92 - by John Bradley
|
||||
%%BoundingBox: 167 292 445 500
|
||||
%%Pages: 1
|
||||
%%DocumentFonts:
|
||||
%%EndComments
|
||||
%%EndProlog
|
||||
|
||||
%%Page: 1 1
|
||||
|
||||
% remember original state
|
||||
/origstate save def
|
||||
|
||||
% build a temporary dictionary
|
||||
20 dict begin
|
||||
|
||||
% lower left corner
|
||||
167 292 translate
|
||||
|
||||
% size of image (on paper, in 1/72inch coords)
|
||||
278 208 scale
|
||||
|
||||
% define 'colorimage' if it isn't defined
|
||||
% ('colortogray' and 'mergeprocs' come from xwd2ps
|
||||
% via xgrab)
|
||||
/colorimage where % do we know about 'colorimage'?
|
||||
{ pop } % yes: pop off the 'dict' returned
|
||||
{ % no: define one
|
||||
/colortogray { % define an RGB->I function
|
||||
/rgbdata exch store % call input 'rgbdata'
|
||||
rgbdata length 3 idiv
|
||||
/npixls exch store
|
||||
/rgbindx 0 store
|
||||
/grays npixls string store % str to hold the result
|
||||
0 1 npixls 1 sub {
|
||||
grays exch
|
||||
rgbdata rgbindx get 20 mul % Red
|
||||
rgbdata rgbindx 1 add get 32 mul % Green
|
||||
rgbdata rgbindx 2 add get 12 mul % Blue
|
||||
add add 64 idiv % I = .5G + .31R + .18B
|
||||
put
|
||||
/rgbindx rgbindx 3 add store
|
||||
} for
|
||||
grays
|
||||
} bind def
|
||||
|
||||
% Utility procedure for colorimage operator.
|
||||
% This procedure takes two procedures off the
|
||||
% stack and merges them into a single procedure.
|
||||
|
||||
/mergeprocs { % def
|
||||
dup length
|
||||
3 -1 roll
|
||||
dup
|
||||
length
|
||||
dup
|
||||
5 1 roll
|
||||
3 -1 roll
|
||||
add
|
||||
array cvx
|
||||
dup
|
||||
3 -1 roll
|
||||
0 exch
|
||||
putinterval
|
||||
dup
|
||||
4 2 roll
|
||||
putinterval
|
||||
} bind def
|
||||
|
||||
/colorimage { % def
|
||||
pop pop % remove 'false 3' operands
|
||||
{colortogray} mergeprocs
|
||||
image
|
||||
} bind def
|
||||
} ifelse % end of 'false' case
|
||||
|
||||
|
||||
|
||||
% define the colormap
|
||||
/cmap 42 string def
|
||||
|
||||
|
||||
% load up the colormap
|
||||
currentfile cmap readhexstring
|
||||
000000 bf0000 00bf00 bfbf00 0000bf 00bfbf c0c0c0 808080 ff0000 00ff00
|
||||
ffff00 0000ff 00ffff ffffff
|
||||
pop pop % lose return values from readhexstring
|
||||
|
||||
|
||||
% rlecmapimage expects to have 'w h bits matrix' on stack
|
||||
/rlecmapimage {
|
||||
/buffer 1 string def
|
||||
/rgbval 3 string def
|
||||
/block 384 string def
|
||||
|
||||
% proc to read a block from file, and return RGB data
|
||||
{ currentfile buffer readhexstring pop
|
||||
/bcount exch 0 get store
|
||||
bcount 128 ge
|
||||
{ % it's a non-run block
|
||||
0 1 bcount 128 sub
|
||||
{ currentfile buffer readhexstring pop pop
|
||||
|
||||
% look up value in color map
|
||||
/rgbval cmap buffer 0 get 3 mul 3 getinterval store
|
||||
|
||||
% and put it in position i*3 in block
|
||||
block exch 3 mul rgbval putinterval
|
||||
} for
|
||||
block 0 bcount 127 sub 3 mul getinterval
|
||||
}
|
||||
|
||||
{ % else it's a run block
|
||||
currentfile buffer readhexstring pop pop
|
||||
|
||||
% look up value in colormap
|
||||
/rgbval cmap buffer 0 get 3 mul 3 getinterval store
|
||||
|
||||
0 1 bcount { block exch 3 mul rgbval putinterval } for
|
||||
|
||||
block 0 bcount 1 add 3 mul getinterval
|
||||
} ifelse
|
||||
} % end of proc
|
||||
false 3 colorimage
|
||||
} bind def
|
||||
|
||||
|
||||
278 208 8 % dimensions of data
|
||||
[278 0 0 -208 0 208] % mapping matrix
|
||||
rlecmapimage
|
||||
|
||||
7f067f0614060000
|
||||
81060d7f0d7f0d110d810700
|
||||
82060d067f067f061006810700
|
||||
82060d067f067f061006810700
|
||||
82060d068106047f047f040c040106810700
|
||||
82060d068106048204060d820d060783070d0702010203098102047f047a040106810700
|
||||
|
||||
82060d068106048704060b060001020781070283020702098109028102047f0446040e0d
|
||||
81000d0d0d81000481040d0d0d81000481040682060700
|
||||
82060d0681060482040806810600820002078507020902070201028109047f044604810d
|
||||
060b068307000d060b068207000482040d060b068207000481040682060700
|
||||
82060d0681060481040685060800040307820702098409020702098109040104050d2d04
|
||||
030d0204010d1a04050d6604810d060b068307000d06810600070001068207000482040d
|
||||
060b068207000481040682060700
|
||||
82060d068106048704060b0604000a0789070209020702070209040104010d0204010d1d
|
||||
04010d0b04010d0104010d0104010d1204010d0704010d1004010d5504810d060b068307
|
||||
000d06810600070001068207000482040d06010601000306010001068207000481040682
|
||||
060700
|
||||
82060d068106048204070681060001000107010286070209020702040104010d0204010d
|
||||
1d04010d0b04010d0504010d1204010d0704010d1004010d5504810d060b068307000d06
|
||||
820600060506810006830607000482040d06020601000106010002068207000481040682
|
||||
060700
|
||||
82060d0681060485040d0607060d010d8407020002090109820200040104010d0204010d
|
||||
81040d010d0104030d0104040d0204030d0104020d81040d010d81040d820d040d810d04
|
||||
0304010d0504040d0204030d0204030d0104020d0604010d0404030d0204020d0104020d
|
||||
5404810d060b068307000d06820600060506810006830607000482040d06030603000306
|
||||
8207000481040682060700
|
||||
82060d068106048104070507010006020204050d0104010d0104010d0104010d81040d81
|
||||
0d0481040d820d040d810d0481040d820d040d810d0481040d810d0481040d820d040d81
|
||||
0d040404030d0204020d81040d820d040d810d0481040d820d040d810d0481040d820d04
|
||||
0d810d040604010d0304010d0104010d81040d820d040d820d040d810d045404810d060b
|
||||
068307000d06820600060506810006830607000482040d06040601000406820700048104
|
||||
0682060700
|
||||
82060d068106048104050505010006030204010d0504010d0104010d0104010d81040d81
|
||||
0d0481040d820d040d040d81040d810d0481040d810d0481040d820d040d810d04070401
|
||||
0d0104010d0104010d81040d040d81040d040d81040d810d040604010d0304050d010401
|
||||
0d0204010d5504810d060b068307000d06820600060506810006830607000482040d0603
|
||||
06030003068207000481040682060700
|
||||
82060d0681060481040c010c8205080c830c05030a020a81030a810a040104010d050401
|
||||
0d0104010d0104010d81040d810d0481040d820d040d810d040304010d0104010d010401
|
||||
0d81040d810d040704010d0104010d0104010d81040d810d040304010d0404010d070401
|
||||
0d0304010d0604010d0104010d5504810d060b068307000d068206000605068100068306
|
||||
07000482040d06020601000106010002068207000481040682060700
|
||||
82060d068106048c040c05070507050c05030a030a840a03000a040104010d0504010d01
|
||||
04010d0104010d81040d810d0481040d820d040d810d0481040d820d040d810d0481040d
|
||||
810d040104020d0504010d0104010d0104010d0104010d81040d810d0481040d820d040d
|
||||
810d0481040d820d040d810d040604010d0304010d0104010d81040d820d040d820d040d
|
||||
810d045404810d060106050003068307000d06820600060506810006830607000482040d
|
||||
06010601000306010001068207000481040682060700
|
||||
82060d0681060482040c08020886070c05030a030a010a82030a040104010d0504010d02
|
||||
04030d0104040d0204030d0104010d0204010d0104010d0704030d0204010d0104010d01
|
||||
04030d0204030d0204010d0604010d0404030d0204020d0204010d5404810d0601060500
|
||||
03068307000d06810600070001068207000482040d060b068207000481040682060700
|
||||
82060d0681060482040c080208010c8205030a810a0384030a030a041404010d1404010d
|
||||
7f041804810d060b068307000d060b068207000482040d060b0682070004810406820607
|
||||
00
|
||||
82060d0681060482040c080308850c05030a030a010a82000a041404010d1204020d7f04
|
||||
1904810d070c0782000d070c0781000482040d070c0781000481040682060700
|
||||
82060d0681060483040c05080208850c05030a030a810a0382030a047f0446041f000104
|
||||
0f0001040106810700
|
||||
82060d0681060481040c050c8205030a050a7f047b040106810700
|
||||
82060d068106047f047f040c040106810700
|
||||
82060d067f067f061006810700
|
||||
82060d067f067f061006810700
|
||||
82060d0637067f073907810d061c06810700
|
||||
82060d06030616000306160001068107007f00360082060d0681060015000406810700
|
||||
82060d06020681000d140d820700068206000d140d8507000607000d7f0d350d84060d06
|
||||
000d140d820700060206810700
|
||||
82060d06020682000d06120601078100068306000d061206010784000607000d7f0d350d
|
||||
84060d06000d130d01078100060206810700
|
||||
82060d06020682000d06120601078100068306000d061206010784000607000d7f0d350d
|
||||
84060d06000d810d06110601078100060206810700
|
||||
82060d06020682000d06120601078100068306000d061206010784000607000d7f0d350d
|
||||
84060d06000d810d06110601078100060206810700
|
||||
82060d06020682000d0603068100060606810006030601078100068306000d0612060107
|
||||
84000607000d820d000d7f0d320d84060d06000d810d06110601078100060206810700
|
||||
82060d06020682000d06030683000600060306810006040601078100068306000d061206
|
||||
010785000607000d0081000d7f0d320d84060d06000d810d061106010781000602068107
|
||||
00
|
||||
82060d06020682000d06040683000600060106810006050601078100068306000d060b06
|
||||
8100060406010785000607000d000100810d0081000d820d000d810d0081000d810d0002
|
||||
007f0d220d84060d06000d810d06110601078100060206810700
|
||||
82060d06020682000d06050685000600060006060601078100068306000d060a06830006
|
||||
00060306010785000607000d0081000d810d0082000d000100810d0082000d0081000d81
|
||||
0d0081000d7f0d200d84060d06000d810d06110601078100060206810700
|
||||
82060d06020682000d0606068300060006070601078100068306000d0609068300060006
|
||||
0406010785000607000d0081000d810d0082000d000100810d0082000d0081000d810d00
|
||||
81000d7f0d200d84060d06000d810d06110601078100060206810700
|
||||
82060d06020682000d0607068300060006060601078100068306000d0604068100060106
|
||||
83000600060506010785000607000d0081000d010d0200810d000100010d0100010d0100
|
||||
7f0d210d84060d06000d810d06110601078100060206810700
|
||||
82060d06020682000d06060685000600060006050601078100068306000d060306870006
|
||||
0006000600060606010785000607000d0081000d010d0200810d000100010d0100010d01
|
||||
007f0d210d84060d06000d810d06110601078100060206810700
|
||||
82060d06020682000d06050681000601068300060006040601078100068306000d060406
|
||||
850006000600060706010784000607000d810d0081000d810d0081000d010d0100020d03
|
||||
007f0d220d84060d06000d810d0603060100810600820006008100060406010781000602
|
||||
06810700
|
||||
82060d06020682000d06040681000603068300060006030601078100068306000d060506
|
||||
83000600060806010784000607000d7f0d350d84060d06000d810d060306010081060082
|
||||
000600810006040601078100060206810700
|
||||
82060d06020682000d060306010005060100040601078100068306000d06060681000609
|
||||
06010784000607000d7f0d350d84060d06000d810d06110601078100060206810700
|
||||
82060d06020682000d06120601078100068306000d061206010784000607000d7f0d350d
|
||||
84060d06000d810d06110601078100060206810700
|
||||
82060d06020682000d06120601078100068306000d061206010784000607000d7f0d350d
|
||||
84060d06000d810d06110601078100060206810700
|
||||
82060d06020682000d0714078100068306000d07140784000607000d7f0d350d85060d06
|
||||
000d0714078100060206810700
|
||||
82060d06020682000d0714078100068306000d07140784000607000d7f0d350d84060d06
|
||||
000715078100060206810700
|
||||
82060d06030616000306160001068207000d7f0d350d82060d0681060015000406810700
|
||||
|
||||
82060d0637068107067f063706810d061c06810700
|
||||
82060d0637067f0d3a0d1d06810700
|
||||
82060d0601067f077f070a07810d060106810700
|
||||
82060d0601068107007f007f00070082060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d010d0300010d0400020d03007f0d720d82060d060106810700
|
||||
82060d0601068207000d810d0081000d810d0082000d0081000d810d0082000d0081000d
|
||||
810d0081000d7f0d700d82060d060106810700
|
||||
82060d0601068207000d810d0081000d810d0082000d0081000d810d0082000d0004007f
|
||||
0d710d82060d060106810700
|
||||
82060d0601068207000d810d0081000d810d0082000d0081000d810d0082000d0081000d
|
||||
7f0d740d82060d060106810700
|
||||
82060d0601068207000d810d0081000d810d0082000d0081000d810d0082000d0081000d
|
||||
810d0081000d7f0d700d82060d060106810700
|
||||
82060d0601068207000d010d0300010d0100010d0100010d03007f0d720d82060d060106
|
||||
810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d060106ff0700040a040a040a040a040a040a040a040a040a040a040a040a040a04
|
||||
0a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a04
|
||||
0a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a04
|
||||
0a040a040a040a040a040a040a040a040a040a040a040a040a040aff040a040a040a040a
|
||||
040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a
|
||||
040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a
|
||||
040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a
|
||||
040a040a040a040a040a040a8c040a040a040a040a040a060d060106810700
|
||||
82060d0601068307000a047f047f04050482060d060106810700
|
||||
82060d060106820700047f047f040504830a060d060106810700
|
||||
82060d0601068307000a0482040d047f047f04020482060d060106810700
|
||||
82060d0601068207000481040d810d047f047f040104830a060d060106810700
|
||||
82060d0601068307000a0d020d81040d810d0482040d0481040d810d0481040d020d7f04
|
||||
720482060d060106810700
|
||||
82060d0601068207000481040d810d0481040d820d040d010d81040d820d040d810d0481
|
||||
040d810d047f046f04830a060d060106810700
|
||||
82060d0601068407000a040d810d0481040d820d040d010d81040d820d040d810d048104
|
||||
0d810d047f04700482060d060106810700
|
||||
82060d0601068207000481040d810d040104020d81040d010d0104010d0104010d7f0470
|
||||
04830a060d060106810700
|
||||
82060d0601068407000a040d810d040104020d81040d010d0104010d0104010d7f047104
|
||||
82060d060106810700
|
||||
82060d060106820700040104010d0104010d0204010d0204030d7f047104830a060d0601
|
||||
06810700
|
||||
82060d0601068307000a047f047f04050482060d060106810700
|
||||
82060d060106820700047f047f040504830a060d060106810700
|
||||
82060d060106ff07000a040a040a040a040a040a040a040a040a040a040a040a040a040a
|
||||
040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a
|
||||
040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a
|
||||
040a040a040a040a040a040a040a040a040a040a040a040a040a04ff0a040a040a040a04
|
||||
0a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a04
|
||||
0a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a04
|
||||
0a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a040a04
|
||||
0a040a040a040a040a040a048c0a040a040a040a040a04060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d010d81000d810d0081000d7f0d7e0d82060d060106810700
|
||||
82060d0601068207000d810d0081000d810d0081000d7f0d7e0d82060d060106810700
|
||||
82060d0601068307000d000200810d000300010d0300010d0300020d03007f0d690d8206
|
||||
0d060106810700
|
||||
82060d0601068207000d810d0081000d810d0081000d810d0082000d0081000d010d0100
|
||||
010d0100810d0081000d810d0081000d7f0d670d82060d060106810700
|
||||
82060d0601068207000d810d0081000d810d0081000d810d0082000d0081000d010d0500
|
||||
810d0004007f0d680d82060d060106810700
|
||||
82060d0601068207000d810d0081000d810d0081000d810d0082000d0081000d010d0100
|
||||
040d01007f0d6c0d82060d060106810700
|
||||
82060d0601068207000d810d0081000d810d0081000d810d0082000d0081000d010d0100
|
||||
010d0100810d0081000d810d0081000d7f0d670d82060d060106810700
|
||||
82060d0601068207000d010d0100810d0081000d810d0082000d0081000d020d0300020d
|
||||
03007f0d690d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068207000d7f0d7f0d060d82060d060106810700
|
||||
82060d0601068107067f067f060806810d060106810700
|
||||
82060d0601067f0d7f0d0b0d0206810700
|
||||
82060d067f067f061006810700
|
||||
82060d067f067f061006810700
|
||||
82060d0601067f077f070b070206810700
|
||||
82060d0601068107007f007f000800810d060106810700
|
||||
82060d0601068207000d7f0d760d0e060100810d060106810700
|
||||
82060d0601068207000d7f0d760d81060d0b0d81070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d1c0d0100120d01000e0d81000d6b0d0400400d82060d060a0681
|
||||
070082000d060106810700
|
||||
82060d0601068207000d010d81000d190d81000d120d81000d7b0d85000d000d000d3f0d
|
||||
82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d810d000300030d0200010d0100010d0100020d0100810d008400
|
||||
0d000d0081000d090d0300010d82000d0081000d020d0200020d0200040d0300020d0200
|
||||
5f0d81000d020d0100810d0082000d0081000d810d0081000d010d02002c0d82060d0603
|
||||
06810006040681070082000d060106810700
|
||||
82060d0601068207000d010d81000d040d81000d010d81000d820d000d010d81000d820d
|
||||
000d810d0081000d810d0081000d820d000d070d81000d010d81000d810d0081000d820d
|
||||
000d820d000d010d81000d020d81000d020d81000d010d81000d820d000d010d81000d5d
|
||||
0d81000d030d0100030d81000d010d81000d820d000d010d81000d2a0d82060d06020602
|
||||
00040681070082000d060106810700
|
||||
82060d0601068207000d010d81000d040d81000d010d81000d820d000d010d81000d820d
|
||||
000d010d81000d820d000d010d81000d070d81000d040d81000d010d81000d820d000d01
|
||||
0d81000d020d81000d020d81000d040d04005e0d81000d030d81000d030d81000d010d81
|
||||
000d810d0003002b0d82060d0601060400030681070082000d060106810700
|
||||
82060d0601068207000d010d81000d010d81000d820d000d010d81000d820d000d810d00
|
||||
81000d820d000d010d81000d820d000d010d81000d070d81000d040d81000d010d81000d
|
||||
820d000d010d81000d020d81000d020d81000d040d81000d610d81000d030d81000d030d
|
||||
81000d810d0081000d820d000d2e0d82060d068106000500020681070082000d06010681
|
||||
0700
|
||||
82060d0601068207000d020d0200030d0200030d0100810d0081000d810d000200810d00
|
||||
0100810d000100080d0300810d000100810d000100010d0200020d0400020d0300020d03
|
||||
005d0d0200020d0300030d0100810d0081000d810d0002002b0d82060d060a0681070082
|
||||
000d060106810700
|
||||
82060d0601068207000d1a0d81000d7f0d590d82060d060a0681070082000d0601068107
|
||||
00
|
||||
82060d0601068207000d170d02007f0d5b0d82060d060a0681070082000d060106810700
|
||||
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d8106070c070100810d060106810700
|
||||
82060d0601068207000d7f0d760d1000810d060106810700
|
||||
82060d0601068207000d7f0d760d92060d060d060d060d060d060d060d060d000d060106
|
||||
810700
|
||||
82060d0601068207000d7f0d770d91060d060d060d060d060d060d060d06000d06010681
|
||||
0700
|
||||
82060d0601068207000d030d81000d7f0d2d0d81000d020d0300390d92060d060d060d06
|
||||
0d060d060d060d060d000d060106810700
|
||||
82060d0601068207000d7f0d320d0100030d81000d3c0d91060d060d060d060d060d060d
|
||||
060d06000d060106810700
|
||||
82060d0601068207000d010d0200040d0200010d0100810d0081000d7f0d1c0d83000d00
|
||||
0d020d81000d3b0d92060d060d060d060d060d060d060d060d000d060106810700
|
||||
82060d0601068207000d030d81000d020d81000d010d81000d810d0081000d820d000d7f
|
||||
0d1a0d81000d820d000d020d02003b0d91060d060d060d060d060d060d060d06000d0601
|
||||
06810700
|
||||
82060d0601068207000d030d81000d030d0300010d81000d010d81000d7f0d1a0d040005
|
||||
0d81000d380d92060d060d060d060d060d060d060d060d000d060106810700
|
||||
82060d0601068207000d030d81000d020d81000d010d81000d820d000d010d81000d7f0d
|
||||
1d0d81000d010d81000d010d81000d380d0e060100810d060106810700
|
||||
82060d0601068207000d010d0400010d0800810d0001007f0d1c0d0200020d02003a0d81
|
||||
060d0b0d81070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d810d0081000d060d81000d030d0100040d01007f0d170d020003
|
||||
0d0300390d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d010d81000d0d0d81000d040d81000d7f0d150d81000d010d8100
|
||||
0d010d81000d3b0d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d010d82000d0081000d010d0200050d81000d040d81000d7f0d18
|
||||
0d81000d020d81000d3b0d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d010d0100010d81000d020d81000d040d81000d040d81000d7f0d
|
||||
170d81000d030d02003a0d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d010d81000d010d81000d020d81000d040d81000d040d81000d7f
|
||||
0d160d81000d070d81000d380d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d010d81000d010d81000d020d81000d040d81000d040d81000d7f
|
||||
0d150d81000d040d81000d010d81000d380d82060d060a0681070082000d060106810700
|
||||
|
||||
82060d0601068207000d810d000300020d0400010d0400010d04007f0d140d0400020d02
|
||||
003a0d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d030d81000d0a0d0100050d81000d7f0d5b0d82060d060a068107
|
||||
0082000d060106810700
|
||||
82060d0601068207000d110d81000d7f0d620d82060d060a0681070082000d0601068107
|
||||
00
|
||||
82060d0601068207000d010d0300010d0100010d0100030d81000d020d0200040d020001
|
||||
0d0100810d0081000d7f0d070d0200010d0100810d0081000d020d0200330d82060d060a
|
||||
0681070082000d060106810700
|
||||
82060d0601068207000d040d81000d010d81000d010d81000d020d81000d040d81000d02
|
||||
0d81000d010d81000d810d0081000d820d000d7f0d050d81000d010d81000d810d008100
|
||||
0d820d000d820d000d010d81000d310d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d040d81000d010d81000d010d81000d020d81000d040d81000d03
|
||||
0d0300010d81000d010d81000d7f0d050d81000d010d81000d820d000d010d81000d810d
|
||||
000300320d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d040d81000d010d81000d810d0081000d020d81000d040d81000d
|
||||
020d81000d010d81000d820d000d010d81000d7f0d050d81000d010d81000d820d000d01
|
||||
0d81000d820d000d350d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d040d81000d020d0100810d0082000d000300010d0400010d0800
|
||||
810d0001007f0d060d0200010d0200810d000100010d0300320d82060d060a0681070082
|
||||
000d060106810700
|
||||
82060d0601068207000d040d81000d7f0d6f0d82060d060a0681070082000d0601068107
|
||||
00
|
||||
82060d0601068207000d010d02007f0d710d82060d060a0681070082000d060106810700
|
||||
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d7f0d760d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d810d0081000d060d81000d7f0d690d82060d060a068107008200
|
||||
0d060106810700
|
||||
82060d0601068207000d010d81000d0b0d81000d7f0d640d82060d060a0681070082000d
|
||||
060106810700
|
||||
82060d0601068207000d010d82000d0081000d010d0200020d0400010d0200820d000d02
|
||||
0d0200010d0100810d0081000d7f0d050d0100810d0081000d020d0200010d0100810d00
|
||||
81000d020d02002c0d82060d060a0681070082000d060106810700
|
||||
82060d0601068207000d010d0100010d81000d020d81000d020d81000d040d85000d000d
|
||||
000d820d000d010d81000d810d0081000d820d000d7f0d050d0100010d81000d820d000d
|
||||
010d81000d810d0081000d820d000d820d000d010d81000d2a0d82060d060a0681070082
|
||||
000d060106810700
|
||||
82060d0601068207000d010d81000d010d81000d020d81000d020d81000d040d85000d00
|
||||
0d000d010d0300010d81000d010d81000d7f0d050d81000d010d81000d820d000d010d81
|
||||
000d820d000d010d81000d810d0003002b0d82060d060a0681070082000d060106810700
|
||||
|
||||
82060d0601068207000d010d81000d010d81000d020d81000d020d81000d010d81000d86
|
||||
0d000d000d000d820d000d010d81000d820d000d010d81000d7f0d050d81000d010d8100
|
||||
0d820d000d010d81000d820d000d010d81000d820d000d2e0d82060d060a068107008200
|
||||
0d060106810700
|
||||
82060d0601068207000d810d000300020d0400020d0200010d0600810d000400810d0002
|
||||
007f0d060d0200810d000100010d0200010d0200810d000100010d03002b0d8106070c07
|
||||
0100810d060106810700
|
||||
82060d0601068207000d240d81000d7f0d4f0d1000810d060106810700
|
||||
82060d0601068207000d230d02007f0d4f0d0e060100810d060106810700
|
||||
82060d0601068207000d7f0d760d81060d0b0d81070082000d060106810700
|
||||
82060d060106820700047f04760482060d060a0681070082000d060106810700
|
||||
82060d060106820700047f04760482060d060a0681070082000d060106810700
|
||||
82060d060106820700047f04760482060d060a0681070082000d060106810700
|
||||
82060d060106820700047f04760482060d060a0681070082000d060106810700
|
||||
82060d060106820700043404810d041304010d7f04290482060d06810600050002068107
|
||||
0082000d060106810700
|
||||
82060d060106820700041d04810d042b04810d046204810d04430482060d060106040003
|
||||
0681070082000d060106810700
|
||||
82060d060106820700040204030d0204020d0104010d81040d810d040204030d81040d03
|
||||
0d0204010d81040d810d040104020d0204020d0204010d81040d810d040204020d030401
|
||||
0d82040d046104040d0104020d81040d010d0104020d330482060d060206020004068107
|
||||
0082000d060106810700
|
||||
82060d060106820700040104810d040104810d0482040d040104810d0481040d810d0482
|
||||
040d0482040d040404810d040504010d0304810d040104810d040204810d040204010d01
|
||||
04810d0482040d040104810d0482040d0481040d810d046204810d040404810d04010481
|
||||
0d0482040d040104810d04310482060d060306810006040681070082000d060106810700
|
||||
|
||||
82060d060106820700040104810d040404810d040104810d0482040d040104810d040104
|
||||
020d0204810d040504810d040404030d0304810d040204810d040104810d0481040d030d
|
||||
0104810d040104810d046204810d040404850d040d040d0482040d040104810d04310482
|
||||
060d060a0681070082000d060106810700
|
||||
82060d060106820700040104810d040404810d040104810d0482040d040104810d040404
|
||||
810d0482040d040104810d040104810d040304810d040104810d040204810d040204810d
|
||||
040104810d0482040d040404810d040104810d046204810d040104810d0486040d040d04
|
||||
0d0482040d040104810d04310482060d060a0681070082000d060106810700
|
||||
82060d060106820700040204030d0204020d0104020d81040d010d81040d020d0304020d
|
||||
0204030d0204050d81040d030d81040d010d81040d010d0104030d0204040d6304020d03
|
||||
04830d040d040204020d330482060d060a0681070082000d060106810700
|
||||
82060d060106820700047f04760482060d060a0681070082000d060106810700
|
||||
82060d060106820700047f0476048106070c070100810d060106810700
|
||||
82060d060106820700047f0476041000810d060106810700
|
||||
82060d0601068107067f0677061000810d060106810700
|
||||
82060d0601067f0d7f0d0b0d0206810700
|
||||
82060d067f067f061006810700
|
||||
82060d067f067f061006810700
|
||||
82060d067f067f061006810700
|
||||
82060d067f067f061006810700
|
||||
82060d067f067f061006810700
|
||||
82060d067f067f061006810700
|
||||
82060d067f067f061006810700
|
||||
82060d067f067f061006810700
|
||||
82060d067f067f061006810700
|
||||
8106077f077f0712070000
|
||||
7f007f001500
|
||||
|
||||
%
|
||||
% Compression made this file 6.27% of the uncompressed size.
|
||||
%
|
||||
|
||||
|
||||
showpage
|
||||
|
||||
% stop using temporary dictionary
|
||||
end
|
||||
|
||||
% restore original state
|
||||
origstate restore
|
||||
|
||||
%%Trailer
|
Before Width: | Height: | Size: 38 KiB |
Before Width: | Height: | Size: 42 KiB |
@@ -1,664 +0,0 @@
|
||||
%!PS-Adobe-2.0 EPSF-2.0
|
||||
%%Title: prop2.eps
|
||||
%%Creator: XV Version 2.20 Rev: 4/24/92 - by John Bradley
|
||||
%%BoundingBox: 167 221 466 500
|
||||
%%Pages: 1
|
||||
%%DocumentFonts:
|
||||
%%EndComments
|
||||
%%EndProlog
|
||||
|
||||
%%Page: 1 1
|
||||
|
||||
% remember original state
|
||||
/origstate save def
|
||||
|
||||
% build a temporary dictionary
|
||||
20 dict begin
|
||||
|
||||
% lower left corner
|
||||
167 221 translate
|
||||
|
||||
% size of image (on paper, in 1/72inch coords)
|
||||
299 279 scale
|
||||
|
||||
% define 'colorimage' if it isn't defined
|
||||
% ('colortogray' and 'mergeprocs' come from xwd2ps
|
||||
% via xgrab)
|
||||
/colorimage where % do we know about 'colorimage'?
|
||||
{ pop } % yes: pop off the 'dict' returned
|
||||
{ % no: define one
|
||||
/colortogray { % define an RGB->I function
|
||||
/rgbdata exch store % call input 'rgbdata'
|
||||
rgbdata length 3 idiv
|
||||
/npixls exch store
|
||||
/rgbindx 0 store
|
||||
/grays npixls string store % str to hold the result
|
||||
0 1 npixls 1 sub {
|
||||
grays exch
|
||||
rgbdata rgbindx get 20 mul % Red
|
||||
rgbdata rgbindx 1 add get 32 mul % Green
|
||||
rgbdata rgbindx 2 add get 12 mul % Blue
|
||||
add add 64 idiv % I = .5G + .31R + .18B
|
||||
put
|
||||
/rgbindx rgbindx 3 add store
|
||||
} for
|
||||
grays
|
||||
} bind def
|
||||
|
||||
% Utility procedure for colorimage operator.
|
||||
% This procedure takes two procedures off the
|
||||
% stack and merges them into a single procedure.
|
||||
|
||||
/mergeprocs { % def
|
||||
dup length
|
||||
3 -1 roll
|
||||
dup
|
||||
length
|
||||
dup
|
||||
5 1 roll
|
||||
3 -1 roll
|
||||
add
|
||||
array cvx
|
||||
dup
|
||||
3 -1 roll
|
||||
0 exch
|
||||
putinterval
|
||||
dup
|
||||
4 2 roll
|
||||
putinterval
|
||||
} bind def
|
||||
|
||||
/colorimage { % def
|
||||
pop pop % remove 'false 3' operands
|
||||
{colortogray} mergeprocs
|
||||
image
|
||||
} bind def
|
||||
} ifelse % end of 'false' case
|
||||
|
||||
|
||||
|
||||
% define the colormap
|
||||
/cmap 42 string def
|
||||
|
||||
|
||||
% load up the colormap
|
||||
currentfile cmap readhexstring
|
||||
000000 bf0000 00bf00 bfbf00 0000bf 00bfbf c0c0c0 808080 ff0000 00ff00
|
||||
ffff00 0000ff 00ffff ffffff
|
||||
pop pop % lose return values from readhexstring
|
||||
|
||||
|
||||
% rlecmapimage expects to have 'w h bits matrix' on stack
|
||||
/rlecmapimage {
|
||||
/buffer 1 string def
|
||||
/rgbval 3 string def
|
||||
/block 384 string def
|
||||
|
||||
% proc to read a block from file, and return RGB data
|
||||
{ currentfile buffer readhexstring pop
|
||||
/bcount exch 0 get store
|
||||
bcount 128 ge
|
||||
{ % it's a non-run block
|
||||
0 1 bcount 128 sub
|
||||
{ currentfile buffer readhexstring pop pop
|
||||
|
||||
% look up value in color map
|
||||
/rgbval cmap buffer 0 get 3 mul 3 getinterval store
|
||||
|
||||
% and put it in position i*3 in block
|
||||
block exch 3 mul rgbval putinterval
|
||||
} for
|
||||
block 0 bcount 127 sub 3 mul getinterval
|
||||
}
|
||||
|
||||
{ % else it's a run block
|
||||
currentfile buffer readhexstring pop pop
|
||||
|
||||
% look up value in colormap
|
||||
/rgbval cmap buffer 0 get 3 mul 3 getinterval store
|
||||
|
||||
0 1 bcount { block exch 3 mul rgbval putinterval } for
|
||||
|
||||
block 0 bcount 1 add 3 mul getinterval
|
||||
} ifelse
|
||||
} % end of proc
|
||||
false 3 colorimage
|
||||
} bind def
|
||||
|
||||
|
||||
299 279 8 % dimensions of data
|
||||
[299 0 0 -279 0 279] % mapping matrix
|
||||
rlecmapimage
|
||||
|
||||
7f0003007f072607
|
||||
07077f067f0618068100070707
|
||||
070781060d7f0d7f0d150d820700070707
|
||||
070782060d067f067f061406820700070707
|
||||
070782060d067f067f061406820700070707
|
||||
070782060d068106077f077f0710070106820700070707
|
||||
070782060d068106078207060d820d060783070d0702010203098102077f077e07010682
|
||||
0700070707
|
||||
070782060d068106078707060b060001020781070283020702098109028102077f074a07
|
||||
0e0d81000d0d0d81000781070d0d0d81000781070683060700070707
|
||||
070782060d0681060782070806810600820002078507020902070201028109077f074a07
|
||||
810d060b068307000d060b068207000782070d060b068207000781070683060700070707
|
||||
|
||||
070782060d06810607810706850608000403078207020984090207020981090701070506
|
||||
2d070306020701061a0705066a07810d060b068307000d06810600070001068207000782
|
||||
070d060b068207000781070683060700070707
|
||||
070782060d068106078707060b0604000a07890702090207020702090701070106020701
|
||||
061d0701060b07010601070106010701061207010607070106100701065907810d060b06
|
||||
8307000d06810600070001068207000782070d0601060100030601000106820700078107
|
||||
0683060700070707
|
||||
070782060d0681060701070106020001070102860702090207020701070106020701061d
|
||||
0701060b070106050701061207010607070106100701065907810d060b068307000d0682
|
||||
0600060506810006830607000782070d0602060100010601000206820700078107068306
|
||||
0700070707
|
||||
070782060d0681060785070d0607060d010d840702000209010982020007010701060207
|
||||
010681070601060107030601070406020703060107020681070601068107068206070681
|
||||
060703070106050704060207030602070306010702060607010604070306020702060107
|
||||
02065807810d060b068307000d06820600060506810006830607000782070d0603060300
|
||||
03068207000781070683060700070707
|
||||
070782060d06810607070701000602020705060107010601070106010701068107068106
|
||||
078107068206070681060781070682060706810607810706810607810706820607068106
|
||||
070407030602070206810706820607068106078107068206070681060781070682060706
|
||||
81060706070106030701060107010681070682060706820607068106075807810d060b06
|
||||
8307000d06820600060506810006830607000782070d0604060100040682070007810706
|
||||
83060700070707
|
||||
070782060d06810607810705050501000603020701060507010601070106010701068107
|
||||
068106078107068206070604068107068106078107068106078107068206070681060707
|
||||
070106010701060107010681070604068107060406810706810607060701060307050601
|
||||
070106020701065907810d060b068307000d06820600060506810006830607000782070d
|
||||
060306030003068207000781070683060700070707
|
||||
070782060d0681060781070c010c8205080c830c05030a020a81030a810a070107010605
|
||||
070106010701060107010681070681060781070682060706810607030701060107010601
|
||||
070106810706810607070701060107010601070106810706810607030701060407010607
|
||||
0701060307010606070106010701065907810d060b068307000d06820600060506810006
|
||||
830607000782070d06020601000106010002068207000781070683060700070707
|
||||
070782060d068106078c070c05070507050c05030a030a840a03000a0701070106050701
|
||||
060107010601070106810706810607810706820607068106078107068206070681060781
|
||||
070681060701070206050701060107010601070106010701068107068106078107068206
|
||||
070681060781070682060706810607060701060307010601070106810706820607068206
|
||||
07068106075807810d060106050003068307000d06820600060506810006830607000782
|
||||
070d06010601000306010001068207000781070683060700070707
|
||||
070782060d0681060782070c08020886070c05030a030a010a82030a0701070106050701
|
||||
060207030601070406020703060107010602070106010701060707030602070106010701
|
||||
06010703060207030602070106060701060407030602070206020701065807810d060106
|
||||
050003068307000d06810600070001068207000782070d060b0682070007810706830607
|
||||
00070707
|
||||
070782060d0681060782070c080208010c8205030a810a0384030a030a07140701061407
|
||||
01067f071c07810d060b068307000d060b068207000782070d060b068207000781070683
|
||||
060700070707
|
||||
070782060d0681060782070c080308850c05030a030a010a82000a071407010612070206
|
||||
7f071d07810d070c0782000d070c0781000782070d070c07810007810706830607000707
|
||||
07
|
||||
070782060d0681060783070c05080208850c05030a030a810a0382030a077f074a071f00
|
||||
01070f0001070106820700070707
|
||||
070782060d0681060781070c050c8205030a050a7f077f070106820700070707
|
||||
070782060d068106077f077f0710070106820700070707
|
||||
070782060d067f067f061406820700070707
|
||||
070782060d067f067f061406820700070707
|
||||
070782060d0637067f073d07810d061c06820700070707
|
||||
070782060d06030616000306160001068107007f003a0082060d06810600150004068207
|
||||
00070707
|
||||
070782060d06020681000d140d820700068206000d140d8507000607000d7f0d390d8406
|
||||
0d06000d140d820700060206820700070707
|
||||
070782060d06020682000d06120601078100068306000d061206010784000607000d7f0d
|
||||
390d84060d06000d130d01078100060206820700070707
|
||||
070782060d06020682000d06120601078100068306000d061206010784000607000d7f0d
|
||||
390d84060d06000d810d06110601078100060206820700070707
|
||||
070782060d06020682000d06120601078100068306000d061206010784000607000d7f0d
|
||||
390d84060d06000d810d06110601078100060206820700070707
|
||||
070782060d06020682000d0603068100060606810006030601078100068306000d061206
|
||||
010784000607000d010d0100020d0200020d0200020d02007f0d230d84060d06000d810d
|
||||
06110601078100060206820700070707
|
||||
070782060d06020682000d060306020003060200040601078100068306000d060b068100
|
||||
060406010784000607000d810d000100010d0100810d0082000d0082000d0082000d0082
|
||||
000d0081000d7f0d210d84060d06000d810d06110601078100060206820700070707
|
||||
070782060d06020682000d060406020001060200050601078100068306000d060a060200
|
||||
0406010785000607000d000200010d0100810d0082000d0082000d0082000d0082000d00
|
||||
81000d7f0d210d84060d06000d810d06110601078100060206820700070707
|
||||
070782060d06020682000d0605060500060601078100068306000d060906030004060107
|
||||
87000607000d000d0081000d810d0082000d0082000d0082000d0082000d0082000d0081
|
||||
000d7f0d210d84060d06000d810d06110601078100060206820700070707
|
||||
070782060d06020682000d0606060300070601078100068306000d060806030005060107
|
||||
84000607000d010d0100010d0100810d0082000d0082000d0082000d0082000d0081000d
|
||||
7f0d210d84060d06000d810d06110601078100060206820700070707
|
||||
070782060d06020682000d0606060300070601078100068306000d060306010001060300
|
||||
0606010784000607000d010d0100010d0100810d0082000d0082000d0082000d0082000d
|
||||
0081000d7f0d210d84060d06000d810d06110601078100060206820700070707
|
||||
070782060d06020682000d0605060500060601078100068306000d060306060007060107
|
||||
84000607000d010d0100010d0100810d0082000d0082000d0082000d0082000d0081000d
|
||||
7f0d210d84060d06000d810d06110601078100060206820700070707
|
||||
070782060d06020682000d060406020001060200050601078100068306000d0604060400
|
||||
0806010784000607000d010d0100020d0200020d0200020d02007f0d230d84060d06000d
|
||||
810d060306010781060782070607810706040601078100060206820700070707
|
||||
070782060d06020682000d060306020003060200040601078100068306000d0605060200
|
||||
0906010784000607000d7f0d390d84060d06000d810d0603060107810607820706078107
|
||||
06040601078100060206820700070707
|
||||
070782060d06020682000d060306010005060100040601078100068306000d0606068100
|
||||
060906010784000607000d7f0d390d84060d06000d810d06110601078100060206820700
|
||||
070707
|
||||
070782060d06020682000d06120601078100068306000d061206010784000607000d7f0d
|
||||
390d84060d06000d810d06110601078100060206820700070707
|
||||
070782060d06020682000d06120601078100068306000d061206010784000607000d7f0d
|
||||
390d84060d06000d810d06110601078100060206820700070707
|
||||
070782060d06020682000d0714078100068306000d07140784000607000d7f0d390d8506
|
||||
0d06000d0714078100060206820700070707
|
||||
070782060d06020682000d0714078100068306000d07140784000607000d7f0d390d8406
|
||||
0d06000715078100060206820700070707
|
||||
070782060d06030616000306160001068207000d7f0d390d82060d068106001500040682
|
||||
0700070707
|
||||
070782060d0637068107067f063b06810d061c06820700070707
|
||||
070782060d0637067f0d3e0d1d06820700070707
|
||||
070782060d0601067f077f070e07810d060106820700070707
|
||||
070782060d0601068107007f007f000b0082060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d040d0100120d01007f0d150d0200550d82060d0601068207
|
||||
00070707
|
||||
070782060d0601068207000d030d81000d140d81000d7f0d130d81000d010d81000d530d
|
||||
82060d060106820700070707
|
||||
070782060d0601068207000d020d0300010d0100810d0081000d010d0200030d0100820d
|
||||
000d7f0d130d81000d010d81000d530d82060d060106820700070707
|
||||
070782060d0601068207000d030d81000d030d0100030d81000d010d81000d820d000d81
|
||||
0d0081000d7f0d130d81000d010d81000d530d82060d060106820700070707
|
||||
070782060d0601068207000d030d81000d030d81000d030d0400010d81000d010d81000d
|
||||
7f0d130d81000d010d81000d530d82060d060106820700070707
|
||||
070782060d0601068207000d030d81000d030d81000d030d81000d040d81000d010d8100
|
||||
0d7f0d130d81000d010d81000d530d82060d060106820700070707
|
||||
070782060d0601068207000d020d0300010d0300030d0300020d04007f0d140d0200550d
|
||||
82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d1c0d0100120d01000e0d81000d6b0d0400090d0100480d82
|
||||
060d060106820700070707
|
||||
070782060d0601068207000d010d81000d190d81000d120d81000d7c0d81000d820d000d
|
||||
090d81000d470d82060d060106820700070707
|
||||
070782060d0601068207000d810d000300030d0200010d0100010d0100020d0100810d00
|
||||
84000d000d0081000d090d0300010d82000d0081000d020d0200020d0200040d0300020d
|
||||
02005e0d83000d000d020d0200040d81000d030d0300020d0200390d82060d0601068207
|
||||
00070707
|
||||
070782060d0601068207000d010d81000d040d81000d010d81000d820d000d010d81000d
|
||||
820d000d810d0081000d810d0081000d820d000d070d81000d010d81000d810d0081000d
|
||||
820d000d820d000d010d81000d020d81000d020d81000d010d81000d820d000d010d8100
|
||||
0d5c0d0200020d81000d010d81000d020d81000d020d81000d040d81000d010d81000d37
|
||||
0d82060d060106820700070707
|
||||
070782060d0601068207000d010d81000d040d81000d010d81000d820d000d010d81000d
|
||||
820d000d010d81000d820d000d010d81000d070d81000d040d81000d010d81000d820d00
|
||||
0d010d81000d020d81000d020d81000d040d04005d0d83000d000d020d0300030d81000d
|
||||
030d0200020d0400380d82060d060106820700070707
|
||||
070782060d0601068207000d010d81000d010d81000d820d000d010d81000d820d000d81
|
||||
0d0081000d820d000d010d81000d820d000d010d81000d070d81000d040d81000d010d81
|
||||
000d820d000d010d81000d020d81000d020d81000d040d81000d600d81000d030d81000d
|
||||
010d81000d020d81000d060d81000d820d000d3b0d82060d060106820700070707
|
||||
070782060d0601068207000d020d0200030d0200030d0100810d0081000d810d00020081
|
||||
0d000100810d000100080d0300810d000100810d000100010d0200020d0400020d030002
|
||||
0d03005c0d0200030d0500810d000300010d0300030d0300380d82060d06010682070007
|
||||
0707
|
||||
070782060d0601068207000d1a0d81000d7f0d6d0d82060d060106820700070707
|
||||
070782060d0601068207000d170d02007f0d6f0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d060106820700047f047f040a0482060d060106820700070707
|
||||
070782060d060106820700047f047f040a0482060d060106820700070707
|
||||
070782060d060106820700047f047f040a0482060d060106820700070707
|
||||
070782060d060106820700047f047f040a0482060d060106820700070707
|
||||
070782060d060106820700040304810d047f043204010d4f0482060d0601068207000707
|
||||
07
|
||||
070782060d060106820700047f043904810d044e0482060d060106820700070707
|
||||
070782060d060106820700040104020d0404020d0104010d81040d810d047f042404810d
|
||||
044e0482060d060106820700070707
|
||||
070782060d060106820700040304810d040204810d040104810d0481040d810d0482040d
|
||||
047f041a04040d0304810d044e0482060d060106820700070707
|
||||
070782060d060106820700040304810d040304030d0104810d040104810d047f04230481
|
||||
0d044e0482060d060106820700070707
|
||||
070782060d060106820700040304810d040204810d040104810d0482040d040104810d04
|
||||
7f042304810d044e0482060d060106820700070707
|
||||
070782060d060106820700040104040d0104080d81040d010d7f042104040d4d0482060d
|
||||
060106820700070707
|
||||
070782060d060106820700047f047f040a0482060d060106820700070707
|
||||
070782060d060106820700047f047f040a0482060d060106820700070707
|
||||
070782060d060106820700047f047f040a0482060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d810d0081000d060d81000d030d0100040d01007f0d170d02
|
||||
00030d03004d0d82060d060106820700070707
|
||||
070782060d0601068207000d010d81000d0d0d81000d040d81000d7f0d150d81000d010d
|
||||
81000d010d81000d4f0d82060d060106820700070707
|
||||
070782060d0601068207000d010d82000d0081000d010d0200050d81000d040d81000d7f
|
||||
0d180d81000d020d81000d4f0d82060d060106820700070707
|
||||
070782060d0601068207000d010d0100010d81000d020d81000d040d81000d040d81000d
|
||||
7f0d170d81000d030d02004e0d82060d060106820700070707
|
||||
070782060d0601068207000d010d81000d010d81000d020d81000d040d81000d040d8100
|
||||
0d7f0d160d81000d070d81000d4c0d82060d060106820700070707
|
||||
070782060d0601068207000d010d81000d010d81000d020d81000d040d81000d040d8100
|
||||
0d7f0d150d81000d040d81000d010d81000d4c0d82060d060106820700070707
|
||||
070782060d0601068207000d810d000300020d0400010d0400010d04007f0d140d040002
|
||||
0d02004e0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d030d81000d0a0d0100050d81000d7f0d6f0d82060d060106
|
||||
820700070707
|
||||
070782060d0601068207000d110d81000d7f0d760d82060d060106820700070707
|
||||
070782060d0601068207000d010d0300010d0100010d0100030d81000d020d0200040d02
|
||||
00010d0100810d0081000d7f0d070d0200010d0100810d0081000d020d0200470d82060d
|
||||
060106820700070707
|
||||
070782060d0601068207000d040d81000d010d81000d010d81000d020d81000d040d8100
|
||||
0d020d81000d010d81000d810d0081000d820d000d7f0d050d81000d010d81000d810d00
|
||||
81000d820d000d820d000d010d81000d450d82060d060106820700070707
|
||||
070782060d0601068207000d040d81000d010d81000d010d81000d020d81000d040d8100
|
||||
0d030d0300010d81000d010d81000d7f0d050d81000d010d81000d820d000d010d81000d
|
||||
810d000300460d82060d060106820700070707
|
||||
070782060d0601068207000d040d81000d010d81000d810d0081000d020d81000d040d81
|
||||
000d020d81000d010d81000d820d000d010d81000d7f0d050d81000d010d81000d820d00
|
||||
0d010d81000d820d000d490d82060d060106820700070707
|
||||
070782060d0601068207000d040d81000d020d0100810d0082000d000300010d0400010d
|
||||
0800810d0001007f0d060d0200010d0200810d000100010d0300460d82060d0601068207
|
||||
00070707
|
||||
070782060d0601068207000d040d81000d7f0d7f0d030d82060d060106820700070707
|
||||
070782060d0601068207000d010d02007f0d7f0d050d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d810d0081000d060d81000d7f0d7d0d82060d060106820700
|
||||
070707
|
||||
070782060d0601068207000d010d81000d0b0d81000d7f0d780d82060d06010682070007
|
||||
0707
|
||||
070782060d0601068207000d010d82000d0081000d010d0200020d0400010d0200820d00
|
||||
0d020d0200010d0100810d0081000d7f0d050d0100810d0081000d020d0200010d010081
|
||||
0d0081000d020d0200400d82060d060106820700070707
|
||||
070782060d0601068207000d010d0100010d81000d020d81000d020d81000d040d85000d
|
||||
000d000d820d000d010d81000d810d0081000d820d000d7f0d050d0100010d81000d820d
|
||||
000d010d81000d810d0081000d820d000d820d000d010d81000d3e0d82060d0601068207
|
||||
00070707
|
||||
070782060d0601068207000d010d81000d010d81000d020d81000d020d81000d040d8500
|
||||
0d000d000d010d0300010d81000d010d81000d7f0d050d81000d010d81000d820d000d01
|
||||
0d81000d820d000d010d81000d810d0003003f0d82060d060106820700070707
|
||||
070782060d0601068207000d010d81000d010d81000d020d81000d020d81000d010d8100
|
||||
0d860d000d000d000d820d000d010d81000d820d000d010d81000d7f0d050d81000d010d
|
||||
81000d820d000d010d81000d820d000d010d81000d820d000d420d82060d060106820700
|
||||
070707
|
||||
070782060d0601068207000d810d000300020d0400020d0200010d0600810d000400810d
|
||||
0002007f0d060d0200810d000100010d0200010d0200810d000100010d03003f0d82060d
|
||||
060106820700070707
|
||||
070782060d0601068207000d240d81000d7f0d630d82060d060106820700070707
|
||||
070782060d0601068207000d230d02007f0d630d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d340d81000d130d01007f0d3d0d82060d0601068207000707
|
||||
07
|
||||
070782060d0601068207000d1d0d81000d2b0d81000d620d81000d570d82060d06010682
|
||||
0700070707
|
||||
070782060d0601068207000d020d0300020d0200010d0100810d0081000d020d0300810d
|
||||
000300020d0100810d0081000d010d0200020d0200020d0100810d0081000d020d020003
|
||||
0d0100820d000d610d0400010d0200810d000100010d0200470d82060d06010682070007
|
||||
0707
|
||||
070782060d0601068207000d010d81000d010d81000d820d000d010d81000d810d008100
|
||||
0d820d000d820d000d040d81000d050d0100030d81000d010d81000d020d81000d020d01
|
||||
00010d81000d820d000d010d81000d820d000d810d0081000d620d81000d040d81000d01
|
||||
0d81000d820d000d010d81000d450d82060d060106820700070707
|
||||
070782060d0601068207000d010d81000d040d81000d010d81000d820d000d010d81000d
|
||||
010d0200020d81000d050d81000d040d0300030d81000d020d81000d010d81000d810d00
|
||||
0300010d81000d010d81000d620d81000d040d85000d000d000d820d000d010d81000d45
|
||||
0d82060d060106820700070707
|
||||
070782060d0601068207000d010d81000d040d81000d010d81000d820d000d010d81000d
|
||||
040d81000d820d000d010d81000d010d81000d030d81000d010d81000d020d81000d020d
|
||||
81000d010d81000d820d000d040d81000d010d81000d620d81000d010d81000d860d000d
|
||||
000d000d820d000d010d81000d450d82060d060106820700070707
|
||||
070782060d0601068207000d020d0300020d0200010d0200810d000100810d000200030d
|
||||
0200020d0300020d0500810d000300810d000100810d000100010d0300020d0400630d02
|
||||
00030d83000d000d020d0200470d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
070782060d0601068207000d7f0d7f0d0a0d82060d060106820700070707
|
||||
7f077f0726078100070107
|
||||
03077f0d7f0d210d820700070107
|
||||
0307820d06077f077f071c07840d060700070107
|
||||
0307830d0607047f047f041c0483060700070107
|
||||
0307830d0607047f047f041c0483060700070107
|
||||
0307830d0607047f047f040a040e0d8100048404060700070107
|
||||
0307830d0607047f047f040a04810d060b06820700048404060700070107
|
||||
0307830d06070481040d040d3a04010d7f044604810d060b068207000484040607000701
|
||||
07
|
||||
0307830d06070481040d810d040104010d1d04010d1904010d7f044604810d0601060107
|
||||
030601070106820700048404060700070107
|
||||
0307830d06070481040d810d040104010d1d04010d1904010d7f044604810d0602060107
|
||||
01060107010d83060700048404060700070107
|
||||
0307830d06070481040d810d040104010d81040d010d0104030d0104040d0204030d0104
|
||||
020d81040d010d81040d820d040d810d040304010d0104010d0104030d0104010d81040d
|
||||
810d0481040d810d0481040d020d0604030d0104020d81040d010d0104030d0104020d7f
|
||||
041a04810d0603060307010d0106820700048404060700070107
|
||||
0307830d06070481040d040d0104010d0104010d0104010d81040d810d0481040d820d04
|
||||
0d810d0481040d820d040d810d0481040d810d0481040d820d040d810d040304010d0104
|
||||
010d0404010d81040d820d040d810d0481040d820d040d810d0481040d810d040304010d
|
||||
0104010d81040d810d0481040d810d0481040d810d0481040d820d040d810d047f041a04
|
||||
810d0604060107010d0206820700048404060700070107
|
||||
0307830d06070481040d810d040404010d0104010d0104010d81040d810d0481040d820d
|
||||
040d040d81040d810d0481040d810d0481040d820d040d810d040404030d0204040d8104
|
||||
0d820d040d810d0481040d820d040d040d0404050d81040d810d0481040d810d0481040d
|
||||
810d0481040d820d040d810d047f041a04810d0603060307030682070004840406070007
|
||||
0107
|
||||
0307830d06070481040d810d040404010d0104010d0104010d81040d810d0481040d820d
|
||||
040d810d040304010d0104010d0104010d81040d810d040404030d0104010d0104010d81
|
||||
040d820d040d810d0481040d820d040d810d040704010d0404010d0104010d0104010d01
|
||||
04010d81040d810d047f041a04810d0602060107010d0107020682070004840406070007
|
||||
0107
|
||||
0307830d06070481040d810d040404010d0104010d0104010d81040d810d0481040d820d
|
||||
040d810d0481040d820d040d810d0481040d810d040104020d0704010d0204010d010401
|
||||
0d81040d820d040d820d040d010d81040d810d0481040d810d040304010d0104010d8104
|
||||
0d810d0481040d810d0481040d810d0481040d820d040d810d047f041a04810d06010601
|
||||
07010d010601070106820700048404060700070107
|
||||
0307830d06070481040d810d040404010d0204030d0104040d0204030d0104010d020401
|
||||
0d0104010d0804010d0304040d81040d810d0481040d030d0104030d0604030d0104010d
|
||||
0104010d0204030d0104010d7f041b04810d060206010d0306010d830607000484040607
|
||||
00070107
|
||||
0307830d0607041304010d1404010d7f045d04810d060b06820700048404060700070107
|
||||
|
||||
0307830d0607041304010d1204020d7f045e04810d070c078100048404060700070107
|
||||
0307830d0607047f047f040a040f00010483060700070107
|
||||
0307830d0607047f047f041c0483060700070107
|
||||
0307830d0607047f047f041c0483060700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d06170602037f067f060406820700070107
|
||||
0307810d06160681030a830a0600067f067f060206820700070107
|
||||
0307810d06150681030a020a83060007067f067f0683060700070107
|
||||
0307810d06150681030a030a8100078107067f067f06820700070107
|
||||
0307810d06140681030a040a820600078107067f067e06820700070107
|
||||
0307810d06140681030a050a8100078107067f067e06820700070107
|
||||
0307810d06130681030a060a820600078107067f067d06820700070107
|
||||
0307810d06130681030a070a8100078107067f067d06820700070107
|
||||
0307810d06120681030a080a820600078107067f067c06820700070107
|
||||
0307810d06120681030a010a810600010081060a010a8100078107067f067c0682070007
|
||||
0107
|
||||
0307810d06110681030a020a0400020a820600078107067f067b06820700070107
|
||||
0307810d06110681030a020a0400030a8100078107061606810006030681000605068100
|
||||
0627068100061b0681000620068100062c06040001060200140681000602060400010602
|
||||
0001068100060a06820700070107
|
||||
0307810d06100681030a030a0400030a8206000781070615068100060306810006050681
|
||||
000621068100060306810006230681000618068100060906810006200681000603068100
|
||||
060106810006120681000602068100060306810006010683000600060a06820700070107
|
||||
|
||||
0307810d06100681030a030a0400040a8100078107061606810006010681000606068100
|
||||
062106810006030681000623068100061806810006090681000620068100060306810006
|
||||
0106810006120681000602068100060306810006010683000600060a06820700070107
|
||||
0307810d060f0681030a040a0400040a8206000781070615068100060106810006010602
|
||||
000106830006000601068100068106000100040602008106008100068206000601068100
|
||||
068106008100068106008100060206030002060200050602000106820006008100060306
|
||||
840006000600810006810600810006810600010002060300010602000106010003060300
|
||||
020602000106010082060006820600068206000681060001000206020001068200060081
|
||||
000606060300010681000601068100060306020001068200060081000601060300030603
|
||||
000106810006010683000600060a06820700070107
|
||||
0307810d060f0681030a040a810300010081030a040a8100078107061506810006010681
|
||||
000604068500060006000601068300060006010681000602068100068206000684060006
|
||||
000601068300060006840600060006030681000601068300060006010681000606068200
|
||||
060081000682060006020682000600810006840600060006820600060106830006000601
|
||||
068300060006010683000600060306810006010683000600060106830006000682060006
|
||||
820600068406000600060106830006000601068200060081000682060006050681000601
|
||||
068300060006010681000606068200060081000684060006000601068100060206810006
|
||||
01068300060006010683000600060a06820700070107
|
||||
0307810d060e0681030a050a810600010081060a040a8206000781070615068300060006
|
||||
020603008406000600060106820006000300030681000682060006840600060006010681
|
||||
000682060006010681000603068100060106820006000300040603008206000601068100
|
||||
060206830006000601068300060006810600030082060006010682000600030082060006
|
||||
030681000601068200060003008206000689060006000600060006000300810600030082
|
||||
060006010681000602060100040683000600060106810006030603008206000601068300
|
||||
060006010681000606068300060006010683000600060a06820700070107
|
||||
0307810d060e0681030a060a0200070a8100078107061506830006000601068100060106
|
||||
850006000600060106830006000606068100068206000684060006000601068100060106
|
||||
810006820600060306810006010683000600060606810006010683000600060106810006
|
||||
020683000600060106830006000682060006030681000601068300060006030681000603
|
||||
068100060106830006000603068100068a06000600060006000600060306810006030681
|
||||
000601068100060906830006000601068100060206810006010683000600060106830006
|
||||
0006010681000606068300060006010683000600060a06820700070107
|
||||
0307810d060d0681030a070a830300030a060a8206000781070615068100060206810006
|
||||
010685000600060006810600830006000601068100060206810006820600068406000600
|
||||
068106008300060006840600060006030681000601068300060006010681000602068100
|
||||
060106830006000601068100060206830006000601068300060006820600060106830006
|
||||
000601068300060006010683000600060306810006010683000600060106830006000601
|
||||
068100060106810006820600060106830006000601068300060006010681000605068100
|
||||
060106830006000601068100060206810006010683000600060106830006000601068100
|
||||
0602068100060106830006000601068100060c06820700070107
|
||||
0307810d060d0681030a070a830600060a070a8100078107061506810006030603008206
|
||||
000681060083000600068106000100040681000682060006820600068106008300060006
|
||||
810600810006010681000602060300020602000506030082060006010681000602068300
|
||||
060006010681000682060006810600010002060300010602000106810006030603000206
|
||||
020002068100068206000601068100060106020002060200010681000601068100060606
|
||||
020002060200050603008206000601068100068106000200040602000206020001068100
|
||||
060a06820700070107
|
||||
0307810d060c0681030a090a81000a080a820600078107067c0681000677068207000701
|
||||
07
|
||||
0307810d060c0681030a150a810007810706780603007906820700070107
|
||||
0307810d060b0681030a090a8106008200060a070a820600078107067f06750682070007
|
||||
0107
|
||||
0307810d060b0681030a090a0300090a8100078107067f067506820700070107
|
||||
0307810d060a0681030a0a0a0300090a820600078107067f067406820700070107
|
||||
0307810d060a0681030a0a0a8106008200060a090a8100078107067f0674068207000701
|
||||
07
|
||||
0307810d060a0681030a190a81000701077f067406820700070107
|
||||
0307810d060a0681030a180a8206000701077f067406820700070107
|
||||
0307810d060b0681030a160a8206000702077f067406820700070107
|
||||
0307810d060c06810300160004077f067406820700070107
|
||||
0307810d060e061a077f067506820700070107
|
||||
0307810d060f0618077f067606820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d066b0648006a06820700070107
|
||||
0307810d066a064a006906820700070107
|
||||
0307810d066a060100450d8107008100066806820700070107
|
||||
0307810d066a060100440d010701006906820700070107
|
||||
0307810d066a060100010d18069100060006000600060006000600060006000617060107
|
||||
01006906820700070107
|
||||
0307810d066a060100010d4206010701006906820700070107
|
||||
0307810d066a060100010d18068100060d068100061706010701006906820700070107
|
||||
0307810d066a060100010d1b060300020681000601068100061906010701006906820700
|
||||
070107
|
||||
0307810d066a060100010d18068300060006020681000682060006820600068206000617
|
||||
06010701006906820700070107
|
||||
0307810d066a060100010d1a0681000602068100068406000600061b0601070100690682
|
||||
0700070107
|
||||
0307810d066a060100010d18068300060006020681000681060081000602068100061706
|
||||
010701006906820700070107
|
||||
0307810d066a060100010d1a0681000602068100068106008100061c0601070100690682
|
||||
0700070107
|
||||
0307810d066a060100010d18068300060006020681000684060006000601068100061706
|
||||
010701006906820700070107
|
||||
0307810d066a060100010d1a06810006020681000682060006820600061a060107010069
|
||||
06820700070107
|
||||
0307810d066a060100010d18068300060006020681000682060006010683000600061706
|
||||
010701006906820700070107
|
||||
0307810d066a060100010d1b060300020681000602068100061806010701006906820700
|
||||
070107
|
||||
0307810d066a060100010d18068100060d068100061706010701006906820700070107
|
||||
0307810d066a060100010d4206010701006906820700070107
|
||||
0307810d066a060100010d18069100060006000600060006000600060006000617060107
|
||||
01006906820700070107
|
||||
0307810d066a060100810d07440701006906820700070107
|
||||
0307810d066a060100460701006906820700070107
|
||||
0307810d066a064a006906820700070107
|
||||
0307810d066b0648006a06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
0307810d067f067f061f06820700070107
|
||||
7f077f0726078100070107
|
||||
02077f007f0024000207
|
||||
7f077f072a07
|
||||
7f077f072a07
|
||||
7f077f072a07
|
||||
7f077f072a07
|
||||
7f077f072a07
|
||||
7f077f072a07
|
||||
|
||||
%
|
||||
% Compression made this file 5.68% of the uncompressed size.
|
||||
%
|
||||
|
||||
|
||||
showpage
|
||||
|
||||
% stop using temporary dictionary
|
||||
end
|
||||
|
||||
% restore original state
|
||||
origstate restore
|
||||
|
||||
%%Trailer
|
Before Width: | Height: | Size: 55 KiB |
@@ -1,17 +0,0 @@
|
||||
\section{\class{wxBoolFormValidator}}\label{wxboolformvalidator}
|
||||
|
||||
This class validates a boolean value for a \helpref{form view}{wxpropertyformview}.
|
||||
The associated control must be a wxCheckBox.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{Property validator classes}{proplistvalidatorclasses}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxBoolFormValidator::wxBoolFormValidator}
|
||||
|
||||
\func{void}{wxBoolFormValidator}{\param{long }{flags=0}}
|
||||
|
||||
Constructor.
|
||||
|
@@ -1,16 +0,0 @@
|
||||
\section{\class{wxBoolListValidator}}\label{wxboollistvalidator}
|
||||
|
||||
This class validates a boolean value for a \helpref{property list view}{wxpropertylistview}.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{Validator classes}{proplistvalidatorclasses}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxBoolListValidator::wxBoolListValidator}
|
||||
|
||||
\func{void}{wxBoolListValidator}{\param{long }{flags=0}}
|
||||
|
||||
Constructor.
|
||||
|
@@ -1,107 +0,0 @@
|
||||
\section{\class{wxProperty}}\label{wxproperty}
|
||||
|
||||
The {\bf wxProperty} class represents a property, with a \helpref{wxPropertyValue}{wxpropertyvalue}\rtfsp
|
||||
containing the actual value, a name a role, an optional validator, and
|
||||
an optional associated window.
|
||||
|
||||
A property might correspond to an actual C++ data member, or it
|
||||
might correspond to a conceptual property, such as the width of a window.
|
||||
There is no explicit data member {\it wxWindow::width}, but it may be convenient
|
||||
to invent such a property for the purposes of editing attributes of the window.
|
||||
The properties in the property sheet can be mapped to ``reality" by
|
||||
whatever means (in this case by calling wxWindow::SetSize when the user has
|
||||
finished editing the property sheet).
|
||||
|
||||
A validator may be associated with the property in order to ensure that this and
|
||||
only this validator will be used for editing and validating the property.
|
||||
An alternative method is to use the {\it role} parameter to specify what kind
|
||||
of validator would be appropriate; for example, specifying ``filename" for the role
|
||||
would allow the property view to find an appropriate validator at edit time.
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxProperty::wxProperty}
|
||||
|
||||
\func{void}{wxProperty}{\void}
|
||||
|
||||
\func{void}{wxProperty}{\param{wxProperty\& }{prop}}
|
||||
|
||||
\func{void}{wxProperty}{\param{wxString}{ name}, \param{wxString}{ role}, \param{wxPropertyValidator *}{validator=NULL}}
|
||||
|
||||
\func{void}{wxProperty}{\param{wxString}{ name}, \param{const wxPropertyValue\&}{ val}, \param{wxString}{ role}, \param{wxPropertyValidator *}{validator=NULL}}
|
||||
|
||||
Constructors.
|
||||
|
||||
\membersection{wxProperty::\destruct{wxProperty}}
|
||||
|
||||
\func{void}{\destruct{wxProperty}}{\void}
|
||||
|
||||
Destructor. Destroys the wxPropertyValue, and the property validator if there is one. However, if the
|
||||
actual C++ value in the wxPropertyValue is a pointer, the data in that variable is not destroyed.
|
||||
|
||||
\membersection{wxProperty::GetValue}
|
||||
|
||||
\func{wxPropertyValue\&}{GetValue}{\void}
|
||||
|
||||
Returns a reference to the property value.
|
||||
|
||||
\membersection{wxProperty::GetValidator}
|
||||
|
||||
\func{wxPropertyValidator *}{GetValidator}{\void}
|
||||
|
||||
Returns a pointer to the associated property validator (if any).
|
||||
|
||||
\membersection{wxProperty::GetName}
|
||||
|
||||
\func{wxString\&}{GetName}{\void}
|
||||
|
||||
Returns the name of the property.
|
||||
|
||||
\membersection{wxProperty::GetRole}
|
||||
|
||||
\func{wxRole\&}{GetRole}{\void}
|
||||
|
||||
Returns the role of the property, to be used when choosing an appropriate validator.
|
||||
|
||||
\membersection{wxProperty::GetWindow}
|
||||
|
||||
\func{wxWindow *}{GetWindow}{\void}
|
||||
|
||||
Returns the window associated with the property (if any).
|
||||
|
||||
\membersection{wxProperty::SetValue}
|
||||
|
||||
\func{void}{SetValue}{\param{wxPropertyValue\&}{ val}}
|
||||
|
||||
Sets the value of the property.
|
||||
|
||||
\membersection{wxProperty::SetName}
|
||||
|
||||
\func{void}{SetName}{\param{wxString\&}{ name}}
|
||||
|
||||
Sets the name of the property.
|
||||
|
||||
\membersection{wxProperty::SetRole}
|
||||
|
||||
\func{void}{SetRole}{\param{wxString\&}{ role}}
|
||||
|
||||
Sets the role of the property.
|
||||
|
||||
\membersection{wxProperty::SetValidator}
|
||||
|
||||
\func{void}{SetValidator}{\param{wxPropertyValidator *}{validator}}
|
||||
|
||||
Sets the validator: this will be deleted when the property is deleted.
|
||||
|
||||
\membersection{wxProperty::SetWindow}
|
||||
|
||||
\func{void}{SetWindow}{\param{wxWindow *}{win}}
|
||||
|
||||
Sets the window associated with the property.
|
||||
|
||||
\membersection{wxProperty::operator $=$}
|
||||
|
||||
\func{void}{operator $=$}{\param{const wxPropertyValue\&}{ val}}
|
||||
|
||||
Assignment operator.
|
||||
|
@@ -1,18 +0,0 @@
|
||||
\section{\class{wxFilenameListValidator}}\label{wxfilenamelistvalidator}
|
||||
|
||||
This class validates a filename for a \helpref{property list view}{wxpropertylistview}, allowing the user to edit it textually and also popping up
|
||||
a file selector in ``detailed editing" mode.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{Validator classes}{proplistvalidatorclasses}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxFilenameListValidator::wxFilenameListValidator}
|
||||
|
||||
\func{void}{wxFilenameListValidator}{\param{wxString }{message = ``Select a file"}, \param{wxString }{wildcard = ``*.*"},
|
||||
\param{long}{ flags=0}}
|
||||
|
||||
Constructor. Supply an optional message and wildcard.
|
||||
|
@@ -1,23 +0,0 @@
|
||||
\section{\class{wxPropertyFormDialog}}\label{wxpropertyformdialog}
|
||||
|
||||
The {\bf wxPropertyFormDialog} class is a prepackaged dialog which can
|
||||
be used for viewing a form property sheet. Pass a property form view object, and the dialog
|
||||
will pass OnClose and OnDefaultAction listbox messages to the view class for
|
||||
processing.
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxPropertyFormDialog::wxPropertyFormDialog}
|
||||
|
||||
\func{void}{wxPropertyFormDialog}{\param{wxPropertyFormView *}{view}, \param{wxWindow *}{parent}, \param{char *}{title},
|
||||
\param{bool}{ modal=false}, \param{int}{ x=-1}, \param{int}{ y=-1}, \param{int}{ width=-1}, \param{int}{height=-1},
|
||||
\param{long}{ style=wxDEFAULT\_DIALOG\_STYLE}, \param{char *}{name=``dialogBox"}}
|
||||
|
||||
Constructor.
|
||||
|
||||
\membersection{wxPropertyFormDialog::\destruct{wxPropertyFormDialog}}
|
||||
|
||||
\func{void}{\destruct{wxPropertyFormDialog}}{\void}
|
||||
|
||||
Destructor.
|
||||
|
@@ -1,43 +0,0 @@
|
||||
\section{\class{wxPropertyFormFrame}}\label{wxpropertyformframe}
|
||||
|
||||
The {\bf wxPropertyFormFrame} class is a prepackaged frame which can
|
||||
be used for viewing a property form. Pass a property form view object, and the frame
|
||||
will pass OnClose messages to the view class for processing.
|
||||
|
||||
Call Initialize to create the panel and associate the view; override OnCreatePanel
|
||||
if you wish to use a panel class other than the default wxPropertyFormPanel.
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxPropertyFormFrame::wxPropertyFormFrame}
|
||||
|
||||
\func{void}{wxPropertyFormFrame}{\param{wxPropertyFormView *}{view}, \param{wxFrame *}{parent}, \param{char *}{title},
|
||||
\param{int}{ x=-1}, \param{int}{ y=-1}, \param{int}{ width=-1}, \param{int}{height=-1},
|
||||
\param{long}{ style=wxSDI $\|$ wxDEFAULT\_FRAME}, \param{char *}{name=``frame"}}
|
||||
|
||||
Constructor.
|
||||
|
||||
\membersection{wxPropertyFormFrame::\destruct{wxPropertyFormFrame}}
|
||||
|
||||
\func{void}{\destruct{wxPropertyFormFrame}}{\void}
|
||||
|
||||
Destructor.
|
||||
|
||||
\membersection{wxPropertyFormFrame::GetPropertyPanel}
|
||||
|
||||
\func{wxPanel *}{GetPropertyPanel}{\void}
|
||||
|
||||
Returns the panel associated with the frame.
|
||||
|
||||
\membersection{wxPropertyFormFrame::Initialize}
|
||||
|
||||
\func{bool}{Initialize}{\void}
|
||||
|
||||
Must be called to create the panel and associate the view with the panel and frame.
|
||||
|
||||
\membersection{wxPropertyFormFrame::OnCreatePanel}
|
||||
|
||||
\func{wxPanel *}{OnCreatePanel}{\param{wxFrame *}{parent}, \param{wxPropertyFormView *}{view}}
|
||||
|
||||
Creates a panel. Override this to create a panel type other than wxPropertyFormPanel.
|
||||
|
@@ -1,23 +0,0 @@
|
||||
\section{\class{wxPropertyFormPanel}}\label{wxpropertyformpanel}
|
||||
|
||||
The {\bf wxPropertyFormPanel} class is a prepackaged panel which can
|
||||
be used for viewing a property form. Pass a property form view object, and the panel
|
||||
will pass OnDefaultAction listbox messages to the view class for
|
||||
processing.
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxPropertyFormPanel::wxPropertyFormPanel}
|
||||
|
||||
\func{void}{wxPropertyFormPanel}{\param{wxPropertyFormView *}{view}, \param{wxWindow *}{parent},
|
||||
\param{int}{ x=-1}, \param{int}{ y=-1}, \param{int}{ width=-1}, \param{int}{height=-1},
|
||||
\param{long}{ style=0}, \param{char *}{name=``panel"}}
|
||||
|
||||
Constructor.
|
||||
|
||||
\membersection{wxPropertyFormPanel::\destruct{wxPropertyFormPanel}}
|
||||
|
||||
\func{void}{\destruct{wxPropertyFormPanel}}{\void}
|
||||
|
||||
Destructor.
|
||||
|
@@ -1,60 +0,0 @@
|
||||
\section{\class{wxPropertyFormValidator}}\label{wxpropertyformvalidator}
|
||||
|
||||
The {\bf wxPropertyFormValidator} class defines a base class for form validators. By overriding virtual functions,
|
||||
the programmer can create custom behaviour for kinds of property.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{wxPropertyFormValidator overview}{wxpropertyformvalidatoroverview}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxPropertyFormValidator::wxPropertyFormValidator}
|
||||
|
||||
\func{void}{wxPropertyFormValidator}{\param{long}{ flags = 0}}
|
||||
|
||||
Constructor.
|
||||
|
||||
\membersection{wxPropertyFormValidator::\destruct{wxPropertyFormValidator}}
|
||||
|
||||
\func{void}{\destruct{wxPropertyFormValidator}}{\void}
|
||||
|
||||
Destructor.
|
||||
|
||||
\membersection{wxPropertyFormValidator::OnCommand}
|
||||
|
||||
\func{bool}{OnCommand}{\param{wxProperty *}{property}, \param{wxPropertyFormView *}{view},
|
||||
\param{wxWindow *}{parentWindow}, \param{wxCommandEvent\& }{event}}
|
||||
|
||||
Called when the control corresponding to the property receives a command (if not intercepted
|
||||
by a callback associated with the actual control).
|
||||
|
||||
\membersection{wxPropertyFormValidator::OnCheckValue}
|
||||
|
||||
\func{bool}{OnCheckValue}{\param{wxProperty *}{property}, \param{wxPropertyFormView *}{view},
|
||||
\param{wxWindow *}{parentWindow}}
|
||||
|
||||
Called when the view checks the property value. The value checked by this validator should be taken from the
|
||||
panel item corresponding to the property.
|
||||
|
||||
\membersection{wxPropertyFormValidator::OnDisplayValue}
|
||||
|
||||
\func{bool}{OnDisplayValue}{\param{wxProperty *}{property}, \param{wxPropertyFormView *}{view},
|
||||
\param{wxWindow *}{parentWindow}}
|
||||
|
||||
Should display the property value in the appropriate control.
|
||||
|
||||
\membersection{wxPropertyFormValidator::OnDoubleClick}
|
||||
|
||||
\func{bool}{OnDoubleClick}{\param{wxProperty *}{property}, \param{wxPropertyFormView *}{view},
|
||||
\param{wxWindow *}{parentWindow}}
|
||||
|
||||
Called when the control corresponding to the property is double clicked (listboxes only).
|
||||
|
||||
\membersection{wxPropertyFormValidator::OnRetrieveValue}
|
||||
|
||||
\func{bool}{OnRetrieveValue}{\param{wxProperty *}{property}, \param{wxPropertyFormView *}{view},
|
||||
\param{wxWindow *}{parentWindow}}
|
||||
|
||||
Should do the transfer from the property editing area to the property itself.
|
||||
|
@@ -1,104 +0,0 @@
|
||||
\section{\class{wxPropertyFormView}}\label{wxpropertyformview}
|
||||
|
||||
The {\bf wxPropertyFormView} class shows a wxPropertySheet as a view onto a panel or dialog
|
||||
box which has already been created.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{wxPropertyFormView overview}{wxpropertyformviewoverview}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxPropertyFormView::wxPropertyFormView}
|
||||
|
||||
\func{void}{wxPropertyFormView}{\param{long}{ flags = 0}}
|
||||
|
||||
Constructor.
|
||||
|
||||
\membersection{wxPropertyFormView::\destruct{wxPropertyFormView}}
|
||||
|
||||
\func{void}{\destruct{wxPropertyFormView}}{\void}
|
||||
|
||||
Destructor.
|
||||
|
||||
\membersection{wxPropertyFormView::AssociateNames}\label{wxpropertyformviewassociatenames}
|
||||
|
||||
\func{void}{AssociateNames}{\void}
|
||||
|
||||
Associates the properties with the controls on the panel. For each panel item, if the
|
||||
panel item name is the same as a property name, the two objects will be associated.
|
||||
This function should be called manually since the programmer may wish to do the
|
||||
association manually.
|
||||
|
||||
\membersection{wxPropertyFormView::Check}\label{wxpropertyformviewcheck}
|
||||
|
||||
\func{bool}{Check}{\void}
|
||||
|
||||
Checks all properties by calling the appropriate validators; returns false if a validation failed.
|
||||
|
||||
\membersection{wxPropertyFormView::GetPanel}\label{wxpropertyformviewgetpanel}
|
||||
|
||||
\func{wxPanel *}{GetPanel}{\void}
|
||||
|
||||
Returns the panel associated with the view.
|
||||
|
||||
\membersection{wxPropertyFormView::GetManagedWindow}\label{wxpropertyformviewgetmanagedwindow}
|
||||
|
||||
\func{wxWindow *}{GetManagedWindow}{\void}
|
||||
|
||||
Returns the managed window (a frame or dialog) associated with the view.
|
||||
|
||||
\membersection{wxPropertyFormView::OnOk}\label{wxpropertyformviewonok}
|
||||
|
||||
\func{void}{OnOk}{\void}
|
||||
|
||||
Virtual function that will be called when the OK button on the physical window is pressed.
|
||||
By default, checks and updates the form values, closes and deletes the frame or dialog, then deletes the view.
|
||||
|
||||
\membersection{wxPropertyFormView::OnCancel}\label{wxpropertyformviewoncancel}
|
||||
|
||||
\func{void}{OnCancel}{\void}
|
||||
|
||||
Virtual function that will be called when the Cancel button on the physical window is pressed.
|
||||
By default, closes and deletes the frame or dialog, then deletes the view.
|
||||
|
||||
\membersection{wxPropertyFormView::OnHelp}\label{wxpropertyformviewonhelp}
|
||||
|
||||
\func{void}{OnHelp}{\void}
|
||||
|
||||
Virtual function that will be called when the Help button on the physical window is pressed.
|
||||
This needs to be overridden by the application for anything interesting to happen.
|
||||
|
||||
\membersection{wxPropertyFormView::OnRevert}\label{wxpropertyformviewonrevert}
|
||||
|
||||
\func{void}{OnRevert}{\void}
|
||||
|
||||
Virtual function that will be called when the Revert button on the physical window is pressed.
|
||||
By default transfers the wxProperty values to the panel items (in effect
|
||||
undoing any unsaved changes in the items).
|
||||
|
||||
\membersection{wxPropertyFormView::OnUpdate}\label{wxpropertyformviewonupdate}
|
||||
|
||||
\func{void}{OnUpdate}{\void}
|
||||
|
||||
Virtual function that will be called when the Update button on the physical window is pressed.
|
||||
By defaults transfers the displayed values to the wxProperty objects.
|
||||
|
||||
\membersection{wxPropertyFormView::SetManagedWindow}\label{wxpropertyformviewsetmanagedwindow}
|
||||
|
||||
\func{void}{SetManagedWindow}{\param{wxWindow *}{win}}
|
||||
|
||||
Sets the managed window (a frame or dialog) associated with the view.
|
||||
|
||||
\membersection{wxPropertyFormView::TransferToDialog}\label{wxpropertyformviewtransfertodialog}
|
||||
|
||||
\func{bool}{TransferToDialog}{\void}
|
||||
|
||||
Transfers property values to the controls in the dialog.
|
||||
|
||||
\membersection{wxPropertyFormView::TransferToPropertySheet}\label{wxpropertyformviewtransfertopropertysheet}
|
||||
|
||||
\func{bool}{TransferToPropertySheet}{\void}
|
||||
|
||||
Transfers property values from the controls in the dialog to the property sheet.
|
||||
|
@@ -1,18 +0,0 @@
|
||||
\section{\class{wxIntegerFormValidator}}\label{wxintegerformvalidator}
|
||||
|
||||
This class validates a range of integer values for a form view. The associated control must be a wxTextCtrl
|
||||
or wxSlider.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{Validator classes}{proplistvalidatorclasses}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxIntegerFormValidator::wxIntegerFormValidator}
|
||||
|
||||
\func{void}{wxIntegerFormValidator}{\param{long }{min=0}, \param{long }{max=0},
|
||||
\param{long}{ flags=0}}
|
||||
|
||||
Constructor. Assigning zero to minimum and maximum values indicates that there is no range to check.
|
||||
|
@@ -1,17 +0,0 @@
|
||||
\section{\class{wxIntegerListValidator}}\label{wxintegerlistvalidator}
|
||||
|
||||
This class validates a range of integer values for a list view.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\overview{Validator classes}{proplistvalidatorclasses}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxIntegerListValidator::wxIntegerListValidator}
|
||||
|
||||
\func{void}{wxIntegerListValidator}{\param{long }{min=0}, \param{long }{max=0},
|
||||
\param{long}{ flags=wxPROP\_ALLOW\_TEXT\_EDITING}}
|
||||
|
||||
Constructor. Assigning zero to minimum and maximum values indicates that there is no range to check.
|
||||
|
@@ -1,23 +0,0 @@
|
||||
\section{\class{wxPropertyListDialog}}\label{wxpropertylistdialog}
|
||||
|
||||
The {\bf wxPropertyListDialog} class is a prepackaged dialog which can
|
||||
be used for viewing a property list. Pass a property list view object, and the dialog
|
||||
will pass OnClose and OnDefaultAction listbox messages to the view class for
|
||||
processing.
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxPropertyListDialog::wxPropertyListDialog}
|
||||
|
||||
\func{void}{wxPropertyListDialog}{\param{wxPropertyListView *}{view}, \param{wxWindow *}{parent}, \param{char *}{title},
|
||||
\param{bool}{ modal=false}, \param{int}{ x=-1}, \param{int}{ y=-1}, \param{int}{ width=-1}, \param{int}{height=-1},
|
||||
\param{long}{ style=wxDEFAULT\_DIALOG\_STYLE}, \param{char *}{name=``dialogBox"}}
|
||||
|
||||
Constructor.
|
||||
|
||||
\membersection{wxPropertyListDialog::\destruct{wxPropertyListDialog}}
|
||||
|
||||
\func{void}{\destruct{wxPropertyListDialog}}{\void}
|
||||
|
||||
Destructor.
|
||||
|
@@ -1,43 +0,0 @@
|
||||
\section{\class{wxPropertyListFrame}}\label{wxpropertylistframe}
|
||||
|
||||
The {\bf wxPropertyListFrame} class is a prepackaged frame which can
|
||||
be used for viewing a property list. Pass a property list view object, and the frame
|
||||
will pass OnClose messages to the view class for processing.
|
||||
|
||||
Call Initialize to create the panel and associate the view; override OnCreatePanel
|
||||
if you wish to use a panel class other than the default wxPropertyListPanel.
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxPropertyListFrame::wxPropertyListFrame}
|
||||
|
||||
\func{void}{wxPropertyListFrame}{\param{wxPropertyListView *}{view}, \param{wxFrame *}{parent}, \param{char *}{title},
|
||||
\param{int}{ x=-1}, \param{int}{ y=-1}, \param{int}{ width=-1}, \param{int}{height=-1},
|
||||
\param{long}{ style=wxSDI $\|$ wxDEFAULT\_FRAME}, \param{char *}{name=``frame"}}
|
||||
|
||||
Constructor.
|
||||
|
||||
\membersection{wxPropertyListFrame::\destruct{wxPropertyListFrame}}
|
||||
|
||||
\func{void}{\destruct{wxPropertyListFrame}}{\void}
|
||||
|
||||
Destructor.
|
||||
|
||||
\membersection{wxPropertyListFrame::GetPropertyPanel}
|
||||
|
||||
\func{wxPanel *}{GetPropertyPanel}{\void}
|
||||
|
||||
Returns the panel associated with the frame.
|
||||
|
||||
\membersection{wxPropertyListFrame::Initialize}
|
||||
|
||||
\func{bool}{Initialize}{\void}
|
||||
|
||||
Must be called to create the panel and associate the view with the panel and frame.
|
||||
|
||||
\membersection{wxPropertyListFrame::OnCreatePanel}
|
||||
|
||||
\func{wxPanel *}{OnCreatePanel}{\param{wxFrame *}{parent}, \param{wxPropertyListView *}{view}}
|
||||
|
||||
Creates a panel. Override this to create a panel type other than wxPropertyListPanel.
|
||||
|
@@ -1,24 +0,0 @@
|
||||
\section{\class{wxPropertyListPanel}}\label{wxpropertylistpanel}
|
||||
|
||||
The {\bf wxPropertyListPanel} class is a prepackaged panel which can
|
||||
be used for viewing a property list. Pass a property list view object, and the panel
|
||||
will pass OnDefaultAction listbox messages to the view class for
|
||||
processing.
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxPropertyListPanel::wxPropertyListPanel}
|
||||
|
||||
\func{void}{wxPropertyListPanel}{\param{wxPropertyListView *}{view}, \param{wxWindow *}{parent},
|
||||
\param{const wxPoint&}{ pos = wxDefaultPosition},
|
||||
\param{const wxSize&}{ size = wxDefaultSize},
|
||||
\param{long}{ style=0}, \param{char *}{name=``panel"}}
|
||||
|
||||
Constructor.
|
||||
|
||||
\membersection{wxPropertyListPanel::\destruct{wxPropertyListPanel}}
|
||||
|
||||
\func{void}{\destruct{wxPropertyListPanel}}{\void}
|
||||
|
||||
Destructor.
|
||||
|
@@ -1,556 +0,0 @@
|
||||
\chapter{Property sheet classes}\label{proplist}
|
||||
|
||||
\section{Introduction}\label{proplistintro}
|
||||
|
||||
The Property Sheet Classes help the programmer to specify complex dialogs and
|
||||
their relationship with their associated data. By specifying data as a
|
||||
wxPropertySheet containing wxProperty objects, the programmer can use
|
||||
a range of available or custom wxPropertyView classes to allow the user to
|
||||
edit this data. Classes derived from wxPropertyView act as mediators between the
|
||||
wxPropertySheet and the actual window (and associated panel items).
|
||||
|
||||
For example, the wxPropertyListView is a kind of wxPropertyView which displays
|
||||
data in a Visual Basic-style property list (see \helpref{the next section}{proplistappearance} for
|
||||
screen shots). This is a listbox containing names and values, with
|
||||
an edit control and other optional controls via which the user edits the selected
|
||||
data item.
|
||||
|
||||
wxPropertyFormView is another kind of wxPropertyView which mediates between
|
||||
the data and a panel or dialog box which has already been created. This makes it a contender for
|
||||
the replacement of wxForm, since programmer-controlled layout is going to be much more
|
||||
satisfactory. If automatic layout is desired, then wxPropertyListView could be used instead.
|
||||
|
||||
The main intention of this class library was to provide property {\it list} behaviour, but
|
||||
it has been generalised as much as possible so that the concept of a property sheet and its viewers
|
||||
can reduce programming effort in a range of user interface tasks.
|
||||
|
||||
For further details on the classes and how they are used, please see \helpref{Property classes overview}{proplistpropertyoverview}.
|
||||
|
||||
\subsection{The appearance and behaviour of a property list view}\label{proplistappearance}
|
||||
|
||||
The property list, as seen in an increasing number of development tools
|
||||
such as Visual Basic and Delphi, is a convenient and compact method for
|
||||
displaying and editing a number of items without the need for one
|
||||
control per item, and without the need for designing a special form. The
|
||||
controls are as follows:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item A listbox showing the properties and their current values, which has double-click
|
||||
properties dependent on the nature of the current property;
|
||||
\item a text editing area at the top of the display, allowing the user to edit
|
||||
the currently selected property if appropriate;
|
||||
\item `confirm' and `cancel' buttons to confirm or cancel an edit (for the property, not the
|
||||
whole sheet);
|
||||
\item an optional list that appears when the user can make a choice from several known possible values;
|
||||
\item a small Edit button to invoke `detailed editing' (perhaps showing or hiding the above value list, or
|
||||
maybe invoking a common dialog);
|
||||
\item optional OK/Close, Cancel and Help buttons for the whole dialog.
|
||||
\end{itemize}
|
||||
|
||||
The concept of `detailed editing' versus quick editing gives the user a choice
|
||||
of editing mode, so novice and expert behaviour can be catered for, or the user can just
|
||||
use what he feels comfortable with.
|
||||
|
||||
Behaviour alters depending on the kind of property being edited. For example, a boolean value has
|
||||
the following behaviour:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item Double-clicking on the item toggles between true and false.
|
||||
\item Showing the value list enables the user to select true or false.
|
||||
\item The user may be able to type in the word true or false, or the edit control
|
||||
may be read-only to disallow this since it is error-prone.
|
||||
\end{itemize}
|
||||
|
||||
A list of strings may pop up a dialog for editing them, a simple string just allows text editing,
|
||||
double-clicking a colour property may show a colour selector, double-clicking on a filename property may
|
||||
show a file selector (in addition to being able to type in the name in the edit control), etc.
|
||||
|
||||
Note that the `type' of property, such as string or integer, does not
|
||||
necessarily determine the behaviour of the property. The programmer has
|
||||
to be able to specify different behaviours for the same type, depending
|
||||
on the meaning of the property. For example, a colour and a filename may
|
||||
both be strings, but their editing behaviour should be different. This
|
||||
is why objects of type wxPropertyValidator need to be used, to define
|
||||
behaviour for a given class of properties or even specific property
|
||||
name. Objects of class wxPropertyView contain a list of property
|
||||
registries, which enable reuse of bunches of these validators in
|
||||
different circumstances. Or a wxProperty can be explicitly set to use a
|
||||
particular validator object.
|
||||
|
||||
The following screen shot of the property classes test program shows the
|
||||
user editing a string, which is constrained to be one of three possible
|
||||
values.
|
||||
|
||||
\helponly{\image{}{prop1.bmp}}
|
||||
|
||||
The second picture shows the user having entered a integer that
|
||||
was outside the range specified to the validator. Note that in this picture,
|
||||
the value list is hidden because it is not used when editing an integer.
|
||||
|
||||
\helponly{\image{}{prop2.bmp}}
|
||||
|
||||
\section{Headers}\label{proplistfiles}
|
||||
|
||||
The property class library comprises the following files:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item prop.h: base property class header
|
||||
\item proplist.h: wxPropertyListView and associated classes
|
||||
\item propform.h: wxPropertyListView and associated classes
|
||||
\end{itemize}
|
||||
|
||||
\section{Topic overviews}\label{proplistoverviews}
|
||||
|
||||
This chapter contains a selection of topic overviews.
|
||||
|
||||
\subsection{Property classes overview}\label{proplistpropertyoverview}
|
||||
|
||||
The property classes help a programmer to express relationships between
|
||||
data and physical windows, in particular:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item the transfer of data to and from the physical controls;
|
||||
\item the behaviour of various controls and custom windows for particular
|
||||
types of data;
|
||||
\item the validation of data, notifying the user when incorrect data is entered,
|
||||
or even better, constraining the input so only valid data can be entered.
|
||||
\end{itemize}
|
||||
|
||||
With a consistent framework, the programmer should be able to use existing
|
||||
components and design new ones in a principled manner, to solve many data entry
|
||||
requirements.
|
||||
|
||||
Each datum is represented in a \helpref{wxProperty}{wxproperty}, which has a name and a value.
|
||||
Various C++ types are permitted in the value of a property, and the property can store a pointer
|
||||
to the data instead of a copy of the data. A \helpref{wxPropertySheet}{wxpropertysheet} represents a number of these properties.
|
||||
|
||||
These two classes are independent from the way in which the data is visually manipulated. To
|
||||
mediate between property sheets and windows, the abstract class \helpref{wxPropertyView}{wxpropertyview} is
|
||||
available for programmers to derive new kinds of view. One kind of view that is available is the \helpref{wxPropertyListView}{wxpropertylistview},
|
||||
which displays the data in a Visual Basic-style list, with a small number of controls for editing
|
||||
the currently selected property. Another is \helpref{wxPropertyFormView}{wxpropertyformview} which
|
||||
mediates between an existing dialog or panel and the property sheet.
|
||||
|
||||
The hard work of mediation is actually performed by validators, which are instances of classes
|
||||
derived from \helpref{wxPropertyValidator}{wxpropertyvalidator}. A validator is associated with
|
||||
a particular property and is responsible for
|
||||
responding to user interface events, and displaying, updating and checking the property value.
|
||||
Because a validator's behaviour depends largely on the kind of view being used, there has to be
|
||||
a separate hierarchy of validators for each class of view. So for wxPropertyListView, there is
|
||||
an abstract class \helpref{wxPropertyListValidator}{wxpropertylistvalidator} from which concrete
|
||||
classes are derived, such as \helpref{wxRealListValidator}{wxreallistvalidator} and
|
||||
\rtfsp\helpref{wxStringListValidator}{wxstringlistvalidator}.
|
||||
|
||||
A validator can be explicitly set for a property, so there is no doubt which validator
|
||||
should be used to edit that property. However, it is also possible to define a registry
|
||||
of validators, and have the validator chosen on the basis of the {\it role} of the property.
|
||||
So a property with a ``filename" role would match the ``filename" validator, which pops
|
||||
up a file selector when the user double clicks on the property.
|
||||
|
||||
You don't have to define your own frame or window classes: there are some predefined
|
||||
that will work with the property list view. See \helpref{Window classes}{proplistwindowclasses} for
|
||||
further details.
|
||||
|
||||
\subsubsection{Example 1: Property list view}
|
||||
|
||||
The following code fragment shows the essentials of creating a registry of
|
||||
standard validators, a property sheet containing some properties, and
|
||||
a property list view and dialog or frame. RegisterValidators will be
|
||||
called on program start, and PropertySheetTest is called in response to a
|
||||
menu command.
|
||||
|
||||
Note how some properties are created with an explicit reference to
|
||||
a validator, and others are provided with a ``role'' which can be matched
|
||||
against a validator in the registry.
|
||||
|
||||
The interface generated by this test program is shown in the section \helpref{Appearance and
|
||||
behaviour of a property list view}{proplistappearance}.
|
||||
|
||||
\begin{verbatim}
|
||||
void RegisterValidators(void)
|
||||
{
|
||||
myListValidatorRegistry.RegisterValidator((wxString)"real", new wxRealListValidator);
|
||||
myListValidatorRegistry.RegisterValidator((wxString)"string", new wxStringListValidator);
|
||||
myListValidatorRegistry.RegisterValidator((wxString)"integer", new wxIntegerListValidator);
|
||||
myListValidatorRegistry.RegisterValidator((wxString)"bool", new wxBoolListValidator);
|
||||
}
|
||||
|
||||
void PropertyListTest(Bool useDialog)
|
||||
{
|
||||
wxPropertySheet *sheet = new wxPropertySheet;
|
||||
|
||||
sheet->AddProperty(new wxProperty("fred", 1.0, "real"));
|
||||
sheet->AddProperty(new wxProperty("tough choice", (Bool)true, "bool"));
|
||||
sheet->AddProperty(new wxProperty("ian", (long)45, "integer", new wxIntegerListValidator(-50, 50)));
|
||||
sheet->AddProperty(new wxProperty("bill", 25.0, "real", new wxRealListValidator(0.0, 100.0)));
|
||||
sheet->AddProperty(new wxProperty("julian", "one", "string"));
|
||||
sheet->AddProperty(new wxProperty("bitmap", "none", "string", new wxFilenameListValidator("Select a bitmap file", "*.bmp")));
|
||||
wxStringList *strings = new wxStringList("one", "two", "three", NULL);
|
||||
sheet->AddProperty(new wxProperty("constrained", "one", "string", new wxStringListValidator(strings)));
|
||||
|
||||
wxPropertyListView *view =
|
||||
new wxPropertyListView(NULL,
|
||||
wxPROP_BUTTON_CHECK_CROSS|wxPROP_DYNAMIC_VALUE_FIELD|wxPROP_PULLDOWN);
|
||||
|
||||
wxDialogBox *propDialog = NULL;
|
||||
wxPropertyListFrame *propFrame = NULL;
|
||||
if (useDialog)
|
||||
{
|
||||
propDialog = new wxPropertyListDialog(view, NULL, "Property Sheet Test", true, -1, -1, 400, 500);
|
||||
}
|
||||
else
|
||||
{
|
||||
propFrame = new wxPropertyListFrame(view, NULL, "Property Sheet Test", -1, -1, 400, 500);
|
||||
}
|
||||
|
||||
view->AddRegistry(&myListValidatorRegistry);
|
||||
|
||||
if (useDialog)
|
||||
{
|
||||
view->ShowView(sheet, propDialog);
|
||||
propDialog->Centre(wxBOTH);
|
||||
propDialog->Show(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
propFrame->Initialize();
|
||||
view->ShowView(sheet, propFrame->GetPropertyPanel());
|
||||
propFrame->Centre(wxBOTH);
|
||||
propFrame->Show(true);
|
||||
}
|
||||
}
|
||||
\end{verbatim}
|
||||
|
||||
\subsubsection{Example 2: Property form view}
|
||||
|
||||
This example is similar to Example 1, but uses a property form view to
|
||||
edit a property sheet using a predefined dialog box.
|
||||
|
||||
\begin{verbatim}
|
||||
void RegisterValidators(void)
|
||||
{
|
||||
myFormValidatorRegistry.RegisterValidator((wxString)"real", new wxRealFormValidator);
|
||||
myFormValidatorRegistry.RegisterValidator((wxString)"string", new wxStringFormValidator);
|
||||
myFormValidatorRegistry.RegisterValidator((wxString)"integer", new wxIntegerFormValidator);
|
||||
myFormValidatorRegistry.RegisterValidator((wxString)"bool", new wxBoolFormValidator);
|
||||
}
|
||||
|
||||
void PropertyFormTest(Bool useDialog)
|
||||
{
|
||||
wxPropertySheet *sheet = new wxPropertySheet;
|
||||
|
||||
sheet->AddProperty(new wxProperty("fred", 25.0, "real", new wxRealFormValidator(0.0, 100.0)));
|
||||
sheet->AddProperty(new wxProperty("tough choice", (Bool)true, "bool"));
|
||||
sheet->AddProperty(new wxProperty("ian", (long)45, "integer", new wxIntegerFormValidator(-50, 50)));
|
||||
sheet->AddProperty(new wxProperty("julian", "one", "string"));
|
||||
wxStringList *strings = new wxStringList("one", "two", "three", NULL);
|
||||
sheet->AddProperty(new wxProperty("constrained", "one", "string", new wxStringFormValidator(strings)));
|
||||
|
||||
wxPropertyFormView *view = new wxPropertyFormView(NULL);
|
||||
|
||||
wxDialogBox *propDialog = NULL;
|
||||
wxPropertyFormFrame *propFrame = NULL;
|
||||
if (useDialog)
|
||||
{
|
||||
propDialog = new wxPropertyFormDialog(view, NULL, "Property Form Test", true, -1, -1, 400, 300);
|
||||
}
|
||||
else
|
||||
{
|
||||
propFrame = new wxPropertyFormFrame(view, NULL, "Property Form Test", -1, -1, 400, 300);
|
||||
propFrame->Initialize();
|
||||
}
|
||||
|
||||
wxPanel *panel = propDialog ? propDialog : propFrame->GetPropertyPanel();
|
||||
panel->SetLabelPosition(wxVERTICAL);
|
||||
|
||||
// Add items to the panel
|
||||
|
||||
(void) new wxButton(panel, (wxFunction)NULL, "OK", -1, -1, -1, -1, 0, "ok");
|
||||
(void) new wxButton(panel, (wxFunction)NULL, "Cancel", -1, -1, 80, -1, 0, "cancel");
|
||||
(void) new wxButton(panel, (wxFunction)NULL, "Update", -1, -1, 80, -1, 0, "update");
|
||||
(void) new wxButton(panel, (wxFunction)NULL, "Revert", -1, -1, -1, -1, 0, "revert");
|
||||
panel->NewLine();
|
||||
|
||||
// The name of this text item matches the "fred" property
|
||||
(void) new wxText(panel, (wxFunction)NULL, "Fred", "", -1, -1, 90, -1, 0, "fred");
|
||||
(void) new wxCheckBox(panel, (wxFunction)NULL, "Yes or no", -1, -1, -1, -1, 0, "tough choice");
|
||||
(void) new wxSlider(panel, (wxFunction)NULL, "Sliding scale", 0, -50, 50, 100, -1, -1, wxHORIZONTAL, "ian");
|
||||
panel->NewLine();
|
||||
(void) new wxListBox(panel, (wxFunction)NULL, "Constrained", wxSINGLE, -1, -1, 100, 90, 0, NULL, 0, "constrained");
|
||||
|
||||
view->AddRegistry(&myFormValidatorRegistry);
|
||||
|
||||
if (useDialog)
|
||||
{
|
||||
view->ShowView(sheet, propDialog);
|
||||
view->AssociateNames();
|
||||
view->TransferToDialog();
|
||||
propDialog->Centre(wxBOTH);
|
||||
propDialog->Show(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
view->ShowView(sheet, propFrame->GetPropertyPanel());
|
||||
view->AssociateNames();
|
||||
view->TransferToDialog();
|
||||
propFrame->Centre(wxBOTH);
|
||||
propFrame->Show(true);
|
||||
}
|
||||
}
|
||||
\end{verbatim}
|
||||
|
||||
\subsection{Validator classes overview}\label{proplistvalidatoroverview}
|
||||
|
||||
Classes: \helpref{Validator classes}{proplistvalidatorclasses}
|
||||
|
||||
The validator classes provide functionality for mediating between a wxProperty and
|
||||
the actual display. There is a separate family of validator classes for each
|
||||
class of view, since the differences in user interface for these views implies
|
||||
that little common functionality can be shared amongst validators.
|
||||
|
||||
|
||||
|
||||
\subsubsection{wxPropertyValidator overview}\label{wxpropertyvalidatoroverview}
|
||||
|
||||
Class: \helpref{wxPropertyValidator}{wxpropertyvalidator}
|
||||
|
||||
This class is the root of all property validator classes. It contains a small
|
||||
amount of common functionality, including functions to convert between
|
||||
strings and C++ values.
|
||||
|
||||
A validator is notionally an object which sits between a property and its displayed
|
||||
value, and checks that the value the user enters is correct, giving an error message
|
||||
if the validation fails. In fact, the validator does more than that, and is akin to
|
||||
a view class but at a finer level of detail. It is also responsible for
|
||||
loading the dialog box control with the value from the property, putting it back
|
||||
into the property, preparing special controls for editing the value, and
|
||||
may even invoke special dialogs for editing the value in a convenient way.
|
||||
|
||||
In a property list dialog, there is quite a lot of scope for supplying custom dialogs,
|
||||
such as file or colour selectors. For a form dialog, there is less scope because
|
||||
there is no concept of `detailed editing' of a value: one control is associated with
|
||||
one property, and there is no provision for invoking further dialogs. The reader
|
||||
may like to work out how the form view could be extended to provide some of the
|
||||
functionality of the property list!
|
||||
|
||||
Validator objects may be associated explicitly with a wxProperty, or they may be
|
||||
indirectly associated by virtue of a property `kind' that matches validators having
|
||||
that kind. In the latter case, such validators are stored in a validator registry
|
||||
which is passed to the view before the dialog is shown. If the validator takes
|
||||
arguments, such as minimum and maximum values in the case of a wxIntegerListValidator,
|
||||
then the validator must be associated explicitly with the property. The validator
|
||||
will be deleted when the property is deleted.
|
||||
|
||||
\subsubsection{wxPropertyListValidator overview}\label{wxpropertylistvalidatoroverview}
|
||||
|
||||
Class: \helpref{wxPropertyListValidator}{wxpropertylistvalidator}
|
||||
|
||||
This class is the abstract base class for property list view validators.
|
||||
The list view acts upon a user interface containing a list of properties,
|
||||
a text item for direct property value editing, confirm/cancel buttons for the value,
|
||||
a pulldown list for making a choice between values, and OK/Cancel/Help buttons
|
||||
for the dialog (see \helpref{property list appearance}{proplistappearance}).
|
||||
|
||||
By overriding virtual functions, the programmer can create custom
|
||||
behaviour for different kinds of property. Custom behaviour can use just the
|
||||
available controls on the property list dialog, or the validator can
|
||||
invoke custom editors with quite different controls, which pop up in
|
||||
`detailed editing' mode.
|
||||
|
||||
See the detailed class documentation for the members you should override
|
||||
to give your validator appropriate behaviour.
|
||||
|
||||
\subsubsection{wxPropertyFormValidator overview}\label{wxpropertyformvalidatoroverview}
|
||||
|
||||
This class is the abstract base class for property form view validators.
|
||||
The form view acts upon an existing dialog box or panel, where either the
|
||||
panel item names correspond to property names, or the programmer has explicitly
|
||||
associated the panel item with the property.
|
||||
|
||||
By overriding virtual functions, the programmer determines how
|
||||
values are displayed or retrieved, and the checking that the validator does.
|
||||
|
||||
See the detailed class documentation for the members you should override
|
||||
to give your validator appropriate behaviour.
|
||||
|
||||
\subsection{View classes overview}\label{proplistviewoverview}
|
||||
|
||||
Classes: \helpref{View classes}{proplistviewclasses}
|
||||
|
||||
An instance of a view class relates a property sheet with an actual window.
|
||||
Currently, there are two classes of view: wxPropertyListView and wxPropertyFormView.
|
||||
|
||||
\subsubsection{wxPropertyView overview}\label{wxpropertyviewoverview}
|
||||
|
||||
Class: \helpref{wxPropertyView}{wxpropertyview}
|
||||
|
||||
This is the abstract base class for property views.
|
||||
|
||||
\subsubsection{wxPropertyListView overview}\label{wxpropertylistviewoverview}
|
||||
|
||||
Class: \helpref{wxPropertyListView}{wxpropertylistview}
|
||||
|
||||
The property list view defines the relationship between a property sheet and
|
||||
a property list dialog or panel. It manages user interface events such as
|
||||
clicking on a property, pressing return in the text edit field, and clicking
|
||||
on Confirm or Cancel. These events cause member functions of the
|
||||
class to be called, and these in turn may call member functions of
|
||||
the appropriate validator to be called, to prepare controls, check the property value,
|
||||
invoke detailed editing, etc.
|
||||
|
||||
\subsubsection{wxPropertyFormView overview}\label{wxpropertyformviewoverview}
|
||||
|
||||
Class: \helpref{wxPropertyFormView}{wxpropertyformview}
|
||||
|
||||
The property form view manages the relationship between a property sheet
|
||||
and an existing dialog or panel.
|
||||
|
||||
You must first create a panel or dialog box for the view to work on.
|
||||
The panel should contain panel items with names that correspond to
|
||||
properties in your property sheet; or you can explicitly set the
|
||||
panel item for each property.
|
||||
|
||||
Apart from any custom panel items that you wish to control independently
|
||||
of the property-editing items, wxPropertyFormView takes over the
|
||||
processing of item events. It can also control normal dialog behaviour such
|
||||
as OK, Cancel, so you should also create some standard buttons that the property view
|
||||
can recognise. Just create the buttons with standard names and the view
|
||||
will do the rest. The following button names are recognised:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item {\bf ok}: indicates the OK button. Calls wxPropertyFormView::OnOk. By default,
|
||||
checks and updates the form values, closes and deletes the frame or dialog, then deletes the view.
|
||||
\item {\bf cancel}: indicates the Cancel button. Calls wxPropertyFormView::OnCancel. By default,
|
||||
closes and deletes the frame or dialog, then deletes the view.
|
||||
\item {\bf help}: indicates the Help button. Calls wxPropertyFormView::OnHelp. This needs
|
||||
to be overridden by the application for anything interesting to happen.
|
||||
\item {\bf revert}: indicates the Revert button. Calls wxPropertyFormView::OnRevert,
|
||||
which by default transfers the wxProperty values to the panel items (in effect
|
||||
undoing any unsaved changes in the items).
|
||||
\item {\bf update}: indicates the Revert button. Calls wxPropertyFormView::OnUpdate, which
|
||||
by defaults transfers the displayed values to the wxProperty objects.
|
||||
\end{itemize}
|
||||
|
||||
\subsection{wxPropertySheet overview}\label{wxpropertysheetoverview}
|
||||
|
||||
Classes: \helpref{wxPropertySheet}{wxpropertysheet}, \helpref{wxProperty}{wxproperty}, \helpref{wxPropertyValue}{wxpropertyvalue}
|
||||
|
||||
A property sheet defines zero or more properties. This is a bit like an explicit representation of
|
||||
a C++ object. wxProperty objects can have values which are pointers to C++ values, or they
|
||||
can allocate their own storage for values.
|
||||
|
||||
Because the property sheet representation is explicit and can be manipulated by
|
||||
a program, it is a convenient form to be used for a variety of
|
||||
editing purposes. wxPropertyListView and wxPropertyFormView are two classes that
|
||||
specify the relationship between a property sheet and a user interface. You could imagine
|
||||
other uses for wxPropertySheet, for example to generate a form-like user interface without
|
||||
the need for GUI programming. Or for storing the names and values of command-line switches, with the
|
||||
option to subsequently edit these values using a wxPropertyListView.
|
||||
|
||||
A typical use for a property sheet is to represent values of an object
|
||||
which are only implicit in the current representation of it. For
|
||||
example, in Visual Basic and similar programming environments, you can
|
||||
`edit a button', or rather, edit the button's properties. One of the
|
||||
properties you can edit is {\it width} - but there is no explicit
|
||||
representation of width in a wxWindows button; instead, you call SetSize
|
||||
and GetSize members. To translate this into a consistent,
|
||||
property-oriented scheme, we could derive a new class
|
||||
wxButtonWithProperties, which has two new functions: SetProperty and
|
||||
GetProperty. SetProperty accepts a property name and a value, and calls
|
||||
an appropriate function for the property that is being passed.
|
||||
GetProperty accepts a property name, returning a property value. So
|
||||
instead of having to use the usual arbitrary set of C++ member functions
|
||||
to set or access attributes of a window, programmer deals merely with
|
||||
SetValue/GetValue, and property names and values.
|
||||
We now have a single point at which we can modify or query an object by specifying
|
||||
names and values at run-time. (The implementation of SetProperty and GetProperty
|
||||
is probably quite messy and involves a large if-then-else statement to
|
||||
test the property name and act accordingly.)
|
||||
|
||||
When the user invokes the property editor for a wxButtonWithProperties, the system
|
||||
creates a wxPropertySheet with `imaginary' properties such as width, height, font size
|
||||
and so on. For each property, wxButtonWithProperties::GetProperty is called, and the result is
|
||||
passed to the corresponding wxProperty. The wxPropertySheet is passed to a wxPropertyListView
|
||||
as described elsewhere, and the user edits away. When the user has finished editing, the system calls
|
||||
wxButtonWithProperties::SetProperty to transfer the wxProperty value back into the button
|
||||
by way of an appropriate call, wxWindow::SetSize in the case of width and height properties.
|
||||
|
||||
\section{Classes by category}\label{proplistclassesbycat}
|
||||
|
||||
A classification of property sheet classes by category.
|
||||
|
||||
\subsection{Data classes}
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item \helpref{wxProperty}{wxproperty}
|
||||
\item \helpref{wxPropertyValue}{wxpropertyvalue}
|
||||
\item \helpref{wxPropertySheet}{wxpropertysheet}
|
||||
\end{itemize}
|
||||
|
||||
\subsection{Validator classes}\label{proplistvalidatorclasses}
|
||||
|
||||
Validators check that the values the user has entered for a property are
|
||||
valid. They can also define specific ways of entering data, such as a
|
||||
file selector for a filename, and they are responsible for transferring
|
||||
values between the wxProperty and the physical display.
|
||||
|
||||
Base classes:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item \helpref{wxPropertyValidator}{wxproperty}
|
||||
\item \helpref{wxPropertyListValidator}{wxpropertylistvalidator}
|
||||
\item \helpref{wxPropertyFormValidator}{wxpropertyformvalidator}
|
||||
\end{itemize}
|
||||
|
||||
List view validators:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item \helpref{wxBoolListValidator}{wxboollistvalidator}
|
||||
\item \helpref{wxFilenameListValidator}{wxfilenamelistvalidator}
|
||||
\item \helpref{wxIntegerListValidator}{wxintegerlistvalidator}
|
||||
\item \helpref{wxListOfStringsListValidator}{wxlistofstringslistvalidator}
|
||||
\item \helpref{wxRealListValidator}{wxreallistvalidator}
|
||||
\item \helpref{wxStringListValidator}{wxstringlistvalidator}
|
||||
\end{itemize}
|
||||
|
||||
Form view validators:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item \helpref{wxBoolFormValidator}{wxboolformvalidator}
|
||||
\item \helpref{wxIntegerFormValidator}{wxintegerformvalidator}
|
||||
\item \helpref{wxRealFormValidator}{wxrealformvalidator}
|
||||
\item \helpref{wxStringFormValidator}{wxstringformvalidator}
|
||||
\end{itemize}
|
||||
|
||||
\subsection{View classes}\label{proplistviewclasses}
|
||||
|
||||
View classes mediate between a property sheet and a physical window.
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item \helpref{wxPropertyView}{wxpropertyview}
|
||||
\item \helpref{wxPropertyListView}{wxpropertylistview}
|
||||
\item \helpref{wxPropertyFormView}{wxpropertyformview}
|
||||
\end{itemize}
|
||||
|
||||
\subsection{Window classes}\label{proplistwindowclasses}
|
||||
|
||||
The class library defines some window classes that can be used as-is with a suitable
|
||||
view class and property sheet.
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item \helpref{wxPropertyFormFrame}{wxpropertyformframe}
|
||||
\item \helpref{wxPropertyFormDialog}{wxpropertyformdialog}
|
||||
\item \helpref{wxPropertyFormPanel}{wxpropertyformpanel}
|
||||
\item \helpref{wxPropertyListFrame}{wxpropertylistframe}
|
||||
\item \helpref{wxPropertyListDialog}{wxpropertylistdialog}
|
||||
\item \helpref{wxPropertyListPanel}{wxpropertylistpanel}
|
||||
\end{itemize}
|
||||
|
||||
\subsection{Registry classes}
|
||||
|
||||
A validator registry is a list of validators that can be applied to properties in a property sheet.
|
||||
There may be one or more registries per property view.
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item \helpref{wxPropertyValidatorRegistry}{wxpropertyvalidatorregistry}
|
||||
\end{itemize}
|
@@ -1,110 +0,0 @@
|
||||
\section{\class{wxPropertyListValidator}}\label{wxpropertylistvalidator}
|
||||
|
||||
The {\bf wxPropertyListValidator} abstract class is the base class for
|
||||
deriving validators for property lists.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{wxPropertyListValidator overview}{wxpropertylistvalidatoroverview}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxPropertyListValidator::wxPropertyListValidator}
|
||||
|
||||
\func{void}{wxPropertyListValidator}{\param{long}{ flags = wxPROP\_ALLOW\_TEXT\_EDITING}}
|
||||
|
||||
Constructor.
|
||||
|
||||
\membersection{wxPropertyListValidator::\destruct{wxPropertyListValidator}}
|
||||
|
||||
\func{void}{\destruct{wxPropertyListValidator}}{\void}
|
||||
|
||||
Destructor.
|
||||
|
||||
\membersection{wxPropertyListValidator::OnCheckValue}
|
||||
|
||||
\func{bool}{OnCheckValue}{\param{wxProperty *}{property}, \param{wxPropertyListView *}{view},
|
||||
\param{wxWindow *}{parentWindow}}
|
||||
|
||||
Called when the Tick (Confirm) button is pressed or focus is list. Return false if the value
|
||||
was invalid, which is a signal restores the old value. Return true if the value was valid.
|
||||
|
||||
\membersection{wxPropertyListValidator::OnClearControls}
|
||||
|
||||
\func{bool}{OnClearControls}{\param{wxProperty *}{property}, \param{wxPropertyListView *}{view},
|
||||
\param{wxWindow *}{parentWindow}}
|
||||
|
||||
Allows the clearing (enabling, disabling) of property list controls, when the focus leaves the current property.
|
||||
|
||||
\membersection{wxPropertyListValidator::OnClearDetailControls}
|
||||
|
||||
\func{bool}{OnClearDetailControls}{\param{wxProperty *}{property}, \param{wxPropertyListView *}{view},
|
||||
\param{wxWindow *}{parentWindow}}
|
||||
|
||||
Called when the focus is lost, if the validator is in detailed editing mode.
|
||||
|
||||
\membersection{wxPropertyListValidator::OnDisplayValue}
|
||||
|
||||
\func{bool}{OnDisplayValue}{\param{wxProperty *}{property}, \param{wxPropertyListView *}{view},
|
||||
\param{wxWindow *}{parentWindow}}
|
||||
|
||||
Should display the value in the appropriate controls. The default implementation gets the
|
||||
textual value from the property and inserts it into the text edit control.
|
||||
|
||||
\membersection{wxPropertyListValidator::OnDoubleClick}
|
||||
|
||||
\func{bool}{OnDoubleClick}{\param{wxProperty *}{property}, \param{wxPropertyListView *}{view},
|
||||
\param{wxWindow *}{parentWindow}}
|
||||
|
||||
Called when the property is double clicked. Extra functionality can be provided,
|
||||
such as cycling through possible values.
|
||||
|
||||
\membersection{wxPropertyListValidator::OnEdit}
|
||||
|
||||
\func{bool}{OnEdit}{\param{wxProperty *}{property}, \param{wxPropertyListView *}{view},
|
||||
\param{wxWindow *}{parentWindow}}
|
||||
|
||||
Called when the Edit (detailed editing) button is pressed. The default implementation
|
||||
calls wxPropertyListView::BeginDetailedEditing; a filename validator (for example) overrides
|
||||
this function to show the file selector.
|
||||
|
||||
\membersection{wxPropertyListValidator::OnPrepareControls}
|
||||
|
||||
\func{bool}{OnPrepareControls}{\param{wxProperty *}{property}, \param{wxPropertyListView *}{view},
|
||||
\param{wxWindow *}{parentWindow}}
|
||||
|
||||
Called to allow the validator to setup the display, such enabling or disabling buttons, and
|
||||
setting the values and selection in the standard listbox control (the one optionally used for displaying
|
||||
value options).
|
||||
|
||||
\membersection{wxPropertyListValidator::OnPrepareDetailControls}
|
||||
|
||||
\func{bool}{OnPrepareDetailControls}{\param{wxProperty *}{property}, \param{wxPropertyListView *}{view},
|
||||
\param{wxWindow *}{parentWindow}}
|
||||
|
||||
Called when the property is edited `in detail', i.e. when the Edit button is pressed.
|
||||
|
||||
\membersection{wxPropertyListValidator::OnRetrieveValue}
|
||||
|
||||
\func{bool}{OnRetrieveValue}{\param{wxProperty *}{property}, \param{wxPropertyListView *}{view},
|
||||
\param{wxWindow *}{parentWindow}}
|
||||
|
||||
Called when Tick (Confirm) is pressed or focus is lost or view wants to update
|
||||
the property list. Should do the transfer from the property editing area to the property itself
|
||||
|
||||
\membersection{wxPropertyListValidator::OnSelect}
|
||||
|
||||
\func{bool}{OnSelect}{\param{bool}{ select}, \param{wxProperty *}{property}, \param{wxPropertyListView *}{view},
|
||||
\param{wxWindow *}{parentWindow}}
|
||||
|
||||
Called when the property is selected or deselected: typically displays the value
|
||||
in the edit control (having chosen a suitable control to display: (non)editable text or listbox).
|
||||
|
||||
\membersection{wxPropertyListValidator::OnValueListSelect}
|
||||
|
||||
\func{bool}{OnValueListSelect}{\param{wxProperty *}{property}, \param{wxPropertyListView *}{view},
|
||||
\param{wxWindow *}{parentWindow}}
|
||||
|
||||
Called when the value listbox is selected. The default behaviour is to copy
|
||||
string to text control, and retrieve the value into the property.
|
||||
|
@@ -1,31 +0,0 @@
|
||||
\section{\class{wxListOfStringsListValidator}}\label{wxlistofstringslistvalidator}
|
||||
|
||||
This class validates a list of strings for a list view. When editing the property,
|
||||
a dialog box is presented for adding, deleting or editing entries in the list.
|
||||
At present no constraints may be supplied.
|
||||
|
||||
You can construct a string list property value by constructing a wxStringList object.
|
||||
|
||||
For example:
|
||||
|
||||
\begin{verbatim}
|
||||
myListValidatorRegistry.RegisterValidator((wxString)"stringlist",
|
||||
new wxListOfStringsListValidator);
|
||||
|
||||
wxStringList *strings = new wxStringList("earth", "fire", "wind", "water", NULL);
|
||||
|
||||
sheet->AddProperty(new wxProperty("fred", strings, "stringlist"));
|
||||
\end{verbatim}
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{Validator classes}{proplistvalidatorclasses}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxListOfStringsListValidator::wxListofStringsListValidator}
|
||||
|
||||
\func{void}{wxListOfStringsListValidator}{\param{long}{ flags=0}}
|
||||
|
||||
Constructor.
|
||||
|
@@ -1,111 +0,0 @@
|
||||
\section{\class{wxPropertyListView}}\label{wxpropertylistview}
|
||||
|
||||
The {\bf wxPropertyListView} class shows a wxPropertySheet as a Visual Basic-style property list.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{wxPropertyListView overview}{wxpropertylistviewoverview}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxPropertyListView::wxPropertyListView}
|
||||
|
||||
\func{void}{wxPropertyListView}{ \param{wxPanel*} propPanel = NULL, \param{long}{ flags = wxPROP\_BUTTON\_DEFAULT}}
|
||||
|
||||
Constructor.
|
||||
|
||||
The {\it flags} argument can be a bit list of the following:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item wxPROP\_BUTTON\_CLOSE
|
||||
\item wxPROP\_BUTTON\_OK
|
||||
\item wxPROP\_BUTTON\_CANCEL
|
||||
\item wxPROP\_BUTTON\_CHECK\_CROSS
|
||||
\item wxPROP\_BUTTON\_HELP
|
||||
\item wxPROP\_DYNAMIC\_VALUE\_FIELD
|
||||
\item wxPROP\_PULLDOWN
|
||||
\end{itemize}
|
||||
|
||||
\membersection{wxPropertyListView::\destruct{wxPropertyListView}}
|
||||
|
||||
\func{void}{\destruct{wxPropertyListView}}{\void}
|
||||
|
||||
Destructor.
|
||||
|
||||
\membersection{wxPropertyListView::AssociatePanel}\label{wxpropertylistviewassociatepanel}
|
||||
|
||||
\func{void}{AssociatePanel}{\param{wxPanel *}{panel}}
|
||||
|
||||
Associates the window on which the controls will be displayed, with the view (sets an internal pointer to the window).
|
||||
|
||||
\membersection{wxPropertyListView::BeginShowingProperty}\label{wxpropertylistviewbeginshowingproperty}
|
||||
|
||||
\func{bool}{BeginShowingProperty}{\param{wxProperty *}{property}}
|
||||
|
||||
Finds the appropriate validator and loads the property into the controls, by calling
|
||||
wxPropertyValidator::OnPrepareControls and then wxPropertyListView::DisplayProperty.
|
||||
|
||||
\membersection{wxPropertyListView::DisplayProperty}\label{wxpropertylistviewdisplayproperty}
|
||||
|
||||
\func{bool}{DisplayProperty}{\param{wxProperty *}{property}}
|
||||
|
||||
Calls wxPropertyValidator::OnDisplayValue for the current property's validator. This function
|
||||
gets called by wxPropertyListView::BeginShowingProperty, which is in turn called
|
||||
from ShowProperty, called by OnPropertySelect, called by the listbox callback when selected.
|
||||
|
||||
\membersection{wxPropertyListView::EndShowingProperty}\label{wxpropertylistviewendshowingproperty}
|
||||
|
||||
\func{bool}{EndShowingProperty}{\param{wxProperty *}{property}}
|
||||
|
||||
Finds the appropriate validator and unloads the property from the controls, by calling
|
||||
wxPropertyListView::RetrieveProperty, wxPropertyValidator::OnClearControls and (if we're in
|
||||
detailed editing mode) wxPropertyValidator::OnClearDetailControls.
|
||||
|
||||
\membersection{wxPropertyListView::GetPanel}\label{wxpropertylistviewgetpanel}
|
||||
|
||||
\func{wxPanel *}{GetPanel}{\void}
|
||||
|
||||
Returns the panel associated with the view.
|
||||
|
||||
\membersection{wxPropertyListView::GetManagedWindow}\label{wxpropertylistviewgetmanagedwindow}
|
||||
|
||||
\func{wxWindow *}{GetManagedWindow}{\void}
|
||||
|
||||
Returns the managed window (a frame or dialog) associated with the view.
|
||||
|
||||
\membersection{wxPropertyListView::GetWindowCancelButton}\label{wxpropertylistviewgetwindowcancelbutton}
|
||||
|
||||
\func{wxButton *}{GetWindowCancelButton}{\void}
|
||||
|
||||
Returns the window cancel button, if any.
|
||||
|
||||
\membersection{wxPropertyListView::GetWindowCloseButton}\label{wxpropertylistviewgetwindowclosebutton}
|
||||
|
||||
\func{wxButton *}{GetWindowCloseButton}{\void}
|
||||
|
||||
Returns the window close or OK button, if any.
|
||||
|
||||
\membersection{wxPropertyListView::GetWindowHelpButton}\label{wxpropertylistviewgetwindowhelpbutton}
|
||||
|
||||
\func{wxButton *}{GetWindowHelpButton}{\void}
|
||||
|
||||
Returns the window help button, if any.
|
||||
|
||||
\membersection{wxPropertyListView::SetManagedWindow}\label{wxpropertylistviewsetmanagedwindow}
|
||||
|
||||
\func{void}{SetManagedWindow}{\param{wxWindow *}{win}}
|
||||
|
||||
Sets the managed window (a frame or dialog) associated with the view.
|
||||
|
||||
\membersection{wxPropertyListView::UpdatePropertyDisplayInList}\label{wxpropertylistviewupdatepropdisplay}
|
||||
|
||||
\func{bool}{UpdatePropertyDisplayInList}{\param{wxProperty *}{property}}
|
||||
|
||||
Updates the display for the given changed property.
|
||||
|
||||
\membersection{wxPropertyListView::UpdatePropertyList}\label{wxpropertylistviewupdateproplist}
|
||||
|
||||
\func{bool}{UpdatePropertyList}{\param{bool }{clearEditArea = true}}
|
||||
|
||||
Updates the whole property list display.
|
||||
|
@@ -1,42 +0,0 @@
|
||||
\section{\class{wxPropertyValidatorRegistry}}\label{wxpropertyvalidatorregistry}
|
||||
|
||||
The {\bf wxPropertyValidatorRegistry} class is used for storing validators,
|
||||
indexed by the `role name' of the property, by which groups of property
|
||||
can be identified for the purpose of validation and editing.
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxPropertyValidatorRegistry::wxPropertyValidatorRegistry}
|
||||
|
||||
\func{void}{wxPropertyValidatorRegistry}{\void}
|
||||
|
||||
Constructor.
|
||||
|
||||
\membersection{wxPropertyValidatorRegistry::\destruct{wxPropertyValidatorRegistry}}
|
||||
|
||||
\func{void}{\destruct{wxPropertyValidatorRegistry}}{\void}
|
||||
|
||||
Destructor.
|
||||
|
||||
\membersection{wxPropertyValidatorRegistry::Clear}
|
||||
|
||||
\func{void}{ClearRegistry}{\void}
|
||||
|
||||
Clears the registry, deleting the validators.
|
||||
|
||||
\membersection{wxPropertyValidatorRegistry::GetValidator}
|
||||
|
||||
\func{wxPropertyValidator *}{GetValidator}{\param{wxString\& }{roleName}}
|
||||
|
||||
Retrieve a validator by the property role name.
|
||||
|
||||
\membersection{wxPropertyValidatorRegistry::RegisterValidator}\label{wxpropertyvalidatorregistervalidator}
|
||||
|
||||
\func{void}{RegisterValidator}{\param{wxString\& }{roleName}, \param{wxPropertyValidator *}{validator}}
|
||||
|
||||
Register a validator with the registry. {\it roleName} is a name indicating the
|
||||
role of the property, such as ``filename''. Later, when a validator is chosen for
|
||||
editing a property, this role name is matched against the class names of the property,
|
||||
if the property does not already have a validator explicitly associated with it.
|
||||
|
||||
|
@@ -1,17 +0,0 @@
|
||||
\section{\class{wxRealFormValidator}}\label{wxrealformvalidator}
|
||||
|
||||
This class validates a range of real values for form views. The associated panel item must be a wxText.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{Validator classes}{proplistvalidatorclasses}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxRealFormValidator::wxRealFormValidator}
|
||||
|
||||
\func{void}{wxRealFormValidator}{\param{float }{min=0.0}, \param{float }{max=0.0},
|
||||
\param{long}{ flags=0}}
|
||||
|
||||
Constructor. Assigning zero to minimum and maximum values indicates that there is no range to check.
|
||||
|
@@ -1,19 +0,0 @@
|
||||
\section{\class{wxRealListValidator}}\label{wxreallistvalidator}
|
||||
|
||||
This class validates a range of real values for property lists.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{Validator classes}{proplistvalidatorclasses}
|
||||
|
||||
\helpref{wxPropertySheet overview}{wxpropertysheetoverview}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxRealListValidator::wxRealListValidator}
|
||||
|
||||
\func{void}{wxRealListValidator}{\param{float }{min=0.0}, \param{float }{max=0.0},
|
||||
\param{long}{ flags=wxPROP\_ALLOW\_TEXT\_EDITING}}
|
||||
|
||||
Constructor. Assigning zero to minimum and maximum values indicates that there is no range to check.
|
||||
|
@@ -1,83 +0,0 @@
|
||||
\section{\class{wxPropertySheet}}\label{wxpropertysheet}
|
||||
|
||||
The {\bf wxPropertySheet} class is used for storing a number of
|
||||
wxProperty objects (essentially names and values).
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{wxPropertySheet overview}{wxpropertysheetoverview}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxPropertySheet::wxPropertySheet}
|
||||
|
||||
\func{void}{wxPropertySheet}{\param{const wxString}{ name = ""}}
|
||||
|
||||
Constructor. Sets property sheet's name to name if present.
|
||||
|
||||
\membersection{wxPropertySheet::\destruct{wxPropertySheet}}
|
||||
|
||||
\func{void}{\destruct{wxPropertySheet}}{\void}
|
||||
|
||||
Destructor. Destroys all contained properties.
|
||||
|
||||
\membersection{wxPropertySheet::AddProperty}\label{wxpropertysheetaddproperty}
|
||||
|
||||
\func{void}{AddProperty}{\param{wxProperty *}{property}}
|
||||
|
||||
Adds a property to the sheet.
|
||||
|
||||
\membersection{wxPropertySheet::Clear}\label{wxpropertysheetclear}
|
||||
|
||||
\func{void}{Clear}{\void}
|
||||
|
||||
Clears all the properties from the sheet (deleting them).
|
||||
|
||||
\membersection{wxPropertySheet::GetName}\label{wxpropertysheetgetname}
|
||||
|
||||
\func{wxString}{GetName}{\void}
|
||||
|
||||
Gets the sheet's name.
|
||||
|
||||
\membersection{wxPropertySheet::GetProperty}\label{wxpropertysheetgetproperty}
|
||||
|
||||
\func{wxProperty *}{GetProperty}{\param{wxString}{ name}}
|
||||
|
||||
Gets a property by name.
|
||||
|
||||
\membersection{wxPropertySheet::GetProperties}\label{wxpropertysheetgetproperties}
|
||||
|
||||
\func{wxList\&}{GetProperties}{\void}
|
||||
|
||||
Returns a reference to the internal list of properties.
|
||||
|
||||
\membersection{wxPropertySheet::HasProperty}\label{wxpropertysheethasproperty}
|
||||
|
||||
\func{bool}{HasProperty}{\param{wxString}{ propname}}
|
||||
|
||||
Returns true if sheet contains property propname.
|
||||
|
||||
\membersection{wxPropertySheet::RemoveProperty}\label{wxpropertysheetremoveproperty}
|
||||
|
||||
\func{void}{RemoveProperty}{\param{wxString}{ propname}}
|
||||
|
||||
Removes property propname from sheet, deleting it.
|
||||
|
||||
\membersection{wxPropertySheet::SetName}\label{wxpropertysheetsetname}
|
||||
|
||||
\func{void}{SetName}{\param{wxString}{ sheetname}}
|
||||
|
||||
Set the sheet's name to sheetname
|
||||
|
||||
\membersection{wxPropertySheet::SetProperty}\label{wxpropertysheetsetproperty}
|
||||
|
||||
\func{bool}{SetProperty}{\param{wxString}{ propname}, \param{wxPropertyValue}{ value}}
|
||||
|
||||
Sets property propname to value. Returns false if property is not a member of sheet.
|
||||
|
||||
\membersection{wxPropertySheet::SetAllModified}
|
||||
|
||||
\func{void}{SetAllModified}{\param{bool}{ flag}}
|
||||
|
||||
Sets the `modified' flag of each property value.
|
||||
|
@@ -1,18 +0,0 @@
|
||||
\section{\class{wxStringListValidator}}\label{wxstringlistvalidator}
|
||||
|
||||
This class validates a string value, with an optional choice of possible values.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{Validator classes}{proplistvalidatorclasses}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxStringListValidator::wxStringListValidator}
|
||||
|
||||
\func{void}{wxStringListValidator}{\param{wxStringList *}{list=NULL}, \param{long}{ flags=0}}
|
||||
|
||||
Constructor. Supply a list of strings to indicate a choice, or no strings to allow the
|
||||
user to freely edit the string. The string list will be deleted when the validator is deleted.
|
||||
|
||||
|
@@ -1,20 +0,0 @@
|
||||
\section{\class{wxStringFormValidator}}\label{wxstringformvalidator}
|
||||
|
||||
This class validates a string value for a form view, with an optional choice of possible values.
|
||||
The associated panel item must be a wxText, wxListBox or wxChoice. For wxListBox and wxChoice items,
|
||||
if the item is empty, the validator attempts to initialize the item from the strings in
|
||||
the validator.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{Validator classes}{proplistvalidatorclasses}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxStringFormValidator::wxStringFormValidator}
|
||||
|
||||
\func{void}{wxStringFormValidator}{\param{wxStringList *}{list=NULL}, \param{long}{ flags=0}}
|
||||
|
||||
Constructor. Supply a list of strings to indicate a choice, or no strings to allow the
|
||||
user to freely edit the string. The string list will be deleted when the validator is deleted.
|
||||
|
@@ -1,242 +0,0 @@
|
||||
\section{\class{wxPropertyValue}}\label{wxpropertyvalue}
|
||||
|
||||
The {\bf wxPropertyValue} class represents the value of a property,
|
||||
and is normally associated with a wxProperty object.
|
||||
|
||||
A wxPropertyValue has one of the following types:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item wxPropertyValueNull
|
||||
\item wxPropertyValueInteger
|
||||
\item wxPropertyValueReal
|
||||
\item wxPropertyValueBool
|
||||
\item wxPropertyValueString
|
||||
\item wxPropertyValueList
|
||||
\item wxPropertyValueIntegerPtr
|
||||
\item wxPropertyValueRealPtr
|
||||
\item wxPropertyValueBoolPtr
|
||||
\item wxPropertyValueStringPtr
|
||||
\end{itemize}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxPropertyValue::wxPropertyValue}
|
||||
|
||||
\func{void}{wxPropertyValue}{\void}
|
||||
|
||||
Default constructor.
|
||||
|
||||
\func{void}{wxPropertyValue}{\param{const wxPropertyValue\& }{copyFrom}}
|
||||
|
||||
Copy constructor.
|
||||
|
||||
\func{void}{wxPropertyValue}{\param{char *}{val}}
|
||||
|
||||
Construction from a string value.
|
||||
|
||||
\func{void}{wxPropertyValue}{\param{long}{ val}}
|
||||
|
||||
Construction from an integer value. You may need to cast to (long) to
|
||||
avoid confusion with other constructors (such as the bool constructor).
|
||||
|
||||
\func{void}{wxPropertyValue}{\param{bool}{ val}}
|
||||
|
||||
Construction from a boolean value.
|
||||
|
||||
\func{void}{wxPropertyValue}{\param{float}{ val}}
|
||||
|
||||
Construction from a floating point value.
|
||||
|
||||
\func{void}{wxPropertyValue}{\param{double}{ val}}
|
||||
|
||||
Construction from a floating point value.
|
||||
|
||||
\func{void}{wxPropertyValue}{\param{wxList *}{ val}}
|
||||
|
||||
Construction from a list of wxPropertyValue objects. The
|
||||
list, but not each contained wxPropertyValue, will be deleted
|
||||
by the constructor. The wxPropertyValues will be assigned to
|
||||
this wxPropertyValue list. In other words, so do not delete wxList or
|
||||
its data after calling this constructor.
|
||||
|
||||
\func{void}{wxPropertyValue}{\param{wxStringList *}{ val}}
|
||||
|
||||
Construction from a list of strings. The list (including the strings
|
||||
contained in it) will be deleted by the constructor, so do not
|
||||
destroy {\it val} explicitly.
|
||||
|
||||
\func{void}{wxPropertyValue}{\param{char **}{val}}
|
||||
|
||||
Construction from a string pointer.
|
||||
|
||||
\func{void}{wxPropertyValue}{\param{long *}{val}}
|
||||
|
||||
Construction from an integer pointer.
|
||||
|
||||
\func{void}{wxPropertyValue}{\param{bool *}{val}}
|
||||
|
||||
Construction from an boolean pointer.
|
||||
|
||||
\func{void}{wxPropertyValue}{\param{float *}{val}}
|
||||
|
||||
Construction from a floating point pointer.
|
||||
|
||||
The last four constructors use pointers to various C++ types, and do not
|
||||
store the types themselves; this allows the values to stand in for actual
|
||||
data values defined elsewhere.
|
||||
|
||||
\membersection{wxPropertyValue::\destruct{wxPropertyValue}}
|
||||
|
||||
\func{void}{\destruct{wxPropertyValue}}{\void}
|
||||
|
||||
Destructor.
|
||||
|
||||
\membersection{wxPropertyValue::Append}
|
||||
|
||||
\func{void}{Append}{\param{wxPropertyValue *}{expr}}
|
||||
|
||||
Appends a property value to the list.
|
||||
|
||||
\membersection{wxPropertyValue::BoolValue}
|
||||
|
||||
\func{bool}{BoolValue}{\void}
|
||||
|
||||
Returns the boolean value.
|
||||
|
||||
\membersection{wxPropertyValue::BoolValuePtr}
|
||||
|
||||
\func{bool *}{BoolValuePtr}{\void}
|
||||
|
||||
Returns the pointer to the boolean value.
|
||||
|
||||
\membersection{wxPropertyValue::ClearList}
|
||||
|
||||
\func{void}{ClearList}{\void}
|
||||
|
||||
Deletes the contents of the list.
|
||||
|
||||
\membersection{wxPropertyValue::Delete}
|
||||
|
||||
\func{void}{Delete}{\param{wxPropertyValue *}{expr}}
|
||||
|
||||
Deletes {\it expr} from this list.
|
||||
|
||||
\membersection{wxPropertyValue::GetFirst}
|
||||
|
||||
\func{wxPropertyValue *}{GetFirst}{\void}
|
||||
|
||||
Gets the first value in the list.
|
||||
|
||||
\membersection{wxPropertyValue::GetLast}
|
||||
|
||||
\func{wxPropertyValue *}{GetFirst}{\void}
|
||||
|
||||
Gets the last value in the list.
|
||||
|
||||
\membersection{wxPropertyValue::GetModified}
|
||||
|
||||
\func{bool}{GetModified}{\void}
|
||||
|
||||
Returns true if the value was modified since being created
|
||||
(or since SetModified was called).
|
||||
|
||||
\membersection{wxPropertyValue::GetNext}
|
||||
|
||||
\func{wxPropertyValue *}{GetNext}{\void}
|
||||
|
||||
Gets the next value in the list (the one after `this').
|
||||
|
||||
\membersection{wxPropertyValue::GetStringRepresentation}
|
||||
|
||||
\func{wxString}{GetStringRepresentation}{\void}
|
||||
|
||||
Gets a string representation of the value.
|
||||
|
||||
\membersection{wxPropertyValue::IntegerValue}
|
||||
|
||||
\func{long}{IntegerValue}{\void}
|
||||
|
||||
Returns the integer value.
|
||||
|
||||
\membersection{wxPropertyValue::Insert}
|
||||
|
||||
\func{void}{Insert}{\param{wxPropertyValue *}{expr}}
|
||||
|
||||
Inserts a property value at the front of a list.
|
||||
|
||||
\membersection{wxPropertyValue::IntegerValuePtr}
|
||||
|
||||
\func{long *}{IntegerValuePtr}{\void}
|
||||
|
||||
Returns the pointer to the integer value.
|
||||
|
||||
\membersection{wxPropertyValue::Nth}
|
||||
|
||||
\func{wxPropertyValue *}{Nth}{\param{int}{ n}}
|
||||
|
||||
Returns the nth value of a list expression (starting from zero).
|
||||
|
||||
\membersection{wxPropertyValue::Number}
|
||||
|
||||
\func{int}{Number}{\void}
|
||||
|
||||
Returns the number of elements in a list expression.
|
||||
|
||||
\membersection{wxPropertyValue::RealValue}
|
||||
|
||||
\func{float}{RealValue}{\void}
|
||||
|
||||
Returns the floating point value.
|
||||
|
||||
\membersection{wxPropertyValue::RealValuePtr}
|
||||
|
||||
\func{float *}{RealValuePtr}{\void}
|
||||
|
||||
Returns the pointer to the floating point value.
|
||||
|
||||
\membersection{wxPropertyValue::SetModified}
|
||||
|
||||
\func{void}{SetModified}{\param{bool}{ flag}}
|
||||
|
||||
Sets the `modified' flag.
|
||||
|
||||
\membersection{wxPropertyValue::StringValue}
|
||||
|
||||
\func{char *}{StringValue}{\void}
|
||||
|
||||
Returns the string value.
|
||||
|
||||
\membersection{wxPropertyValue::StringValuePtr}
|
||||
|
||||
\func{char **}{StringValuePtr}{\void}
|
||||
|
||||
Returns the pointer to the string value.
|
||||
|
||||
\membersection{wxPropertyValue::Type}
|
||||
|
||||
\func{wxPropertyValueType}{Type}{\void}
|
||||
|
||||
Returns the value type.
|
||||
|
||||
\membersection{wxPropertyValue::operator $=$}
|
||||
|
||||
\func{void}{operator $=$}{\param{const wxPropertyValue\& }{val}}
|
||||
|
||||
\func{void}{operator $=$}{\param{const char *}{val}}
|
||||
|
||||
\func{void}{operator $=$}{\param{const long }{val}}
|
||||
|
||||
\func{void}{operator $=$}{\param{const bool }{val}}
|
||||
|
||||
\func{void}{operator $=$}{\param{const float }{val}}
|
||||
|
||||
\func{void}{operator $=$}{\param{const char **}{val}}
|
||||
|
||||
\func{void}{operator $=$}{\param{const long *}{val}}
|
||||
|
||||
\func{void}{operator $=$}{\param{const bool *}{val}}
|
||||
|
||||
\func{void}{operator $=$}{\param{const float *}{val}}
|
||||
|
||||
Assignment operators.
|
||||
|
@@ -1,41 +0,0 @@
|
||||
\section{\class{wxPropertyValidator}}\label{wxpropertyvalidator}
|
||||
|
||||
The {\bf wxPropertyValidator} abstract class is the base class for deriving
|
||||
validators for properties.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{wxPropertyValidator overview}{wxpropertyvalidatoroverview}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxPropertyValidator::wxPropertyValidator}
|
||||
|
||||
\func{void}{wxPropertyValidator}{\param{long}{ flags = 0}}
|
||||
|
||||
Constructor.
|
||||
|
||||
\membersection{wxPropertyValidator::\destruct{wxPropertyValidator}}
|
||||
|
||||
\func{void}{\destruct{wxPropertyValidator}}{\void}
|
||||
|
||||
Destructor.
|
||||
|
||||
\membersection{wxPropertyValidator::GetFlags}
|
||||
|
||||
\func{long}{GetFlags}{\void}
|
||||
|
||||
Returns the flags for the validator.
|
||||
|
||||
\membersection{wxPropertyValidator::GetValidatorProperty}
|
||||
|
||||
\func{wxProperty *}{GetValidatorProperty}{\void}
|
||||
|
||||
Gets the property for the validator.
|
||||
|
||||
\membersection{wxPropertyValidator::SetValidatorProperty}
|
||||
|
||||
\func{void}{SetValidatorProperty}{\param{wxProperty *}{property}}
|
||||
|
||||
Sets the property for the validator.
|
||||
|
@@ -1,111 +0,0 @@
|
||||
\section{\class{wxPropertyView}}\label{wxpropertyview}
|
||||
|
||||
The {\bf wxPropertyView} abstract class is the base class for views
|
||||
of property sheets, acting as intermediaries between properties and
|
||||
actual windows.
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{wxPropertyView overview}{wxpropertyviewoverview}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxPropertyView::wxPropertyView}
|
||||
|
||||
\func{void}{wxPropertyView}{\param{long}{ flags = wxPROP\_BUTTON\_DEFAULT}}
|
||||
|
||||
Constructor.
|
||||
|
||||
The {\it flags} argument can be a bit list of the following:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item wxPROP\_BUTTON\_CLOSE
|
||||
\item wxPROP\_BUTTON\_OK
|
||||
\item wxPROP\_BUTTON\_CANCEL
|
||||
\item wxPROP\_BUTTON\_CHECK\_CROSS
|
||||
\item wxPROP\_BUTTON\_HELP
|
||||
\item wxPROP\_DYNAMIC\_VALUE\_FIELD
|
||||
\item wxPROP\_PULLDOWN
|
||||
\end{itemize}
|
||||
|
||||
\membersection{wxPropertyView::\destruct{wxPropertyView}}
|
||||
|
||||
\func{void}{\destruct{wxPropertyView}}{\void}
|
||||
|
||||
Destructor.
|
||||
|
||||
\membersection{wxPropertyView::AddRegistry}\label{wxpropertyviewaddregistry}
|
||||
|
||||
\func{void}{AddRegistry}{\param{wxPropertyValidatorRegistry *}{registry}}
|
||||
|
||||
Adds a registry (list of property validators) the view's list of registries, which is initially empty.
|
||||
|
||||
\membersection{wxPropertyView::FindPropertyValidator}\label{wxpropertyviewfindpropertyvalidator}
|
||||
|
||||
\func{wxPropertyValidator *}{FindPropertyValidator}{\param{wxProperty *}{property}}
|
||||
|
||||
Finds the property validator that is most appropriate to this property.
|
||||
|
||||
\membersection{wxPropertyView::GetPropertySheet}\label{wxpropertyviewgetpropertysheet}
|
||||
|
||||
\func{wxPropertySheet *}{GetPropertySheet}{\void}
|
||||
|
||||
Gets the property sheet for this view.
|
||||
|
||||
\membersection{wxPropertyView::GetRegistryList}\label{wxpropertyviewgetregistrylist}
|
||||
|
||||
\func{wxList\&}{GetRegistryList}{\void}
|
||||
|
||||
Returns a reference to the list of property validator registries.
|
||||
|
||||
\membersection{wxPropertyView::OnOk}\label{wxpropertyviewonok}
|
||||
|
||||
\func{void}{OnOk}{\void}
|
||||
|
||||
Virtual function that will be called when the OK button on the physical window is pressed (if it exists).
|
||||
|
||||
\membersection{wxPropertyView::OnCancel}\label{wxpropertyviewoncancel}
|
||||
|
||||
\func{void}{OnCancel}{\void}
|
||||
|
||||
Virtual function that will be called when the Cancel button on the physical window is pressed (if it exists).
|
||||
|
||||
\membersection{wxPropertyView::OnClose}\label{wxpropertyviewonclose}
|
||||
|
||||
\func{bool}{OnClose}{\void}
|
||||
|
||||
Virtual function that will be called when the physical window is closed. The default implementation returns false.
|
||||
|
||||
\membersection{wxPropertyView::OnHelp}\label{wxpropertyviewonhelp}
|
||||
|
||||
\func{void}{OnHelp}{\void}
|
||||
|
||||
Virtual function that will be called when the Help button on the physical window is pressed (if it exists).
|
||||
|
||||
\membersection{wxPropertyView::OnPropertyChanged}\label{wxpropertyviewonpropertychanged}
|
||||
|
||||
\func{void}{OnPropertyChanged}{\param{wxProperty *}{property}}
|
||||
|
||||
Virtual function called by a view or validator when a property's value changed. Validators
|
||||
must be written correctly for this to be called. You can override this function
|
||||
to respond immediately to property value changes.
|
||||
|
||||
\membersection{wxPropertyView::OnUpdateView}\label{wxpropertyviewonupdateview}
|
||||
|
||||
\func{bool}{OnUpdateView}{\void}
|
||||
|
||||
Called by the viewed object to update the view. The default implementation just returns
|
||||
false.
|
||||
|
||||
\membersection{wxPropertyView::SetPropertySheet}\label{wxpropertyviewsetpropertysheet}
|
||||
|
||||
\func{void}{SetPropertySheet}{\param{wxPropertySheet *}{sheet}}
|
||||
|
||||
Sets the property sheet for this view.
|
||||
|
||||
\membersection{wxPropertyView::ShowView}\label{wxpropertyviewshowview}
|
||||
|
||||
\func{void}{ShowView}{\param{wxPropertySheet *}{sheet}, \param{wxPanel *}{panel}}
|
||||
|
||||
Associates this view with the given panel, and shows the view.
|
||||
|
@@ -1,55 +0,0 @@
|
||||
;;; Tex2RTF initialisation file, using NO style sheet for HTML. See
|
||||
;;; tex2rtf_css.ini for a version using a style sheet. You can use
|
||||
;;; -macros tex2rtf.ini to specify the ini file.
|
||||
runTwice = yes
|
||||
titleFontSize = 12
|
||||
authorFontSize = 10
|
||||
authorFontSize = 10
|
||||
chapterFontSize = 12
|
||||
sectionFontSize = 12
|
||||
subsectionFontSize = 12
|
||||
contentsDepth = 2
|
||||
headerRule = yes
|
||||
footerRule = yes
|
||||
useHeadingStyles = yes
|
||||
listItemIndent=40
|
||||
generateHPJ = yes
|
||||
htmlBrowseButtons = bitmap
|
||||
winHelpContents = yes
|
||||
winHelpVersion = 3 ; 3 for Windows 3.x, 4 for Windows 95
|
||||
winHelpTitle = "wxWindows Deprecated Classes Manual"
|
||||
truncateFilenames = yes
|
||||
combineSubSections = yes
|
||||
;;
|
||||
;; These two are for generating MS HTML Help project, contents and index files.
|
||||
;;
|
||||
htmlWorkshopFiles = true
|
||||
htmlIndex = true
|
||||
|
||||
; Finally, a way to specify face names
|
||||
htmlFaceName = "Arial, Lucida, Helvetica"
|
||||
|
||||
\textasciitilde [0]{{\tt\~}}
|
||||
\textasciicircum [0]{{\tt\^}}
|
||||
\textbackslash [0]{{\tt$\backslash$}}
|
||||
\gifsep [0]{\par}
|
||||
ignoreInput = "ltx.tex"
|
||||
; htmlStylesheet = "wx.css"
|
||||
|
||||
;\overview [2] {\rtfonly{See also }\settransparency{on}\sethotspotcolour{off}\sethotspotunderline{on}\winhelponly{\image{}{books.bmp}\settransparency{off}}
|
||||
;\htmlonly{\image{}{books.gif}}\helpref{#1}{#2}
|
||||
;\sethotspotcolour{on}\sethotspotunderline{on}}
|
||||
\overview [2] {\helpref{#1}{#2}}
|
||||
\docparam [2]{\parskip{0}{\it #1}\htmlignore{\par}\parskip{10}\indented{1cm}{#2}}
|
||||
\wxheading [1]{{\bf \htmlignore{\fcol{blue}{#1}}\htmlonly{\fcol{red}{#1}}}}
|
||||
\const [0] {{\bf const}}
|
||||
\constfunc [3] {{\bf #1} {\bf #2}(#3) {\bf const}\index{#2}}
|
||||
\windowstyle [1] {{\bf #1}\index{#1}}
|
||||
\bftt [1] {\bf{\tt{#1}}}
|
||||
\pythonnote [1] {{\bf \fcol{blue}{wxPython note:}} #1}
|
||||
%\pythonnote [1] {}
|
||||
\perlnote [1] {{\bf \fcol{blue}{wxPerl note:}} #1}
|
||||
%\perlnote [1] {}
|
||||
|
||||
; make tex2rtf understand \hbox{} macro:
|
||||
\hbox [1] {#1}
|
@@ -1,9 +0,0 @@
|
||||
\chapter{Topic overviews}\label{overviews}
|
||||
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
|
||||
\setfooter{\thepage}{}{}{}{}{\thepage}%
|
||||
|
||||
This chapter contains a selection of topic overviews.
|
||||
|
||||
\input texpr.tex
|
||||
\input tresourc.tex
|
||||
|
@@ -1,327 +0,0 @@
|
||||
\section{\class{wxTreeLayout}}\label{wxtreelayout}
|
||||
|
||||
wxTreeLayout provides layout of simple trees with one root node, drawn left-to-right,
|
||||
with user-defined spacing between nodes.
|
||||
|
||||
wxTreeLayout is an abstract class that must be subclassed. The programmer
|
||||
defines various member functions which will access whatever data structures
|
||||
are appropriate for the application, and wxTreeLayout uses these when laying
|
||||
out the tree.
|
||||
|
||||
Nodes are identified by long integer identifiers. The derived class
|
||||
communicates the actual tree structure to wxTreeLayout by defining \helpref{wxTreeLayout::GetChildren}{wxtreelayoutgetchildren}\rtfsp
|
||||
and \helpref{wxTreeLayout::GetNodeParent}{wxtreelayoutgetnodeparent} functions.
|
||||
|
||||
The application should call \helpref{wxTreeLayout::DoLayout}{wxtreelayoutdolayout} to do the tree
|
||||
layout. Depending on how the derived class has been defined, either
|
||||
\rtfsp\helpref{wxTreeLayout::Draw}{wxtreelayoutdraw} must be called (for example by the OnPaint member
|
||||
of a wxScrolledWindow) or the application-defined drawing code should be called
|
||||
as normal.
|
||||
|
||||
For example, if you have an image drawing system already defined, you
|
||||
may want wxTreeLayout to position existing node images in that system. So you
|
||||
just need a way for wxTreeLayout to set the node image positions according to
|
||||
the layout algorithm, and the rest will be done by your own image drawing
|
||||
system.
|
||||
|
||||
The algorithm is due to Gabriel Robins \cite{robins87}, a linear-time
|
||||
algorithm originally implemented in LISP for AI applications.
|
||||
|
||||
The original algorithm has been modified so that both X and Y planes
|
||||
are calculated simultaneously, increasing efficiency slightly. The basic
|
||||
code is only a page or so long.
|
||||
|
||||
\helponly{Below is the example tree generated by the program test.cc.
|
||||
|
||||
\begin{figure}
|
||||
$$\image{11cm;0cm}{treetst.ps}$$
|
||||
\caption{Example tree}\label{exampletree}
|
||||
\end{figure}
|
||||
}
|
||||
|
||||
\wxheading{Derived from}
|
||||
|
||||
wxObject
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{wxTreeLayoutStored}{wxtreelayoutstored}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxTreeLayout::wxTreeLayout}
|
||||
|
||||
\func{}{wxTreeLayout}{\void}
|
||||
|
||||
Constructor.
|
||||
|
||||
\membersection{wxTreeLayout::ActivateNode}\label{wxtreelayoutactivatenode}
|
||||
|
||||
\func{void}{ActivateNode}{\param{long}{ id}, \param{bool }{active}}
|
||||
|
||||
Define this so wxTreeLayout can turn nodes on and off for drawing purposes
|
||||
(not all nodes may be connected in the tree). See also \helpref{wxTreeLayout::NodeActive}{wxtreelayoutnodeactive}.
|
||||
|
||||
\membersection{wxTreeLayout::CalcLayout}
|
||||
|
||||
\func{void}{CalcLayout}{\param{long}{ id}, \param{int}{ level}}
|
||||
|
||||
Private function for laying out a branch.
|
||||
|
||||
\membersection{wxTreeLayout::DoLayout}\label{wxtreelayoutdolayout}
|
||||
|
||||
\func{void}{DoLayout}{\param{wxDC\&}{ dc}, \param{long}{ topNode = -1}}
|
||||
|
||||
Calculates the layout for the tree, optionally specifying the top node.
|
||||
|
||||
\membersection{wxTreeLayout::Draw}\label{wxtreelayoutdraw}
|
||||
|
||||
\func{void}{Draw}{\param{wxDC\&}{ dc}}
|
||||
|
||||
Call this to let wxTreeLayout draw the tree itself, once the layout has been
|
||||
calculated with \helpref{wxTreeLayout::DoLayout}{wxtreelayoutdolayout}.
|
||||
|
||||
\membersection{wxTreeLayout::DrawBranch}
|
||||
|
||||
\func{void}{DrawBranch}{\param{long}{ from}, \param{long}{ to}, \param{wxDC\&}{ dc}}
|
||||
|
||||
Defined by wxTreeLayout to draw an arc between two nodes.
|
||||
|
||||
\membersection{wxTreeLayout::DrawBranches}
|
||||
|
||||
\func{void}{DrawBranches}{\param{wxDC\&}{ dc}}
|
||||
|
||||
Defined by wxTreeLayout to draw the arcs between nodes.
|
||||
|
||||
\membersection{wxTreeLayout::DrawNode}
|
||||
|
||||
\func{void}{DrawNode}{\param{long}{ id}, \param{wxDC\&}{ dc}}
|
||||
|
||||
Defined by wxTreeLayout to draw a node.
|
||||
|
||||
\membersection{wxTreeLayout::DrawNodes}
|
||||
|
||||
\func{void}{DrawNodes}{\param{wxDC\&}{ dc}}
|
||||
|
||||
Defined by wxTreeLayout to draw the nodes.
|
||||
|
||||
\membersection{wxTreeLayout::GetChildren}\label{wxtreelayoutgetchildren}
|
||||
|
||||
\func{void}{GetChildren}{\param{long}{ id}, \param{wxList \&}{list}}
|
||||
|
||||
Must be defined to return the children of node {\it id} in the given list
|
||||
of integers.
|
||||
|
||||
\membersection{wxTreeLayout::GetNextNode}\label{wxtreelayoutgetnextnode}
|
||||
|
||||
\func{long}{GetNextNode}{\param{long}{ id}}
|
||||
|
||||
Must be defined to return the next node after {\it id}, so that wxTreeLayout can
|
||||
iterate through all relevant nodes. The ordering is not important.
|
||||
The function should return -1 if there are no more nodes.
|
||||
|
||||
\membersection{wxTreeLayout::GetNodeName}
|
||||
|
||||
\constfunc{wxString}{GetNodeName}{\param{long}{ id}}
|
||||
|
||||
May optionally be defined to get a node's name (for example if leaving
|
||||
the drawing to wxTreeLayout).
|
||||
|
||||
\membersection{wxTreeLayout::GetNodeSize}
|
||||
|
||||
\constfunc{void}{GetNodeSize}{\param{long}{ id}, \param{long*}{ x}, \param{long*}{ y}}
|
||||
|
||||
Can be defined to indicate a node's size, or left to wxTreeLayout to use the
|
||||
name as an indication of size.
|
||||
|
||||
\membersection{wxTreeLayout::GetNodeParent}\label{wxtreelayoutgetnodeparent}
|
||||
|
||||
\constfunc{long}{GetNodeParent}{\param{long}{ id}}
|
||||
|
||||
Must be defined to return the parent node of {\it id}.
|
||||
The function should return -1 if there is no parent.
|
||||
|
||||
\membersection{wxTreeLayout::GetNodeX}
|
||||
|
||||
\constfunc{long}{GetNodeX}{\param{long}{ id}}
|
||||
|
||||
Must be defined to return the current X position of the node. Note that
|
||||
coordinates are assumed to be at the top-left of the node so some conversion
|
||||
may be necessary for your application.
|
||||
|
||||
\membersection{wxTreeLayout::GetNodeY}
|
||||
|
||||
\constfunc{long}{GetNodeY}{\param{long}{ id}}
|
||||
|
||||
Must be defined to return the current Y position of the node. Note that
|
||||
coordinates are assumed to be at the top-left of the node so some conversion
|
||||
may be necessary for your application.
|
||||
|
||||
\membersection{wxTreeLayout::GetLeftMargin}
|
||||
|
||||
\constfunc{long}{GetLeftMargin}{\void}
|
||||
|
||||
Gets the left margin set with \helpref{wxTreeLayout::SetMargins}{wxtreelayoutsetmargins}.
|
||||
|
||||
\membersection{wxTreeLayout::GetOrientation}
|
||||
|
||||
\constfunc{bool}{GetOrientation}{\void}
|
||||
|
||||
Gets the orientation: true means top-to-bottom, false means left-to-right (the default).
|
||||
|
||||
\membersection{wxTreeLayout::GetTopMargin}
|
||||
|
||||
\constfunc{long}{GetTopMargin}{\void}
|
||||
|
||||
Gets the top margin set with \helpref{wxTreeLayout::SetMargins}{wxtreelayoutsetmargins}.
|
||||
|
||||
\membersection{wxTreeLayout::GetTopNode}
|
||||
|
||||
\constfunc{long}{GetTopNode}{\void}
|
||||
|
||||
wxTreeLayout calls this to get the top of the tree. Don't redefine this; call
|
||||
\rtfsp\helpref{wxTreeLayout::SetTopNode}{wxtreelayoutsettopnode} instead before calling \helpref{wxTreeLayout::DoLayout}{wxtreelayoutdolayout}.
|
||||
|
||||
\membersection{wxTreeLayout::GetXSpacing}
|
||||
|
||||
\constfunc{long}{GetXSpacing}{\void}
|
||||
|
||||
Gets the horizontal spacing between nodes.
|
||||
|
||||
\membersection{wxTreeLayout::GetYSpacing}
|
||||
|
||||
\constfunc{long}{GetYSpacing}{\void}
|
||||
|
||||
Gets the vertical spacing between nodes.
|
||||
|
||||
\membersection{wxTreeLayout::Initialize}
|
||||
|
||||
\func{void}{Initialize}{\void}
|
||||
|
||||
Initializes wxTreeLayout. Call from application or overridden {\bf Initialize}
|
||||
or constructor.
|
||||
|
||||
\membersection{wxTreeLayout::NodeActive}\label{wxtreelayoutnodeactive}
|
||||
|
||||
\func{bool}{NodeActive}{\param{long}{ id}}
|
||||
|
||||
Define this so wxTreeLayout can know which nodes are to be drawn (not all
|
||||
nodes may be connected in the tree). See also \helpref{wxTreeLayout::ActivateNode}{wxtreelayoutactivatenode}.
|
||||
|
||||
\membersection{wxTreeLayout::SetNodeName}
|
||||
|
||||
\func{void}{SetNodeName}{\param{long}{ id}, \param{const wxString\& }{ name}}
|
||||
|
||||
May optionally be defined to set a node's name.
|
||||
|
||||
\membersection{wxTreeLayout::SetNodeX}
|
||||
|
||||
\func{void}{SetNodeX}{\param{long}{ id}, \param{long}{ x}}
|
||||
|
||||
Must be defined to set the current X position of the node. Note that
|
||||
coordinates are assumed to be at the top-left of the node so some conversion
|
||||
may be necessary for your application.
|
||||
|
||||
\membersection{wxTreeLayout::SetNodeY}
|
||||
|
||||
\func{void}{SetNodeY}{\param{long}{ id}, \param{long}{ y}}
|
||||
|
||||
Must be defined to set the current Y position of the node. Note that
|
||||
coordinates are assumed to be at the top-left of the node so some conversion
|
||||
may be necessary for your application.
|
||||
|
||||
\membersection{wxTreeLayout::SetOrientation}
|
||||
|
||||
\func{void}{SetOrientation}{\param{bool}{ orientation}}
|
||||
|
||||
Sets the tree orientation: true means top-to-bottom, false means left-to-right (the default).
|
||||
|
||||
\membersection{wxTreeLayout::SetTopNode}\label{wxtreelayoutsettopnode}
|
||||
|
||||
\func{void}{SetTopNode}{\param{long}{ id}}
|
||||
|
||||
Call this to identify the top of the tree to wxTreeLayout.
|
||||
|
||||
\membersection{wxTreeLayout::SetSpacing}
|
||||
|
||||
\func{void}{SetSpacing}{\param{long}{ x}, \param{long}{ y}}
|
||||
|
||||
Sets the horizontal and vertical spacing between nodes in the tree.
|
||||
|
||||
\membersection{wxTreeLayout::SetMargins}\label{wxtreelayoutsetmargins}
|
||||
|
||||
\func{void}{SetMargins}{\param{long}{ x}, \param{long}{ y}}
|
||||
|
||||
Sets the left and top margins of the whole tree.
|
||||
|
||||
\section{\class{wxTreeLayoutStored}}\label{wxtreelayoutstored}
|
||||
|
||||
wxTreeLayoutStored provides storage for node labels, position and client data. It also provides hit-testing
|
||||
(which node a mouse event occurred on). It is usually a more convenient class to use than wxTreeLayout.
|
||||
|
||||
\wxheading{Derived from}
|
||||
|
||||
\helpref{wxTreeLayout}{wxtreelayout}\\
|
||||
\helpref{wxObject}{wxobject}
|
||||
|
||||
\wxheading{See also}
|
||||
|
||||
\helpref{wxTreeLayout}{wxtreelayout}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
\membersection{wxTreeLayoutStored::wxTreeLayoutStored}
|
||||
|
||||
\func{}{wxTreeLayoutStored}{\param{int }{noNodes = 200}}
|
||||
|
||||
Constructor. Specify the maximum number of nodes to be allocated.
|
||||
|
||||
\membersection{wxTreeLayoutStored::AddChild}\label{wxtreelayoutstoredaddchild}
|
||||
|
||||
\func{long}{AddChild}{\param{const wxString\&}{ name}, \param{const wxString\&}{ parent = ""}}
|
||||
|
||||
Adds a child with a given parent, returning the node id.
|
||||
|
||||
\membersection{wxTreeLayoutStored::GetClientData}\label{wxtreelayoutstoredgetclientdata}
|
||||
|
||||
\constfunc{long}{GetClientData}{\param{long}{ id}}
|
||||
|
||||
Gets the client data for the given node.
|
||||
|
||||
\membersection{wxTreeLayoutStored::GetNode}\label{wxtreelayoutstoredgetnode}
|
||||
|
||||
\constfunc{wxStoredNode*}{GetNode}{\param{long}{ id}}
|
||||
|
||||
Returns the wxStoredNode object for the given node id.
|
||||
|
||||
\membersection{wxTreeLayoutStored::GetNodeCount}\label{wxtreelayoutstoredgetnodecount}
|
||||
|
||||
\constfunc{int}{GetNodeCount}{\void}
|
||||
|
||||
Returns the current number of nodes.
|
||||
|
||||
\membersection{wxTreeLayoutStored::GetNumNodes}\label{wxtreelayoutstoredgetnumnodes}
|
||||
|
||||
\constfunc{int}{GetNumNodes}{\void}
|
||||
|
||||
Returns the maximum number of nodes.
|
||||
|
||||
\membersection{wxTreeLayoutStored::HitTest}\label{wxtreelayoutstoredhittest}
|
||||
|
||||
\func{wxString}{HitTest}{\param{wxMouseEvent\&}{ event}, \param{wxDC\& }{dc}}
|
||||
|
||||
Returns a string with the node name corresponding to the position of the mouse event, or the empty string if no node
|
||||
was detected.
|
||||
|
||||
\membersection{wxTreeLayoutStored::NameToId}\label{wxtreelayoutstorednametoid}
|
||||
|
||||
\func{long}{NameToId}{\param{const wxString\&}{ name}}
|
||||
|
||||
Returns the id for the given node name, or -1 if there was no such node.
|
||||
|
||||
\membersection{wxTreeLayoutStored::SetClientData}\label{wxtreelayoutstoredsetclientdata}
|
||||
|
||||
\func{void}{SetClientData}{\param{long}{ id}, \param{long}{ clientData}}
|
||||
|
||||
Sets client data for the given node.
|
||||
|
@@ -1,335 +0,0 @@
|
||||
\section{The wxWindows resource system}\label{resourceformats}
|
||||
|
||||
wxWindows has an optional {\it resource file} facility,
|
||||
which allows separation of dialog, menu, bitmap and icon specifications
|
||||
from the application code.
|
||||
|
||||
{\bf NOTE:} this format is now deprecated in favour of the XML-based \helpref{XRC resource system}{xrcoverview}.
|
||||
However it is still available if wxUSE\_RESOURCES is enabled.
|
||||
|
||||
The format is similar in principle to the Windows resource file (whose ASCII form is
|
||||
suffixed .RC and whose binary form is suffixed .RES). The wxWindows resource
|
||||
file is currently ASCII-only, suffixed .WXR. Note that under Windows,
|
||||
the .WXR file does not {\it replace} the native Windows resource file,
|
||||
it merely supplements it. There is no existing native resource format in X
|
||||
(except for the defaults file, which has limited expressive power).
|
||||
|
||||
For details of functions for manipulating resource files and loading
|
||||
user interface elements, see \helpref{wxWindows resource functions}{resourcefuncs}.
|
||||
|
||||
You can use Dialog Editor to create resource files. Unfortunately neither
|
||||
Dialog Editor nor the .WXR format currently cover all wxWindows controls;
|
||||
some are missing, such as wxSpinCtrl, wxSpinButton, wxListCtrl, wxTreeCtrl and others.
|
||||
|
||||
Note that in later versions of wxWindows, this resource format will be replaced
|
||||
by XML specifications that can also include sizers.
|
||||
|
||||
\subsection{The format of a .WXR file}
|
||||
|
||||
A wxWindows resource file may look a little odd at first. It is C++
|
||||
compatible, comprising mostly of static string variable declarations with
|
||||
wxExpr syntax within the string.
|
||||
|
||||
Here's a sample .WXR file:
|
||||
|
||||
\begin{verbatim}
|
||||
/*
|
||||
* wxWindows Resource File
|
||||
*
|
||||
*/
|
||||
|
||||
#include "noname.ids"
|
||||
|
||||
static char *my_resource = "bitmap(name = 'my_resource',\
|
||||
bitmap = ['myproject', wxBITMAP_TYPE_BMP_RESOURCE, 'WINDOWS'],\
|
||||
bitmap = ['myproject.xpm', wxBITMAP_TYPE_XPM, 'X']).";
|
||||
|
||||
static char *menuBar11 = "menu(name = 'menuBar11',\
|
||||
menu = \
|
||||
[\
|
||||
['&File', 1, '', \
|
||||
['&Open File', 2, 'Open a file'],\
|
||||
['&Save File', 3, 'Save a file'],\
|
||||
[],\
|
||||
['E&xit', 4, 'Exit program']\
|
||||
],\
|
||||
['&Help', 5, '', \
|
||||
['&About', 6, 'About this program']\
|
||||
]\
|
||||
]).";
|
||||
|
||||
static char *project_resource = "icon(name = 'project_resource',\
|
||||
icon = ['project', wxBITMAP_TYPE_ICO_RESOURCE, 'WINDOWS'],\
|
||||
icon = ['project_data', wxBITMAP_TYPE_XBM, 'X']).";
|
||||
|
||||
static char *panel3 = "dialog(name = 'panel3',\
|
||||
style = '',\
|
||||
title = 'untitled',\
|
||||
button_font = [14, 'wxSWISS', 'wxNORMAL', 'wxBOLD', 0],\
|
||||
label_font = [10, 'wxSWISS', 'wxNORMAL', 'wxNORMAL', 0],\
|
||||
x = 0, y = 37, width = 292, height = 164,\
|
||||
control = [1000, wxButton, 'OK', '', 'button5', 23, 34, -1, -1, 'my_resource'],\
|
||||
control = [1001, wxStaticText, 'A Label', '', 'message7', 166, 61, -1, -1, 'my_resource'],\
|
||||
control = [1002, wxTextCtrl, 'Text', 'wxTE_MULTITEXT', 'text8', 24, 110, -1, -1]).";
|
||||
\end{verbatim}
|
||||
|
||||
As you can see, C++-style comments are allowed, and apparently include files
|
||||
are supported too: but this is a special case, where the included file
|
||||
is a file of defines shared by the C++ application code and resource file
|
||||
to relate identifiers (such as FILE\_OPEN) to integers.
|
||||
|
||||
Each {\it resource object} is of standard \helpref{wxExpr}{wxexpr} syntax, that is,
|
||||
an object name such as {\bf dialog} or {\bf icon}, then an open
|
||||
parenthesis, a list of comma-delimited attribute/value pairs, a closing
|
||||
parenthesis, and a full stop. Backslashes are required to escape newlines,
|
||||
for the benefit of C++ syntax. If double quotation marks are used to
|
||||
delimit strings, they need to be escaped with backslash within a C++ string
|
||||
(so it is easier to use single quotation marks instead).
|
||||
|
||||
\normalbox{{\it A note on string syntax:} A string that begins with
|
||||
an alphabetic character, and contains only alphanumeric characters,
|
||||
hyphens and underscores, need not be quoted at all. Single quotes and double
|
||||
quotes may be used to delimit more complex strings. In fact, single-quoted
|
||||
and no-quoted strings are actually called {\it words}, but are treated
|
||||
as strings for the purpose of the resource system.}
|
||||
|
||||
A resource file like this is typically included in the application main file,
|
||||
as if it were a normal C++ file. This eliminates the need for a separate
|
||||
resource file to be distributed alongside the executable. However, the
|
||||
resource file can be dynamically loaded if desired (useful for non-C++
|
||||
languages such as Python).
|
||||
|
||||
Once included, the resources need to be `parsed' (interpreted), because
|
||||
so far the data is just a number of static string variables. The function\rtfsp
|
||||
{\bf ::wxResourceParseData} is called early on in initialization of the application
|
||||
(usually in {\bf wxApp::OnInit}) with a variable as argument. This may need to be
|
||||
called a number of times, one for each variable. However, more than one
|
||||
resource `object' can be stored in one string variable at a time, so you can
|
||||
get all your resources into one variable if you want to.
|
||||
|
||||
{\bf ::wxResourceParseData} parses the contents of the resource, ready for use
|
||||
by functions such as {\bf ::wxResourceCreateBitmap} and {\bf wxPanel::LoadFromResource}.
|
||||
|
||||
If a wxWindows resource object (such as a bitmap resource) refers to a
|
||||
C++ data structure, such as static XPM data, a further call ({\bf ::wxResourceRegisterBitmapData}) needs
|
||||
to be made on initialization to tell
|
||||
wxWindows about this data. The wxWindows resource object will refer to a
|
||||
string identifier, such as `project\_data' in the example file above.
|
||||
This identifier will be looked up in a table to get the C++ static data
|
||||
to use for the bitmap or icon.
|
||||
|
||||
In the C++ fragment below, the WXR resource file is included,
|
||||
and appropriate resource initialization is carried out in {\bf OnInit}.
|
||||
Note that at this stage, no actual wxWindows dialogs, menus, bitmaps or
|
||||
icons are created; their `templates' are merely being set up for later
|
||||
use.
|
||||
|
||||
\begin{verbatim}
|
||||
/*
|
||||
* File: project.cpp
|
||||
* Purpose: main application module
|
||||
*/
|
||||
|
||||
#include "wx/wx.h"
|
||||
#include "project.h"
|
||||
|
||||
// Includes the dialog, menu etc. resources
|
||||
#include "project.wxr"
|
||||
|
||||
// Includes XPM data
|
||||
#include "project.xpm"
|
||||
|
||||
IMPLEMENT_APP(AppClass)
|
||||
|
||||
// Called to initialize the program
|
||||
bool AppClass::OnInit()
|
||||
{
|
||||
wxResourceRegisterBitmapData("project_data", project_bits, project_width, project_height);
|
||||
|
||||
wxResourceParseData(menuBar11);
|
||||
wxResourceParseData(my_resource);
|
||||
wxResourceParseData(project_resource);
|
||||
wxResourceParseData(panel3);
|
||||
...
|
||||
|
||||
return true;
|
||||
}
|
||||
\end{verbatim}
|
||||
|
||||
The following code shows a dialog:
|
||||
|
||||
\begin{verbatim}
|
||||
// project.wxr contains dialog1
|
||||
MyDialog *dialog = new MyDialog;
|
||||
if (dialog->LoadFromResource(this, "dialog1"))
|
||||
{
|
||||
wxTextCtrl *text = (wxTextCtrl *)wxFindWindowByName("text3", dialog);
|
||||
if (text)
|
||||
text->SetValue("wxWindows resource demo");
|
||||
dialog->ShowModal();
|
||||
}
|
||||
dialog->Destroy();
|
||||
\end{verbatim}
|
||||
|
||||
Please see also the resource sample.
|
||||
|
||||
\subsection{Dialog resource format}
|
||||
|
||||
A dialog resource object may be used for either panels or dialog boxes, and
|
||||
consists of the following attributes. In the following, a {\it font specification}\rtfsp
|
||||
is a list consisting of point size, family, style, weight, underlined, optional facename.
|
||||
|
||||
\begin{twocollist}\itemsep=0pt
|
||||
\twocolitemruled{Attribute}{Value}
|
||||
\twocolitem{id}{The integer identifier of the resource.}
|
||||
\twocolitem{name}{The name of the resource.}
|
||||
\twocolitem{style}{Optional dialog box or panel window style.}
|
||||
\twocolitem{title}{The title of the dialog box (unused if a panel).}.
|
||||
\twocolitem{modal}{Whether modal: 1 if modal, 0 if modeless, absent if a panel resource.}
|
||||
\twocolitem{use\_dialog\_units}{If 1, use dialog units (dependent on the dialog font size) for control sizes and positions.}
|
||||
\twocolitem{use\_system\_defaults}{If 1, override colours and fonts to use system settings instead.}
|
||||
\twocolitem{button\_font}{The font used for control buttons: a list comprising point size (integer),
|
||||
family (string), font style (string), font weight (string) and underlining (0 or 1).}
|
||||
\twocolitem{label\_font}{The font used for control labels: a list comprising point size (integer),
|
||||
family (string), font style (string), font weight (string) and underlining (0 or 1). Now obsolete; use button\_font instead.}
|
||||
\twocolitem{x}{The x position of the dialog or panel.}
|
||||
\twocolitem{y}{The y position of the dialog or panel.}
|
||||
\twocolitem{width}{The width of the dialog or panel.}
|
||||
\twocolitem{height}{The height of the dialog or panel.}
|
||||
\twocolitem{background\_colour}{The background colour of the dialog or panel.}
|
||||
\twocolitem{label\_colour}{The default label colour for the children of the dialog or panel. Now obsolete; use button\_colour instead.}
|
||||
\twocolitem{button\_colour}{The default button text colour for the children of the dialog or panel.}
|
||||
\end{twocollist}
|
||||
|
||||
Then comes zero or more attributes named `control' for each control
|
||||
(panel item) on the dialog or panel. The value is a list of further
|
||||
elements. In the table below, the names in the first column correspond to
|
||||
the first element of the value list, and the second column details the
|
||||
remaining elements of the list. Note that titles for some controls are obsolete
|
||||
(they don't have titles), but the syntax is retained for backward compatibility.
|
||||
|
||||
\begin{twocollist}\itemsep=0pt
|
||||
\twocolitemruled{Control}{Values}
|
||||
\twocolitem{wxButton}{id (integer), title (string), window style (string), name (string), x, y, width, height, button bitmap resource (optional string), button font spec}
|
||||
\twocolitem{wxCheckBox}{id (integer), title (string), window style (string), name (string), x, y, width, height, default value (optional integer, 1 or 0), label font spec}
|
||||
\twocolitem{wxChoice}{id (integer), title (string), window style (string), name (string), x, y, width, height, values (optional list of strings), label font spec, button font spec}
|
||||
\twocolitem{wxComboBox}{id (integer), title (string), window style (string), name (string), x, y, width, height, default text value, values (optional list of strings), label font spec, button font spec}
|
||||
\twocolitem{wxGauge}{id (integer), title (string), window style (string), name (string), x, y, width, height, value (optional integer), range (optional integer), label font spec, button font spec}
|
||||
\twocolitem{wxStaticBox}{id (integer), title (string), window style (string), name (string), x, y, width, height, label font spec}
|
||||
\twocolitem{wxListBox}{id (integer), title (string), window style (string), name (string), x, y, width, height, values (optional list of strings), multiple (optional string, wxSINGLE or wxMULTIPLE),
|
||||
label font spec, button font spec}
|
||||
\twocolitem{wxStaticText}{id (integer), title (string), window style (string), name (string), x, y, width, height, message bitmap resource (optional string), label font spec}
|
||||
\twocolitem{wxRadioBox}{id (integer), title (string), window style (string), name (string), x, y, width, height, values (optional list of strings), number of rows or cols,
|
||||
label font spec, button font spec}
|
||||
\twocolitem{wxRadioButton}{id (integer), title (string), window style (string), name (string), x, y, width, height, default value (optional integer, 1 or 0), label font spec}
|
||||
\twocolitem{wxScrollBar}{id (integer), title (string), window style (string), name (string), x, y, width, height, value (optional integer),
|
||||
page length (optional integer), object length (optional integer), view length (optional integer)}
|
||||
\twocolitem{wxSlider}{id (integer), title (string), window style (string), name (string), x, y, width, height, value (optional integer), minimum (optional integer), maximum (optional integer),
|
||||
label font spec, button font spec}
|
||||
\twocolitem{wxTextCtrl}{id (integer), title (string), window style (string), name (string), x, y, width, height, default value (optional string),
|
||||
label font spec, button font spec}
|
||||
\end{twocollist}
|
||||
|
||||
\subsection{Menubar resource format}
|
||||
|
||||
A menubar resource object consists of the following attributes.
|
||||
|
||||
\begin{twocollist}\itemsep=0pt
|
||||
\twocolitemruled{Attribute}{Value}
|
||||
\twocolitem{name}{The name of the menubar resource.}
|
||||
\twocolitem{menu}{A list containing all the menus, as detailed below.}
|
||||
\end{twocollist}
|
||||
|
||||
The value of the {\bf menu} attribute is a list of menu item specifications, where each menu
|
||||
item specification is itself a list comprising:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item title (a string)
|
||||
\item menu item identifier (a string or non-zero integer, see below)
|
||||
\item help string (optional)
|
||||
\item 0 or 1 for the `checkable' parameter (optional)
|
||||
\item optionally, further menu item specifications if this item is a pulldown menu.
|
||||
\end{itemize}
|
||||
|
||||
If the menu item specification is the empty list ([]), this is interpreted as a menu separator.
|
||||
|
||||
If further (optional) information is associated with each menu item in a future release of wxWindows,
|
||||
it will be placed after the help string and before the optional pulldown menu specifications.
|
||||
|
||||
Note that the menu item identifier must be an integer if the resource is being
|
||||
included as C++ code and then parsed on initialisation. Unfortunately,\rtfsp
|
||||
\#define substitution is not performed inside strings, and
|
||||
therefore the program cannot know the mapping. However, if the .WXR file
|
||||
is being loaded dynamically, wxWindows will attempt to replace string
|
||||
identifiers with \#defined integers, because it is able to parse
|
||||
the included \#defines.
|
||||
|
||||
\subsection{Bitmap resource format}
|
||||
|
||||
A bitmap resource object consists of a name attribute, and one or more {\bf bitmap} attributes.
|
||||
There can be more than one of these to allow specification of bitmaps that are optimum for the
|
||||
platform and display.
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item Bitmap name or filename.
|
||||
\item Type of bitmap; for example, wxBITMAP\_TYPE\_BMP\_RESOURCE. See class reference under {\bf wxBitmap} for
|
||||
a full list).
|
||||
\item Platform this bitmap is valid for; one of WINDOWS, X, MAC and ANY.
|
||||
\item Number of colours (optional).
|
||||
\item X resolution (optional).
|
||||
\item Y resolution (optional).
|
||||
\end{itemize}
|
||||
|
||||
\subsection{Icon resource format}
|
||||
|
||||
An icon resource object consists of a name attribute, and one or more {\bf icon} attributes.
|
||||
There can be more than one of these to allow specification of icons that are optimum for the
|
||||
platform and display.
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item Icon name or filename.
|
||||
\item Type of icon; for example, wxBITMAP\_TYPE\_ICO\_RESOURCE. See class reference under {\bf wxBitmap} for
|
||||
a full list).
|
||||
\item Platform this bitmap is valid for; one of WINDOWS, X, MAC and ANY.
|
||||
\item Number of colours (optional).
|
||||
\item X resolution (optional).
|
||||
\item Y resolution (optional).
|
||||
\end{itemize}
|
||||
|
||||
\subsection{Resource format design issues}
|
||||
|
||||
The .WXR file format is a recent addition and subject to change.
|
||||
The use of an ASCII resource file format may seem rather inefficient, but this
|
||||
choice has a number of advantages:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item Since it is C++ compatible, it can be included into an application's source code,
|
||||
eliminating the problems associated with distributing a separate resource file
|
||||
with the executable. However, it can also be loaded dynamically from a file, which will be required
|
||||
for non-C++ programs that use wxWindows.
|
||||
\item No extra binary file format and separate converter need be maintained for the wxWindows project
|
||||
(although others are welcome to add the equivalent of the Windows `rc' resource
|
||||
parser and a binary format).
|
||||
\item It would be difficult to append a binary resource component onto an executable
|
||||
in a portable way.
|
||||
\item The file format is essentially the \helpref{wxExpr}{wxexpr} object format, for which
|
||||
a parser already exists, so parsing is easy. For those programs that use wxExpr
|
||||
anyway, the size overhead of the parser is minimal.
|
||||
\end{itemize}
|
||||
|
||||
The disadvantages of the approach include:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item Parsing adds a small execution overhead to program initialization.
|
||||
\item Under 16-bit Windows especially, global data is at a premium.
|
||||
Using a .RC resource table for some wxWindows resource data may be a partial solution,
|
||||
although .RC strings are limited to 255 characters.
|
||||
\item Without a resource preprocessor, it is not possible to substitute integers
|
||||
for identifiers (so menu identifiers have to be written as integers in the resource
|
||||
object, in addition to providing \#defines for application code convenience).
|
||||
\end{itemize}
|
||||
|
||||
\subsection{Compiling the resource system}
|
||||
|
||||
To enable the resource system, set {\bf wxUSE\_WX\_RESOURCES} to 1 in setup.h.
|
||||
|
Before Width: | Height: | Size: 978 B |
@@ -1,31 +0,0 @@
|
||||
%
|
||||
% automatically generated by HelpGen $Revision$ from
|
||||
% dyntbar.h at 21/Jan/02 21:14:18
|
||||
%
|
||||
|
||||
|
||||
\section{\class{BagLayout}}\label{baglayout}
|
||||
|
||||
|
||||
BagLayout lays out items in left-to-right order from
|
||||
top to bottom.
|
||||
|
||||
\wxheading{Derived from}
|
||||
|
||||
\helpref{LayoutManagerBase}{layoutmanagerbase}
|
||||
|
||||
\wxheading{Include files}
|
||||
|
||||
<wx/fl/dyntbar.h>
|
||||
|
||||
\wxheading{Data structures}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
|
||||
\membersection{BagLayout::Layout}\label{baglayoutlayout}
|
||||
|
||||
\func{void}{Layout}{\param{const wxSize\& }{parentDim}, \param{wxSize\& }{resultingDim}, \param{wxLayoutItemArrayT\& }{items}, \param{int }{horizGap}, \param{int }{vertGap}}
|
||||
|
||||
Constructor.
|
||||
|
@@ -1,58 +0,0 @@
|
||||
%
|
||||
% automatically generated by HelpGen $Revision$ from
|
||||
% controlbar.h at 21/Jan/02 21:14:14
|
||||
%
|
||||
|
||||
|
||||
\section{\class{wxBarIterator}}\label{wxbariterator}
|
||||
|
||||
|
||||
Used for traversing through all bars of all rows in the pane.
|
||||
|
||||
\wxheading{Derived from}
|
||||
|
||||
No base class
|
||||
|
||||
\wxheading{Include files}
|
||||
|
||||
<wx/fl/controlbar.h>
|
||||
|
||||
\wxheading{Data structures}
|
||||
|
||||
\latexignore{\rtfignore{\wxheading{Members}}}
|
||||
|
||||
|
||||
\membersection{wxBarIterator::wxBarIterator}\label{wxbariteratorwxbariterator}
|
||||
|
||||
\func{}{wxBarIterator}{\param{RowArrayT\& }{rows}}
|
||||
|
||||
Constructor, taking row array.
|
||||
|
||||
|
||||
\membersection{wxBarIterator::BarInfo}\label{wxbariteratorbarinfo}
|
||||
|
||||
\func{cbBarInfo\&}{BarInfo}{\void}
|
||||
|
||||
Gets the current bar information.
|
||||
|
||||
|
||||
\membersection{wxBarIterator::Next}\label{wxbariteratornext}
|
||||
|
||||
\func{bool}{Next}{\void}
|
||||
|
||||
Advances the iterator and returns TRUE if a bar is available.
|
||||
|
||||
|
||||
\membersection{wxBarIterator::Reset}\label{wxbariteratorreset}
|
||||
|
||||
\func{void}{Reset}{\void}
|
||||
|
||||
Resets the iterator to the start of the first row.
|
||||
|
||||
|
||||
\membersection{wxBarIterator::RowInfo}\label{wxbariteratorrowinfo}
|
||||
|
||||
\func{cbRowInfo\&}{RowInfo}{\void}
|
||||
|
||||
Returns a reference to the currently traversed row.
|
||||
|
@@ -1,259 +0,0 @@
|
||||
\chapter{Introduction}\label{introduction}
|
||||
\pagenumbering{arabic}%
|
||||
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
|
||||
\setfooter{\thepage}{}{}{}{}{\thepage}%
|
||||
|
||||
\section{What is FL?}\label{whatisfl}
|
||||
|
||||
This manual describes FL (Frame Layout), a
|
||||
class library for managing sophisticated window layout,
|
||||
with panes that can be moved around the main window
|
||||
and customized. FL handles many decoration and dragging
|
||||
issues, giving applications the kind of docking facilities
|
||||
that Visual C++ and Netscape Navigator possess.
|
||||
|
||||
FL was written by Aleksandras Gluchovas, and is heavily used in
|
||||
wxWorkshop which he also wrote the bulk of.
|
||||
|
||||
{\bf Please note} that this guide is in its infancy, and contributions
|
||||
from FL users are very welcome.
|
||||
|
||||
The following screenshot (from fl\_demo1) shows a frame with a number of
|
||||
bars that can be dragged around. The vertical grippers with
|
||||
two lines allow a bar to be dragged in that row, changing the
|
||||
ordering of the bar if necessary.
|
||||
The dotted grippers (as in Netscape Navigator) allow
|
||||
a whole row to be moved, again changing the position of the row
|
||||
if required. While moving a bar or row, immediate feedback
|
||||
is given as the moving bar displaces other bars.
|
||||
|
||||
Other features: the splitter bar shows a dotted thick line as
|
||||
it's dragged. Single-clicking on a row handle minimizes it to
|
||||
a horizontal tab which is given its own narrow row. This allows
|
||||
the user to temporarily hide a row whilst allowing quick access
|
||||
to it when required.
|
||||
|
||||
A close button (x) hides a bar completely. You can get it back again
|
||||
by right-clicking and selecting the appropriate menu item.
|
||||
|
||||
A left, right, up or down arrow button expands the pane in that direction.
|
||||
|
||||
\center{\image{}{screen01.bmp}}
|
||||
|
||||
\section{Compiling and using FL}
|
||||
|
||||
FL can be found under the 'contrib' hierarchy, in the following directories:
|
||||
|
||||
\begin{verbatim}
|
||||
contrib/src/fl
|
||||
contrib/include/wx/fl
|
||||
contrib/samples/fl
|
||||
contrib/docs/latex/fl
|
||||
docs/html/fl
|
||||
docs/htmlhelp/fl.chm
|
||||
docs/pdf/fl.pdf
|
||||
docs/winhelp/fl.hlp
|
||||
\end{verbatim}
|
||||
|
||||
To compile FL:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item Under Windows using VC++, open the flVC.dsw project
|
||||
and compile.
|
||||
\item Under Unix, FL should be configured when you configured
|
||||
wxWindows. Make FL by changing directory to contrib/src/fl and
|
||||
type 'make'. {\bf Note:} there is currently a
|
||||
problem with the wxWindows build system that means that
|
||||
only the static version of library can be built at present.
|
||||
\end{itemize}
|
||||
|
||||
To use FL:
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item Under Windows using VC++, link with fl[d].lib.
|
||||
\item Under Unix, link with libfl[d].a.
|
||||
\end{itemize}
|
||||
|
||||
\section{FL concepts}
|
||||
|
||||
These are typical steps when adding FL functionality to your application.
|
||||
|
||||
\begin{itemize}\itemsep=0pt
|
||||
\item include the appropriate header files;
|
||||
\item create a new \helpref{wxFrameLayout}{wxframelayout} passing the top-level frame and the window that
|
||||
is interpreted as the main 'client' window;
|
||||
\item set an updates manager for optimizing drag operations;
|
||||
\item add plugins for implementing various features;
|
||||
\item add bars;
|
||||
\item enable floating mode for the layout if required;
|
||||
\item delete the frame layout in the main frame's destructor.
|
||||
\end{itemize}
|
||||
|
||||
The following is taken from fl\_demo1 and shows the main code implementing the
|
||||
user interface as illustrated in \helpref{What is FL?}{whatisfl}.
|
||||
|
||||
\begin{verbatim}
|
||||
// fl headers
|
||||
#include "wx/fl/controlbar.h" // core API
|
||||
|
||||
// extra plugins
|
||||
#include "wx/fl/barhintspl.h" // bevel for bars with "X"s and grooves
|
||||
#include "wx/fl/rowdragpl.h" // NC-look with draggable rows
|
||||
#include "wx/fl/cbcustom.h" // customization plugin
|
||||
#include "wx/fl/hintanimpl.h"
|
||||
|
||||
// beauty-care
|
||||
#include "wx/fl/gcupdatesmgr.h" // smooth d&d
|
||||
#include "wx/fl/antiflickpl.h" // double-buffered repaint of decorations
|
||||
#include "wx/fl/dyntbar.h" // auto-layout toolbar
|
||||
#include "wx/fl/dyntbarhnd.h" // control-bar dimension handler for it
|
||||
|
||||
MyFrame::MyFrame(wxFrame *frame)
|
||||
: wxFrame( frame, -1, "wxWindows 2.0 wxFrameLayout Test Application", wxDefaultPosition,
|
||||
wxSize( 700, 500 ),
|
||||
wxCLIP_CHILDREN | wxMINIMIZE_BOX | wxMAXIMIZE_BOX |
|
||||
wxTHICK_FRAME | wxSYSTEM_MENU | wxCAPTION,
|
||||
"freimas" )
|
||||
{
|
||||
mpClientWnd = CreateTextCtrl( "Client window" );
|
||||
|
||||
mpLayout = new wxFrameLayout( this, mpClientWnd );
|
||||
|
||||
mpLayout->SetUpdatesManager( new cbGCUpdatesMgr() );
|
||||
|
||||
// setup plugins for testing
|
||||
mpLayout->PushDefaultPlugins();
|
||||
|
||||
mpLayout->AddPlugin( CLASSINFO( cbBarHintsPlugin ) ); // fancy "X"es and bevel for bars
|
||||
mpLayout->AddPlugin( CLASSINFO( cbHintAnimationPlugin ) );
|
||||
mpLayout->AddPlugin( CLASSINFO( cbRowDragPlugin ) );
|
||||
mpLayout->AddPlugin( CLASSINFO( cbAntiflickerPlugin ) );
|
||||
mpLayout->AddPlugin( CLASSINFO( cbSimpleCustomizationPlugin ) );
|
||||
|
||||
// drop in some bars
|
||||
cbDimInfo sizes0( 200,45, // when docked horizontally
|
||||
200,85, // when docked vertically
|
||||
175,35, // when floated
|
||||
FALSE, // the bar is not fixed-size
|
||||
4, // vertical gap (bar border)
|
||||
4 // horizontal gap (bar border)
|
||||
);
|
||||
|
||||
cbDimInfo sizes1( 150,35, // when docked horizontally
|
||||
150,85, // when docked vertically
|
||||
175,35, // when floated
|
||||
TRUE, // the bar is not fixed-size
|
||||
4, // vertical gap (bar border)
|
||||
4 // horizontal gap (bar border)
|
||||
);
|
||||
|
||||
cbDimInfo sizes2( 175,45, // when docked horizontally
|
||||
175,37, // when docked vertically
|
||||
170,35, // when floated
|
||||
TRUE, // the bar is not fixed-size
|
||||
4, // vertical gap (bar border)
|
||||
4, // horizontal gap (bar border)
|
||||
new cbDynToolBarDimHandler()
|
||||
);
|
||||
|
||||
mpLayout->AddBar( CreateTextCtrl("Hello"), // bar window
|
||||
sizes0, FL_ALIGN_TOP, // alignment ( 0-top,1-bottom, etc)
|
||||
0, // insert into 0th row (vert. position)
|
||||
0, // offset from the start of row (in pixels)
|
||||
"InfoViewer1", // name for reference in customization pop-ups
|
||||
TRUE
|
||||
);
|
||||
|
||||
mpLayout->AddBar( CreateTextCtrl("Bye"), // bar window
|
||||
sizes0, FL_ALIGN_TOP, // alignment ( 0-top,1-bottom, etc)
|
||||
1, // insert into 0th row (vert. position)
|
||||
0, // offset from the start of row (in pixels)
|
||||
"InfoViewer2", // name for reference in customization pop-ups
|
||||
TRUE
|
||||
);
|
||||
|
||||
mpLayout->AddBar( CreateTextCtrl("Fixed0"), // bar window
|
||||
sizes1, FL_ALIGN_TOP, // alignment ( 0-top,1-bottom, etc)
|
||||
0, // insert into 0th row (vert. position)
|
||||
0, // offset from the start of row (in pixels)
|
||||
"ToolBar1", // name for reference in customization pop-ups
|
||||
TRUE
|
||||
);
|
||||
|
||||
wxDynamicToolBar* pToolBar = new wxDynamicToolBar();
|
||||
|
||||
pToolBar->Create( this, -1 );
|
||||
|
||||
// 1001-1006 ids of command events fired by added tool-buttons
|
||||
|
||||
pToolBar->AddTool( 1001, BMP_DIR "new.bmp" );
|
||||
pToolBar->AddTool( 1002, BMP_DIR "open.bmp" );
|
||||
pToolBar->AddTool( 1003, BMP_DIR "save.bmp" );
|
||||
|
||||
pToolBar->AddTool( 1004, BMP_DIR "cut.bmp" );
|
||||
pToolBar->AddTool( 1005, BMP_DIR "copy.bmp" );
|
||||
pToolBar->AddTool( 1006, BMP_DIR "paste.bmp" );
|
||||
|
||||
mpLayout->AddBar( pToolBar, // bar window (can be NULL)
|
||||
sizes2, FL_ALIGN_TOP, // alignment ( 0-top,1-bottom, etc)
|
||||
0, // insert into 0th row (vert. position)
|
||||
0, // offset from the start of row (in pixels)
|
||||
"ToolBar2", // name for reference in customization pop-ups
|
||||
FALSE
|
||||
);
|
||||
|
||||
mpLayout->EnableFloating( TRUE ); // off, thinking about wxGtk...
|
||||
}
|
||||
|
||||
MyFrame::~MyFrame()
|
||||
{
|
||||
if ( mpLayout)
|
||||
delete mpLayout; // should be destroyed manually
|
||||
}
|
||||
\end{verbatim}
|
||||
|
||||
\section{Controlling dragging behaviour}\label{controllingdragbehav}
|
||||
|
||||
Various pane-dragging behaviours are supported. FL can
|
||||
show an outline of where the window would be docked
|
||||
if you stopped dragging at that point.
|
||||
|
||||
This is a list of properties of interest in the cbCommonPaneProperties
|
||||
structure:
|
||||
|
||||
\begin{verbatim}
|
||||
bool mRealTimeUpdatesOn; // default: ON
|
||||
bool mOutOfPaneDragOn; // default: ON
|
||||
bool mExactDockPredictionOn; // default: OFF
|
||||
bool mNonDestructFrictionOn; // default: OFF
|
||||
\end{verbatim}
|
||||
|
||||
To get behaviour similar to Microsoft's DevStudio drag-ghost behaviour,
|
||||
mRealTimeUpdatesOn have to be set to FALSE, for example:
|
||||
|
||||
\begin{verbatim}
|
||||
cbCommonPaneProperties props;
|
||||
....
|
||||
....
|
||||
props.mRealTimeUpdatesOn = FALSE;
|
||||
fl->SetPaneProperties( props, wxALL_PANES );
|
||||
\end{verbatim}
|
||||
|
||||
{\it mOutOfPaneDragOn} specifies whether bars can be dragged
|
||||
away from this pane. (Note: this may not currently be working.)
|
||||
|
||||
{\it mExactDockPredictionOn} is only relevant when {\it mRealTimeUpdatesOn} is FALSE,
|
||||
and then the hint rectangle behaves a little jumpily. It tries to show
|
||||
exatly how the bar would look and where it would be docked if the dragging finished right
|
||||
now, i.e. the final position, with all the 'friction-physics' calculated.
|
||||
Otherwise the hint flies smothly above the surface only hinting whether the bar
|
||||
will be docked vertically or horizontally if dropped now.
|
||||
This is a feature you won't find anywhere else!
|
||||
|
||||
{\it mNonDestructFirctionOn} causes the bars not being dragged
|
||||
to stay where they are, while the currently dragged one is 'diving'
|
||||
through the underlaying panes, docking itself in and out in real time.
|
||||
Otherwise the stationary bars would be pushed around messing up the composition permanently.
|
||||
This flag is irelevant when {\it mRealTimeUpdatesOn} is FALSE, as the ghost-rect
|
||||
does not do any docking until the drag finishes.
|
||||
|