Compare commits

...

1 Commits

Author SHA1 Message Date
Bryan Petty
5599379cc6 This commit was manufactured by cvs2svn to create tag 'TOKENZR_ORIG'.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/tags/TOKENZR_ORIG@2882 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-23 17:13:12 +00:00
4285 changed files with 0 additions and 954827 deletions

View File

@@ -1,32 +0,0 @@
system.list
bin
.gdb_history
Test
config.cache
config.status
system.list
linux.system.cache
wx-config
config.log
linux-gnu.system.cache
*.dsp
*.dsw
*.plg
*.opt
*.aps
*.ncb
*.pro
*.opt
Release
Debug
ReleaseDLL
DebugDLL
robert
Makefile.in
setup.h.in
stamp-h.in
Makefile
configure
setup.h
stamp-h
libtool

View File

@@ -1,62 +0,0 @@
------------------------------------------------------------------------
How to build the sources from CVS
------------------------------------------------------------------------
I) Windows using plain makefiles
----------------------------------------
No idea, never did it.
II) Unix using plain makefiles.
----------------------------------------
No idea, never did it.
III) Windows using configure
----------------------------------------
No idea..
IV) Unix using configure
----------------------------------------
a) You have all the newest and greatest GNU tools installed on your system
and in the same directory hierachy (e.g. either all tools in /usr or all
in /usr/local), these tools are:
- GNU libtool 1.2e (1.3 doesn't work here)
- GNU autoconf 2.14 (including autoheader 2.14)
- GNU automake 1.4 (including aclocal 1.4)
and possibly but not forcibly
- GNU make 3.76.1
- GNU C++ (EGCS)
-> Go to the base directory
-> type: ./autogen.sh
b) You don't know what autos are and have no driver's licence anyway:
-> Go to the testconf directory
-> type: ./apply
a+b) Then proceed in either case with:
-> Choose a directory name that seems fit for building wxWindows, e.g. mybuild
-> Go the base directory
-> type: mkdir mybuild
-> type: cd mybuild
-> type: ../configure --with-gtk
or type: ../configure --with-motif
or type: ../configure --with-wine
-> type make
-> drink lots of coffee and go shopping
V) MacOS
----------------------------------------
V) OS/2
----------------------------------------

View File

@@ -1,13 +0,0 @@
AUTOMAKE_OPTIONS = 1.3
# no-dependencies
SUBDIRS = include src samples misc # utils user docs
bin_SCRIPTS = wx-config
configincludedir = $(libdir)/wx/include/wx/$(TOOLKIT_DIR)
configinclude_DATA = \
setup.h

View File

@@ -1,586 +0,0 @@
/* Generate setup.h.in from this file using autoheader. */
/* */
/* Version: $Id$ */
#ifndef __GTKSETUPH__
#define __GTKSETUPH__
#ifdef __GNUG__
#pragma interface
#endif
@TOP@
/* ------------------------------------------------------------------------ */
/* wxWindows version (not used but required by autoheader) */
/* ------------------------------------------------------------------------ */
/* needed for older automake? */
#undef WITH_SYMBOL_UNDERSCORE
/* ------------------------------------------------------------------------ */
/* define if support for GTK 1.2 features */
/* ------------------------------------------------------------------------ */
#undef __WXGTK12__
/* ------------------------------------------------------------------------ */
/* define the system to compile */
/* ------------------------------------------------------------------------ */
/*
* Define to 1 for Unix[-like] system
*/
#define wxUSE_UNIX 1
#undef __UNIX__
#undef __LINUX__
#undef __SGI__
#undef __HPUX__
#undef __SYSV__
#undef __SVR4__
#undef __AIX__
#undef __SUN__
#undef __SOLARIS__
#undef __SUNOS__
#undef __ALPHA__
#undef __OSF__
#undef __BSD__
#undef __FREEBSD__
#undef __VMS__
#undef __ULTRIX__
#undef __DATA_GENERAL__
#undef __EMX__
#undef __WINDOWS__
#undef __WIN95__
#undef __WIN32__
#undef __GNUWIN32__
/* ------------------------------------------------------------------------ */
/* compiler options */
/* ------------------------------------------------------------------------ */
/*
* Supports bool type
*/
#undef HAVE_BOOL
/* ------------------------------------------------------------------------ */
/* library options */
/* ------------------------------------------------------------------------ */
/*
* Use zlib
*/
#define wxUSE_ZLIB 0
/*
* Use libpng
*/
#define wxUSE_LIBPNG 0
/*
* Use libjpeg
*/
#define wxUSE_LIBJPEG 0
/*
* Use libgif
*/
#define wxUSE_LIBGIF 0
/*
* Use iODBC
*/
#define wxUSE_ODBC 0
/*
* Use Threads
*/
#define wxUSE_THREADS 0
/*
* Have glibc2
*/
#define wxHAVE_GLIBC2 0
/*
* Use libXpm
*/
#define wxHAVE_LIB_XPM 0
/*
* Use OpenGL
*/
#define wxUSE_OPENGL 0
/* ------------------------------------------------------------------------ */
/* GUI or not GUI? */
/* ------------------------------------------------------------------------ */
/*
* Use GUI
*/
#define wxUSE_GUI 1
/*
* Defined if !wxUSE_GUI
*/
#undef wxUSE_NOGUI
/* ------------------------------------------------------------------------ */
/* "global" GUI options */
/* ------------------------------------------------------------------------ */
/*
* Use constraints mechanism
*/
#define wxUSE_CONSTRAINTS 0
/*
* Use validators
*/
#define wxUSE_VALIDATORS 0
/*
* Use accelerators
*/
#define wxUSE_ACCEL 0
/*
* Use wxTextEntryDialog
*/
#define wxUSE_TEXTDLG 0
/*
* Use progress dialog
*/
#define wxUSE_PROGRESSDLG 0
/*
* Use directory chooser dialog
*/
#define wxUSE_DIRDLG 0
/*
* Joystick support (Linux/GTK only)
*/
#define wxUSE_JOYSTICK 0
/* ------------------------------------------------------------------------ */
/* GUI control options */
/* ------------------------------------------------------------------------ */
/*
* Use this control
*/
#define wxUSE_CARET 0
/*
* Use this control
*/
#define wxUSE_BMPBUTTON 0
/*
* Use this control
*/
#define wxUSE_CHECKBOX 0
/*
* Use this control
*/
#define wxUSE_CHECKLISTBOX 0
/*
* Use this control
*/
#define wxUSE_COMBOBOX 0
/*
* Use this control
*/
#define wxUSE_CHOICE 0
/*
* Use this control
*/
#define wxUSE_GAUGE 0
/*
* Use this control
*/
#define wxUSE_GRID 0
/*
* Use this control
*/
#define wxUSE_IMAGLIST 0
/*
* Use this control
*/
#define wxUSE_LISTBOX 0
/*
* Use this control
*/
#define wxUSE_LISTCTRL 0
/*
* Use this control
*/
#define wxUSE_NOTEBOOK 0
/*
* Use this control
*/
#define wxUSE_RADIOBOX 0
/*
* Use this control
*/
#define wxUSE_RADIOBTN 0
/*
* Use this control
*/
#define wxUSE_SASH 0
/*
* Use this control
*/
#define wxUSE_SCROLLBAR 0
/*
* Use this control
*/
#define wxUSE_SLIDER 0
/*
* Use this control
*/
#define wxUSE_SPINBTN 0
/*
* Use this control
*/
#define wxUSE_SPLITTER 0
/*
* Use this control
*/
#define wxUSE_STATBMP 0
/*
* Use this control
*/
#define wxUSE_STATBOX 0
/*
* Use this control
*/
#define wxUSE_STATLINE 0
/*
* Use this control
*/
#define wxUSE_STATUSBAR 0
/*
* Use Tab dialog class - obsolete, use wxNotebook instead
*/
#define wxUSE_TAB_DIALOG 0
/* compatibility */
#define wxUSE_TABDIALOG wxUSE_TAB_DIALOG
/*
* Use this control
*/
#define wxUSE_TOOLBAR 0
#ifdef __WXWINE__
#if wxUSE_TOOLBAR
#define wxUSE_BUTTONBAR 1
#endif
#endif
/*
* Use this control
*/
#define wxUSE_TREECTRL 0
/* ------------------------------------------------------------------------ */
/* non-GUI options */
/* ------------------------------------------------------------------------ */
/*
* Use wxLongLong (a.k.a. int64) class
*/
#define wxUSE_LONGLONG 0
/*
* Use wxFile class
*/
#define wxUSE_FILE 0
/*
* Use wxTextFile class
*/
#define wxUSE_TEXTFILE 0
/*
* Use log classes and logging functions
*/
#define wxUSE_LOG 0
/*
* Use time and date classes
*/
#define wxUSE_TIMEDATE 0
/*
* Use wave class
*/
#define wxUSE_WAVE 0
/*
* Use config system
*/
#define wxUSE_CONFIG 0
/*
* Use intl system
*/
#define wxUSE_INTL 0
/*
* Use streams
*/
#define wxUSE_STREAMS 0
/*
* Use class serialization
*/
#define wxUSE_SERIAL 0
/*
* Use sockets
*/
#define wxUSE_SOCKETS 0
/*
* Use standard C++ streams if 1. If 0, use wxWin
* streams implementation.
*/
#define wxUSE_STD_IOSTREAM 1
/*
* wxLibrary class
*/
#define wxUSE_DYNLIB_CLASS 1
/* ------------------------------------------------------------------------ */
/* PS options */
/* ------------------------------------------------------------------------ */
/*
* Use font metric files in GetTextExtent for wxPostScriptDC
* Use consistent PostScript fonts for AFM and printing (!)
*/
#define wxUSE_AFM_FOR_POSTSCRIPT 0
#define wxUSE_NORMALIZED_PS_FONTS 0
/* compatibility */
#define WX_NORMALIZED_PS_FONTS wxUSE_NORMALIZED_PS_FONTS
/*
* Use PostScript device context
*/
#define wxUSE_POSTSCRIPT 0
/* ------------------------------------------------------------------------ */
/* wxString options */
/* ------------------------------------------------------------------------ */
/*
* Compile wxString with wide character (Unicode) support?
*/
#define wxUSE_UNICODE 0
/*
* Work around a bug in GNU libc 5.x wcstombs() implementation.
*
* Note that you must link your programs with libc.a if you enable this and you
* have libc 5 (you should enable this for libc6 where wcsrtombs() is
* thread-safe version of wcstombs()).
*/
#define wxUSE_WCSRTOMBS 0
/*
* On some platforms overloading on size_t/int doesn't work, yet we'd like
* to define both size_t and int version of wxString::operator[] because it
* should really be size_t, but a lot of old, broken code uses int indices.
*/
#define wxUSE_SIZE_T_STRING_OPERATOR 0
/*
* Use the new experimental implementation of wxString::Printf()?
*
* Warning: enabling this may cause internal compiler errors with gcc!
*/
#define wxUSE_EXPERIMENTAL_PRINTF 0
/* ------------------------------------------------------------------------ */
/* misc options */
/* ------------------------------------------------------------------------ */
/*
* Use Interprocess communication
*/
#define wxUSE_IPC 0
/*
* Use wxGetResource & wxWriteResource (change .Xdefaults)
*/
#define wxUSE_X_RESOURCES 0
/*
* Use clipboard
*/
#define wxUSE_CLIPBOARD 0
/*
* Use tooltips
*/
#define wxUSE_TOOLTIPS 0
/*
* Use dnd
*/
#define wxUSE_DRAG_AND_DROP 0
/*
* Use spline
*/
#define wxUSE_SPLINES 0
/*
* Use wxLibrary class
*/
#define wxUSE_DYNLIB_CLASS 0
/* ------------------------------------------------------------------------ */
/* architecture options */
/* ------------------------------------------------------------------------ */
/*
* Use the mdi architecture
*/
#define wxUSE_MDI_ARCHITECTURE 0
/*
* Use the document/view architecture
*/
#define wxUSE_DOC_VIEW_ARCHITECTURE 0
/*
* Use the print/preview architecture
*/
#define wxUSE_PRINTING_ARCHITECTURE 0
/* ------------------------------------------------------------------------ */
/* Prolog and wxWindows' resource system options */
/* ------------------------------------------------------------------------ */
/*
* Use Prolog IO
*/
#define wxUSE_PROLOGIO 0
/*
* Use wxWindows resource loading (.wxr-files) (Needs wxUSE_PROLOGIO 1)
*/
#define wxUSE_RESOURCES 0
/* for compatibility */
#define wxUSE_WX_RESOURCES wxUSE_RESOURCES
/* ------------------------------------------------------------------------ */
/* the rest */
/* ------------------------------------------------------------------------ */
/*
* Use wxWindows help facility (needs wxUSE_IPC 1)
*/
#define wxUSE_HELP 0
/*
* Use iostream.h rather than iostream
*/
#define wxUSE_IOSTREAMH 0
/*
* Use Apple Ieee-double converter
*/
#define wxUSE_APPLE_IEEE 0
/*
* Compatibility with 1.66 API.
* Level 0: no backward compatibility, all new features
* Level 1: wxDC, OnSize (etc.) compatibility, but
* some new features such as event tables
*/
#define WXWIN_COMPATIBILITY 0
/*
* Compatibility with 2.0 API.
*/
#define WXWIN_COMPATIBILITY_2 1
/*
* Enables debugging: memory tracing, assert, etc., contains debug level
*/
#define WXDEBUG 0
/*
* Enables debugging version of wxObject::new and wxObject::delete (IF WXDEBUG)
* WARNING: this code may not work with all architectures, especially
* if alignment is an issue.
*/
#define wxUSE_MEMORY_TRACING 0
/*
* Enable debugging version of global memory operators new and delete
* Disable it, If this causes problems (e.g. link errors)
*/
#define wxUSE_DEBUG_NEW_ALWAYS 0
/*
* VZ: What does this one do? (FIXME)
*/
#define wxUSE_DEBUG_CONTEXT 0
/*
* In debug mode, causes new to be defined to
* be WXDEBUG_NEW (see object.h). If this causes
* problems (e.g. link errors), set this to 0.
*/
#define wxUSE_GLOBAL_MEMORY_OPERATORS 0
/*
* Matthews garbage collection (used for MrEd?)
*/
#define WXGARBAGE_COLLECTION_ON 0
/*
* Use splines
*/
#define wxUSE_SPLINES 0
/*
* wxUSE_DYNAMIC_CLASSES is TRUE for the Xt port
*/
#define wxUSE_DYNAMIC_CLASSES 1
/*
* Support for metafiles
*/
#define wxUSE_METAFILE 0
/*
* wxMiniFrame
*/
#define wxUSE_MINIFRAME 0
/*
* Disable this if your compiler can't cope
* with omission of prototype parameters.
*/
#define REMOVE_UNUSED_ARG 1
/*
* The const keyword is being introduced more in wxWindows.
* You can use this setting to maintain backward compatibility.
* If 0: will use const wherever possible.
* If 1: will use const only where necessary
* for precompiled headers to work.
* If 2: will be totally backward compatible, but precompiled
* headers may not work and program size will be larger.
*/
#define CONST_COMPATIBILITY 0
/* ------------------------------------------------------------------------ */
/* System-specific stuff */
/* ------------------------------------------------------------------------ */
/* The type of 3rd argument to getsockname() - usually size_t or int */
#undef SOCKLEN_T
/* Define if you have dlopen() */
#undef HAVE_DLOPEN
/* Define if you have nanosleep() */
#undef HAVE_NANOSLEEP
/* Define if you have sched_yield */
#undef HAVE_SCHED_YIELD
/* Define if you have pthread_cancel */
#undef HAVE_PTHREAD_CANCEL
/* Define if you have all functions to set thread priority */
#undef HAVE_THREAD_PRIORITY_FUNCTIONS
/* Define if you can specify exit functions to a thread */
#undef HAVE_THREAD_CLEANUP_FUNCTIONS
/* Define if you have shl_load() */
#undef HAVE_SHL_LOAD
/* Define if you have vsnprintf() */
#undef HAVE_VSNPRINTF
/* Define if you have usleep() */
#undef HAVE_USLEEP
/* Define if you have wcslen function */
#undef HAVE_WCSLEN
@BOTTOM@
#endif /* __GTKSETUPH__ */

View File

@@ -1,399 +0,0 @@
dnl ---------------------------------------------------------------------------
dnl
dnl Purpose: Cursom macros for autoconf configure script.
dnl Author: Vadim Zeitlin
dnl Created: 26.05.99
dnl Version: $Id$
dnl ---------------------------------------------------------------------------
dnl ===========================================================================
dnl GKT+ version test
dnl ===========================================================================
dnl ---------------------------------------------------------------------------
dnl AM_PATH_GTK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
dnl Test for GTK, and define GTK_CFLAGS and GTK_LIBS. Uses variables
dnl gtk_config_prefix and/or gtk_config_exec_prefix if defined.
dnl ---------------------------------------------------------------------------
dnl
AC_DEFUN(AM_PATH_GTK,
[
if test x$gtk_config_exec_prefix != x ; then
gtk_config_args="$gtk_config_args --exec-prefix=$gtk_config_exec_prefix"
if test x${GTK_CONFIG+set} != xset ; then
GTK_CONFIG=$gtk_config_exec_prefix/bin/gtk-config
fi
fi
if test x$gtk_config_prefix != x ; then
gtk_config_args="$gtk_config_args --prefix=$gtk_config_prefix"
if test x${GTK_CONFIG+set} != xset ; then
GTK_CONFIG=$gtk_config_prefix/bin/gtk-config
fi
fi
AC_PATH_PROG(GTK_CONFIG, gtk-config, no)
min_gtk_version=ifelse([$1], ,0.99.7,$1)
AC_MSG_CHECKING(for GTK - version >= $min_gtk_version)
no_gtk=""
if test "$GTK_CONFIG" != "no" ; then
GTK_CFLAGS=`$GTK_CONFIG --cflags`
GTK_LIBS=`$GTK_CONFIG --libs`
ac_save_CFLAGS="$CFLAGS"
ac_save_LIBS="$LIBS"
CFLAGS="$CFLAGS $GTK_CFLAGS"
LIBS="$LIBS $GTK_LIBS"
dnl
dnl Now check if the installed GTK is sufficiently new. (Also sanity
dnl checks the results of gtk-config to some extent)
dnl
AC_TRY_RUN([
#include <gtk/gtk.h>
#include <stdio.h>
int
main ()
{
int major, minor, micro;
if (sscanf("$min_gtk_version", "%d.%d.%d", &major, &minor, &micro) != 3) {
printf("%s, bad version string\n", "$min_gtk_version");
exit(1);
}
if (gtk_minor_version == 1) return FALSE;
return !((gtk_major_version > major) ||
((gtk_major_version == major) && (gtk_minor_version > minor)) ||
((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro)));
}
],, no_gtk=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
CFLAGS="$ac_save_CFLAGS"
LIBS="$ac_save_LIBS"
else
no_gtk=yes
fi
if test "x$no_gtk" = x ; then
AC_MSG_RESULT(yes)
ifelse([$2], , :, [$2])
else
AC_MSG_RESULT(no)
GTK_CFLAGS=""
GTK_LIBS=""
ifelse([$3], , :, [$3])
fi
AC_SUBST(GTK_CFLAGS)
AC_SUBST(GTK_LIBS)
])
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;
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_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_LIBRARIES,
[
ac_find_libraries=
for ac_dir in $1;
do
for ac_extension in a so sl; 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,
[
ac_path_to_include=$1
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
])
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 "x$HAVE_IOSTREAM" = x ; then
ifelse([$2], , :, [$2])
else
ifelse([$1], , :, [$1])
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_RUN([
int main()
{
bool b = true;
return 0;
}
],
[
AC_DEFINE(HAVE_BOOL)
wx_cv_cpp_bool=yes
],
wx_cv_cpp_bool=no,
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_SIZE_T_IS_NOT_INT checks whether size_t and int are different types,
dnl i.e. whether we may overload operator[] on its argument type
dnl ---------------------------------------------------------------------------
AC_DEFUN(WX_CPP_SIZE_T_IS_NOT_INT,
[
AC_CACHE_CHECK([if size_t and int are different types], wx_cv_cpp_sizet_not_int,
[
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
AC_TRY_RUN([
#include <stdlib.h>
class S
{
public:
S(char *s) { m_s = s; }
char operator[](size_t n) const { return m_s[n]; }
char operator[](int n) const { return m_s[n]; }
private:
char *m_s;
};
int main()
{
S s("dummy");
size_t n1 = 2;
int n2 = 3;
return s[n1] == s[n2];
}
],
AC_DEFINE(wxUSE_SIZE_T_STRING_OPERATOR) wx_cv_cpp_sizet_not_int=yes,
wx_cv_cpp_sizet_not_int=no,
wx_cv_cpp_sizet_not_int=no
)
AC_LANG_RESTORE
])
])
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 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)
AC_DEFUN(WX_ARG_ENABLE,
[
AC_MSG_CHECKING("for --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
])

View File

@@ -1,5 +0,0 @@
#!/bin/sh
aclocal -I .
autoheader
automake --foreign --verbose
autoconf

951
config.guess vendored
View File

@@ -1,951 +0,0 @@
#! /bin/sh
# Attempt to guess a canonical system name.
# Copyright (C) 1992, 93, 94, 95, 96, 97, 1998 Free Software Foundation, Inc.
#
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program 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
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# Written by Per Bothner <bothner@cygnus.com>.
# The master version of this file is at the FSF in /home/gd/gnu/lib.
#
# This script attempts to guess a canonical system name similar to
# config.sub. If it succeeds, it prints the system name on stdout, and
# exits with 0. Otherwise, it exits with 1.
#
# The plan is that this can be called by configure scripts if you
# don't specify an explicit system type (host/target name).
#
# Only a few systems have been added to this list; please add others
# (but try to keep the structure clean).
#
# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
# (ghazi@noc.rutgers.edu 8/24/94.)
if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
PATH=$PATH:/.attbin ; export PATH
fi
UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
trap 'rm -f dummy.c dummy.o dummy; exit 1' 1 2 15
# Note: order is significant - the case branches are not exclusive.
case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
alpha:OSF1:*:*)
if test $UNAME_RELEASE = "V4.0"; then
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
fi
# A Vn.n version is a released version.
# A Tn.n version is a released field test version.
# A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r.
cat <<EOF >dummy.s
.globl main
.ent main
main:
.frame \$30,0,\$26,0
.prologue 0
.long 0x47e03d80 # implver $0
lda \$2,259
.long 0x47e20c21 # amask $2,$1
srl \$1,8,\$2
sll \$2,2,\$2
sll \$0,3,\$0
addl \$1,\$0,\$0
addl \$2,\$0,\$0
ret \$31,(\$26),1
.end main
EOF
${CC-cc} dummy.s -o dummy 2>/dev/null
if test "$?" = 0 ; then
./dummy
case "$?" in
7)
UNAME_MACHINE="alpha"
;;
15)
UNAME_MACHINE="alphaev5"
;;
14)
UNAME_MACHINE="alphaev56"
;;
10)
UNAME_MACHINE="alphapca56"
;;
16)
UNAME_MACHINE="alphaev6"
;;
esac
fi
rm -f dummy.s dummy
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr [[A-Z]] [[a-z]]`
exit 0 ;;
21064:Windows_NT:50:3)
echo alpha-dec-winnt3.5
exit 0 ;;
Amiga*:UNIX_System_V:4.0:*)
echo m68k-cbm-sysv4
exit 0;;
amiga:NetBSD:*:*)
echo m68k-cbm-netbsd${UNAME_RELEASE}
exit 0 ;;
amiga:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
*:[Aa]miga[Oo][Ss]:*:*)
echo ${UNAME_MACHINE}-unknown-amigaos
exit 0 ;;
arc64:OpenBSD:*:*)
echo mips64el-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
arc:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
hkmips:OpenBSD:*:*)
echo mips-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
pmax:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
sgi:OpenBSD:*:*)
echo mips-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
wgrisc:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
echo arm-acorn-riscix${UNAME_RELEASE}
exit 0;;
arm32:NetBSD:*:*)
echo arm-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
exit 0 ;;
SR2?01:HI-UX/MPP:*:*)
echo hppa1.1-hitachi-hiuxmpp
exit 0;;
Pyramid*:OSx*:*:*|MIS*:OSx*:*:*|MIS*:SMP_DC-OSx*:*:*)
# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
if test "`(/bin/universe) 2>/dev/null`" = att ; then
echo pyramid-pyramid-sysv3
else
echo pyramid-pyramid-bsd
fi
exit 0 ;;
NILE:*:*:dcosx)
echo pyramid-pyramid-svr4
exit 0 ;;
sun4H:SunOS:5.*:*)
echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
i86pc:SunOS:5.*:*)
echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
sun4*:SunOS:6*:*)
# According to config.sub, this is the proper way to canonicalize
# SunOS6. Hard to guess exactly what SunOS6 will be like, but
# it's likely to be more like Solaris than SunOS4.
echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
sun4*:SunOS:*:*)
case "`/usr/bin/arch -k`" in
Series*|S4*)
UNAME_RELEASE=`uname -v`
;;
esac
# Japanese Language versions have a version number like `4.1.3-JL'.
echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
exit 0 ;;
sun3*:SunOS:*:*)
echo m68k-sun-sunos${UNAME_RELEASE}
exit 0 ;;
sun*:*:4.2BSD:*)
UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
case "`/bin/arch`" in
sun3)
echo m68k-sun-sunos${UNAME_RELEASE}
;;
sun4)
echo sparc-sun-sunos${UNAME_RELEASE}
;;
esac
exit 0 ;;
aushp:SunOS:*:*)
echo sparc-auspex-sunos${UNAME_RELEASE}
exit 0 ;;
atari*:NetBSD:*:*)
echo m68k-atari-netbsd${UNAME_RELEASE}
exit 0 ;;
atari*:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
sun3*:NetBSD:*:*)
echo m68k-sun-netbsd${UNAME_RELEASE}
exit 0 ;;
sun3*:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
mac68k:NetBSD:*:*)
echo m68k-apple-netbsd${UNAME_RELEASE}
exit 0 ;;
mac68k:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
mvme68k:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
mvme88k:OpenBSD:*:*)
echo m88k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
powerpc:machten:*:*)
echo powerpc-apple-machten${UNAME_RELEASE}
exit 0 ;;
macppc:NetBSD:*:*)
echo powerpc-apple-netbsd${UNAME_RELEASE}
exit 0 ;;
RISC*:Mach:*:*)
echo mips-dec-mach_bsd4.3
exit 0 ;;
RISC*:ULTRIX:*:*)
echo mips-dec-ultrix${UNAME_RELEASE}
exit 0 ;;
VAX*:ULTRIX*:*:*)
echo vax-dec-ultrix${UNAME_RELEASE}
exit 0 ;;
2020:CLIX:*:*)
echo clipper-intergraph-clix${UNAME_RELEASE}
exit 0 ;;
mips:*:*:UMIPS | mips:*:*:RISCos)
sed 's/^ //' << EOF >dummy.c
int main (argc, argv) int argc; char **argv; {
#if defined (host_mips) && defined (MIPSEB)
#if defined (SYSTYPE_SYSV)
printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
#endif
#if defined (SYSTYPE_SVR4)
printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
#endif
#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
#endif
#endif
exit (-1);
}
EOF
${CC-cc} dummy.c -o dummy \
&& ./dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
&& rm dummy.c dummy && exit 0
rm -f dummy.c dummy
echo mips-mips-riscos${UNAME_RELEASE}
exit 0 ;;
Night_Hawk:Power_UNIX:*:*)
echo powerpc-harris-powerunix
exit 0 ;;
m88k:CX/UX:7*:*)
echo m88k-harris-cxux7
exit 0 ;;
m88k:*:4*:R4*)
echo m88k-motorola-sysv4
exit 0 ;;
m88k:*:3*:R3*)
echo m88k-motorola-sysv3
exit 0 ;;
AViiON:dgux:*:*)
# DG/UX returns AViiON for all architectures
UNAME_PROCESSOR=`/usr/bin/uname -p`
if [ $UNAME_PROCESSOR = mc88100 -o $UNAME_PROCESSOR = mc88110 ] ; then
if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx \
-o ${TARGET_BINARY_INTERFACE}x = x ] ; then
echo m88k-dg-dgux${UNAME_RELEASE}
else
echo m88k-dg-dguxbcs${UNAME_RELEASE}
fi
else echo i586-dg-dgux${UNAME_RELEASE}
fi
exit 0 ;;
M88*:DolphinOS:*:*) # DolphinOS (SVR3)
echo m88k-dolphin-sysv3
exit 0 ;;
M88*:*:R3*:*)
# Delta 88k system running SVR3
echo m88k-motorola-sysv3
exit 0 ;;
XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
echo m88k-tektronix-sysv3
exit 0 ;;
Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
echo m68k-tektronix-bsd
exit 0 ;;
*:IRIX*:*:*)
echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
exit 0 ;;
????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX '
i?86:AIX:*:*)
echo i386-ibm-aix
exit 0 ;;
*:AIX:2:3)
if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
sed 's/^ //' << EOF >dummy.c
#include <sys/systemcfg.h>
main()
{
if (!__power_pc())
exit(1);
puts("powerpc-ibm-aix3.2.5");
exit(0);
}
EOF
${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0
rm -f dummy.c dummy
echo rs6000-ibm-aix3.2.5
elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
echo rs6000-ibm-aix3.2.4
else
echo rs6000-ibm-aix3.2
fi
exit 0 ;;
*:AIX:*:4)
IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
if /usr/sbin/lsattr -EHl ${IBM_CPU_ID} | grep POWER >/dev/null 2>&1; then
IBM_ARCH=rs6000
else
IBM_ARCH=powerpc
fi
if [ -x /usr/bin/oslevel ] ; then
IBM_REV=`/usr/bin/oslevel`
else
IBM_REV=4.${UNAME_RELEASE}
fi
echo ${IBM_ARCH}-ibm-aix${IBM_REV}
exit 0 ;;
*:AIX:*:*)
echo rs6000-ibm-aix
exit 0 ;;
ibmrt:4.4BSD:*|romp-ibm:BSD:*)
echo romp-ibm-bsd4.4
exit 0 ;;
ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC NetBSD and
echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
exit 0 ;; # report: romp-ibm BSD 4.3
*:BOSX:*:*)
echo rs6000-bull-bosx
exit 0 ;;
DPX/2?00:B.O.S.:*:*)
echo m68k-bull-sysv3
exit 0 ;;
9000/[34]??:4.3bsd:1.*:*)
echo m68k-hp-bsd
exit 0 ;;
hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
echo m68k-hp-bsd4.4
exit 0 ;;
9000/[34678]??:HP-UX:*:*)
case "${UNAME_MACHINE}" in
9000/31? ) HP_ARCH=m68000 ;;
9000/[34]?? ) HP_ARCH=m68k ;;
9000/6?? | 9000/7?? | 9000/80[24] | 9000/8?[13679] | 9000/892 )
sed 's/^ //' << EOF >dummy.c
#include <stdlib.h>
#include <unistd.h>
int main ()
{
#if defined(_SC_KERNEL_BITS)
long bits = sysconf(_SC_KERNEL_BITS);
#endif
long cpu = sysconf (_SC_CPU_VERSION);
switch (cpu)
{
case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
case CPU_PA_RISC2_0:
#if defined(_SC_KERNEL_BITS)
switch (bits)
{
case 64: puts ("hppa2.0w"); break;
case 32: puts ("hppa2.0n"); break;
default: puts ("hppa2.0"); break;
} break;
#else /* !defined(_SC_KERNEL_BITS) */
puts ("hppa2.0"); break;
#endif
default: puts ("hppa1.0"); break;
}
exit (0);
}
EOF
(${CC-cc} dummy.c -o dummy 2>/dev/null ) && HP_ARCH=`./dummy`
rm -f dummy.c dummy
esac
HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
echo ${HP_ARCH}-hp-hpux${HPUX_REV}
exit 0 ;;
3050*:HI-UX:*:*)
sed 's/^ //' << EOF >dummy.c
#include <unistd.h>
int
main ()
{
long cpu = sysconf (_SC_CPU_VERSION);
/* The order matters, because CPU_IS_HP_MC68K erroneously returns
true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
results, however. */
if (CPU_IS_PA_RISC (cpu))
{
switch (cpu)
{
case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
default: puts ("hppa-hitachi-hiuxwe2"); break;
}
}
else if (CPU_IS_HP_MC68K (cpu))
puts ("m68k-hitachi-hiuxwe2");
else puts ("unknown-hitachi-hiuxwe2");
exit (0);
}
EOF
${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0
rm -f dummy.c dummy
echo unknown-hitachi-hiuxwe2
exit 0 ;;
9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
echo hppa1.1-hp-bsd
exit 0 ;;
9000/8??:4.3bsd:*:*)
echo hppa1.0-hp-bsd
exit 0 ;;
hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
echo hppa1.1-hp-osf
exit 0 ;;
hp8??:OSF1:*:*)
echo hppa1.0-hp-osf
exit 0 ;;
i?86:OSF1:*:*)
if [ -x /usr/sbin/sysversion ] ; then
echo ${UNAME_MACHINE}-unknown-osf1mk
else
echo ${UNAME_MACHINE}-unknown-osf1
fi
exit 0 ;;
parisc*:Lites*:*:*)
echo hppa1.1-hp-lites
exit 0 ;;
C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
echo c1-convex-bsd
exit 0 ;;
C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
if getsysinfo -f scalar_acc
then echo c32-convex-bsd
else echo c2-convex-bsd
fi
exit 0 ;;
C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
echo c34-convex-bsd
exit 0 ;;
C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
echo c38-convex-bsd
exit 0 ;;
C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
echo c4-convex-bsd
exit 0 ;;
CRAY*X-MP:*:*:*)
echo xmp-cray-unicos
exit 0 ;;
CRAY*Y-MP:*:*:*)
echo ymp-cray-unicos${UNAME_RELEASE}
exit 0 ;;
CRAY*[A-Z]90:*:*:*)
echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
exit 0 ;;
CRAY*TS:*:*:*)
echo t90-cray-unicos${UNAME_RELEASE}
exit 0 ;;
CRAY-2:*:*:*)
echo cray2-cray-unicos
exit 0 ;;
F300:UNIX_System_V:*:*)
FUJITSU_SYS=`uname -p | tr [A-Z] [a-z] | sed -e 's/\///'`
FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
echo "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
exit 0 ;;
F301:UNIX_System_V:*:*)
echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'`
exit 0 ;;
hp3[0-9][05]:NetBSD:*:*)
echo m68k-hp-netbsd${UNAME_RELEASE}
exit 0 ;;
hp300:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
sparc*:BSD/OS:*:*)
echo sparc-unknown-bsdi${UNAME_RELEASE}
exit 0 ;;
i?86:BSD/386:*:* | *:BSD/OS:*:*)
echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
exit 0 ;;
*:FreeBSD:*:*)
echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
exit 0 ;;
*:NetBSD:*:*)
echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
exit 0 ;;
*:OpenBSD:*:*)
echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
exit 0 ;;
i*:CYGWIN*:*)
echo ${UNAME_MACHINE}-pc-cygwin32
exit 0 ;;
i*:MINGW*:*)
echo ${UNAME_MACHINE}-pc-mingw32
exit 0 ;;
p*:CYGWIN*:*)
echo powerpcle-unknown-cygwin32
exit 0 ;;
prep*:SunOS:5.*:*)
echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
*:GNU:*:*)
echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
exit 0 ;;
*:Linux:*:*)
# uname on the ARM produces all sorts of strangeness, and we need to
# filter it out.
case "$UNAME_MACHINE" in
arm* | sa110*) UNAME_MACHINE="arm" ;;
esac
# The BFD linker knows what the default object file format is, so
# first see if it will tell us.
ld_help_string=`ld --help 2>&1`
ld_supported_emulations=`echo $ld_help_string \
| sed -ne '/supported emulations:/!d
s/[ ][ ]*/ /g
s/.*supported emulations: *//
s/ .*//
p'`
case "$ld_supported_emulations" in
i?86linux) echo "${UNAME_MACHINE}-pc-linux-gnuaout" ; exit 0 ;;
i?86coff) echo "${UNAME_MACHINE}-pc-linux-gnucoff" ; exit 0 ;;
sparclinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
armlinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
m68klinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
elf32ppc) echo "powerpc-unknown-linux-gnu" ; exit 0 ;;
esac
if test "${UNAME_MACHINE}" = "alpha" ; then
sed 's/^ //' <<EOF >dummy.s
.globl main
.ent main
main:
.frame \$30,0,\$26,0
.prologue 0
.long 0x47e03d80 # implver $0
lda \$2,259
.long 0x47e20c21 # amask $2,$1
srl \$1,8,\$2
sll \$2,2,\$2
sll \$0,3,\$0
addl \$1,\$0,\$0
addl \$2,\$0,\$0
ret \$31,(\$26),1
.end main
EOF
LIBC=""
${CC-cc} dummy.s -o dummy 2>/dev/null
if test "$?" = 0 ; then
./dummy
case "$?" in
7)
UNAME_MACHINE="alpha"
;;
15)
UNAME_MACHINE="alphaev5"
;;
14)
UNAME_MACHINE="alphaev56"
;;
10)
UNAME_MACHINE="alphapca56"
;;
16)
UNAME_MACHINE="alphaev6"
;;
esac
objdump --private-headers dummy | \
grep ld.so.1 > /dev/null
if test "$?" = 0 ; then
LIBC="libc1"
fi
fi
rm -f dummy.s dummy
echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ; exit 0
elif test "${UNAME_MACHINE}" = "mips" ; then
cat >dummy.c <<EOF
main(argc, argv)
int argc;
char *argv[];
{
#ifdef __MIPSEB__
printf ("%s-unknown-linux-gnu\n", argv[1]);
#endif
#ifdef __MIPSEL__
printf ("%sel-unknown-linux-gnu\n", argv[1]);
#endif
return 0;
}
EOF
${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy "${UNAME_MACHINE}" && rm dummy.c dummy && exit 0
rm -f dummy.c dummy
else
# Either a pre-BFD a.out linker (linux-gnuoldld)
# or one that does not give us useful --help.
# GCC wants to distinguish between linux-gnuoldld and linux-gnuaout.
# If ld does not provide *any* "supported emulations:"
# that means it is gnuoldld.
echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations:"
test $? != 0 && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
case "${UNAME_MACHINE}" in
i?86)
VENDOR=pc;
;;
*)
VENDOR=unknown;
;;
esac
# Determine whether the default compiler is a.out or elf
cat >dummy.c <<EOF
#include <features.h>
main(argc, argv)
int argc;
char *argv[];
{
#ifdef __ELF__
# ifdef __GLIBC__
# if __GLIBC__ >= 2
printf ("%s-${VENDOR}-linux-gnu\n", argv[1]);
# else
printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
# endif
# else
printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
# endif
#else
printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]);
#endif
return 0;
}
EOF
${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy "${UNAME_MACHINE}" && rm dummy.c dummy && exit 0
rm -f dummy.c dummy
fi ;;
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. earlier versions
# are messed up and put the nodename in both sysname and nodename.
i?86:DYNIX/ptx:4*:*)
echo i386-sequent-sysv4
exit 0 ;;
i?86:UNIX_SV:4.2MP:2.*)
# Unixware is an offshoot of SVR4, but it has its own version
# number series starting with 2...
# I am not positive that other SVR4 systems won't match this,
# I just have to hope. -- rms.
# Use sysv4.2uw... so that sysv4* matches it.
echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
exit 0 ;;
i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*)
if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
echo ${UNAME_MACHINE}-univel-sysv${UNAME_RELEASE}
else
echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
fi
exit 0 ;;
i?86:*:3.2:*)
if test -f /usr/options/cb.name; then
UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
elif /bin/uname -X 2>/dev/null >/dev/null ; then
UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
(/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
(/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
&& UNAME_MACHINE=i586
echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
else
echo ${UNAME_MACHINE}-pc-sysv32
fi
exit 0 ;;
i?86:UnixWare:*:*)
if /bin/uname -X 2>/dev/null >/dev/null ; then
(/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
&& UNAME_MACHINE=i586
fi
echo ${UNAME_MACHINE}-unixware-${UNAME_RELEASE}-${UNAME_VERSION}
exit 0 ;;
pc:*:*:*)
# uname -m prints for DJGPP always 'pc', but it prints nothing about
# the processor, so we play safe by assuming i386.
echo i386-pc-msdosdjgpp
exit 0 ;;
Intel:Mach:3*:*)
echo i386-pc-mach3
exit 0 ;;
paragon:*:*:*)
echo i860-intel-osf1
exit 0 ;;
i860:*:4.*:*) # i860-SVR4
if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
else # Add other i860-SVR4 vendors below as they are discovered.
echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
fi
exit 0 ;;
mini*:CTIX:SYS*5:*)
# "miniframe"
echo m68010-convergent-sysv
exit 0 ;;
M68*:*:R3V[567]*:*)
test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
OS_REL=''
test -r /etc/.relid \
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
&& echo i486-ncr-sysv4.3${OS_REL} && exit 0
/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
&& echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
&& echo i486-ncr-sysv4 && exit 0 ;;
m68*:LynxOS:2.*:*)
echo m68k-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
mc68030:UNIX_System_V:4.*:*)
echo m68k-atari-sysv4
exit 0 ;;
i?86:LynxOS:2.*:*)
echo i386-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
TSUNAMI:LynxOS:2.*:*)
echo sparc-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
rs6000:LynxOS:2.*:* | PowerPC:LynxOS:2.*:*)
echo rs6000-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
SM[BE]S:UNIX_SV:*:*)
echo mips-dde-sysv${UNAME_RELEASE}
exit 0 ;;
RM*:SINIX-*:*:*)
echo mips-sni-sysv4
exit 0 ;;
*:SINIX-*:*:*)
if uname -p 2>/dev/null >/dev/null ; then
UNAME_MACHINE=`(uname -p) 2>/dev/null`
echo ${UNAME_MACHINE}-sni-sysv4
else
echo ns32k-sni-sysv
fi
exit 0 ;;
PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
# says <Richard.M.Bartel@ccMail.Census.GOV>
echo i586-unisys-sysv4
exit 0 ;;
*:UNIX_System_V:4*:FTX*)
# From Gerald Hewes <hewes@openmarket.com>.
# How about differentiating between stratus architectures? -djm
echo hppa1.1-stratus-sysv4
exit 0 ;;
*:*:*:FTX*)
# From seanf@swdc.stratus.com.
echo i860-stratus-sysv4
exit 0 ;;
mc68*:A/UX:*:*)
echo m68k-apple-aux${UNAME_RELEASE}
exit 0 ;;
news*:NEWS-OS:*:6*)
echo mips-sony-newsos6
exit 0 ;;
R3000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R4000:UNIX_SV:*:*)
if [ -d /usr/nec ]; then
echo mips-nec-sysv${UNAME_RELEASE}
else
echo mips-unknown-sysv${UNAME_RELEASE}
fi
exit 0 ;;
BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
echo powerpc-be-beos
exit 0 ;;
BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
echo powerpc-apple-beos
exit 0 ;;
BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
echo i586-pc-beos
exit 0 ;;
esac
#echo '(No uname command or uname output not recognized.)' 1>&2
#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
cat >dummy.c <<EOF
#ifdef _SEQUENT_
# include <sys/types.h>
# include <sys/utsname.h>
#endif
main ()
{
#if defined (sony)
#if defined (MIPSEB)
/* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
I don't know.... */
printf ("mips-sony-bsd\n"); exit (0);
#else
#include <sys/param.h>
printf ("m68k-sony-newsos%s\n",
#ifdef NEWSOS4
"4"
#else
""
#endif
); exit (0);
#endif
#endif
#if defined (__arm) && defined (__acorn) && defined (__unix)
printf ("arm-acorn-riscix"); exit (0);
#endif
#if defined (hp300) && !defined (hpux)
printf ("m68k-hp-bsd\n"); exit (0);
#endif
#if defined (NeXT)
#if !defined (__ARCHITECTURE__)
#define __ARCHITECTURE__ "m68k"
#endif
int version;
version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
exit (0);
#endif
#if defined (MULTIMAX) || defined (n16)
#if defined (UMAXV)
printf ("ns32k-encore-sysv\n"); exit (0);
#else
#if defined (CMU)
printf ("ns32k-encore-mach\n"); exit (0);
#else
printf ("ns32k-encore-bsd\n"); exit (0);
#endif
#endif
#endif
#if defined (__386BSD__)
printf ("i386-pc-bsd\n"); exit (0);
#endif
#if defined (sequent)
#if defined (i386)
printf ("i386-sequent-dynix\n"); exit (0);
#endif
#if defined (ns32000)
printf ("ns32k-sequent-dynix\n"); exit (0);
#endif
#endif
#if defined (_SEQUENT_)
struct utsname un;
uname(&un);
if (strncmp(un.version, "V2", 2) == 0) {
printf ("i386-sequent-ptx2\n"); exit (0);
}
if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
printf ("i386-sequent-ptx1\n"); exit (0);
}
printf ("i386-sequent-ptx\n"); exit (0);
#endif
#if defined (vax)
#if !defined (ultrix)
printf ("vax-dec-bsd\n"); exit (0);
#else
printf ("vax-dec-ultrix\n"); exit (0);
#endif
#endif
#if defined (alliant) && defined (i860)
printf ("i860-alliant-bsd\n"); exit (0);
#endif
exit (1);
}
EOF
${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy && rm dummy.c dummy && exit 0
rm -f dummy.c dummy
# Apollos put the system type in the environment.
test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
# Convex versions that predate uname can use getsysinfo(1)
if [ -x /usr/convex/getsysinfo ]
then
case `getsysinfo -f cpu_type` in
c1*)
echo c1-convex-bsd
exit 0 ;;
c2*)
if getsysinfo -f scalar_acc
then echo c32-convex-bsd
else echo c2-convex-bsd
fi
exit 0 ;;
c34*)
echo c34-convex-bsd
exit 0 ;;
c38*)
echo c38-convex-bsd
exit 0 ;;
c4*)
echo c4-convex-bsd
exit 0 ;;
esac
fi
#echo '(Unable to guess system type)' 1>&2
exit 1

955
config.sub vendored
View File

@@ -1,955 +0,0 @@
#! /bin/sh
# Configuration validation subroutine script, version 1.1.
# Copyright (C) 1991, 92-97, 1998 Free Software Foundation, Inc.
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
# can handle that machine. It does not imply ALL GNU software can.
#
# This file is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program 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 General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# Configuration subroutine to validate and canonicalize a configuration type.
# Supply the specified configuration type as an argument.
# If it is invalid, we print an error message on stderr and exit with code 1.
# Otherwise, we print the canonical config type on stdout and succeed.
# This file is supposed to be the same for all GNU packages
# and recognize all the CPU types, system types and aliases
# that are meaningful with *any* GNU software.
# Each package is responsible for reporting which valid configurations
# it does not support. The user should be able to distinguish
# a failure to support a valid configuration from a meaningless
# configuration.
# The goal of this file is to map all the various variations of a given
# machine specification into a single specification in the form:
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
# or in some cases, the newer four-part form:
# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
# It is wrong to echo any other type of specification.
if [ x$1 = x ]
then
echo Configuration name missing. 1>&2
echo "Usage: $0 CPU-MFR-OPSYS" 1>&2
echo "or $0 ALIAS" 1>&2
echo where ALIAS is a recognized configuration type. 1>&2
exit 1
fi
# First pass through any local machine types.
case $1 in
*local*)
echo $1
exit 0
;;
*)
;;
esac
# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
# Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
linux-gnu*)
os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;;
*)
basic_machine=`echo $1 | sed 's/-[^-]*$//'`
if [ $basic_machine != $1 ]
then os=`echo $1 | sed 's/.*-/-/'`
else os=; fi
;;
esac
### Let's recognize common machines as not being operating systems so
### that things like config.sub decstation-3100 work. We also
### recognize some manufacturers as not being operating systems, so we
### can provide default operating systems below.
case $os in
-sun*os*)
# Prevent following clause from handling this invalid input.
;;
-dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
-att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-apple)
os=
basic_machine=$1
;;
-hiux*)
os=-hiuxwe2
;;
-sco5)
os=sco3.2v5
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-sco4)
os=-sco3.2v4
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-sco3.2.[4-9]*)
os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-sco3.2v[4-9]*)
# Don't forget version if it is 3.2v4 or newer.
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-sco*)
os=-sco3.2v2
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-isc)
os=-isc2.2
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-clix*)
basic_machine=clipper-intergraph
;;
-isc*)
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-lynx*)
os=-lynxos
;;
-ptx*)
basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
;;
-windowsnt*)
os=`echo $os | sed -e 's/windowsnt/winnt/'`
;;
-psos*)
os=-psos
;;
esac
# Decode aliases for certain CPU-COMPANY combinations.
case $basic_machine in
# Recognize the basic CPU types without company name.
# Some are omitted here because they have special meanings below.
tahoe | i860 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \
| arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \
| 580 | i960 | h8300 | hppa | hppa1.0 | hppa1.1 | hppa2.0 \
| alpha | alphaev5 | alphaev56 | we32k | ns16k | clipper \
| i370 | sh | powerpc | powerpcle | 1750a | dsp16xx | pdp11 \
| mips64 | mipsel | mips64el | mips64orion | mips64orionel \
| mipstx39 | mipstx39el \
| sparc | sparclet | sparclite | sparc64 | v850)
basic_machine=$basic_machine-unknown
;;
# We use `pc' rather than `unknown'
# because (1) that's what they normally are, and
# (2) the word "unknown" tends to confuse beginning users.
i[34567]86)
basic_machine=$basic_machine-pc
;;
# Object if more than one company name word.
*-*-*)
echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
exit 1
;;
# Recognize the basic CPU types with company name.
vax-* | tahoe-* | i[34567]86-* | i860-* | m32r-* | m68k-* | m68000-* \
| m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \
| mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
| power-* | none-* | 580-* | cray2-* | h8300-* | i960-* \
| xmp-* | ymp-* | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* \
| alpha-* | alphaev5-* | alphaev56-* | we32k-* | cydra-* \
| ns16k-* | pn-* | np1-* | xps100-* | clipper-* | orion-* \
| sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \
| sparc64-* | mips64-* | mipsel-* \
| mips64el-* | mips64orion-* | mips64orionel-* \
| mipstx39-* | mipstx39el-* \
| f301-*)
;;
# Recognize the various machine names and aliases which stand
# for a CPU type and a company and sometimes even an OS.
3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
basic_machine=m68000-att
;;
3b*)
basic_machine=we32k-att
;;
alliant | fx80)
basic_machine=fx80-alliant
;;
altos | altos3068)
basic_machine=m68k-altos
;;
am29k)
basic_machine=a29k-none
os=-bsd
;;
amdahl)
basic_machine=580-amdahl
os=-sysv
;;
amiga | amiga-*)
basic_machine=m68k-cbm
;;
amigaos | amigados)
basic_machine=m68k-cbm
os=-amigaos
;;
amigaunix | amix)
basic_machine=m68k-cbm
os=-sysv4
;;
apollo68)
basic_machine=m68k-apollo
os=-sysv
;;
aux)
basic_machine=m68k-apple
os=-aux
;;
balance)
basic_machine=ns32k-sequent
os=-dynix
;;
convex-c1)
basic_machine=c1-convex
os=-bsd
;;
convex-c2)
basic_machine=c2-convex
os=-bsd
;;
convex-c32)
basic_machine=c32-convex
os=-bsd
;;
convex-c34)
basic_machine=c34-convex
os=-bsd
;;
convex-c38)
basic_machine=c38-convex
os=-bsd
;;
cray | ymp)
basic_machine=ymp-cray
os=-unicos
;;
cray2)
basic_machine=cray2-cray
os=-unicos
;;
[ctj]90-cray)
basic_machine=c90-cray
os=-unicos
;;
crds | unos)
basic_machine=m68k-crds
;;
da30 | da30-*)
basic_machine=m68k-da30
;;
decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
basic_machine=mips-dec
;;
delta | 3300 | motorola-3300 | motorola-delta \
| 3300-motorola | delta-motorola)
basic_machine=m68k-motorola
;;
delta88)
basic_machine=m88k-motorola
os=-sysv3
;;
dpx20 | dpx20-*)
basic_machine=rs6000-bull
os=-bosx
;;
dpx2* | dpx2*-bull)
basic_machine=m68k-bull
os=-sysv3
;;
ebmon29k)
basic_machine=a29k-amd
os=-ebmon
;;
elxsi)
basic_machine=elxsi-elxsi
os=-bsd
;;
encore | umax | mmax)
basic_machine=ns32k-encore
;;
fx2800)
basic_machine=i860-alliant
;;
genix)
basic_machine=ns32k-ns
;;
gmicro)
basic_machine=tron-gmicro
os=-sysv
;;
h3050r* | hiux*)
basic_machine=hppa1.1-hitachi
os=-hiuxwe2
;;
h8300hms)
basic_machine=h8300-hitachi
os=-hms
;;
harris)
basic_machine=m88k-harris
os=-sysv3
;;
hp300-*)
basic_machine=m68k-hp
;;
hp300bsd)
basic_machine=m68k-hp
os=-bsd
;;
hp300hpux)
basic_machine=m68k-hp
os=-hpux
;;
hp9k2[0-9][0-9] | hp9k31[0-9])
basic_machine=m68000-hp
;;
hp9k3[2-9][0-9])
basic_machine=m68k-hp
;;
hp9k7[0-9][0-9] | hp7[0-9][0-9] | hp9k8[0-9]7 | hp8[0-9]7)
basic_machine=hppa1.1-hp
;;
hp9k8[0-9][0-9] | hp8[0-9][0-9])
basic_machine=hppa1.0-hp
;;
hppa-next)
os=-nextstep3
;;
i370-ibm* | ibm*)
basic_machine=i370-ibm
os=-mvs
;;
# I'm not sure what "Sysv32" means. Should this be sysv3.2?
i[34567]86v32)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv32
;;
i[34567]86v4*)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv4
;;
i[34567]86v)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv
;;
i[34567]86sol2)
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-solaris2
;;
iris | iris4d)
basic_machine=mips-sgi
case $os in
-irix*)
;;
*)
os=-irix4
;;
esac
;;
isi68 | isi)
basic_machine=m68k-isi
os=-sysv
;;
m88k-omron*)
basic_machine=m88k-omron
;;
magnum | m3230)
basic_machine=mips-mips
os=-sysv
;;
merlin)
basic_machine=ns32k-utek
os=-sysv
;;
miniframe)
basic_machine=m68000-convergent
;;
mipsel*-linux*)
basic_machine=mipsel-unknown
os=-linux-gnu
;;
mips*-linux*)
basic_machine=mips-unknown
os=-linux-gnu
;;
mips3*-*)
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
;;
mips3*)
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
;;
ncr3000)
basic_machine=i486-ncr
os=-sysv4
;;
news | news700 | news800 | news900)
basic_machine=m68k-sony
os=-newsos
;;
news1000)
basic_machine=m68030-sony
os=-newsos
;;
news-3600 | risc-news)
basic_machine=mips-sony
os=-newsos
;;
next | m*-next )
basic_machine=m68k-next
case $os in
-nextstep* )
;;
-ns2*)
os=-nextstep2
;;
*)
os=-nextstep3
;;
esac
;;
nh3000)
basic_machine=m68k-harris
os=-cxux
;;
nh[45]000)
basic_machine=m88k-harris
os=-cxux
;;
nindy960)
basic_machine=i960-intel
os=-nindy
;;
np1)
basic_machine=np1-gould
;;
pa-hitachi)
basic_machine=hppa1.1-hitachi
os=-hiuxwe2
;;
paragon)
basic_machine=i860-intel
os=-osf
;;
pbd)
basic_machine=sparc-tti
;;
pbb)
basic_machine=m68k-tti
;;
pc532 | pc532-*)
basic_machine=ns32k-pc532
;;
pentium | p5 | k5 | nexen)
basic_machine=i586-pc
;;
pentiumpro | p6 | k6 | 6x86)
basic_machine=i686-pc
;;
pentiumii | pentium2)
basic_machine=i786-pc
;;
pentium-* | p5-* | k5-* | nexen-*)
basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pentiumpro-* | p6-* | k6-* | 6x86-*)
basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pentiumii-* | pentium2-*)
basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pn)
basic_machine=pn-gould
;;
power) basic_machine=rs6000-ibm
;;
ppc) basic_machine=powerpc-unknown
;;
ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ppcle | powerpclittle | ppc-le | powerpc-little)
basic_machine=powerpcle-unknown
;;
ppcle-* | powerpclittle-*)
basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
ps2)
basic_machine=i386-ibm
;;
rm[46]00)
basic_machine=mips-siemens
;;
rtpc | rtpc-*)
basic_machine=romp-ibm
;;
sequent)
basic_machine=i386-sequent
;;
sh)
basic_machine=sh-hitachi
os=-hms
;;
sps7)
basic_machine=m68k-bull
os=-sysv2
;;
spur)
basic_machine=spur-unknown
;;
sun2)
basic_machine=m68000-sun
;;
sun2os3)
basic_machine=m68000-sun
os=-sunos3
;;
sun2os4)
basic_machine=m68000-sun
os=-sunos4
;;
sun3os3)
basic_machine=m68k-sun
os=-sunos3
;;
sun3os4)
basic_machine=m68k-sun
os=-sunos4
;;
sun4os3)
basic_machine=sparc-sun
os=-sunos3
;;
sun4os4)
basic_machine=sparc-sun
os=-sunos4
;;
sun4sol2)
basic_machine=sparc-sun
os=-solaris2
;;
sun3 | sun3-*)
basic_machine=m68k-sun
;;
sun4)
basic_machine=sparc-sun
;;
sun386 | sun386i | roadrunner)
basic_machine=i386-sun
;;
symmetry)
basic_machine=i386-sequent
os=-dynix
;;
tx39)
basic_machine=mipstx39-unknown
;;
tx39el)
basic_machine=mipstx39el-unknown
;;
tower | tower-32)
basic_machine=m68k-ncr
;;
udi29k)
basic_machine=a29k-amd
os=-udi
;;
ultra3)
basic_machine=a29k-nyu
os=-sym1
;;
vaxv)
basic_machine=vax-dec
os=-sysv
;;
vms)
basic_machine=vax-dec
os=-vms
;;
vpp*|vx|vx-*)
basic_machine=f301-fujitsu
;;
vxworks960)
basic_machine=i960-wrs
os=-vxworks
;;
vxworks68)
basic_machine=m68k-wrs
os=-vxworks
;;
vxworks29k)
basic_machine=a29k-wrs
os=-vxworks
;;
xmp)
basic_machine=xmp-cray
os=-unicos
;;
xps | xps100)
basic_machine=xps100-honeywell
;;
none)
basic_machine=none-none
os=-none
;;
# Here we handle the default manufacturer of certain CPU types. It is in
# some cases the only manufacturer, in others, it is the most popular.
mips)
if [ x$os = x-linux-gnu ]; then
basic_machine=mips-unknown
else
basic_machine=mips-mips
fi
;;
romp)
basic_machine=romp-ibm
;;
rs6000)
basic_machine=rs6000-ibm
;;
vax)
basic_machine=vax-dec
;;
pdp11)
basic_machine=pdp11-dec
;;
we32k)
basic_machine=we32k-att
;;
sparc)
basic_machine=sparc-sun
;;
cydra)
basic_machine=cydra-cydrome
;;
orion)
basic_machine=orion-highlevel
;;
orion105)
basic_machine=clipper-highlevel
;;
*)
echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
exit 1
;;
esac
# Here we canonicalize certain aliases for manufacturers.
case $basic_machine in
*-digital*)
basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
;;
*-commodore*)
basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
;;
*)
;;
esac
# Decode manufacturer-specific aliases for certain operating systems.
if [ x"$os" != x"" ]
then
case $os in
# First match some system type aliases
# that might get confused with valid system types.
# -solaris* is a basic system type, with this one exception.
-solaris1 | -solaris1.*)
os=`echo $os | sed -e 's|solaris1|sunos4|'`
;;
-solaris)
os=-solaris2
;;
-svr4*)
os=-sysv4
;;
-unixware*)
os=-sysv4.2uw
;;
-gnu/linux*)
os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
;;
# First accept the basic system types.
# The portable systems comes first.
# Each alternative MUST END IN A *, to match a version number.
# -sysv* is not here because it comes later, after sysvr4.
-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
| -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
| -aos* \
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
| -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
| -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -cygwin32* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
| -mingw32* | -linux-gnu* | -uxpv* | -beos*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-linux*)
os=`echo $os | sed -e 's|linux|linux-gnu|'`
;;
-sunos5*)
os=`echo $os | sed -e 's|sunos5|solaris2|'`
;;
-sunos6*)
os=`echo $os | sed -e 's|sunos6|solaris3|'`
;;
-osfrose*)
os=-osfrose
;;
-osf*)
os=-osf
;;
-utek*)
os=-bsd
;;
-dynix*)
os=-bsd
;;
-acis*)
os=-aos
;;
-ctix* | -uts*)
os=-sysv
;;
-ns2 )
os=-nextstep2
;;
# Preserve the version number of sinix5.
-sinix5.*)
os=`echo $os | sed -e 's|sinix|sysv|'`
;;
-sinix*)
os=-sysv4
;;
-triton*)
os=-sysv3
;;
-oss*)
os=-sysv3
;;
-svr4)
os=-sysv4
;;
-svr3)
os=-sysv3
;;
-sysvr4)
os=-sysv4
;;
# This must come after -sysvr4.
-sysv*)
;;
-xenix)
os=-xenix
;;
-none)
;;
*)
# Get rid of the `-' at the beginning of $os.
os=`echo $os | sed 's/[^-]*-//'`
echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
exit 1
;;
esac
else
# Here we handle the default operating systems that come with various machines.
# The value should be what the vendor currently ships out the door with their
# machine or put another way, the most popular os provided with the machine.
# Note that if you're going to try to match "-MANUFACTURER" here (say,
# "-sun"), then you have to tell the case statement up towards the top
# that MANUFACTURER isn't an operating system. Otherwise, code above
# will signal an error saying that MANUFACTURER isn't an operating
# system, and we'll never get to this point.
case $basic_machine in
*-acorn)
os=-riscix1.2
;;
arm*-semi)
os=-aout
;;
pdp11-*)
os=-none
;;
*-dec | vax-*)
os=-ultrix4.2
;;
m68*-apollo)
os=-domain
;;
i386-sun)
os=-sunos4.0.2
;;
m68000-sun)
os=-sunos3
# This also exists in the configure program, but was not the
# default.
# os=-sunos4
;;
*-tti) # must be before sparc entry or we get the wrong os.
os=-sysv3
;;
sparc-* | *-sun)
os=-sunos4.1.1
;;
*-be)
os=-beos
;;
*-ibm)
os=-aix
;;
*-hp)
os=-hpux
;;
*-hitachi)
os=-hiux
;;
i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
os=-sysv
;;
*-cbm)
os=-amigaos
;;
*-dg)
os=-dgux
;;
*-dolphin)
os=-sysv3
;;
m68k-ccur)
os=-rtu
;;
m88k-omron*)
os=-luna
;;
*-next )
os=-nextstep
;;
*-sequent)
os=-ptx
;;
*-crds)
os=-unos
;;
*-ns)
os=-genix
;;
i370-*)
os=-mvs
;;
*-next)
os=-nextstep3
;;
*-gould)
os=-sysv
;;
*-highlevel)
os=-bsd
;;
*-encore)
os=-bsd
;;
*-sgi)
os=-irix
;;
*-siemens)
os=-sysv4
;;
*-masscomp)
os=-rtu
;;
f301-fujitsu)
os=-uxpv
;;
*)
os=-none
;;
esac
fi
# Here we handle the case where we know the os, and the CPU type, but not the
# manufacturer. We pick the logical manufacturer.
vendor=unknown
case $basic_machine in
*-unknown)
case $os in
-riscix*)
vendor=acorn
;;
-sunos*)
vendor=sun
;;
-aix*)
vendor=ibm
;;
-hpux*)
vendor=hp
;;
-hiux*)
vendor=hitachi
;;
-unos*)
vendor=crds
;;
-dgux*)
vendor=dg
;;
-luna*)
vendor=omron
;;
-genix*)
vendor=ns
;;
-mvs*)
vendor=ibm
;;
-ptx*)
vendor=sequent
;;
-vxsim* | -vxworks*)
vendor=wrs
;;
-aux*)
vendor=apple
;;
esac
basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
;;
esac
echo $basic_machine$os

File diff suppressed because it is too large Load Diff

View File

@@ -1,322 +0,0 @@
wxPython README
---------------
Welcome to the wonderful world of wxPython!
Once you have installed the wxPython extension module, you can try it
out by going to the [install dir]\wxPython\demo directory and typing:
python demo.py
There are also some other sample files there for you to play with and
learn from.
If you selected to install the documentation then point your browser
to [install dir]\wxPython\docs\index.htm and you will then be looking
at the docs for wxWindows. For the most part you can use the C++ docs
as most classes and methods are used identically. Where there are
differences they are documented with a "wxPython Note."
On Win32 systems the binary self-installer creates a program group on
the Start Menu that contains a link to running the demo and a link to
the help file. To help you save disk space I'm now using Microsoft's
HTML Help format. If your system doesn't know what to do with the help
file, you can install the HTML Help Viewer as part of IE 4+, NT
Service Pack 4+, or the HTML Workshop at
http://msdn.microsoft.com/workshop/author/htmlhelp/download.asp.
Getting Help
------------
Since wxPython is a blending of multiple technologies, help comes from
multiple sources. See the http://alldunn.com/wxPython for details on
various sources of help, but probably the best source is the
wxPython-users mail list. You can view the archive or subscribe by
going to
http://starship.python.net/mailman/listinfo/wxpython-users
Or you can send mail directly to the list using this address:
wxpython-users@starship.python.net
----------------------------------------------------------------------
What's new in 2.1b1
--------------------
Fixed wxComboBox.SetSelection so that it actually sets the selected
item. (Actually just removed it from wxPython and let it default to
wxChoice.SetSelection which was already doing the right thing.)
Added the Printing Framework.
Switched back to using the wxWindows DLL for the pre-built Win32
version. The problem was needing to reinitialize static class info
data after loading each extension module.
Lots of little tweaks and additions to reflect changes to various
wxWindows classes.
Fixed a bug with attaching objects to tree items. Actually was a
symptom of a larger problem with not obtaining the interpreter lock
when doing any Py_DECREFs.
wxSizer and friends. Sizers are layout tools that manage a colection
of windows and sizers. Different types of sizers apply different
types of layout algorithms. You saw it here first! These classes are
not even in the wxWindows C++ library yet!
What's new in 2.0b9
-------------------
Bug fix for ListCtrl in test4.py (Was a missing file... DSM!)
Bug fix for occassional GPF on Win32 systems upon termination of a
wxPython application.
Added wxListBox.GetSelections returning selections as a Tuple.
Added a wxTreeItemData that is able to hold any Python object and be
associated with items in a wxTreeCtrl. Added test pytree.py to show
this feature off.
Added wxSafeYield function.
OpenGL Canvas can be optionally compiled in to wxPython.
Awesome new Demo Framework for showing off wxPython and for learning
how it all works.
The pre-built Win32 version is no longer distributing the wxWindows
DLL. It is statically linked with the wxWindows library instead.
Added a couple missing items from the docs.
Added wxImage, wxImageHandler, wxPNGHandler, wxJPEGHandler,
wxGIFHandler and wxBMPHandler.
Added new methods to wxTextCtrl.
What's new in 2.0b8
-------------------
Support for using Python threads in wxPython apps.
Several missing methods from various classes.
Various bug fixes.
What's new in 2.0b7
-------------------
Added DLG_PNT and DLG_SZE convienience methods to wxWindow class.
Added missing constructor and other methods for wxMenuItem.
What's new in 2.0b6
-------------------
Just a quickie update to fix the self-installer to be compatible with
Python 1.5.2b2's Registry settings.
What's new in 2.0b5
-------------------
Well obviously the numbering scheme has changed. I did this to
reflect the fact that this truly is the second major revision of
wxPython, (well the third actually if you count the one I did for
wxWindows 1.68 and then threw away...) and also that it is associated
with the 2.0 version of wxWindows.
I have finally started documenting wxPython. There are several pages
in the wxWindows documentation tree specifically about wxPython, and I
have added notes within the class references about where wxPython
diverges from wxWindows.
Added wxWindow_FromHWND(hWnd) for wxMSW to construct a wxWindow from a
window handle. If you can get the window handle into the python code,
it should just work... More news on this later.
Added wxImageList, wxToolTip.
Re-enabled wxConfig.DeleteAll() since it is reportedly fixed for the
wxRegConfig class.
As usual, some bug fixes, tweaks, etc.
What's new in 0.5.3
-------------------
Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
Various cleanup, tweaks, minor additions, etc. to maintain
compatibility with the current wxWindows.
What's new in 0.5.0
-------------------
Changed the import semantics from "from wxPython import *" to "from
wxPython.wx import *" This is for people who are worried about
namespace pollution, they can use "from wxPython import wx" and then
prefix all the wxPython identifiers with "wx."
Added wxTaskbarIcon for wxMSW.
Made the events work for wxGrid.
Added wxConfig.
Added wxMiniFrame for wxGTK.
Changed many of the args and return values that were pointers to gdi
objects to references to reflect changes in the wxWindows API.
Other assorted fixes and additions.
What's new in 0.4.2
-------------------
wxPython on wxGTK works!!! Both dynamic and static on Linux and
static on Solaris have been tested. Many thanks go to Harm
<H.v.d.Heijden@phys.tue.nl> for his astute detective work on tracking
down a nasty DECREF bug. Okay so I have to confess that it was just a
DSM (Dumb Stupid Mistake) on my part but it was nasty none the less
because the behavior was so different on different platforms.
The dynamicly loaded module on Solaris is still segfaulting, so it
must have been a different issue all along...
What's New in 0.4
-----------------
1. Worked on wxGTK compatibility. It is partially working. On a
Solaris/Sparc box wxPython is working but only when it is statically
linked with the Python interpreter. When built as a dyamically loaded
extension module, things start acting weirdly and it soon seg-faults.
And on Linux both the statically linked and the dynamically linked
version segfault shortly after starting up.
2. Added Toolbar, StatusBar and SplitterWindow classes.
3. Varioius bug fixes, enhancements, etc.
Build Instructions
------------------
I used SWIG (http://www.swig.org) to create the source code for the
extension module. This enabled me to only have to deal with a small
amount of code and only have to bother with the exceptional issues.
SWIG takes care of the rest and generates all the repetative code for
me. You don't need SWIG to build the extension module as all the
generated C++ code is included under the src directory.
I added a few minor features to SWIG to control some of the code
generation. If you want to playaround with this the patches are in
wxPython/SWIG.patches and they should be applied to the 1.1p5 version
of SWIG. These new patches are documented at
http://starship.skyport.net/crew/robind/python/#swig, and they should
also end up in the 1.2 version of SWIG.
wxPython is organized as a Python package. This means that the
directory containing the results of the build process should be a
subdirectory of a directory on the PYTHONPATH. (And preferably should
be named wxPython.) You can control where the build process will dump
wxPython by setting the TARGETDIR makefile variable. The default is
$(WXWIN)/utils/wxPython, where this README.txt is located. If you
leave it here then you should add $(WXWIN)/utils to your PYTHONPATH.
However, you may prefer to use something that is already on your
PYTHONPATH, such as the site-packages directory on Unix systems.
Win32
-----
1. Build wxWindows with wxUSE_RESOURCE_LOADING_IN_MSW set to 1 in
include/wx/msw/setup.h so icons can be loaded dynamically. While
there, make sure wxUSE_OWNER_DRAWN is also set to 1.
2. Change into the $(WXWIN)/utils/wxPython/src directory.
3. Edit makefile.vc and specify where your python installation is at.
You may also want to fiddle with the TARGETDIR variable as described
above.
4. Run nmake -f makefile.vc
5. If it builds successfully, congratulations! Move on to the next
step. If not then you can try mailing me for help. Also, I will
always have a pre-built win32 version of this extension module at
http://starship.skyport.net/crew/robind/python.
6. Change to the $(WXWIN)/utils/wxPython/tests directory.
7. Try executing the test programs. Note that some of these print
diagnositc or test info to standard output, so they will require the
console version of python. For example:
python test1.py
To run them without requiring a console, you can use the pythonw.exe
version of Python either from the command line or from a shortcut.
Unix
----
1. Change into the $(WXWIN)/utils/wxPython/src directory.
2. Edit Setup.in and ensure that the flags, directories, and toolkit
options are correct. See the above commentary about TARGETDIR. There
are a few sample Setup.in.[platform] files provided.
[I've written a Setup which should work in almost all Unix systems,
so that the steps 1 and 2 don't have to be done. Robert Roebling. ]
3. Run this command to generate a makefile:
make -f Makefile.pre.in boot
4. Run these commands to build and then install the wxPython extension
module:
make
4b. Log in as root. [Robert Roebling]
make install
4c. Log out from root. [Robert Roebling]
5. Change to the $(WXWIN)/utils/wxPython/tests directory.
6. Try executing the test programs. For example:
python test1.py
------------------------
10/20/1998
Robin Dunn
robin@alldunn.com

View File

@@ -1,47 +0,0 @@
# This file gives the details of what is needed to build this extension
# module so the Makefile can be created.
###
### This file should be created by configure. Currently it is tweaked by hand.
###
*shared*
CCC=g++
WXWIN=~/wxWindows
GENCODEDIR=gtk
srcdir=$(GENCODEDIR)
WX_CONFIG_CFLAGS=`wx-config --cflags` `gtk-config --cflags`
WX_CONFIG_LIBS=`wx-config --libs`
# Depending on how your Python was built, you may have to set this
# value to use the C++ driver to link with instead of the default
# C driver. For example:
MY_LDSHARED=$(CCC) -shared $(WX_CONFIG_LIBS)
# Same as above, but for statically linking Python and wxPython together,
# in other words, if you comment out the *shared* above. If this is the
# case then you should ensure that the main() function is Python's, not
# wxWindows'. You can rebuild $(WXWIN)/src/gtk/app.cpp with NOMAIN defined
# to force this...
MY_LINKCC=$(CCC)
## Pick one of these, or set your own. This is where the
## wxPython module should be installed. It should be a
## subdirectory named wxPython.
#TARGETDIR=..
#TARGETDIR=$(BINLIBDEST)/site-packages/wxPython
TARGETDIR=$(BINLIBDEST)/wxPython
wxc wx.cpp helpers.cpp windows.cpp events.cpp misc.cpp gdi.cpp \
mdi.cpp controls.cpp controls2.cpp windows2.cpp cmndlgs.cpp \
frames.cpp stattool.cpp windows3.cpp image.cpp misc2.cpp \
utils.cpp printfw.cpp \
## comment out the next line to disable wxGLCanvas
##_glcanvas.cpp glcanvas.cpp -DWITH_GLCANVAS -lGL -lGLU \
-I. $(WX_CONFIG_CFLAGS) -I/usr/local/lib/glib/include \
-DSWIG_GLOBAL -DWXP_WITH_THREAD $(SEPARATE) -Xlinker $(WX_CONFIG_LIBS)

View File

@@ -1,779 +0,0 @@
#! /bin/sh
#
# This script is creates a dir tree in ~/wxgtk_dist which
# can then be packed into an archive
echo --------
echo This script will copy the wxGTK release files into ~/wxgtk_dist
echo --------
echo
mkdir ~/wxgtk_dist
mkdir ~/wxgtk_dist/wxGTK
echo Base dir..
cd ../..
cp wxGTK.spec ~/wxgtk_dist/wxGTK
cp Makefile.am ~/wxgtk_dist/wxGTK
cp acconfig.h ~/wxgtk_dist/wxGTK
cp acinclude.m4 ~/wxgtk_dist/wxGTK
cp aclocal.m4 ~/wxgtk_dist/wxGTK
cp configure.in ~/wxgtk_dist/wxGTK
cp configure ~/wxgtk_dist/wxGTK
cp config.sub ~/wxgtk_dist/wxGTK
cp config.guess ~/wxgtk_dist/wxGTK
cp install-sh ~/wxgtk_dist/wxGTK
cp ltconfig ~/wxgtk_dist/wxGTK
cp ltmain.sh ~/wxgtk_dist/wxGTK
cp missing ~/wxgtk_dist/wxGTK
cp mkinstalldirs ~/wxgtk_dist/wxGTK
cp wx-config.in ~/wxgtk_dist/wxGTK
cp setup.h.in ~/wxgtk_dist/wxGTK
cp stamp-h.in ~/wxgtk_dist/wxGTK
cp Makefile.in ~/wxgtk_dist/wxGTK
echo Docs..
cd docs/gtk
cp COPYING.LIB ~/wxgtk_dist/wxGTK
cp install.txt ~/wxgtk_dist/wxGTK/INSTALL.txt
cp changes.txt ~/wxgtk_dist/wxGTK/CHANGES.txt
cp licence.txt ~/wxgtk_dist/wxGTK/LICENCE.txt
cp readme.txt ~/wxgtk_dist/wxGTK/README.txt
cp todo.txt ~/wxgtk_dist/wxGTK/TODO.txt
cd ..
cp symbols.txt ~/wxgtk_dist/wxGTK/SYMBOLS.txt
cd ..
echo Include dir..
mkdir ~/wxgtk_dist/wxGTK/include
cd include
cp Makefile.am ~/wxgtk_dist/wxGTK/include
cp Makefile.in ~/wxgtk_dist/wxGTK/include
mkdir ~/wxgtk_dist/wxGTK/include/wx
cd wx
cp *.h ~/wxgtk_dist/wxGTK/include/wx
cp *.cpp ~/wxgtk_dist/wxGTK/include/wx
cp Makefile.am ~/wxgtk_dist/wxGTK/include/wx
cp Makefile.in ~/wxgtk_dist/wxGTK/include/wx
mkdir ~/wxgtk_dist/wxGTK/include/wx/generic
cd generic
cp *.h ~/wxgtk_dist/wxGTK/include/wx/generic
cp *.xpm ~/wxgtk_dist/wxGTK/include/wx/generic
cp Makefile.am ~/wxgtk_dist/wxGTK/include/wx/generic
cp Makefile.in ~/wxgtk_dist/wxGTK/include/wx/generic
cd ..
mkdir ~/wxgtk_dist/wxGTK/include/wx/unix
cd unix
cp *.h ~/wxgtk_dist/wxGTK/include/wx/unix
cp Makefile.am ~/wxgtk_dist/wxGTK/include/wx/unix
cp Makefile.in ~/wxgtk_dist/wxGTK/include/wx/unix
cd ..
mkdir ~/wxgtk_dist/wxGTK/include/wx/gtk
cd gtk
cp *.h ~/wxgtk_dist/wxGTK/include/wx/gtk
rm ~/wxgtk_dist/wxGTK/include/wx/gtk/setup.h
cp Makefile.am ~/wxgtk_dist/wxGTK/include/wx/gtk
cp Makefile.in ~/wxgtk_dist/wxGTK/include/wx/gtk
cd ..
mkdir ~/wxgtk_dist/wxGTK/include/wx/motif
cd motif
cp Makefile.am ~/wxgtk_dist/wxGTK/include/wx/motif
cp Makefile.in ~/wxgtk_dist/wxGTK/include/wx/motif
cd ..
mkdir ~/wxgtk_dist/wxGTK/include/wx/msw
cd msw
cp Makefile.am ~/wxgtk_dist/wxGTK/include/wx/msw
cp Makefile.in ~/wxgtk_dist/wxGTK/include/wx/msw
cd ..
mkdir ~/wxgtk_dist/wxGTK/include/wx/protocol
cd protocol
cp *.h ~/wxgtk_dist/wxGTK/include/wx/protocol
cp Makefile.am ~/wxgtk_dist/wxGTK/include/wx/protocol
cp Makefile.in ~/wxgtk_dist/wxGTK/include/wx/protocol
cd ..
cd ../..
echo Misc dir..
mkdir ~/wxgtk_dist/wxGTK/misc
cd misc
cp Makefile.am ~/wxgtk_dist/wxGTK/misc
cp Makefile.in ~/wxgtk_dist/wxGTK/misc
mkdir ~/wxgtk_dist/wxGTK/misc/afm
cd afm
cp *.afm ~/wxgtk_dist/wxGTK/misc/afm
cp Makefile.am ~/wxgtk_dist/wxGTK/misc/afm
cp Makefile.in ~/wxgtk_dist/wxGTK/misc/afm
cd ..
mkdir ~/wxgtk_dist/wxGTK/misc/gs_afm
cd gs_afm
cp *.afm ~/wxgtk_dist/wxGTK/misc/gs_afm
cp Makefile.am ~/wxgtk_dist/wxGTK/misc/gs_afm
cp Makefile.in ~/wxgtk_dist/wxGTK/misc/gs_afm
cd ../..
echo Src dir..
cd src
mkdir ~/wxgtk_dist/wxGTK/src
cp Makefile.am ~/wxgtk_dist/wxGTK/src
cp Makefile.in ~/wxgtk_dist/wxGTK/src
cd gtk
mkdir ~/wxgtk_dist/wxGTK/src/gtk
cp Makefile.am ~/wxgtk_dist/wxGTK/src/gtk
cp Makefile.in ~/wxgtk_dist/wxGTK/src/gtk
cp *.xbm ~/wxgtk_dist/wxGTK/src/gtk
cp *.c ~/wxgtk_dist/wxGTK/src/gtk
cp *.inc ~/wxgtk_dist/wxGTK/src/gtk
cp *.cpp ~/wxgtk_dist/wxGTK/src/gtk
cd ..
cd common
mkdir ~/wxgtk_dist/wxGTK/src/common
cp glob.inc ~/wxgtk_dist/wxGTK/src/common
cp lexer.l ~/wxgtk_dist/wxGTK/src/common
cp parser.y ~/wxgtk_dist/wxGTK/src/common
cp extended.c ~/wxgtk_dist/wxGTK/src/common
cp *.cpp ~/wxgtk_dist/wxGTK/src/common
cd ..
cd unix
mkdir ~/wxgtk_dist/wxGTK/src/unix
cp *.cpp ~/wxgtk_dist/wxGTK/src/unix
cd ..
cd generic
mkdir ~/wxgtk_dist/wxGTK/src/generic
cp *.cpp ~/wxgtk_dist/wxGTK/src/generic
cd ..
cd iodbc
mkdir ~/wxgtk_dist/wxGTK/src/iodbc
cp * ~/wxgtk_dist/wxGTK/src/iodbc
cd ..
cd zlib
mkdir ~/wxgtk_dist/wxGTK/src/zlib
cp * ~/wxgtk_dist/wxGTK/src/zlib
cd ..
cd png
mkdir ~/wxgtk_dist/wxGTK/src/png
cp * ~/wxgtk_dist/wxGTK/src/png
cd ..
cd jpeg
mkdir ~/wxgtk_dist/wxGTK/src/jpeg
cp * ~/wxgtk_dist/wxGTK/src/jpeg
cd ..
cd ..
echo Utils dir..
cd utils
mkdir ~/wxgtk_dist/wxGTK/utils
cp Makefile.am ~/wxgtk_dist/wxGTK/utils
cp Makefile.in ~/wxgtk_dist/wxGTK/utils
echo wxGLCanvas..
cd glcanvas
mkdir ~/wxgtk_dist/wxGTK/utils/glcanvas
cp ./docs/notes.txt ~/wxgtk_dist/wxGTK/utils/glcanvas/NOTES.txt
mkdir ~/wxgtk_dist/wxGTK/utils/glcanvas/gtk
cp ./gtk/glcanvas.cpp ~/wxgtk_dist/wxGTK/utils/glcanvas/gtk
cp ./gtk/glcanvas.h ~/wxgtk_dist/wxGTK/utils/glcanvas/gtk
mkdir ~/wxgtk_dist/wxGTK/utils/glcanvas/samples
mkdir ~/wxgtk_dist/wxGTK/utils/glcanvas/samples/cube
mkdir ~/wxgtk_dist/wxGTK/utils/glcanvas/samples/isosurf
mkdir ~/wxgtk_dist/wxGTK/utils/glcanvas/samples/penguin
cd samples/cube
cp Makefile ~/wxgtk_dist/wxGTK/utils/glcanvas/samples/cube
cp cube.h ~/wxgtk_dist/wxGTK/utils/glcanvas/samples/cube
cp cube.cpp ~/wxgtk_dist/wxGTK/utils/glcanvas/samples/cube
cd ..
cd isosurf
cp Makefile ~/wxgtk_dist/wxGTK/utils/glcanvas/samples/isosurf
cp isosurf.h ~/wxgtk_dist/wxGTK/utils/glcanvas/samples/isosurf
cp isosurf.cpp ~/wxgtk_dist/wxGTK/utils/glcanvas/samples/isosurf
cp isosurf.dat.gz ~/wxgtk_dist/wxGTK/utils/glcanvas/samples/isosurf
cd ..
cd penguin
cp Makefile ~/wxgtk_dist/wxGTK/utils/glcanvas/samples/penguin
cp penguin.h ~/wxgtk_dist/wxGTK/utils/glcanvas/samples/penguin
cp penguin.cpp ~/wxgtk_dist/wxGTK/utils/glcanvas/samples/penguin
cp trackball.h ~/wxgtk_dist/wxGTK/utils/glcanvas/samples/penguin
cp trackball.c ~/wxgtk_dist/wxGTK/utils/glcanvas/samples/penguin
cp lw.h ~/wxgtk_dist/wxGTK/utils/glcanvas/samples/penguin
cp lw.cpp ~/wxgtk_dist/wxGTK/utils/glcanvas/samples/penguin
cp penguin.lwo ~/wxgtk_dist/wxGTK/utils/glcanvas/samples/penguin
cd ../../..
echo DialogEd..
cd dialoged/src
mkdir ~/wxgtk_dist/wxGTK/utils/dialoged
cp Makefile ~/wxgtk_dist/wxGTK/utils/dialoged
cp dialoged.cpp ~/wxgtk_dist/wxGTK/utils/dialoged
cp dlghndlr.cpp ~/wxgtk_dist/wxGTK/utils/dialoged
cp edlist.cpp ~/wxgtk_dist/wxGTK/utils/dialoged
cp edtree.cpp ~/wxgtk_dist/wxGTK/utils/dialoged
cp reseditr.cpp ~/wxgtk_dist/wxGTK/utils/dialoged
cp reswrite.cpp ~/wxgtk_dist/wxGTK/utils/dialoged
cp symbtabl.cpp ~/wxgtk_dist/wxGTK/utils/dialoged
cp winprop.cpp ~/wxgtk_dist/wxGTK/utils/dialoged
cp winstyle.cpp ~/wxgtk_dist/wxGTK/utils/dialoged
cp dialoged.h ~/wxgtk_dist/wxGTK/utils/dialoged
cp dlghndlr.h ~/wxgtk_dist/wxGTK/utils/dialoged
cp edlist.h ~/wxgtk_dist/wxGTK/utils/dialoged
cp edtree.h ~/wxgtk_dist/wxGTK/utils/dialoged
cp reseditr.h ~/wxgtk_dist/wxGTK/utils/dialoged
cp symbtabl.h ~/wxgtk_dist/wxGTK/utils/dialoged
cp winprop.h ~/wxgtk_dist/wxGTK/utils/dialoged
cp winstyle.h ~/wxgtk_dist/wxGTK/utils/dialoged
cd bitmaps
mkdir ~/wxgtk_dist/wxGTK/utils/dialoged/bitmaps
cp *.xpm ~/wxgtk_dist/wxGTK/utils/dialoged/bitmaps
cd ../../..
echo wxPython..
cd wxPython
mkdir ~/wxgtk_dist/wxGTK/utils/wxPython
cp README.txt ~/wxgtk_dist/wxGTK/utils/wxPython
mkdir ~/wxgtk_dist/wxGTK/utils/wxPython/src
cp ./src/* ~/wxgtk_dist/wxGTK/utils/wxPython/src
mkdir ~/wxgtk_dist/wxGTK/utils/wxPython/src/gtk
cp ./src/gtk/* ~/wxgtk_dist/wxGTK/utils/wxPython/src/gtk
mkdir ~/wxgtk_dist/wxGTK/utils/wxPython/lib
cp ./lib/*.py ~/wxgtk_dist/wxGTK/utils/wxPython/lib
mkdir ~/wxgtk_dist/wxGTK/utils/wxPython/lib/sizers
cp ./lib/sizers/*.py ~/wxgtk_dist/wxGTK/utils/wxPython/lib/sizers
mkdir ~/wxgtk_dist/wxGTK/utils/wxPython/tests
cp ./tests/README.txt ~/wxgtk_dist/wxGTK/utils/wxPython/tests
cp ./tests/*.py ~/wxgtk_dist/wxGTK/utils/wxPython/tests
mkdir ~/wxgtk_dist/wxGTK/utils/wxPython/demo
cp ./demo/README.txt ~/wxgtk_dist/wxGTK/utils/wxPython/demo
cp ./demo/*.py ~/wxgtk_dist/wxGTK/utils/wxPython/demo
cp ./demo/*.pyc ~/wxgtk_dist/wxGTK/utils/wxPython/demo
mkdir ~/wxgtk_dist/wxGTK/utils/wxPython/demo/bitmaps
cp ./demo/bitmaps/* ~/wxgtk_dist/wxGTK/utils/wxPython/demo/bitmaps
mkdir ~/wxgtk_dist/wxGTK/utils/wxPython/tests/bitmaps
cp ./tests/bitmaps/* ~/wxgtk_dist/wxGTK/utils/wxPython/tests/bitmaps
cd ..
echo wxOLE..
cd wxOLE
mkdir ~/wxgtk_dist/wxGTK/utils/wxOLE
mkdir ~/wxgtk_dist/wxGTK/utils/wxOLE/gtk
cp ./gtk/wxole.* ~/wxgtk_dist/wxGTK/utils/wxOLE/gtk
mkdir ~/wxgtk_dist/wxGTK/utils/wxOLE/samples
mkdir ~/wxgtk_dist/wxGTK/utils/wxOLE/samples/servlet
cp ./samples/servlet/Makefile ~/wxgtk_dist/wxGTK/utils/wxOLE/samples/servlet
cp ./samples/servlet/*.xpm ~/wxgtk_dist/wxGTK/utils/wxOLE/samples/servlet
cp ./samples/servlet/*.cpp ~/wxgtk_dist/wxGTK/utils/wxOLE/samples/servlet
cp ./samples/servlet/*.gnorba ~/wxgtk_dist/wxGTK/utils/wxOLE/samples/servlet
cd ../..
echo Samples dir..
cd samples
mkdir ~/wxgtk_dist/wxGTK/samples
cp Makefile.am ~/wxgtk_dist/wxGTK/samples
cp Makefile.in ~/wxgtk_dist/wxGTK/samples
echo Minimal sample..
cd minimal
mkdir ~/wxgtk_dist/wxGTK/samples/minimal
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/minimal
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/minimal
cp minimal.cpp ~/wxgtk_dist/wxGTK/samples/minimal
cp mondrian.xpm ~/wxgtk_dist/wxGTK/samples/minimal
cd ..
echo Bombs sample..
cd bombs
mkdir ~/wxgtk_dist/wxGTK/samples/bombs
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/bombs
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/bombs
cp *.cpp ~/wxgtk_dist/wxGTK/samples/bombs
cp *.h ~/wxgtk_dist/wxGTK/samples/bombs
cp *.xpm ~/wxgtk_dist/wxGTK/samples/bombs
cd ..
echo Caret sample..
cd caret
mkdir ~/wxgtk_dist/wxGTK/samples/caret
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/caret
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/caret
cp *.cpp ~/wxgtk_dist/wxGTK/samples/caret
cp *.xpm ~/wxgtk_dist/wxGTK/samples/caret
cd ..
echo Checklst sample..
cd checklst
mkdir ~/wxgtk_dist/wxGTK/samples/checklst
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/checklst
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/checklst
cp *.cpp ~/wxgtk_dist/wxGTK/samples/checklst
cp *.xpm ~/wxgtk_dist/wxGTK/samples/checklst
cd ..
echo Config sample..
cd config
mkdir ~/wxgtk_dist/wxGTK/samples/config
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/config
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/config
cp *.cpp ~/wxgtk_dist/wxGTK/samples/config
cd ..
echo Controls sample..
cd controls
mkdir ~/wxgtk_dist/wxGTK/samples/controls
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/controls
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/controls
cp *.cpp ~/wxgtk_dist/wxGTK/samples/controls
cp *.xpm ~/wxgtk_dist/wxGTK/samples/controls
cd icons
mkdir ~/wxgtk_dist/wxGTK/samples/controls/icons
cp *.xpm ~/wxgtk_dist/wxGTK/samples/controls/icons
cd ../..
echo Db sample..
cd db
mkdir ~/wxgtk_dist/wxGTK/samples/db
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/db
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/db
cp *.cpp ~/wxgtk_dist/wxGTK/samples/db
cp *.h ~/wxgtk_dist/wxGTK/samples/db
cp *.xpm ~/wxgtk_dist/wxGTK/samples/db
cd ..
echo DDE sample..
cd dde
mkdir ~/wxgtk_dist/wxGTK/samples/dde
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/dde
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/dde
cp *.cpp ~/wxgtk_dist/wxGTK/samples/dde
cp *.h ~/wxgtk_dist/wxGTK/samples/dde
cp *.xpm ~/wxgtk_dist/wxGTK/samples/dde
cd ..
echo Dialogs sample..
cd dialogs
mkdir ~/wxgtk_dist/wxGTK/samples/dialogs
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/dialogs
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/dialogs
cp *.cpp ~/wxgtk_dist/wxGTK/samples/dialogs
cp *.h ~/wxgtk_dist/wxGTK/samples/dialogs
cd ..
echo DnD sample..
cd dnd
mkdir ~/wxgtk_dist/wxGTK/samples/dnd
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/dnd
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/dnd
cp *.cpp ~/wxgtk_dist/wxGTK/samples/dnd
cp *.xpm ~/wxgtk_dist/wxGTK/samples/dnd
cd ..
echo Docview sample..
cd docview
mkdir ~/wxgtk_dist/wxGTK/samples/docview
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/docview
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/docview
cp *.cpp ~/wxgtk_dist/wxGTK/samples/docview
cp *.h ~/wxgtk_dist/wxGTK/samples/docview
cp *.xpm ~/wxgtk_dist/wxGTK/samples/docview
cd ..
echo DocvwMDI sample..
cd docvwmdi
mkdir ~/wxgtk_dist/wxGTK/samples/docvwmdi
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/docvwmdi
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/docvwmdi
cp *.cpp ~/wxgtk_dist/wxGTK/samples/docvwmdi
cp *.h ~/wxgtk_dist/wxGTK/samples/docvwmdi
cd ..
echo Dynamic sample..
cd dynamic
mkdir ~/wxgtk_dist/wxGTK/samples/dynamic
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/dynamic
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/dynamic
cp *.cpp ~/wxgtk_dist/wxGTK/samples/dynamic
cp *.xpm ~/wxgtk_dist/wxGTK/samples/dynamic
cd ..
echo Drawing sample..
cd drawing
mkdir ~/wxgtk_dist/wxGTK/samples/drawing
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/drawing
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/drawing
cp *.cpp ~/wxgtk_dist/wxGTK/samples/drawing
cp *.xpm ~/wxgtk_dist/wxGTK/samples/drawing
cd ..
echo Forty sample..
cd forty
mkdir ~/wxgtk_dist/wxGTK/samples/forty
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/forty
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/forty
cp *.cpp ~/wxgtk_dist/wxGTK/samples/forty
cp *.h ~/wxgtk_dist/wxGTK/samples/forty
cp *.xpm ~/wxgtk_dist/wxGTK/samples/forty
cp *.xbm ~/wxgtk_dist/wxGTK/samples/forty
cd ..
echo Fractal sample..
cd fractal
mkdir ~/wxgtk_dist/wxGTK/samples/fractal
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/fractal
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/fractal
cp *.cpp ~/wxgtk_dist/wxGTK/samples/fractal
cd ..
echo Grid sample..
cd grid
mkdir ~/wxgtk_dist/wxGTK/samples/grid
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/grid
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/grid
cp *.cpp ~/wxgtk_dist/wxGTK/samples/grid
cd ..
echo Help sample..
cd help
mkdir ~/wxgtk_dist/wxGTK/samples/help
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/help
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/help
cp *.cpp ~/wxgtk_dist/wxGTK/samples/help
cp *.xpm ~/wxgtk_dist/wxGTK/samples/help
cd doc
mkdir ~/wxgtk_dist/wxGTK/samples/help/doc
cp * ~/wxgtk_dist/wxGTK/samples/help/doc
cd ../..
echo Image sample..
cd image
mkdir ~/wxgtk_dist/wxGTK/samples/image
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/image
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/image
cp *.cpp ~/wxgtk_dist/wxGTK/samples/image
cp horse.png ~/wxgtk_dist/wxGTK/samples/image
cp horse.gif ~/wxgtk_dist/wxGTK/samples/image
cp horse.jpg ~/wxgtk_dist/wxGTK/samples/image
cd ..
echo Internat sample..
cd internat
mkdir ~/wxgtk_dist/wxGTK/samples/internat
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/internat
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/internat
cp *.cpp ~/wxgtk_dist/wxGTK/samples/internat
cp *.xpm ~/wxgtk_dist/wxGTK/samples/internat
cp readme.txt ~/wxgtk_dist/wxGTK/samples/internat
cp wxstd.po ~/wxgtk_dist/wxGTK/samples/internat
cd fr
mkdir ~/wxgtk_dist/wxGTK/samples/internat/fr
cp *.?o ~/wxgtk_dist/wxGTK/samples/internat/fr
cd ../..
echo Layout sample..
cd layout
mkdir ~/wxgtk_dist/wxGTK/samples/layout
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/layout
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/layout
cp *.cpp ~/wxgtk_dist/wxGTK/samples/layout
cp *.h ~/wxgtk_dist/wxGTK/samples/layout
cd ..
echo Listctrl sample..
cd listctrl
mkdir ~/wxgtk_dist/wxGTK/samples/listctrl
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/listctrl
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/listctrl
cp *.cpp ~/wxgtk_dist/wxGTK/samples/listctrl
cp *.h ~/wxgtk_dist/wxGTK/samples/listctrl
cp *.xpm ~/wxgtk_dist/wxGTK/samples/listctrl
cd bitmaps
mkdir ~/wxgtk_dist/wxGTK/samples/listctrl/bitmaps
cp *.xpm ~/wxgtk_dist/wxGTK/samples/listctrl/bitmaps
cd ../..
echo MDI sample..
cd mdi
mkdir ~/wxgtk_dist/wxGTK/samples/mdi
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/mdi
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/mdi
cp *.cpp ~/wxgtk_dist/wxGTK/samples/mdi
cp *.h ~/wxgtk_dist/wxGTK/samples/mdi
cp *.xpm ~/wxgtk_dist/wxGTK/samples/mdi
cd bitmaps
mkdir ~/wxgtk_dist/wxGTK/samples/mdi/bitmaps
cp *.xpm ~/wxgtk_dist/wxGTK/samples/mdi/bitmaps
cd ../..
echo Memcheck sample..
cd memcheck
mkdir ~/wxgtk_dist/wxGTK/samples/memcheck
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/memcheck
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/memcheck
cp *.cpp ~/wxgtk_dist/wxGTK/samples/memcheck
cp *.xpm ~/wxgtk_dist/wxGTK/samples/memcheck
cd ..
echo Minifram sample..
cd minifram
mkdir ~/wxgtk_dist/wxGTK/samples/minifram
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/minifram
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/minifram
cp *.cpp ~/wxgtk_dist/wxGTK/samples/minifram
cp *.h ~/wxgtk_dist/wxGTK/samples/minifram
cp *.xpm ~/wxgtk_dist/wxGTK/samples/minifram
cd bitmaps
mkdir ~/wxgtk_dist/wxGTK/samples/minifram/bitmaps
cp *.xpm ~/wxgtk_dist/wxGTK/samples/minifram/bitmaps
cd ../..
echo Notebook sample..
cd notebook
mkdir ~/wxgtk_dist/wxGTK/samples/notebook
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/notebook
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/notebook
cp *.cpp ~/wxgtk_dist/wxGTK/samples/notebook
cp *.h ~/wxgtk_dist/wxGTK/samples/notebook
cd ..
echo PNG sample..
cd png
mkdir ~/wxgtk_dist/wxGTK/samples/png
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/png
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/png
cp *.cpp ~/wxgtk_dist/wxGTK/samples/png
cp *.h ~/wxgtk_dist/wxGTK/samples/png
cp *.png ~/wxgtk_dist/wxGTK/samples/png
cd ..
echo Printing sample..
cd printing
mkdir ~/wxgtk_dist/wxGTK/samples/printing
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/printing
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/printing
cp *.cpp ~/wxgtk_dist/wxGTK/samples/printing
cp *.h ~/wxgtk_dist/wxGTK/samples/printing
cp *.xpm ~/wxgtk_dist/wxGTK/samples/printing
cd ..
echo Proplist sample..
cd proplist
mkdir ~/wxgtk_dist/wxGTK/samples/proplist
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/proplist
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/proplist
cp *.cpp ~/wxgtk_dist/wxGTK/samples/proplist
cp *.h ~/wxgtk_dist/wxGTK/samples/proplist
cd ..
echo Resource sample..
cd resource
mkdir ~/wxgtk_dist/wxGTK/samples/resource
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/resource
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/resource
cp *.cpp ~/wxgtk_dist/wxGTK/samples/resource
cp *.h ~/wxgtk_dist/wxGTK/samples/resource
cp *.wxr ~/wxgtk_dist/wxGTK/samples/resource
cd ..
echo Sashtest sample..
cd sashtest
mkdir ~/wxgtk_dist/wxGTK/samples/sashtest
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/sashtest
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/sashtest
cp *.cpp ~/wxgtk_dist/wxGTK/samples/sashtest
cp *.h ~/wxgtk_dist/wxGTK/samples/sashtest
cd ..
echo Scroll sample..
cd sashtest
mkdir ~/wxgtk_dist/wxGTK/samples/scroll
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/scroll
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/scroll
cp *.cpp ~/wxgtk_dist/wxGTK/samples/scroll
cp *.h ~/wxgtk_dist/wxGTK/samples/scroll
cd ..
echo Splitter sample..
cd splitter
mkdir ~/wxgtk_dist/wxGTK/samples/splitter
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/splitter
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/splitter
cp *.cpp ~/wxgtk_dist/wxGTK/samples/splitter
cd ..
echo Tab sample..
cd tab
mkdir ~/wxgtk_dist/wxGTK/samples/tab
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/tab
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/tab
cp *.cpp ~/wxgtk_dist/wxGTK/samples/tab
cp *.h ~/wxgtk_dist/wxGTK/samples/tab
cd ..
echo Text sample..
cd text
mkdir ~/wxgtk_dist/wxGTK/samples/text
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/text
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/text
cp *.cpp ~/wxgtk_dist/wxGTK/samples/text
cd ..
echo Thread sample..
cd thread
mkdir ~/wxgtk_dist/wxGTK/samples/thread
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/thread
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/thread
cp *.cpp ~/wxgtk_dist/wxGTK/samples/thread
cd ..
echo Toolbar sample..
cd toolbar
mkdir ~/wxgtk_dist/wxGTK/samples/toolbar
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/toolbar
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/toolbar
cp *.cpp ~/wxgtk_dist/wxGTK/samples/toolbar
cp *.h ~/wxgtk_dist/wxGTK/samples/toolbar
cp *.xpm ~/wxgtk_dist/wxGTK/samples/toolbar
cd bitmaps
mkdir ~/wxgtk_dist/wxGTK/samples/toolbar/bitmaps
cp *.xpm ~/wxgtk_dist/wxGTK/samples/toolbar/bitmaps
cd ../..
echo TreeCtrl sample..
cd treectrl
mkdir ~/wxgtk_dist/wxGTK/samples/treectrl
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/treectrl
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/treectrl
cp *.cpp ~/wxgtk_dist/wxGTK/samples/treectrl
cp *.h ~/wxgtk_dist/wxGTK/samples/treectrl
cp *.xpm ~/wxgtk_dist/wxGTK/samples/treectrl
cd ..
echo typetest sample..
cd typetest
mkdir ~/wxgtk_dist/wxGTK/samples/typetest
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/typetest
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/typetest
cp *.cpp ~/wxgtk_dist/wxGTK/samples/typetest
cp *.h ~/wxgtk_dist/wxGTK/samples/typetest
cp *.xpm ~/wxgtk_dist/wxGTK/samples/typetest
cd ..
echo Validate sample..
cd validate
mkdir ~/wxgtk_dist/wxGTK/samples/validate
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/validate
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/validate
cp *.cpp ~/wxgtk_dist/wxGTK/samples/validate
cp *.h ~/wxgtk_dist/wxGTK/samples/validate
cp *.xpm ~/wxgtk_dist/wxGTK/samples/validate
cd ..
echo wxPoem sample..
cd wxpoem
mkdir ~/wxgtk_dist/wxGTK/samples/wxpoem
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/wxpoem
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/wxpoem
cp *.cpp ~/wxgtk_dist/wxGTK/samples/wxpoem
cp *.h ~/wxgtk_dist/wxGTK/samples/wxpoem
cp *.xpm ~/wxgtk_dist/wxGTK/samples/wxpoem
cp wxpoem.dat ~/wxgtk_dist/wxGTK/samples/wxpoem
cp wxpoem.txt ~/wxgtk_dist/wxGTK/samples/wxpoem
cp wxpoem.idx ~/wxgtk_dist/wxGTK/samples/wxpoem
cd ..
echo wxSocket sample..
cd wxsocket
mkdir ~/wxgtk_dist/wxGTK/samples/wxsocket
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/wxsocket
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/wxsocket
cp *.cpp ~/wxgtk_dist/wxGTK/samples/wxsocket
cp *.xpm ~/wxgtk_dist/wxGTK/samples/wxsocket
cd ../..
echo LOCAL CORRECTCIONS
cd distrib/gtk
cp README.txt ~/wxgtk_dist/wxGTK/utils/wxPython
cp Setup ~/wxgtk_dist/wxGTK/utils/wxPython/src
cd ~/wxgtk_dist
tar ch wxGTK | gzip -f9 > wxGTK-2.1.0-b7.tgz

View File

@@ -1,659 +0,0 @@
#! /bin/sh
#
# This script is creates a dir tree in ~/wxmotif_dist which
# can then be packed into an archive
echo --------
echo This script will copy the wxMotif release files into ~/wxmotif_dist
echo --------
echo
mkdir ~/wxmotif_dist
mkdir ~/wxmotif_dist/wxMotif
echo Base dir..
cd ../..
cp wxMotif.spec ~/wxmotif_dist/wxMotif
cp Makefile.am ~/wxmotif_dist/wxMotif
cp acconfig.h ~/wxmotif_dist/wxMotif
cp acinclude.m4 ~/wxmotif_dist/wxMotif
cp aclocal.m4 ~/wxmotif_dist/wxMotif
cp configure.in ~/wxmotif_dist/wxMotif
cp configure ~/wxmotif_dist/wxMotif
cp config.sub ~/wxmotif_dist/wxMotif
cp config.guess ~/wxmotif_dist/wxMotif
cp install-sh ~/wxmotif_dist/wxMotif
cp ltconfig ~/wxmotif_dist/wxMotif
cp ltmain.sh ~/wxmotif_dist/wxMotif
cp missing ~/wxmotif_dist/wxMotif
cp mkinstalldirs ~/wxmotif_dist/wxMotif
cp wx-config.in ~/wxmotif_dist/wxMotif
cp setup.h.in ~/wxmotif_dist/wxMotif
cp stamp-h.in ~/wxmotif_dist/wxMotif
cp Makefile.in ~/wxmotif_dist/wxMotif
echo Docs..
cd docs/motif2
cp COPYING.LIB ~/wxmotif_dist/wxMotif
cp install.txt ~/wxmotif_dist/wxMotif/INSTALL.txt
cp changes.txt ~/wxmotif_dist/wxMotif/CHANGES.txt
cp licence.txt ~/wxmotif_dist/wxMotif/LICENCE.txt
cp readme.txt ~/wxmotif_dist/wxMotif/README.txt
cp todo.txt ~/wxmotif_dist/wxMotif/TODO.txt
cd ..
cp symbols.txt ~/wxmotif_dist/wxMotif/SYMBOLS.txt
cd ..
echo Include dir..
mkdir ~/wxmotif_dist/wxMotif/include
cd include
cp Makefile.am ~/wxmotif_dist/wxMotif/include
cp Makefile.in ~/wxmotif_dist/wxMotif/include
mkdir ~/wxmotif_dist/wxMotif/include/wx
cd wx
cp *.h ~/wxmotif_dist/wxMotif/include/wx
cp *.cpp ~/wxmotif_dist/wxMotif/include/wx
cp Makefile.am ~/wxmotif_dist/wxMotif/include/wx
cp Makefile.in ~/wxmotif_dist/wxMotif/include/wx
mkdir ~/wxmotif_dist/wxMotif/include/wx/generic
cd generic
cp *.h ~/wxmotif_dist/wxMotif/include/wx/generic
cp *.xpm ~/wxmotif_dist/wxMotif/include/wx/generic
cp Makefile.am ~/wxmotif_dist/wxMotif/include/wx/generic
cp Makefile.in ~/wxmotif_dist/wxMotif/include/wx/generic
cd ..
mkdir ~/wxmotif_dist/wxMotif/include/wx/unix
cd unix
cp *.h ~/wxmotif_dist/wxMotif/include/wx/unix
cp Makefile.am ~/wxmotif_dist/wxMotif/include/wx/unix
cp Makefile.in ~/wxmotif_dist/wxMotif/include/wx/unix
cd ..
mkdir ~/wxmotif_dist/wxMotif/include/wx/msw
cd msw
cp Makefile.am ~/wxmotif_dist/wxMotif/include/wx/msw
cp Makefile.in ~/wxmotif_dist/wxMotif/include/wx/msw
cd ..
mkdir ~/wxmotif_dist/wxMotif/include/wx/motif
cd motif
cp *.h ~/wxmotif_dist/wxMotif/include/wx/motif
rm ~/wxmotif_dist/wxMotif/include/wx/motif/setup.h
cp Makefile.am ~/wxmotif_dist/wxMotif/include/wx/motif
cp Makefile.in ~/wxmotif_dist/wxMotif/include/wx/motif
cd ..
mkdir ~/wxmotif_dist/wxMotif/include/wx/gtk
cd gtk
cp Makefile.am ~/wxmotif_dist/wxMotif/include/wx/gtk
cp Makefile.in ~/wxmotif_dist/wxMotif/include/wx/gtk
cd ..
mkdir ~/wxmotif_dist/wxMotif/include/wx/protocol
cd protocol
cp *.h ~/wxmotif_dist/wxMotif/include/wx/protocol
cp Makefile.am ~/wxmotif_dist/wxMotif/include/wx/protocol
cp Makefile.in ~/wxmotif_dist/wxMotif/include/wx/protocol
cd ..
cd ../..
echo Misc dir..
mkdir ~/wxmotif_dist/wxMotif/misc
cd misc
cp Makefile.am ~/wxmotif_dist/wxMotif/misc
cp Makefile.in ~/wxmotif_dist/wxMotif/misc
mkdir ~/wxmotif_dist/wxMotif/misc/afm
cd afm
cp *.afm ~/wxmotif_dist/wxMotif/misc/afm
cp Makefile.am ~/wxmotif_dist/wxMotif/misc/afm
cp Makefile.in ~/wxmotif_dist/wxMotif/misc/afm
cd ..
mkdir ~/wxmotif_dist/wxMotif/misc/gs_afm
cd gs_afm
cp *.afm ~/wxmotif_dist/wxMotif/misc/gs_afm
cp Makefile.am ~/wxmotif_dist/wxMotif/misc/gs_afm
cp Makefile.in ~/wxmotif_dist/wxMotif/misc/gs_afm
cd ../..
echo Src dir..
cd src
mkdir ~/wxmotif_dist/wxMotif/src
cp Makefile.am ~/wxmotif_dist/wxMotif/src
cp Makefile.in ~/wxmotif_dist/wxMotif/src
cd motif
mkdir ~/wxmotif_dist/wxMotif/src/motif
cp Makefile.am ~/wxmotif_dist/wxMotif/src/motif
cp Makefile.in ~/wxmotif_dist/wxMotif/src/motif
cp *.xbm ~/wxmotif_dist/wxMotif/src/motif
cp *.c ~/wxmotif_dist/wxMotif/src/motif
cp *.inc ~/wxmotif_dist/wxMotif/src/motif
cp *.cpp ~/wxmotif_dist/wxMotif/src/motif
cd ..
cd common
mkdir ~/wxmotif_dist/wxMotif/src/common
cp glob.inc ~/wxmotif_dist/wxMotif/src/common
cp lexer.l ~/wxmotif_dist/wxMotif/src/common
cp parser.y ~/wxmotif_dist/wxMotif/src/common
cp extended.c ~/wxmotif_dist/wxMotif/src/common
cp *.cpp ~/wxmotif_dist/wxMotif/src/common
cd ..
cd unix
mkdir ~/wxmotif_dist/wxMotif/src/unix
cp *.cpp ~/wxmotif_dist/wxMotif/src/unix
cd ..
cd generic
mkdir ~/wxmotif_dist/wxMotif/src/generic
cp *.cpp ~/wxmotif_dist/wxMotif/src/generic
cd ..
cd iodbc
mkdir ~/wxmotif_dist/wxMotif/src/iodbc
cp * ~/wxmotif_dist/wxMotif/src/iodbc
cd ..
cd zlib
mkdir ~/wxmotif_dist/wxMotif/src/zlib
cp * ~/wxmotif_dist/wxMotif/src/zlib
cd ..
cd png
mkdir ~/wxmotif_dist/wxMotif/src/png
cp * ~/wxmotif_dist/wxMotif/src/png
cd ..
cd jpeg
mkdir ~/wxmotif_dist/wxMotif/src/jpeg
cp * ~/wxmotif_dist/wxMotif/src/jpeg
cd ..
cd ..
echo Utils dir..
cd utils
mkdir ~/wxmotif_dist/wxMotif/utils
cp Makefile.am ~/wxmotif_dist/wxMotif/utils
cp Makefile.in ~/wxmotif_dist/wxMotif/utils
cd ..
echo Samples dir..
cd samples
mkdir ~/wxmotif_dist/wxMotif/samples
cp Makefile.am ~/wxmotif_dist/wxMotif/samples
cp Makefile.in ~/wxmotif_dist/wxMotif/samples
echo Minimal sample..
cd minimal
mkdir ~/wxmotif_dist/wxMotif/samples/minimal
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/minimal
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/minimal
cp minimal.cpp ~/wxmotif_dist/wxMotif/samples/minimal
cp mondrian.xpm ~/wxmotif_dist/wxMotif/samples/minimal
cd ..
echo Bombs sample..
cd bombs
mkdir ~/wxmotif_dist/wxMotif/samples/bombs
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/bombs
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/bombs
cp *.cpp ~/wxmotif_dist/wxMotif/samples/bombs
cp *.h ~/wxmotif_dist/wxMotif/samples/bombs
cp *.xpm ~/wxmotif_dist/wxMotif/samples/bombs
cd ..
echo Caret sample..
cd caret
mkdir ~/wxmotif_dist/wxMotif/samples/caret
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/caret
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/caret
cp *.cpp ~/wxmotif_dist/wxMotif/samples/caret
cp *.xpm ~/wxmotif_dist/wxMotif/samples/caret
cd ..
echo Checklst sample..
cd checklst
mkdir ~/wxmotif_dist/wxMotif/samples/checklst
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/checklst
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/checklst
cp *.cpp ~/wxmotif_dist/wxMotif/samples/checklst
cp *.xpm ~/wxmotif_dist/wxMotif/samples/checklst
cd ..
echo Config sample..
cd config
mkdir ~/wxmotif_dist/wxMotif/samples/config
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/config
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/config
cp *.cpp ~/wxmotif_dist/wxMotif/samples/config
cd ..
echo Controls sample..
cd controls
mkdir ~/wxmotif_dist/wxMotif/samples/controls
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/controls
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/controls
cp *.cpp ~/wxmotif_dist/wxMotif/samples/controls
cp *.xpm ~/wxmotif_dist/wxMotif/samples/controls
cd icons
mkdir ~/wxmotif_dist/wxMotif/samples/controls/icons
cp *.xpm ~/wxmotif_dist/wxMotif/samples/controls/icons
cd ../..
echo Db sample..
cd db
mkdir ~/wxmotif_dist/wxMotif/samples/db
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/db
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/db
cp *.cpp ~/wxmotif_dist/wxMotif/samples/db
cp *.h ~/wxmotif_dist/wxMotif/samples/db
cp *.xpm ~/wxmotif_dist/wxMotif/samples/db
cd ..
echo DDE sample..
cd dde
mkdir ~/wxmotif_dist/wxMotif/samples/dde
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/dde
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/dde
cp *.cpp ~/wxmotif_dist/wxMotif/samples/dde
cp *.h ~/wxmotif_dist/wxMotif/samples/dde
cp *.xpm ~/wxmotif_dist/wxMotif/samples/dde
cd ..
echo Dialogs sample..
cd dialogs
mkdir ~/wxmotif_dist/wxMotif/samples/dialogs
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/dialogs
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/dialogs
cp *.cpp ~/wxmotif_dist/wxMotif/samples/dialogs
cp *.h ~/wxmotif_dist/wxMotif/samples/dialogs
cd ..
echo DnD sample..
cd dnd
mkdir ~/wxmotif_dist/wxMotif/samples/dnd
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/dnd
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/dnd
cp *.cpp ~/wxmotif_dist/wxMotif/samples/dnd
cp *.xpm ~/wxmotif_dist/wxMotif/samples/dnd
cd ..
echo Docview sample..
cd docview
mkdir ~/wxmotif_dist/wxMotif/samples/docview
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/docview
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/docview
cp *.cpp ~/wxmotif_dist/wxMotif/samples/docview
cp *.h ~/wxmotif_dist/wxMotif/samples/docview
cp *.xpm ~/wxmotif_dist/wxMotif/samples/docview
cd ..
echo DocvwMDI sample..
cd docvwmdi
mkdir ~/wxmotif_dist/wxMotif/samples/docvwmdi
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/docvwmdi
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/docvwmdi
cp *.cpp ~/wxmotif_dist/wxMotif/samples/docvwmdi
cp *.h ~/wxmotif_dist/wxMotif/samples/docvwmdi
cd ..
echo Dynamic sample..
cd dynamic
mkdir ~/wxmotif_dist/wxMotif/samples/dynamic
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/dynamic
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/dynamic
cp *.cpp ~/wxmotif_dist/wxMotif/samples/dynamic
cp *.xpm ~/wxmotif_dist/wxMotif/samples/dynamic
cd ..
echo Drawing sample..
cd drawing
mkdir ~/wxmotif_dist/wxMotif/samples/drawing
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/drawing
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/drawing
cp *.cpp ~/wxmotif_dist/wxMotif/samples/drawing
cp *.xpm ~/wxmotif_dist/wxMotif/samples/drawing
cd ..
echo Forty sample..
cd forty
mkdir ~/wxmotif_dist/wxMotif/samples/forty
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/forty
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/forty
cp *.cpp ~/wxmotif_dist/wxMotif/samples/forty
cp *.h ~/wxmotif_dist/wxMotif/samples/forty
cp *.xpm ~/wxmotif_dist/wxMotif/samples/forty
cp *.xbm ~/wxmotif_dist/wxMotif/samples/forty
cd ..
echo Fractal sample..
cd fractal
mkdir ~/wxmotif_dist/wxMotif/samples/fractal
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/fractal
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/fractal
cp *.cpp ~/wxmotif_dist/wxMotif/samples/fractal
cd ..
echo Grid sample..
cd grid
mkdir ~/wxmotif_dist/wxMotif/samples/grid
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/grid
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/grid
cp *.cpp ~/wxmotif_dist/wxMotif/samples/grid
cd ..
echo Help sample..
cd help
mkdir ~/wxmotif_dist/wxMotif/samples/help
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/help
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/help
cp *.cpp ~/wxmotif_dist/wxMotif/samples/help
cp *.xpm ~/wxmotif_dist/wxMotif/samples/help
cd doc
mkdir ~/wxmotif_dist/wxMotif/samples/help/doc
cp * ~/wxmotif_dist/wxMotif/samples/help/doc
cd ../..
echo Image sample..
cd image
mkdir ~/wxmotif_dist/wxMotif/samples/image
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/image
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/image
cp *.cpp ~/wxmotif_dist/wxMotif/samples/image
cp horse.png ~/wxmotif_dist/wxMotif/samples/image
cp horse.gif ~/wxmotif_dist/wxMotif/samples/image
cp horse.jpg ~/wxmotif_dist/wxMotif/samples/image
cd ..
echo Internat sample..
cd internat
mkdir ~/wxmotif_dist/wxMotif/samples/internat
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/internat
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/internat
cp *.cpp ~/wxmotif_dist/wxMotif/samples/internat
cp *.xpm ~/wxmotif_dist/wxMotif/samples/internat
cp readme.txt ~/wxmotif_dist/wxMotif/samples/internat
cp wxstd.po ~/wxmotif_dist/wxMotif/samples/internat
cd fr
mkdir ~/wxmotif_dist/wxMotif/samples/internat/fr
cp *.?o ~/wxmotif_dist/wxMotif/samples/internat/fr
cd ../..
echo Layout sample..
cd layout
mkdir ~/wxmotif_dist/wxMotif/samples/layout
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/layout
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/layout
cp *.cpp ~/wxmotif_dist/wxMotif/samples/layout
cp *.h ~/wxmotif_dist/wxMotif/samples/layout
cd ..
echo Listctrl sample..
cd listctrl
mkdir ~/wxmotif_dist/wxMotif/samples/listctrl
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/listctrl
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/listctrl
cp *.cpp ~/wxmotif_dist/wxMotif/samples/listctrl
cp *.h ~/wxmotif_dist/wxMotif/samples/listctrl
cp *.xpm ~/wxmotif_dist/wxMotif/samples/listctrl
cd bitmaps
mkdir ~/wxmotif_dist/wxMotif/samples/listctrl/bitmaps
cp *.xpm ~/wxmotif_dist/wxMotif/samples/listctrl/bitmaps
cd ../..
echo MDI sample..
cd mdi
mkdir ~/wxmotif_dist/wxMotif/samples/mdi
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/mdi
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/mdi
cp *.cpp ~/wxmotif_dist/wxMotif/samples/mdi
cp *.h ~/wxmotif_dist/wxMotif/samples/mdi
cp *.xpm ~/wxmotif_dist/wxMotif/samples/mdi
cd bitmaps
mkdir ~/wxmotif_dist/wxMotif/samples/mdi/bitmaps
cp *.xpm ~/wxmotif_dist/wxMotif/samples/mdi/bitmaps
cd ../..
echo Memcheck sample..
cd memcheck
mkdir ~/wxmotif_dist/wxMotif/samples/memcheck
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/memcheck
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/memcheck
cp *.cpp ~/wxmotif_dist/wxMotif/samples/memcheck
cp *.xpm ~/wxmotif_dist/wxMotif/samples/memcheck
cd ..
echo Minifram sample..
cd minifram
mkdir ~/wxmotif_dist/wxMotif/samples/minifram
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/minifram
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/minifram
cp *.cpp ~/wxmotif_dist/wxMotif/samples/minifram
cp *.h ~/wxmotif_dist/wxMotif/samples/minifram
cp *.xpm ~/wxmotif_dist/wxMotif/samples/minifram
cd bitmaps
mkdir ~/wxmotif_dist/wxMotif/samples/minifram/bitmaps
cp *.xpm ~/wxmotif_dist/wxMotif/samples/minifram/bitmaps
cd ../..
echo Notebook sample..
cd notebook
mkdir ~/wxmotif_dist/wxMotif/samples/notebook
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/notebook
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/notebook
cp *.cpp ~/wxmotif_dist/wxMotif/samples/notebook
cp *.h ~/wxmotif_dist/wxMotif/samples/notebook
cd ..
echo PNG sample..
cd png
mkdir ~/wxmotif_dist/wxMotif/samples/png
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/png
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/png
cp *.cpp ~/wxmotif_dist/wxMotif/samples/png
cp *.h ~/wxmotif_dist/wxMotif/samples/png
cp *.png ~/wxmotif_dist/wxMotif/samples/png
cd ..
echo Printing sample..
cd printing
mkdir ~/wxmotif_dist/wxMotif/samples/printing
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/printing
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/printing
cp *.cpp ~/wxmotif_dist/wxMotif/samples/printing
cp *.h ~/wxmotif_dist/wxMotif/samples/printing
cp *.xpm ~/wxmotif_dist/wxMotif/samples/printing
cd ..
echo Proplist sample..
cd proplist
mkdir ~/wxmotif_dist/wxMotif/samples/proplist
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/proplist
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/proplist
cp *.cpp ~/wxmotif_dist/wxMotif/samples/proplist
cp *.h ~/wxmotif_dist/wxMotif/samples/proplist
cd ..
echo Resource sample..
cd resource
mkdir ~/wxmotif_dist/wxMotif/samples/resource
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/resource
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/resource
cp *.cpp ~/wxmotif_dist/wxMotif/samples/resource
cp *.h ~/wxmotif_dist/wxMotif/samples/resource
cp *.wxr ~/wxmotif_dist/wxMotif/samples/resource
cd ..
echo Sashtest sample..
cd sashtest
mkdir ~/wxmotif_dist/wxMotif/samples/sashtest
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/sashtest
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/sashtest
cp *.cpp ~/wxmotif_dist/wxMotif/samples/sashtest
cp *.h ~/wxmotif_dist/wxMotif/samples/sashtest
cd ..
echo Scroll sample..
cd sashtest
mkdir ~/wxmotif_dist/wxMotif/samples/scroll
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/scroll
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/scroll
cp *.cpp ~/wxmotif_dist/wxMotif/samples/scroll
cp *.h ~/wxmotif_dist/wxMotif/samples/scroll
cd ..
echo Splitter sample..
cd splitter
mkdir ~/wxmotif_dist/wxMotif/samples/splitter
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/splitter
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/splitter
cp *.cpp ~/wxmotif_dist/wxMotif/samples/splitter
cd ..
echo Tab sample..
cd tab
mkdir ~/wxmotif_dist/wxMotif/samples/tab
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/tab
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/tab
cp *.cpp ~/wxmotif_dist/wxMotif/samples/tab
cp *.h ~/wxmotif_dist/wxMotif/samples/tab
cd ..
echo Text sample..
cd text
mkdir ~/wxmotif_dist/wxMotif/samples/text
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/text
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/text
cp *.cpp ~/wxmotif_dist/wxMotif/samples/text
cd ..
echo Thread sample..
cd thread
mkdir ~/wxmotif_dist/wxMotif/samples/thread
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/thread
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/thread
cp *.cpp ~/wxmotif_dist/wxMotif/samples/thread
cd ..
echo Toolbar sample..
cd toolbar
mkdir ~/wxmotif_dist/wxMotif/samples/toolbar
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/toolbar
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/toolbar
cp *.cpp ~/wxmotif_dist/wxMotif/samples/toolbar
cp *.h ~/wxmotif_dist/wxMotif/samples/toolbar
cp *.xpm ~/wxmotif_dist/wxMotif/samples/toolbar
cd bitmaps
mkdir ~/wxmotif_dist/wxMotif/samples/toolbar/bitmaps
cp *.xpm ~/wxmotif_dist/wxMotif/samples/toolbar/bitmaps
cd ../..
echo TreeCtrl sample..
cd treectrl
mkdir ~/wxmotif_dist/wxMotif/samples/treectrl
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/treectrl
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/treectrl
cp *.cpp ~/wxmotif_dist/wxMotif/samples/treectrl
cp *.h ~/wxmotif_dist/wxMotif/samples/treectrl
cp *.xpm ~/wxmotif_dist/wxMotif/samples/treectrl
cd ..
echo typetest sample..
cd typetest
mkdir ~/wxmotif_dist/wxMotif/samples/typetest
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/typetest
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/typetest
cp *.cpp ~/wxmotif_dist/wxMotif/samples/typetest
cp *.h ~/wxmotif_dist/wxMotif/samples/typetest
cp *.xpm ~/wxmotif_dist/wxMotif/samples/typetest
cd ..
echo Validate sample..
cd validate
mkdir ~/wxmotif_dist/wxMotif/samples/validate
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/validate
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/validate
cp *.cpp ~/wxmotif_dist/wxMotif/samples/validate
cp *.h ~/wxmotif_dist/wxMotif/samples/validate
cp *.xpm ~/wxmotif_dist/wxMotif/samples/validate
cd ..
echo wxPoem sample..
cd wxpoem
mkdir ~/wxmotif_dist/wxMotif/samples/wxpoem
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/wxpoem
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/wxpoem
cp *.cpp ~/wxmotif_dist/wxMotif/samples/wxpoem
cp *.h ~/wxmotif_dist/wxMotif/samples/wxpoem
cp *.xpm ~/wxmotif_dist/wxMotif/samples/wxpoem
cp wxpoem.dat ~/wxmotif_dist/wxMotif/samples/wxpoem
cp wxpoem.txt ~/wxmotif_dist/wxMotif/samples/wxpoem
cp wxpoem.idx ~/wxmotif_dist/wxMotif/samples/wxpoem
cd ..
echo wxSocket sample..
cd wxsocket
mkdir ~/wxmotif_dist/wxMotif/samples/wxsocket
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/wxsocket
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/wxsocket
cp *.cpp ~/wxmotif_dist/wxMotif/samples/wxsocket
cp *.xpm ~/wxmotif_dist/wxMotif/samples/wxsocket
cd ../..
cd ~/wxmotif_dist
tar ch wxMotif | gzip -f9 > wxMotif-2.1.0-b7.tgz

View File

@@ -1,3 +0,0 @@
src/bc32.ide
src/bc32d.ide
samples/bc32.ide

View File

@@ -1,109 +0,0 @@
src/make_cw.mcp
src/common/cwy_tab.c
src/common/cwlex_yy.c
include/wx_cw.pch
include/wx_cw.pch++
include/wx_cw_d.pch
include/wx_cw_d.pch++
samples/bombs/make_cw.mcp
samples/checklst/make_cw.mcp
samples/config/make_cw.mcp
samples/controls/make_cw.mcp
samples/db/make_cw.mcp
samples/dialogs/make_cw.mcp
samples/dnd/make_cw.mcp
samples/docview/make_cw.mcp
samples/docvwmdi/make_cw.mcp
samples/dynamic/make_cw.mcp
samples/forty/make_cw.mcp
samples/fractal/make_cw.mcp
samples/grid/make_cw.mcp
samples/help/make_cw.mcp
samples/image/make_cw.mcp
samples/internat/make_cw.mcp
samples/joytest/make_cw.mcp
samples/layout/make_cw.mcp
samples/listctrl/make_cw.mcp
samples/mdi/make_cw.mcp
samples/memcheck/make_cw.mcp
samples/mfc/make_cw.mcp
samples/minimal/make_cw.mcp
samples/minifram/make_cw.mcp
samples/nativdlg/make_cw.mcp
samples/notebook/make_cw.mcp
samples/ownerdrw/make_cw.mcp
samples/png/make_cw.mcp
samples/printing/make_cw.mcp
samples/proplist/make_cw.mcp
samples/Regtest/make_cw.mcp
samples/resource/make_cw.mcp
samples/sashtest/make_cw.mcp
samples/splitter/make_cw.mcp
samples/tab/make_cw.mcp
samples/taskbar/make_cw.mcp
samples/thread/make_cw.mcp
samples/toolbar/make_cw.mcp
samples/treectrl/make_cw.mcp
samples/typetest/make_cw.mcp
samples/validate/make_cw.mcp
samples/wxsocket/make_cw.mcp
samples/wxpoem/make_cw.mcp
utils/wxprop/src/make_cw.mcp
utils/wxprop/src/make_sample.mcp
utils/dialoged/src/make_cw.mcp
utils/glcanvas/win/make_cw.mcp
utils/glcanvas/samples/cube/make_cw.mcp
utils/glcanvas/samples/isosurf/make_cw.mcp
utils/ogl/src/make_cw.mcp
utils/ogl/samples/ogledit/make_cw.mcp
utils/wxtree/src/make_cw.mcp
utils/wxtree/src/make_cw.mcp

View File

@@ -1,97 +0,0 @@
docs/latex/wx/*.tex
docs/latex/wx/*.sty
docs/latex/wx/*.bib
docs/latex/wx/*.hpj
docs/latex/wx/*.ini
docs/latex/wx/*.txt
docs/latex/wx/*.cnt
docs/latex/wx/*.eps
docs/latex/wx/*.bmp
docs/latex/wx/*.gif
docs/latex/wx/*.wmf
docs/latex/proplist/*.tex
docs/latex/proplist/*.sty
docs/latex/proplist/*.bib
docs/latex/proplist/*.hpj
docs/latex/proplist/*.ini
docs/latex/proplist/*.txt
docs/latex/proplist/*.cnt
docs/latex/proplist/*.eps
docs/latex/proplist/*.bmp
docs/latex/proplist/*.gif
docs/latex/proplist/*.wmf
docs/latex/porting/*.tex
docs/latex/porting/*.sty
docs/latex/porting/*.bib
docs/latex/porting/*.hpj
docs/latex/porting/*.ini
docs/latex/porting/*.txt
docs/latex/porting/*.cnt
docs/latex/porting/*.eps
docs/latex/porting/*.gif
docs/latex/porting/*.bmp
utils/wxhelp/docs/*.tex
utils/wxhelp/docs/*.txt
utils/wxhelp/docs/*.hpj
utils/wxhelp/docs/*.ini
utils/wxhelp/docs/*.bmp
utils/wxhelp/docs/*.wmf
utils/wxhelp/docs/*.gif
utils/tex2rtf/docs/*.tex
utils/tex2rtf/docs/*.txt
utils/tex2rtf/docs/*.hpj
utils/tex2rtf/docs/*.bib
utils/tex2rtf/docs/*.ini
utils/tex2rtf/docs/*.sty
utils/tex2rtf/docs/*.bmp
utils/tex2rtf/docs/*.shg
utils/tex2rtf/docs/*.wmf
utils/tex2rtf/docs/*.gif
utils/wxtree/docs/*.tex
utils/wxtree/docs/*.ini
utils/wxtree/docs/*.bib
utils/wxtree/docs/*.txt
utils/wxtree/docs/*.hpj
utils/wxtree/docs/*.bmp
utils/wxtree/docs/*.wmf
utils/wxtree/docs/*.gif
utils/wxgraph/docs/*.tex
utils/wxgraph/docs/*.ini
utils/wxgraph/docs/*.bib
utils/wxgraph/docs/*.txt
utils/wxgraph/docs/*.hpj
utils/wxgraph/docs/*.bmp
utils/wxgraph/docs/*.wmf
utils/wxgraph/docs/*.gif
utils/mfutils/docs/*.tex
utils/mfutils/docs/*.txt
utils/mfutils/docs/*.hpj
utils/mfutils/docs/*.wmf
utils/mfutils/docs/*.bmp
utils/wxprop/docs/*.txt
utils/wxprop/docs/*.hpj
utils/wxprop/docs/*.tex
utils/wxprop/docs/*.ini
utils/wxprop/docs/*.eps
utils/wxprop/docs/*.bmp
utils/wxprop/docs/*.wmf
utils/wxprop/docs/*.gif
utils/dialoged/docs/*.txt
utils/dialoged/docs/*.hpj
utils/dialoged/docs/*.tex
utils/dialoged/docs/*.ini
utils/dialoged/docs/*.eps
utils/dialoged/docs/*.bmp
utils/dialoged/docs/*.wmf
utils/dialoged/docs/*.gif

View File

@@ -1,727 +0,0 @@
distrib/msw/*.rsp
distrib/msw/*.bat
distrib/msw/tardist
distrib/gtk/*
locale/*.po
locale/*.mo
docs/readme.txt
docs/install.txt
docs/release.txt
docs/changes.txt
docs/upgrade.txt
docs/todo.txt
docs/licence.txt
docs/symbols.txt
docs/bugs.txt
docs/*.htm
docs/html/*.htm
docs/html/*.gif
src/*.inc
src/mkdir
src/common/*.cpp
src/common/dosyacc.c
src/common/doslex.c
src/common/vmsyacc.c
src/common/vmslex.c
src/common/extended.c
src/common/*.l
src/common/*.y
src/common/*.inc
src/generic/*.cpp
src/generic/*.c
src/generic/*.inc
src/unix/*.cpp
src/png/*.c
src/png/*.h
src/png/makefile*
src/png/INSTALL
src/png/CHANGES
src/png/README
src/png/TODO
src/png/*.1
src/png/*.3
src/png/*.5
src/png/scripts/*
src/zlib/*.c
src/zlib/*.h
src/zlib/INDEX
src/zlib/README
src/zlib/ChangeLog
src/zlib/configure
src/zlib/*.txt
src/zlib/makefile*
src/zlib/*.com
src/zlib/*.3
src/zlib/*.mms
include/wx/*.h
include/wx/*.cpp
include/wx/protocol/*.h
include/wx/wx_setup.vms
include/wx/common/*.h
include/wx/generic/*.h
include/wx/unix/*.h
lib/dummy
bin/*.*
tools/gettext/*.*
bitmaps/xpm/16x16/*.*
bitmaps/xpm/32x32/*.*
bitmaps/xpm/64x64/*.*
bitmaps/xpm/misc/*.*
bitmaps/*.*
bitmaps/bmp/16x15/*.*
bitmaps/bmp/10x8/*.*
bitmaps/ico/32x32/*.*
afm/*.*
utils/*.txt
utils/make*
utils/xpmshow/src/makefile*
utils/xpmshow/src/*.cpp
utils/xpmshow/src/*.h
utils/xpmshow/src/*.def
utils/xpmshow/src/*.rc
utils/xpmshow/src/*.xpm
utils/xpmshow/src/*.bmp
utils/xpmshow/src/*.ico
utils/wxhelp/src/*.cpp
utils/wxhelp/src/*.h
utils/wxhelp/src/makefile*
utils/wxhelp/src/*.xbm
utils/wxhelp/src/*.xpm
utils/wxhelp/src/*.txt
utils/wxhelp/src/*.ico
utils/wxhelp/src/*.def
utils/wxhelp/src/*.rc
utils/wxgraph/src/*.cpp
utils/wxgraph/src/*.c
utils/wxgraph/src/*.h
utils/wxgraph/src/makefile*
utils/wxgraph/src/*.xbm
utils/wxgraph/src/*.xpm
utils/wxgraph/lib/dummy
utils/wxgraph/src/*.ico
utils/wxgraph/src/*.def
utils/wxgraph/src/*.rc
utils/rcparser/src/*.cpp
utils/rcparser/src/*.c
utils/rcparser/src/*.h
utils/rcparser/src/makefile*
utils/rcparser/src/*.xbm
utils/rcparser/src/*.xpm
utils/rcparser/lib/dummy
utils/rcparser/src/*.ico
utils/rcparser/src/*.def
utils/rcparser/src/*.rc
utils/rcparser/src/*.rh
utils/colours/*.h
utils/colours/*.cpp
utils/colours/*.def
utils/colours/*.rc
utils/colours/makefile*
utils/colours/*.xbm
utils/colours/*.xpm
utils/colours/*.txt
utils/serialize/*.h
utils/serialize/*.cpp
utils/serialize/*.def
utils/serialize/*.rc
utils/serialize/makefile*
utils/serialize/*.xbm
utils/serialize/*.xpm
utils/serialize/*.txt
utils/dialoged/Makefile
utils/dialoged/src/bitmaps/*.xbm
utils/dialoged/src/bitmaps/*.xpm
utils/dialoged/src/*.h
utils/dialoged/src/*.cpp
utils/dialoged/src/*.def
utils/dialoged/src/*.rc
utils/dialoged/src/makefile*
utils/dialoged/src/*.xbm
utils/dialoged/src/*.xpm
utils/dialoged/src/*.txt
utils/dialoged/src/*.inf
utils/dialoged/test/*.h
utils/dialoged/src/*.ico
utils/dialoged/src/*.prj
utils/dialoged/src/*.bmp
utils/dialoged/src/bitmaps/*.bmp
utils/dialoged/src/bitmaps/*.ico
utils/dialoged/test/*.cpp
utils/dialoged/test/*.def
utils/dialoged/test/*.rc
utils/dialoged/test/makefile*
utils/dialoged/lib/dummy
utils/dialoged/test/*.ico
utils/dialoged/test/*.prj
utils/dialoged/test/*.bmp
samples/*.txt
samples/makefile*
samples/config/*.cpp
samples/config/*.h
samples/config/*.def
samples/config/makefile*
samples/config/*.xbm
samples/config/*.xpm
samples/config/*.txt
samples/config/*.ico
samples/config/*.bmp
samples/config/*.rc
samples/config/*.wav
samples/dynamic/*.cpp
samples/dynamic/*.h
samples/dynamic/*.def
samples/dynamic/makefile*
samples/dynamic/*.xbm
samples/dynamic/*.xpm
samples/dynamic/*.txt
samples/dynamic/*.ico
samples/dynamic/*.bmp
samples/dynamic/*.rc
samples/dynamic/*.wav
samples/wxsocket/*.cpp
samples/wxsocket/*.h
samples/wxsocket/*.def
samples/wxsocket/makefile*
samples/wxsocket/client.wat
samples/wxsocket/server.wat
samples/wxsocket/client.vc
samples/wxsocket/server.vc
samples/wxsocket/client.dos
samples/wxsocket/server.dos
samples/wxsocket/client.b32
samples/wxsocket/server.b32
samples/wxsocket/client.bcc
samples/wxsocket/server.bcc
samples/wxsocket/*.xbm
samples/wxsocket/*.xpm
samples/wxsocket/*.ico
samples/wxsocket/*.rc
samples/help/*.cpp
samples/help/*.h
samples/help/*.def
samples/help/makefile*
samples/help/*.xbm
samples/help/*.xpm
samples/help/*.ico
samples/help/*.rc
samples/help/doc/*.html
samples/help/doc/*.htm
samples/help/doc/*.class
samples/help/doc/*.db
samples/help/doc/*.tex
samples/help/doc/*.gif
samples/help/doc/*.map
samples/bombs/*.cpp
samples/bombs/*.h
samples/bombs/*.def
samples/bombs/makefile*
samples/bombs/*.xbm
samples/bombs/*.xpm
samples/bombs/*.txt
samples/bombs/*.ico
samples/bombs/*.bmp
samples/bombs/*.rc
samples/ipc/*.cpp
samples/ipc/*.h
samples/ipc/*.def
samples/ipc/makefile*
samples/ipc/*.xbm
samples/ipc/*.xpm
samples/ipc/*.ico
samples/ipc/*.rc
samples/typetest/*.cpp
samples/typetest/*.h
samples/typetest/*.def
samples/typetest/*.rc
samples/typetest/*.txt
samples/typetest/makefile*
samples/typetest/*.xbm
samples/typetest/*.xpm
samples/typetest/*.ico
samples/sashtest/*.cpp
samples/sashtest/*.h
samples/sashtest/*.def
samples/sashtest/*.rc
samples/sashtest/*.txt
samples/sashtest/makefile*
samples/sashtest/*.xbm
samples/sashtest/*.xpm
samples/sashtest/*.ico
samples/resource/*.cpp
samples/resource/*.h
samples/resource/*.def
samples/resource/*.rc
samples/resource/*.txt
samples/resource/*.wxr
samples/resource/makefile*
samples/resource/*.xbm
samples/resource/*.xpm
samples/resource/*.ico
samples/animate/*.cpp
samples/animate/*.h
samples/animate/*.def
samples/animate/makefile*
samples/animate/*.xbm
samples/animate/*.xpm
samples/animate/*.ico
samples/animate/*.rc
samples/mdi/*.cpp
samples/mdi/*.h
samples/mdi/*.def
samples/mdi/makefile*
samples/mdi/*.xbm
samples/mdi/*.xpm
samples/mdi/*.ico
samples/mdi/*.rc
samples/mdi/bitmaps/*.bmp
samples/mdi/bitmaps/*.ico
samples/mdi/bitmaps/*.xpm
samples/mdi/bitmaps/*.xbm
samples/minimal/*.cpp
samples/minimal/*.h
samples/minimal/*.def
samples/minimal/makefile*
samples/minimal/*.xbm
samples/minimal/*.xpm
samples/minimal/*.ico
samples/minimal/*.rc
samples/controls/*.cpp
samples/controls/*.h
samples/controls/*.def
samples/controls/makefile*
samples/controls/*.xbm
samples/controls/*.xpm
samples/controls/*.ico
samples/controls/*.bmp
samples/controls/*.rc
samples/controls/icons/*.bmp
samples/controls/icons/*.ico
samples/controls/icons/*.xpm
samples/fractal/*.cpp
samples/fractal/*.h
samples/fractal/*.def
samples/fractal/makefile*
samples/fractal/*.xbm
samples/fractal/*.xpm
samples/fractal/*.ico
samples/fractal/*.rc
samples/proplist/*.cpp
samples/proplist/*.h
samples/proplist/*.def
samples/proplist/makefile*
samples/proplist/*.xbm
samples/proplist/*.xpm
samples/proplist/*.ico
samples/proplist/*.bmp
samples/proplist/*.rc
samples/layout/*.cpp
samples/layout/*.h
samples/layout/*.def
samples/layout/makefile*
samples/layout/*.xbm
samples/layout/*.xpm
samples/layout/*.ico
samples/layout/*.rc
samples/layout/*.bmp
samples/printing/*.cpp
samples/printing/*.h
samples/printing/*.def
samples/printing/makefile*
samples/printing/*.xbm
samples/printing/*.xpm
samples/printing/*.txt
samples/printing/*.ico
samples/printing/*.bmp
samples/printing/*.rc
samples/printing/*.afm
samples/toolbar/*.cpp
samples/toolbar/*.h
samples/toolbar/*.def
samples/toolbar/makefile*
samples/toolbar/*.txt
samples/toolbar/*.xbm
samples/toolbar/*.xpm
samples/toolbar/bitmaps/*.xbm
samples/toolbar/bitmaps/*.xpm
samples/toolbar/*.ico
samples/toolbar/*.bmp
samples/toolbar/*.rc
samples/toolbar/bitmaps/*.bmp
samples/docview/*.h
samples/docview/*.cpp
samples/docview/*.def
samples/docview/*.rc
samples/docview/makefile*
samples/docview/*.xbm
samples/docview/*.xpm
samples/docview/*.txt
samples/docview/*.ico
samples/docview/*.bmp
samples/docvwmdi/*.h
samples/docvwmdi/*.cpp
samples/docvwmdi/*.def
samples/docvwmdi/*.rc
samples/docvwmdi/makefile*
samples/docvwmdi/*.xbm
samples/docvwmdi/*.xpm
samples/docvwmdi/*.txt
samples/docvwmdi/*.ico
samples/docvwmdi/*.bmp
samples/minifram/*.h
samples/minifram/*.cpp
samples/minifram/*.def
samples/minifram/*.rc
samples/minifram/makefile*
samples/minifram/*.xbm
samples/minifram/*.xpm
samples/minifram/*.txt
samples/minifram/*.ico
samples/minifram/*.bmp
samples/minifram/bitmaps/*.bmp
samples/minifram/bitmaps/*.xpm
samples/memcheck/*.h
samples/memcheck/*.cpp
samples/memcheck/*.def
samples/memcheck/*.rc
samples/memcheck/makefile*
samples/memcheck/*.xbm
samples/memcheck/*.xpm
samples/memcheck/*.txt
samples/memcheck/*.ico
samples/memcheck/*.bmp
samples/odbc/*.h
samples/odbc/*.cpp
samples/odbc/*.def
samples/odbc/*.rc
samples/odbc/makefile*
samples/odbc/*.inf
samples/odbc/*.xbm
samples/odbc/*.xpm
samples/odbc/*.ico
samples/odbc/*.bmp
samples/odbc/*.dbf
samples/odbc/*.cdx
samples/dialogs/*.h
samples/dialogs/*.cpp
samples/dialogs/*.def
samples/dialogs/*.rc
samples/dialogs/makefile*
samples/dialogs/*.xbm
samples/dialogs/*.xpm
samples/dialogs/*.txt
samples/dialogs/*.bmp
samples/dialogs/*.ico
samples/wxpoem/*.cpp
samples/wxpoem/*.h
samples/wxpoem/*.def
samples/wxpoem/*.rc
samples/wxpoem/*.inf
samples/wxpoem/*.txt
samples/wxpoem/makefile*
samples/wxpoem/*.xbm
samples/wxpoem/*.xpm
samples/wxpoem/*.ico
samples/wxpoem/*.bmp
samples/wxpoem/*.dat
samples/pressup/*.cpp
samples/pressup/*.c
samples/pressup/*.h
samples/pressup/*.def
samples/pressup/*.rc
samples/pressup/*.inf
samples/pressup/*.txt
samples/pressup/makefile*
samples/pressup/*.xbm
samples/pressup/*.xpm
samples/pressup/*.ico
samples/pressup/*.bmp
samples/validate/*.cpp
samples/validate/*.h
samples/validate/*.def
samples/validate/*.rc
samples/validate/*.inf
samples/validate/*.txt
samples/validate/makefile*
samples/validate/*.xbm
samples/validate/*.xpm
samples/validate/*.ico
samples/validate/*.bmp
samples/events/*.cpp
samples/events/*.h
samples/events/*.def
samples/events/*.rc
samples/events/*.inf
samples/events/*.txt
samples/events/makefile*
samples/events/*.xbm
samples/events/*.xpm
samples/events/*.ico
samples/events/*.bmp
samples/treectrl/*.cpp
samples/treectrl/*.h
samples/treectrl/*.def
samples/treectrl/*.rc
samples/treectrl/*.txt
samples/treectrl/makefile*
samples/treectrl/*.xbm
samples/treectrl/*.xpm
samples/treectrl/bitmaps/*.xbm
samples/treectrl/bitmaps/*.xpm
samples/treectrl/*.ico
samples/treectrl/*.bmp
samples/treectrl/bitmaps/*.bmp
samples/treectrl/bitmaps/*.ico
samples/listctrl/*.cpp
samples/listctrl/*.h
samples/listctrl/*.def
samples/listctrl/*.rc
samples/listctrl/*.txt
samples/listctrl/makefile*
samples/listctrl/*.xbm
samples/listctrl/*.xpm
samples/listctrl/bitmaps/*.xbm
samples/listctrl/bitmaps/*.xpm
samples/listctrl/*.ico
samples/listctrl/*.bmp
samples/listctrl/bitmaps/*.bmp
samples/listctrl/bitmaps/*.ico
samples/splitter/*.cpp
samples/splitter/*.h
samples/splitter/*.def
samples/splitter/*.rc
samples/splitter/*.txt
samples/splitter/makefile*
samples/splitter/*.xbm
samples/splitter/*.xpm
samples/splitter/*.ico
samples/splitter/*.bmp
samples/grid/*.cpp
samples/grid/*.h
samples/grid/*.def
samples/grid/*.rc
samples/grid/*.txt
samples/grid/makefile*
samples/grid/*.xbm
samples/grid/*.xpm
samples/grid/*.ico
samples/grid/*.bmp
samples/internat/*.cpp
samples/internat/*.h
samples/internat/*.def
samples/internat/*.rc
samples/internat/*.txt
samples/internat/makefile*
samples/internat/*.xbm
samples/internat/*.xpm
samples/internat/*.po
samples/internat/*.ico
samples/internat/*.bmp
samples/internat/*.mo
samples/internat/fr/*.mo
samples/internat/fr/*.po
samples/checklst/*.cpp
samples/checklst/*.h
samples/checklst/*.def
samples/checklst/*.rc
samples/checklst/*.txt
samples/checklst/makefile*
samples/checklst/*.xbm
samples/checklst/*.xpm
samples/checklst/*.ico
samples/checklst/*.bmp
samples/dnd/*.cpp
samples/dnd/*.h
samples/dnd/makefile*
samples/dnd/*.rc
samples/dnd/*.def
samples/dnd/*.bmp
samples/dnd/*.xbm
samples/dnd/*.xpm
samples/dnd/*.ico
samples/dnd/*.txt
samples/tab/*.cpp
samples/tab/*.h
samples/tab/makefile*
samples/tab/*.rc
samples/tab/*.def
samples/tab/*.bmp
samples/tab/*.xbm
samples/tab/*.xpm
samples/tab/*.ico
samples/tab/*.txt
samples/notebook/*.cpp
samples/notebook/*.h
samples/notebook/makefile*
samples/notebook/*.rc
samples/notebook/*.def
samples/notebook/*.bmp
samples/notebook/*.xbm
samples/notebook/*.xpm
samples/notebook/*.ico
samples/notebook/*.txt
samples/png/*.cpp
samples/png/*.h
samples/png/makefile*
samples/png/*.rc
samples/png/*.def
samples/png/*.bmp
samples/png/*.xpm
samples/png/*.xbm
samples/png/*.ico
samples/png/*.txt
samples/png/*.png
samples/image/*.cpp
samples/image/*.h
samples/image/makefile*
samples/image/*.rc
samples/image/*.def
samples/image/*.bmp
samples/image/*.xpm
samples/image/*.xbm
samples/image/*.png
samples/image/*.ico
samples/image/*.txt
samples/thread/*.cpp
samples/thread/*.h
samples/thread/makefile*
samples/thread/*.rc
samples/thread/*.def
samples/thread/*.bmp
samples/thread/*.xpm
samples/thread/*.xbm
samples/thread/*.png
samples/thread/*.ico
samples/thread/*.txt
samples/forty/*.cpp
samples/forty/*.h
samples/forty/makefile*
samples/forty/*.rc
samples/forty/*.def
samples/forty/*.bmp
samples/forty/*.xpm
samples/forty/*.xbm
samples/forty/*.png
samples/forty/*.ico
samples/forty/*.txt
samples/dde/*.cpp
samples/dde/*.h
samples/dde/makefile*
samples/dde/client.vc
samples/dde/server.vc
samples/dde/client.wat
samples/dde/server.wat
samples/dde/client.b32
samples/dde/server.b32
samples/dde/client.bcc
samples/dde/server.bcc
samples/dde/client.dos
samples/dde/server.dos
samples/dde/*.rc
samples/dde/*.def
samples/dde/*.bmp
samples/dde/*.xpm
samples/dde/*.xbm
samples/dde/*.png
samples/dde/*.ico
samples/dde/*.txt
samples/scroll/*.cpp
samples/scroll/*.h
samples/scroll/makefile*
samples/scroll/*.rc
samples/scroll/*.def
samples/scroll/*.bmp
samples/scroll/*.xpm
samples/scroll/*.xbm
samples/scroll/*.png
samples/scroll/*.ico
samples/scroll/*.txt
samples/caret/*.cpp
samples/caret/*.h
samples/caret/makefile*
samples/caret/*.rc
samples/caret/*.def
samples/caret/*.bmp
samples/caret/*.xpm
samples/caret/*.xbm
samples/caret/*.png
samples/caret/*.ico
samples/caret/*.txt
samples/drawing/*.cpp
samples/drawing/*.h
samples/drawing/makefile*
samples/drawing/*.rc
samples/drawing/*.def
samples/drawing/*.bmp
samples/drawing/*.xpm
samples/drawing/*.xbm
samples/drawing/*.png
samples/drawing/*.ico
samples/drawing/*.txt

View File

@@ -1,43 +0,0 @@
utils/glcanvas/docs/*.*
utils/glcanvas/win/*.cpp
utils/glcanvas/win/*.h
utils/glcanvas/win/make*.*
utils/glcanvas/gtk/*.cpp
utils/glcanvas/gtk/*.h
utils/glcanvas/gtk/make*.*
utils/glcanvas/gtk/Makefile
utils/glcanvas/motif/*.cpp
utils/glcanvas/motif/*.h
utils/glcanvas/motif/make*.*
utils/glcanvas/motif/*.txt
utils/glcanvas/motif/Makefile
utils/glcanvas/samples/cube/*.cpp
utils/glcanvas/samples/cube/*.h
utils/glcanvas/samples/cube/*.rc
utils/glcanvas/samples/cube/*.ico
utils/glcanvas/samples/cube/*.xbm
utils/glcanvas/samples/cube/make*.*
utils/glcanvas/samples/cube/Makefile
utils/glcanvas/samples/isosurf/*.cpp
utils/glcanvas/samples/isosurf/*.h
utils/glcanvas/samples/isosurf/*.rc
utils/glcanvas/samples/isosurf/*.ico
utils/glcanvas/samples/isosurf/*.xbm
utils/glcanvas/samples/isosurf/*.dat.gz
utils/glcanvas/samples/isosurf/make*.*
utils/glcanvas/samples/isosurf/Makefile
utils/glcanvas/samples/penguin/*.cpp
utils/glcanvas/samples/penguin/*.c
utils/glcanvas/samples/penguin/*.h
utils/glcanvas/samples/penguin/*.rc
utils/glcanvas/samples/penguin/*.ico
utils/glcanvas/samples/penguin/*.xbm
utils/glcanvas/samples/penguin/*.xpm
utils/glcanvas/samples/penguin/make*.*
utils/glcanvas/samples/penguin/Makefile
utils/glcanvas/samples/penguin/penguin.lwo

View File

@@ -1,97 +0,0 @@
install-sh
Makefile
template.mak
configure
configure.in
config.guess
config.sub
wx-config.in
mkinstalldirs
wxGTK.spec
distrib/gtk/copy_src
distrib/gtk/README.txt
distrib/gtk/Setup
docs/gtk/*.html
docs/gtk/*.txt
docs/gtk/makewxgtk
include/wx/gtk/*.h
include/install-sh
include/wx/install-sh
src/Makefile
src/Makefile.in
src/gtk.inc
src/make.env
src/makelib.env
src/makeprog.env
src/gtk/*.cpp
src/gtk/*.c
src/gtk/*.inc
src/gtk/*.xbm
src/iodbc/*.c
src/iodbc/*.ci
src/iodbc/*.h
src/iodbc/IAFA-PACKAGE
src/iodbc/README
src/iodbc/*.exp
src/iodbc/*.mk
src/iodbc/autoconfig
src/iodbc/build
src/iodbc/Changes.log
src/iodbc/postgres/*.h
setup/*.in
setup/*.hin
setup/general/createall
setup/general/jointar
setup/general/makeapp
setup/general/makedirs
setup/general/makedoc
setup/general/mygrep
setup/general/needed
setup/rules/bin
setup/rules/bin2
setup/rules/doc
setup/rules/gbin
setup/rules/gbin2
setup/rules/glib
setup/rules/glibbin
setup/rules/glibgbin
setup/rules/gslib
setup/rules/lib
setup/rules/libbin
setup/rules/libgbin
setup/rules/generic/bin1
setup/rules/generic/bin1gen
setup/rules/generic/bin2
setup/rules/generic/bin2gen
setup/rules/generic/depend
setup/rules/generic/globals
setup/rules/generic/lib
setup/rules/generic/needed
setup/rules/generic/obj
setup/rules/generic/slib
setup/rules/generic/sobj
setup/shared/sharedAIX
setup/shared/sharedBsd
setup/shared/sharedDgux
setup/shared/sharedHpux
setup/shared/sharedIrix
setup/shared/sharedLinux
setup/shared/sharedOSF
setup/shared/sharedSolaris2
setup/shared/sharedSunos4
setup/shared/sharedSysV
misc/afm/*.afm
misc/gs_afm/*.afm

View File

@@ -1,91 +0,0 @@
samples/bombs/Makefile.in
samples/bombs/Makefile
samples/checklst/Makefile.in
samples/checklst/Makefile
samples/config/Makefile.in
samples/config/Makefile
samples/controls/Makefile.in
samples/controls/Makefile
samples/db/Makefile.in
samples/db/Makefile
samples/dde/Makefile.in
samples/dde/Makefile
samples/dialogs/Makefile.in
samples/dialogs/Makefile
samples/dnd/Makefile.in
samples/dnd/Makefile
samples/docview/Makefile.in
samples/docview/Makefile
samples/docvwmdi/Makefile.in
samples/docvwmdi/Makefile
samples/dynamic/Makefile.in
samples/dynamic/Makefile
samples/forty/Makefile.in
samples/forty/Makefile
samples/fractal/Makefile.in
samples/fractal/Makefile
samples/grid/Makefile.in
samples/grid/Makefile
samples/help/Makefile.in
samples/help/Makefile
samples/image/Makefile.in
samples/image/Makefile
samples/internat/Makefile.in
samples/internat/Makefile
samples/layout/Makefile.in
samples/layout/Makefile
samples/listctrl/Makefile.in
samples/listctrl/Makefile
samples/mdi/Makefile.in
samples/mdi/Makefile
samples/memcheck/Makefile.in
samples/memcheck/Makefile
samples/minifram/Makefile.in
samples/minifram/Makefile
samples/minimal/Makefile.in
samples/minimal/Makefile
samples/notebook/Makefile.in
samples/notebook/Makefile
samples/png/Makefile.in
samples/png/Makefile
samples/printing/Makefile.in
samples/printing/Makefile
samples/proplist/Makefile.in
samples/proplist/Makefile
samples/resource/Makefile.in
samples/resource/Makefile
samples/sashtest/Makefile.in
samples/sashtest/Makefile
samples/splitter/Makefile.in
samples/splitter/Makefile
samples/tab/Makefile.in
samples/tab/Makefile
samples/thread/Makefile.in
samples/thread/Makefile
samples/toolbar/Makefile.in
samples/toolbar/Makefile
samples/treectrl/Makefile.in
samples/treectrl/Makefile
samples/typetest/Makefile.in
samples/typetest/Makefile
samples/validate/Makefile.in
samples/validate/Makefile
samples/wxpoem/Makefile.in
samples/wxpoem/Makefile
samples/wxsocket/Makefile.in
samples/wxsocket/Makefile
samples/scroll/Makefile.in
samples/scroll/Makefile
samples/caret/Makefile.in
samples/caret/Makefile
samples/drawing/Makefile.in
samples/drawing/Makefile
src/Makefile.in
src/Makefile
utils/ogl/samples/ogledit/Makefile.in
utils/ogl/samples/ogledit/Makefile
utils/ogl/samples/studio/Makefile.in
utils/ogl/samples/studio/Makefile
utils/ogl/src/Makefile.in
utils/ogl/src/Makefile

View File

@@ -1,104 +0,0 @@
install-sh
Makefile
template.mak
configure
configure.in
config.guess
config.sub
wx-config.in
mkinstalldirs
wxinstall
src/makeenvs/*.env
src/make.env
src/makeprog.env
src/makelib.env
src/Makefile
src/Makefile.in
src/motif.inc
src/motif/*.cpp
src/motif/*.c
src/motif/*.h
src/motif/makefile*
src/motif/*.inc
src/motif/*.xbm
src/motif/xmcombo/*.c
src/motif/xmcombo/*.h
src/motif/xmcombo/*.doc
src/motif/xmcombo/*.man
src/motif/xmcombo/*.txt
src/iodbc/*.c
src/iodbc/*.ci
src/iodbc/*.h
src/iodbc/IAFA-PACKAGE
src/iodbc/README
src/iodbc/*.exp
src/iodbc/*.mk
src/iodbc/autoconfig
src/iodbc/build
src/iodbc/Changes.log
src/iodbc/postgres/*.h
include/wx/motif/*.h
include/install-sh
include/wx/install-sh
docs/motif/*.txt
docs/motif/makewxmotif
lib/dummy
misc/afm/*.afm
misc/gs_afm/*.afm
setup/*.in
setup/*.hin
setup/general/createall
setup/general/jointar
setup/general/makeapp
setup/general/makedirs
setup/general/makedoc
setup/general/mygrep
setup/general/needed
setup/rules/bin
setup/rules/bin2
setup/rules/doc
setup/rules/gbin
setup/rules/gbin2
setup/rules/glib
setup/rules/glibbin
setup/rules/glibgbin
setup/rules/gslib
setup/rules/lib
setup/rules/libbin
setup/rules/libgbin
setup/rules/generic/bin1
setup/rules/generic/bin1gen
setup/rules/generic/bin2
setup/rules/generic/bin2gen
setup/rules/generic/depend
setup/rules/generic/globals
setup/rules/generic/lib
setup/rules/generic/needed
setup/rules/generic/obj
setup/rules/generic/slib
setup/rules/generic/sobj
setup/shared/sharedAIX
setup/shared/sharedBsd
setup/shared/sharedDgux
setup/shared/sharedHpux
setup/shared/sharedIrix
setup/shared/sharedLinux
setup/shared/sharedOSF
setup/shared/sharedSolaris2
setup/shared/sharedSunos4
setup/shared/sharedSysV

View File

@@ -1,173 +0,0 @@
docs/msw/*.txt
docs/licence.txt
distrib/msw/*.rsp
distrib/msw/*.bat
tools/gettext/xgettext.exe
tools/gettext/msgfmt.exe
tools/gettext/msgunfmt.exe
src/makeb32.env
src/makeprog.b32
src/makelib.b32
src/makebcc.env
src/makeprog.bcc
src/makelib.bcc
src/makemsc.env
src/makeprog.msc
src/makelib.msc
src/makewat.env
src/makeprog.wat
src/makelib.wat
src/makesc.env
src/makevc.env
src/makeprog.vc
src/makelib.vc
src/makeg95.env
src/makeprog.g95
src/makelib.g95
src/makesl.env
src/makeprog.sl
src/makelib.sl
src/salford.lnk
src/maketwin.env
src/makeprog.twn
src/makelib.twn
src/makefile.bcc
src/makefile.dos
src/makefile.vc
src/*.bat
src/common/dosyacc.c
src/common/doslex.c
src/msw/*.cpp
src/msw/*.h
src/msw/makefile.*
src/msw/*.lst
src/msw/*.def
src/msw/*.inc
src/msw/ctl3d/*.*
src/msw/ctl3d/msvc/*.*
src/msw/ctl3d/wat32/*.*
src/msw/ctl3d/wat386/*.*
src/msw/ctl3d/borland/*.*
src/msw/ole/*.cpp
src/msw/*.prj
src/xpm/*.c
src/xpm/*.h
src/xpm/makefile*
src/xpm/changes
src/xpm/readme
src/xpm/readme.msw
src/xpm/copyrigh.t
src/xpm/files
include/wx/msw/*.h
include/wx/msw/*.rc
include/wx/msw/ctl3d/*.h
include/wx/msw/gnuwin32/*.h
include/wx/msw/ole/*.h
include/wx/msw/*.cur
include/wx/msw/*.ico
include/wx/msw/*.bmp
lib/dummy
samples/ownerdrw/*.cpp
samples/ownerdrw/*.h
samples/ownerdrw/makefile.*
samples/ownerdrw/*.rc
samples/ownerdrw/*.def
samples/ownerdrw/*.bmp
samples/ownerdrw/*.ico
samples/ownerdrw/*.txt
samples/taskbar/*.cpp
samples/taskbar/*.h
samples/taskbar/makefile.*
samples/taskbar/*.rc
samples/taskbar/*.def
samples/taskbar/*.bmp
samples/taskbar/*.ico
samples/taskbar/*.txt
samples/regtest/*.cpp
samples/regtest/*.h
samples/regtest/makefile.*
samples/regtest/*.rc
samples/regtest/*.def
samples/regtest/*.bmp
samples/regtest/*.ico
samples/regtest/*.txt
samples/nativdlg/*.cpp
samples/nativdlg/*.h
samples/nativdlg/*.def
samples/nativdlg/*.rc
samples/nativdlg/*.txt
samples/nativdlg/makefile.*
samples/nativdlg/*.xbm
samples/nativdlg/*.ico
samples/nativdlg/*.bmp
samples/mfc/*.h
samples/mfc/*.cpp
samples/mfc/*.def
samples/mfc/*.rc
samples/mfc/makefile.*
samples/mfc/*.txt
samples/mfc/*.bmp
samples/mfc/*.ico
samples/joytest/*.h
samples/joytest/*.cpp
samples/joytest/*.def
samples/joytest/*.rc
samples/joytest/makefile.*
samples/joytest/*.txt
samples/joytest/*.bmp
samples/joytest/*.wav
samples/joytest/*.ico
samples/oleauto/*.h
samples/oleauto/*.cpp
samples/oleauto/*.def
samples/oleauto/*.rc
samples/oleauto/makefile.*
samples/oleauto/*.txt
samples/oleauto/*.bmp
samples/oleauto/*.ico
utils/nplugin/make*.*
utils/nplugin/src/*.cpp
utils/nplugin/src/*.h
utils/nplugin/src/*.rc
utils/nplugin/src/*.def
utils/nplugin/src/makefile.*
utils/nplugin/src/*.txt
utils/nplugin/samples/simple/*.cpp
utils/nplugin/samples/simple/*.h
utils/nplugin/samples/simple/*.rc
utils/nplugin/samples/simple/*.def
utils/nplugin/samples/simple/makefile.*
utils/nplugin/samples/simple/*.txt
utils/nplugin/samples/gui/*.cpp
utils/nplugin/samples/gui/*.h
utils/nplugin/samples/gui/*.rc
utils/nplugin/samples/gui/*.def
utils/nplugin/samples/gui/makefile.*
utils/nplugin/samples/gui/*.txt
utils/nplugin/docs/*.tex
utils/nplugin/docs/*.txt
utils/nplugin/docs/*.hpj
utils/nplugin/docs/*.eps
utils/nplugin/docs/*.ps
utils/nplugin/docs/*.ini
utils/nplugin/docs/*.cnt
utils/nplugin/docs/*.hlp
utils/nplugin/lib/dummy

View File

@@ -1,72 +0,0 @@
utils/ogl/Makefile
utils/ogl/src/*.cpp
utils/ogl/src/*.h
utils/ogl/src/*.rc
utils/ogl/src/*.def
utils/ogl/src/*.xbm
utils/ogl/src/*.xpm
utils/ogl/src/make*.*
utils/ogl/src/Makefile
utils/ogl/src/*.txt
utils/ogl/src/*.ico
utils/ogl/src/*.bmp
utils/ogl/samples/ogledit/*.cpp
utils/ogl/samples/ogledit/*.h
utils/ogl/samples/ogledit/*.rc
utils/ogl/samples/ogledit/*.def
utils/ogl/samples/ogledit/*.xbm
utils/ogl/samples/ogledit/make*.*
utils/ogl/samples/ogledit/Makefile
utils/ogl/samples/ogledit/*.txt
utils/ogl/samples/ogledit/*.ico
utils/ogl/samples/ogledit/*.bmp
utils/ogl/samples/ogledit/*.xpm
utils/ogl/samples/ogledit/bitmaps/*.bmp
utils/ogl/samples/ogledit/bitmaps/*.gif
utils/ogl/samples/ogledit/bitmaps/*.xbm
utils/ogl/samples/ogledit/bitmaps/*.xpm
utils/ogl/samples/studio/*.cpp
utils/ogl/samples/studio/*.h
utils/ogl/samples/studio/*.rc
utils/ogl/samples/studio/*.def
utils/ogl/samples/studio/*.xbm
utils/ogl/samples/studio/make*.*
utils/ogl/samples/studio/Makefile
utils/ogl/samples/studio/*.txt
utils/ogl/samples/studio/*.ico
utils/ogl/samples/studio/*.bmp
utils/ogl/samples/studio/*.xpm
utils/ogl/samples/studio/*.wxr
utils/ogl/samples/studio/bitmaps/*.bmp
utils/ogl/samples/studio/bitmaps/*.gif
utils/ogl/samples/studio/bitmaps/*.xbm
utils/ogl/samples/studio/bitmaps/*.xpm
utils/ogl/samples/studio/manual/*.tex
utils/ogl/samples/studio/manual/*.ini
utils/ogl/samples/studio/manual/*.gif
utils/ogl/samples/studio/manual/*.bmp
utils/ogl/samples/studio/manual/*.htm
utils/ogl/samples/studio/manual/*.hlp
utils/ogl/samples/studio/manual/*.cnt
utils/ogl/samples/studio/manual/Makefile
utils/ogl/distrib/*.rsp
utils/ogl/distrib/*.bat
utils/ogl/docs/*.txt
utils/ogl/docs/*.tex
utils/ogl/docs/*.ini
utils/ogl/docs/*.hpj
utils/ogl/docs/*.ps
utils/ogl/docs/*.eps
utils/ogl/docs/*.bmp
utils/ogl/docs/*.gif
docs/html/ogl/*.*
docs/winhelp/ogl.hlp
docs/winhelp/ogl.cnt
docs/pdf/ogl.pdf

View File

@@ -1,15 +0,0 @@
src/stubs/*.cpp
src/stubs/*.h
src/stubs/makefile*
src/stubs/*.inc
src/make.env
src/makeprog.env
src/makelib.env
include/wx/stubs/*.h
include/wx/stubs/*.rc
lib/dummy

View File

@@ -1,108 +0,0 @@
#!/bin/sh
# tardist: make up a tar.gz distribution of wxWindows 2
# Supply a source (e.g. ~/wx2) and destination (e.g. ~/wx2/deliver)
init=""
if [ $1 = "" ]
then
exit
fi
if [ $2 = "" ]
then
exit
fi
echo About to archive wxWindows:
echo From $1
echo To $2
echo CTRL-C if this is not correct.
read dummy
cd $1
echo Removing backup files...
rm *~ */*~ */*/*~ */*/*/*~ */*/*/*/*~
rm -f $2/wx200*.tgz
rm -f $2/tex2rtf2.tgz
rm -f $2/ogl3.tgz
rm -f $2/treedraw.tar.gz
rm -f $2/glcanvas.tar.gz
rm -f $2/jpeg.tgz
echo Tarring...
### Generic
ls `cat $1/distrib/msw/generic.rsp $1/distrib/msw/makefile.rsp` > /tmp/wxgen.txt
tar cvf $2/wx200gen.tar -T /tmp/wxgen.txt
gzip $2/wx200gen.tar
mv $2/wx200gen.tar.gz $2/wx200gen.tgz
### wxGTK
ls `cat $1/distrib/msw/generic.rsp $1/distrib/msw/gtk.rsp $1/distrib/msw/makefile.rsp` > /tmp/wxgtk.txt
tar cvf $2/wx200gtk.tar -T /tmp/wxgtk.txt
gzip $2/wx200gtk.tar
mv $2/wx200gtk.tar.gz $2/wx200gtk.tgz
### wxMotif
ls `cat $1/distrib/msw/generic.rsp $1/distrib/msw/motif.rsp $1/distrib/msw/makefile.rsp` > /tmp/wxmotif.txt
tar cvf $2/wx200mot.tar -T /tmp/wxmotif.txt
gzip $2/wx200mot.tar
mv $2/wx200mot.tar.gz $2/wx200mot.tgz
### Doc sources
ls `cat $1/distrib/msw/docsrc.rsp` > /tmp/docsrc.txt
tar cvf $2/wx200doc.tar -T /tmp/docsrc.txt
gzip $2/wx200doc.tar
mv $2/wx200doc.tar.gz $2/wx200doc.tgz
### HTML docs
ls `cat $1/distrib/msw/wx_html.rsp` > /tmp/html.txt
tar cvf $2/wx200htm.tar -T /tmp/html.txt
gzip $2/wx200htm.tar
mv $2/wx200htm.tar.gz $2/wx200htm.tgz
### PDF docs
ls `cat $1/distrib/msw/wx_pdf.rsp` > /tmp/pdf.txt
tar cvf $2/wx200pdf.tar -T /tmp/pdf.txt
gzip $2/wx200pdf.tar
mv $2/wx200pdf.tar.gz $2/wx200pdf.tgz
### Stubs files
ls `cat $1/distrib/msw/stubs.rsp` > /tmp/stubs.txt
tar cvf $2/wx200stubs.tar -T /tmp/stubs.txt
gzip $2/wx200stubs.tar
mv $2/wx200stubs.tar.gz $2/wx200stubs.tgz
### Tex2RTF
ls `cat $1/distrib/msw/tex2rtf.rsp` > /tmp/tex2rtf.txt
tar cvf $2/tex2rtf2.tar -T /tmp/tex2rtf.txt
gzip $2/tex2rtf2.tar
mv $2/tex2rtf2.tar.gz $2/tex2rtf2.tgz
### OGL
ls `cat $1/distrib/msw/ogl.rsp` > /tmp/ogl.txt
tar cvf $2/ogl3.tar -T /tmp/ogl.txt
gzip $2/ogl3.tar
mv $2/ogl3.tar.gz $2/ogl3.tgz
### wxGLCanvas
ls `cat $1/distrib/msw/glcanvas.rsp` > /tmp/glcanvas.txt
tar cvf $2/glcanvas.tar -T /tmp/glcanvas.txt
gzip $2/glcanvas.tar
mv $2/glcanvas.tar.gz $2/glcanvas.tgz
### wxTreeLayout
ls `cat $1/distrib/msw/wxtree.rsp` > /tmp/wxtree.txt
tar cvf $2/treedraw.tar -T /tmp/wxtree.txt
gzip $2/treedraw.tar
mv $2/treedraw.tar.gz $2/treedraw.tgz
### JPEG
ls `cat $1/distrib/msw/jpeg.rsp` > /tmp/jpeg.txt
tar cvf $2/jpeg.tar -T /tmp/jpeg.txt
gzip $2/jpeg.tar
mv $2/jpeg.tar.gz $2/jpeg.tgz
echo Done!

View File

@@ -1,117 +0,0 @@
@echo off
rem Tar up an external distribution of wxWindows 2.0: but
rem putting in separate ASCII and binary files
rem This seems to be the one that works, using
rem separate tar programs for conversion/non-conversion
rem of ASCII/binary files.
if "%1" == "" goto usage
if "%2" == "" goto usage
echo About to archive an external wxWindows 2.0 distribution:
echo From %1
echo To %2\wx200_1.tgz, %2\wx200_2.tgz, %2\wx200hlp.tgz, %2\wx200ps.tgz, %2\wx200htm.tgz
echo CTRL-C if this is not correct.
inkey /W4 `Press any key to continue...` %%input
erase %2\*.tgz
cd %1
rem First, expand the wildcards in the rsp files
rem Create empty list file
erase %1\distrib\*.lis
c:\bin\touch %1\distrib\wx200asc.lis
c:\bin\touch %1\distrib\wx200bin.lis
c:\bin\touch %1\distrib\wx200hlp.lis
c:\bin\touch %1\distrib\wx200ps.lis
c:\bin\touch %1\distrib\wx200xlp.lis
rem Create a .rsp file with backslashes instead
rem of forward slashes
rem No need if using ls2 (from UNIX95 distribution)
rem sed -e "s/\//\\/g" %1\distrib\wx_asc.rsp > %1\distrib\wx_asc.rs2
call %1\distrib\expdwild.bat %1\distrib\wx_asc.rsp %1\distrib\wx200asc.lis
call %1\distrib\expdwild.bat %1\distrib\util_asc.rsp %1\distrib\wx200asc.lis
call %1\distrib\expdwild.bat %1\distrib\smpl_asc.rsp %1\distrib\wx200asc.lis
rem call %1\distrib\expdwild.bat %1\distrib\wxim1asc.rsp %1\distrib\wx200asc.lis
rem call %1\distrib\expdwild.bat %1\distrib\wxim2asc.rsp %1\distrib\wx200asc.lis
call %1\distrib\expdwild.bat %1\distrib\wx_bin.rsp %1\distrib\wx200bin.lis
call %1\distrib\expdwild.bat %1\distrib\util_bin.rsp %1\distrib\wx200bin.lis
call %1\distrib\expdwild.bat %1\distrib\smpl_bin.rsp %1\distrib\wx200bin.lis
rem call %1\distrib\expdwild.bat %1\distrib\wxim1bin.rsp %1\distrib\wx200bin.lis
rem Docs
call %1\distrib\expdwild.bat %1\distrib\wx_hlp.rsp %1\distrib\wx200hlp.lis
call %1\distrib\expdwild.bat %1\distrib\wx_ps.rsp %1\distrib\wx200ps.lis
call %1\distrib\expdwild.bat %1\distrib\wx_html.rsp %1\distrib\wx200htm.lis
call %1\distrib\expdwild.bat %1\distrib\wx_pdf.rsp %1\distrib\wx200pdf.lis
rem Do some further massaging of the .lis files
sed -e "s/\\/\//g" %1\distrib\wx200asc.lis > c:\temp\temp.tmp
sed -e "s/D:\/wx\///g" c:\temp\temp.tmp > %1\distrib\wx200asc.lis
sed -e "s/\\/\//g" %1\distrib\wx200bin.lis > c:\temp\temp.tmp
sed -e "s/D:\/wx\///g" c:\temp\temp.tmp > %1\distrib\wx200bin.lis
sed -e "s/\\/\//g" %1\distrib\wx200hlp.lis > c:\temp\temp.tmp
sed -e "s/D:\/wx\///g" c:\temp\temp.tmp > %1\distrib\wx200hlp.lis
sed -e "s/\\/\//g" %1\distrib\wx200ps.lis > c:\temp\temp.tmp
sed -e "s/D:\/wx\///g" c:\temp\temp.tmp > %1\distrib\wx200ps.lis
sed -e "s/\\/\//g" %1\distrib\wx200htm.lis > c:\temp\temp.tmp
sed -e "s/D:\/wx\///g" c:\temp\temp.tmp > %1\distrib\wx200htm.lis
sed -e "s/\\/\//g" %1\distrib\wx200pdf.lis > c:\temp\temp.tmp
sed -e "s/D:\/wx\///g" c:\temp\temp.tmp > %1\distrib\wx200pdf.lis
rem 'tar' converts linefeeds.
tar -c -T %1\distrib\wx200asc.lis -f %2\wx200.tar
rem pause Press a key to continue.
rem This converts to lower case
ren %2\wx200.tar %2\wx200_1.tar
gzip32 %2\wx200_1.tar
ren %2\wx200_1.tar.gz %2\wx200_1.tgz
rem No linefeed conversion wanted
rem Note: GNU tar seems to crash with a full destination path, so
rem pander to it.
targnu -c -T %1\distrib\wx200bin.lis -f wx200_2.tar
move wx200_2.tar %2
gzip32 %2\wx200_2.tar
ren %2\wx200_2.tar.gz %2\wx200_2.tgz
targnu -c -T %1\distrib\wx200hlp.lis -f wx200_hlp.tar
move wx200_hlp.tar %2
gzip32 %2\wx200_hlp.tar
ren %2\wx200_hlp.tar.gz %2\wx200hlp.tgz
tar -c -T %1\distrib\wx200ps.lis -f %2\wx200ps.tar
gzip32 %2\wx200ps.tar
ren %2\wx200ps.tar.gz %2\wx200ps.tgz
targnu -c -T %1\distrib\wx200htm.lis -f wx200htm.tar
move wx200htm.tar %2
gzip32 %2\wx200htm.tar
ren %2\wx200htm.tar.gz %2\wx200htm.tgz
targnu -c -T %1\distrib\wx200pdf.lis -f wx200pdf.tar
move wx200pdf.tar %2
gzip32 %2\wx200pdf.tar
ren %2\wx200pdf.tar.gz %2\wx200pdf.tgz
cd %2
echo wxWindows archived.
goto end
:usage
echo Tar/gzip wxWindows distribution under DOS, making an ASCII and binary file
echo Usage: tardist source destination
echo e.g. tardist d:\wx d:\wx\deliver
:end

View File

@@ -1,27 +0,0 @@
utils/tex2rtf/src/*.cpp
utils/tex2rtf/src/*.h
utils/tex2rtf/src/make*.*
utils/tex2rtf/src/Makefile
utils/tex2rtf/src/*.xbm
utils/tex2rtf/src/*.xpm
utils/tex2rtf/src/*.sty
utils/tex2rtf/src/*.ini
utils/tex2rtf/lib/dummy
utils/tex2rtf/src/*.bmp
utils/tex2rtf/src/*.ico
utils/tex2rtf/src/*.def
utils/tex2rtf/src/*.rc
utils/tex2rtf/docs/*.tex
utils/tex2rtf/docs/*.sty
utils/tex2rtf/docs/*.bib
utils/tex2rtf/docs/*.hpj
utils/tex2rtf/docs/*.ini
utils/tex2rtf/docs/*.txt
utils/tex2rtf/docs/*.cnt
utils/tex2rtf/docs/*.eps
utils/tex2rtf/docs/*.bmp
utils/tex2rtf/docs/*.gif
utils/tex2rtf/docs/*.wmf
utils/tex2rtf/docs/*.shg

View File

@@ -1,27 +0,0 @@
user/Makefile
user/wxConvert/*.cpp
user/wxConvert/*.h
user/wxConvert/Makefile
user/wxConvert/Makefile.in
user/wxFile/*.cpp
user/wxFile/*.h
user/wxFile/Makefile
user/wxFile/Makefile.in
user/wxFile/*.xpm
user/wxTest/*.cpp
user/wxTest/*.h
user/wxTest/Makefile
user/wxTest/Makefile.in
user/wxTest/*.xpm
user/wxTest/*.png
user/wxLayout/*.cpp
user/wxLayout/*.h
user/wxLayout/Makefile
user/wxLayout/Makefile.in
user/wxLayout/*.xpm
user/wxLayout/*.png

View File

@@ -1,159 +0,0 @@
src/wxvc.dsp
src/wxvc.dsw
src/wxvc6.dsp
src/wxvc6.dsw
src/wxvc_dll.dsp
src/wxvc_dll.dsw
samples/checklst/ChecklstVC.dsp
samples/checklst/ChecklstVC.dsw
samples/config/ConfigVC.dsp
samples/config/ConfigVC.dsw
samples/controls/ControlsVC.dsp
samples/controls/ControlsVC.dsw
samples/db/DbVC.dsp
samples/db/DbVC.dsw
samples/dialogs/DialogsVC.dsp
samples/dialogs/DialogsVC.dsw
samples/dnd/DndVC.dsp
samples/dnd/DndVC.dsw
samples/docview/DocviewVC.dsp
samples/docview/DocviewVC.dsw
samples/docvwmdi/DocViewVC.dsp
samples/docvwmdi/DocViewVC.dsw
samples/dynamic/DynamicVC.dsp
samples/dynamic/DynamicVC.dsw
samples/forty/FortyVC.dsp
samples/forty/FortyVC.dsw
samples/grid/GridVC.dsp
samples/grid/GridVC.dsw
samples/help/HelpVC.dsp
samples/help/HelpVC.dsw
samples/image/ImageVC.dsp
samples/image/ImageVC.dsw
samples/internat/InternatVC.dsp
samples/internat/InternatVC.dsw
samples/joytest/JoytestVC.dsp
samples/joytest/JoytestVC.dsw
samples/layout/LayoutVC.dsp
samples/layout/LayoutVC.dsw
samples/listctrl/ListCtrlVC.dsp
samples/listctrl/ListCtrlVC.dsw
samples/mdi/MdiVC.dsp
samples/mdi/MdiVC.dsw
samples/memcheck/MemcheckVC.dsp
samples/memcheck/MemcheckVC.dsw
samples/mfc/MfcVC.dsp
samples/mfc/MfcVC.dsw
samples/minimal/MinimalVC.dsp
samples/minimal/MinimalVC.dsw
samples/minifram/MiniframVC.dsp
samples/minifram/MiniframVC.dsw
samples/nativdlg/NativdlgVC.dsp
samples/nativdlg/NativdlgVC.dsw
samples/notebook/NotebookVC.dsp
samples/notebook/NotebookVC.dsw
samples/ownerdrw/OwnerDrwVC.dsp
samples/ownerdrw/OwnerDrwVC.dsw
samples/png/PngVC.dsp
samples/png/PngVC.dsw
samples/printing/PrintingVC.dsp
samples/printing/PrintingVC.dsw
samples/Regtest/RegtestVC.dsp
samples/Regtest/RegtestVC.dsw
samples/resource/ResourceVC.dsp
samples/resource/ResourceVC.dsw
samples/sashtest/SashtestVC.dsp
samples/sashtest/SashtestVC.dsw
samples/splitter/SplitterVC.dsp
samples/splitter/SplitterVC.dsw
samples/tab/TabVC.dsp
samples/tab/TabVC.dsw
samples/taskbar/TaskbarVC.dsp
samples/taskbar/TaskbarVC.dsw
samples/thread/ThreadVC.dsp
samples/thread/ThreadVC.dsw
samples/toolbar/ToolbarVC.dsp
samples/toolbar/ToolbarVC.dsw
samples/treectrl/TreectrlVC.dsp
samples/treectrl/TreeCtrlVC.dsw
samples/typetest/TypetestVC.dsp
samples/typetest/TypetestVC.dsw
samples/validate/ValidateVC.dsp
samples/validate/ValidateVC.dsw
samples/wxsocket/ClientVC.dsp
samples/wxsocket/ServerVC.dsw
samples/wxpoem/PoemVC.dsp
samples/wxpoem/PoemVC.dsw
utils/wxprop/src/PropVC.dsp
utils/wxprop/src/PropVC.dsw
utils/wxprop/src/PropSampleVC.dsp
utils/wxprop/src/PropSampleVC.dsw
utils/dialoged/src/DialogEdVC.dsp
utils/dialoged/src/DialogEdVC.dsw
utils/tex2rtf/src/Tex2RTFVC.dsp
utils/tex2rtf/src/Tex2RTFVC.dsw
utils/glcanvas/win/GlcanvasVC.dsp
utils/glcanvas/win/GlcanvasVC.dsw
utils/glcanvas/samples/cube/CubeVC.dsp
utils/glcanvas/samples/cube/CubeVC.dsw
utils/glcanvas/samples/isosurf/IsosurfVC.dsp
utils/glcanvas/samples/isosurf/IsosurfVC.dsw
utils/glcanvas/samples/penguin/PenguinVC.dsp
utils/glcanvas/samples/penguin/PenguinVC.dsw
utils/ogl/src/OglVC.dsp
utils/ogl/src/OglVC.dsw
utils/ogl/samples/ogledit/OgleditVC.dsp
utils/ogl/samples/ogledit/OgleditVC.dsw
utils/ogl/samples/studio/StudioVC.dsp
utils/ogl/samples/studio/StudioVC.dsw
utils/wxtree/src/TreeVC.dsp
utils/wxtree/src/TreeVC.dsw
utils/wxtree/src/TreeSampleVC.dsp
utils/wxtree/src/TreeSampleVC.dsw

View File

@@ -1,2 +0,0 @@
docs/winhelp/*.hlp
docs/winhelp/*.cnt

View File

@@ -1,37 +0,0 @@
docs/html/*.htm
docs/html/*.gif
docs/html/wx/*.htm
docs/html/wx/*.gif
docs/html/porting/*.htm
docs/html/porting/*.gif
docs/html/faq/*.htm
docs/html/faq/*.gif
docs/html/techref/*.htm
docs/html/techref/*.gif
docs/html/dialoged/*.htm
docs/html/dialoged/*.gif
docs/html/wxtree/*.htm
docs/html/wxtree/*.gif
docs/html/wxgraph/*.htm
docs/html/wxgraph/*.gif
docs/html/wxhelp/*.htm
docs/html/wxhelp/*.gif
docs/html/proplist/*.htm
docs/html/proplist/*.gif
docs/html/winstall/*.htm
docs/html/winstall/*.gif
docs/html/tex2rtf/*.htm
docs/html/tex2rtf/*.gif
docs/html/odbc/*.htm
docs/html/gettext/*.htm

View File

@@ -1 +0,0 @@
docs/pdf/*.pdf

View File

@@ -1,2 +0,0 @@
docs/word/odbc.doc

View File

@@ -1,10 +0,0 @@
utils/wxtree/src/*.cpp
utils/wxtree/src/*.h
utils/wxtree/src/makefile*
utils/wxtree/src/*.xbm
utils/wxtree/src/*.xpm
utils/wxtree/lib/dummy
utils/wxtree/src/*.ico
utils/wxtree/src/*.def
utils/wxtree/src/*.rc

View File

@@ -1,77 +0,0 @@
@echo off
rem Zip up an external, generic + Windows distribution of wxWindows 2.0
set src=%wxwin
set dest=%src\deliver
if "%src" == "" goto usage
if "%dest" == "" goto usage
echo About to archive an external wxWindows distribution:
echo From %src
echo To %dest
echo CTRL-C if this is not correct.
pause
erase %dest\wx200*.zip
erase %dest\glcanvas.zip
erase %dest\ogl3.zip
erase %dest\tex2rtf2.zip
erase %dest\jpeg.zip
cd %src
echo Zipping...
zip32 -@ %dest\wx200gen.zip < %src\distrib\msw\generic.rsp
zip32 -@ %dest\wx200msw.zip < %src\distrib\msw\msw.rsp
zip32 -@ %dest\wx200gtk.zip < %src\distrib\msw\gtk.rsp
zip32 -@ %dest\wx200stubs.zip < %src\distrib\msw\stubs.rsp
zip32 -@ %dest\wx200mot.zip < %src\distrib\msw\motif.rsp
zip32 -@ %dest\wx200user.zip < %src\distrib\msw\user.rsp
zip32 -@ %dest\wx200doc.zip < %src\distrib\msw\docsrc.rsp
zip32 -@ %dest\wx200hlp.zip < %src\distrib\msw\wx_hlp.rsp
zip32 -@ %dest\wx200htm.zip < %src\distrib\msw\wx_html.rsp
zip32 -@ %dest\wx200pdf.zip < %src\distrib\msw\wx_pdf.rsp
zip32 -@ %dest\wx200wrd.zip < %src\distrib\msw\wx_word.rsp
rem VC++ project files
zip32 -@ %dest\wx200vc.zip < %src\distrib\msw\vc.rsp
rem BC++ project files
zip32 -@ %dest\wx200bc.zip < %src\distrib\msw\bc.rsp
rem CodeWarrior project files
zip32 -@ %dest\wx200cw.zip < %src\distrib\msw\cw.rsp
rem OGL 3
zip32 -@ %dest\ogl3.zip < %src\distrib\msw\ogl.rsp
rem GLCanvas
zip32 -@ %dest\glcanvas.zip < %src\distrib\msw\glcanvas.rsp
rem Tex2RTF
zip32 -@ %dest\tex2rtf2.zip < %src\distrib\msw\tex2rtf.rsp
rem wxTreeLayout
zip32 -@ %dest\treedraw.zip < %src\distrib\msw\wxtree.rsp
rem JPEG source
zip32 -@ %dest\jpeg.zip < %src\distrib\msw\jpeg.rsp
copy %src\docs\changes.txt %dest
copy %src\docs\msw\install.txt %dest\install_msw.txt
copy %src\docs\motif\install.txt %dest\install_motif.txt
copy %src\docs\gtk\install.txt %dest\install_gtk.txt
copy %src\docs\readme.txt %dest
copy %src\docs\motif\makewxmotif %dest
copy %src\docs\gtk\makewxgtk %dest
cd %dest
echo wxWindows archived.
goto end
:usage
echo DOS wxWindows distribution.
echo Usage: zipdist source destination
echo e.g. zipdist d:\wx2\wxWindows d:\wx2\wxWindows\deliver
:end

View File

@@ -1,659 +0,0 @@
#! /bin/sh
#
# This script is creates a dir tree in ~/wxwine_dist which
# can then be packed into an archive
echo --------
echo This script will copy the wxWINE release files into ~/wxwine_dist
echo --------
echo
mkdir ~/wxwine_dist
mkdir ~/wxwine_dist/wxWINE
echo Base dir..
cd ../..
cp wxWINE.spec ~/wxwine_dist/wxWINE
cp Makefile.am ~/wxwine_dist/wxWINE
cp acconfig.h ~/wxwine_dist/wxWINE
cp acinclude.m4 ~/wxwine_dist/wxWINE
cp aclocal.m4 ~/wxwine_dist/wxWINE
cp configure.in ~/wxwine_dist/wxWINE
cp configure ~/wxwine_dist/wxWINE
cp config.sub ~/wxwine_dist/wxWINE
cp config.guess ~/wxwine_dist/wxWINE
cp install-sh ~/wxwine_dist/wxWINE
cp ltconfig ~/wxwine_dist/wxWINE
cp ltmain.sh ~/wxwine_dist/wxWINE
cp missing ~/wxwine_dist/wxWINE
cp mkinstalldirs ~/wxwine_dist/wxWINE
cp wx-config.in ~/wxwine_dist/wxWINE
cp setup.h.in ~/wxwine_dist/wxWINE
cp stamp-h.in ~/wxwine_dist/wxWINE
cp Makefile.in ~/wxwine_dist/wxWINE
echo Docs..
cd docs/wine
cp COPYING.LIB ~/wxwine_dist/wxWINE
cp install.txt ~/wxwine_dist/wxWINE/INSTALL.txt
cp changes.txt ~/wxwine_dist/wxWINE/CHANGES.txt
cp licence.txt ~/wxwine_dist/wxWINE/LICENCE.txt
cp readme.txt ~/wxwine_dist/wxWINE/README.txt
cp todo.txt ~/wxwine_dist/wxWINE/TODO.txt
cd ..
cp symbols.txt ~/wxwine_dist/wxWINE/SYMBOLS.txt
cd ..
echo Include dir..
mkdir ~/wxwine_dist/wxWINE/include
cd include
cp Makefile.am ~/wxwine_dist/wxWINE/include
cp Makefile.in ~/wxwine_dist/wxWINE/include
mkdir ~/wxwine_dist/wxWINE/include/wx
cd wx
cp *.h ~/wxwine_dist/wxWINE/include/wx
cp *.cpp ~/wxwine_dist/wxWINE/include/wx
cp Makefile.am ~/wxwine_dist/wxWINE/include/wx
cp Makefile.in ~/wxwine_dist/wxWINE/include/wx
mkdir ~/wxwine_dist/wxWINE/include/wx/generic
cd generic
cp *.h ~/wxwine_dist/wxWINE/include/wx/generic
cp *.xpm ~/wxwine_dist/wxWINE/include/wx/generic
cp Makefile.am ~/wxwine_dist/wxWINE/include/wx/generic
cp Makefile.in ~/wxwine_dist/wxWINE/include/wx/generic
cd ..
mkdir ~/wxwine_dist/wxWINE/include/wx/unix
cd unix
cp *.h ~/wxwine_dist/wxWINE/include/wx/unix
cp Makefile.am ~/wxwine_dist/wxWINE/include/wx/unix
cp Makefile.in ~/wxwine_dist/wxWINE/include/wx/unix
cd ..
mkdir ~/wxwine_dist/wxWINE/include/wx/msw
cd msw
cp *.h ~/wxwine_dist/wxWINE/include/wx/msw
rm ~/wxwine_dist/wxWINE/include/wx/msw/setup.h
cp Makefile.am ~/wxwine_dist/wxWINE/include/wx/msw
cp Makefile.in ~/wxwine_dist/wxWINE/include/wx/msw
cd ..
mkdir ~/wxwine_dist/wxWINE/include/wx/motif
cd motif
cp Makefile.am ~/wxwine_dist/wxWINE/include/wx/motif
cp Makefile.in ~/wxwine_dist/wxWINE/include/wx/motif
cd ..
mkdir ~/wxwine_dist/wxWINE/include/wx/gtk
cd gtk
cp Makefile.am ~/wxwine_dist/wxWINE/include/wx/gtk
cp Makefile.in ~/wxwine_dist/wxWINE/include/wx/gtk
cd ..
mkdir ~/wxwine_dist/wxWINE/include/wx/protocol
cd protocol
cp *.h ~/wxwine_dist/wxWINE/include/wx/protocol
cp Makefile.am ~/wxwine_dist/wxWINE/include/wx/protocol
cp Makefile.in ~/wxwine_dist/wxWINE/include/wx/protocol
cd ..
cd ../..
echo Misc dir..
mkdir ~/wxwine_dist/wxWINE/misc
cd misc
cp Makefile.am ~/wxwine_dist/wxWINE/misc
cp Makefile.in ~/wxwine_dist/wxWINE/misc
mkdir ~/wxwine_dist/wxWINE/misc/afm
cd afm
cp *.afm ~/wxwine_dist/wxWINE/misc/afm
cp Makefile.am ~/wxwine_dist/wxWINE/misc/afm
cp Makefile.in ~/wxwine_dist/wxWINE/misc/afm
cd ..
mkdir ~/wxwine_dist/wxWINE/misc/gs_afm
cd gs_afm
cp *.afm ~/wxwine_dist/wxWINE/misc/gs_afm
cp Makefile.am ~/wxwine_dist/wxWINE/misc/gs_afm
cp Makefile.in ~/wxwine_dist/wxWINE/misc/gs_afm
cd ../..
echo Src dir..
cd src
mkdir ~/wxwine_dist/wxWINE/src
cp Makefile.am ~/wxwine_dist/wxWINE/src
cp Makefile.in ~/wxwine_dist/wxWINE/src
cd msw
mkdir ~/wxwine_dist/wxWINE/src/msw
cp Makefile.am ~/wxwine_dist/wxWINE/src/msw
cp Makefile.in ~/wxwine_dist/wxWINE/src/msw
cp *.xbm ~/wxwine_dist/wxWINE/src/msw
cp *.c ~/wxwine_dist/wxWINE/src/msw
cp *.inc ~/wxwine_dist/wxWINE/src/msw
cp *.cpp ~/wxwine_dist/wxWINE/src/msw
cd ..
cd common
mkdir ~/wxwine_dist/wxWINE/src/common
cp glob.inc ~/wxwine_dist/wxWINE/src/common
cp lexer.l ~/wxwine_dist/wxWINE/src/common
cp parser.y ~/wxwine_dist/wxWINE/src/common
cp extended.c ~/wxwine_dist/wxWINE/src/common
cp *.cpp ~/wxwine_dist/wxWINE/src/common
cd ..
cd unix
mkdir ~/wxwine_dist/wxWINE/src/unix
cp *.cpp ~/wxwine_dist/wxWINE/src/unix
cd ..
cd generic
mkdir ~/wxwine_dist/wxWINE/src/generic
cp *.cpp ~/wxwine_dist/wxWINE/src/generic
cd ..
cd iodbc
mkdir ~/wxwine_dist/wxWINE/src/iodbc
cp * ~/wxwine_dist/wxWINE/src/iodbc
cd ..
cd zlib
mkdir ~/wxwine_dist/wxWINE/src/zlib
cp * ~/wxwine_dist/wxWINE/src/zlib
cd ..
cd png
mkdir ~/wxwine_dist/wxWINE/src/png
cp * ~/wxwine_dist/wxWINE/src/png
cd ..
cd jpeg
mkdir ~/wxwine_dist/wxWINE/src/jpeg
cp * ~/wxwine_dist/wxWINE/src/jpeg
cd ..
cd ..
echo Utils dir..
cd utils
mkdir ~/wxwine_dist/wxWINE/utils
cp Makefile.am ~/wxwine_dist/wxWINE/utils
cp Makefile.in ~/wxwine_dist/wxWINE/utils
cd ..
echo Samples dir..
cd samples
mkdir ~/wxwine_dist/wxWINE/samples
cp Makefile.am ~/wxwine_dist/wxWINE/samples
cp Makefile.in ~/wxwine_dist/wxWINE/samples
echo Minimal sample..
cd minimal
mkdir ~/wxwine_dist/wxWINE/samples/minimal
cp Makefile.am ~/wxwine_dist/wxWINE/samples/minimal
cp Makefile.in ~/wxwine_dist/wxWINE/samples/minimal
cp minimal.cpp ~/wxwine_dist/wxWINE/samples/minimal
cp mondrian.xpm ~/wxwine_dist/wxWINE/samples/minimal
cd ..
echo Bombs sample..
cd bombs
mkdir ~/wxwine_dist/wxWINE/samples/bombs
cp Makefile.am ~/wxwine_dist/wxWINE/samples/bombs
cp Makefile.in ~/wxwine_dist/wxWINE/samples/bombs
cp *.cpp ~/wxwine_dist/wxWINE/samples/bombs
cp *.h ~/wxwine_dist/wxWINE/samples/bombs
cp *.xpm ~/wxwine_dist/wxWINE/samples/bombs
cd ..
echo Caret sample..
cd caret
mkdir ~/wxwine_dist/wxWINE/samples/caret
cp Makefile.am ~/wxwine_dist/wxWINE/samples/caret
cp Makefile.in ~/wxwine_dist/wxWINE/samples/caret
cp *.cpp ~/wxwine_dist/wxWINE/samples/caret
cp *.xpm ~/wxwine_dist/wxWINE/samples/caret
cd ..
echo Checklst sample..
cd checklst
mkdir ~/wxwine_dist/wxWINE/samples/checklst
cp Makefile.am ~/wxwine_dist/wxWINE/samples/checklst
cp Makefile.in ~/wxwine_dist/wxWINE/samples/checklst
cp *.cpp ~/wxwine_dist/wxWINE/samples/checklst
cp *.xpm ~/wxwine_dist/wxWINE/samples/checklst
cd ..
echo Config sample..
cd config
mkdir ~/wxwine_dist/wxWINE/samples/config
cp Makefile.am ~/wxwine_dist/wxWINE/samples/config
cp Makefile.in ~/wxwine_dist/wxWINE/samples/config
cp *.cpp ~/wxwine_dist/wxWINE/samples/config
cd ..
echo Controls sample..
cd controls
mkdir ~/wxwine_dist/wxWINE/samples/controls
cp Makefile.am ~/wxwine_dist/wxWINE/samples/controls
cp Makefile.in ~/wxwine_dist/wxWINE/samples/controls
cp *.cpp ~/wxwine_dist/wxWINE/samples/controls
cp *.xpm ~/wxwine_dist/wxWINE/samples/controls
cd icons
mkdir ~/wxwine_dist/wxWINE/samples/controls/icons
cp *.xpm ~/wxwine_dist/wxWINE/samples/controls/icons
cd ../..
echo Db sample..
cd db
mkdir ~/wxwine_dist/wxWINE/samples/db
cp Makefile.am ~/wxwine_dist/wxWINE/samples/db
cp Makefile.in ~/wxwine_dist/wxWINE/samples/db
cp *.cpp ~/wxwine_dist/wxWINE/samples/db
cp *.h ~/wxwine_dist/wxWINE/samples/db
cp *.xpm ~/wxwine_dist/wxWINE/samples/db
cd ..
echo DDE sample..
cd dde
mkdir ~/wxwine_dist/wxWINE/samples/dde
cp Makefile.am ~/wxwine_dist/wxWINE/samples/dde
cp Makefile.in ~/wxwine_dist/wxWINE/samples/dde
cp *.cpp ~/wxwine_dist/wxWINE/samples/dde
cp *.h ~/wxwine_dist/wxWINE/samples/dde
cp *.xpm ~/wxwine_dist/wxWINE/samples/dde
cd ..
echo Dialogs sample..
cd dialogs
mkdir ~/wxwine_dist/wxWINE/samples/dialogs
cp Makefile.am ~/wxwine_dist/wxWINE/samples/dialogs
cp Makefile.in ~/wxwine_dist/wxWINE/samples/dialogs
cp *.cpp ~/wxwine_dist/wxWINE/samples/dialogs
cp *.h ~/wxwine_dist/wxWINE/samples/dialogs
cd ..
echo DnD sample..
cd dnd
mkdir ~/wxwine_dist/wxWINE/samples/dnd
cp Makefile.am ~/wxwine_dist/wxWINE/samples/dnd
cp Makefile.in ~/wxwine_dist/wxWINE/samples/dnd
cp *.cpp ~/wxwine_dist/wxWINE/samples/dnd
cp *.xpm ~/wxwine_dist/wxWINE/samples/dnd
cd ..
echo Docview sample..
cd docview
mkdir ~/wxwine_dist/wxWINE/samples/docview
cp Makefile.am ~/wxwine_dist/wxWINE/samples/docview
cp Makefile.in ~/wxwine_dist/wxWINE/samples/docview
cp *.cpp ~/wxwine_dist/wxWINE/samples/docview
cp *.h ~/wxwine_dist/wxWINE/samples/docview
cp *.xpm ~/wxwine_dist/wxWINE/samples/docview
cd ..
echo DocvwMDI sample..
cd docvwmdi
mkdir ~/wxwine_dist/wxWINE/samples/docvwmdi
cp Makefile.am ~/wxwine_dist/wxWINE/samples/docvwmdi
cp Makefile.in ~/wxwine_dist/wxWINE/samples/docvwmdi
cp *.cpp ~/wxwine_dist/wxWINE/samples/docvwmdi
cp *.h ~/wxwine_dist/wxWINE/samples/docvwmdi
cd ..
echo Dynamic sample..
cd dynamic
mkdir ~/wxwine_dist/wxWINE/samples/dynamic
cp Makefile.am ~/wxwine_dist/wxWINE/samples/dynamic
cp Makefile.in ~/wxwine_dist/wxWINE/samples/dynamic
cp *.cpp ~/wxwine_dist/wxWINE/samples/dynamic
cp *.xpm ~/wxwine_dist/wxWINE/samples/dynamic
cd ..
echo Drawing sample..
cd drawing
mkdir ~/wxwine_dist/wxWINE/samples/drawing
cp Makefile.am ~/wxwine_dist/wxWINE/samples/drawing
cp Makefile.in ~/wxwine_dist/wxWINE/samples/drawing
cp *.cpp ~/wxwine_dist/wxWINE/samples/drawing
cp *.xpm ~/wxwine_dist/wxWINE/samples/drawing
cd ..
echo Forty sample..
cd forty
mkdir ~/wxwine_dist/wxWINE/samples/forty
cp Makefile.am ~/wxwine_dist/wxWINE/samples/forty
cp Makefile.in ~/wxwine_dist/wxWINE/samples/forty
cp *.cpp ~/wxwine_dist/wxWINE/samples/forty
cp *.h ~/wxwine_dist/wxWINE/samples/forty
cp *.xpm ~/wxwine_dist/wxWINE/samples/forty
cp *.xbm ~/wxwine_dist/wxWINE/samples/forty
cd ..
echo Fractal sample..
cd fractal
mkdir ~/wxwine_dist/wxWINE/samples/fractal
cp Makefile.am ~/wxwine_dist/wxWINE/samples/fractal
cp Makefile.in ~/wxwine_dist/wxWINE/samples/fractal
cp *.cpp ~/wxwine_dist/wxWINE/samples/fractal
cd ..
echo Grid sample..
cd grid
mkdir ~/wxwine_dist/wxWINE/samples/grid
cp Makefile.am ~/wxwine_dist/wxWINE/samples/grid
cp Makefile.in ~/wxwine_dist/wxWINE/samples/grid
cp *.cpp ~/wxwine_dist/wxWINE/samples/grid
cd ..
echo Help sample..
cd help
mkdir ~/wxwine_dist/wxWINE/samples/help
cp Makefile.am ~/wxwine_dist/wxWINE/samples/help
cp Makefile.in ~/wxwine_dist/wxWINE/samples/help
cp *.cpp ~/wxwine_dist/wxWINE/samples/help
cp *.xpm ~/wxwine_dist/wxWINE/samples/help
cd doc
mkdir ~/wxwine_dist/wxWINE/samples/help/doc
cp * ~/wxwine_dist/wxWINE/samples/help/doc
cd ../..
echo Image sample..
cd image
mkdir ~/wxwine_dist/wxWINE/samples/image
cp Makefile.am ~/wxwine_dist/wxWINE/samples/image
cp Makefile.in ~/wxwine_dist/wxWINE/samples/image
cp *.cpp ~/wxwine_dist/wxWINE/samples/image
cp horse.png ~/wxwine_dist/wxWINE/samples/image
cp horse.gif ~/wxwine_dist/wxWINE/samples/image
cp horse.jpg ~/wxwine_dist/wxWINE/samples/image
cd ..
echo Internat sample..
cd internat
mkdir ~/wxwine_dist/wxWINE/samples/internat
cp Makefile.am ~/wxwine_dist/wxWINE/samples/internat
cp Makefile.in ~/wxwine_dist/wxWINE/samples/internat
cp *.cpp ~/wxwine_dist/wxWINE/samples/internat
cp *.xpm ~/wxwine_dist/wxWINE/samples/internat
cp readme.txt ~/wxwine_dist/wxWINE/samples/internat
cp wxstd.po ~/wxwine_dist/wxWINE/samples/internat
cd fr
mkdir ~/wxwine_dist/wxWINE/samples/internat/fr
cp *.?o ~/wxwine_dist/wxWINE/samples/internat/fr
cd ../..
echo Layout sample..
cd layout
mkdir ~/wxwine_dist/wxWINE/samples/layout
cp Makefile.am ~/wxwine_dist/wxWINE/samples/layout
cp Makefile.in ~/wxwine_dist/wxWINE/samples/layout
cp *.cpp ~/wxwine_dist/wxWINE/samples/layout
cp *.h ~/wxwine_dist/wxWINE/samples/layout
cd ..
echo Listctrl sample..
cd listctrl
mkdir ~/wxwine_dist/wxWINE/samples/listctrl
cp Makefile.am ~/wxwine_dist/wxWINE/samples/listctrl
cp Makefile.in ~/wxwine_dist/wxWINE/samples/listctrl
cp *.cpp ~/wxwine_dist/wxWINE/samples/listctrl
cp *.h ~/wxwine_dist/wxWINE/samples/listctrl
cp *.xpm ~/wxwine_dist/wxWINE/samples/listctrl
cd bitmaps
mkdir ~/wxwine_dist/wxWINE/samples/listctrl/bitmaps
cp *.xpm ~/wxwine_dist/wxWINE/samples/listctrl/bitmaps
cd ../..
echo MDI sample..
cd mdi
mkdir ~/wxwine_dist/wxWINE/samples/mdi
cp Makefile.am ~/wxwine_dist/wxWINE/samples/mdi
cp Makefile.in ~/wxwine_dist/wxWINE/samples/mdi
cp *.cpp ~/wxwine_dist/wxWINE/samples/mdi
cp *.h ~/wxwine_dist/wxWINE/samples/mdi
cp *.xpm ~/wxwine_dist/wxWINE/samples/mdi
cd bitmaps
mkdir ~/wxwine_dist/wxWINE/samples/mdi/bitmaps
cp *.xpm ~/wxwine_dist/wxWINE/samples/mdi/bitmaps
cd ../..
echo Memcheck sample..
cd memcheck
mkdir ~/wxwine_dist/wxWINE/samples/memcheck
cp Makefile.am ~/wxwine_dist/wxWINE/samples/memcheck
cp Makefile.in ~/wxwine_dist/wxWINE/samples/memcheck
cp *.cpp ~/wxwine_dist/wxWINE/samples/memcheck
cp *.xpm ~/wxwine_dist/wxWINE/samples/memcheck
cd ..
echo Minifram sample..
cd minifram
mkdir ~/wxwine_dist/wxWINE/samples/minifram
cp Makefile.am ~/wxwine_dist/wxWINE/samples/minifram
cp Makefile.in ~/wxwine_dist/wxWINE/samples/minifram
cp *.cpp ~/wxwine_dist/wxWINE/samples/minifram
cp *.h ~/wxwine_dist/wxWINE/samples/minifram
cp *.xpm ~/wxwine_dist/wxWINE/samples/minifram
cd bitmaps
mkdir ~/wxwine_dist/wxWINE/samples/minifram/bitmaps
cp *.xpm ~/wxwine_dist/wxWINE/samples/minifram/bitmaps
cd ../..
echo Notebook sample..
cd notebook
mkdir ~/wxwine_dist/wxWINE/samples/notebook
cp Makefile.am ~/wxwine_dist/wxWINE/samples/notebook
cp Makefile.in ~/wxwine_dist/wxWINE/samples/notebook
cp *.cpp ~/wxwine_dist/wxWINE/samples/notebook
cp *.h ~/wxwine_dist/wxWINE/samples/notebook
cd ..
echo PNG sample..
cd png
mkdir ~/wxwine_dist/wxWINE/samples/png
cp Makefile.am ~/wxwine_dist/wxWINE/samples/png
cp Makefile.in ~/wxwine_dist/wxWINE/samples/png
cp *.cpp ~/wxwine_dist/wxWINE/samples/png
cp *.h ~/wxwine_dist/wxWINE/samples/png
cp *.png ~/wxwine_dist/wxWINE/samples/png
cd ..
echo Printing sample..
cd printing
mkdir ~/wxwine_dist/wxWINE/samples/printing
cp Makefile.am ~/wxwine_dist/wxWINE/samples/printing
cp Makefile.in ~/wxwine_dist/wxWINE/samples/printing
cp *.cpp ~/wxwine_dist/wxWINE/samples/printing
cp *.h ~/wxwine_dist/wxWINE/samples/printing
cp *.xpm ~/wxwine_dist/wxWINE/samples/printing
cd ..
echo Proplist sample..
cd proplist
mkdir ~/wxwine_dist/wxWINE/samples/proplist
cp Makefile.am ~/wxwine_dist/wxWINE/samples/proplist
cp Makefile.in ~/wxwine_dist/wxWINE/samples/proplist
cp *.cpp ~/wxwine_dist/wxWINE/samples/proplist
cp *.h ~/wxwine_dist/wxWINE/samples/proplist
cd ..
echo Resource sample..
cd resource
mkdir ~/wxwine_dist/wxWINE/samples/resource
cp Makefile.am ~/wxwine_dist/wxWINE/samples/resource
cp Makefile.in ~/wxwine_dist/wxWINE/samples/resource
cp *.cpp ~/wxwine_dist/wxWINE/samples/resource
cp *.h ~/wxwine_dist/wxWINE/samples/resource
cp *.wxr ~/wxwine_dist/wxWINE/samples/resource
cd ..
echo Sashtest sample..
cd sashtest
mkdir ~/wxwine_dist/wxWINE/samples/sashtest
cp Makefile.am ~/wxwine_dist/wxWINE/samples/sashtest
cp Makefile.in ~/wxwine_dist/wxWINE/samples/sashtest
cp *.cpp ~/wxwine_dist/wxWINE/samples/sashtest
cp *.h ~/wxwine_dist/wxWINE/samples/sashtest
cd ..
echo Scroll sample..
cd sashtest
mkdir ~/wxwine_dist/wxWINE/samples/scroll
cp Makefile.am ~/wxwine_dist/wxWINE/samples/scroll
cp Makefile.in ~/wxwine_dist/wxWINE/samples/scroll
cp *.cpp ~/wxwine_dist/wxWINE/samples/scroll
cp *.h ~/wxwine_dist/wxWINE/samples/scroll
cd ..
echo Splitter sample..
cd splitter
mkdir ~/wxwine_dist/wxWINE/samples/splitter
cp Makefile.am ~/wxwine_dist/wxWINE/samples/splitter
cp Makefile.in ~/wxwine_dist/wxWINE/samples/splitter
cp *.cpp ~/wxwine_dist/wxWINE/samples/splitter
cd ..
echo Tab sample..
cd tab
mkdir ~/wxwine_dist/wxWINE/samples/tab
cp Makefile.am ~/wxwine_dist/wxWINE/samples/tab
cp Makefile.in ~/wxwine_dist/wxWINE/samples/tab
cp *.cpp ~/wxwine_dist/wxWINE/samples/tab
cp *.h ~/wxwine_dist/wxWINE/samples/tab
cd ..
echo Text sample..
cd text
mkdir ~/wxwine_dist/wxWINE/samples/text
cp Makefile.am ~/wxwine_dist/wxWINE/samples/text
cp Makefile.in ~/wxwine_dist/wxWINE/samples/text
cp *.cpp ~/wxwine_dist/wxWINE/samples/text
cd ..
echo Thread sample..
cd thread
mkdir ~/wxwine_dist/wxWINE/samples/thread
cp Makefile.am ~/wxwine_dist/wxWINE/samples/thread
cp Makefile.in ~/wxwine_dist/wxWINE/samples/thread
cp *.cpp ~/wxwine_dist/wxWINE/samples/thread
cd ..
echo Toolbar sample..
cd toolbar
mkdir ~/wxwine_dist/wxWINE/samples/toolbar
cp Makefile.am ~/wxwine_dist/wxWINE/samples/toolbar
cp Makefile.in ~/wxwine_dist/wxWINE/samples/toolbar
cp *.cpp ~/wxwine_dist/wxWINE/samples/toolbar
cp *.h ~/wxwine_dist/wxWINE/samples/toolbar
cp *.xpm ~/wxwine_dist/wxWINE/samples/toolbar
cd bitmaps
mkdir ~/wxwine_dist/wxWINE/samples/toolbar/bitmaps
cp *.xpm ~/wxwine_dist/wxWINE/samples/toolbar/bitmaps
cd ../..
echo TreeCtrl sample..
cd treectrl
mkdir ~/wxwine_dist/wxWINE/samples/treectrl
cp Makefile.am ~/wxwine_dist/wxWINE/samples/treectrl
cp Makefile.in ~/wxwine_dist/wxWINE/samples/treectrl
cp *.cpp ~/wxwine_dist/wxWINE/samples/treectrl
cp *.h ~/wxwine_dist/wxWINE/samples/treectrl
cp *.xpm ~/wxwine_dist/wxWINE/samples/treectrl
cd ..
echo typetest sample..
cd typetest
mkdir ~/wxwine_dist/wxWINE/samples/typetest
cp Makefile.am ~/wxwine_dist/wxWINE/samples/typetest
cp Makefile.in ~/wxwine_dist/wxWINE/samples/typetest
cp *.cpp ~/wxwine_dist/wxWINE/samples/typetest
cp *.h ~/wxwine_dist/wxWINE/samples/typetest
cp *.xpm ~/wxwine_dist/wxWINE/samples/typetest
cd ..
echo Validate sample..
cd validate
mkdir ~/wxwine_dist/wxWINE/samples/validate
cp Makefile.am ~/wxwine_dist/wxWINE/samples/validate
cp Makefile.in ~/wxwine_dist/wxWINE/samples/validate
cp *.cpp ~/wxwine_dist/wxWINE/samples/validate
cp *.h ~/wxwine_dist/wxWINE/samples/validate
cp *.xpm ~/wxwine_dist/wxWINE/samples/validate
cd ..
echo wxPoem sample..
cd wxpoem
mkdir ~/wxwine_dist/wxWINE/samples/wxpoem
cp Makefile.am ~/wxwine_dist/wxWINE/samples/wxpoem
cp Makefile.in ~/wxwine_dist/wxWINE/samples/wxpoem
cp *.cpp ~/wxwine_dist/wxWINE/samples/wxpoem
cp *.h ~/wxwine_dist/wxWINE/samples/wxpoem
cp *.xpm ~/wxwine_dist/wxWINE/samples/wxpoem
cp wxpoem.dat ~/wxwine_dist/wxWINE/samples/wxpoem
cp wxpoem.txt ~/wxwine_dist/wxWINE/samples/wxpoem
cp wxpoem.idx ~/wxwine_dist/wxWINE/samples/wxpoem
cd ..
echo wxSocket sample..
cd wxsocket
mkdir ~/wxwine_dist/wxWINE/samples/wxsocket
cp Makefile.am ~/wxwine_dist/wxWINE/samples/wxsocket
cp Makefile.in ~/wxwine_dist/wxWINE/samples/wxsocket
cp *.cpp ~/wxwine_dist/wxWINE/samples/wxsocket
cp *.xpm ~/wxwine_dist/wxWINE/samples/wxsocket
cd ../..
cd ~/wxwine_dist
tar ch wxWINE | gzip -f9 > wxWINE-2.1.0-b7.tgz

View File

@@ -1,54 +0,0 @@
wxWindows Buglist
-----------------
wxGTK:
------
- It is impossible to reposition a window before showing it
on screen. Suspected GTK bug.
- DnD does only moderately work.
wxMSW:
------
- TODO
wxMotif:
--------
- If a popup wxMenu is destroyed after its parent window has been
destroyed, we get the message "Object XXX does not have windowed
ancestor".
Workaround: delete the menu before deleting the window on which it
was popped up.
Possible fix: call menu->DestroyMenu() before deleting the window,
if the window knows about the menu that was last popped up (hard
to know this with confidence).
- In wxGrid, cell highlight is not drawn/erased properly.
- Setting the size of a hidden window may show that window.
- wxRadioBox sometimes doesn't show (e.g. in controls sample).
- Can't set the colours for the buttons in the file selector, for
some reason.
- On SGI IRIX 6.4, XtDestroyWidget in ~wxWindow causes a crash in
some cicumstances. This is being looked into. Meanwhile, a
possible workaround is to remove the final XtDestroyWidget line in ~wxWindow
(window.cpp). This will mean that child windows will only get
destroyed when frames and dialogs are destroyed, so dynamic subwindow
deletion may not work properly.
- There are reports that scrolling can cause crashes under Lesstif.
This is probably a Lesstif bug.
General:
--------
- Dialog Editor could be more user-friendly. Controls are hard to
size and position accurately. No way of changing tab order
except by editing .wxr file.

View File

@@ -1,746 +0,0 @@
wxWindows 2 Change Log
----------------------
2.1.0, b?, June 2nd 1999
------------------------
wxGTK:
wxMSW:
wxMotif:
General:
- Fixed day_of_week bug (Peter Stadel).
- Added Inside(), SetLeft/Right/Top/Bottom, +, += to wxRect.
2.1.0, b4, May 9th 1999
-----------------------
wxGTK:
- JPEG support added.
- Many fixes and changes not thought worth mentioning in this file :-)
wxMSW:
- wxNotebook changes: can add image only; wxNB_FIXEDWIDTH added;
SetTabSize added.
- JPEG support added.
- Fixes for Cygwin compilation.
- Added wxGA_SMOOTH and wxFRAME_FLOAT_ON_PARENT styles.
- Many fixes people didn't tell this file about.
wxMotif:
General:
- Some changes for Unicode support, including wxchar.h/cpp.
2.0.1 (release), March 1st 1999
-------------------------------
wxGTK:
- wxGLCanvas fixes.
- Slider/spinbutton fixes.
wxMSW:
- Fixed problems with <return> in dialogs/panels.
- Fixed window cursor setting.
- Fixed toolbar sizing and edge-clipping problems.
- Some makefile fixes.
wxMotif:
- None.
General:
- Added wxUSE_SOCKETS.
- More topic overviews.
- Put wxPrintPaperType, wxPrintPaperDatabase into
prntbase.h/cpp for use in non-PostScript situations
(e.g. Win16 wxPageSetupDialog).
Beta 5, February 18th 1999
--------------------------
wxGTK:
- wxExecute improved.
wxMSW:
- Fixed wxWindow::IsShown (::IsWindowVisible doesn't behave as
expected).
- Changed VC++ makefiles (.vc) so that it's possible to have
debug/release/DLL versions of the library available simultaneously,
with names wx.lib, wx_d.lib, wx200.lib(dll), wx200_d.lib(dll).
- Added BC++ 5 IDE files and instructions.
- Fixed wxChoice, wxComboBox constructor bugs (m_noStrings initialisation).
- Fixed focus-related crash.
wxMotif:
- Cured asynchronous wxExecute crash.
- Added repaint event handlers to wxFrame, wxMDIChildFrame.
General:
- wxLocale documented.
- Added include filenames to class reference.
- wxHelpController API changed: SetBrowser becomes SetViewer,
DisplaySection works for WinHelp, help sample compiles under Windows
(though doesn't display help yet).
Beta 4, February 12th 1999
--------------------------
wxGTK:
- Miscellaneous fixes.
wxMSW:
- Makefiles for more compilers and samples; Cygwin makefiles
rationalised.
- Added VC++ project file for compiling wxWindows as DLL.
wxMotif:
- Added OnEraseBackground invocation.
- Added wxRETAINED implementation for wxScrolledWindow.
- Cured scrolling display problem by adding XmUpdateDisplay.
- Tried to make lex-ing in the makefile more generic (command line
syntax should apply to both lex and flex).
- Changed file selector colours for consistency (except for buttons:
crashes for some reason).
- Fixed wxMotif version of wxImage::ConvertToBitmap (used new instead
of malloc, which causes memory problems).
General:
- Further doc improvements.
- wxGenericValidator added.
- Added wxImageModule to image.cpp, so adds/cleans up standard handlers
automatically.
Beta 3, January 31st 1999
-------------------------
wxGTK:
- wxClipboard/DnD API changes (still in progress).
- wxToolTip class added.
- Miscellaneous fixes.
wxMSW:
- wxRegConfig DeleteAll bug fixed.
- Makefiles for more compilers.
- TWIN32 support added.
- Renamed VC++ makefiles from .nt to .vc, and
factored out program/library settings.
- Fixed wxIniConfig bug.
wxMotif:
- A few more colour fixes.
- wxGLCanvas and OpenGL samples working.
- Some compiler warnings fixed.
- wxChoice crash fix.
- Dialog Editor starting to work on Motif.
General:
- wxBusyCursor class added.
- Added samples/dde.
- More doc improvements, incl. expanding docs/html/index.htm.
Beta 2, January 1999
--------------------
wxGTK:
wxMSW:
- 16-bit BC++ compilation/linking works albeit without the resource system.
wxMotif:
- Cured wxScreenDC origin problem so e.g. sash window sash is drawn at
the right place.
- Cured some widget table clashes.
- Added thread support (Robert).
- wxPoem sample now works.
General:
- Rearranged documentation a bit.
- Sash window uses area of first frame/dialog to paint over when drawing
the dragged sash, not just the sash window itself (it clipped to the right
or below).
- Made resource sample use the correct Cancel button id.
- Moved wxProp to main library (generic directory), created proplist
sample.
- Added bombs and fractal samples.
Beta 1, December 24th 1998
--------------------------
wxGTK:
- Various
wxMSW, wxMotif: not in sync with this release.
Alpha 18, December 29th 1998
----------------------------
wxMSW:
- Win16 support working again (VC++ 1.5)
- Win16 now uses generic wxNotebook, wxListCtrl,
wxTreeCtrl -- more or less working now, although
a little work on wxNotebook is still needed.
Under 16-bit Windows, get assertion when you click
on a tab.
- Wrote 16-bit BC++ makefiles: samples don't yet link.
- Added CodeWarrior support to distribution courtesy
of Stefan Csomor.
wxMotif:
- Cured scrolling problem: scrollbars now show/hide themselves
without (permanently) resizing the window.
- Removed some commented-out lines in wxScrolledWindow::AdjustScrollbars
that disabled scrollbar paging.
- Set background colour of drawing area in wxWindow, so e.g. wxListCtrl
colours correctly.
- Removed major bug whereby dialogs were unmanaged automatically
when any button was pressed.
- Fixed colours of wxWindow scrollbars, made list and text controls
have a white background.
- Fixed dialog colour setting.
- Added settable fonts and colours for wxMenu/wxMenuBar. Now
they have sensible colours by default.
- Fixed a bug in wxStaticBox.
- Cured wxTreeCtrl bug: now works pretty well!
- Debugged DrawEllipticArc (a ! in the wrong place).
- Added SetClippingRegion( const wxRegion& region ).
- Added wxPoint, wxSize, wxRect versions of SetSize etc.
Alpha 17, November 22nd 1998
----------------------------
wxMSW:
- More documentation updates, especially for
wxLayoutWindow classes and debugging facilities.
- Changed wxDebugContext to use wxDebugLog instead
of wxTrace.
- Now supports VC++ 6.0, and hopefully BC++ 5.0.
However, DLL support may be broken for BC++ since
VC++ 6 required changing of WXDLLEXPORT keyword
position.
- Numerous miscellaneous changes.
wxMotif:
- Reimplemented MDI using wxNotebook instead of the MDI widgets, which
were too buggy (probably not design for dynamic addition/removal of
child frames).
- Some improvements to the wxNotebook implementation.
- wxToolBar now uses a bulletin board instead of a form, in an attempt
to make it possible to add ordinary wxControls to a toolbar.
- Cured problem with not being able to use global memory operators,
by defining two more global operators, so that the delete will match
the debugging implementation.
- Added wxUSE_DEBUG_NEW_ALWAYS so we can distinguish between using
global memory operators (usually OK) and #defining new to be
WXDEBUG_NEW (sometimes it might not be OK).
- Added time.cpp to makefile; set wxUSE_DATETIME to 1.
- Added a parent-existance check to popup menu code to make it not crash.
- Added some optimization in wxWindow::SetSize to produce less flicker.
It remains to be seen whether this produces any resize bugs.
It's a long time since I updated this file. Previously done:
- wxFrame, wxDialog done.
- wxScrolledWindow done (but backing pixmap not used at present).
- wxBitmap done though could be tidied it up at some point.
- Most basic controls are there, if not rigorously tested.
- Some MDI support (menus appear on child frames at present).
- wxNotebook almost done.
- wxToolBar done (horizontal only, which would be easy to extend
to vertical toolbars).
More recently:
- Colour and font changing done (question mark over what happens
to scrollbars).
- Accelerators done (for menu items and buttons). Also event loop
tidied up in wxApp so that events are filtered through ProcessXEvent.
- wxWindow::GetUpdateRegion should now work.
Alpha 16, September 8th 1998
----------------------------
wxMSW:
- Added wxSashWindow, wxSashLayoutWindow classes, and sashtest
sample.
- Guilhem's socket classes added, plus wxsocket sample.
- A few more makefiles added.
- GnuWin32/BC++ compatibility mods.
- Further doc updates.
- wxProp updates for correct working with wxGTK.
wxMotif:
- First start at Motif port.
- Made makefiles for wxMotif source directory and minimal sample.
- First go at wxApp, wxWindow, wxDialog, wxPen, wxBrush, wxFont,
wxColour, wxButton, wxCheckBox, wxTextCtrl, wxStaticText,
wxMenu, wxMenuItem, wxMenuBar
Alpha 15, August 31st 1998
--------------------------
wxMSW:
- wxBitmap debugged.
- wxDC::GetDepth added.
- Contribution added whereby wxBitmap will be
converted to DC depth if they don't match.
- wxConfig API improved, documentation updated.
- Printing classes name conventions cleaned up.
- wxUpdateUIEvent now derives from wxCommandEvent
so event can travel up the window hierachy.
Alpha 14, July 31st 1998
------------------------
wxMSW:
- Toolbar API has been simplified, and now
wxFrame::GetClientArea returns the available client
area when toolbar, status bar etc. have been accounted for.
wxFrame::CreateToolBar added in line with CreateStatusBar.
- Documentation updates, incl. for wxToolBar.
- New wxAcceleratorTable class plus wxFrame::SetAcceleratorTable.
- Various additions from other folk, e.g. streams, wxConfig
changes, wxNotebook.
- Added wxDocMDIParentFrame, wxDocMDIChildFrame for doc/view.
Alpha 13, July 8th 1998
-----------------------
wxMSW:
- Implemented wxPoint as identical to POINT on Windows, and
altered wxDC wxPoint functions to use wxPoint directly in
Windows functions, for efficiency.
- Cured wxASSERT bug in wxStatusBar95.
- #ifdefed out some bits in oleutils.cpp for compilers that
don't support it.
- Added some operators to wxPoint, wxSize.
- Added inline wxDC functions using wxPoint, wxSize, wxRect.
Alpha 12, July 7th 1998
-----------------------
wxMSW:
- Added wxApp::GetComCtl32Version, and wxTB_FLAT style, so can
have flat toolbars on Win98 or Win95 with IE >= 3 installed.
Alpha 11, July 3rd 1998
-----------------------
wxMSW:
- Added thread.h, thread.cpp.
- Changed Enabled, Checked to IsEnabled, IsChecked in wxMenu,
wxMenuBar.
- Changed wxMenuItem::SetBackColor to SetBackgroundColour,
SetTextColor to SetTextColour, and added or made public several
wxMenuItem accessors.
- Added two overloads to wxRegion::Contains. Added
wxRegion::IsEmpty for a more consistent naming convention.
- Added Vadim's wxDataObject and wxDropSource.
- ENTER/LEAVE events now work.
- Cured wxMemoryDC bug where the DC wasn't being deleted.
- Cured wxGauge SetSize major bugginess.
- Cured problem where if a GDI object was created on the stack,
then went out of scope, then another object was selected into
the DC, GDI objects would leak. This is because the assignment
to e.g. wxDC::m_pen would delete the GDI object without it first
being selected out of the DC. Cured by selecting the old DC object
first, then doing the assignment.
- Split up wxGaugeMSW, wxGauge95, wxSliderMSW, wxSlider95
- Various other bug fixes and additions.
Generic:
- Major work on Dialog Editor (still plenty to go).
- Expanded documentation a bit more.
Alpha 10, May 7th 1998
----------------------
wxMSW:
- Added desiredWidth, desiredHeight parameters to wxBitmapHandler
and wxIcon functions so that you can specify what size of
icon should be loaded. Probably will remain a Windows-specific thing.
- wxStatusBar95 now works for MDI frames.
- Toolbars in MDI frames now behave normally. They still
require application-supplied positioning code though.
- Changed installation instructions, makefiles and batch files
for compiling with Gnu-Win32/Mingw32/EGCS. Also timercmn.cpp
change to support Mingw32/EGCS. Bison now used by default.
Alpha 9, April 27th 1998
------------------------
wxMSW:
- Cured bug in wxStatusBar95 that caused a crash if multiple
fields were used.
- Added Gnu-Win32 b19/Mingw32 support by changing resource
compilation and pragmas.
- Cured wxMenu bug introduced in alpha 8 - didn't respond to
commands because VZ changed the id setting in wxMenu::MSWCommand.
Generic:
- Corrected some bugs, such as the wxModule compilation problem.
- Added Gnu-Win32 b19/Mingw32 support by changing resource
compilation and pragmas.
- Changed SIZEOF to WXSIZEOF.
Alpha 8, April 17th 1998
------------------------
wxMSW:
- Added IsNull to wxGDIObject to check if the ref data is present or not.
- Added PNG handler and sample - doesn't work for 16-bit PNGs for
some reason :-(
- Added wxJoystick class and event handling, and simple demo.
- Added simple wxWave class. Needs Stop() function.
- Added wxModule (module.h/module.cpp) to allow definition
of modules to be initialized and cleaned up on wxWindows
startup/exit.
- Start of Mingw32 compatibility (see minimal and dialogs samples
makefile.m95 files, and install.txt).
- Note: Windows printing has stopped working... will investigate.
VADIM'S CHANGES:
- Updated wxString: bug fixes, added wxArrayString, some
compatibility functions.
- Updated log.h/cpp, added wxApp::CreateLogTarget.
- file.h: new wxTempFile class.
- defs.h: added wxSB_SIZE_GRIP for wxStatusBar95
- statbr95: wxStatusBar95 control.
- registry.h/cpp: wxRegKey class for Win95 registry.
- listbox.cpp: corrected some bugs with owner-drawn listboxes.
- wxConfig and wxFileConfig classes.
Generic:
- Added src/other/png, src/other/zlib directories.
- Added samples/png.
- IMPORTANT: Changed 'no id' number from 0 to -1, in wxEVT_ macros.
Porters, please check particularly your wxTreeCtrl and wxListCtrl
header files.
- Added modules.h/cpp, config.cpp, fileconf.cpp, textfile.cpp/h.
Alpha 7, March 30th 1998
------------------------
wxMSW:
- Added tab classes, tab sample.
- Now can return FALSE from OnInit and windows will be
cleaned up properly before exit.
- Improved border handling so panels don't get borders
automatically.
- Debugged MDI activation from Window menu.
- Changes to memory debug handling, including checking for
memory leaks on application exit - but see issues.txt for
unresolved issues.
- Added wxTaskBarIcon (taskbar.cpp/h, plus samples/taskbar)
to allow maintenance of an icon in the Windows 95 taskbar
tray area.
- Got MFC sample working (MFC and wxWindows in the same
application), partly by tweaking ntwxwin.mak settings.
- Got DLL compilation working again (VC++).
- Changed wxProp/Dialog Editor filenames.
Generic:
- Added tab classes, tab sample.
- Revised memory.cpp, memory.h slightly; memory.h now #defines
new to WXDEBUG_NEW in DEBUG mode. Windows implementation app.cpp
now checks for leaks on exit. Added memcheck sample.
See src/msw/issues.txt for more details.
- resource.h, resource.cpp changed to make wxDefaultResourceTable
a pointer. Now initialize resource system with
wxInitializeResourceSystem and wxCleanUpResourceSystem, to
allow better control of memory.
- wxString now derives from wxObject, to enable memory leak
checking.
- Added some #include fixes in various files, plus changed
float to long in wxToolBar files.
Alpha 6, March 10th 1998
------------------------
wxMSW:
- Found stack error bug - stopped unwanted OnIdle recursion.
- Removed bug in wxTreeCtrl::InsertItem I added in alpha 5.
- Changed exit behaviour in wxApp/wxFrame/wxDialog. Now will
check if the number of top-level windows is zero before
exiting. Also, wxApp::GetTopWindow will return either
m_topWindow or the first member of wxTopLevelWindows, so you
don't have to call wxApp::SetTopWindow.
- Added dynarray.h/dynarray.cpp (from Vadim).
- Added first cut at OLE drag and drop (from Vadim). dnd sample
added. Drop target only at this stage. See src/msw/ole/*.cpp,
wx/include/msw/ole/*.h. WIN32 only because of UUID usage.
Doesn't work with GnuWin32 - no appropriate headers e.g. for
IUnknown.
Doesn't work with BC++ either - crashes on program startup.
- Added Vadim's owner-draw modifications - will probably remain
Windows-only. This enhances wxMenu, wxListBox. See ownerdrw sample.
- Added wxLB_OWNERDRAW for owner-draw listboxes.
- Vadim's wxCheckListBox derives from wxListBox. See checklst sample.
Doesn't entirely work for WIN16.
- Vadim has added wxMenuItem as a separate file menuitem.cpp. It
can also be used as an argument to wxMenu::Append, not just for
internal implementation.
- Some #ifdefs done for MINGW32 compilation (just alter OPTIONS
in makeg95.env, together with mingw32.bat). However, resource
binding is not working yet so most apps with dialogs crash.
Generic:
- Added Vadim's dynarray.h, dynarray.cpp.
- Added Vadim's menuitem.cpp.
- Added Windows-specific wxCheckListBox,
owner-draw wxListBox, and drag-and-drop
(see docs/msw/changes.txt).
Alpha 5, 14th February 1998
--------------------------
wxMSW:
- GENERIC AND MSW-SPECIFIC CODE NOW TREATED AS TWO SEPARATE
DISTRIBUTIONS. This change log will therefore now refer to
the Windows-specific code only. See docs/changes.txt for generic
changes.
- Removed Windows-specific reference counting system (GDI
resources were cleaned up in idle time) - minimal
advantages now we have a wxWin reference counting system.
- Added missing WXDLLEXPORT keywords so DLL compilation works
again.
- Removed most warnings for GnuWin32 compilation.
- Added wxRegion/wxRegionIterator, but haven't yet used it in
e.g. wxDC.
Generic:
- GENERIC AND MSW-SPECIFIC CODE NOW TREATED AS TWO SEPARATE
DISTRIBUTIONS. This change log will therefore now refer to
the generic code only. See docs/msw/changes.txt for Windows-specific
changes.
- Readmes, change logs and installation files now go in
platform-specific directories under docs, e.g. docs/msw,
docs/gtk.
- Added DECLARE_APP and IMPLEMENT_APP macros so wxApp object gets
created dynamically, not as a global object.
- Put wxColour into wx/msw/colour.h, src/msw/colour.cpp.
- Changed names of some include/wx/generic headers to be
consistent and to conform to gcc pragma conventions. Also
changed choicesg.cpp to choicdgg.cpp.
- Added gcc pragmas.
- Added gtk inclusion in include/wx headers.
- Added consistent file headings to source and headers.
- Removed lang.cpp, lang.h and references to wxSTR_... variables;
added a few references to wxTransString.
- Added operator to wxTransString that converts automatically
to wxString, so we can say e.g. wxMessageBox(wxTransString("Hello"), ...).
- samples/internat now works (minimally).
- Added wxMouseEvent::GetPosition and
wxMouseEvent::GetLogicalPosition, both returning wxPoints.
- Made wxSize and wxRect contain longs not ints.
- Cured some lemory leaks (thanks Vadim).
- Tidied up OnIdle and introduced RequestMore/MoreRequested so
will only keep processing OnIdle if it returns TRUE from
MoreRequested.
Alpha 4, 31st January 1998
--------------------------
All:
- Changed wxDC functions to take longs instead of floats. GetSize now takes
integer pointers, plus a version that returns a wxSize.
- const keyword added to various wxDC functions.
- Under Windows, wxDC no longer has any knowledge of whether
an associated window is scrolled or not. Instead, the device
origin is set by wxScrolledWindow in wxScrolledWindow::PrepareDC.
- wxScrolledWindow applications can optionally override the virtual OnDraw
function instead of using the OnPaint event handler. The wxDC passed to
OnDraw will be translated by PrepareDC to reflect scrolling.
When drawing outside of OnDraw, must call PrepareDC explicitly.
- wxToolBarBase/wxToolBarSimple similarly changed to allow for
scrolling toolbars.
- Integrated wxPostScriptDC patches for 1.xx by Chris Breeze,
to help printing with multiple pages.
- IPC classes given base classes (wxConnectionBase etc.) which
define the API used by different implementations. DDE
implementation updated to use these base classes.
- wxHelpInstance now separated into wxHelpControllerBase (base
for all implementations), wxWinHelpController (uses standard
WinHelp), wxXLPHelPController (talks to wxHelp by DDE or
TCP/IP). There will be others eventually, such as
wxHTMLHelpController for Microsoft (and Netscape?) HTML Help.
- Added Vadim Zeitlin's wxString class plus
internationalization code (gettext simulation, wxLocale, etc.).
New files from Vadim:
include\wx\string.h
include\wx\debug.h
include\wx\file.h
include\wx\log.h
include\wx\intl.h
src\common\string.cpp
src\common\log.cpp
src\common\intl.cpp
src\common\file.cpp
No longer use GNU wxString files.
- Split off file-related functions into include\wx\filefn.h and
src\common\filefn.cpp.
- Borland C++ support (WIN32) for main library and
samples, using makefile.b32 files.
- Preparation done for allowing BC++ to compile wxWin as a DLL,
including changes to defs.h.
- wxIntPoint removed, wxPoint is now int, and wxRealPoint
introduced.
- Added wxShowEvent (generated when window is being shown or
hidden).
- Got minimal, docview, mdi samples working for 16-bit VC++ and
cured 16-bit problem with wxTextCtrl (removed global memory
trick).
- Updated GnuWin32 makefiles, checked minimal, mdi, docview samples.
Alpha 3, September 1997
-----------------------
All:
- wxListCtrl, wxTreeCtrl, wxImageList classes done.
- Instigated new file hierarchy, split files and classes up more logically.
- PrologIO and some other utils now put into core library.
- Revamped print/preview classes, added wxPageSetupDialog.
- Started documentation.
Alpha 2, 30th April 1997
------------------------
All:
- EVT_... macros now have at least one argument, for conformance
with MetroWerks compiler.
- Added ids to .wxr file format.
- Got Dialog Editor compiled and running again but need
to extend functionality to be in line with new controls.
Added dialoged\test app to allow dynamic loading of .wxr files
for testing purposes.
- Rewrote wxBitmap to allow installable file type
handlers.
- Rewrote wxBitmapButton, wxStaticBitmap to not use Fafa.
- Wrote most of wxTreeCtrl and sample (need wxImageList to implement it
fully).
- Added back wxRadioBox.
- Tidied up wx_main.cpp, wxApp class, putting PenWin code in
a separate file.
Alpha 1, 5th April 1997
-----------------------
Generic:
At this point, the following has been achieved:
- A lot, but not all, of the code has been revamped for better
naming conventions, protection of data members, and use of
wxString instead of char *.
- Obsolete functionality deleted (e.g. default wxPanel layout,
old system event system) and code size reduced.
- Class hierarchy changed (see design doc) - base classes such
as wxbWindow now removed.
- No longer includes windows.h in wxWin headers, by using stand-in
Windows types where needed e.g. WXHWND.
- PrologIO revised.
- wxScrolledWindow, wxStatusBar and new MDI classes added.
MDI is now achived using separate classes, not window styles.
- wxSystemSettings added, and made use of to reflect standard
Windows settings.
- SetButtonFont/SetLabelFont replaced by SetFont; font and colour
settings mucho rationalised.
- All windows are now subclassed with the same window proc to make
event handling far more consistent. Old internal wxWnd and derived
classes removed.
- API for controls revised, in particular addition of
wxValidator parameters and removal of labels for some controls.
- 1 validator written: see examples/validate.
- Event table system introduced (see most samples and
wx_event.cpp/ProcessEvent, wx_event.h). wxEvtHandler
made more flexible, with Push/PopEventHandler allowing a chain
of event handlers.
- wxRadioBox removed - will be added back soon.
- Toolbar class hierarchy revised:
wxToolBarBase
wxToolBarSimple (= old wxToolBar)
wxToolBar95 (= old wxButtonBar under Win95
wxToolBarMSW (= old wxButtonBar under WIN16/WIN32)
- Constraint system debugged somewhat (sizers now work properly).
- wxFileDialog, wxDirDialog added; other common dialogs now
have class equivalents. Generic colour and font dialogs
rewritten to not need obsolete panel layout.
- .wxr resource system partially reinstated, though needs
an integer ID for controls. Hopefully the resource system
will be replaced by something better and more efficient
in the future.
- Device contexts no longer stored with window and accessed
with GetDC - use wxClientDC, wxPaintDC, wxWindowDC stack
variables instead.
- wxSlider uses trackbar class under Win95, and wxSL_LABELS flag
determines whether labels are shown. Other Win95-specific flags
introduced, e.g. for showing ticks.
- Styles introduced for dealing with 3D effects per window, for
any window: all Win95 3D effects supported, plus transparent windows.
- Major change to allow 3D effect support without CTL3D, under
Win95.
- Bitmap versions of button and checkbox separated out into new
classes, but unimplemented as yet because I intend to remove
the need for Fafa - it apparently causes GPFs in Win95 OSR 2.
- utils/wxprop classes working (except maybe wxPropertyFormView)
in preparation for use in Dialog Editor.
- GNU-WIN32 compilation verified (a month or so ago).

View File

@@ -1,339 +0,0 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 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.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.) You can apply it to
your programs, 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 software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, 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 redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
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 give any other recipients of the Program a copy of this License
along with the Program.
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 Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
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 Program, 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 Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) 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; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, 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 executable. 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.
If distribution of executable or 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 counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program 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.
5. 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 Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program 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.
7. 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 Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program 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 Program.
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.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program 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.
9. The Free Software Foundation may publish revised and/or new versions
of the 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 Program
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 Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, 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.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "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 PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. 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 PROGRAM 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 PROGRAM (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 PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
Appendix: How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. 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.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) 19yy <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) 19yy name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Library General
Public License instead of this License.

View File

@@ -1,481 +0,0 @@
GNU LIBRARY GENERAL PUBLIC LICENSE
Version 2, June 1991
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.]
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.
GNU LIBRARY GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
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:
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.)
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:
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.
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:
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.
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.
NO WARRANTY
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.
END OF TERMS AND CONDITIONS
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.
<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.
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:
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
That's all there is to it!

View File

@@ -1,464 +0,0 @@
15th June '99: Sixth wxGTK 2.1 snapshot released
The biggest change is the completely rewritten configure/makefile
system using automake. The main argument for switching to automake
is that the resulting makefiles should be more portable so that
people can use the native make utilities instead of GNU make. The
new makefile sytem also handles dependencies correctly, allows for
shared-only compilation, can be invoked from any directory for
concurrent builds wihtin one source tree, uses libtool for greater
shared-library platform support, has a functinonal "make uninstall",
works with GTK, Motif and WINE, conforms better to GNU standards
as far as configure option names are concerned and is easier to
maintain.
Applied patches to compile wxGTK on OS/2.
Configure checks for byte-order and new defines for byte swapping
with respect to the byte-order. Added test for this to typetest sample.
Also made BMP handler bigendian safe so that it should work on
Solaris and such.
Small changes to basic drawing stuff: made wxColour actually compare
RGB values in the == operator, added new constructor to wxMask,
corrected initial background colour for DCs, it is now possible
to use a wxWindowDC etc before there is any window (this doesn't
make any sense, but it is what wxMSW does.)
Added support for the PRIMARY SELECTION to the wxClipboard
class.
Fixed redraw bug when scrolling window-less widgets out
of the visible area (actually a work-around for a GTK bug).
Regrouped some samples, created new one for various versions
of the wxTextCtrl.
Added wxWindow::Reparent() and wxFrame::MakeModal().
Improved handling of column width in wxListCtrl and made
this more compatible with the wxMSW version. Also removed
a bug from the wxImageList returning an off-by-one id for
added images.
Fixed keyboard hotkeys and resizing for wxMDIChildFrame
menu bars.
Added flag to wxSplitterWindow to update its children's
sizes "live" instead of moving a XOR'ed bar around - this
is a resource-draining option. Also corrected cursors
in splitter window.
New way to show "disabled" or greyed toolbar items.
Rewrote parts of the tree ctrl to allow multiple selections
and variable size items (Sylvain). These new function do not
exist in the native Win32 tree control.
Implemented global cursors and wxBusyCursor etc. Also removed
another cursor misbehaviour.
Updated many parts of the documentation to reflect changes
in wxWindows 2.1, wxPython and more exact description of
cross-platform issues as well as platform differences.
Many other fixes, mainly by others...
Further compile fixes for different architectures.
25th May '99: Fifth wxGTK 2.1 snapshot released
This is mostly a bug-fix release. We are having funny
times to make wxGTK work well with different micro
versions of GTK 1.2 - which is very close to impossible.
All versions give warnings, although their number might
vary a lot. I use GTK 1.2.3 and only get wanrnings in
one sample (notebook) and that one is due to a bug in
GTK - some people using GTK 1.2.2 reported hundreds of warnings
getting spitted out for what seems like no reason.
This snapshot contains the beginnings of our merging of
headers, meaning that in the future all ports will
use the same headers and will share a lot more code.
We have taken this moment to reorganize some code and
hope to have eliminated much bad C++ code, as reported
primarily by SGI's compilers (Vadim Zeitlin).
Rewritten char and key event propagation routines
to reflect documentation and do the same on wxGTK
as on wxMSW. If you are interested in ascii chars
and cursor key etc, intercept EVT_CHAR, if you
are interested in which key actually got pressed,
intercept EVT_KEYDOWN (Norbert Irmer).
Control that are given -1 as their ID no longer
get arbitrary positive IDs assigned but arbitrary
negative IDs. This had caused some trouble with ID clashes.
wxWindow and wxScrolledWindow no longer use the
wxScrollEvent, but the newly invented wxScrollWinEvent
so that no mixing up of events sent from wxSliders
or wxScrollbars placed in a wxWindow can occur.
Added wxProgressDialog for use with long background
work such as printing.
Added drawing sample and scrolling sample, both of
which show some misbehaviours...
When drawing with the wxXOR logical mode, wxGTK now uses
GdkXOR (instead of GdkInvert) and when drawing in wxINVERT logical
mode, wxGTK now uses GdkInvert (as before). When you did some
rubberband dragging and you used wxXOR and a black pen, then
you should change wxINVERT.
Applied more patches for SGI and HP-UX compilation.
More updates for wxSockets (Guilhem Lavaux). Seems to be nearly
finished.
You can now use threads within your GUI again. Well,
at least if you know what you are doing and you had a look
at the threads sample.
wxGLCanvas updated so that it can share display lists
over several windows and to not exhibit any flicker.
(Norber Irmer).
wxNotebook revamped so that its process of creation matches
wxMSW's more closely, also avoiding problems with wrong page
number. Added InsertPage() and the possibility to prevent
switching pages by intercepting the PAGE_CHANGING event. Also,
wxNotebooks now get shown even if all pages are empty.
Added Activate() to wxMDIChildFrame (Russel).
Improved wxSplitterWindow behaviour and visual feed-back when
given a minimal size etc (Bruce DeVisser).
Minor updates to wxTreeCtrl, wxListBox, printing, wxClipboard,
wxString, wxThreads and many others.
Also wxMSW got a big face-lift, not to mention the new wxMac release...
11th May '99: Fourth wxGTK 2.1 snapshot released
This is mostly a bug-fix release. This affects wxSocket, wxThread,
and a few GUI classes. Also more work has been done and window
placement and decorations etc. which we hope to have finished now.
Applied patches for FreeBSD and SGI compilation (not yet finshed).
Updated wxPython to beta 9.
Made wxGLCanvas work again - strangely it flickers now...
wxStaticText is currently broken with GTK 1.2.2 (which I don't
yet have and thus could not fix). Also, scrolling subwindows
(although much improved including a sample) doesn't work perfectly
due to a bug in GTK 1.2.1 (probably 1.2.2 as well).
Added wxStaticLine.
Note that the next release might bring about changes to keyboard
handling and scroll event intercepting from wxScrolledWindow.
By and large much of the code has stabilized and won't be much
different in the final wxWindows 2.1 release. Please test as
much as you can.
The next release will have a new build system.
3rd May '99: Third wxGTK 2.1 snapshot released
Updated INSTALL.txt and SYMBOLS.txt.
Support for Unicode is now almost complete. Most samples work in
both Unicode and non-Unicode mode. Thanks to Ove Kaaven and Vadim.
Internal changes required for wxOLE and addition of a very experimental
wxOLE code section using GNOME's Bonobo library (from GNOME's CVS).
New version of wxPython that works with the wxGTK 2.1.
This now includes a very comprensive test/demo suite. Thanks to
Robin Dunn, Harm v.d. Heijden and others. Beware of the hang-man...
More fine tuning of focus handling and GUI widgets.
Complete rewrite of wxSocket classes (still experimental).
Thanks to Guilhem Lavaux.
wxMenuBar supports underlined shortcuts like Windows does,
indicated by a leading & character. wxMenus now have hotkeys
such as in wxXt and wxMSW.
Rewritten MDI subsystem.
Correcetions and additions to the printing framework including
a paper type database (Julian).
Several controls now support more style flags for modifying
look (and feel) of the controls and windows.
New implementation of idle handlers, which now send an idle
event only once after the event queue has been emptied (which
is what happens in the wxMSW port as well), not regularly.
This no longer forces wxGTK applications to sleep (by having
to call usleep()) in idle time - giving more CPU slices to
the application if desired.
wxGLCanvas (the OpenGl for wxWindows) now accepts keyboard input.
The usual number of compile and bug fixes from all involved.
21st April '99: Second wxGTK 2.1 snapshot released
Added much code for Unicode support. Still experimental, but looks very
cool - thanks to Ove Kaaven and Vadim Zeitlin. If you are very brave, then
you can compile wxGTK with "configure --with-unicode".
More updates on the dreaded issue of making frames and dialogs impossible
to resize etc.
Drag and Drop works now under GTK 1.2 - at least basically when dragging
and dropping text. The API is not entirely fixed yet but seems quite
good now. Support for different actions (copy/move/link/..) still missing.
I also removed support for GTK 1.0 Drag and Drop - this is just broken
and unusable in GTK 1.0 and I don't want to fix it.
I now embed the JPEG library and handlers for JPEG and GIF have been
added to the existing PNG and BMP (and XPM for GTK version only). In
the future, the RPMs will not contain these libraries but depend on
the image libraries to be preinstalled whereas the source *.tgz will
ship with everything that is needed for wxGTK so that no downloading
of ten image libs will be required - also avoiding problems with ten
different kinds of libJPEG-6.0.1.7.IV beta 7. We also updated the
PNG code to the newest PNG version.
wxImage now makes use of the fast rendering code as provided by
GTK 1.2 whenever possible. This should mean a speed-up for graphics
heavy apps.
Many fixes all over. Also should compile with GTK 1.2.0 as opposed
to only with GTK 1.2.1 now.
wxPython still doesn't compile, I think.
12th April '99: First wxGTK 2.1 snapshot released
This is the first developers' version of wxWindows 2.1 for GTK. It's main
new feature is that it supports GTK 1.2 (as opposed to GTK 1.0) which
will make development within the GNOME evironment a lot easier.
Apart from the move to GTK 1.2 and the changes (some major) that were
required as part of that work, enhancement or corrections have been
made to many of the non-GUI classes and functions (such as wxClipboard,
wxThread, wxSocket, wxConfig)
and a few GUI classes (accelerators in menus, listbox always with
scrollbar, wxFrame honours Motif Window Manager hints, corrected tab
traversal for broken GTK 1.0 widgets).
There have been slight changes to the priting dialogs and their
setup data (which might break apps using this code in previous
versions). Also, a bug concerning printing white has been fixed
(actually not tested).
Although this is only the first 2.1 snapshot, there is little reason not
to use it as many bugs from version 2.0 have been corrected. There are,
pf course, still a few problem left with GTK 1.2 (some of which relate
to bugs in GTK).
I think I preserved backward compatility with GTK 1.0 and if not it
should be easy to fix - but mostly I don't care.
Drag'N'Drop is currently completely broken. Also, wxPython currently
doesn't compile with this release. The OpenGL canvas still seems to
work.
Major targets for the final release (still a long way): a new configure
system, support JPEG and GIF formats, wxHTML, super-duppah frame layout
stuff, syntax-highlighting editor, possibly Unicode, possibly some GNOME
gooddies, possibly world domination.
5th March '99: wxWindows 2.0 released
This is the final version of wxWindows 2.0 for GTK. The versions for
Windows and Motif (and also this version) are available form Julian Smart's
site. The Mac version is still under development.
19th February '99: wxWindows 2.0 beta 5
This is the fifth beta release and it contains mostly bug fixes and
updates for documentation.
Applied compile fixes for Solaris (different flavours and compilers).
12th February '99: wxWindows 2.0 beta 4
This is the fourth beta release and it contains mostly bug fixes and
updates for documentation.
Tracked a few more cases, where the bahaviour between wxMSW and wxGTK
differed. This was the case for closing a dialog or frame as well as
for clearing a device context or setting its background colour and some
other minor details.
Most standard dialogs have been face-liftet a little.
Implememted default buttons for GTK.
Fixed many bugs. You guessed it.
29th January '99: wxWindows 2.0 beta 3
This is the third beta release and it contains mostly bug fixes.
There is one field where we haven't been able to fix the API yet, and that
it Drag'n'Drop. This is mostly due to the fact that DnD in
GTK 1.0 is hardly usable and much different from GTK 1.2 which means that
we have to design a common API for Windows, GTK 1.0 and GTK 1.2. Although
we are trying to prevent that, it is possible that wxWindows 2.0 (being
based on GTK 1.0) will not have proper DnD support.
The major changes are that tool tips have been added, threads have been completely
rewritten, the ODBC code has been updated and improved, the socket code works
better now.
Classes for managing MIME-types under Windows and Unix have been added.
There is now a wxGLCanvas class for OpenGl/Mesa for the Windows, GTK and
Motif ports. Come see the penguins flying...
Documentation has received a big face lift - it now covers nearly all the
classes, at least.
The usual amount of bug fixes. Countless.
A few member functions of wxString have been renamed.
For those who are using the ever-so-popular wxImage class (which
now available on Motif and Windows as well) in 8-bit mode: wxGTK
now creates a color cube upon start-up in 8-bit mode and thus the
generation of bitmaps from images has been speeded up 20 times.
It is now possible to develop with wxGTK without having the GTK 1.0 header
files installed so that having the GTK 1.2 header files installed no longer
is any problem. We also provide RPMs for RedHat glibc 2 based systems, compiled
with egcs 1.1.1 on SuSE 6.0. Note that the RPM will not work in
SuSE 6.0 as SuSE decided to ship 6.0 with a broken GTK+ package.
6th January '99: wxWindows 2.0 beta 2
This is the second beta release and contains it mostly build and
bug fixes. Threads work well now on (up-to-date) glibc 2 systems,
commercial Unices and Windows.
20th December '98: wxWindows 2.0 beta 1
This is the first beta release and we have used the time before
this release to tidy up some parts of the API. All releases from
now on will be source code compatible but we reserve binary compatibility
for the final release. Because of this, the actual library name of
the beta version will not be 2.0 but 1.99, so that we prevent
conflicts with the final library later on. After the final release
we'll only fix bugs so that there will be no reason to link any
program statically with wxGTK.
We changed the name of the shared library to include the version of
the GTK used so that no conflicts emerge with simultaneous
versions of wxWindows for GTK 1.0 and for GTK 1.2 and so on.
As you can see, we have not moved to GTK 1.1.X as the different
development versions are too different and buggy to be useful. We'll
wait for a stable GTK 1.2 release (hardly 1.2.0) and start porting
then.
wxGTK now compiles without problems on anything between gcc 2.7.2 on
Linux-x86 and egcs 1.1 on Linux-Alpha and egcs 1.0 on Sparc. This isn't
as easy as it sounds...
Available form this site are the Python bindings of wxWindows.
Thanks to Robin Dunn for this tremendous contribution.
Tkinter is dead, Java is dead, wxPython rules! That's all there is to say.
Although only a few new classes have been added, many have been polished
up substantially, the most visible are wxListCtrl, wxTreeCtrl and
all classes related to printing. Also the DialogEd now functions
much better than before. Drag'n'Drop is fucntional but probably won't
be perfect until we use GTK 1.2 and its much improved DnD features.
wxClipboard has arrived and works for text. Other formats have not been
tested carefully yet.
wxMiniFrame has been added which might be useful for docking toolbars
etc. Someone has already done that for the MSW port and we hope to
include his very nice work later.
wxDirDialog has been added (thanks to Harm von der Heijden).
The entite "tab traveral" system for moving from item to item in
a dialog has been rewritten. It now completely overrides the
not-so-well-done GTK native tab system.
Quite much has been done to improve the wxImage class, which is now
available in the Windows port as well. Very useful for anything related
to image processing. wxGTK also uses this class internally e.g. to scale
bitmaps when the scale factor (e.g. zooming) of a drawing context
has changed.
Some of the small and handy classes (wxDate, wxTime, wxVariant) have
received a face-lift. wxList has been rewritten to make it possible
to write type-safe lists. The collection of utility functions (wxFileFind etc)
has been revamped and cleaned-up (thanks to Vadim Zeitlin, who has also
greatly enhanced many basic classes, ranging wxString to the debug and
log system).
We removed some constructors of GDI classes (such as wxPen, wxColour)
which took a pointer as a parameter. This lead to many errors among users
resulting in unexpected behaviour so it was decided to remove these
constructors.
As the number of users and the number of test programs and samples
is steadialy rising the core classes of wxWindows for MSW and GTK 1.0
can be considered to be very stable if not outright bug-free. I haven't
seen a crash for weeks now and wxWindows' internal debug features also
have improved every week, making stepping-through with a debugger almost
completely unnecessary as the library reports possible errors itself
(when in debug mode).

View File

@@ -1,411 +0,0 @@
!!! When sending bug reports tell us what version of wxWindows you are
using (including the beta) and what compiler on what system. One
example: wxGTK 2.1 beta 6, egcs 1.1.1, Redhat 5.0 !!!
* The most simple case
-----------------------
If you compile wxWindows on Unix for the first time and don't like to read
install instructions just do (in the base dir):
./configure
make
su <type root password>
make install
ldconfig
exit
If you want to remove wxWindows on Unix you can do this:
su <type root password>
make uninstall
ldconfig
exit
* The expert case
-----------------
If you want to do some more serious cross-platform programming with wxWindows,
such as for GTK and Motif, you can now build two complete libraries and use
them concurretly. For this end, you have to create a directory for each build
of wxWindows - you may also want to create different versions of wxWindows
and test them concurrently. Most typically, this would be a version configured
with --enable-debug_flag and one without. Note, that only one build can currently
be installed, so you'd have to use local version of the library for that purpose.
For building three versions (one GTK, one Motif and a debug version of the GTK
source) you'd do this:
md buildmotif
cd buildmotif
../configure --with-motif
make
cd ..
md buildgtk
cd buildgtk
../configure --with-gtk
make
cd ..
md buildgtkd
cd buildgtkd
../configure --with-gtk --enable-debug_flag
make
cd ..
* The most simple errors
------------------------
configure reports, that you don't have GTK 1.X installed although you are
very sure you have. Well, you have installed it, but you also have another
version of the GTK installed, which you may need to remove including other
versions of glib (and its headers). Also, look for the PATH variable and check
if it includes the path to the correct gtk-config! The check your LDPATH if it
points to the correct library. There is no way to compile wxGTK if configure
doesn't pass this test as all this test does is compile and link a GTK program.
You get errors during compilation: The reason is that you probably have a broken
compiler, which includes almost everything that is called gcc. If you use gcc 2.8
you have to disable optimsation as the compiler will give up with an internal
compiler error.
If there is just any way for you to use egcs, use egcs. We cannot fix gcc.
You get immediate segfault when starting any sample or application: This is either
due to having compiled the library with different flags or options than your program -
typically you might have the __WXDEBUG__ option set for the library but not for your
program - or due to using a broken compiler (and its optimisation) such as GCC 2.8.
* The most simple program
-------------------------
Now create your super-application myfoo.app and compile anywhere with
g++ myfoo.cpp `wx-config --libs --cflags` -o myfoo
* General
-----------------------
The Unix variants of wxWindows use GNU configure. If you have problems with your
make use GNU make instead.
If you have general problems with installation, read my homepage at
http://wesley.informatik.uni-freiburg.de/~wxxt
for newest information. If you still don't have any success, please send a bug
report to one of our mailing lists (see my homepage) INCLUDING A DESCRIPTION OF
YOUR SYSTEM AND YOUR PROBLEM, SUCH AS YOUR VERSION OF GTK, WXGTK, WHAT DISTRIBUTION
YOU USE AND WHAT ERROR WAS REPORTED. I know this has no effect, but I tried...
* GUI libraries
-----------------------
wxWindows/GTK requires the GTK+ library to be installed on your system. It has to
be a stable version, preferebly version 1.2.3. You can use GTK 1.0 in connection
with wxWindows, albeit without Drag'n'Drop. wxWindows does work with the 1.1.X
versions of the GTK+ library.
You can get the newest version of the GTK+ from the GTK homepage at:
http://www.gtk.org
We also mirror GTK+ 1.0.6 at my ftp site. You'll find information about downloading
at my homepage.
* Additional libraries
-----------------------
wxWindows/Gtk requires a thread library and X libraries known to work with threads.
This is the case on all commercial Unix-Variants and all Linux-Versions that are
based on glibc 2 except RedHat 5.0 which is broken in many aspects. As of writing
this, these Linux distributions have correct glibc 2 support:
- RedHat 5.1
- Debian 2.0
- Stampede
- DLD 6.0
- SuSE 6.0
You can disable thread support by running
./configure "--disable-threads"
make
su <type root password>
make install
ldconfig
exit
NB: DO NOT COMPILE WXGTK WITH GCC AND THREADS, SINCE ALL PROGRAMS WILL CRASH UPON
START-UP! Just always use egcs and be happy.
* Building wxGTK on OS/2
--------------------------
Please send comments and question about the OS/2 installation
to Andrea Venturoli <a.ventu@flashnet.it> and patches to
make the installation work (better) to me (Robert Roebling).
You'll need OS/2 Warp (4.00FP#6), X-Free86/2 (3.3.3),
gtk+ (?), emx (0.9d fix 1), flex (2.5.4), yacc (1.8),
korn shell (5.2.13), Autoconf (?), GNU file utilities (3.6),
GNU text utilities (1.3), GNU shell utilites (1.12), m4 (1.4),
sed (2.05), grep (2.0), Awk (3.0.3), GNU Make (3.76.1).
Open an OS/2 prompt and switch to the directory above.
First set some global environment variables we need:
SET CXXFLAGS=-Zmtd -D__ST_MT_ERRNO__
SET OSTYPE=OS2X
SET COMSPEC=sh
Notice you can choose whatever you want, if you don't like OS2X.
* Building wxGTK on SGI
--------------------------
Using the SGI native compilers, it is recommended that you
also set CFLAGS and CXXFLAGS before running configure. These
should be set to :
CFLAGS="-mips3 -n32"
CXXFLAGS="-mips3 -n32"
This is essential if you want to use the resultant binaries
on any other machine than the one it was compiled on. If you
have a 64bit machine (Octane) you should also do this to ensure
you don't accidently build the libraries as 64bit (which is
untested).
The SGI native compiler support has only been tested on Irix 6.5.
* Create your configuration
-----------------------------
Usage:
./configure options
If you want to use system's C and C++ compiler,
set environment variables CC and CCC as
% setenv CC cc
% setenv CCC CC
% ./configure options
to see all the options please use:
./configure --help
The basic philosophy is that if you want to use different
configurations, like a debug and a release version,
or use the same source tree on different systems,
you have only to change the environment variable OSTYPE.
(Sadly this variable is not set by default on some systems
in some shells - on SGI's for example). So you will have to
set it there. This variable HAS to be set before starting
configure, so that it knows which system it tries to
configure for.
Configure will complain if the system variable OSTYPE has
not been defined. And Make in some circumstances as well...
* General options
-------------------
Given below are the commands to change the default behaviour,
i.e. if it says "--disable-threads" it means that threads
are enabled by default.
Many of the confiugre options have been thoroughly tested
in wxWindows snapshot 6, but not yet all (ODBC not).
Normally, you won't have to choose a toolkit, because when
you download wxGTK, it will default to --with-gtk etc. But
if you use all of our CVS repository you have to choose a
toolkit. You must do this by running configure with either of:
--without-gtk Don't use the GIMP ToolKit (GTK)
--with-motif Use either Motif or Lesstif
Configure will look for both.
The following options handle the kind of library you want to build.
--disable-threads Compile without thread support. Threads
support is also required for the
socket code to work.
--disable-shared Do not create shared libraries.
--disable-optimise Do not optimise the code. Can
sometimes be useful for debugging
and is required on some architectures
such as Sun with gcc 2.8.X which
would otherwise produce segvs.
--enable-profile Add profiling info to the object
files. Currently broken, I think.
--enable-no_rtti Enable compilation without creation of
C++ RTTI information in object files.
This will speed-up compilation and reduce
binary size.
--enable-no_exceptions Enable compilation without creation of
C++ exception information in object files.
This will speed-up compilation and reduce
binary size. Also fewer crashes during the
actual compilation...
--enable-mem_tracing Add built-in memory tracing.
--enable-dmalloc Use the dmalloc memory debugger.
Read more at www.letters.com/dmalloc/
--enable-debug_info Add debug info to object files and
executables for use with debuggers
such as gdb (or its many frontends).
--enable-debug_flag Define __DEBUG__ and __WXDEBUG__ when
compiling. This enable wxWindows' very
useful internal debugging tricks (such
as automatically reporting illegal calls)
to work. Note that program and library
must be compiled with the same debug
options.
* Feature Options
-------------------
Many of the confiugre options have been thoroughly tested
in wxWindows snapshot 6, but not yet all (ODBC not).
When producing an executable that is linked statically with wxGTK
you'll be surprised at its immense size. This can sometimes be
drastically reduced by removing features from wxWindows that
are not used in your program. The most relevant such features
are
--without-libpng Disables PNG image format code.
--without-libjpeg Disables JPEG image format code.
{ --without-odbc Disables ODBC code. Not yet. }
--disable-resources Disables the use of *.wxr type
resources.
--disable-threads Disables threads. Will also
disable sockets.
--disable-sockets Disables sockets.
--disable-dnd Disables Drag'n'Drop.
--disable-clipboard Disables Clipboard.
--disable-serial Disables object instance serialiasation.
--disable-streams Disables the wxStream classes.
--disable-file Disables the wxFile class.
--disable-textfile Disables the wxTextFile class.
--disable-intl Disables the internationalisation.
--disable-validators Disables validators.
--disable-accel Disables accel.
Apart from disabling certain features you can very often "strip"
the program of its debugging information resulting in a significant
reduction in size.
* Compiling
-------------
The following must be done in the base directory (e.g. ~/wxGTK
or ~/wxWin or whatever)
Now the makefiles are created (by configure) and you can compile
the library by typing:
make
make yourself some coffee, as it will take some time. On an old
386SX possibly two weeks. During compilation, you'll get a few
warning messages depending in your compiler.
If you want to be more selective, you can change into a specific
directiry and type "make" there.
Then you may install the library and it's header files under
/usr/local/include/wx and /usr/local/lib respectively. You
have to log in as root (i.e. run "su" and enter the root
password) and type
make install
You can remove any traces of wxWindows by typing
make uninstall
If you want to save disk space by removing unnecessary
object-files:
make clean
in the various directories will do the work for you.
* Creating a new Project
--------------------------
1) The first way uses the installed libraries and header files
automatically using wx-config
g++ myfoo.cpp `wx-config --libs` `wx-config --cflags` -o myfoo
Using this way, a make file for the minimal sample would look
like this
CC = g++
minimal: minimal.o
$(CC) -o minimal minimal.o `wx-config --libs`
minimal.o: minimal.cpp mondrian.xpm
$(CC) `wx-config --cflags` -c minimal.cpp -o minimal.o
clean:
rm -f *.o minimal
This is certain to become the standard way unless we decide
to sitch to tmake.
2) The other way creates a project within the source code
directories of wxWindows. For this endeavour, you'll need
the usual number of GNU tools, at least
GNU automake version 1.4
GNU autoheader version 2.14
GNU autoconf version 2.14
GNU libtool version 1.3
and quite possibly
GNU make
GNU C++
and if you have all this then you probably know enough to
go ahead yourself :-)
----------------------
In the hope that it will be useful,
Robert Roebling <roebling@sun2.ruf.uni-freiburg.de>

View File

@@ -1,56 +0,0 @@
wxWindows Library License, Version 3
====================================
Copyright (C) 1998 Julian Smart, Robert Roebling et al.
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
WXWINDOWS LIBRARY LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
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 MERCHAN-
TABILITY 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.

View File

@@ -1,11 +0,0 @@
# makewxgtk
# Sets permissions (in case we extracted wxGTK from zip files)
# and makes wxGTK.
# Call from top-level wxWindows directory.
# Note that this uses standard (but commonly-used) configure options;
# if you're feeling brave, you may wish to compile with threads.
# -- Julian Smart
chmod a+x configure config.sub config.guess setup/general/* setup/shared/*
./configure --with-shared --with-gtk --with-debug_flag --with-debug_info --without-threads
make makefiles
make

View File

@@ -1,64 +0,0 @@
Welcome to wxWindows/Gtk 2.1 snapshot 7,
you have downloaded version 2.1 of the GTK+ 1.2 port of
the wxWindows GUI library. This is a developers release
and is it not suited for production development. Beware
that major changes can happen before a final release.
Beginning with snapshot 6, wxWindows uses a completely
new make file system on Unix that uses GNU automake,
GNU autoconf and GNU autoheader. You do not need these
programs in order to use the library, but for taking
part in its development, they are required. Read the
INSTALL.txt file for learning what you can do with the
new configure/automake/libtool system.
More information is available from my homepage at:
http://wesley.informatik.uni-freiburg.de/~wxxt
and about the wxWindows project as a whole (and the
Windows and Motif ports in particular) can be found
at Julian Smart's homepage at:
http://web.ukonline.co.uk/julian.smart/wxwin
Information on how to install can be found in the file
INSTALL.txt, but if you cannot wait, this should work on
many systems (when using GTK 1.0 read the INSTALL.txt):
./configure
make
su <type root password>
make install
ldconfig
exit
When you run into problems, please read the INSTALL.txt and
follow those instructions. If you still don't have any success,
please send a bug report to one of our mailing lists (see
my homepage) INCLUDING A DESCRIPTION OF YOUR SYSTEM AND
YOUR PROBLEM, SUCH AS YOUR VERSION OF GTK, WXGTK, WHAT
DISTRIBUTION YOU USE AND WHAT ERROR WAS REPORTED. I know
this has no effect, but I tried...
The library produced by the install process will be called
libwx_gtk.a (static) and libwx_gtk-2.1.so.0.0.0 (shared) so that
once a binary incompatible version of wxWindows/Gtk comes out
we'll augment the library version number to avoid linking problems.
Please send problems concerning installation, feature requests,
bug reports or comments to the wxWindows users list. Information
on how to subscribe is available from my homepage.
wxWindows/Gtk doesn't come with any guarantee whatsoever. It might
crash your harddisk or destroy your monitor. It doesn't claim to be
suitable for any special or general purpose.
Regards,
Robert Roebling

View File

@@ -1,48 +0,0 @@
-------------------- High priority ---------------------
Finalise DnD API.
More testing of Unicode support.
New wxSizer class implementation.
Make wxSockets work on all platform.
Do something about reentry problems with GUI threads
when doing asynchronous work (clipboard transfer,
DnD, sockets, different threads).
Add ID based i18n system as a replacement for the
unelegant gettext system.
Add controls to toolbar.
Add TIFF handler. Someone? (Hint, hint).
Improve, update translations. Install *.mo files somewehere.
Completely remove internal usage of C++ iostreams.
Sleep, eat, walk, study, shave, read, play piano and wash less.
-------------------- Medium priority ---------------------
Show accelerator control labels and actually implement them
-> Changed in GTK 1.2 (so let's do it for 1.2). Difficult.
-------------------- Low priority ---------------------
Right aligned checkboxes: focus highlighting is wrong, tooltips can't be set can't be set
OwnerDraw for wxListCtrl and others
-> Postponed.
Implement wxPalette
-> I never understood that. Postponed.
Implement different visuals and displays
-> I never understood that. Postponed.
Cooperation with Qt
-> Would be nice.

View File

@@ -1,43 +0,0 @@
<HTML>
<HEAD>
<TITLE>wxWindows 2 FAQ</TITLE>
</HEAD>
<BODY BGCOLOR=#FFFFFF TEXT=#000000 LINK=#FF0000 VLINK=#000000>
<font face="Arial, Lucida Sans, Helvetica">
<table width=100% border=4 cellpadding=5 cellspacing=0>
<tr>
<td bgcolor="#660000">
<font size=+1 face="Arial, Lucida Sans, Helvetica" color="#FFFFFF">
wxWindows 2 FAQ
</font>
</td>
</tr>
</table>
<P>
Welcome to the wxWindows FAQ. Please select a category:<P>
<ul>
<li><a href="faqgen.htm">General questions</a>
<li><a href="faqgtk.htm">wxWindows 2 for GTK</a>
<li><a href="faqmsw.htm">wxWindows 2 for Windows</a>
<li><a href="faqmot.htm">wxWindows 2 for Motif</a>
<li><a href="faqmac.htm">wxWindows 2 for Mac</a>
</ul>
<P>
For further information, please see the <a href="http://www.wxwindows.org" target=_top>wxWindows Web site</a>,
plus install.txt (per port), todo.txt (per port), and bugs.txt (all ports).
<P>
</font>
</BODY>
</HTML>

View File

@@ -1,232 +0,0 @@
<HTML>
<HEAD>
<TITLE>wxWindows 2 FAQ: General</TITLE>
</HEAD>
<BODY BGCOLOR=#FFFFFF TEXT=#000000 LINK=#FF0000 VLINK=#000000>
<font face="Arial, Lucida Sans, Helvetica">
<table width=100% border=4 cellpadding=5 cellspacing=0>
<tr>
<td bgcolor="#660000">
<font size=+1 face="Arial, Lucida Sans, Helvetica" color="#FFFFFF">
wxWindows 2 FAQ: General
</font>
</td>
</tr>
</table>
<P>
See also <a href="faq.htm">top-level FAQ page</a>.
<hr>
<H3><a name="whatis">What is wxWindows?</a></H3>
wxWindows is a class library that allows you to compile graphical C++ programs on a range of
different platforms. wxWindows defines a common API across platforms, but uses the native graphical user interface (GUI) on each platform,
so your program will take on the native 'look and feel' that users are familiar with.<P>
Although GUI applications are mostly built programmatically, there is a dialog editor to help
build attractive dialogs and panels.<P>
You don't have to use C++ to use wxWindows: wxWindows 1 has been interfaced to several interpreted languages,
such as CLIPS, Python, Scheme, XLisp and Perl, and there is a Python interface for wxWindows 2.
<P>
<h3>Can I use wxWindows 2 for both proprietary (commercial) projects, and GPL'ed projects?</h3>
Yes. Please see the <a href="newlicen.htm">licence</a> for details, but basically
you can distribute proprietary binaries without distributing any source code, and neither will wxWindows
conflict with GPL code you may be using or developing with it.
<P>
The conditions for using wxWindows 2 are the same whether you are a personal, academic
or commercial developer.
<P>
<h3>Is there support?</h3>
No official support, but the mailing list is very helpful and some people say that
wxWindows support is better than for much commercial software. The developers are
keen to fix bugs as soon as possible, though obviously there are no guarantees.
<P>
<H3><a name="users">Who uses wxWindows?</a></H3>
Many organisations - commercial, government, and academic - across the
world. It's impossible to estimate the true number of users, since
wxWindows is obtained by many different means, and we cannot monitor
distribution. The mailing list contains around 300-400 entries which is
quite large for a list of this type.<P>
<H3>I am about to start a wxWindows 1.xx project. Should I use 2 instead?</H3>
wxWindows 2 is still in beta but it's actually pretty useable (Windows, GTK, Motif).<P>
Porting to wxWindows 2 from 1.xx will not be too painful; see the next question
for ways in which you can make it easier.<P>
<H3>Why would I want to use wxWindows 2 in preference to wxWindows 1.xx?</H3>
Some reasons:
<ul>
<li>In 2 there is far more flexibility, for example in the way windows can be
nested, and the way events are intercepted.
<li>There is more functionality for producing sophisticated applications,
for example using the wxTreeCtrl and wxListCtrl classes.
<li>There is better C++-conformance (such as usage of wxString and const) which
will make your applications more reliable and easier to maintain.
<li>wxWindows 2 will be better supported than 1.xx.
<li>The GTK version is attractive for people interested in writing Linux and GNOME
applications.
<li>The Mac version will be one of the best frameworks available on that platform.
</ul>
<H3>How can I prepare for wxWindows 2?</H3>
To make porting to wxWindows 2 easier in the future, take a look at some
<a href="http://web.ukonline.co.uk/julian.smart/wxwin/prepare.htm">tips</a> for writing existing code in a 2-compatible way.<P>
<H3>How much has the API changed since 1.xx?</H3>
It's difficult to summarize, but some aspects haven't changed very much. For example, if you have some
complex drawing code, you will mostly need to make sure it's parameterised with a device
context (instead of obtaining one from a window or storing it). You won't have
to completely rewrite the drawing code.<P>
The way that events are handled has changed, so for example, where you overrode
OnSize before, you now have a non-virtual OnSize with a single event class argument.
To make this function known to wxWindows, you add an entry in an 'event table' using macros. Addition of these macros
will eventually be made easier by a tool which will allow selection from a list
and copy-and-paste into your editor. This is extended to button presses, listbox selection
etc. so callbacks have gone (they may be added back for limited backward compatibility).<P>
The class hierarchy has changed to allow greater flexibility but it probably won't affect your
existing application. One exception to this is MDI applications which now use separate MDI classes instead of style
flags. As a result, it won't be possible to switch between MDI and SDI operation at run-time
without further coding, but a benefit is less interdependence between areas of code,
and therefore smaller executable size.<P>
Panel items (now called controls) no longer have labels associated with most of them,
and default panel layout has been removed. The idea is that you make greater use
of dialog resources, for better-looking dialogs.<P>
<H3>What classes have disappeared?</H3>
wxForm, wxTextWindow (subsumed into wxTextCtrl).
<H3>Does wxWindows 2 mean that wxWindows 1.xx is dead?</H3>
While wxWindows 2 is being developed, there will be further patches to wxWindows 1.xx.
Obviously we are investing most of our energy into the new code, but we're also trying
to fix bugs in the current version.<P>
<H3>What platforms will be supported by wxWindows 2?</H3>
<ul>
<li>Windows 3.1, Windows 95/98, Windows NT;
<li>Linux and other Unix platforms with GTK+;
<li>Unix with Motif or the free Motif clone Lesstif;
<li>Mac (coming later in 1999);
<li>A BeOS port is being investigated.
<li>A Windows CE port is being investigated.
<li>There are no plans to support OS/2 or XView. However,
you may be able to compile the GTK and Motif versions under OS/2 with X and GTK
installed, or the Windows version with IBM's Open32 extensions.
</ul>
<P>
<H3>How does wxWindows 2 support platform-specific features?</H3>
This is a hotly-debated topic amongst the developers. My own philosophy
is to make wxWindows as platform-independent as possible, but allow in a
few classes (functions, window styles) that are platform-specific.
For example, Windows metafiles and Windows 95 taskbar icons have
their own classes on Windows, but nowhere else. Because these classes
are provided and are wxWindows-compatible, it doesn't take much
coding effort for an application programmer to add support for
some functionality that the user on a particular platform might otherwise
miss. Also, some classes that started off as platform-specific, such
as the MDI classes, have been emulated on other platforms. I can imagine
that even wxTaskBarIcon may be implemented for Unix desktops one day.
<P>
In other words, wxWindows is not a 'lowest common denominator' approach,
but it will still be possible to write portable programs using the
core API. Forbidding some platform-specific classes would be a stupid
approach that would alienate many potential users, and encourage
the perception that toolkits such as wxWindows are not up to the demands
of today's sophisticated applications.<P>
Currently resources such as bitmaps and icons are handled in a platform-specific
way, but it is hoped to reduce this dependence in due course.<P>
Another reason why wxWindows 2 is not a 'lowest common denominator' toolkit is that
some functionality missing on some platform has been provided using generic,
platform-independent code, such as the wxTreeCtrl and wxListCtrl classes.<P>
<H3>Does wxWindows use STL? or the standard string class?</H3>
No. This is a much-discussed topic that has (many times) ended with the conclusion that it is in
wxWindows' best interests to avoid use of templates. Not all compilers can handle
templates adequately so it would dramatically reduce the number of compilers
and platforms that could be supported. It would also be undersirable to make
wxWindows dependent on another large library that may have to be downloaded and installed.
In addition, use of templates can lead to executable bloat, which is something
wxWindows 2 is strenously trying to avoid.<P>
The standard C++ string class is not used, again because it is not available to all compilers,
and it is not necessarily a very efficient implementation. Also, we retain more flexibility
by being able to modify our own string class. Some compatibility with the string class
has been built into wxString.<P>
There is nothing to stop an application using templates or the string class for its own
purposes.<P>
<H3>How is wxWindows 2 being developed?</H3>
We are using the <a href="cvs.htm">CVS</a> system to develop and maintain wxWindows. This allows
us to make alterations and upload them instantly to the server in Edinburgh, from
which others can update their source.<P>
<H3>How is wxWindows 2 distributed?</H3>
By ftp, and via the <a href="cdrom2.htm">wxWindows CD-ROM</a>.<P>
<H3>What are the plans for the future?</H3>
Currently we're working too hard on getting wxWindows 2 finished (are GUI toolkits ever
finished?) to think very far ahead. However, we know we want to make wxWindows as robust
and well-publicised as possible. We also want to aim for better platform-independence of
resources such as icons and bitmaps, standardising on the PNG for all platforms.<P>
Other possibilities include: DCOM/CORBA compatibility; a wxWindows book; an
<a href="http://web.ukonline.co.uk/julian.smart/wxwin/wxide.htm">IDE</a>;
other platforms; other interface abilities such as speech output.<P>
We will investigate the possibility of compiler or operating system vendors bundling wxWindows with
their product.<P>
The high-level goal of wxWindows is to be thought of as the number one C++ framework,
for virtually any platform. Move over, MFC!<P>
<H3>What about Java?</H3>
The Java honeymoon period is over :-) and people are realising that it cannot
meet all their cross-platform development needs. We don't anticipate a major threat
from Java, and the level of interest in wxWindows is as high as ever.<P>
<H3>How can I help the project?</H3>
Please check out the <a href="http://web.ukonline.co.uk/julian.smart/wxwin/develop.htm" target=main>Backroom</a> pages,
in particular the <a href="http://web.ukonline.co.uk/julian.smart/wxwin/projects.htm">suggested projects</a>, and
mail <a href="mailto:julian.smart@ukonline.co.uk">Julian Smart</a> or the developers' mailing list with your own suggestions.<P>
</font>
</BODY>
</HTML>

View File

@@ -1,47 +0,0 @@
<HTML>
<HEAD>
<TITLE>wxWindows 2 for GTK FAQ</TITLE>
</HEAD>
<BODY BGCOLOR=#FFFFFF TEXT=#000000 LINK=#FF0000 VLINK=#000000>
<font face="Arial, Lucida Sans, Helvetica">
<table width=100% border=4 cellpadding=5 cellspacing=0>
<tr>
<td bgcolor="#660000">
<font size=+1 face="Arial, Lucida Sans, Helvetica" color="#FFFFFF">
wxWindows 2 for GTK FAQ
</font>
</td>
</tr>
</table>
<P>
See also <a href="faq.htm">top-level FAQ page</a>.
<hr>
<h3>What is wxWindows 2 for GTK?</h3>
wxWindows 2 for GTK is a port of wxWindows to the <a href="http://www.gimp.org/gtk" target=_top>GTK+ toolkit</a>,
which is freely available for most flavours of Unix with X. wxWindows 2 for GTK is
often abbreviated to wxGTK. wxGTK has a separate home page <a href="http://www.freiburg.linux.de/~wxxt" target=_top>here</a>.
<P>
<h3>Does wxGTK have GNOME support?</h3>
Currently wxGTK does not have any features that would involve dependence on any desktop
environment's libraries, so it can work on GNOME, KDE and with other window managers
without installation hassles. Some GNOME and KDE integration features are file based, and
so may be added without dependence on libraries. Other features may be supported in the
future, probably as a separate library.
<P>
</font>
</BODY>
</HTML>

View File

@@ -1,37 +0,0 @@
<HTML>
<HEAD>
<TITLE>wxWindows 2 for Mac FAQ</TITLE>
</HEAD>
<BODY BGCOLOR=#FFFFFF TEXT=#000000 LINK=#FF0000 VLINK=#000000>
<font face="Arial, Lucida Sans, Helvetica">
<table width=100% border=4 cellpadding=5 cellspacing=0>
<tr>
<td bgcolor="#660000">
<font size=+1 face="Arial, Lucida Sans, Helvetica" color="#FFFFFF">
wxWindows 2 for Mac FAQ
</font>
</td>
</tr>
</table>
<P>
See also <a href="faq.htm">top-level FAQ page</a>.
<hr>
<h3>When is wxMac 2 due to be released?</h3>
There is a <a href="http://web.ukonline.co.uk/julian.smart/wxwin/dl_mac2.htm">preview</a> available.
A beta release can be expected by early Q2 1999. The author of this port
is Stefan Csomor (csomor@advancedconcepts.ch).
<P>
</font>
</BODY>
</HTML>

View File

@@ -1,90 +0,0 @@
<HTML>
<HEAD>
<TITLE>wxWindows 2 for Motif FAQ</TITLE>
</HEAD>
<BODY BGCOLOR=#FFFFFF TEXT=#000000 LINK=#FF0000 VLINK=#000000>
<font face="Arial, Lucida Sans, Helvetica">
<table width=100% border=4 cellpadding=5 cellspacing=0>
<tr>
<td bgcolor="#660000">
<font size=+1 face="Arial, Lucida Sans, Helvetica" color="#FFFFFF">
wxWindows 2 for Motif FAQ
</font>
</td>
</tr>
</table>
<P>
See also <a href="faq.htm">top-level FAQ page</a>.
<hr>
<h3>What version of Motif do I need?</h3>
You will need version 1.2 or above. Version 2 should also be fine. Some people
have had a positive experience with <a href="www.lesstif.org" target=_top>Lesstif</a>,
a free Motif clone. (Note from Julian Smart - I use the Linux version of MetroLink Motif 1.2.4).
<P>
<h3>What features are missing or partially implemented?</h3>
The following classes are not yet implemented: wxSpinButton, wxCheckListBox, wxJoyStick,
wxGLCanvas.<P>
The following classes are not likely to be implemented because there is no sensible
equivalent on Motif: wxMiniFrame, wxTaskBar.<P>
These features are not yet implemented:<P>
<ul>
<li>Clipboard and drag and drop support are currently under development.
<li>Support for selection of specific visuals.
<li>Wide character support (but when Unicode is supported under Windows, this support will
be relatively easy to add).
<li>Configurable colour/font settings (they are currently hard-wired in wxSystemSettings).
<li>A help system (please use wxHelpController and Netscape instead). An HTML widget and help
system is in preparation.
</ul>
<p>
<h3>Does Dialog Editor work with wxWindows for Motif?</h3>
Suport for Dialog Editor is almost there, but there are some wrinkles to iron
out. You may find it's useful though: compile it and see.
<P>
<h3>How do I switch between debugging and release compilation modes?</h3>
Unfortunately the makefile system doesn't currently allow you to compile
for both simultaneously: you need
to recompile wxWindows and your application having adjusted make.env. However,
you could rename the binary and release library archives, and adjust your makefiles
to use the appropriate one (or change a symbolic link).
<P>
<h3>Why are windows are not refreshed properly until I resize them?</h3>
Very occasionally you can experience this glitch, probably because sometimes the
window tries to resize and repaint itself before the final size is known. The workaround
is to add code like this after window creation and initialization:<P>
<PRE>
#ifdef __WXMOTIF__
wxNoOptimize noOptimize;
window->SetSize(-1, -1, w, h);
#endif
</PRE>
<P>
</font>
</BODY>
</HTML>

View File

@@ -1,174 +0,0 @@
<HTML>
<HEAD>
<TITLE>wxWindows 2 for Windows FAQ</TITLE>
</HEAD>
<BODY BGCOLOR=#FFFFFF TEXT=#000000 LINK=#FF0000 VLINK=#000000>
<font face="Arial, Lucida Sans, Helvetica">
<table width=100% border=4 cellpadding=5 cellspacing=0>
<tr>
<td bgcolor="#660000">
<font size=+1 face="Arial, Lucida Sans, Helvetica" color="#FFFFFF">
wxWindows 2 for Windows FAQ
</font>
</td>
</tr>
</table>
<P>
See also <a href="faq.htm">top-level FAQ page</a>.
<hr>
<h3>Which Windows platforms are supported?</h3>
wxWindows 2 can be used to develop and deliver applications on Windows 3.1, Win32s,
Windows 95, Windows 98, and Windows NT. A Windows CE version is being looked into (see below).<P>
wxWindows 2 is designed to make use of WIN32 features and controls. However, unlike Microsoft,
we have not forgotten users of 16-bit Windows. Most features
work under Windows 3.1, including wxTreeCtrl and wxListCtrl using the generic implementation.
However, don't expect very Windows-95-specific classes to work, such as wxTaskBarIcon. The wxRegConfig
class doesn't work either because the Windows 3.1 registry is very simplistic. Check out the 16-bit
makefiles to see what other files have been left out.
<P>
16-bit compilation is supported under Visual C++ 1.5, and Borland BC++ 4 to 5.
<P>
wxWindows 2 for Windows will also compile on Unix with gcc using TWIN32 from <a href="http://www.willows.com" target=_top>Willows</a>,
although TWIN32 is still in a preliminary state. The resulting executables are
Unix binaries that work with the TWIN32 Windows API emulator.<P>
You can also compile wxWindows 2 for Windows on Unix with Cygwin or Mingw32, resulting
in executables that will run on Windows. So in theory you could write your applications
using wxGTK or wxMotif, then check/debug your wxWindows for Windows
programs with TWIN32, and finally produce an ix86 Windows executable using Cygwin/Mingw32,
without ever needing a copy of Microsoft Windows. See the Technical Note on the Web site detailing cross-compilation.<P>
<h3>What about Windows CE?</h3>
This is under consideration, though we need to get wxWindows Unicode-aware first.
There are other interesting issues, such as how to combine the menubar and toolbar APIs
as Windows CE requires. But there's no doubt that it will be possible, albeit
by mostly cutting down wxWindows 2 API functionality, and adding a few classes here
and there. Since wxWindows for 2 produces small binaries (less than 300K for
the statically-linked 'minimal' sample), shoehorning wxWindows 2 into a Windows CE device's limited
storage should not be a problem.<P>
<h3>What compilers are supported?</h3>
Please see the wxWindows 2 for Windows install.txt file for up-to-date information, but
currently the following are known to work:<P>
<ul>
<li>Visual C++ 1.5, 4.0, 5.0, 6.0
<li>Borland C++ 4.5, 5.0
<li>Borland C++Builder 1.0, 3.0
<li>Watcom C++ 10.6 (WIN32)
<li>Cygwin b20
<li>Mingw32
<li>MetroWerks CodeWarrior 4
</ul>
<P>
There is a linking problem with Symantec C++ which I hope someone can help solve.
<P>
<h3>Which is the best compiler to use with wxWindows 2?</h3>
It's partly a matter of taste, but I (JACS) prefer Visual C++ since the debugger is very
good, it's very stable, the documentation is extensive, and it generates small executables.
Since project files are plain text, it's easy for me to generate appropriate project files
for wxWindows samples.<P>
Borland C++ is fine - and very fast - but it's hard (impossible?) to use the debugger without using project files, and
the debugger is nowhere near up to VC++'s quality. The IDE isn't great.<P>
C++Builder's power isn't really used with wxWindows since it needs integration with its
own class library (VCL). For wxWindows, I've only used it with makefiles, in which case
it's almost identical to BC++ 5.0 (the same makefiles can be used).<P>
You can't beat Cygwin's price (free), and you can debug adequately using gdb. However, it's
quite slow to compile since it does not use precompiled headers.<P>
CodeWarrior is cross-platform - you can debug and generate Windows executables from a Mac, but not
the other way around I think - but the IDE is, to my mind, a bit primitive.<P>
Watcom C++ is a little slow and the debugger is not really up to today's standards.<P>
<h3>Is Unicode supported?</h3>
Not yet, although there are other internationalisation features.<P>
However, the issues surrounding Unicode support have been looked into so we know
what we need to do, and have some header files ready to use containing appropriate
type definitions. Just about every file in wxWindows will need changes, due to the
pervasive nature of characters and character arrays. Unicode support is needed
for the port to Windows CE (see above), and will probably be added in time for version 2.1.<P>
<h3>Can you compile wxWindows 2 as a DLL?</h3>
Yes (using the Visual C++ or Borland C++ makefile), but be aware that distributing DLLs is a thorny issue
and you may be better off compiling statically-linked applications, unless you're
delivering a suite of separate programs, or you're compiling a lot of wxWindows applications
and have limited hard disk space.<P>
With a DLL approach, and with different versions and configurations of wxWindows
needing to be catered for, the end user may end up with a host of large DLLs in his or her Windows system directory,
negating the point of using DLLs. Of course, this is not a problem just associated with
wxWindows!
<P>
<H3>How can I reduce executable size?</H3>
You can compile wxWindows as a DLL (see above, VC++/BC++ only at present). You should also
compile your programs for release using non-debugging and space-optimisation options, but
take with VC++ 5/6 space optimisation: it can sometimes cause problems.<P>
Statically-linked wxWindows 2 programs are smaller than wxWindows 1.xx programs, because of the way
wxWindows 2 has been designed to reduce dependencies between classes, and other
techniques. The linker will not include code from the library that is not (directly or
indirectly) referenced
by your application. So for example, the 'minimal' sample is less than 300KB using VC++ 6.<P>
If you want to distribute really small executables, you can
use <a href="http://www.icl.ndirect.co.uk/petite/" target=_top>Petite</a>
by Ian Luck. This nifty utility compresses Windows executables by around 50%, so your 500KB executable
will shrink to a mere 250KB. With this sort of size, there is reduced incentive to
use DLLs.<P>
<H3>Is wxWindows compatible with MFC?</H3>
There is a sample which demonstrates MFC and wxWindows code co-existing in the same
application. However, don't expect to be able to enable wxWindows windows with OLE-2
functionality using MFC.<P>
<H3>Why do I sometimes get bizarre crash problems using VC++ 5/6?</H3>
Some crash problems can be due to inconsistent compiler
options (and of course this isn't limited to wxWindows).
If strange/weird/impossible things start to happen please
check (dumping IDE project file as makefile and doing text comparison
if necessary) that the project settings, especially the list of defined
symbols, struct packing, etc. are exactly the same for all items in
the project. After this, delete everything (including PCH) and recompile.<P>
VC++ 5's optimization code seems to be broken and can
cause problems: this can be seen when deleting an object Dialog
Editor, in Release mode with optimizations on. If in doubt,
switch off optimisations, although this will result in much
larger executables. It seems possible that the library can be created with
strong optimization, so long as the application is not strongly
optimized. For example, in wxWindows project, set to 'Minimum
Size'. In Dialog Editor project, set to 'Customize: Favor Small
Code' (and no others). This will then work.<P>
</font>
</BODY>
</HTML>

File diff suppressed because it is too large Load Diff

View File

@@ -1,222 +0,0 @@
<!-- manual page source format generated by PolyglotMan v3.0.3a12, -->
<!-- available via anonymous ftp from ftp.cs.berkeley.edu:/ucb/people/phelps/tcltk/rman.tar.Z -->
<HTML>
<HEAD>
<TITLE>msgfmt(1) manual page</TITLE>
</HEAD>
<BODY>
<A HREF="#toc">Table of Contents</A><P>
<H2><A NAME="sect0" HREF="#toc0">NAME </A></H2>
msgfmt - create a message object from a message file
<H2><A NAME="sect1" HREF="#toc1">SYNOPSIS
</A></H2>
<B>msgfmt</B> [ <B>-v</B> ] [ <B>-o</B><I> output-file</I> ] ...
<H2><A NAME="sect2" HREF="#toc2">DESCRIPTION </A></H2>
<P>
<B>msgfmt</B> creates message
object files from portable object files (<I>filename<B>.po </B></I>), without changing
the portable object files. <P>
The <B>.po </B> file contains messages displayed to
users by system commands or by application programs. <B>.po</B> files can be edited,
and the messages in them can be rewritten in any language supported by
the system. <P>
The <B><A HREF="http://hoth.stsci.edu/man/man1/xgettext.html">xgettext</B>(1)</A>
command can be used to create <B>.po</B> files from
script or programs. <P>
<B>msgfmt</B> interprets data as characters according to the
current setting of the <FONT SIZE=-1><B>LC_CTYPE </B></FONT>
locale category.
<H3><A NAME="sect3" HREF="#toc3">Portable Object Files
</A></H3>
<P>
Formats for all <B>.po</B> files are the same. Each <B>.po</B> file contains one or
more lines, with each line containing either a comment or a statement.
Comments start the line with a hash mark (#) and end with the newline
character. All comments are ignored. The format of a statement is:
<DL>
<DT><I>directive</I>
value </DT>
<DD></DD>
</DL>
<P>
Each directive starts at the beginning of the line and is separated
from <I>value</I> by white space (such as one or more space or tab characters).
<I>value</I> consists of one or more quoted strings separated by white space.
Use any of the following types of directives: <P>
<blockquote><B>domain</B> <I>domainname</I> <BR>
<B>msgid</B>
<I>message_identifier</I> <BR>
<B>msgstr</B> <I>message_string</I> </blockquote>
<P>
The behavior of the <B>domain</B>
directive is affected by the options used. See <FONT SIZE=-1>OPTIONS</FONT>
for the behavior
when the <B>-o</B> option is specified. If the <B>-o</B> option is not specified, the
behavior of the <B>domain</B> directive is as follows: <blockquote>
<UL>
&#183;<LI>All <I>msgids</I> from the beginning
of each <B>.po</B> file to the first domain directive are put into a default
message object file, <B>messages.mo</B>. </LI>&#183;<LI>When <B>msgfmt</B> encounters a <B>domain</B><I> domainname</I>
directive in the <B>.po</B> file, all following <I>msgids</I> until the next <B>domain</B> directive
are put into the message object file </LI>&#183;<LI>Duplicate <I>msgids</I> are defined in
the scope of each domain. That is, a <I>msgid</I> is considered a duplicate only
if the identical <I>msgid</I> exists in the same domain. </LI>&#183;<LI>All duplicate <I>msgids</I>
are ignored. </LI>
</UL>
</blockquote>
<P>
The <B>msgid</B> directive specifies the value of a message identifier
associated with the directive that follows it. The <I>message_identifier</I> string
identifies a target string to be used at retrieval time. Each statement
containing a <B>msgid</B> directive must be followed by a statement containing
a <B>msgstr</B> directive. <P>
The <B>msgstr</B> directive specifies the target string associated
with the <I>message_identifier</I> string declared in the immediately preceding
<B>msgid</B> directive. <P>
Message strings can contain the escape sequences <B>\n</B> for
newline, <B>\t</B> for tab, <B>\v</B> for vertical tab, <B>\b</B> for backspace, <B>\r</B> for carriage
return, <B>\f</B> for formfeed, <B>\\</B> for backslash, \" for double quote, <B>\ddd</B> for octal
bit pattern, and <B>\xDD</B> for hexadecimal bit pattern.
<H2><A NAME="sect4" HREF="#toc4">OPTIONS </A></H2>
<DL>
<DT><B>-v</B> </DT>
<DD>Verbose.
List duplicate message identifiers. Message strings are not redefined.
</DD>
<DT><B>-o</B><I> output-file</I> </DT>
<DD>Specify output file name as <I>output-file</I>. All <B>domain</B> directives
and duplicate <I>msgids</I> in the <B>.po</B> file are ignored. </DD>
</DL>
<H2><A NAME="sect5" HREF="#toc5">EXAMPLES </A></H2>
In this example
<B>module1.po</B> and <B>module2.po</B> are portable message objects files. <P>
<blockquote> example%
cat module1.po <BR>
# default domain "messages.mo" <BR>
msgid "msg 1" <BR>
msgstr "msg
1 translation" <BR>
# <BR>
domain "help_domain" <BR>
msgid "help 2" <BR>
msgstr "help
2 translation" <BR>
# <BR>
domain "error_domain" <BR>
msgid "error 3" <BR>
msgstr "error
3 translation" <BR>
<P>
example% cat module2.po <BR>
# default domain "messages.mo"
<BR>
msgid "mesg 4" <BR>
msgstr "mesg 4 translation" <BR>
# <BR>
domain "error_domain"
<BR>
msgid "error 5" <BR>
msgstr "error 5 translation" <BR>
# <BR>
domain "window_domain"
<BR>
msgid "window 6" <BR>
msgstr "window 6 translation" <BR>
</blockquote>
<P>
The following command
will produce the output files, <B>messages.mo</B>, <B>help_domain.mo</B>, and <B>error_domain.mo</B>.
<DL>
<DT><B>example% msgfmt module1.po</B> </DT>
<DD></DD>
</DL>
<P>
The following command will produce the output
files, <B>messages.mo</B>, <B>help_domain.mo</B>, <B>error_domain.mo</B>, and <B>window_domain.mo</B>.
<DL>
<DT><B>example% msgfmt module1.po module2.po</B> </DT>
<DD></DD>
</DL>
<P>
The following example will produce
the output file <B>hello.mo</B>.
<DL>
<DT><B>example% msgfmt -o hello.mo module1.po module2.po</B>
</DT>
<DD></DD>
</DL>
<P>
Install message object files in <B>/usr/lib/locale/</B><I>locale</I><B><FONT SIZE=-1>/LC_MESSAGES/</FONT>
</B><I>domain</I><B>.mo</B>
where <I>locale</I> is the message locale as set by <B><A HREF="http://hoth.stsci.edu/man/man3C/setlocale.html">setlocale</B>(3C)</A>
, and <I>domain</I>
is text domain as set by <B>textdomain()</B>. The <B>/usr/lib/locale</B> portion can
optionally be changed by calling <B>bindtextdomain()</B>. See <B><A HREF="http://hoth.stsci.edu/man/man3C/gettext.html">gettext</B>(3C)</A>
.
<H2><A NAME="sect6" HREF="#toc6">ENVIRONMENT
</A></H2>
See <B><A HREF="http://hoth.stsci.edu/man/man5/environ.html">environ</B>(5)</A>
for descriptions of the following environmental variables
that affect the execution of <B>msgfmt</B>: <FONT SIZE=-1><B>LC_CTYPE</FONT>
</B>, <FONT SIZE=-1><B>LC_MESSAGES</FONT>
</B>, <FONT SIZE=-1><B>NLSPATH</FONT>
</B>.
<H2><A NAME="sect7" HREF="#toc7">ATTRIBUTES </A></H2>
See <B><A HREF="http://hoth.stsci.edu/man/man5/attributes.html">attributes</B>(5)</A>
for descriptions of the following attributes:
<P>
<TABLE BORDER=0>
<TR> <TD ALIGN=CENTER><B>ATTRIBUTE TYPE</B> </TD> <TD ALIGN=CENTER><B>ATTRIBUTE VALUE</B> </TD> </TR>
<TR> <TR> <TD ALIGN=LEFT>Availability </TD> <TD ALIGN=LEFT>SUNWloc </TD> </TR>
<TR> <TD ALIGN=LEFT>CSI
</TD> <TD ALIGN=LEFT>Enabled </TD> </TR>
</TABLE>
<H2><A NAME="sect8" HREF="#toc8">SEE ALSO </A></H2>
<B><A HREF="http://hoth.stsci.edu/man/man1/xgettext.html">xgettext</B>(1)</A>
, <B><A HREF="http://hoth.stsci.edu/man/man3C/gettext.html">gettext</B>(3C)</A>
, <B><A HREF="http://hoth.stsci.edu/man/man3C/setlocale.html">setlocale</B>(3C)</A>
, <B><A HREF="http://hoth.stsci.edu/man/man5/attributes.html">attributes</B>(5)</A>
,
<B><A HREF="http://hoth.stsci.edu/man/man5/environ.html">environ</B>(5)</A>
<H2><A NAME="sect9" HREF="#toc9">NOTES </A></H2>
<P>
Neither <B>msgfmt</B> nor any <B>gettext()</B> routine imposes a limit
on the total length of a message. However, each line in the <B>*.po</B> file is
limited to <FONT SIZE=-1><B>MAX_INPUT </B></FONT>
(512) bytes. <P>
Installing message catalogs under the
C locale is pointless, since they are ignored for the sake of efficiency.
<P>
<HR><P>
<A NAME="toc"><B>Table of Contents</B></A><P>
<UL>
<LI><A NAME="toc0" HREF="#sect0">NAME</A></LI>
<LI><A NAME="toc1" HREF="#sect1">SYNOPSIS</A></LI>
<LI><A NAME="toc2" HREF="#sect2">DESCRIPTION</A></LI>
<UL>
<LI><A NAME="toc3" HREF="#sect3">Portable Object Files</A></LI>
</UL>
<LI><A NAME="toc4" HREF="#sect4">OPTIONS</A></LI>
<LI><A NAME="toc5" HREF="#sect5">EXAMPLES</A></LI>
<LI><A NAME="toc6" HREF="#sect6">ENVIRONMENT</A></LI>
<LI><A NAME="toc7" HREF="#sect7">ATTRIBUTES</A></LI>
<LI><A NAME="toc8" HREF="#sect8">SEE ALSO</A></LI>
<LI><A NAME="toc9" HREF="#sect9">NOTES</A></LI>
</UL>
</BODY></HTML>

View File

@@ -1,144 +0,0 @@
<!-- manual page source format generated by PolyglotMan v3.0.3a12, -->
<!-- available via anonymous ftp from ftp.cs.berkeley.edu:/ucb/people/phelps/tcltk/rman.tar.Z -->
<HTML>
<HEAD>
<TITLE>xgettext(1) manual page</TITLE>
</HEAD>
<BODY>
<A HREF="#toc">Table of Contents</A><P>
<H2><A NAME="sect0" HREF="#toc0">NAME </A></H2>
xgettext - extract gettext call strings from C programs
<H2><A NAME="sect1" HREF="#toc1">SYNOPSIS
</A></H2>
<B>xgettext</B> [ <B>-ns</B> ] [ <B>-a</B> [ <B>-x</B><I> exclude-file</I> ] ] [ <B>-c</B><I> comment-tag</I> ] [ <B>-d</B><I> default-domain</I>
] [ <B>-j</B> ] [ <B>-m</B><I> prefix</I> ] [ <B>-M</B><I> suffix</I> ] [ <B>-p</B><I> pathname</I> ] <B>-</B>| <I>filename</I> ... <BR>
<B>xgettext</B>
<B>-h</B>
<H2><A NAME="sect2" HREF="#toc2">DESCRIPTION </A></H2>
<P>
<B>xgettext</B> is used to automate the creation of portable
message files (<B>.po</B>). A <B>.po</B> file contains copies of `C' strings that are found
in ANSI C source code in <I>filename</I> or the standard input if `<B>-</B>' is specified
on the command line. The <B>.po</B> file can be used as input to the <B><A HREF="http://hoth.stsci.edu/man/man1/msgfmt.html">msgfmt</B>(1)</A>
utility, which produces a binary form of the message file that can be
used by application during run-time. <P>
<B>xgettext</B> writes <I>msgid</I> strings from
<B><A HREF="http://hoth.stsci.edu/man/man3C/gettext.html">gettext</B>(3C)</A>
calls in <I>filename</I> to the default output file <B>messages.po</B>. The
default output file name can be changed by <B>-d</B> option. <I>msgid</I> strings in
<B>dgettext()</B> calls are written to the output file where <I>domainname</I> is the
first parameter to the <B>dgettext()</B> call. <P>
By default, <B>xgettext</B> creates a
<B>.po</B> file in the current working directory, and each entry is in the same
order the strings are extracted from <I>filenames</I>. When the <B>-p</B> option is specified,
the <B>.po</B> file is created in the <I>pathname</I> directory. An existing <B>.po</B> file
is overwritten. <P>
Duplicate <I>msgid</I>s are written to the <B>.po</B> file as comment
lines. When the <B>-s </B> option is specified, the <B>.po</B> is sorted by the <I>msgid</I>
string, and all duplicated <I>msgid</I>s are removed. All <I>msgstr</I> directives in
the <B>.po</B> file are empty unless the <B>-m </B> option is used.
<H2><A NAME="sect3" HREF="#toc3">OPTIONS </A></H2>
<DL>
<DT><B>-n</B> </DT>
<DD>Add comment
lines to the output file indicating file name and line number in the source
file where each extracted string is encountered. These lines appear before
each <I>msgid</I> in the following format: <blockquote><B>#</B> <B># File: </B><I>filename</I><B>, line: </DD>
</DL>
</B><I>line-number</I>
</blockquote>
<DL>
<DT><B>-s</B> </DT>
<DD>Generate output sorted by <I>msgid</I>s with all duplicate <I>msgid</I>s removed.
</DD>
<DT><B>-a</B> </DT>
<DD>Extract all strings, not just those found in <B><A HREF="http://hoth.stsci.edu/man/man3C/gettext.html">gettext</B>(3C)</A>
, and <B>dgettext
()</B> calls. Only one <B>.po</B> file is created. </DD>
<DT><B>-c</B><I> comment-tag</I> </DT>
<DD>The comment block
beginning with <I>comment-tag</I> as the first token of the comment block is
added to the output <B>.po</B> file as <I>#</I> delimited comments. For multiple domains,
<B>xgettext</B> directs comments and messages to the prevailing text domain. </DD>
<DT><B>-d</B><I>
default-domain</I> </DT>
<DD>Rename default output file from <B>messages.po</B> to <I>default-domain</I>
<B>.po</B>. </DD>
<DT><B>-j</B> </DT>
<DD>Join messages with existing message files. If a <B>.po</B> file does not
exist, it is created. If a <B>.po</B> file does exist, new messages are appended.
Any duplicate <B>msgid</B>s are commented out in the resulting <B>.po</B> file. Domain
directives in the existing <B>.po</B> file are ignored. Results not guaranteed
if the existing message file has been edited. </DD>
<DT><B>-m</B><I> prefix</I> </DT>
<DD>Fill in the <I>msgstr</I>
with <I>prefix</I>. This is useful for debugging purposes. To make <I>msgstr</I> identical
to <I>msgid</I>, use an empty string (<B>"" </B>) for <I>prefix</I>. </DD>
<DT><B>-M</B><I> suffix</I> </DT>
<DD>Fill in the
<I>msgstr</I> with <I>suffix</I>. This is useful for debugging purposes. </DD>
<DT><B>-p</B><I> pathname</I>
</DT>
<DD>Specify the directory where the output files will be placed. This option
overrides the current working directory. <BR>
</DD>
<DT><B>-x</B><I> exclude-file</I> </DT>
<DD>Specify a <B>.po</B>
file that contains a list of <I>msgid</I>s that are not to be extracted from
the input files. The format of <I>exclude-file</I> is identical to the <B>.po</B> file.
However, only the <I>msgid</I> directive line in <I>exclude-file</I> is used. All other
lines are simply ignored. The <B>-x</B> option can only be used with the <B>-a</B> option.
</DD>
<DT><B>-h</B> </DT>
<DD>Print a help message on the standard output. </DD>
</DL>
<H2><A NAME="sect4" HREF="#toc4">ATTRIBUTES </A></H2>
See <B><A HREF="http://hoth.stsci.edu/man/man5/attributes.html">attributes</B>(5)</A>
for descriptions of the following attributes: <P>
<TABLE BORDER=0>
<TR> <TD ALIGN=CENTER><B>ATTRIBUTE TYPE</B> </TD> <TD ALIGN=CENTER><B>ATTRIBUTE
VALUE</B> </TD> </TR>
<TR> <TR> <TD ALIGN=LEFT>Availability </TD> <TD ALIGN=LEFT>SUNWloc </TD> </TR>
</TABLE>
<H2><A NAME="sect5" HREF="#toc5">SEE ALSO </A></H2>
<B><A HREF="http://hoth.stsci.edu/man/man1/msgfmt.html">msgfmt</B>(1)</A>
, <B><A HREF="http://hoth.stsci.edu/man/man3C/gettext.html">gettext</B>(3C)</A>
, <B><A HREF="http://hoth.stsci.edu/man/man5/attributes.html">attributes</B>(5)</A>
<H2><A NAME="sect6" HREF="#toc6">NOTES </A></H2>
<B>xgettext</B> is not able to extract cast strings, for example ANSI
C casts of literal strings to <B>(const char *)</B>. This is unnecessary anyway,
since the prototypes in <B>&lt;libintl.h&gt;</B> already specify this type. <P>
<HR><P>
<A NAME="toc"><B>Table of Contents</B></A><P>
<UL>
<LI><A NAME="toc0" HREF="#sect0">NAME</A></LI>
<LI><A NAME="toc1" HREF="#sect1">SYNOPSIS</A></LI>
<LI><A NAME="toc2" HREF="#sect2">DESCRIPTION</A></LI>
<LI><A NAME="toc3" HREF="#sect3">OPTIONS</A></LI>
<LI><A NAME="toc4" HREF="#sect4">ATTRIBUTES</A></LI>
<LI><A NAME="toc5" HREF="#sect5">SEE ALSO</A></LI>
<LI><A NAME="toc6" HREF="#sect6">NOTES</A></LI>
</UL>
</BODY></HTML>

View File

@@ -1,267 +0,0 @@
<HTML>
<HEAD>
<TITLE>wxWindows Documentation</TITLE>
</HEAD>
<!BODY BGCOLOR="#FFFFFF" TEXT=#000000 LINK=#FF0000 VLINK=#000000>
<BODY BGCOLOR="#CCDDDFF" TEXT=#000000 LINK=#FF0000 VLINK=#000000>
<font face="Arial, Lucida Sans, Helvetica">
<a name="top"></a>
<table width=100% border=4 cellpadding=5 cellspacing=0>
<tr>
<td bgcolor="#660000">
<font size=+1 face="Arial, Lucida Sans, Helvetica" color="#FFFFFF">
<IMG src="logo.gif" align=right>
<!-- wxWindows Documentation -->
</font>
</td>
</tr>
</table>
<P>
Welcome to wxWindows 2, the premi&egrave;re cross-platform GUI C++ framework. This is an index of
the plain text, HTML, Windows Help and Acrobat documentation: availability depends on what you've
downloaded from the <a href="http://www.wxwindows.org">wxWindows Web site</a>.<P>
<CENTER>
<FONT size=-1>
[<a href="#install">Install</a>]
[<a href="#manuals">Manuals</a>]
[<a href="#thirdparty">3rd party tools</a>]
[<a href="#samples">Samples</a>]
</FONT>
</CENTER>
<h3 align=center><a name="install"><hr>Installation and release notes<hr></a></h3>
<ul>
<li>ReadMe: <a href="../readme.txt"><b>General ReadMe</b></a>,
<a href="../gtk/readme.txt">wxGTK</a>,
<a href="../motif/readme.txt">wxMotif</a>,
<a href="../msw/readme.txt">wxMSW</a>
<li>Installation: <a href="../gtk/install.txt">wxGTK</a>,
<a href="../motif/install.txt">wxMotif</a>,
<a href="../msw/install.txt">wxMSW</a>
<li><a href="../changes.txt"><b>Change log</b></a>
<li><a href="../bugs.txt"><b>Buglist</b></a>
<li>Licence: <a href="../preamble.txt">Preamble</a>,
<a href="../licence.txt">Licence</a>,
<a href="../licendoc.txt">Documentation Licence</a>,
<a href="../lgpl.txt">L-GPL</a>,
<a href="../gpl.txt">GPL</a>
<li><a href="faq.htm"><B>FAQ</B></a>:
<ul>
<li><a href="faqgen.htm">General questions</a>
<li><a href="faqgtk.htm">wxWindows 2 for GTK</a>
<li><a href="faqmsw.htm">wxWindows 2 for Windows</a>
<li><a href="faqmot.htm">wxWindows 2 for Motif</a>
<li><a href="faqmac.htm">wxWindows 2 for Mac</a>
</ul>
<li>ToDo: <a href="../todo.txt"><b>General ToDo</b></a>,
<a href="../gtk/todo.txt">wxGTK</a>,
<a href="../motif/todo.txt">wxMotif</a>,
<a href="../msw/todo.txt">wxMSW</a>
<li>List of <a href="../symbols.txt">preprocessor symbols</a> used in wxWindows
</ul>
<h3 align=center><a name="manuals"><hr>wxWindows manuals<hr></a></h3>
<table border=1 align=center>
<tr>
<td align=center bgcolor="#FFFF00">
<B>HTML</B>
</td>
<td align=center bgcolor="#FFFF00">
<B>WinHelp</B>
</td>
<td align=center bgcolor="#FFFF00">
<B>PDF</B>
</td>
</tr>
<tr>
<td align=center>
<a href="wx/wx.htm">Reference Manual</a>
</td>
<td align=center>
<a href="../winhelp/wx.hlp">Reference Manual</a>
</td>
<td align=center>
<a href="../pdf/wx.pdf">Reference Manual</a>
</td>
</tr>
<tr>
<td align=center>
<a href="porting/port.htm">Porting Guide</a>
</td>
<td align=center>
<a href="../winhelp/porting.hlp">Porting Guide</a>
</td>
<td align=center>
<a href="../pdf/porting.pdf">Porting Guide</a>
</td>
</tr>
<tr>
<td align=center>
<a href="dialoged/dlged.htm">Dialog Editor Manual</a>
</td>
<td align=center>
<a href="../winhelp/dialoged.hlp">Dialog Editor Manual</a>
</td>
<td align=center>
<a href="../pdf/dialoged.pdf">Dialog Editor Manual</a>
</td>
</tr>
<tr>
<td align=center>
<a href="proplist/prop.htm">Property List Classes</a>
</td>
<td align=center>
<a href="../winhelp/proplist.hlp">Propert List Classes</a>
</td>
<td align=center>
<a href="../pdf/proplist.pdf">Property List Classes</a>
</td>
</tr>
<tr>
<td align=center>
<a href="wxtree/tree.htm">wxTreeLayout Class</a>
</td>
<td align=center>
<a href="../winhelp/wxtree.hlp">wxTreeLayout Class</a>
</td>
<td align=center>
<a href="../pdf/wxtree.pdf">wxTreeLayout Class</a>
</td>
</tr>
<tr>
<td align=center>
<a href="odbc/odbc.htm">Remstar ODBC Classes</a>
</td>
<td align=center>
<BR><BR>
</td>
<td align=center>
<a href="../pdf/odbc.pdf">Remstar ODBC Classes</a>
</td>
</tr>
</table>
<h3 align=center><a name="thirdparty"><hr>Third-party tools<hr></a></h3>
<ul>
<li><a href="gettext/gettext.htm">gettext Manual</a>
<li><a href="gettext/xgettext.htm">xgettext Manual</a>
<li><a href="gettext/msgfmt.htm">msgfmt Manual</a>
</ul>
<h3 align=center><a name="samples"><hr>Samples<hr></a></h3>
<ul>
<li><a href="../../samples/bombs">bombs</a>: minesweeper-like game.
<li><a href="../../samples/checklst">checklst</a>: demonstrates wxCheckListBox on
supported platforms (currently Windows and GTK only).
<li><a href="../../samples/config">config</a>: demonstrates use of wxConfig, which
defaults to wxRegConfig on WIN32, wxIniConfig on WIN16, and wxFileConfig on other platforms.
<li><a href="../../samples/controls">controls</a>: sample showing a variety of controls, including
wxNotebook.
<li><a href="../../samples/db">db</a>: wxDB ODBC sample.
<li><a href="../../samples/dde">dde</a>: shows the DDE protocol in action, both using real
DDE on Windows, and TCP/IP on all platforms. Edit <a href="../../samples/dde/ddesetup.h">ddesetup.h</a>
to switch between compilation modes. Currently the TCP/IP mode needs a bit of work.
<li><a href="../../samples/dialogs">dialogs</a>: shows some of the common dialogs available -- wxFontDialog,
wxColourDialog, wxFileDialog, wxDirDialog, wxMessageBox, wxTextEntryDialog, wxSingleChoiceDialog.
For printing-related dialogs, see the printing sample.
<li><a href="../../samples/dnd">dnd</a>: demonstrates drag and drop on supported platforms.
<li><a href="../../samples/docview">docview</a>: demonstrates use of the document view classes,
using wxFrame.
<li><a href="../../samples/docvwmdi">docvwmdi</a>: : demonstrates use of the document view classes,
using wxMDIParentFrame, wxMDIChildFrame.
<li><a href="../../samples/dynamic">dynamic</a>: shows how to connect events to member functions
dynamically.
<li><a href="../../samples/forty">forty</a>: a great little card game by Chris Breeze. A
fully-fledged application!
<li><a href="../../samples/fractal">fractal</a>: fractal mountains by Andrew Davison.
<li><a href="../../samples/grid">grid</a>: demonstrates the wxGrid class.
<li><a href="../../samples/help">help</a>: shows how to use wxHelpController.
<li><a href="../../samples/image">image</a>: shows off the cross-platform wxImage class.
<li><a href="../../samples/internat">internat</a>: use of wxWindows' internationalization support.
<li><a href="../../samples/joytest">joytest</a>: tests the wxJoystick class (currently Windows and GTK only).
<li><a href="../../samples/layout">layout</a>: shows the constraint layout system in action.
<li><a href="../../samples/listctrl">listctrl</a>: demonstrates the wxListCtrl (implemented natively on
WIN32, and using a generic version on other platforms).
<li><a href="../../samples/mdi">mdi</a>: shows off the MDI (Multiple Document Interface) classes. On Windows, the regular MDI
scheme is used whereby child windows have full sizing and moving rights within the main
window. On other platforms, tabbed windows are used, where the children are always maximized.
<li><a href="../../samples/memcheck">memcheck</a>: demonstrates the memory checking/debugging facilities.
<li><a href="../../samples/mfc">mfc</a>: shows how to use MFC and wxWindows code in the same application (Windows only).
To compile this, you must edit include/wx/wxprec.h, comment out the windows.h inclusion, and recompile wxWindows.
<li><a href="../../samples/minifram">minifram</a>: demonstrates a frame with a small title bar. On
platforms that don't support it, a normal-sized title bar is displayed.
<li><a href="../../samples/minimal">minimal</a>: just shows a frame, a menubar, and a statusbar. About as
small a wxWindows application as you can get.
<li><a href="../../samples/nativdlg">nativdlg</a>: shows how wxWindows can load a standard Windows
dialog resource, translating the controls into wxWindows controls (Windows only).
<li><a href="../../samples/notebook">notebook</a>: shows the wxNotebook (tabbed window) control.
<li><a href="../../samples/oleauto">oleauto</a>: a little OLE automation controller (Windows only; requires
Excel to be present).
<li><a href="../../samples/ownerdrw">ownerdrw</a>: demonstrates owner-draw menus and controls (Windows only).
<li><a href="../../samples/png">png</a>: demonstrates PNG loading.
<li><a href="../../samples/printing">printing</a>: shows printing and previewing.
<li><a href="../../samples/proplist">proplist</a>: demonstrates the property list classes (a VB-style property editor).
<li><a href="../../samples/regtest">regtest</a>: tests the low-level Windows registry functions (Windows only).
<li><a href="../../samples/resource">resource</a>: shows how to use wxWindows resources (.wxr files).
<li><a href="../../samples/sashtest">sashtest</a>: demonstrates use of the wxSashWindow class to allow
the user to resize subwindows.
<li><a href="../../samples/splitter">splitter</a>: demonstrates the wxSplitterWindow class.
<li><a href="../../samples/tab">tab</a>: demonstrates the generic tab window class. You should
normally use wxNotebook instead, but the generic code is sometimes useful, for example for
implementing wxNotebook on platforms with no native support.
<li><a href="../../samples/taskbar">taskbar</a>: demonstrates the wxTaskBarIcon class, for
adding icons to the system tray. Windows only, but may eventually be implemented for other desktop
environments that use this metaphor.
<li><a href="../../samples/thread">thread</a>: tests the family of classes for doing thread
programming.
<li><a href="../../samples/toolbar">toolbar</a>: demonstrates wxToolBar.
<li><a href="../../samples/treectrl">treectrl</a>: demonstrates wxTreeCtrl.
<li><a href="../../samples/typetest">typetest</a>: tests various data type classes, including
wxTime, wxDate and wxVariant.
<li><a href="../../samples/validate">validate</a>: shows simple use of validation.
<li><a href="../../samples/wxpoem">wxpoem</a>: a little poetry display program.
<li><a href="../../samples/wxsocket">wxsocket</a>: demonstrates the TCP/IP family of classes.
</ul>
<hr>
</font>
</BODY>
</HTML>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

View File

@@ -1,37 +0,0 @@
<HTML>
<HEAD>
<TITLE>Welcome to wxWindows 2</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT=#000000 LINK=#FF0000 VLINK=#000000>
<font face="Arial, Lucida Sans, Helvetica">
<a name="top"></a>
<table width=100% border=4 cellpadding=5 cellspacing=0>
<tr>
<td bgcolor="#660000">
<font size=+1 face="Arial, Lucida Sans, Helvetica" color="#FFFFFF">
Welcome to wxWindows 2
</font>
</td>
</tr>
</table>
<P>
Welcome to wxWindows 2, the premiere cross-platform GUI C++ framework.<P>
Please click on <a href="html/index.htm">docs/html/index.htm</a> to view the main document index.<P>
Have fun!<P>
</font>
</BODY>
</HTML>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 225 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 242 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 198 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 231 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 109 B

View File

@@ -1,16 +0,0 @@
[OPTIONS]
TITLE=wxWindows Porting Guide
CONTENTS=Contents
COMPRESS=HIGH
[FILES]
porting.rtf
[CONFIG]
CreateButton("Up", "&Up", "JumpId(`porting.hlp', `Contents')")
BrowseButtons()
[MAP]
[BITMAPS]

View File

@@ -1,498 +0,0 @@
\documentstyle[a4,makeidx,verbatim,texhelp,fancyhea,mysober,mytitle]{report}
\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
\parskip=10pt
\parindent=0pt
\title{Guide to porting applications from wxWindows 1.xx to 2.0}
\author{Julian Smart}
\date{March 1999}
\makeindex
\begin{document}
\maketitle
\pagestyle{fancyplain}
\bibliographystyle{plain}
\setheader{{\it CONTENTS}}{}{}{}{}{{\it CONTENTS}}
\setfooter{\thepage}{}{}{}{}{\thepage}%
\pagenumbering{roman}
\tableofcontents
%
\chapter{About this document}\label{about}
\pagenumbering{arabic}%
\setheader{{\it Porting guide}}{}{}{}{}{{\it Porting guide}}%
\setfooter{\thepage}{}{}{}{}{\thepage}%
This document gives guidelines and tips for porting applications from
version 1.xx of wxWindows to version 2.0.
The first section offers tips for writing 1.xx applications in a way to
minimize porting time. The following sections detail the changes and
how you can modify your application to be 2.0-compliant.
You may be worrying that porting to 2.0 will be a lot of work,
particularly if you have only recently started using 1.xx. In fact,
the wxWindows 2.0 API has far more in common with 1.xx than it has differences.
The main challenges are using the new event system, doing without the default
panel item layout, and the lack of automatic labels in some controls.
Please don't be freaked out by the jump to 2.0! For one thing, 1.xx is still available
and will be supported by the user community for some time. And when you have
changed to 2.0, we hope that you will appreciate the benefits in terms
of greater flexibility, better user interface aesthetics, improved C++ conformance,
improved compilation speed, and many other enhancements. The revised architecture
of 2.0 will ensure that wxWindows can continue to evolve for the forseeable
future.
{\it Please note that this document is a work in progress.}
\chapter{Preparing for version 2.0}\label{preparing}
Even before compiling with version 2.0, there's also a lot you can do right now to make porting
relatively simple. Here are a few tips.
\begin{itemize}
\item {\bf Use constraints or .wxr resources} for layout, rather than the default layout scheme.
Constraints should be the same in 2.0, and resources will be translated.
\item {\bf Use separate wxMessage items} instead of labels for wxText, wxMultiText,
wxChoice, wxComboBox. These labels will disappear in 2.0. Use separate
wxMessages whether you're creating controls programmatically or using
the dialog editor. The future dialog editor will be able to translate
from old to new more accurately if labels are separated out.
\item {\bf Parameterise functions that use wxDC} or derivatives, i.e. make the wxDC
an argument to all functions that do drawing. Minimise the use of
wxWindow::GetDC and definitely don't store wxDCs long-term
because in 2.0, you can't use GetDC() and wxDCs are not persistent.
You will use wxClientDC, wxPaintDC stack objects instead. Minimising
the use of GetDC() will ensure that there are very few places you
have to change drawing code for 2.0.
\item {\bf Don't set GDI objects} (wxPen, wxBrush etc.) in windows or wxCanvasDCs before they're
needed (e.g. in constructors) - do so within your drawing routine instead. In
2.0, these settings will only take effect between the construction and destruction
of temporary wxClient/PaintDC objects.
\item {\bf Don't rely} on arguments to wxDC functions being floating point - they will
be 32-bit integers in 2.0.
\item {\bf Don't use the wxCanvas member functions} that duplicate wxDC functions, such as SetPen and DrawLine, since
they are going.
\item {\bf Using member callbacks} called from global callback functions will make the transition
easier - see the FAQ
for some notes on using member functions for callbacks. wxWindows 2.0 will banish global
callback functions (and OnMenuCommand), and nearly all event handling will be done by functions taking a single event argument.
So in future you will have code like:
{\small\begin{verbatim}
void MyFrame::OnOK(wxCommandEvent& event)
{
...
}
\end{verbatim}
}%
You may find that writing the extra code to call a member function isn't worth it at this stage,
but the option is there.
\item {\bf Use wxString wherever possible.} 2.0 replaces char * with wxString
in most cases, and if you use wxString to receive strings returned from
wxWindows functions (except when you need to save the pointer if deallocation is required), there should
be no conversion problems later on.
\item Be aware that under Windows, {\bf font sizes will change} to match standard Windows
font sizes (for example, a 12-point font will appear bigger than before). Write your application
to be flexible where fonts are concerned.
Don't rely on fonts being similarly-sized across platforms, as they were (by chance) between
Windows and X under wxWindows 1.66. Yes, this is not easy... but I think it's better to conform to the
standards of each platform, and currently the size difference makes it difficult to
conform to Windows UI standards. You may eventually wish to build in a global 'fudge-factor' to compensate
for size differences. The old font sizing will still be available via wx\_setup.h, so do not panic...
\item {\bf Consider dropping wxForm usage}:
wxPropertyFormView can be used in a wxForm-like way, except that you specify a pre-constructed panel
or dialog; or you can use a wxPropertyListView to show attributes in a scrolling list - you don't even need
to lay panel items out.
Because wxForm uses a number of features to be dropped in wxWindows 2.0, it cannot be
supported in the future, at least in its present state.
\item {\bf When creating a wxListBox}, put the wxLB\_SINGLE, wxLB\_MULTIPLE, wxLB\_EXTENDED styles in the window style parameter, and put
zero in the {\it multiple} parameter. The {\it multiple} parameter will be removed in 2.0.
\item {\bf For MDI applications}, don't reply on MDI being run-time-switchable in the way that the
MDI sample is. In wxWindows 2.0, MDI functionality is separated into distinct classes.
\end{itemize}
\chapter{The new event system}\label{eventsystem}
The way that events are handled has been radically changed in wxWindows 2.0. Please
read the topic `Event handling overview' in the wxWindows 2.0 manual for background
on this.
\section{Callbacks}
Instead of callbacks for panel items, menu command events, control commands and other events are directed to
the originating window, or an ancestor, or an event handler that has been plugged into the window
or its ancestor. Event handlers always have one argument, a derivative of wxEvent.
For menubar commands, the {\bf OnMenuCommand} member function will be replaced by a series of separate member functions,
each of which responds to a particular command. You need to add these (non-virtual) functions to your
frame class, add a DECLARE\_EVENT\_TABLE entry to the class, and then add an event table to
your implementation file, as a BEGIN\_EVENT\_TABLE and END\_EVENT\_TABLE block. The
individual event mapping macros will be of the form:
\begin{verbatim}
BEGIN_EVENT_TABLE(MyFrame, wxFrame)
EVT_MENU(MYAPP_NEW, MyFrame::OnNew)
EVT_MENU(wxID_EXIT, MyFrame::OnExit)
END_EVENT_TABLE()
\end{verbatim}
Control commands, such as button commands, can be routed to a derived button class,
the parent window, or even the frame. Here, you use a function of the form EVT\_BUTTON(id, func).
Similar macros exist for other control commands.
\section{Other events}
To intercept other events, you used to override virtual functions, such as OnSize. Now, while you can use
the OnSize name for such event handlers (or any other name of your choice), it has only a single argument
(wxSizeEvent) and must again be `mapped' using the EVT\_SIZE macro. The same goes for all other events,
including OnClose (although in fact you can still use the old, virtual form of OnClose for the time being).
\chapter{Class hierarchy}\label{classhierarchy}
The class hierarchy has changed somewhat. wxToolBar and wxButtonBar
classes have been split into several classes, and are derived from wxControl (which was
called wxItem). wxPanel derives from wxWindow instead of from wxCanvas, which has
disappeared in favour of wxScrolledWindow (since all windows are now effectively canvases
which can be drawn into). The status bar has become a class in its own right, wxStatusBar.
There are new MDI classes so that wxFrame does not have to be overloaded with this
functionality.
There are new device context classes, with wxPanelDC and wxCanvasDC disappearing.
See \helpref{Device contexts and painting}{dc}.
\chapter{GDI objects}\label{gdiobjects}
These objects - instances of classes such as wxPen, wxBrush, wxBitmap (but not wxColour) -
are now implemented with reference-counting. This makes assignment a very cheap operation,
and also means that management of the resource is largely automatic. You now pass {\it references} to
objects to functions such as wxDC::SetPen, not pointers, so you will need to derefence your pointers.
The device context does not store a copy of the pen
itself, but takes a copy of it (via reference counting), and the object's data gets freed up
when the reference count goes to zero. The application does not have to worry so much about
who the object belongs to: it can pass the reference, then destroy the object without
leaving a dangling pointer inside the device context.
For the purposes of code migration, you can use the old style of object management - maintaining
pointers to GDI objects, and using the FindOrCreate... functions. However, it is preferable to
keep this explicit management to a minimum, instead creating objects on the fly as needed, on the stack,
unless this causes too much of an overhead in your application.
At a minimum, you will have to make sure that calls to SetPen, SetBrush etc. work. Also, where you pass NULL to these
functions, you will need to use an identifier such as wxNullPen or wxNullBrush.
\chapter{Dialogs and controls}\label{dialogscontrols}
\wxheading{Labels}
Most controls no longer have labels and values as they used to in 1.xx. Instead, labels
should be created separately using wxStaticText (the new name for wxMessage). This will
need some reworking of dialogs, unfortunately; programmatic dialog creation that doesn't
use constraints will be especially hard-hit. Perhaps take this opportunity to make more
use of dialog resources or constraints. Or consider using the wxPropertyListView class
which can do away with dialog layout issues altogether by presenting a list of editable
properties.
\wxheading{Constructors}
All window constructors have two main changes, apart from the label issue mentioned above.
Windows now have integer identifiers; and position and size are now passed as wxPoint and
wxSize objects. In addition, some windows have a wxValidator argument.
\wxheading{Show versus ShowModal}
If you have used or overridden the {\bf wxDialog::Show} function in the past, you may find
that modal dialogs no longer work as expected. This is because the function for modal showing
is now {\bf wxDialog:ShowModal}. This is part of a more fundamental change in which a
control may tell the dialog that it caused the dismissal of a dialog, by
calling {\bf wxDialog::EndModal} or {\bf wxWindow::SetReturnCode}. Using this
information, {\bf ShowModal} now returns the id of the control that caused dismissal,
giving greater feedback to the application than just TRUE or FALSE.
If you overrode or called {\bf wxDialog::Show}, use {\bf ShowModal} and test for a returned identifier,
commonly wxID\_OK or wxID\_CANCEL.
\wxheading{wxItem}
This is renamed wxControl.
\wxheading{wxText, wxMultiText and wxTextWindow}
These classes no longer exist and are replaced by the single class wxTextCtrl.
Multi-line text items are created using the wxTE\_MULTILINE style.
\wxheading{wxButton}
Bitmap buttons are now a separate class, instead of being part of wxBitmap.
\wxheading{wxMessage}
Bitmap messages are now a separate class, wxStaticBitmap, and wxMessage
is renamed wxStaticText.
\wxheading{wxGroupBox}
wxGroupBox is renamed wxStaticBox.
\wxheading{wxForm}
Note that wxForm is no longer supported in wxWindows 2.0. Consider using the wxPropertyFormView class
instead, which takes standard dialogs and panels and associates controls with property objects.
You may also find that the new validation method, combined with dialog resources, is easier
and more flexible than using wxForm.
\chapter{Device contexts and painting}\label{dc}
In wxWindows 2.0, device contexts are used for drawing into, as per 1.xx, but the way
they are accessed and constructed is a bit different.
You no longer use {\bf GetDC} to access device contexts for panels, dialogs and canvases.
Instead, you create a temporary device context, which means that any window or control can be drawn
into. The sort of device context you create depends on where your code is called from. If
painting within an {\bf OnPaint} handler, you create a wxPaintDC. If not within an {\bf OnPaint} handler,
you use a wxClientDC or wxWindowDC. You can still parameterise your drawing code so that it
doesn't have to worry about what sort of device context to create - it uses the DC it is passed
from other parts of the program.
You {\bf must } create a wxPaintDC if you define an OnPaint handler, even if you do not
actually use this device context, or painting will not work correctly under Windows.
If you used device context functions with wxPoint or wxIntPoint before, please note
that wxPoint now contains integer members, and there is a new class wxRealPoint. wxIntPoint
no longer exists.
wxMetaFile and wxMetaFileDC have been renamed to wxMetafile and wxMetafileDC.
\chapter{Miscellaneous}
\section{Strings}
wxString has replaced char* in the majority of cases. For passing strings into functions,
this should not normally require you to change your code if the syntax is otherwise the
same. This is because C++ will automatically convert a char* or const char* to a wxString by virtue
of appropriate wxString constructors.
However, when a wxString is returned from a function in wxWindows 2.0 where a char* was
returned in wxWindows 1.xx, your application will need to be changed. Usually you can
simplify your application's allocation and deallocation of memory for the returned string,
and simply assign the result to a wxString object. For example, replace this:
{\small\begin{verbatim}
char* s = wxFunctionThatReturnsString();
s = copystring(s); // Take a copy in case it's temporary
.... // Do something with it
delete[] s;
\end{verbatim}
}
with this:
{\small\begin{verbatim}
wxString s = wxFunctionThatReturnsString();
.... // Do something with it
\end{verbatim}
}
To indicate an empty return value or a problem, a function may return either the
empty string (``") or a null string. You can check for a null string with wxString::IsNull().
\section{Use of const}
The {\bf const} keyword is now used to denote constant functions that do not affect the
object, and for function arguments to denote that the object passed cannot be changed.
This should not affect your application except for where you are overriding virtual functions
which now have a different signature. If functions are not being called which were previously,
check whether there is a parameter mismatch (or function type mismatch) involving consts.
Try to use the {\bf const} keyword in your own code where possible.
\chapter{Backward compatibility}\label{compat}
Some wxWindows 1.xx functionality has been left to ease the transition to 2.0. This functionality
(usually) only works if you compile with WXWIN\_COMPATIBILITY set to 1 in setup.h.
Mostly this defines old names to be the new names (e.g. wxRectangle is defined to be wxRect).
\chapter{Quick reference}\label{quickreference}
This section allows you to quickly find features that
need to be converted.
\section{Include files}
Use the form:
\begin{verbatim}
#include <wx/wx.h>
#include <wx/button.h>
\end{verbatim}
For precompiled header support, use this form:
\begin{verbatim}
// For compilers that support precompilation, includes "wx.h".
#include <wx/wxprec.h>
#ifdef __BORLANDC__
#pragma hdrstop
#endif
// Any files you want to include if not precompiling by including
// the whole of <wx/wx.h>
#ifndef WX_PRECOMP
#include <stdio.h>
#include <wx/setup.h>
#include <wx/bitmap.h>
#include <wx/brush.h>
#endif
// Any files you want to include regardless of precompiled headers
#include <wx/toolbar.h>
\end{verbatim}
\section{IPC classes}
These are now separated out into wxDDEServer/Client/Connection (Windows only) and wxTCPServer/Client/Connection
(Windows and Unix). Take care to use wxString for your overridden function arguments, instead of char*, as per
the documentation.
\section{MDI style frames}
MDI is now implemented as a family of separate classes, so you can't switch to MDI just by
using a different frame style. Please see the documentation for the MDI frame classes, and the MDI
sample may be helpful too.
\section{OnActivate}
Replace the arguments with one wxActivateEvent\& argument, make sure the function isn't virtual,
and add an EVT\_ACTIVATE event table entry.
\section{OnChar}
This is now a non-virtual function, with the same wxKeyEvent\& argument as before.
Add an EVT\_CHAR macro to the event table
for your window, and the implementation of your function will need very few changes.
\section{OnClose}
The old virtual function OnClose is now obsolete.
Add an OnCloseWindow event handler using an EVT\_CLOSE event table entry. For details
about window destruction, see the Windows Deletion Overview in the manual. This is a subtle
topic so please read it very carefully. Basically, OnCloseWindow is now responsible for
destroying a window with Destroy(), but the default implementation (for example for wxDialog) may not
destroy the window, so to be sure, always provide this event handler so it's obvious what's going on.
\section{OnEvent}
This is now a non-virtual function, with the same wxMouseEvent\& argument as before. However
you may wish to rename it OnMouseEvent. Add an EVT\_MOUSE\_EVENTS macro to the event table
for your window, and the implementation of your function will need very few changes.
However, if you wish to intercept different events using different functions, you can
specify specific events in your event table, such as EVT\_LEFT\_DOWN.
Your OnEvent function is likely to have references to GetDC(), so make sure you create
a wxClientDC instead. See \helpref{Device contexts}{dc}.
If you are using a wxScrolledWindow (formerly wxCanvas), you should call
PrepareDC(dc) to set the correct translation for the current scroll position.
\section{OnMenuCommand}
You need to replace this virtual function with a series of non-virtual functions, one for
each case of your old switch statement. Each function takes a wxCommandEvent\& argument.
Create an event table for your frame
containing EVT\_MENU macros, and insert DECLARE\_EVENT\_TABLE() in your frame class, as
per the samples.
\section{OnPaint}
This is now a non-virtual function, with a wxPaintEvent\& argument.
Add an EVT\_PAINT macro to the event table
for your window.
Your function {\it must} create a wxPaintDC object, instead of using GetDC to
obtain the device context.
If you are using a wxScrolledWindow (formerly wxCanvas), you should call
PrepareDC(dc) to set the correct translation for the current scroll position.
\section{OnSize}
Replace the arguments with one wxSizeEvent\& argument, make it non-virtual, and add to your
event table using EVT\_SIZE.
\section{wxApp definition}
The definition of OnInit has changed. Return a bool value, not a wxFrame.
Also, do {\it not} declare a global application object. Instead, use the macros
DECLARE\_APP and IMPLEMENT\_APP as per the samples. Remove any occurrences of IMPLEMENT\_WXWIN\_MAIN:
this is subsumed in IMPLEMENT\_APP.
\section{wxButton}
For bitmap buttons, use wxBitmapButton.
\section{wxCanvas}
Change the name to wxScrolledWindow.
\section{wxDialogBox}
Change the name to wxDialog, and for modal dialogs, use ShowModal instead of Show.
\section{wxDialog::Show}
If you used {\bf Show} to show a modal dialog or to override the standard
modal dialog {\bf Show}, use {\bf ShowModal} instead.
\wxheading{See also}
\helpref{Dialogs and controls}{dialogscontrols}
\section{wxForm}
Sorry, this class is no longer available. Try using the wxPropertyListView or wxPropertyFormView class
instead, or use .wxr files and validators.
\section{wxPoint}
The old wxPoint is called wxRealPoint, and wxPoint now uses integers.
\section{wxRectangle}
This is now called wxRect.
\section{wxScrollBar}
The function names have changed for this class: please refer to the documentation for wxScrollBar. Instead
of setting properties individually, you will call SetScrollbar with several parameters.
\section{wxText, wxMultiText, wxTextWindow}
Change all these to wxTextCtrl. Add the window style wxTE\_MULTILINE if you
wish to have a multi-line text control.
\section{wxToolBar}
This name is an alias for the most popular form of toolbar for your platform. There is now a family
of toolbar classes, with for example wxToolBar95, wxToolBarMSW and wxToolBarSimple classes existing
under Windows 95.
Toolbar management is supported by frames, so calling wxFrame::CreateToolBar and adding tools is usually
enough, and the SDI or MDI frame will manage the positioning for you. The client area of the frame is the space
left over when the menu bar, toolbar and status bar have been taken into account.
\end{document}

View File

@@ -1,28 +0,0 @@
;;; Tex2RTF initialisation file for 16-bit Winhelp
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 = no
htmlBrowseButtons = bitmap
winHelpContents = yes
winHelpVersion = 3 ; 3 for Windows 3.x, 4 for Windows 95
winHelpTitle = "wxWindows Porting Guide"
truncateFilenames = yes
combineSubSections = yes
\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}}
\docparam [2]{\parskip{0}{\it #1}\par\parskip{10}\indented{1cm}{#2}}
\wxheading [1]{{\bf \fcol{blue}{#1}}}
\const [0] {{\bf const}}
\constfunc [3] {{\bf #1} {\bf #2}(#3) {\bf const}\index{#2}}

View File

@@ -1,289 +0,0 @@
% LaTeX style file
% Name: texhelp.sty
% Author: Julian Smart
%
% Purpose
% -------
% Style file to enable the simultaneous preparation of printed LaTeX and on-line
% hypertext manuals.
% Use in conjunction with Tex2RTF (see Tex2RTF documentation).
%
% Note that if a non-ASCII character starts a newline and there should be a space
% between the last word on the previous line and the first word on this line,
% you need to use \rtfsp to generate a space in Windows Help. \rtfsp is ignored
% in all other formats.
%
% Julian Smart
% Artificial Intelligence Applications Institute
%
%
% ============== C++/CLIPS Documentation Facilities ==============
%
% Each class definition should be typeset with e.g.
%
% \section{\class{Name}: Parent}
%
% followed by a description of the class.
% Each member should follow:
%
% \membersection{wxName::Member}
%
% with a description of what this member does.
% Then, one (or more if overloaded) member (function) in detail:
%
% \func{return type}{name}{args}
% or
% \member{type}{name}
%
% where args is a list of \param{type}{name}, ...
% Function, e.g.
% e.g. to typeset
%
% void DoIt(char *string);
%
% write:
%
% \func{void}{DoIt}{\param{char *}{string}}
%
\newcommand{\func}[3]{\hangafter=1\noindent\hangindent=10mm
{{\it #1} {\bf #2}\index{#2}}(#3)}
% For function/type definition where the name is a pointer,
% e.g. to typeset
%
% typedef void (*wxFunction)(wxObject&)
%
% write:
%
% \pfunc{typedef void}{wxFunction}{param{wxObject&}}
\newcommand{\pfunc}[3]{\hangafter=1\noindent\hangindent=10mm
{{\it #1} ({\bf *#2})\index{#2}}(#3)}
% Use an ordinary \section command for class name definitions.
% This is used for a member, such as wxBitmap: GetDepth
\newcommand{\membersection}[1]{\subsection*{#1}\index{#1}}
% CLIPS function
\newcommand{\clipsfunc}[3]{\hangafter=1\noindent\hangindent=10mm
{{\bf #1} ({\bf #2}\index{#2}}#3)}
\newcommand{\clipssection}[1]{\chapter{#1}}
% This is used for a CLIPS function name
\newcommand{\functionsection}[1]{\subsection*{#1}}
% Member: a type and a name
\newcommand{\member}[2]{{\bf #1 \it #2}}
% C++ Parameter: a type and a name (no intervening space)
\newcommand{\param}[2]{{\it #1}{\bf #2}}
% CLIPS Parameter: a type and a name (one intervening space)
\newcommand{\cparam}[2]{{\bf #1} {\it #2}}
% Class: puts in index
\newcommand{\class}[1]{#1\index{#1}}
% Void type
\newcommand{\void}{{\it void}}
% Typeset destructor
\newcommand{\destruct}[1]{{$\sim$}#1}
% Typeset insert/extract operators
\newcommand{\cinsert}{$<<$}
\newcommand{\cextract}{$>>$}
% =================== Hypertext facilities ===================
%
% To insert hyperlinks (or references, in Latex), \label the sections
% or membersections \label{ref-label} immediately after the section, on the same line,
% and use \helpref{text-to-show}{ref-label} to make a reference.
%
% Type text with section reference
\newcommand{\helpref}[2]{{\it #1} (p.\ \pageref{#2}) }
% Type text with URL in verbatim mode
\newcommand{\urlref}[2]{#1 (\verb$#2$)}
% Don't typeset section number in LaTeX
\newcommand{\helprefn}[2]{{\it #1}}
% Like helpref, but popup text in WinHelp instead of hyperlinked
\newcommand{\popref}[2]{{\it #1}}
% Like footnote, but popup text.
\newcommand{\footnotepopup}[2]{{\it #1}\footnote{#2}}
% =================== On-line help specific macros ===================
%
% Global document font size/family, help only.
\newcommand{\helpfontsize}[1]{}
\newcommand{\helpfontfamily}[1]{}
% Ignore in all on-line help
\newcommand{\helpignore}[1]{#1}
% Only print in all on-line help
\newcommand{\helponly}[1]{}
% Ignore in LaTeX
\newcommand{\latexignore}[1]{}
% Only print in LaTeX
\newcommand{\latexonly}[1]{#1}
% Ignore in linear RTF
\newcommand{\rtfignore}[1]{#1}
% Only print in linear RTF
\newcommand{\rtfonly}[1]{}
% Ignore in WinHelp RTF
\newcommand{\winhelpignore}[1]{#1}
% Only print in WinHelp RTF
\newcommand{\winhelponly}[1]{}
% Ignore in wxHelp
\newcommand{\xlpignore}[1]{#1}
% Only print in wxHelp
\newcommand{\xlponly}[1]{}
% Ignore in HTML
\newcommand{\htmlignore}[1]{#1}
% Only print in HTML
\newcommand{\htmlonly}[1]{}
% Input a file only for help system (binder thickness is not a limitation
% in help systems!)
\newcommand{\helpinput}[1]{}
\newcommand{\rtfsp}{ } % Force a space in RTF, ignore in Latex
% =================== Miscellaneous macros ===================
%
% Headings consistent with generated ones
\newcommand{\myheading}[1]{\vspace*{25pt}
\begin{flushleft}
{\LARGE \bf #1}
\end{flushleft}
\vskip 20pt
}
% Heading with entry in contents page.
\newcommand{\chapterheading}[1]{\myheading{#1}
\addcontentsline{toc}{chapter}{#1}}
\newcommand{\sectionheading}[1]{\myheading{#1}
\addcontentsline{toc}{section}{#1}}
% Glossary environment
\newenvironment{helpglossary}{\newpage\chapterheading{Glossary}\begin{description}}{\end{description}}
% Glossary entry
\newcommand{\gloss}[1]{\item[#1]\index{#1}}
% Image: EPS in Latex, BMP or MF (whatever's available) in RTF. Requires psbox.
\newcommand{\image}[2]{\psboxto(#1){#2}}
% Image, left aligned (HTML)
\newcommand{\imager}[2]{\psboxto(#1){#2}}
% Image, right aligned (HTML)
\newcommand{\imagel}[2]{\psboxto(#1){#2}}
% Imagemap: principally for HTML only. In Latex,
% acts like \image.
\newcommand{\imagemap}[3]{\psboxto(#1){#2}}
% Headers and footers
% \setheader{EvenPageLeft}{EvenPageCentre}{EvenPageRight}
% {OddPageLeft}{OddPageCentre}{OddPageRight}
\newcommand{\setheader}[6]{
\lhead[\fancyplain{}{#1}]{\fancyplain{}{#4}}
\chead[\fancyplain{}{#2}]{\fancyplain{}{#5}}
\rhead[\fancyplain{}{#3}]{\fancyplain{}{#6}}
}
% \setfooter{EvenPageLeft}{EvenPageCentre}{EvenPageRight}
% {OddPageLeft}{OddPageCentre}{OddPageRight}
\newcommand{\setfooter}[6]{
\lfoot[\fancyplain{#1}{#1}]{\fancyplain{#4}{#4}}
\cfoot[\fancyplain{#2}{#2}]{\fancyplain{#5}{#5}}
\rfoot[\fancyplain{#3}{#3}]{\fancyplain{#6}{#6}}
}
% Needed for telling RTF where margin paragraph should go
% in mirrored margins mode.
\newcommand{\marginpareven}[1]{\hspace*{0pt}\marginpar{#1}}
\newcommand{\marginparodd}[1]{\hspace*{0pt}\marginpar{#1}}
% Environment for two-column table popular in WinHelp and manuals.
\newcommand{\twocolwidtha}[1]{\def\twocolwidthaval{#1}}
\newcommand{\twocolwidthb}[1]{\def\twocolwidthbval{#1}}
\newcommand{\twocolspacing}[1]{\def\twocolspacingval{#1}}
\twocolwidtha{3cm}
\twocolwidthb{8.5cm}
\twocolspacing{2}
\newcommand{\twocolitem}[2]{#1 & #2\\}
\newcommand{\twocolitemruled}[2]{#1 & #2\\\hline}
\newenvironment{twocollist}{\renewcommand{\arraystretch}{\twocolspacingval}\begin{tabular}{lp{\twocolwidthbval}}}%
{\end{tabular}\renewcommand{\arraystretch}{1}}
% Specifying table rows for RTF compatibility
\newcommand{\row}[1]{#1\\}
% Use for the last ruled row for correct RTF generation.
\newcommand{\ruledrow}[1]{#1\\\hline}
% Indentation environment. Arg1 is left margin size
\newenvironment{indented}[1]{\begin{list}{}{\leftmargin=#1}\item[]}%
{\end{list}}
% Framed box of text, normal formatting.
\newcommand{\normalbox}[1]{\fbox{\vbox{#1}}}
% Double-framed box of text.
\newcommand{\normalboxd}[1]{\fbox{\fbox{\vbox{#1}}}}
% WITHDRAWN -- can't do in RTF, easily.
% Framed box of text, horizontally centred. Ragged right within box.
% \newcommand{\centeredbox}[2]{\begin{center}\fbox{\parbox{#1}{\raggedright#2}}\end{center}}
% Double-framed box of text, horizontally centred. Ragged right within box.
% \newcommand{\centeredboxd}[2]{\begin{center}\fbox{\fbox{\parbox{#1}{\raggedright#2}}}\end{center}}
% toocomplex environment: simply prints the argument in LaTeX,
% comes out verbatim in all generated formats.
\newenvironment{toocomplex}{}{}
% Colour: dummy commands since LaTeX doesn't support colour.
% \definecolour{name}{red}{blue}{green}
% \fcol{name}{text} ; Foreground
% \bcol{name}{text} ; Background
\newcommand{\definecolour}[4]{}
\newcommand{\definecolor}[4]{}
\newcommand{\fcol}[2]{#2}
\newcommand{\bcol}[2]{#2}
\newcommand{\sethotspotcolour}[1]{}
\newcommand{\sethotspotunderline}[1]{}
\newcommand{\settransparency}[1]{}
\newcommand{\backslashraw}[0]{}
\newcommand{\lbraceraw}[0]{}
\newcommand{\rbraceraw}[0]{}
\newcommand{\registered}[0]{(r)}
\newcommand{\background}[1]{}
\newcommand{\textcolour}[1]{}
\newcommand{\overview}[2]{See \helpref{#1}{#2}.}
\newcommand{\docparam}[2]{{\it #1}\begin{list}{}{\leftmargin=1cm}\item[]
#2%
\end{list}}
\newcommand{\wxheading}[1]{{\bf #1}}
\newcommand{\const}[0]{{\bf const}}
\newcommand{\constfunc}[3]{{\bf #1} {\bf #2}(#3) {\bf const}\index{#2}}

View File

@@ -1 +0,0 @@
GIF87a

Before

Width:  |  Height:  |  Size: 6 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 226 B

View File

@@ -1,106 +0,0 @@
\chapter{Introduction}\label{introduction}
\pagenumbering{arabic}%
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}%
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}{appearance} 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}{propertyoverview}.
\section{The appearance and behaviour of a property list view}\label{appearance}
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.
$$\image{8cm;0cm}{prop1.eps}$$\\
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.
$$\image{8cm;0cm}{prop2.eps}$$
\chapter{Files}\label{files}
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}%
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
\item prop.cpp: base property class implementation
\item proplist.cpp: wxPropertyListView and associated class implementions
\item propform.cpp: wxPropertyFormView and associated class implementions
\end{itemize}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 243 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 138 B

View File

@@ -1,27 +0,0 @@
\chapter{Change log}\label{changes}
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}%
January - December 1998, Version 2.0
\begin{itemize}\itemsep=0pt
\item Conversion to wxWindows 2.0.
\end{itemize}
November 26th 1995, Version 1.1
\begin{itemize}\itemsep=0pt
\item Added wxListOfStringsListValidator - allows adding, deleting, editing
strings.
\item Added wxPropertyValue::ClearList, wxPropertyValue::Delete,
wxPropertyValue::wxPropertyValue(wxStringList *).
\item Added wxPropertyValue::Set/GetModified, wxPropertySheet::SetAllModified.
\item Added wxPropertyView::OnPropertyChanged support, for immediate feedback.
\end{itemize}
October 1995, Version 1.0
\begin{itemize}\itemsep=0pt
\item First release.
\end{itemize}

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 231 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 164 B

View File

@@ -1,47 +0,0 @@
\documentstyle[a4,makeidx,verbatim,texhelp,fancyhea,mysober,mytitle]{report}
\input psbox.tex
% Remove this for processing with dvi2ps instead of dvips
%\special{!/@scaleunit 1 def}
\parskip=10pt
\parindent=0pt
\title{User Manual for wxWindows Property Sheet Classes Version 2.0}
\winhelponly{\author{by Julian Smart, Anthemion Software\\$$\image{}{prop1}$$}}
\winhelpignore{\author{Julian Smart, Anthemion Software}
\date{December 1998}
}
\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) 1998 Julian Smart, Anthemion Software
\end{center}
Please see the wxWindows licence for conditions of use.
\input{body.tex}
\input{classes.tex}
\input{changes.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}%
}
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

View File

@@ -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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

View File

@@ -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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

View File

@@ -1,39 +0,0 @@
Prototype dialog editor and property sheet classes
--------------------------------------------------
Julian Smart, October 4th 1995
------------------------------
Here's what I've done so far on a lightweight dialog editor. The 16-bit
Windows binaries in the bin directory are dialoged.exe (the dialog
editor) and test.exe (a small property sheet demo).
Main points:
- You can create a new dialog box and add items to it.
- You can move items around, and right-click
to edit a few properties (very incomplete).
- Can't write out .wxr files yet. Loading code is in
wxWindows, but writing code is absent: should be put
into wxWindows.
- No attempt at resources other than dialogs yet.
Should have menu editor too.
- Should *somehow* have a protocol to allow
existing resources e.g. in wxCLIPS/wxPython
to be edited in situ.
This should be made simpler by the existance of
the plug-in event handler mechanism, which means you
can temporarily handle all the events yourself.
- See dialoged.cc: the main program is tiny because
it's meant to be embeddable.
- The wxPropertySheet (set of) classes are very
general and should be put into wxWin and documented.
Comments, chivvying and help all appreciated. Maybe if
I documented what I had, it would be easier for others
to do some work on it.
Regards,
Julian

View File

@@ -1,21 +0,0 @@
runTwice = yes
titleFontSize = 12
authorFontSize = 10
chapterFontSize = 12
sectionFontSize = 12
subsectionFontSize = 12
headerRule = yes
footerRule = yes
useHeadingStyles = yes
contentsDepth = 2
listItemIndent=40
generateHPJ = yes
htmlBrowseButtons = bitmap
winHelpVersion = 3
winHelpContents = yes
winHelpTitle = "Property Classes Manual"
truncateFilenames = yes
\overview [2] {\rtfonly{See also }\sethotspotcolour{off}\sethotspotunderline{on}\winhelponly{\image{}{books.bmp}}
\htmlonly{\image{}{books.gif}}\helpref{#1}{#2}
\sethotspotcolour{on}\sethotspotunderline{on}}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 137 B

View File

@@ -1,17 +0,0 @@
[OPTIONS]
BMROOT=d:\wx2\wxWind~1\utils\wxprop\docs ; Assume that bitmaps are where the source is
TITLE=Property Classes Manual
CONTENTS=Contents
COMPRESS=HIGH
[FILES]
wxprop.rtf
[CONFIG]
CreateButton("Up", "&Up", "JumpId(`wxprop.hlp', `Contents')")
BrowseButtons()
[MAP]
[BITMAPS]

View File

@@ -1,13 +0,0 @@
WX.GID
WX.HLP
wx.ref
wx.cnt
Wx.rtf
Wx.con
minimald.hpj
minimald.ref
minimald.con
MINIMALD.HLP
minimald.GID
minimald.cnt
minimald.rtf

View File

@@ -1,198 +0,0 @@
\section{\class{wxAcceleratorEntry}}\label{wxacceleratorentry}
An object used by an application wishing to create an \helpref{accelerator table}{wxacceleratortable}.
\wxheading{Derived from}
None
\wxheading{Include files}
<wx/accel.h>
\wxheading{See also}
\helpref{wxAcceleratorTable}{wxacceleratortable}, \helpref{wxWindow::SetAcceleratorTable}{wxwindowsetacceleratortable}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxAcceleratorEntry::wxAcceleratorEntry}\label{wxacceleratorentryconstr}
\func{}{wxAcceleratorEntry}{\void}
Default constructor.
\func{}{wxAcceleratorEntry}{\param{int}{ flags}, \param{int}{ keyCode}, \param{int}{ cmd}}
Constructor.
\wxheading{Parameters}
\docparam{flags}{One of wxACCEL\_SHIFT, wxACCEL\_CTRL and wxACCEL\_NORMAL. Indicates
which modifier key is held down.}
\docparam{keyCode}{The keycode to be detected. See \helpref{Keycodes}{keycodes} for a full list of keycodes.}
\docparam{cmd}{The menu or control command identifier.}
\membersection{wxAcceleratorEntry::GetCommand}\label{wxacceleratorentrygetcommand}
\constfunc{int}{GetCommand}{\void}
Returns the command identifier for the accelerator table entry.
\membersection{wxAcceleratorEntry::GetFlags}\label{wxacceleratorentrygetflags}
\constfunc{int}{GetFlags}{\void}
Returns the flags for the accelerator table entry.
\membersection{wxAcceleratorEntry::GetKeyCode}\label{wxacceleratorentrygetkeycode}
\constfunc{int}{GetKeyCode}{\void}
Returns the keycode for the accelerator table entry.
\membersection{wxAcceleratorEntry::Set}\label{wxacceleratorentryset}
\func{void}{Set}{\param{int}{ flags}, \param{int}{ keyCode}, \param{int}{ cmd}}
Sets the accelerator entry parameters.
\wxheading{Parameters}
\docparam{flags}{One of wxACCEL\_SHIFT, wxACCEL\_CTRL and wxACCEL\_NORMAL. Indicates
which modifier key is held down.}
\docparam{keyCode}{The keycode to be detected. See \helpref{Keycodes}{keycodes} for a full list of keycodes.}
\docparam{cmd}{The menu or control command identifier.}
\section{\class{wxAcceleratorTable}}\label{wxacceleratortable}
An accelerator table allows the application to specify a table of keyboard shortcuts for
menus or other commands. On Windows, menu or button commands are supported; on GTK,
only menu commands are supported.
The object {\bf wxNullAcceleratorTable} is defined to be a table with no data, and is the
initial accelerator table for a window.
\wxheading{Derived from}
\helpref{wxObject}{wxobject}
\wxheading{Include files}
<wx/accel.h>
\wxheading{Example}
{\small%
\begin{verbatim}
wxAcceleratorEntry entries[4];
entries[0].Set(wxACCEL_CTRL, (int) 'N', ID_NEW_WINDOW);
entries[1].Set(wxACCEL_CTRL, (int) 'X', wxID_EXIT);
entries[2].Set(wxACCEL_SHIFT, (int) 'A', ID_ABOUT);
entries[3].Set(wxACCEL_NONE, WXK_DELETE, wxID_CUT);
wxAcceleratorTable accel(4, entries);
frame->SetAcceleratorTable(accel);
\end{verbatim}
}
\wxheading{Remarks}
An accelerator takes precedence over normal processing and can be a convenient way to program some event handling.
For example, you can use an accelerator table to enable a dialog with a multi-line text control to
accept CTRL-Enter as meaning 'OK' (but not in GTK at present).
\wxheading{See also}
\helpref{wxAcceleratorEntry}{wxacceleratorentry}, \helpref{wxWindow::SetAcceleratorTable}{wxwindowsetacceleratortable}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxAcceleratorTable::wxAcceleratorTable}\label{wxacceleratortableconstr}
\func{}{wxAcceleratorTable}{\void}
Default constructor.
\func{}{wxAcceleratorTable}{\param{const wxAcceleratorTable\& }{bitmap}}
Copy constructor.
\func{}{wxAcceleratorTable}{\param{int}{ n}, \param{wxAcceleratorEntry}{ entries[]}}
Creates from an array of \helpref{wxAcceleratorEntry}{wxacceleratorentry} objects.
\func{}{wxAcceleratorTable}{\param{const wxString\&}{ resource}}
Loads the accelerator table from a Windows resource (Windows only).
\wxheading{Parameters}
\docparam{n}{Number of accelerator entries.}
\docparam{entries}{The array of entries.}
\docparam{resource}{Name of a Windows accelerator.}
\membersection{wxAcceleratorTable::\destruct{wxAcceleratorTable}}
\func{}{\destruct{wxAcceleratorTable}}{\void}
Destroys the wxAcceleratorTable object.
\membersection{wxAcceleratorTable::Ok}\label{wxacceleratortableok}
\constfunc{bool}{Ok}{\void}
Returns TRUE if the accelerator table is valid.
\membersection{wxAcceleratorTable::operator $=$}
\func{wxAcceleratorTable\& }{operator $=$}{\param{const wxAcceleratorTable\& }{accel}}
Assignment operator. This operator does not copy any data, but instead
passes a pointer to the data in {\it accel} and increments a reference
counter. It is a fast operation.
\wxheading{Parameters}
\docparam{accel}{Accelerator table to assign.}
\wxheading{Return value}
Returns 'this' object.
\membersection{wxAcceleratorTable::operator $==$}
\func{bool}{operator $==$}{\param{const wxAcceleratorTable\& }{accel}}
Equality operator. This operator tests whether the internal data pointers are
equal (a fast test).
\wxheading{Parameters}
\docparam{accel}{Accelerator table to compare with 'this'}
\wxheading{Return value}
Returns TRUE if the accelerator tables were effectively equal, FALSE otherwise.
\membersection{wxAcceleratorTable::operator $!=$}
\func{bool}{operator $!=$}{\param{const wxAcceleratorTable\& }{accel}}
Inequality operator. This operator tests whether the internal data pointers are
unequal (a fast test).
\wxheading{Parameters}
\docparam{accel}{Accelerator table to compare with 'this'}
\wxheading{Return value}
Returns TRUE if the accelerator tables were unequal, FALSE otherwise.

View File

@@ -1,60 +0,0 @@
\section{\class{wxActivateEvent}}\label{wxactivateevent}
An activate event is sent when a window or application is being activated
or deactivated.
\wxheading{Derived from}
\helpref{wxEvent}{wxevent}\\
\helpref{wxObject}{wxobject}
\wxheading{Include files}
<wx/event.h>
\wxheading{Event table macros}
To process an activate event, use these event handler macros to direct input to a member
function that takes a wxActivateEvent argument.
\twocolwidtha{7cm}
\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf EVT\_ACTIVATE(func)}}{Process a wxEVT\_ACTIVATE event.}
\twocolitem{{\bf EVT\_ACTIVATE\_APP(func)}}{Process a wxEVT\_ACTIVATE\_APP event.}
\end{twocollist}%
\wxheading{Remarks}
A top-level window (a dialog or frame) receives an activate event when is
being activated or deactivated. This is indicated visually by the title
bar changing colour, and a subwindow gaining the keyboard focus.
An application is activated or deactivated when one of its frames becomes activated,
or a frame becomes inactivate resulting in all application frames being inactive. (Windows only)
\wxheading{See also}
\helpref{wxWindow::OnActivate}{wxwindowonactivate},\rtfsp
\helpref{wxApp::OnActivate}{wxapponactivate},\rtfsp
\helpref{Event handling overview}{eventhandlingoverview}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxActivateEvent::wxActivateEvent}
\func{}{wxActivateEvent}{\param{WXTYPE }{eventType = 0}, \param{bool}{ active = TRUE}, \param{int }{id = 0}}
Constructor.
\membersection{wxActivateEvent::m\_active}
\member{bool}{m\_active}
TRUE if the window or application was activated.
\membersection{wxActivateEvent::GetActive}\label{wxactivateeventgetactive}
\constfunc{bool}{GetActive}{\void}
Returns TRUE if the application or window is being activated, FALSE otherwise.

View File

@@ -1,443 +0,0 @@
\section{\class{wxApp}}\label{wxapp}
The {\bf wxApp} class represents the application itself. It is used
to:
\begin{itemize}\itemsep=0pt
\item set and get application-wide properties;
\item implement the windowing system message or event loop;
\item initiate application processing via \helpref{wxApp::OnInit}{wxapponinit};
\item allow default processing of events not handled by other
objects in the application.
\end{itemize}
You should use the macro IMPLEMENT\_APP(appClass) in your application implementation
file to tell wxWindows how to create an instance of your application class.
Use DECLARE\_APP(appClass) in a header file if you want the wxGetApp function (which returns
a reference to your application object) to be visible to other files.
\wxheading{Derived from}
\helpref{wxEvtHandler}{wxevthandler}\\
\helpref{wxObject}{wxobject}
\wxheading{Include files}
<wx/app.h>
\wxheading{See also}
\helpref{wxApp overview}{wxappoverview}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxApp::wxApp}
\func{void}{wxApp}{\void}
Constructor. Called implicitly with a definition of a wxApp object.
The argument is a language identifier; this is an experimental
feature and will be expanded and documented in future versions.
\membersection{wxApp::\destruct{wxApp}}
\func{void}{\destruct{wxApp}}{\void}
Destructor. Will be called implicitly on program exit if the wxApp
object is created on the stack.
\membersection{wxApp::argc}\label{wxappargc}
\member{int}{argc}
Number of command line arguments (after environment-specific processing).
\membersection{wxApp::argv}\label{wxappargv}
\member{char **}{argv}
Command line arguments (after environment-specific processing).
\membersection{wxApp::CreateLogTarget}\label{wxappcreatelogtarget}
\func{virtual wxLog*}{CreateLogTarget}{\void}
Creates a wxLog class for the application to use for logging errors. The default
implementation returns a new wxLogGui class.
\wxheading{See also}
\helpref{wxLog}{wxlog}
\membersection{wxApp::Dispatch}\label{wxappdispatch}
\func{void}{Dispatch}{\void}
Dispatches the next event in the windowing system event queue.
This can be used for programming event loops, e.g.
\begin{verbatim}
while (app.Pending())
Dispatch();
\end{verbatim}
\wxheading{See also}
\helpref{wxApp::Pending}{wxapppending}
\membersection{wxApp::GetAppName}\label{wxappgetappname}
\constfunc{wxString}{GetAppName}{\void}
Returns the application name.
\wxheading{Remarks}
wxWindows sets this to a reasonable default before
calling \helpref{wxApp::OnInit}{wxapponinit}, but the application can reset it at will.
\membersection{wxApp::GetAuto3D}\label{wxappgetauto3d}
\constfunc{bool}{GetAuto3D}{\void}
Returns TRUE if 3D control mode is on, FALSE otherwise.
\wxheading{See also}
\helpref{wxApp::SetAuto3D}{wxappsetauto3d}
\membersection{wxApp::GetClassName}\label{wxappgetclassname}
\constfunc{wxString}{GetClassName}{\void}
Gets the class name of the application. The class name may be used in a platform specific
manner to refer to the application.
\wxheading{See also}
\helpref{wxApp::SetClassName}{wxappsetclassname}
\membersection{wxApp::GetExitOnDelete}\label{wxappgetexitondelete}
\constfunc{bool}{GetExitOnDelete}{\void}
Returns TRUE if the application will exit when the top-level window is deleted, FALSE
otherwise.
\wxheading{See also}
\helpref{wxApp::SetExitOnDelete}{wxappsetexitondelete}
\membersection{wxApp::GetTopWindow}\label{wxappgettopwindow}
\constfunc{wxWindow *}{GetTopWindow}{\void}
Returns a pointer to the top window.
\wxheading{Remarks}
If the top window hasn't been set using \helpref{wxApp::SetTopWindow}{wxappsettopwindow}, this
function will find the first top-level window (frame or dialog) and return that.
\wxheading{See also}
\helpref{wxApp::SetTopWindow}{wxappsettopwindow}
\membersection{wxApp::ExitMainLoop}\label{wxappexitmainloop}
\func{void}{ExitMainLoop}{\void}
Call this to explicitly exit the main message (event) loop.
You should normally exit the main loop (and the application) by deleting
the top window.
\membersection{wxApp::Initialized}\label{wxappinitialized}
\func{bool}{Initialized}{\void}
Returns TRUE if the application has been initialized (i.e. if\rtfsp
\helpref{wxApp::OnInit}{wxapponinit} has returned successfully). This can be useful for error
message routines to determine which method of output is best for the
current state of the program (some windowing systems may not like
dialogs to pop up before the main loop has been entered).
\membersection{wxApp::MainLoop}\label{wxappmainloop}
\func{int}{MainLoop}{\void}
Called by wxWindows on creation of the application. Override this if you wish
to provide your own (environment-dependent) main loop.
\wxheading{Return value}
Returns 0 under X, and the wParam of the WM\_QUIT message under Windows.
\membersection{wxApp::OnActivate}\label{wxapponactivate}
\func{void}{OnActivate}{\param{wxActivateEvent\& }{event}}
Provide this member function to know whether the application is being
activated or deactivated (Windows only).
\wxheading{See also}
\helpref{wxWindow::OnActivate}{wxwindowonactivate}, \helpref{wxActivateEvent}{wxactivateevent}
\membersection{wxApp::OnExit}\label{wxapponexit}
\func{int}{OnExit}{\void}
Provide this member function for any processing which needs to be done as
the application is about to exit.
\membersection{wxApp::OnCharHook}\label{wxapponcharhook}
\func{void}{OnCharHook}{\param{wxKeyEvent\&}{ event}}
This event handler function is called (under Windows only) to allow the window to intercept keyboard events
before they are processed by child windows.
\wxheading{Parameters}
\docparam{event}{The keypress event.}
\wxheading{Remarks}
Use the wxEVT\_CHAR\_HOOK macro in your event table.
If you use this member, you can selectively consume keypress events by calling\rtfsp
\helpref{wxEvent::Skip}{wxeventskip} for characters the application is not interested in.
\wxheading{See also}
\helpref{wxKeyEvent}{wxkeyevent}, \helpref{wxWindow::OnChar}{wxwindowonchar},\rtfsp
\helpref{wxWindow::OnCharHook}{wxwindowoncharhook}, \helpref{wxDialog::OnCharHook}{wxdialogoncharhook}
\membersection{wxApp::OnIdle}\label{wxapponidle}
\func{void}{OnIdle}{\param{wxIdleEvent\& }{event}}
Override this member function for any processing which needs to be done
when the application is idle. You should call wxApp::OnIdle from your own function,
since this forwards OnIdle events to windows and also performs garbage collection for
windows whose destruction has been delayed.
wxWindows' strategy for OnIdle processing is as follows. After pending user interface events for an
application have all been processed, wxWindows sends an OnIdle event to the application object. wxApp::OnIdle itself
sends an OnIdle event to each application window, allowing windows to do idle processing such as updating
their appearance. If either wxApp::OnIdle or a window OnIdle function requested more time, by
caling \helpref{wxIdleEvent::ReqestMore}{wxidleeventrequestmore}, wxWindows will send another OnIdle
event to the application object. This will occur in a loop until either a user event is found to be
pending, or OnIdle requests no more time. Then all pending user events are processed until the system
goes idle again, when OnIdle is called, and so on.
\wxheading{See also}
\helpref{wxWindow::OnIdle}{wxwindowonidle}, \helpref{wxIdleEvent}{wxidleevent},\rtfsp
\helpref{wxWindow::SendIdleEvents}{wxappsendidleevents}
\membersection{wxApp::OnEndSession}\label{wxapponendsession}
\func{void}{OnEndSession}{\param{wxCloseEvent\& }{event}}
This is an event handler function called when the operating system or GUI session is
about to close down. The application has a chance to silently save information,
and can optionally close itself.
Use the EVT\_END\_SESSION event table macro to handle query end session events.
The default handler calls \helpref{wxWindow::Close}{wxwindowclose} with a TRUE argument
(forcing the application to close itself silently).
\wxheading{Remarks}
Under X, OnEndSession is called in response to the 'die' event.
Under Windows, OnEndSession is called in response to the WM\_ENDSESSION message.
\wxheading{See also}
\helpref{wxWindow::Close}{wxwindowclose},\rtfsp
\helpref{wxWindow::OnCloseWindow}{wxwindowonclosewindow},\rtfsp
\helpref{wxCloseEvent}{wxcloseevent},\rtfsp
\helpref{wxApp::OnQueryEndSession}{wxapponqueryendsession}
\membersection{wxApp::OnInit}\label{wxapponinit}
\func{bool}{OnInit}{\void}
This must be provided by the application, and will usually create the
application's main window, optionally calling \helpref{wxApp::SetTopWindow}{wxappsettopwindow}.
Return TRUE to continue processing, FALSE to exit the application.
\membersection{wxApp::OnQueryEndSession}\label{wxapponqueryendsession}
\func{void}{OnQueryEndSession}{\param{wxCloseEvent\& }{event}}
This is an event handler function called when the operating system or GUI session is
about to close down. Typically, an application will try to save unsaved documents
at this point.
If \helpref{wxCloseEvent::CanVeto}{wxcloseeventcanveto} returns TRUE, the application
is allowed to veto the shutdown by calling \helpref{wxCloseEvent::Veto}{wxcloseeventveto}.
The application might veto the shutdown after prompting for documents to be saved, and the
user has cancelled the save.
Use the EVT\_QUERY\_END\_SESSION event table macro to handle query end session events.
You should check whether the application is forcing the deletion of the window
using \helpref{wxCloseEvent::GetForce}{wxcloseeventgetforce}. If this is TRUE,
destroy the window using \helpref{wxWindow::Destroy}{wxwindowdestroy}.
If not, it is up to you whether you respond by destroying the window.
The default handler calls \helpref{wxWindow::Close}{wxwindowclose} on the top-level window,
and vetoes the shutdown if Close returns FALSE. This will be sufficient for many applications.
\wxheading{Remarks}
Under X, OnQueryEndSession is called in response to the 'save session' event.
Under Windows, OnQueryEndSession is called in response to the WM\_QUERYENDSESSION message.
\wxheading{See also}
\helpref{wxWindow::Close}{wxwindowclose},\rtfsp
\helpref{wxWindow::OnCloseWindow}{wxwindowonclosewindow},\rtfsp
\helpref{wxCloseEvent}{wxcloseevent},\rtfsp
\helpref{wxApp::OnEndSession}{wxapponendsession}
\membersection{wxApp::ProcessMessage}\label{wxappprocessmessage}
\func{bool}{ProcessMessage}{\param{MSG *}{msg}}
Windows-only function for processing a message. This function
is called from the main message loop, checking for windows that
may wish to process it. The function returns TRUE if the message
was processed, FALSE otherwise. If you use wxWindows with another class
library with its own message loop, you should make sure that this
function is called to allow wxWindows to receive messages. For example,
to allow co-existance with the Microsoft Foundation Classes, override
the PreTranslateMessage function:
\begin{verbatim}
// Provide wxWindows message loop compatibility
BOOL CTheApp::PreTranslateMessage(MSG *msg)
{
if (wxTheApp && wxTheApp->ProcessMessage(msg))
return TRUE;
else
return CWinApp::PreTranslateMessage(msg);
}
\end{verbatim}
\membersection{wxApp::Pending}\label{wxapppending}
\func{bool}{Pending}{\void}
Returns TRUE if unprocessed events are in the window system event queue
(MS Windows and Motif).
\wxheading{See also}
\helpref{wxApp::Dispatch}{wxappdispatch}
\membersection{wxApp::SendIdleEvents}\label{wxappsendidleevents}
\func{bool}{SendIdleEvents}{\void}
Sends idle events to all top-level windows.
\func{bool}{SendIdleEvents}{\param{wxWindow*}{ win}}
Sends idle events to a window and its children.
\wxheading{Remarks}
These functions poll the top-level windows, and their children, for idle event processing.
If TRUE is returned, more OnIdle processing is requested by one or more window.
\wxheading{See also}
\helpref{wxApp::OnIdle}{wxapponidle}, \helpref{wxWindow::OnIdle}{wxwindowonidle}, \helpref{wxIdleEvent}{wxidleevent}
\membersection{wxApp::SetAppName}\label{wxappsetappname}
\func{void}{SetAppName}{\param{const wxString\& }{name}}
Sets the name of the application. The name may be used in dialogs
(for example by the document/view framework). A default name is set by
wxWindows.
\wxheading{See also}
\helpref{wxApp::GetAppName}{wxappgetappname}
\membersection{wxApp::SetAuto3D}\label{wxappsetauto3d}
\func{void}{SetAuto3D}{\param{const bool}{ auto3D}}
Switches automatic 3D controls on or off.
\wxheading{Parameters}
\docparam{auto3D}{If TRUE, all controls will be created with 3D appearances unless
overridden for a control or dialog. The default is TRUE}
\wxheading{Remarks}
This has an effect on Windows only.
\wxheading{See also}
\helpref{wxApp::GetAuto3D}{wxappgetauto3d}
\membersection{wxApp::SetClassName}\label{wxappsetclassname}
\func{void}{SetClassName}{\param{const wxString\& }{name}}
Sets the class name of the application. This may be used in a platform specific
manner to refer to the application.
\wxheading{See also}
\helpref{wxApp::GetClassName}{wxappgetclassname}
\membersection{wxApp::SetExitOnDelete}\label{wxappsetexitondelete}
\func{void}{SetExitOnDelete}{\param{bool}{ flag}}
Allows the programmer to specify whether the application will exit when the
top-level frame is deleted.
\wxheading{Parameters}
\docparam{flag}{If TRUE (the default), the application will exit when the top-level frame is
deleted. If FALSE, the application will continue to run.}
\wxheading{Remarks}
Currently, setting this to FALSE only has an effect under Windows.
\membersection{wxApp::SetTopWindow}\label{wxappsettopwindow}
\func{void}{SetTopWindow}{\param{wxWindow* }{window}}
Sets the `top' window. You can call this from within \helpref{wxApp::OnInit}{wxapponinit} to
let wxWindows know which is the main window. You don't have to set the top window;
it's only a convenience so that (for example) certain dialogs without parents can use a
specific window as the top window. If no top window is specified by the application,
wxWindows just uses the first frame or dialog in its top-level window list, when it
needs to use the top window.
\wxheading{Parameters}
\docparam{window}{The new top window.}
\wxheading{See also}
\helpref{wxApp::GetTopWindow}{wxappgettopwindow}, \helpref{wxApp::OnInit}{wxapponinit}

View File

@@ -1,540 +0,0 @@
\section{\class{wxArray}}\label{wxarray}
This section describes the so called {\it dynamic arrays}. This is a C
array-like data structure i.e. the member access time is constant (and not
linear according to the number of container elements as for linked lists). However, these
arrays are dynamic in the sense that they will automatically allocate more
memory if there is not enough of it for adding a new element. They also perform
range checking on the index values but in debug mode only, so please be sure to
compile your application in debug mode to use it (see \helpref{debugging overview}{debuggingoverview} for
details). So, unlike the arrays in some other
languages, attempt to access an element beyond the arrays bound doesn't
automatically expand the array but provokes an assertion failure instead in
debug build and does nothing (except possibly crashing your program) in the
release build.
The array classes were designed to be reasonably efficient, both in terms of
run-time speed and memory consumption and the executable size. The speed of
array item access is, of course, constant (independent of the number of elements)
making them much more efficient than linked lists (\helpref{wxList}{wxlist}).
Adding items to the arrays is also implemented in more or less constant time -
but the price is preallocating the memory in advance. In the \helpref{memory management}{wxarraymemorymanagement} section
you may find some useful hints about optimizing wxArray memory usage. As for executable size, all
wxArray functions are inline, so they do not take {\it any space at all}.
wxWindows has three different kinds of array. All of them derive from
wxBaseArray class which works with untyped data and can not be used directly.
The standard macros WX\_DEFINE\_ARRAY(), WX\_DEFINE\_SORTED\_ARRAY() and
WX\_DEFINE\_OBJARRAY() are used to define a new class deriving from it. The
classes declared will be called in this documentation wxArray, wxSortedArray and
wxObjArray but you should keep in mind that no classes with such names actually
exist, each time you use one of WX\_DEFINE\_XXXARRAY macro you define a class
with a new name. In fact, these names are "template" names and each usage of one
of the macros mentioned above creates a template specialization for the given
element type.
wxArray is suitable for storing integer types and pointers which it does not
treat as objects in any way, i.e. the element pointed to by the pointer is not
deleted when the element is removed from the array. It should be noted that
all of wxArray's functions are inline, so it costs strictly nothing to define as
many array types as you want (either in terms of the executable size or the
speed) as long as at least one of them is defined and this is always the case
because wxArrays are used by wxWindows internally. This class has one serious
limitation: it can only be used for storing integral types (bool, char, short,
int, long and their unsigned variants) or pointers (of any kind). An attempt
to use with objects of sizeof() greater than sizeof(long) will provoke a
runtime assertion failure, however declaring a wxArray of floats will not (on
the machines where sizeof(float) <= sizeof(long)), yet it will {\bf not} work,
please use wxObjArray for storing floats and doubles (NB: a more efficient
wxArrayDouble class is scheduled for the next release of wxWindows).
wxSortedArray is a wxArray variant which should be used when searching in the
array is a frequently used operation. It requires you to define an additional
function for comparing two elements of the array element type and always stores
its items in the sorted order (according to this function). Thus, it's
\helpref{Index()}{wxarrayindex} function execution time is $O(log(N))$ instead of
$O(N)$ for the usual arrays but the \helpref{Add()}{wxarrayadd} method is
slower: it is $O(log(N))$ instead of constant time (neglecting time spent in
memory allocation routine). However, in a usual situation elements are added to
an array much less often than searched inside it, so wxSortedArray may lead to
huge performance improvements compared to wxArray. Finally, it should be
noticed that, as wxArray, wxSortedArray can be only used for storing integral
types or pointers.
wxObjArray class treats its elements like "objects". It may delete them when
they are removed from the array (invoking the correct destructor) and copies
them using the objects copy constructor. In order to implement this behaviour
the definition of the wxObjArray arrays is split in two parts: first, you should
declare the new wxObjArray class using WX\_DECLARE\_OBJARRAY() macro and then
you must include the file defining the implementation of template type:
<wx/arrimpl.cpp> and define the array class with WX\_DEFINE\_OBJARRAY() macro
from a point where the full (as opposed to `forward') declaration of the array
elements class is in scope. As it probably sounds very complicated here is an
example:
\begin{verbatim}
#include <wx/dynarray.h>
// we must forward declare the array because it's used inside the class
// declaration
class MyDirectory;
class MyFile;
// this defines two new types: ArrayOfDirectories and ArrayOfFiles which can be
// now used as shown below
WX_DECLARE_OBJARRAY(MyDirectory, ArrayOfDirectories);
WX_DECLARE_OBJARRAY(MyFile, ArrayOfFiles);
class MyDirectory
{
...
ArrayOfDirectories m_subdirectories; // all subdirectories
ArrayOfFiles m_files; // all files in this directory
};
...
// now that we have MyDirectory declaration in scope we may finish the
// definition of ArrayOfDirectories
#include <wx/arrimpl.cpp> // this is a magic incantation which must be done!
WX_DEFINE_OBJARRAY(ArrayOfDirectories);
// that's all!
\end{verbatim}
It is not as elegant as writing
\begin{verbatim}
typedef std::vector<MyDirectory> ArrayOfDirectories;
\end{verbatim}
but is not that complicated and allows the code to be compiled with any, however
dumb, C++ compiler in the world.
Things are much simpler for wxArray and wxSortedArray however: it is enough
just to write
\begin{verbatim}
WX_DEFINE_ARRAY(MyDirectory *, ArrayOfDirectories);
WX_DEFINE_SORTED_ARRAY(MyFile *, ArrayOfFiles);
\end{verbatim}
\wxheading{See also:}
\helpref{Container classes overview}{wxcontaineroverview}, \helpref{wxList}{wxlist}
\wxheading{Required headers:}
<wx/dynarray.h> for wxArray and wxSortedArray and additionally <wx/arrimpl.cpp>
for wxObjArray.
\latexignore{\rtfignore{\wxheading{Function groups}}}
\membersection{Macros for template array definition}
To use an array you must first define the array class. This is done with the
help of the macros in this section. The class of array elements must be (at
least) forward declared for WX\_DEFINE\_ARRAY, WX\_DEFINE\_SORTED\_ARRAY and
WX\_DECLARE\_OBJARRAY macros and must be fully declared before you use
WX\_DEFINE\_OBJARRAY macro.
\helpref{WX\_DEFINE\_ARRAY}{wxdefinearray}\\
\helpref{WX\_DEFINE\_SORTED\_ARRAY}{wxdefinesortedarray}\\
\helpref{WX\_DECLARE\_OBJARRAY}{wxdeclareobjarray}\\
\helpref{WX\_DEFINE\_OBJARRAY}{wxdefineobjarray}
\membersection{Constructors and destructors}
Array classes are 100\% C++ objects and as such they have the appropriate copy
constructors and assignment operators. Copying wxArray just copies the elements
but copying wxObjArray copies the arrays items. However, for memory-efficiency
sake, neither of these classes has virtual destructor. It is not very important
for wxArray which has trivial destructor anyhow, but it does mean that you
should avoid deleting wxObjArray through a wxBaseArray pointer (as you would
never use wxBaseArray anyhow it shouldn't be a problem) and that you should not
derive your own classes from the array classes.
\helpref{wxArray default constructor}{wxarrayctordef}\\
\helpref{wxArray copy constructors and assignment operators}{wxarrayctorcopy}\\
\helpref{\destruct{wxArray}}{wxarraydtor}
\membersection{Memory management}\label{wxarraymemorymanagement}
Automatic array memory management is quite trivial: the array starts by
preallocating some minimal amount of memory (defined by
WX\_ARRAY\_DEFAULT\_INITIAL\_SIZE) and when further new items exhaust already
allocated memory it reallocates it adding 50\% of the currently allocated
amount, but no more than some maximal number which is defined by
ARRAY\_MAXSIZE\_INCREMENT constant. Of course, this may lead to some memory
being wasted (ARRAY\_MAXSIZE\_INCREMENT in the worst case, i.e. 4Kb in the
current implementation), so the \helpref{Shrink()}{wxarrayshrink} function is
provided to unallocate the extra memory. The \helpref{Alloc()}{wxarrayalloc}
function can also be quite useful if you know in advance how many items you are
going to put in the array and will prevent the array code from reallocating the
memory more times than needed.
\helpref{Alloc}{wxarrayalloc}\\
\helpref{Shrink}{wxarrayshrink}
\membersection{Number of elements and simple item access}
Functions in this section return the total number of array elements and allow to
retrieve them - possibly using just the C array indexing $[]$ operator which
does exactly the same as \helpref{Item()}{wxarrayitem} method.
\helpref{Count}{wxarraycount}\\
\helpref{GetCount}{wxarraygetcount}\\
\helpref{IsEmpty}{wxarrayisempty}\\
\helpref{Item}{wxarrayitem}\\
\helpref{Last}{wxarraylast}
\membersection{Adding items}
\helpref{Add}{wxarrayadd}\\
\helpref{Insert}{wxarrayinsert}
\membersection{Removing items}
\helpref{WX\_CLEAR\_ARRAY}{wxcleararray}\\
\helpref{Empty}{wxarrayempty}\\
\helpref{Clear}{wxarrayclear}\\
\helpref{Remove}{wxarrayremove}
\membersection{Searching and sorting}
\helpref{Index}{wxarrayindex}\\
\helpref{Sort}{wxarraysort}
%%%%% MEMBERS HERE %%%%%
\helponly{\insertatlevel{2}{
\wxheading{Members}
}}
\membersection{WX\_DEFINE\_ARRAY}\label{wxdefinearray}
\func{}{WX\_DEFINE\_ARRAY}{\param{}{T}, \param{}{name}}
This macro defines a new array class named {\it name} and containing the
elements of type {\it T}. Example:
\begin{verbatim}
WX_DEFINE_ARRAY(int, wxArrayInt);
class MyClass;
WX_DEFINE_ARRAY(MyClass *, wxArrayOfMyClass);
\end{verbatim}
Note that wxWindows predefines the following standard array classes: wxArrayInt,
wxArrayLong and wxArrayPtrVoid.
\membersection{WX\_DEFINE\_SORTED\_ARRAY}\label{wxdefinesortedarray}
\func{}{WX\_DEFINE\_SORTED\_ARRAY}{\param{}{T}, \param{}{name}}
This macro defines a new sorted array class named {\it name} and containing
the elements of type {\it T}. Example:
\begin{verbatim}
WX_DEFINE_SORTED_ARRAY(int, wxArrayInt);
class MyClass;
WX_DEFINE_SORTED_ARRAY(MyClass *, wxArrayOfMyClass);
\end{verbatim}
You will have to initialize the objects of this class by passing a comparaison
function to the array object constructor like this:
\begin{verbatim}
int CompareInts(int n1, int n2)
{
return n1 - n2;
}
wxArrayInt sorted(CompareInts);
int CompareMyClassObjects(MyClass *item1, MyClass *item2)
{
// sort the items by their address...
return Stricmp(item1->GetAddress(), item2->GetAddress());
}
wxArrayOfMyClass another(CompareMyClassObjects);
\end{verbatim}
\membersection{WX\_DECLARE\_OBJARRAY}\label{wxdeclareobjarray}
\func{}{WX\_DECLARE\_OBJARRAY}{\param{}{T}, \param{}{name}}
This macro declares a new object array class named {\it name} and containing
the elements of type {\it T}. Example:
\begin{verbatim}
class MyClass;
WX_DEFINE_OBJARRAY(MyClass, wxArrayOfMyClass); // note: not "MyClass *"!
\end{verbatim}
You must use \helpref{WX\_DEFINE\_OBJARRAY()}{wxdefineobjarray} macro to define
the array class - otherwise you would get link errors.
\membersection{WX\_DEFINE\_OBJARRAY}\label{wxdefineobjarray}
\func{}{WX\_DEFINE\_OBJARRAY}{\param{}{name}}
This macro defines the methods of the array class {\it name} not defined by the
\helpref{WX\_DECLARE\_OBJARRAY()}{wxdeclareobjarray} macro. You must include the
file <wx/arrimpl.cpp> before using this macro and you must have the full
declaration of the class of array elements in scope! If you forget to do the
first, the error will be caught by the compiler, but, unfortunately, many
compilers will not give any warnings if you forget to do the second - but the
objects of the class will not be copied correctly and their real destructor will
not be called.
Example of usage:
\begin{verbatim}
// first declare the class!
class MyClass
{
public:
MyClass(const MyClass&);
...
virtual ~MyClass();
};
#include <wx/arrimpl.cpp>
WX_DEFINE_OBJARRAY(wxArrayOfMyClass);
\end{verbatim}
\membersection{WX\_CLEAR\_ARRAY}\label{wxcleararray}
\func{void}{WX\_CLEAR\_ARRAY}{\param{wxArray\& }{array}}
This macro may be used to delete all elements of the array before emptying it.
It can not be used with wxObjArrays - but they will delete their elements anyhow
when you call Empty().
\membersection{Default constructors}\label{wxarrayctordef}
\func{}{wxArray}{\void}
\func{}{wxObjArray}{\void}
Default constructor initializes an empty array object.
\func{}{wxSortedArray}{\param{int (*)(T first, T second)}{compareFunction}}
There is no default constructor for wxSortedArray classes - you must initialize it
with a function to use for item comparaison. It is a function which is passed
two arguments of type {\it T} where {\it T} is the array element type and which
should return a negative, zero or positive value according to whether the first
element passed to it is less than, equal to or greater than the second one.
\membersection{wxArray copy constructor and assignment operator}\label{wxarrayctorcopy}
\func{}{wxArray}{\param{const wxArray\& }{array}}
\func{}{wxSortedArray}{\param{const wxSortedArray\& }{array}}
\func{}{wxObjArray}{\param{const wxObjArray\& }{array}}
\func{wxArray\&}{operator$=$}{\param{const wxArray\& }{array}}
\func{wxSortedArray\&}{operator$=$}{\param{const wxSortedArray\& }{array}}
\func{wxObjArray\&}{operator$=$}{\param{const wxObjArray\& }{array}}
The copy constructors and assignment operators perform a shallow array copy
(i.e. they don't copy the objects pointed to even if the source array contains
the items of pointer type) for wxArray and wxSortedArray and a deep copy (i.e.
the array element are copied too) for wxObjArray.
\membersection{wxArray::\destruct{wxArray}}\label{wxarraydtor}
\func{}{\destruct{wxArray}}{\void}
\func{}{\destruct{wxSortedArray}}{\void}
\func{}{\destruct{wxObjArray}}{\void}
The wxObjArray destructor deletes all the items owned by the array. This is not
done by wxArray and wxSortedArray versions - you may use
\helpref{WX\_CLEAR\_ARRAY}{wxcleararray} macro for this.
\membersection{wxArray::Add}\label{wxarrayadd}
\func{void}{Add}{\param{T }{item}}
\func{void}{Add}{\param{T *}{item}}
\func{void}{Add}{\param{T \&}{item}}
Appends a new element to the array (where {\it T} is the type of the array
elements.)
The first version is used with wxArray and wxSortedArray. The second and the
third are used with wxObjArray. There is an important difference between
them: if you give a pointer to the array, it will take ownership of it, i.e.
will delete it when the item is deleted from the array. If you give a reference
to the array, however, the array will make a copy of the item and will not take
ownership of the original item. Once again, it only makes sense for wxObjArrays
because the other array types never take ownership of their elements.
\membersection{wxArray::Alloc}\label{wxarrayalloc}
\func{void}{Alloc}{\param{size\_t }{count}}
Preallocates memory for a given number of array elements. It is worth calling
when the number of items which are going to be added to the array is known in
advance because it will save unneeded memory reallocation. If the array already
has enough memory for the given number of items, nothing happens.
\membersection{wxArray::Clear}\label{wxarrayclear}
\func{void}{Clear}{\void}
This function does the same as \helpref{Empty()}{wxarrayempty} and additionally
frees the memory allocated to the array.
\membersection{wxArray::Count}\label{wxarraycount}
\constfunc{size\_t}{Count}{\void}
Same as \helpref{GetCount()}{wxarraygetcount}. This function is deprecated -
it exists only for compatibility.
\membersection{wxObjArray::Detach}\label{wxobjarraydetach}
\func{T *}{Detach}{\param{size\_t }{index}}
Removes the element from the array, but, unlike,
\helpref{Remove()}{wxarrayremove} doesn't delete it. The function returns the
pointer to the removed element.
\membersection{wxArray::Empty}\label{wxarrayempty}
\func{void}{Empty}{\void}
Empties the array. For wxObjArray classes, this destroys all of the array
elements. For wxArray and wxSortedArray this does nothing except marking the
array of being empty - this function does not free the allocated memory, use
\helpref{Clear()}{wxarrayclear} for this.
\membersection{wxArray::GetCount}\label{wxarraygetcount}
\constfunc{size\_t}{GetCount}{\void}
Return the number of items in the array.
\membersection{wxArray::Index}\label{wxarrayindex}
\func{int}{Index}{\param{T\& }{item}, \param{bool }{searchFromEnd = FALSE}}
\func{int}{Index}{\param{T\& }{item}}
The first version of the function is for wxArray and wxObjArray, the second is
for wxSortedArray only.
Searches the element in the array, starting from either beginning or the end
depending on the value of {\it searchFromEnd} parameter. wxNOT\_FOUND is
returned if the element is not found, otherwise the index of the element is
returned.
Linear search is used for the wxArray and wxObjArray classes but binary search
in the sorted array is used for wxSortedArray (this is why searchFromEnd
parameter doesn't make sense for it).
\membersection{wxArray::Insert}\label{wxarrayinsert}
\func{void}{Insert}{\param{T }{item}, \param{size\_t }{n}}
\func{void}{Insert}{\param{T *}{item}, \param{size\_t }{n}}
\func{void}{Insert}{\param{T \&}{item}, \param{size\_t }{n}}
Insert a new item into the array before the item {\it n} - thus, {\it Insert(something, 0u)} will
insert an item in such way that it will become the
first array element.
Please see \helpref{Add()}{wxarrayadd} for explanation of the differences
between the overloaded versions of this function.
\membersection{wxArray::IsEmpty}\label{wxarrayisempty}
\constfunc{bool}{IsEmpty}{\void}
Returns TRUE if the array is empty, FALSE otherwise.
\membersection{wxArray::Item}\label{wxarrayitem}
\constfunc{T\&}{Item}{\param{size\_t }{index}}
Returns the item at the given position in the array. If {\it index} is out of
bounds, an assert failure is raised in the debug builds but nothing special is
done in the release build.
The returned value is of type "reference to the array element type" for all of
the array classes.
\membersection{wxArray::Last}\label{wxarraylast}
\constfunc{T\&}{Last}{\void}
Returns the last element in the array, i.e. is the same as Item(GetCount() - 1).
An assert failure is raised in the debug mode if the array is empty.
The returned value is of type "reference to the array element type" for all of
the array classes.
\membersection{wxArray::Remove}\label{wxarrayremove}
\func{\void}{Remove}{\param{size\_t }{index}}
\func{\void}{Remove}{\param{T }{item}}
Removes the element from the array either by index or by value. When an element
is removed from wxObjArray it is deleted by the array - use
\helpref{Detach()}{wxobjarraydetach} if you don't want this to happen. On the
other hand, when an object is removed from a wxArray nothing happens - you
should delete the it manually if required:
\begin{verbatim}
T *item = array[n];
delete item;
array.Remove(n)
\end{verbatim}
See also \helpref{WX\_CLEAR\_ARRAY}{wxcleararray} macro which deletes all
elements of a wxArray (supposed to contain pointers).
\membersection{wxArray::Shrink}\label{wxarrayshrink}
\func{void}{Shrink}{\void}
Frees all memory unused by the array. If the program knows that no new items
will be added to the array it may call Shrink() to reduce its memory usage.
However, if a new item is added to the array, some extra memory will be
allocated again.
\membersection{wxArray::Sort}\label{wxarraysort}
\func{void}{Sort}{\param{CMPFUNC<T> }{compareFunction}}
The notation CMPFUNC<T> should be read as if we had the following declaration:
\begin{verbatim}
template int CMPFUNC(T *first, T *second);
\end{verbatim}
where {\it T} is the type of the array elements. I.e. it is a function returning
{\it int} which is passed two arguments of type {\it T *}.
Sorts the array using the specified compare function: this function should
return a negative, zero or positive value according to whether the first element
passed to it is less than, equal to or greater than the second one.
wxSortedArray doesn't have this function because it is always sorted.

View File

@@ -1,249 +0,0 @@
\section{\class{wxArrayString}}\label{wxarraystring}
wxArrayString is an efficient container for storing
\helpref{wxString}{wxstring} objects. It has the same features as all
\helpref{wxArray}{wxarray} classes, i.e. it dynamically expands when new items
are added to it (so it is as easy to use as a linked list), but the access
time to the elements is constant, instead of being linear in number of
elements as in the case of linked lists. It is also very size efficient and
doesn't take more space than a C array {\it wxString[]} type. wxArrayString
uses its knowledge of internals of wxString class to achieve this.
This class is used in the same way as other dynamic \helpref{arrays}{wxarray},
except that no {\it WX\_DEFINE\_ARRAY} declaration is needed for it. When a
string is added or inserted in the array, a copy of the string is created, so
the original string may be safely deleted (e.g. if it was a {\it char *}
pointer the memory it was using can be freed immediately after this). In
general, there is no need to worry about string memory deallocation when using
this class - it will always free the memory it uses itself.
The references returned by \helpref{Item}{wxarraystringitem},
\helpref{Last}{wxarraystringlast} or
\helpref{operator[]}{wxarraystringoperatorindex} are not constant, so the
array elements may be modified in place like this
\begin{verbatim}
array.Last().MakeUpper();
\end{verbatim}
Finally, none of the methods of this class is virtual including its
destructor, so this class should not be derived from.
\wxheading{Derived from}
Although this is not true strictly speaking, this class may be considered as a
specialization of \helpref{wxArray}{wxarray} class for the wxString member
data: it is not implemented like this, but it does have all of the wxArray
functions.
\wxheading{Include files}
<wx/string.h>
\wxheading{See also}
\helpref{wxArray}{wxarray}, \helpref{wxString}{wxstring}, \helpref{wxString overview}{wxstringoverview}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxArrayString::wxArrayString}\label{wxarraystringctor}
\func{}{wxArrayString}{\void}
\func{}{wxArrayString}{\param{const wxArrayString\&}{ array}}
Default and copy constructors.
\membersection{wxArrayString::\destruct{wxArrayString}}\label{wxarraystringdtor}
\func{}{\destruct{wxArrayString}}{}
Destructor frees memory occupied by the array strings. For the performance
reasons it is not virtual, so this class should not be derived from.
\membersection{wxArrayString::operator=}\label{wxarraystringoperatorassign}
\func{wxArrayString \&}{operator $=$}{\param{const wxArrayString\&}{ array}}
Assignment operator.
\membersection{wxArrayString::operator[]}\label{wxarraystringoperatorindex}
\func{wxString\&}{operatorp[]}{\param{size\_t }{nIndex}}
Return the array element at position {\it nIndex}. An assert failure will
result from an attempt to access an element beyond the end of array in debug
mode, but no check is done in release mode.
This is the operator version of \helpref{Item}{wxarraystringitem} method.
\membersection{wxArrayString::Add}\label{wxarraystringadd}
\func{void}{Add}{\param{const wxString\& }{str}}
Appends a new item to the array.
See also: \helpref{Insert}{wxarraystringinsert}
\membersection{wxArrayString::Alloc}\label{wxarraystringalloc}
\func{void}{Alloc}{\param{size\_t }{nCount}}
Preallocates enough memory to store {\it nCount} items. This function may be
used to improve array class performance before adding a known number of items
consecutively.
See also: \helpref{Dynamic array memory management}{wxarraymemorymanagement}
\membersection{wxArrayString::Clear}\label{wxarraystringclear}
\func{void}{Clear}{\void}
Clears the array contents and frees memory.
See also: \helpref{Empty}{wxarraystringempty}
\membersection{wxArrayString::Count}\label{wxarraystringcount}
\constfunc{size\_t}{Count}{\void}
Returns the number of items in the array. This function is deprecated and is
for backwards compatibility only, please use
\helpref{GetCount}{wxarraystringgetcount} instead.
\membersection{wxArrayString::Empty}\label{wxarraystringempty}
\func{void}{Empty}{\void}
Empties the array: after a call to this function
\helpref{GetCount}{wxarraystringgetcount} will return $0$. However, this
function does not free the memory used by the array and so should be used when
the array is going to be reused for storing other strings. Otherwise, you
should use \helpref{Clear}{wxarraystringclear} to empty the array and free
memory.
\membersection{wxArrayString::GetCount}\label{wxarraystringgetcount}
\constfunc{size\_t}{GetCount}{\void}
Returns the number of items in the array.
\membersection{wxArrayString::Index}\label{wxarraystringindex}
\func{int}{Index}{\param{const char *}{ sz}, \param{bool}{ bCase = TRUE}, \param{bool}{ bFromEnd = FALSE}}
Search the element in the array, starting from the beginning if
{\it bFromEnd} is FALSE or from end otherwise. If {\it bCase}, comparison is
case sensitive (default), otherwise the case is ignored.
Returns index of the first item matched or wxNOT\_FOUND if there is no match.
\membersection{wxArrayString::Insert}\label{wxarraystringinsert}
\func{void}{Insert}{\param{const wxString\& }{str}, \param{size\_t}{ nIndex}}
Insert a new element in the array before the position {\it nIndex}. Thus, for
example, to insert the string in the beginning of the array you would write
\begin{verbatim}
Insert("foo", 0);
\end{verbatim}
If {\it nIndex} is equal to {\it GetCount() + 1} this function behaves as
\helpref{Add}{wxarraystringadd}.
\membersection{wxArrayString::IsEmpty}\label{wxarraystringisempty}
\func{}{IsEmpty}{}
Returns TRUE if the array is empty, FALSE otherwise. This function returns the
same result as {\it GetCount() == 0} but is probably easier to read.
\membersection{wxArrayString::Item}\label{wxarraystringitem}
\constfunc{wxString\&}{Item}{\param{size\_t }{nIndex}}
Return the array element at position {\it nIndex}. An assert failure will
result from an attempt to access an element beyond the end of array in debug
mode, but no check is done in release mode.
See also \helpref{operator[]}{wxarraystringoperatorindex} for the operator
version.
\membersection{wxArrayString::Last}\label{wxarraystringlast}
\func{}{Last}{}
Returns the last element of the array. Attempt to access the last element of
an empty array will result in assert failure in debug build, however no checks
are done in release mode.
\membersection{wxArrayString::Remove (by value)}\label{wxarraystringremoveval}
\func{void}{Remove}{\param{const char *}{ sz}}
Removes the first item matching this value. An assert failure is provoked by
an attempt to remove an element which does not exist in debug build.
See also: \helpref{Index}{wxarraystringindex}, \helpref{Remove}{wxarraystringremove}
\membersection{wxArrayString::Remove (by index)}\label{wxarraystringremove}
\func{void}{Remove}{\param{size\_t }{nIndex}}
Removes the item at given position.
See also: \helpref{Remove}{wxarraystringremoveval}
\membersection{wxArrayString::Shrink}\label{wxarraystringshrink}
\func{void}{Shrink}{\void}
Releases the extra memory allocated by the array. This function is useful to
minimize the array memory consumption.
See also: \helpref{Alloc}{wxarraystringalloc}, \helpref{Dynamic array memory management}{wxarraymemorymanagement}
\membersection{wxArrayString::Sort (alphabetically)}\label{wxarraystringsort}
\func{void}{Sort}{\param{bool}{ reverseOrder = FALSE}}
Sorts the array in alphabetical order or in reverse alphabetical order if
{\it reverseOrder} is TRUE.
See also: \helpref{Sort}{wxarraystringsortcallback}
\membersection{wxArrayString::Sort (user defined)}\label{wxarraystringsortcallback}
\func{void}{Sort}{\param{CompareFunction }{compareFunction}}
Sorts the array using the specified {\it compareFunction} for item comparison.
{\it CompareFunction} is defined as a function taking two {\it const
wxString\&} parameters and returning {\it int} value less than, equal to or
greater than 0 if the first string is less than, equal to or greater than the
second one.
\wxheading{Example}
The following example sorts strings by their length.
\begin{verbatim}
static int CompareStringLen(const wxString& first, const wxString& second)
{
return first.length() - second.length();
}
...
wxArrayString array;
array.Add("one");
array.Add("two");
array.Add("three");
array.Add("four");
array.Sort(CompareStringLen);
\end{verbatim}
See also: \helpref{Sort}{wxarraystringsort}

View File

@@ -1,201 +0,0 @@
\section{\class{wxAutomationObject}}\label{wxautomationobject}
The {\bf wxAutomationObject} class represents an OLE automation object containing a single data member,
an IDispatch pointer. It contains a number of functions that make it easy to perform
automation operations, and set and get properties. The class makes heavy use of the \helpref{wxVariant}{wxvariant} class.
The usage of these classes is quite close to OLE automation usage in Visual Basic. The API is
high-level, and the application can specify multiple properties in a single string. The following example
gets the current Excel instance, and if it exists, makes the active cell bold.
{\small
\begin{verbatim}
wxAutomationObject excelObject;
if (excelObject.GetInstance("Excel.Application"))
excelObject.PutProperty("ActiveCell.Font.Bold", TRUE);
\end{verbatim}
}
Note that this class works under Windows only, and currently only for Visual C++.
\wxheading{Derived from}
\helpref{wxObject}{wxobject}
\wxheading{Include files}
<wx/msw/ole/automtn.h>
\wxheading{See also}
\helpref{wxVariant}{wxvariant}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxAutomationObject::wxAutomationObject}\label{wxautomationobjectctor}
\func{}{wxAutomationObject}{\param{WXIDISPATCH*}{ dispatchPtr = NULL}}
Constructor, taking an optional IDispatch pointer which will be released when the
object is deleted.
\membersection{wxAutomationObject::\destruct{wxAutomationObject}}\label{wxautomationobjectdtor}
\func{}{\destruct{wxAutomationObject}}{\void}
Destructor. If the internal IDispatch pointer is non-null, it will be released.
\membersection{wxAutomationObject::CallMethod}\label{wxautomationobjectcallmethod}
\constfunc{wxVariant}{CallMethod}{\param{const wxString\&}{ method}, \param{int}{ noArgs},
\param{wxVariant }{args[]}}
\constfunc{wxVariant}{CallMethod}{\param{const wxString\&}{ method}, \param{...}{}}
Calls an automation method for this object. The first form takes a method name, number of
arguments, and an array of variants. The second form takes a method name and zero to six
constant references to variants. Since the variant class has constructors for the basic
data types, and C++ provides temporary objects automatically, both of the following lines
are syntactically valid:
{\small
\begin{verbatim}
wxVariant res = obj.CallMethod("Sum", wxVariant(1.2), wxVariant(3.4));
wxVariant res = obj.CallMethod("Sum", 1.2, 3.4);
\end{verbatim}
}
Note that {\it method} can contain dot-separated property names, to save the application
needing to call GetProperty several times using several temporary objects. For example:
{\small
\begin{verbatim}
object.CallMethod("ActiveCell.Font.ShowDialog", "My caption");
\end{verbatim}
}
\membersection{wxAutomationObject::CreateInstance}\label{wxautomationobjectcreateinstance}
\constfunc{bool}{CreateInstance}{\param{const wxString\&}{ classId}}
Creates a new object based on the class id, returning TRUE if the object was successfully created,
or FALSE if not.
\membersection{wxAutomationObject::GetDispatchPtr}\label{wxautomationobjectgetdispatchptr}
\constfunc{IDispatch*}{GetDispatchPtr}{\void}
Gets the IDispatch pointer.
\membersection{wxAutomationObject::GetInstance}\label{wxautomationobjectgetinstance}
\constfunc{bool}{GetInstance}{\param{const wxString\&}{ classId}}
Retrieves the current object associated with a class id, and attaches the IDispatch pointer
to this object. Returns TRUE if a pointer was succesfully retrieved, FALSE otherwise.
Note that this cannot cope with two instances of a given OLE object being active simultaneously,
such as two copies of Excel running. Which object is referenced cannot currently be specified.
\membersection{wxAutomationObject::GetObject}\label{wxautomationobjectgetobject}
\constfunc{bool}{GetObject}{\param{wxAutomationObject\&}{obj} \param{const wxString\&}{ property},
\param{int}{ noArgs = 0}, \param{wxVariant }{args[] = NULL}}
Retrieves a property from this object, assumed to be a dispatch pointer, and initialises {\it obj} with it.
To avoid having to deal with IDispatch pointers directly, use this function in preference
to \helpref{wxAutomationObject::GetProperty}{wxautomationobjectgetproperty} when retrieving objects
from other objects.
Note that an IDispatch pointer is stored as a void* pointer in wxVariant objects.
\wxheading{See also}
\helpref{wxAutomationObject::GetProperty}{wxautomationobjectgetproperty}
\membersection{wxAutomationObject::GetProperty}\label{wxautomationobjectgetproperty}
\constfunc{wxVariant}{GetProperty}{\param{const wxString\&}{ property}, \param{int}{ noArgs},
\param{wxVariant }{args[]}}
\constfunc{wxVariant}{GetProperty}{\param{const wxString\&}{ property}, \param{...}{}}
Gets a property value from this object. The first form takes a property name, number of
arguments, and an array of variants. The second form takes a property name and zero to six
constant references to variants. Since the variant class has constructors for the basic
data types, and C++ provides temporary objects automatically, both of the following lines
are syntactically valid:
{\small
\begin{verbatim}
wxVariant res = obj.GetProperty("Range", wxVariant("A1"));
wxVariant res = obj.GetProperty("Range", "A1");
\end{verbatim}
}
Note that {\it property} can contain dot-separated property names, to save the application
needing to call GetProperty several times using several temporary objects.
\membersection{wxAutomationObject::Invoke}\label{wxautomationobjectinvoke}
\constfunc{bool}{Invoke}{\param{const wxString\&}{ member}, \param{int}{ action},
\param{wxVariant\& }{retValue}, \param{int}{ noArgs}, \param{wxVariant}{ args[]},
\param{const wxVariant*}{ ptrArgs[] = 0}}
This function is a low-level implementation that allows access to the IDispatch Invoke function.
It is not meant to be called directly by the application, but is used by other convenience functions.
\wxheading{Parameters}
\docparam{member}{The member function or property name.}
\docparam{action}{Bitlist: may contain DISPATCH\_PROPERTYPUT, DISPATCH\_PROPERTYPUTREF,
DISPATCH\_METHOD.}
\docparam{retValue}{Return value (ignored if there is no return value)}.
\docparam{noArgs}{Number of arguments in {\it args} or {\it ptrArgs}.}
\docparam{args}{If non-null, contains an array of variants.}
\docparam{ptrArgs}{If non-null, contains an array of constant pointers to variants.}
\wxheading{Return value}
TRUE if the operation was successful, FALSE otherwise.
\wxheading{Remarks}
Two types of argument array are provided, so that when possible pointers are used for efficiency.
\membersection{wxAutomationObject::PutProperty}\label{wxautomationobjectputproperty}
\constfunc{bool}{PutProperty}{\param{const wxString\&}{ property}, \param{int}{ noArgs},
\param{wxVariant }{args[]}}
\func{bool}{PutProperty}{\param{const wxString\&}{ property}, \param{...}{}}
Puts a property value into this object. The first form takes a property name, number of
arguments, and an array of variants. The second form takes a property name and zero to six
constant references to variants. Since the variant class has constructors for the basic
data types, and C++ provides temporary objects automatically, both of the following lines
are syntactically valid:
{\small
\begin{verbatim}
obj.PutProperty("Value", wxVariant(23));
obj.PutProperty("Value", 23);
\end{verbatim}
}
Note that {\it property} can contain dot-separated property names, to save the application
needing to call GetProperty several times using several temporary objects.
\membersection{wxAutomationObject::SetDispatchPtr}\label{wxautomationobjectsetdispatchptr}
\func{void}{SetDispatchPtr}{\param{WXIDISPATCH*}{ dispatchPtr}}
Sets the IDispatch pointer. This function does not check if there is already an IDispatch pointer.
You may need to cast from IDispatch* to WXIDISPATCH* when calling this function.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 225 B

View File

@@ -1,235 +0,0 @@
\section{\class{wxBitmapButton}}\label{wxbitmapbutton}
A bitmap button is a control that contains a bitmap.
It may be placed on a \helpref{dialog box}{wxdialog} or \helpref{panel}{wxpanel}, or indeed
almost any other window.
\wxheading{Derived from}
\helpref{wxButton}{wxbutton}\\
\helpref{wxControl}{wxcontrol}\\
\helpref{wxWindow}{wxwindow}\\
\helpref{wxEvtHandler}{wxevthandler}\\
\helpref{wxObject}{wxobject}
\wxheading{Include files}
<wx/bmpbuttn.h>
\wxheading{Remarks}
A bitmap button can be supplied with a single bitmap, and wxWindows will draw
all button states using this bitmap. If the application needs more control, additional bitmaps for
the selected state, unpressed focussed state, and greyed-out state may be supplied.
\wxheading{Window styles}
\twocolwidtha{5cm}
\begin{twocollist}\itemsep=0pt
\twocolitem{\windowstyle{wxBU\_AUTODRAW}}{If
this is specified, the button will be drawn automatically using the label bitmap only, providing
a 3D-look border. If this style is not specified, the button will be drawn without borders and using all
provided bitmaps.}
\end{twocollist}
See also \helpref{window styles overview}{windowstyles}.
\wxheading{Event handling}
\twocolwidtha{7cm}
\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf EVT\_BUTTON(id, func)}}{Process a wxEVT\_COMMAND\_BUTTON\_CLICKED event,
when the button is clicked.}
\end{twocollist}
\wxheading{See also}
\helpref{wxButton}{wxbutton}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxBitmapButton::wxBitmapButton}\label{wxbitmapbuttonconstr}
\func{}{wxBitmapButton}{\void}
Default constructor.
\func{}{wxBitmapButton}{\param{wxWindow* }{parent}, \param{wxWindowID}{ id}, \param{const wxBitmap\& }{bitmap},\rtfsp
\param{const wxPoint\& }{pos}, \param{const wxSize\& }{size = wxDefaultSize},\rtfsp
\param{long}{ style = wxBU\_AUTODRAW}, \param{const wxValidator\& }{validator}, \param{const wxString\& }{name = ``button"}}
Constructor, creating and showing a button.
\wxheading{Parameters}
\docparam{parent}{Parent window. Must not be NULL.}
\docparam{id}{Button identifier. A value of -1 indicates a default value.}
\docparam{bitmap}{Bitmap to be displayed.}
\docparam{pos}{Button position.}
\docparam{size}{Button size. If the default size (-1, -1) is specified then the button is sized
appropriately for the bitmap.}
\docparam{style}{Window style. See \helpref{wxBitmapButton}{wxbitmapbutton}.}
\docparam{validator}{Window validator.}
\docparam{name}{Window name.}
\wxheading{Remarks}
The {\it bitmap} parameter is normally the only bitmap you need to provide, and wxWindows will
draw the button correctly in its different states. If you want more control, call
any of the functions \helpref{wxBitmapButton::SetBitmapSelected}{wxbitmapbuttonsetbitmapselected},\rtfsp
\helpref{wxBitmapButton::SetBitmapFocus}{wxbitmapbuttonsetbitmapfocus},\rtfsp
\helpref{wxBitmapButton::SetBitmapDisabled}{wxbitmapbuttonsetbitmapdisabled}.
Note that the bitmap passed is smaller than the actual button created.
\wxheading{See also}
\helpref{wxBitmapButton::Create}{wxbitmapbuttoncreate}, \helpref{wxValidator}{wxvalidator}
\membersection{wxBitmapButton::\destruct{wxBitmapButton}}
\func{}{\destruct{wxBitmapButton}}{\void}
Destructor, destroying the button.
\membersection{wxBitmapButton::Create}\label{wxbitmapbuttoncreate}
\func{bool}{Create}{\param{wxWindow* }{parent}, \param{wxWindowID}{ id}, \param{const wxBitmap\& }{bitmap},\rtfsp
\param{const wxPoint\& }{pos}, \param{const wxSize\& }{size = wxDefaultSize},\rtfsp
\param{long}{ style = 0}, \param{const wxValidator\& }{validator}, \param{const wxString\& }{name = ``button"}}
Button creation function for two-step creation. For more details, see \helpref{wxBitmapButton::wxBitmapButton}{wxbitmapbuttonconstr}.
\membersection{wxBitmapButton::GetBitmapDisabled}\label{wxbitmapbuttongetbitmapdisabled}
\constfunc{wxBitmap\&}{GetBitmapLabel}{\void}
Returns the bitmap for the disabled state.
\wxheading{Return value}
A reference to the disabled state bitmap.
\wxheading{See also}
\helpref{wxBitmapButton::SetBitmapDisabled}{wxbitmapbuttonsetbitmapdisabled}
\membersection{wxBitmapButton::GetBitmapFocus}\label{wxbitmapbuttongetbitmapfocus}
\constfunc{wxBitmap\&}{GetBitmapFocus}{\void}
Returns the bitmap for the focussed state.
\wxheading{Return value}
A reference to the focussed state bitmap.
\wxheading{See also}
\helpref{wxBitmapButton::SetBitmapFocus}{wxbitmapbuttonsetbitmapfocus}
\membersection{wxBitmapButton::GetBitmapLabel}\label{wxbitmapbuttongetbitmaplabel}
\constfunc{wxBitmap\&}{GetBitmapLabel}{\void}
Returns the label bitmap (the one passed to the constructor).
\wxheading{Return value}
A reference to the button's label bitmap.
\wxheading{See also}
\helpref{wxBitmapButton::SetBitmapLabel}{wxbitmapbuttonsetbitmaplabel}
\membersection{wxBitmapButton::GetBitmapSelected}\label{wxbitmapbuttongetbitmapselected}
\constfunc{wxBitmap\&}{GetBitmapSelected}{\void}
Returns the bitmap for the selected state.
\wxheading{Return value}
A reference to the selected state bitmap.
\wxheading{See also}
\helpref{wxBitmapButton::SetBitmapSelected}{wxbitmapbuttonsetbitmapselected}
\membersection{wxBitmapButton::SetBitmapDisabled}\label{wxbitmapbuttonsetbitmapdisabled}
\func{void}{SetBitmapDisabled}{\param{const wxBitmap\& }{bitmap}}
Sets the bitmap for the disabled button appearance.
\wxheading{Parameters}
\docparam{bitmap}{The bitmap to set.}
\wxheading{See also}
\helpref{wxBitmapButton::GetBitmapDisabled}{wxbitmapbuttongetbitmapdisabled},\rtfsp
\helpref{wxBitmapButton::SetBitmapLabel}{wxbitmapbuttonsetbitmaplabel},\rtfsp
\helpref{wxBitmapButton::SetBitmapSelected}{wxbitmapbuttonsetbitmapselected},\rtfsp
\helpref{wxBitmapButton::SetBitmapFocus}{wxbitmapbuttonsetbitmapfocus}
\membersection{wxBitmapButton::SetBitmapFocus}\label{wxbitmapbuttonsetbitmapfocus}
\func{void}{SetBitmapFocus}{\param{const wxBitmap\& }{bitmap}}
Sets the bitmap for the button appearance when it has the keyboard focus.
\wxheading{Parameters}
\docparam{bitmap}{The bitmap to set.}
\wxheading{See also}
\helpref{wxBitmapButton::GetBitmapFocus}{wxbitmapbuttongetbitmapfocus},\rtfsp
\helpref{wxBitmapButton::SetBitmapLabel}{wxbitmapbuttonsetbitmaplabel},\rtfsp
\helpref{wxBitmapButton::SetBitmapSelected}{wxbitmapbuttonsetbitmapselected},\rtfsp
\helpref{wxBitmapButton::SetBitmapDisabled}{wxbitmapbuttonsetbitmapdisabled}
\membersection{wxBitmapButton::SetBitmapLabel}\label{wxbitmapbuttonsetbitmaplabel}
\func{void}{SetBitmapLabel}{\param{const wxBitmap\& }{bitmap}}
Sets the bitmap label for the button.
\wxheading{Parameters}
\docparam{bitmap}{The bitmap label to set.}
\wxheading{Remarks}
This is the bitmap used for the unselected state, and for all other states
if no other bitmaps are provided.
\wxheading{See also}
\helpref{wxBitmapButton::GetBitmapLabel}{wxbitmapbuttongetbitmaplabel}
\membersection{wxBitmapButton::SetBitmapSelected}\label{wxbitmapbuttonsetbitmapselected}
\func{void}{SetBitmapSelected}{\param{const wxBitmap\& }{bitmap}}
Sets the bitmap for the selected (depressed) button appearance.
\wxheading{Parameters}
\docparam{bitmap}{The bitmap to set.}
\wxheading{See also}
\helpref{wxBitmapButton::GetBitmapSelected}{wxbitmapbuttongetbitmapselected},\rtfsp
\helpref{wxBitmapButton::SetBitmapLabel}{wxbitmapbuttonsetbitmaplabel},\rtfsp
\helpref{wxBitmapButton::SetBitmapFocus}{wxbitmapbuttonsetbitmapfocus},\rtfsp
\helpref{wxBitmapButton::SetBitmapDisabled}{wxbitmapbuttonsetbitmapdisabled}

View File

@@ -1,711 +0,0 @@
\section{\class{wxBitmap}}\label{wxbitmap}
%\overview{Overview}{wxbitmapoverview}
%
This class encapsulates the concept of a platform-dependent bitmap,
either monochrome or colour.
\wxheading{Derived from}
\helpref{wxGDIObject}{wxgdiobject}\\
\helpref{wxObject}{wxobject}
\wxheading{Include files}
<wx/bitmap.h>
\wxheading{Predefined objects}
Objects:
{\bf wxNullBitmap}
\wxheading{See also}
\helpref{wxBitmap overview}{wxbitmapoverview},
\helpref{supported bitmap file formats}{supportedbitmapformats},
\helpref{wxDC::Blit}{wxdcblit},
\helpref{wxIcon}{wxicon}, \helpref{wxCursor}{wxcursor}, \helpref{wxBitmap}{wxbitmap},
\helpref{wxMemoryDC}{wxmemorydc}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxBitmap::wxBitmap}\label{wxbitmapconstr}
\func{}{wxBitmap}{\void}
Default constructor.
\func{}{wxBitmap}{\param{const wxBitmap\& }{bitmap}}
Copy constructor.
\func{}{wxBitmap}{\param{void*}{ data}, \param{int}{ type}, \param{int}{ width}, \param{int}{ height}, \param{int}{ depth = -1}}
Creates a bitmap from the given data, which can be of arbitrary type.
\func{}{wxBitmap}{\param{const char}{ bits[]}, \param{int}{ width}, \param{int}{ height}\\
\param{int}{ depth = 1}}
Creates a bitmap from an array of bits.
\func{}{wxBitmap}{\param{int}{ width}, \param{int}{ height}, \param{int}{ depth = -1}}
Creates a new bitmap.
\func{}{wxBitmap}{\param{const char**}{ bits}}
Creates a bitmap from XPM data.
\func{}{wxBitmap}{\param{const wxString\& }{name}, \param{long}{ type}}
Loads a bitmap from a file or resource.
\wxheading{Parameters}
\docparam{bits}{Specifies an array of pixel values.}
\docparam{width}{Specifies the width of the bitmap.}
\docparam{height}{Specifies the height of the bitmap.}
\docparam{depth}{Specifies the depth of the bitmap. If this is omitted, the display depth of the
screen is used.}
\docparam{name}{This can refer to a resource name under MS Windows, or a filename under MS Windows and X.
Its meaning is determined by the {\it type} parameter.}
\docparam{type}{May be one of the following:
\twocolwidtha{5cm}
\begin{twocollist}
\twocolitem{{\bf \indexit{wxBITMAP\_TYPE\_BMP}}}{Load a Windows bitmap file.}
\twocolitem{{\bf \indexit{wxBITMAP\_TYPE\_BMP\_RESOURCE}}}{Load a Windows bitmap from the resource database.}
\twocolitem{{\bf \indexit{wxBITMAP\_TYPE\_GIF}}}{Load a GIF bitmap file.}
\twocolitem{{\bf \indexit{wxBITMAP\_TYPE\_XBM}}}{Load an X bitmap file.}
\twocolitem{{\bf \indexit{wxBITMAP\_TYPE\_XPM}}}{Load an XPM bitmap file.}
\twocolitem{{\bf \indexit{wxBITMAP\_TYPE\_RESOURCE}}}{Load a Windows resource name.}
\end{twocollist}
The validity of these flags depends on the platform and wxWindows configuration.
If all possible wxWindows settings are used, the Windows platform supports BMP file, BMP resource,
XPM data, and XPM. Under wxGTK, the available formats are BMP file, XPM data, XPM file, and PNG file.
Under wxMotif, the available formats are XBM data, XBM file, XPM data, XPM file.}
\wxheading{Remarks}
The first form constructs a bitmap object with no data; an assignment or another member function such as Create
or LoadFile must be called subsequently.
The second and third forms provide copy constructors. Note that these do not copy the
bitmap data, but instead a pointer to the data, keeping a reference count. They are therefore
very efficient operations.
The fourth form constructs a bitmap from data whose type and value depends on
the value of the {\it type} argument.
The fifth form constructs a (usually monochrome) bitmap from an array of pixel values, under both
X and Windows.
The sixth form constructs a new bitmap.
The seventh form constructs a bitmap from pixmap (XPM) data, if wxWindows has been configured
to incorporate this feature.
To use this constructor, you must first include an XPM file. For
example, assuming that the file {\tt mybitmap.xpm} contains an XPM array
of character pointers called mybitmap:
\begin{verbatim}
#include "mybitmap.xpm"
...
wxBitmap *bitmap = new wxBitmap(mybitmap);
\end{verbatim}
The eighth form constructs a bitmap from a file or resource. {\it name} can refer
to a resource name under MS Windows, or a filename under MS Windows and X.
Under Windows, {\it type} defaults to wxBITMAP\_TYPE\_BMP\_RESOURCE.
Under X, {\it type} defaults to wxBITMAP\_TYPE\_XPM.
\wxheading{See also}
\helpref{wxBitmap::LoadFile}{wxbitmaploadfile}
\pythonnote{Constructors supported by wxPython are:\par
\indented{2cm}{\begin{twocollist}
\twocolitem{\bf{wxBitmap(name, flag)}}{Loads a bitmap from a file}
\twocolitem{\bf{wxNoRefBitmap(name, flag)}}{This one won't own the
reference, so Python won't call the destructor, this is good for toolbars
and such where the parent will manage the bitmap.}
\twocolitem{\bf{wxEmptyBitmap(width, height, depth = -1)}}{Creates an
empty bitmap with the given specifications}
\end{twocollist}}
}
\membersection{wxBitmap::\destruct{wxBitmap}}
\func{}{\destruct{wxBitmap}}{\void}
Destroys the wxBitmap object and possibly the underlying bitmap data.
Because reference counting is used, the bitmap may not actually be
destroyed at this point - only when the reference count is zero will the
data be deleted.
If the application omits to delete the bitmap explicitly, the bitmap will be
destroyed automatically by wxWindows when the application exits.
Do not delete a bitmap that is selected into a memory device context.
\membersection{wxBitmap::AddHandler}\label{wxbitmapaddhandler}
\func{static void}{AddHandler}{\param{wxBitmapHandler*}{ handler}}
Adds a handler to the end of the static list of format handlers.
\docparam{handler}{A new bitmap format handler object. There is usually only one instance
of a given handler class in an application session.}
\wxheading{See also}
\helpref{wxBitmapHandler}{wxbitmaphandler}
\membersection{wxBitmap::CleanUpHandlers}
\func{static void}{CleanUpHandlers}{\void}
Deletes all bitmap handlers.
This function is called by wxWindows on exit.
\membersection{wxBitmap::Create}
\func{virtual bool}{Create}{\param{int}{ width}, \param{int}{ height}, \param{int}{ depth = -1}}
Creates a fresh bitmap. If the final argument is omitted, the display depth of
the screen is used.
\func{virtual bool}{Create}{\param{void*}{ data}, \param{int}{ type}, \param{int}{ width}, \param{int}{ height}, \param{int}{ depth = -1}}
Creates a bitmap from the given data, which can be of arbitrary type.
\wxheading{Parameters}
\docparam{width}{The width of the bitmap in pixels.}
\docparam{height}{The height of the bitmap in pixels.}
\docparam{depth}{The depth of the bitmap in pixels. If this is -1, the screen depth is used.}
\docparam{data}{Data whose type depends on the value of {\it type}.}
\docparam{type}{A bitmap type identifier - see \helpref{wxBitmap::wxBitmap}{wxbitmapconstr} for a list
of possible values.}
\wxheading{Return value}
TRUE if the call succeeded, FALSE otherwise.
\wxheading{Remarks}
The first form works on all platforms. The portability of the second form depends on the
type of data.
\wxheading{See also}
\helpref{wxBitmap::wxBitmap}{wxbitmapconstr}
\membersection{wxBitmap::FindHandler}
\func{static wxBitmapHandler*}{FindHandler}{\param{const wxString\& }{name}}
Finds the handler with the given name.
\func{static wxBitmapHandler*}{FindHandler}{\param{const wxString\& }{extension}, \param{long}{ bitmapType}}
Finds the handler associated with the given extension and type.
\func{static wxBitmapHandler*}{FindHandler}{\param{long }{bitmapType}}
Finds the handler associated with the given bitmap type.
\docparam{name}{The handler name.}
\docparam{extension}{The file extension, such as ``bmp".}
\docparam{bitmapType}{The bitmap type, such as wxBITMAP\_TYPE\_BMP.}
\wxheading{Return value}
A pointer to the handler if found, NULL otherwise.
\wxheading{See also}
\helpref{wxBitmapHandler}{wxbitmaphandler}
\membersection{wxBitmap::GetDepth}
\constfunc{int}{GetDepth}{\void}
Gets the colour depth of the bitmap. A value of 1 indicates a
monochrome bitmap.
\membersection{wxBitmap::GetHandlers}
\func{static wxList\&}{GetHandlers}{\void}
Returns the static list of bitmap format handlers.
\wxheading{See also}
\helpref{wxBitmapHandler}{wxbitmaphandler}
\membersection{wxBitmap::GetHeight}\label{wxbitmapgetheight}
\constfunc{int}{GetHeight}{\void}
Gets the height of the bitmap in pixels.
\membersection{wxBitmap::GetPalette}\label{wxbitmapgetpalette}
\constfunc{wxPalette*}{GetPalette}{\void}
Gets the associated palette (if any) which may have been loaded from a file
or set for the bitmap.
\wxheading{See also}
\helpref{wxPalette}{wxpalette}
\membersection{wxBitmap::GetMask}\label{wxbitmapgetmask}
\constfunc{wxMask*}{GetMask}{\void}
Gets the associated mask (if any) which may have been loaded from a file
or set for the bitmap.
\wxheading{See also}
\helpref{wxBitmap::SetMask}{wxbitmapsetmask}, \helpref{wxMask}{wxmask}
\membersection{wxBitmap::GetWidth}\label{wxbitmapgetwidth}
\constfunc{int}{GetWidth}{\void}
Gets the width of the bitmap in pixels.
\wxheading{See also}
\helpref{wxBitmap::GetHeight}{wxbitmapgetheight}
\membersection{wxBitmap::InitStandardHandlers}
\func{static void}{InitStandardHandlers}{\void}
Adds the standard bitmap format handlers, which, depending on wxWindows
configuration, can be handlers for Windows bitmap, Windows bitmap resource, and XPM.
This function is called by wxWindows on startup.
\wxheading{See also}
\helpref{wxBitmapHandler}{wxbitmaphandler}
\membersection{wxBitmap::InsertHandler}
\func{static void}{InsertHandler}{\param{wxBitmapHandler*}{ handler}}
Adds a handler at the start of the static list of format handlers.
\docparam{handler}{A new bitmap format handler object. There is usually only one instance
of a given handler class in an application session.}
\wxheading{See also}
\helpref{wxBitmapHandler}{wxbitmaphandler}
\membersection{wxBitmap::LoadFile}\label{wxbitmaploadfile}
\func{bool}{LoadFile}{\param{const wxString\&}{ name}, \param{long}{ type}}
Loads a bitmap from a file or resource.
\wxheading{Parameters}
\docparam{name}{Either a filename or a Windows resource name.
The meaning of {\it name} is determined by the {\it type} parameter.}
\docparam{type}{One of the following values:
\twocolwidtha{5cm}
\begin{twocollist}
\twocolitem{{\bf wxBITMAP\_TYPE\_BMP}}{Load a Windows bitmap file.}
\twocolitem{{\bf wxBITMAP\_TYPE\_BMP\_RESOURCE}}{Load a Windows bitmap from the resource database.}
\twocolitem{{\bf wxBITMAP\_TYPE\_GIF}}{Load a GIF bitmap file.}
\twocolitem{{\bf wxBITMAP\_TYPE\_XBM}}{Load an X bitmap file.}
\twocolitem{{\bf wxBITMAP\_TYPE\_XPM}}{Load an XPM bitmap file.}
\end{twocollist}
The validity of these flags depends on the platform and wxWindows configuration.}
\wxheading{Return value}
TRUE if the operation succeeded, FALSE otherwise.
\wxheading{Remarks}
A palette may be associated with the bitmap if one exists (especially for
colour Windows bitmaps), and if the code supports it. You can check
if one has been created by using the \helpref{GetPalette}{wxbitmapgetpalette} member.
\wxheading{See also}
\helpref{wxBitmap::SaveFile}{wxbitmapsavefile}
\membersection{wxBitmap::Ok}\label{wxbitmapok}
\constfunc{bool}{Ok}{\void}
Returns TRUE if bitmap data is present.
\membersection{wxBitmap::RemoveHandler}
\func{static bool}{RemoveHandler}{\param{const wxString\& }{name}}
Finds the handler with the given name, and removes it. The handler
is not deleted.
\docparam{name}{The handler name.}
\wxheading{Return value}
TRUE if the handler was found and removed, FALSE otherwise.
\wxheading{See also}
\helpref{wxBitmapHandler}{wxbitmaphandler}
\membersection{wxBitmap::SaveFile}\label{wxbitmapsavefile}
\func{bool}{SaveFile}{\param{const wxString\& }{name}, \param{int}{ type}, \param{wxPalette* }{palette = NULL}}
Saves a bitmap in the named file.
\wxheading{Parameters}
\docparam{name}{A filename. The meaning of {\it name} is determined by the {\it type} parameter.}
\docparam{type}{One of the following values:
\twocolwidtha{5cm}
\begin{twocollist}
\twocolitem{{\bf wxBITMAP\_TYPE\_BMP}}{Save a Windows bitmap file.}
\twocolitem{{\bf wxBITMAP\_TYPE\_GIF}}{Save a GIF bitmap file.}
\twocolitem{{\bf wxBITMAP\_TYPE\_XBM}}{Save an X bitmap file.}
\twocolitem{{\bf wxBITMAP\_TYPE\_XPM}}{Save an XPM bitmap file.}
\end{twocollist}
The validity of these flags depends on the platform and wxWindows configuration.}
\docparam{palette}{An optional palette used for saving the bitmap.}
% TODO: this parameter should
%probably be eliminated; instead the app should set the palette before saving.
\wxheading{Return value}
TRUE if the operation succeeded, FALSE otherwise.
\wxheading{Remarks}
Depending on how wxWindows has been configured, not all formats may be available.
\wxheading{See also}
\helpref{wxBitmap::LoadFile}{wxbitmaploadfile}
\membersection{wxBitmap::SetDepth}\label{wxbitmapsetdepth}
\func{void}{SetDepth}{\param{int }{depth}}
Sets the depth member (does not affect the bitmap data).
\wxheading{Parameters}
\docparam{depth}{Bitmap depth.}
\membersection{wxBitmap::SetHeight}\label{wxbitmapsetheight}
\func{void}{SetHeight}{\param{int }{height}}
Sets the height member (does not affect the bitmap data).
\wxheading{Parameters}
\docparam{height}{Bitmap height in pixels.}
\membersection{wxBitmap::SetMask}\label{wxbitmapsetmask}
\func{void}{SetMask}{\param{wxMask* }{mask}}
Sets the mask for this bitmap.
\wxheading{Remarks}
The bitmap object owns the mask once this has been called.
\wxheading{See also}
\helpref{wxBitmap::GetMask}{wxbitmapgetmask}, \helpref{wxMask}{wxmask}
\membersection{wxBitmap::SetOk}
\func{void}{SetOk}{\param{int }{isOk}}
Sets the validity member (does not affect the bitmap data).
\wxheading{Parameters}
\docparam{isOk}{Validity flag.}
\membersection{wxBitmap::SetPalette}\label{wxbitmapsetpalette}
\func{void}{SetPalette}{\param{wxPalette* }{palette}}
Sets the associated palette: it will be deleted in the wxBitmap
destructor, so if you do not wish it to be deleted automatically,
reset the palette to NULL before the bitmap is deleted.
\wxheading{Parameters}
\docparam{palette}{The palette to set.}
\wxheading{Remarks}
The bitmap object owns the palette once this has been called.
\wxheading{See also}
\helpref{wxPalette}{wxpalette}
\membersection{wxBitmap::SetWidth}
\func{void}{SetWidth}{\param{int }{width}}
Sets the width member (does not affect the bitmap data).
\wxheading{Parameters}
\docparam{width}{Bitmap width in pixels.}
\membersection{wxBitmap::operator $=$}
\func{wxBitmap\& }{operator $=$}{\param{const wxBitmap\& }{bitmap}}
Assignment operator. This operator does not copy any data, but instead
passes a pointer to the data in {\it bitmap} and increments a reference
counter. It is a fast operation.
\wxheading{Parameters}
\docparam{bitmap}{Bitmap to assign.}
\wxheading{Return value}
Returns 'this' object.
\membersection{wxBitmap::operator $==$}
\func{bool}{operator $==$}{\param{const wxBitmap\& }{bitmap}}
Equality operator. This operator tests whether the internal data pointers are
equal (a fast test).
\wxheading{Parameters}
\docparam{bitmap}{Bitmap to compare with 'this'}
\wxheading{Return value}
Returns TRUE if the bitmaps were effectively equal, FALSE otherwise.
\membersection{wxBitmap::operator $!=$}
\func{bool}{operator $!=$}{\param{const wxBitmap\& }{bitmap}}
Inequality operator. This operator tests whether the internal data pointers are
unequal (a fast test).
\wxheading{Parameters}
\docparam{bitmap}{Bitmap to compare with 'this'}
\wxheading{Return value}
Returns TRUE if the bitmaps were unequal, FALSE otherwise.
\section{\class{wxBitmapHandler}}\label{wxbitmaphandler}
\overview{Overview}{wxbitmapoverview}
This is the base class for implementing bitmap file loading/saving, and bitmap creation from data.
It is used within wxBitmap and is not normally seen by the application.
If you wish to extend the capabilities of wxBitmap, derive a class from wxBitmapHandler
and add the handler using \helpref{wxBitmap::AddHandler}{wxbitmapaddhandler} in your
application initialisation.
\wxheading{Derived from}
\helpref{wxObject}{wxobject}
\wxheading{Include files}
<wx/bitmap.h>
\wxheading{See also}
\helpref{wxBitmap}{wxbitmap}, \helpref{wxIcon}{wxicon}, \helpref{wxCursor}{wxcursor}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxBitmapHandler::wxBitmapHandler}\label{wxbitmaphandlerconstr}
\func{}{wxBitmapHandler}{\void}
Default constructor. In your own default constructor, initialise the members
m\_name, m\_extension and m\_type.
\membersection{wxBitmapHandler::\destruct{wxBitmapHandler}}
\func{}{\destruct{wxBitmapHandler}}{\void}
Destroys the wxBitmapHandler object.
\membersection{wxBitmapHandler::Create}
\func{virtual bool}{Create}{\param{wxBitmap* }{bitmap}, \param{void*}{ data}, \param{int}{ type}, \param{int}{ width}, \param{int}{ height}, \param{int}{ depth = -1}}
Creates a bitmap from the given data, which can be of arbitrary type. The wxBitmap object {\it bitmap} is
manipulated by this function.
\wxheading{Parameters}
\docparam{bitmap}{The wxBitmap object.}
\docparam{width}{The width of the bitmap in pixels.}
\docparam{height}{The height of the bitmap in pixels.}
\docparam{depth}{The depth of the bitmap in pixels. If this is -1, the screen depth is used.}
\docparam{data}{Data whose type depends on the value of {\it type}.}
\docparam{type}{A bitmap type identifier - see \helpref{wxBitmapHandler::wxBitmapHandler}{wxbitmapconstr} for a list
of possible values.}
\wxheading{Return value}
TRUE if the call succeeded, FALSE otherwise (the default).
\membersection{wxBitmapHandler::GetName}
\constfunc{wxString}{GetName}{\void}
Gets the name of this handler.
\membersection{wxBitmapHandler::GetExtension}
\constfunc{wxString}{GetExtension}{\void}
Gets the file extension associated with this handler.
\membersection{wxBitmapHandler::GetType}
\constfunc{long}{GetType}{\void}
Gets the bitmap type associated with this handler.
\membersection{wxBitmapHandler::LoadFile}\label{wxbitmaphandlerloadfile}
\func{bool}{LoadFile}{\param{wxBitmap* }{bitmap}, \param{const wxString\&}{ name}, \param{long}{ type}}
Loads a bitmap from a file or resource, putting the resulting data into {\it bitmap}.
\wxheading{Parameters}
\docparam{bitmap}{The bitmap object which is to be affected by this operation.}
\docparam{name}{Either a filename or a Windows resource name.
The meaning of {\it name} is determined by the {\it type} parameter.}
\docparam{type}{See \helpref{wxBitmap::wxBitmap}{wxbitmapconstr} for values this can take.}
\wxheading{Return value}
TRUE if the operation succeeded, FALSE otherwise.
\wxheading{See also}
\helpref{wxBitmap::LoadFile}{wxbitmaploadfile}\\
\helpref{wxBitmap::SaveFile}{wxbitmapsavefile}\\
\helpref{wxBitmapHandler::SaveFile}{wxbitmaphandlersavefile}
\membersection{wxBitmapHandler::SaveFile}\label{wxbitmaphandlersavefile}
\func{bool}{SaveFile}{\param{wxBitmap* }{bitmap}, \param{const wxString\& }{name}, \param{int}{ type}, \param{wxPalette* }{palette = NULL}}
Saves a bitmap in the named file.
\wxheading{Parameters}
\docparam{bitmap}{The bitmap object which is to be affected by this operation.}
\docparam{name}{A filename. The meaning of {\it name} is determined by the {\it type} parameter.}
\docparam{type}{See \helpref{wxBitmap::wxBitmap}{wxbitmapconstr} for values this can take.}
\docparam{palette}{An optional palette used for saving the bitmap.}
\wxheading{Return value}
TRUE if the operation succeeded, FALSE otherwise.
\wxheading{See also}
\helpref{wxBitmap::LoadFile}{wxbitmaploadfile}\\
\helpref{wxBitmap::SaveFile}{wxbitmapsavefile}\\
\helpref{wxBitmapHandler::LoadFile}{wxbitmaphandlerloadfile}
\membersection{wxBitmapHandler::SetName}
\func{void}{SetName}{\param{const wxString\& }{name}}
Sets the handler name.
\wxheading{Parameters}
\docparam{name}{Handler name.}
\membersection{wxBitmapHandler::SetExtension}
\func{void}{SetExtension}{\param{const wxString\& }{extension}}
Sets the handler extension.
\wxheading{Parameters}
\docparam{extension}{Handler extension.}
\membersection{wxBitmapHandler::SetType}
\func{void}{SetType}{\param{long }{type}}
Sets the handler type.
\wxheading{Parameters}
\docparam{name}{Handler type.}

View File

@@ -1,116 +0,0 @@
\section{\class{wxBitmapDataObject}}\label{wxbitmapdataobject}
wxBitmapDataObject is a specialization of wxDataObject for bitmap data. It can be
used without change to paste data into the \helpref{wxClipboard}{wxclipboard}
or a \helpref{wxDropSource}{wxdropsource}. A user may wish to derive a new class
from this class for providing a bitmap on-demand in order to minimize memory consumption
when offering data in several formats, such as a bitmap and GIF.
In order to offer bitmap data on-demand \helpref{GetSize}{wxbitmapdataobjectgetsize}
and \helpref{WriteData}{wxbitmapdataobjectwritedata} will have to be overridden.
\wxheading{Derived from}
\helpref{wxDataObject}{wxdataobject}
\wxheading{Include files}
<wx/dataobj.h>
\wxheading{See also}
\helpref{wxDataObject}{wxdataobject}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxBitmapDataObject::wxBitmapDataObject}\label{wxbitmapdataobjectwxbitmapdataobject}
\func{}{wxBitmapDataObject}{\void}
Default constructor. Call \helpref{SetBitmap}{wxbitmapdataobjectsetbitmap} later
or override \helpref{WriteData}{wxbitmapdataobjectwritedata} and
\helpref{GetSize}{wxbitmapdataobjectgetsize} for providing data on-demand.
\func{}{wxBitmapDataObject}{\param{const wxBitmap\& }{bitmap}}
Constructor, passing a bitmap.
\membersection{wxBitmapDataObject::GetSize}\label{wxbitmapdataobjectgetsize}
\constfunc{virtual size\_t}{GetSize}{\void}
Returns the data size. By default, returns the size of the bitmap data
set in the constructor or using \helpref{SetBitmap}{wxbitmapdataobjectsetbitmap}.
This can be overridden to provide size data on-demand. Note that you'd
have to call the inherited GetSize method as this is the only way
to get to know the transfer size of the bitmap in a platform dependent
way - a bitmap has different size under GTK and Windows. In practice,
this would look like this:
\begin{verbatim}
size_t MyBitmapDataObject::GetSize()
{
// Get bitmap from global container. This container
// should be able to "produce" data in all formats
// offered by the application but store it only in
// one format to reduce memory consumption.
wxBitmap my_bitmap = my_global_container->GetBitmap();
// temporarily set bitmap
SetBitmap( my_bitmap );
size_t ret = wxBitmapDataObject::GetSize();
// unset bitmap again
SetBitmap( wxNullBitmap );
retrun ret;
}
\end{verbatim}
TODO: Offer a nicer way to do this. Maybe by providing a platform
dependent function in this class like
\begin{verbatim}
size_t GetBitmapSize( const wxBitmap &bitmap )
\end{verbatim}
\membersection{wxBitmapDataObject::GetBitmap}\label{wxbitmapdataobjectgettext}
\constfunc{virtual wxBitmap}{GetBitmap}{\void}
Returns the bitmap associated with the data object. You may wish to override
this method when offering data on-demand, but this is not required by
wxWindows' internals. Use this method to get data in bitmap form from
the \helpref{wxClipboard}{wxclipboard}.
\membersection{wxBitmapDataObject::SetBitmap}\label{wxbitmapdataobjectsetbitmap}
\func{virtual void}{SetBitmap}{\param{const wxBitmap\& }{bitmap}}
Sets the bitmap associated with the data object. This method is called
internally when retrieving data from the \helpref{wxClipboard}{wxclipboard}
and may be used to paste data to the clipboard directly (instead of
on-demand).
\membersection{wxBitmapDataObject::WriteData}\label{wxbitmapdataobjectwritedata}
\constfunc{virtual void}{WriteData}{\param{void}{*dest} }
Write the data owned by this class to {\it dest}. By default, this
calls \helpref{WriteBitmap}{wxbitmapdataobjectwritebitmap} with the bitmap
set in the constructor or using \helpref{SetBitmap}{wxbitmapdataobjectsetbitmap}.
This can be overridden to provide bitmap data on-demand; in this case
\helpref{WriteBitmap}{wxbitmapdataobjectwritebitmap} must be called from
within th overriding WriteData() method.
\membersection{wxBitmapDataObject::WriteBitmap}\label{wxbitmapdataobjectwritebitmap}
\constfunc{void}{WriteBitmap}{\param{const wxBitmap\& }{bitmap}\param{void}{*dest} }
Writes the the bitmap {\it bitmap} to {\it dest}. This method must be called
from \helpref{WriteData}{wxbitmapdataobjectwritedata}.

Some files were not shown because too many files have changed in this diff Show More