public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* c++/6035: Internal compiler error in extract_insn
@ 2002-03-22 1:56 ian.brown
0 siblings, 0 replies; 2+ messages in thread
From: ian.brown @ 2002-03-22 1:56 UTC (permalink / raw)
To: gcc-gnats
>Number: 6035
>Category: c++
>Synopsis: Internal compiler error in extract_insn
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Fri Mar 22 01:56:02 PST 2002
>Closed-Date:
>Last-Modified:
>Originator: Ian Brown
>Release: 3.0.4
>Organization:
>Environment:
AIX 4.3.3 RS6000
>Description:
Internal compiler error when compiling wxWindows X11 port (2.3.3a). The -v output is shown below, and the preprocessed source is attached.
% gcc -v -save-temps -c -D__WXMOTIF__ -D_REENTRANT -fno-rtti -fno-exceptions -MMD -I./lib/wx/include/motif-2.3
-I../wxX11/include -INONE -I/usr/include/Motif1.2 -Wall -o datetime.o ../wxX11/src/common/datetime.cpp
Reading specs from /usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/specs
Configured with: /usr/local/src/gcc-3.0.4/configure --disable-multilib --enable-threads --enable-languages=c,c++ --disable-nls
Thread model: single
gcc version 3.0.4
/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/cpp0 -lang-c++ -D__GNUG__=3 -D__GXX_DEPRECATED -D__GXX_ABI_VERSION=100 -v
-I./lib/wx/include/motif-2.3 -I../wxX11/include -INONE -I/usr/include/Motif1.2 -MM -MF datetime.d -MQ datetime.o -D__GNUC__=3
-D__GNUC_MINOR__=0 -D__GNUC_PATCHLEVEL__=4 -D_IBMR2 -D_POWER -D_AIX -D_AIX32 -D_AIX41 -D_AIX43 -D_LONG_LONG -D_IBMR2 -D_POWER
-D_AIX -D_AIX32 -D_AIX41 -D_AIX43 -D_LONG_LONG -Asystem=unix -Asystem=aix -D__CHAR_UNSIGNED__ -D__NO_INLINE__
-D__STDC_HOSTED__=1 -Wall -D_XOPEN_SOURCE=500 -D_XOPEN_SOURCE_EXTENDED=1 -D_LARGE_FILE_API -D_ALL_SOURCE -D_ARCH_COM
-D__WXMOTIF__ -D_REENTRANT ../wxX11/src/common/datetime.cpp datetime.ii
ignoring nonexistent directory "NONE"
GNU CPP version 3.0.4 (cpplib)
ignoring nonexistent directory "NONE/include"
ignoring nonexistent directory "/usr/local/powerpc-ibm-aix4.3.3.0/include"
ignoring duplicate directory "/usr/local/include"
#include "..." search starts here:
#include <...> search starts here:
lib/wx/include/motif-2.3
../wxX11/include
/usr/include/Motif1.2
/usr/local/include
/usr/local/include/g++-v3
/usr/local/include/g++-v3/powerpc-ibm-aix4.3.3.0
/usr/local/include/g++-v3/backward
/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include
/usr/include
End of search list.
/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/cc1plus -fpreprocessed datetime.ii -quiet -dumpbase datetime.cpp -Wall
-version -fno-rtti -fno-exceptions -o datetime.s
GNU CPP version 3.0.4 (cpplib)
GNU C++ version 3.0.4 (powerpc-ibm-aix4.3.3.0)
compiled by GNU C version 3.0.4.
../wxX11/src/common/datetime.cpp: In static member function `static wxDateTime
wxDateTime::GetBeginDST(int, wxDateTime::Country)':
../wxX11/src/common/datetime.cpp:994: Unrecognizable insn:
(insn 77 75 78 (set (reg:DI 93)
(mem/s/u (reg/f:SI 92) 0)) -1 (nil)
(expr_list:REG_DEAD (reg/f:SI 92)
(nil)))
../wxX11/src/common/datetime.cpp:994: Internal compiler error in extract_insn,
at recog.c:2218
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.
%
>How-To-Repeat:
preprocessed source code is attached.
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: text/plain; name="datetime.ii"
Content-Disposition: inline; filename="datetime.ii"
# 56 "../wxX11/src/common/datetime.cpp"
#pragma implementation "datetime.h"
# 1 "../wxX11/include/wx/wxprec.h" 1
# 13 "../wxX11/include/wx/wxprec.h"
# 1 "../wxX11/include/wx/defs.h" 1
# 16 "../wxX11/include/wx/defs.h"
#pragma interface "defs.h"
# 1 "../wxX11/include/wx/platform.h" 1
# 62 "../wxX11/include/wx/platform.h"
# 1 "lib/wx/include/motif-2.3/wx/setup.h" 1
#pragma interface
# 1093 "lib/wx/include/motif-2.3/wx/setup.h"
# 1 "../wxX11/include/wx/chkconf.h" 1
# 1094 "lib/wx/include/motif-2.3/wx/setup.h" 2
# 63 "../wxX11/include/wx/platform.h" 2
# 1 "../wxX11/include/wx/chkconf.h" 1
# 66 "../wxX11/include/wx/platform.h" 2
# 24 "../wxX11/include/wx/defs.h" 2
# 39 "../wxX11/include/wx/defs.h"
# 1 "../wxX11/include/wx/features.h" 1
# 40 "../wxX11/include/wx/defs.h" 2
# 78 "../wxX11/include/wx/defs.h"
# 1 "../wxX11/include/wx/version.h" 1
# 79 "../wxX11/include/wx/defs.h" 2
# 186 "../wxX11/include/wx/defs.h"
typedef short int WXTYPE;
typedef int wxWindowID;
# 321 "../wxX11/include/wx/defs.h"
class wxObject;
class wxEvent;
# 335 "../wxX11/include/wx/defs.h"
# 1 "../wxX11/include/wx/debug.h" 1
# 15 "../wxX11/include/wx/debug.h"
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/assert.h" 1 3 4
# 56 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/assert.h" 3 4
extern void __assert(const char *, const char *, int);
# 16 "../wxX11/include/wx/debug.h" 2
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/limits.h" 1 3 4
# 11 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/limits.h" 3 4
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/syslimits.h" 1 3 4
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/limits.h" 1 3 4
# 125 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/limits.h" 3 4
# 1 "/usr/include/limits.h" 1 3 4
# 30 "/usr/include/limits.h" 3 4
# 1 "/usr/include/sys/limits.h" 1 3 4
# 35 "/usr/include/sys/limits.h" 3 4
extern "C" {
# 1 "/usr/include/standards.h" 1 3 4
# 40 "/usr/include/sys/limits.h" 2 3 4
# 247 "/usr/include/sys/limits.h" 3 4
# 1 "/usr/include/float.h" 1 3 4
# 206 "/usr/include/float.h" 3 4
extern unsigned int SINFINITY;
extern unsigned int _DBLINF[2];
extern unsigned int SQNAN;
extern unsigned int DQNAN[2];
extern unsigned int SSNAN;
extern unsigned int DSNAN[2];
# 237 "/usr/include/float.h" 3 4
typedef unsigned short fprnd_t;
# 246 "/usr/include/float.h" 3 4
fprnd_t fp_read_rnd(void);
fprnd_t fp_swap_rnd(fprnd_t rnd);
# 248 "/usr/include/sys/limits.h" 2 3 4
# 397 "/usr/include/sys/limits.h" 3 4
}
# 31 "/usr/include/limits.h" 2 3 4
# 126 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/limits.h" 2 3 4
# 8 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/syslimits.h" 2 3 4
# 12 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/limits.h" 2 3 4
# 17 "../wxX11/include/wx/debug.h" 2
# 1 "../wxX11/include/wx/wxchar.h" 1
# 16 "../wxX11/include/wx/wxchar.h"
#pragma interface "wxchar.h"
# 303 "../wxX11/include/wx/wxchar.h"
# 1 "/usr/include/wcstr.h" 1 3 4
# 36 "/usr/include/wcstr.h" 3 4
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/string.h" 1 3 4
# 53 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/string.h" 3 4
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 1 3 4
# 52 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 3 4
extern "C" {
# 64 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 3 4
# 1 "/usr/include/sys/inttypes.h" 1 3 4
# 56 "/usr/include/sys/inttypes.h" 3 4
extern "C" {
# 65 "/usr/include/sys/inttypes.h" 3 4
typedef signed char int8_t;
typedef signed short int16_t;
typedef signed int int32_t;
typedef signed long long int64_t;
typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
typedef unsigned long long uint64_t;
# 92 "/usr/include/sys/inttypes.h" 3 4
typedef int64_t intmax_t;
typedef uint64_t uintmax_t;
# 104 "/usr/include/sys/inttypes.h" 3 4
typedef signed long intptr_t;
typedef unsigned long uintptr_t;
typedef signed char int_least8_t;
typedef signed short int_least16_t;
typedef signed int int_least32_t;
typedef signed long long int_least64_t;
typedef unsigned char uint_least8_t;
typedef unsigned short uint_least16_t;
typedef unsigned int uint_least32_t;
typedef unsigned long long uint_least64_t;
# 138 "/usr/include/sys/inttypes.h" 3 4
typedef int32_t intfast_t;
typedef uint32_t uintfast_t;
typedef signed char int_fast8_t;
typedef int32_t int_fast16_t;
typedef int32_t int_fast32_t;
typedef uint32_t uint_fast8_t;
typedef uint32_t uint_fast16_t;
typedef uint32_t uint_fast32_t;
typedef int64_t int_fast64_t;
typedef uint64_t uint_fast64_t;
# 575 "/usr/include/sys/inttypes.h" 3 4
typedef signed long __long32_t;
typedef unsigned long __ulong32_t;
# 587 "/usr/include/sys/inttypes.h" 3 4
typedef signed int __long64_t;
typedef unsigned int __ulong64_t;
# 599 "/usr/include/sys/inttypes.h" 3 4
typedef signed int int32long64_t;
typedef unsigned int uint32long64_t;
# 612 "/usr/include/sys/inttypes.h" 3 4
typedef signed long long32int64_t;
typedef unsigned long ulong32int64_t;
# 622 "/usr/include/sys/inttypes.h" 3 4
typedef signed char int8;
typedef signed short int16;
typedef signed int int32;
typedef signed long long int64;
typedef unsigned char u_int8;
typedef unsigned char u_int8_t;
typedef unsigned short u_int16;
typedef unsigned short u_int16_t;
typedef unsigned int u_int32;
typedef unsigned int u_int32_t;
typedef unsigned long long u_int64;
typedef unsigned long long u_int64_t;
# 664 "/usr/include/sys/inttypes.h" 3 4
extern long strtoimax(const char *, char **, int);
}
# 65 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 2 3 4
# 87 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 3 4
typedef long int ptrdiff_t;
# 105 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 3 4
typedef unsigned int wctype_t;
# 114 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 3 4
typedef long fpos_t;
typedef long long fpos64_t;
typedef int32long64_t time_t;
typedef int clock_t;
typedef long unsigned int size_t;
# 148 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 3 4
typedef unsigned char uchar_t;
typedef unsigned short ushort_t;
typedef unsigned int uint_t;
typedef unsigned long ulong_t;
typedef signed long ssize_t;
typedef int level_t;
typedef int32long64_t daddr_t;
typedef int daddr32_t;
typedef int64_t daddr64_t;
typedef char * caddr_t;
typedef uint32long64_t ino_t;
typedef uint_t ino32_t;
typedef uint64_t ino64_t;
typedef short cnt_t;
typedef uint32long64_t dev_t;
typedef uint_t dev32_t;
typedef uint64_t dev64_t;
typedef int chan_t;
typedef int time32_t;
typedef int pid32_t;
typedef int tid32_t;
typedef uint64_t pid64_t;
typedef uint64_t tid64_t;
typedef uint64_t time64_t;
typedef void * __ptr32;
typedef char * __cptr32;
typedef int soff_t;
typedef long off_t;
typedef long long off64_t;
typedef long paddr_t;
typedef int32long64_t key_t;
typedef int timer_t;
typedef short nlink_t;
typedef uint_t mode_t;
typedef uint_t uid_t;
typedef uint_t gid_t;
typedef __ptr32 mid_t;
typedef int32long64_t pid_t;
typedef int32long64_t tid_t;
typedef char slab_t[12];
typedef long mtyp_t;
typedef int boolean_t;
typedef int crid_t;
typedef int blkcnt_t;
typedef int blksize_t;
# 234 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 3 4
typedef ulong_t fsblkcnt_t;
typedef ulong_t fsfilcnt_t;
typedef int wint_t;
typedef uint32long64_t id_t;
typedef unsigned int useconds_t;
typedef signed int suseconds_t;
typedef int clockid_t;
typedef struct sigset_t {
unsigned int losigs;
unsigned int hisigs;
} sigset_t;
typedef int signal_t;
typedef struct fsid_t {
unsigned int val[2];
} fsid_t;
# 285 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 3 4
typedef struct __ptq_queue {
struct __ptq_queue *__ptq_next;
struct __ptq_queue *__ptq_prev;
} __ptq_queue;
typedef int __ptlock_type;
typedef struct __pt_attr *pthread_attr_t;
typedef struct __pt_attr *pthread_condattr_t;
typedef struct __pt_attr *pthread_mutexattr_t;
typedef struct __pt_attr *pthread_rwlockattr_t;
typedef unsigned int pthread_t;
typedef unsigned int pthread_key_t;
# 337 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 3 4
typedef struct {
__ptq_queue * __ptq_link;
int __reserved1;
__ptlock_type __ptmtx_lock;
int __ptmtx_flags;
pthread_t __ptmtx_owner;
int __mtx_id;
int __acquisitions;
int __mtx_kind;
int __lock_cpt;
int __sleeps;
int __misses;
int __reserved2;
unsigned long __ptmtx_dbx;
} pthread_mutex_t;
typedef struct {
unsigned long __ptcv_dbx;
int __reserved1;
__ptlock_type __ptcv_lock;
int __ptcv_flags;
__ptq_queue * __ptcv_waiters;
int __reserved2;
int __cv_id;
unsigned int __cv_mutex;
int __reserved3;
int __cptwait;
int __reserved;
} pthread_cond_t;
typedef struct {
__ptlock_type __ptonce_lock;
int __ptonce_initialized;
int __ptonce_executing;
int __ptonce_completed;
pthread_mutex_t __ptonce_mutex;
pthread_cond_t __ptonce_executed;
} pthread_once_t;
typedef struct {
int __pad;
unsigned long __ptrlock_dbx;
pthread_mutex_t __rwl_mutex;
pthread_cond_t __rwl_rsleepers;
pthread_cond_t __rwl_wsleepers;
int __rwl_flags;
pthread_t __rwl_owner;
int __rwl_rwlock_id;
int __rwl_lock_count;
int __rwl_waiting;
int __rwl_wacquisitions;
int __rwl_racquisitions;
int __rwl_wsleeps;
int __rwl_rsleeps;
unsigned long __reserved[6];
} pthread_rwlock_t;
typedef struct _quad { int val[2]; } quad;
# 1 "/usr/include/sys/m_types.h" 1 3 4
# 40 "/usr/include/sys/m_types.h" 3 4
# 1 "/usr/include/sys/vm_types.h" 1 3 4
# 34 "/usr/include/sys/vm_types.h" 3 4
typedef long vmid_t;
# 45 "/usr/include/sys/vm_types.h" 3 4
typedef ulong_t vmhandle_t;
# 58 "/usr/include/sys/vm_types.h" 3 4
typedef long32int64_t kvmid_t;
typedef ulong32int64_t kvmhandle_t;
typedef int kvmidx_t;
typedef int32long64_t vmidx_t;
typedef int32long64_t vmkey_t;
typedef int32long64_t vpn_t;
typedef int32long64_t rpn_t;
typedef signed long long rpn64_t;
typedef int kvpn_t;
typedef int krpn_t;
typedef int32long64_t vmsize_t;
typedef struct
vmaddr_t
{
vmhandle_t srval;
caddr_t offset;
} vmaddr_t;
typedef struct
adspace_t
{
ulong32int64_t alloc;
kvmhandle_t srval[16];
} adspace_t;
typedef enum _MR_ATTR_TYPE {
VirtAddr = 1
} MR_ATTR_TYPE;
typedef enum _MR_LABEL_TYPE {
FreeMem = 1,
IPLCB = 2,
RMALLOC = 3,
PM_HEAP = 4,
RTAS_HEAP = 5,
TCE_TABLE = 6,
IO_SPACE = 7
} MR_LABEL_TYPE;
typedef struct {
unsigned long long mr_addr;
unsigned long long mr_size;
unsigned char mr_att;
unsigned char mr_label;
unsigned short mr_nodeid;
char reserved[4];
} iplcb_map_reg_t;
# 41 "/usr/include/sys/m_types.h" 2 3 4
typedef struct
label_t
{
struct label_t *prev;
ulong_t iar;
ulong_t stack;
ulong_t toc;
ulong_t cr;
ulong_t intpri;
ulong_t reg[19];
# 70 "/usr/include/sys/m_types.h" 3 4
} label_t;
typedef int32long64_t ext_t;
# 417 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 2 3 4
typedef char * va_list;
# 465 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 3 4
typedef unsigned long long __ptr64;
typedef unsigned long long __cptr64;
typedef ushort_t UniChar;
typedef uchar_t uchar;
typedef ushort_t ushort;
typedef uint_t uint;
typedef ulong_t ulong;
typedef struct { int r[1]; } * physadr_t;
typedef physadr_t physadr;
typedef unsigned char u_char;
typedef unsigned short u_short;
typedef unsigned int u_int;
typedef unsigned long u_long;
typedef int swblk_t;
struct sigset {
unsigned int losigs;
unsigned int hisigs;
};
struct fsid {
unsigned int val[2];
};
# 518 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 3 4
struct fileid {
uint_t fid_len;
ino32_t fid_ino;
uint_t fid_gen;
char fid_x[20 - (sizeof(ino32_t) + 2) - sizeof(uint_t)];
};
# 539 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 3 4
struct fid {
uint_t fid_len;
char fid_data[20];
};
typedef struct fid fid_t;
struct fhandle {
char x[32];
};
typedef struct fhandle fhandle_t;
struct filehandle {
fsid_t fh_fsid;
struct fileid fh_fid;
};
# 563 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 3 4
struct unique_id {
__ulong32_t word1;
__ulong32_t word2;
__ulong32_t word3;
__ulong32_t word4;
};
typedef struct unique_id unique_id_t;
# 595 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 3 4
typedef long long offset_t;
typedef unsigned long long size64_t;
typedef long long ssize64_t;
typedef long long longlong_t;
typedef unsigned long long u_longlong_t;
typedef unsigned int class_id_t;
}
# 54 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/string.h" 2 3 4
extern "C" {
# 100 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/string.h" 3 4
extern void *memchr(const void *, int, size_t);
extern void *memcpy(void *, const void *, size_t);
extern void *memset(void *, int, size_t);
extern size_t strcspn(const char *, const char *);
extern size_t strlen(const char *);
extern size_t strspn(const char *, const char *);
# 132 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/string.h" 3 4
extern void *memmove(void *, const void *, size_t);
extern char *strcpy(char *, const char *);
extern char *strncpy(char *, const char *, size_t);
extern char *strcat(char *, const char *);
extern char *strncat(char *, const char *, size_t);
extern int memcmp(const void *, const void *,size_t);
extern int strcmp(const char *, const char *);
extern int strncmp(const char *,const char *,size_t);
extern int strncollen(const char *, const int );
extern char *strchr(const char *, int);
extern char *strpbrk(const char *, const char *);
extern char *strrchr(const char *, int);
extern char *strstr(const char *, const char *);
extern char *strtok(char *, const char *);
extern char *strerror(int);
extern int strcoll(const char *, const char *);
extern size_t strxfrm(char *, const char *, size_t);
extern char *strtok_r(char *, const char *, char **);
# 163 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/string.h" 3 4
extern void *memccpy(void *, const void *, int, size_t);
# 172 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/string.h" 3 4
extern char *strdup(const char *);
# 213 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/string.h" 3 4
extern char *index(const char *, int);
extern char *rindex(const char *, int);
extern void swab(const void *, void *, ssize_t);
extern wchar_t *wcscat(wchar_t *, const wchar_t *);
extern wchar_t *wcschr(const wchar_t *, wchar_t);
extern int wcscmp(const wchar_t *, const wchar_t *);
extern wchar_t *wcscpy(wchar_t *, const wchar_t *);
extern size_t wcscspn(const wchar_t *, const wchar_t *);
extern size_t wcslen(const wchar_t *);
extern wchar_t *wcsncat(wchar_t *, const wchar_t *, size_t);
extern int wcsncmp(const wchar_t *, const wchar_t *, size_t);
extern wchar_t *wcsncpy(wchar_t *, const wchar_t *, size_t);
extern wchar_t *wcspbrk(const wchar_t *, const wchar_t *);
extern wchar_t *wcsrchr(const wchar_t *, wchar_t);
extern size_t wcsspn(const wchar_t *, const wchar_t *);
extern wchar_t *wcswcs(const wchar_t *, const wchar_t *);
extern int wcswidth(const wchar_t *, size_t);
extern int wcwidth(wchar_t);
extern int wcscoll(const wchar_t *, const wchar_t *);
extern size_t wcsxfrm(wchar_t *, const wchar_t *, size_t);
extern char *__linux_strerror_r(int, char *, size_t);
extern char * strndup(const char *, size_t);
extern size_t strnlen(const char *, size_t);
extern char * strsep(char **, const char *);
extern void * memmem(const void *, size_t, const void *, size_t);
extern char * stpcpy(char *, const char *);
extern char * stpncpy(char *, const char *, size_t);
extern char * strsignal(int);
# 292 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/string.h" 3 4
}
# 37 "/usr/include/wcstr.h" 2 3 4
# 1 "/usr/include/mbstr.h" 1 3 4
# 43 "/usr/include/mbstr.h" 3 4
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 1 3 4
# 44 "/usr/include/mbstr.h" 2 3 4
typedef unsigned int mbchar_t;
# 66 "/usr/include/mbstr.h" 3 4
extern char *mbsadvance(const char *s);
extern char *mbscat(char *, char *);
extern char *mbschr(const char *, const mbchar_t);
extern int mbscmp(char *, char *);
extern char *mbscpy(char *, char *);
extern char *mbsinvalid(const char *s);
extern size_t mbslen(const char *);
extern char *mbsncat(char *, const char *, size_t);
extern int mbsncmp(char *, char *, size_t);
extern char *mbsncpy(char *, char *, size_t);
extern char *mbspbrk(char *, char *);
extern char *mbsrchr(char *, mbchar_t);
extern mbchar_t mbstomb(const char *mbs);
extern int mbswidth(const char *s, size_t n);
extern int mbstoint(char *);
# 42 "/usr/include/wcstr.h" 2 3 4
# 304 "../wxX11/include/wx/wxchar.h" 2
# 388 "../wxX11/include/wx/wxchar.h"
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/ctype.h" 1 3 4
# 79 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/ctype.h" 3 4
extern int isalpha(int);
extern int isalnum(int);
extern int iscntrl(int);
extern int isdigit(int);
extern int isgraph(int);
extern int islower(int);
extern int isprint(int);
extern int ispunct(int);
extern int isspace(int);
extern int isupper(int);
extern int isxdigit(int);
extern int toupper(int);
extern int tolower(int);
# 119 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/ctype.h" 3 4
extern int isascii(int);
extern int toascii(int);
# 131 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/ctype.h" 3 4
# 1 "/usr/include/sys/localedef.h" 1 3 4
# 39 "/usr/include/sys/localedef.h" 3 4
struct __LC_locale;
struct _LC_locale_objhdl;
# 1 "/usr/include/sys/limits.h" 1 3 4
# 43 "/usr/include/sys/localedef.h" 2 3 4
# 1 "/usr/include/sys/lc_core.h" 1 3 4
# 36 "/usr/include/sys/lc_core.h" 3 4
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 1 3 4
# 37 "/usr/include/sys/lc_core.h" 2 3 4
extern "C" {
# 52 "/usr/include/sys/lc_core.h" 3 4
typedef struct {
unsigned short
__type_id,
__magic;
unsigned long
__version;
size_t __size;
} _LC_object_t;
# 102 "/usr/include/sys/lc_core.h" 3 4
typedef struct {
_LC_object_t __hdr;
int __catgets;
int __catclose;
int __compress;
int __decompress;
int __start_compress;
int __end_compress;
int __init;
void *__data;
} _LC_core_car_t;
typedef struct {
_LC_object_t __hdr;
int __nl_langinfo;
int __mbtowc;
int __mbstowcs;
int __wctomb;
int __wcstombs;
int __mblen;
int __wcswidth;
int __wcwidth;
int __mbtopc;
int __mbstopcs;
int __pctomb;
int __pcstombs;
int __csid;
int __wcsid;
int __init;
void *__data;
} _LC_core_charmap_t;
typedef struct {
_LC_object_t __hdr;
int __towupper;
int __towlower;
int __get_wctype;
int __is_wctype;
int __init;
void *__data;
} _LC_core_ctype_t;
typedef struct {
_LC_object_t __hdr;
int __strcoll;
int __strxfrm;
int __wcscoll;
int __wcsxfrm;
int __fnmatch;
int __regcomp;
int __regerror;
int __regexec;
int __regfree;
int __init;
void *__data;
} _LC_core_collate_t;
typedef struct {
_LC_object_t __hdr;
int __nl_langinfo;
int __strftime;
int __strptime;
int __wcsftime;
int __init;
void *__data;
} _LC_core_time_t;
typedef struct {
_LC_object_t __hdr;
int __nl_langinfo;
int __strfmon;
int __init;
void *__data;
} _LC_core_monetary_t;
typedef struct {
_LC_object_t __hdr;
int __nl_langinfo;
int __init;
void *__data;
} _LC_core_numeric_t;
typedef struct {
_LC_object_t __hdr;
int __nl_langinfo;
int __rpmatch;
int __init;
void *__data;
} _LC_core_resp_t;
typedef struct {
_LC_object_t __hdr;
int __nl_langinfo;
int __localeconv;
int __init;
void *__data;
} _LC_core_locale_t;
}
# 44 "/usr/include/sys/localedef.h" 2 3 4
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/locale.h" 1 3 4
# 49 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/locale.h" 3 4
extern "C" {
# 60 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/locale.h" 3 4
struct lconv {
char *decimal_point;
char *thousands_sep;
char *grouping;
char *int_curr_symbol;
char *currency_symbol;
char *mon_decimal_point;
char *mon_thousands_sep;
char *mon_grouping;
char *positive_sign;
char *negative_sign;
char int_frac_digits;
char frac_digits;
char p_cs_precedes;
char p_sep_by_space;
char n_cs_precedes;
char n_sep_by_space;
char p_sign_posn;
char n_sign_posn;
char *left_parenthesis;
char *right_parenthesis;
} ;
# 104 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/locale.h" 3 4
struct lconv *localeconv(void);
char *setlocale(int, const char *);
typedef struct lconv lconv;
}
# 45 "/usr/include/sys/localedef.h" 2 3 4
# 1 "/usr/include/sys/localedef31.h" 1 3 4
# 39 "/usr/include/sys/localedef31.h" 3 4
typedef struct coldesc {
short cd_stroff;
short cd_repoff;
short cd_cval;
short cd_cuniq;
} coldesc_t;
typedef struct collation_table {
short lc_version;
short lc_length;
char *lc_locale_name;
int len_collate;
short *lc_collate;
int len_coluniq;
short *lc_coluniq;
int len_coldesc;
coldesc_t *lc_coldesc;
int len_strings;
wchar_t *lc_strings;
int high_cvalue;
} col_t;
typedef struct char_classification_table {
short lc_version;
short lc_length;
short lc_code_type;
short mb_cur_max;
short mb_cur_min;
short lc_dsp_width;
char *lc_locale_name;
int len_caseconv;
wchar_t *lc_caseconv;
int len_ctype;
unsigned short *lc_ctype;
} ctype_t;
typedef struct lc_monetary_table {
short lc_version;
short lc_length;
char *lc_locale_name;
char *int_curr_symbol;
char *currency_symbol;
char *mon_decimal_point;
char *mon_thousands_sep;
char *mon_grouping;
char *positive_sign;
char *negative_sign;
char int_frac_digits;
char frac_digits;
char p_cs_precedes;
char p_sep_by_space;
char n_cs_precedes;
char n_sep_by_space;
char p_sign_posn;
char n_sign_posn;
} mon_t;
typedef struct numeric_table {
short lc_version;
short lc_length;
char *lc_locale_name;
char *decimal_point;
char *thousands_sep;
char *grouping;
} num_t;
typedef struct lc_messages_table {
short lc_version;
short lc_length;
char *lc_locale_name;
char *messages;
char *yes_string;
char *no_string;
} msg_t;
typedef struct lc_time_table {
short lc_version;
short lc_length;
char *lc_locale_name;
char *t_fmt;
char *d_fmt;
char *nlldate;
char *d_t_fmt;
char *abday;
char *day;
char *abmon;
char *mon;
char *misc;
char *tstrs;
char *tunits;
char *year;
char *am_pm;
} tim_t;
typedef struct wchar_mapping_table {
short lc_version;
short lc_length;
char *lc_identifier;
} map_t;
# 183 "/usr/include/sys/localedef31.h" 3 4
typedef struct localeinfo_table {
char lc_mag0, lc_mag1;
short lc_version;
short lc_code_type;
short lc_length;
col_t *lc_coltbl;
ctype_t *lc_chrtbl;
mon_t *lc_montbl;
num_t *lc_numtbl;
tim_t *lc_timtbl;
msg_t *lc_msgtbl;
map_t *lc_maptbl;
} loc_t;
# 47 "/usr/include/sys/localedef.h" 2 3 4
# 66 "/usr/include/sys/localedef.h" 3 4
typedef struct {
_LC_core_charmap_t core;
char *cm_csname;
size_t cm_mb_cur_max;
size_t cm_mb_cur_min;
unsigned char
cm_max_disp_width;
unsigned
char *cm_cstab;
struct __LC_locale
*loc_rec;
void *__meth_ptr;
void *__data_ptr;
} _LC_charmap_t;
typedef struct _LC_charmap_objhdl _LC_charmap_objhdl_t;
struct _LC_charmap_objhdl {
_LC_charmap_t *obj;
void *(**meth)();
struct _LC_locale_objhdl *loc_hdl;
};
typedef struct {
_LC_core_monetary_t core;
char *int_curr_symbol;
char *currency_symbol;
char *mon_decimal_point;
char *mon_thousands_sep;
char *mon_grouping;
char *positive_sign;
char *negative_sign;
signed char int_frac_digits;
signed char frac_digits;
signed char p_cs_precedes;
signed char p_sep_by_space;
signed char n_cs_precedes;
signed char n_sep_by_space;
signed char p_sign_posn;
signed char n_sign_posn;
char *debit_sign;
char *credit_sign;
char *left_parenthesis;
char *right_parenthesis;
struct __LC_locale
*loc_rec;
void *__meth_ptr;
void *__data_ptr;
} _LC_monetary_t;
typedef struct _LC_monetary_objhdl _LC_monetary_objhdl_t;
struct _LC_monetary_objhdl {
_LC_monetary_t *obj;
void *(**meth)();
struct _LC_locale_objhdl *loc_hdl;
};
typedef struct {
_LC_core_numeric_t core;
char *decimal_point;
char *thousands_sep;
unsigned
char *grouping;
struct __LC_locale
*loc_rec;
void *__meth_ptr;
void *__data_ptr;
} _LC_numeric_t;
typedef struct _LC_numeric_objhdl _LC_numeric_objhdl_t;
struct _LC_numeric_objhdl {
_LC_numeric_t *obj;
void *(**meth)();
struct _LC_locale_objhdl *loc_hdl;
};
typedef struct {
_LC_core_resp_t core;
char *yesexpr;
char *noexpr;
char *yesstr;
char *nostr;
struct __LC_locale
*loc_rec;
void *__meth_ptr;
void *__data_ptr;
} _LC_resp_t;
typedef struct _LC_resp_objhdl _LC_resp_objhdl_t;
struct _LC_resp_objhdl {
_LC_resp_t *obj;
void *(**meth)();
struct _LC_locale_objhdl *loc_hdl;
};
typedef struct {
_LC_core_time_t core;
char *d_fmt;
char *t_fmt;
char *d_t_fmt;
char *t_fmt_ampm;
char *abday[7];
char *day[7];
char *abmon[12];
char *mon[12];
char *am_pm[2];
char *era;
char *era_year;
char *era_d_fmt;
char *alt_digits;
char *era_d_t_fmt;
char *era_t_fmt;
struct __LC_locale
*loc_rec;
void *__meth_ptr;
void *__data_ptr;
} _LC_time_t;
typedef struct _LC_time_objhdl _LC_time_objhdl_t;
struct _LC_time_objhdl {
_LC_time_t *obj;
void *(**meth)();
struct _LC_locale_objhdl *loc_hdl;
};
typedef struct {
unsigned
short n[4 +1];
} _LC_weight_t;
typedef struct {
char *ce_sym;
_LC_weight_t ce_wgt;
} _LC_collel_t;
typedef struct {
_LC_weight_t ct_wgt;
_LC_collel_t *ct_collel;
} _LC_coltbl_t;
# 319 "/usr/include/sys/localedef.h" 3 4
typedef struct {
char *tgt_wgt_str[4 +1];
} _LC_subs_t;
typedef struct {
_LC_core_collate_t core;
unsigned
char co_nord;
_LC_weight_t co_sort;
wchar_t co_wc_min;
wchar_t co_wc_max;
wchar_t co_col_min;
wchar_t co_col_max;
_LC_coltbl_t *co_coltbl;
unsigned
char co_nsubs;
_LC_subs_t *co_subs;
unsigned
short co_special;
struct __LC_locale
*loc_rec;
void *__meth_ptr;
void *__data_ptr;
} _LC_collate_t;
typedef struct _LC_collate_objhdl _LC_collate_objhdl_t;
struct _LC_collate_objhdl {
_LC_collate_t *obj;
void *(**meth)();
struct _LC_locale_objhdl *loc_hdl;
};
# 392 "/usr/include/sys/localedef.h" 3 4
typedef struct {
char *name;
unsigned
int mask;
} _LC_classnm_t;
typedef struct {
_LC_core_ctype_t core;
wchar_t min_wc;
wchar_t max_wc;
wchar_t *upper;
wchar_t *lower;
unsigned
int *mask;
unsigned
int *qmask;
unsigned
char *qidx;
unsigned
char nclasses;
_LC_classnm_t *classnms;
struct __LC_locale
*loc_rec;
void *__meth_ptr;
void *__data_ptr;
} _LC_ctype_t;
typedef struct _LC_ctype_objhdl _LC_ctype_objhdl_t;
struct _LC_ctype_objhdl {
_LC_ctype_t *obj;
void *(**meth)();
struct _LC_locale_objhdl *loc_hdl;
};
# 465 "/usr/include/sys/localedef.h" 3 4
typedef struct __LC_locale {
_LC_core_locale_t core;
char *nl_info[63];
struct lconv *nl_lconv;
_LC_charmap_objhdl_t lc_charmap;
_LC_collate_objhdl_t lc_collate;
_LC_ctype_objhdl_t lc_ctype;
_LC_monetary_objhdl_t lc_monetary;
_LC_numeric_objhdl_t lc_numeric;
_LC_resp_objhdl_t lc_resp;
_LC_time_objhdl_t lc_time;
struct __LC_locale *loc_rec;
void *__meth_ptr;
void *__data_ptr;
char *__nl_yesstr;
char *__nl_nostr;
char *__nl_crncystr;
} _LC_locale_t;
typedef struct _LC_locale_objhdl _LC_locale_objhdl_t;
struct _LC_locale_objhdl {
_LC_locale_t *obj;
void *(**meth)();
struct _LC_locale_objhdl *loc_hdl;
};
# 512 "/usr/include/sys/localedef.h" 3 4
typedef struct _LC_object_handle _LC_object_handle_t;
struct _LC_object_handle {
union {
_LC_object_t lc_object;
_LC_locale_objhdl_t lc_locale;
_LC_charmap_objhdl_t lc_charmap;
_LC_collate_objhdl_t lc_collate;
_LC_ctype_objhdl_t lc_ctype;
_LC_monetary_objhdl_t lc_monetary;
_LC_numeric_objhdl_t lc_numeric;
_LC_resp_objhdl_t lc_resp;
_LC_time_objhdl_t lc_time;
} obj;
void *(**meth)();
struct _LC_locale_objhdl *loc_hdl;
};
typedef struct {
_LC_object_t hdr;
_LC_locale_objhdl_t handle;
} _LC_load_object_t;
extern _LC_charmap_objhdl_t __lc_charmap;
extern _LC_collate_objhdl_t __lc_collate;
extern _LC_ctype_objhdl_t __lc_ctype;
extern _LC_monetary_objhdl_t __lc_monetary;
extern _LC_numeric_objhdl_t __lc_numeric;
extern _LC_resp_objhdl_t __lc_resp;
extern _LC_time_objhdl_t __lc_time;
extern _LC_locale_objhdl_t __lc_locale;
# 132 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/ctype.h" 2 3 4
extern int is_wctype(wint_t, wctype_t);
extern wctype_t get_wctype(char *);
extern int isblank(int);
# 389 "../wxX11/include/wx/wxchar.h" 2
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/string.h" 1 3 4
# 390 "../wxX11/include/wx/wxchar.h" 2
# 543 "../wxX11/include/wx/wxchar.h"
inline bool wxIsEmpty(const char *p) { return !p || !*p; }
inline size_t wxStrlen(const char *psz)
{ return psz ? strlen(psz) : 0; }
size_t wxMB2WC(wchar_t *buf, const char *psz, size_t n);
size_t wxWC2MB(char *buf, const wchar_t *psz, size_t n);
# 576 "../wxX11/include/wx/wxchar.h"
bool wxOKlibc();
# 19 "../wxX11/include/wx/debug.h" 2
# 123 "../wxX11/include/wx/debug.h"
extern const bool wxFalse;
# 336 "../wxX11/include/wx/defs.h" 2
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stddef.h" 1 3 4
# 342 "../wxX11/include/wx/defs.h" 2
# 407 "../wxX11/include/wx/defs.h"
typedef void (*wxFunction) (wxObject&, wxEvent&);
enum
{
wxUNKNOWN_PLATFORM,
wxCURSES,
wxXVIEW_X,
wxMOTIF_X,
wxCOSE_X,
wxNEXTSTEP,
wxMAC,
wxMAC_DARWIN,
wxBEOS,
wxGTK,
wxGTK_WIN32,
wxGTK_OS2,
wxGTK_BEOS,
wxGEOS,
wxOS2_PM,
wxWINDOWS,
wxMICROWINDOWS,
wxPENWINDOWS,
wxWINDOWS_NT,
wxWIN32S,
wxWIN95,
wxWIN386,
wxMGL_UNIX,
wxMGL_X,
wxMGL_WIN32,
wxMGL_OS2,
wxMGL_DOS,
wxWINDOWS_OS2,
wxUNIX,
wxX11
};
# 465 "../wxX11/include/wx/defs.h"
typedef int wxCoord;
# 532 "../wxX11/include/wx/defs.h"
typedef float wxFloat32 ;
typedef double wxFloat64;
typedef double wxDouble ;
# 717 "../wxX11/include/wx/defs.h"
enum wxGeometryCentre
{
wxCENTRE = 0x0001,
wxCENTER = wxCENTRE
};
enum wxOrientation
{
wxHORIZONTAL = 0x0004,
wxVERTICAL = 0x0008,
wxBOTH = (wxVERTICAL | wxHORIZONTAL)
};
enum wxDirection
{
wxLEFT = 0x0010,
wxRIGHT = 0x0020,
wxUP = 0x0040,
wxDOWN = 0x0080,
wxTOP = wxUP,
wxBOTTOM = wxDOWN,
wxNORTH = wxUP,
wxSOUTH = wxDOWN,
wxWEST = wxLEFT,
wxEAST = wxRIGHT,
wxALL = (wxUP | wxDOWN | wxRIGHT | wxLEFT)
};
enum wxAlignment
{
wxALIGN_NOT = 0x0000,
wxALIGN_CENTER_HORIZONTAL = 0x0100,
wxALIGN_CENTRE_HORIZONTAL = wxALIGN_CENTER_HORIZONTAL,
wxALIGN_LEFT = wxALIGN_NOT,
wxALIGN_TOP = wxALIGN_NOT,
wxALIGN_RIGHT = 0x0200,
wxALIGN_BOTTOM = 0x0400,
wxALIGN_CENTER_VERTICAL = 0x0800,
wxALIGN_CENTRE_VERTICAL = wxALIGN_CENTER_VERTICAL,
wxALIGN_CENTER = (wxALIGN_CENTER_HORIZONTAL | wxALIGN_CENTER_VERTICAL),
wxALIGN_CENTRE = wxALIGN_CENTER,
wxALIGN_MASK = 0x0f00
};
enum wxStretch
{
wxSTRETCH_NOT = 0x0000,
wxSHRINK = 0x1000,
wxGROW = 0x2000,
wxEXPAND = wxGROW,
wxSHAPED = 0x4000,
wxADJUST_MINSIZE = 0x8000,
wxTILE = 0xc000
};
enum wxBorder
{
wxBORDER_DEFAULT = 0,
wxBORDER_NONE = 0x00200000,
wxBORDER_STATIC = 0x01000000,
wxBORDER_SIMPLE = 0x02000000,
wxBORDER_RAISED = 0x04000000,
wxBORDER_SUNKEN = 0x08000000,
wxBORDER_DOUBLE = 0x10000000,
wxBORDER_MASK = 0x1f200000
};
# 1283 "../wxX11/include/wx/defs.h"
enum wxItemKind
{
wxItem_Separator = -1,
wxItem_Normal,
wxItem_Check,
wxItem_Radio,
wxItem_Max
};
enum wxHitTest
{
wxHT_NOWHERE,
wxHT_SCROLLBAR_FIRST = wxHT_NOWHERE,
wxHT_SCROLLBAR_ARROW_LINE_1,
wxHT_SCROLLBAR_ARROW_LINE_2,
wxHT_SCROLLBAR_ARROW_PAGE_1,
wxHT_SCROLLBAR_ARROW_PAGE_2,
wxHT_SCROLLBAR_THUMB,
wxHT_SCROLLBAR_BAR_1,
wxHT_SCROLLBAR_BAR_2,
wxHT_SCROLLBAR_LAST,
wxHT_WINDOW_OUTSIDE,
wxHT_WINDOW_INSIDE,
wxHT_WINDOW_VERT_SCROLLBAR,
wxHT_WINDOW_HORZ_SCROLLBAR,
wxHT_WINDOW_CORNER,
wxHT_MAX
};
# 1340 "../wxX11/include/wx/defs.h"
enum {
wxDEFAULT = 70,
wxDECORATIVE,
wxROMAN,
wxSCRIPT,
wxSWISS,
wxMODERN,
wxTELETYPE,
wxVARIABLE = 80,
wxFIXED,
wxNORMAL = 90,
wxLIGHT,
wxBOLD,
wxITALIC,
wxSLANT,
wxSOLID = 100,
wxDOT,
wxLONG_DASH,
wxSHORT_DASH,
wxDOT_DASH,
wxUSER_DASH,
wxTRANSPARENT,
wxSTIPPLE_MASK_OPAQUE,
wxSTIPPLE_MASK,
wxSTIPPLE = 110,
wxBDIAGONAL_HATCH,
wxCROSSDIAG_HATCH,
wxFDIAGONAL_HATCH,
wxCROSS_HATCH,
wxHORIZONTAL_HATCH,
wxVERTICAL_HATCH,
wxJOIN_BEVEL = 120,
wxJOIN_MITER,
wxJOIN_ROUND,
wxCAP_ROUND = 130,
wxCAP_PROJECTING,
wxCAP_BUTT
};
typedef enum
{
wxCLEAR, wxROP_BLACK = wxCLEAR, wxBLIT_BLACKNESS = wxCLEAR,
wxXOR, wxROP_XORPEN = wxXOR, wxBLIT_SRCINVERT = wxXOR,
wxINVERT, wxROP_NOT = wxINVERT, wxBLIT_DSTINVERT = wxINVERT,
wxOR_REVERSE, wxROP_MERGEPENNOT = wxOR_REVERSE, wxBLIT_00DD0228 = wxOR_REVERSE,
wxAND_REVERSE, wxROP_MASKPENNOT = wxAND_REVERSE, wxBLIT_SRCERASE = wxAND_REVERSE,
wxCOPY, wxROP_COPYPEN = wxCOPY, wxBLIT_SRCCOPY = wxCOPY,
wxAND, wxROP_MASKPEN = wxAND, wxBLIT_SRCAND = wxAND,
wxAND_INVERT, wxROP_MASKNOTPEN = wxAND_INVERT, wxBLIT_00220326 = wxAND_INVERT,
wxNO_OP, wxROP_NOP = wxNO_OP, wxBLIT_00AA0029 = wxNO_OP,
wxNOR, wxROP_NOTMERGEPEN = wxNOR, wxBLIT_NOTSRCERASE = wxNOR,
wxEQUIV, wxROP_NOTXORPEN = wxEQUIV, wxBLIT_00990066 = wxEQUIV,
wxSRC_INVERT, wxROP_NOTCOPYPEN = wxSRC_INVERT, wxBLIT_NOTSCRCOPY = wxSRC_INVERT,
wxOR_INVERT, wxROP_MERGENOTPEN = wxOR_INVERT, wxBLIT_MERGEPAINT = wxOR_INVERT,
wxNAND, wxROP_NOTMASKPEN = wxNAND, wxBLIT_007700E6 = wxNAND,
wxOR, wxROP_MERGEPEN = wxOR, wxBLIT_SRCPAINT = wxOR,
wxSET, wxROP_WHITE = wxSET, wxBLIT_WHITENESS = wxSET
} form_ops_t;
# 1432 "../wxX11/include/wx/defs.h"
enum wxDataFormatId
{
wxDF_INVALID = 0,
wxDF_TEXT = 1,
wxDF_BITMAP = 2,
wxDF_METAFILE = 3,
wxDF_SYLK = 4,
wxDF_DIF = 5,
wxDF_TIFF = 6,
wxDF_OEMTEXT = 7,
wxDF_DIB = 8,
wxDF_PALETTE = 9,
wxDF_PENDATA = 10,
wxDF_RIFF = 11,
wxDF_WAVE = 12,
wxDF_UNICODETEXT = 13,
wxDF_ENHMETAFILE = 14,
wxDF_FILENAME = 15,
wxDF_LOCALE = 16,
wxDF_PRIVATE = 20,
wxDF_MAX
};
enum wxKeyCode
{
WXK_BACK = 8,
WXK_TAB = 9,
WXK_RETURN = 13,
WXK_ESCAPE = 27,
WXK_SPACE = 32,
WXK_DELETE = 127,
WXK_START = 300,
WXK_LBUTTON,
WXK_RBUTTON,
WXK_CANCEL,
WXK_MBUTTON,
WXK_CLEAR,
WXK_SHIFT,
WXK_ALT,
WXK_CONTROL,
WXK_MENU,
WXK_PAUSE,
WXK_CAPITAL,
WXK_PRIOR,
WXK_NEXT,
WXK_END,
WXK_HOME,
WXK_LEFT,
WXK_UP,
WXK_RIGHT,
WXK_DOWN,
WXK_SELECT,
WXK_PRINT,
WXK_EXECUTE,
WXK_SNAPSHOT,
WXK_INSERT,
WXK_HELP,
WXK_NUMPAD0,
WXK_NUMPAD1,
WXK_NUMPAD2,
WXK_NUMPAD3,
WXK_NUMPAD4,
WXK_NUMPAD5,
WXK_NUMPAD6,
WXK_NUMPAD7,
WXK_NUMPAD8,
WXK_NUMPAD9,
WXK_MULTIPLY,
WXK_ADD,
WXK_SEPARATOR,
WXK_SUBTRACT,
WXK_DECIMAL,
WXK_DIVIDE,
WXK_F1,
WXK_F2,
WXK_F3,
WXK_F4,
WXK_F5,
WXK_F6,
WXK_F7,
WXK_F8,
WXK_F9,
WXK_F10,
WXK_F11,
WXK_F12,
WXK_F13,
WXK_F14,
WXK_F15,
WXK_F16,
WXK_F17,
WXK_F18,
WXK_F19,
WXK_F20,
WXK_F21,
WXK_F22,
WXK_F23,
WXK_F24,
WXK_NUMLOCK,
WXK_SCROLL,
WXK_PAGEUP,
WXK_PAGEDOWN,
WXK_NUMPAD_SPACE,
WXK_NUMPAD_TAB,
WXK_NUMPAD_ENTER,
WXK_NUMPAD_F1,
WXK_NUMPAD_F2,
WXK_NUMPAD_F3,
WXK_NUMPAD_F4,
WXK_NUMPAD_HOME,
WXK_NUMPAD_LEFT,
WXK_NUMPAD_UP,
WXK_NUMPAD_RIGHT,
WXK_NUMPAD_DOWN,
WXK_NUMPAD_PRIOR,
WXK_NUMPAD_PAGEUP,
WXK_NUMPAD_NEXT,
WXK_NUMPAD_PAGEDOWN,
WXK_NUMPAD_END,
WXK_NUMPAD_BEGIN,
WXK_NUMPAD_INSERT,
WXK_NUMPAD_DELETE,
WXK_NUMPAD_EQUAL,
WXK_NUMPAD_MULTIPLY,
WXK_NUMPAD_ADD,
WXK_NUMPAD_SEPARATOR,
WXK_NUMPAD_SUBTRACT,
WXK_NUMPAD_DECIMAL,
WXK_NUMPAD_DIVIDE
};
# 1583 "../wxX11/include/wx/defs.h"
typedef enum {
wxPAPER_NONE,
wxPAPER_LETTER,
wxPAPER_LEGAL,
wxPAPER_A4,
wxPAPER_CSHEET,
wxPAPER_DSHEET,
wxPAPER_ESHEET,
wxPAPER_LETTERSMALL,
wxPAPER_TABLOID,
wxPAPER_LEDGER,
wxPAPER_STATEMENT,
wxPAPER_EXECUTIVE,
wxPAPER_A3,
wxPAPER_A4SMALL,
wxPAPER_A5,
wxPAPER_B4,
wxPAPER_B5,
wxPAPER_FOLIO,
wxPAPER_QUARTO,
wxPAPER_10X14,
wxPAPER_11X17,
wxPAPER_NOTE,
wxPAPER_ENV_9,
wxPAPER_ENV_10,
wxPAPER_ENV_11,
wxPAPER_ENV_12,
wxPAPER_ENV_14,
wxPAPER_ENV_DL,
wxPAPER_ENV_C5,
wxPAPER_ENV_C3,
wxPAPER_ENV_C4,
wxPAPER_ENV_C6,
wxPAPER_ENV_C65,
wxPAPER_ENV_B4,
wxPAPER_ENV_B5,
wxPAPER_ENV_B6,
wxPAPER_ENV_ITALY,
wxPAPER_ENV_MONARCH,
wxPAPER_ENV_PERSONAL,
wxPAPER_FANFOLD_US,
wxPAPER_FANFOLD_STD_GERMAN,
wxPAPER_FANFOLD_LGL_GERMAN,
wxPAPER_ISO_B4,
wxPAPER_JAPANESE_POSTCARD,
wxPAPER_9X11,
wxPAPER_10X11,
wxPAPER_15X11,
wxPAPER_ENV_INVITE,
wxPAPER_LETTER_EXTRA,
wxPAPER_LEGAL_EXTRA,
wxPAPER_TABLOID_EXTRA,
wxPAPER_A4_EXTRA,
wxPAPER_LETTER_TRANSVERSE,
wxPAPER_A4_TRANSVERSE,
wxPAPER_LETTER_EXTRA_TRANSVERSE,
wxPAPER_A_PLUS,
wxPAPER_B_PLUS,
wxPAPER_LETTER_PLUS,
wxPAPER_A4_PLUS,
wxPAPER_A5_TRANSVERSE,
wxPAPER_B5_TRANSVERSE,
wxPAPER_A3_EXTRA,
wxPAPER_A5_EXTRA,
wxPAPER_B5_EXTRA,
wxPAPER_A2,
wxPAPER_A3_TRANSVERSE,
wxPAPER_A3_EXTRA_TRANSVERSE
} wxPaperSize ;
# 1664 "../wxX11/include/wx/defs.h"
typedef enum {
wxDUPLEX_SIMPLEX,
wxDUPLEX_HORIZONTAL,
wxDUPLEX_VERTICAL
} wxDuplexMode;
# 1678 "../wxX11/include/wx/defs.h"
typedef int wxPrintQuality;
typedef enum {
wxPRINT_MODE_NONE = 0,
wxPRINT_MODE_PREVIEW = 1,
wxPRINT_MODE_FILE = 2,
wxPRINT_MODE_PRINTER = 3
} wxPrintMode;
# 1909 "../wxX11/include/wx/defs.h"
typedef void* WXWindow;
typedef void* WXWidget;
typedef void* WXAppContext;
typedef void* WXColormap;
typedef void* WXColor;
typedef void WXDisplay;
typedef void WXEvent;
typedef void* WXCursor;
typedef void* WXPixmap;
typedef void* WXFontStructPtr;
typedef void* WXGC;
typedef void* WXRegion;
typedef void* WXFont;
typedef void* WXImage;
typedef void* WXFontList;
typedef unsigned long Atom;
# 14 "../wxX11/include/wx/wxprec.h" 2
# 61 "../wxX11/src/common/datetime.cpp" 2
# 69 "../wxX11/src/common/datetime.cpp"
# 1 "../wxX11/include/wx/string.h" 1
# 22 "../wxX11/include/wx/string.h"
#pragma interface "string.h"
# 36 "../wxX11/include/wx/string.h"
# 1 "../wxX11/include/wx/defs.h" 1
# 37 "../wxX11/include/wx/string.h" 2
# 54 "../wxX11/include/wx/string.h"
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/string.h" 1 3 4
# 55 "../wxX11/include/wx/string.h" 2
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdio.h" 1 3 4
# 14 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdio.h" 3 4
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdarg.h" 1 3 4
# 43 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdarg.h" 3 4
typedef __builtin_va_list __gnuc_va_list;
# 15 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdio.h" 2 3 4
# 61 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdio.h" 3 4
extern "C" {
# 150 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdio.h" 3 4
typedef struct {
unsigned char *_ptr;
int _cnt;
unsigned char *_base;
unsigned char *_bufendp;
short _flag;
short _file;
int __stdioid;
char *__newbase;
long _unused[1];
} FILE;
extern FILE _iob[16];
# 185 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdio.h" 3 4
extern size_t fread(void *, size_t, size_t, FILE *);
extern size_t fwrite(const void *, size_t, size_t,FILE *);
# 234 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdio.h" 3 4
extern int __flsbuf(unsigned char, FILE *);
extern int __filbuf(FILE *);
extern int ferror(FILE *);
extern int feof(FILE *);
extern void clearerr(FILE *);
extern int putchar(int);
extern int getchar(void);
extern int putc(int, FILE *);
extern int getc(FILE *);
extern int remove(const char *);
extern int rename(const char *, const char *);
extern FILE *tmpfile(void);
extern char *tmpnam(char *);
extern int fclose(FILE *);
extern int fflush(FILE *);
extern FILE *fopen(const char *, const char *);
extern FILE *freopen(const char *, const char *, FILE *);
extern void setbuf(FILE *, char *);
extern int setvbuf(FILE *, char *, int, size_t);
extern int fprintf(FILE *, const char *, ...);
extern int fscanf(FILE *, const char *, ...);
extern int printf(const char *, ...);
extern int scanf(const char *, ...);
extern int sprintf(char *, const char *, ...);
extern int snprintf(char *, size_t, const char *, ...);
extern int sscanf(const char *, const char *, ...);
# 272 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdio.h" 3 4
# 1 "/usr/include/va_list.h" 1 3 4
# 273 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdio.h" 2 3 4
extern int vfprintf(FILE *, const char *, __gnuc_va_list);
extern int vprintf(const char *, __gnuc_va_list);
extern int vsprintf(char *, const char *, __gnuc_va_list);
extern int vsnprintf(char *, size_t, const char *, __gnuc_va_list);
extern int fgetc(FILE *);
extern char *fgets(char *, int, FILE *);
extern int fputc(int, FILE *);
extern int fputs(const char *, FILE *);
extern char *gets(char *);
extern int puts(const char *);
extern int ungetc(int, FILE *);
extern int fgetpos(FILE *, fpos_t *);
extern int fseek(FILE *, long int, int);
extern int fsetpos(FILE *, const fpos_t *);
extern long ftell(FILE *);
extern void rewind(FILE *);
extern void perror(const char *);
extern int getc_unlocked(FILE *);
extern int getchar_unlocked(void);
extern int putc_unlocked(int, FILE *);
extern int putchar_unlocked(int);
# 388 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdio.h" 3 4
extern int fileno(FILE *);
extern FILE *fdopen(int,const char *);
extern char *ctermid(char *);
extern void flockfile(FILE *);
extern void funlockfile(FILE *);
extern int fseeko(FILE *, off_t, int);
extern off_t ftello(FILE *);
extern int ftrylockfile(FILE *);
extern void funlockfile(FILE *);
# 410 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdio.h" 3 4
# 1 "/usr/include/va_list.h" 1 3 4
# 411 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdio.h" 2 3 4
extern char *optarg;
extern int opterr;
extern int optind;
extern int optopt;
# 428 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdio.h" 3 4
extern int getw(FILE *);
extern int putw(int, FILE *);
extern char *tempnam(const char*, const char*);
extern FILE *popen(const char *, const char *);
extern int pclose(FILE *);
extern int getopt(int, char * const [], const char*);
extern char *cuserid(char *);
# 448 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdio.h" 3 4
extern int fgetpos64(FILE *, fpos64_t *);
extern FILE *fopen64(const char *, const char *);
extern FILE *freopen64(const char *, const char *, FILE *);
extern int fseeko64(FILE *, off64_t, int);
extern int fsetpos64(FILE *, const fpos64_t *);
extern off64_t ftello64(FILE *);
# 463 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdio.h" 3 4
extern void setbuffer(FILE *, char *, size_t);
extern void setlinebuf(FILE *);
extern int vscanf(const char *, __gnuc_va_list);
extern int vfscanf(FILE *, const char *, __gnuc_va_list);
extern int vsscanf(const char *, const char *, __gnuc_va_list);
# 534 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdio.h" 3 4
}
# 56 "../wxX11/include/wx/string.h" 2
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdarg.h" 1 3 4
# 57 "../wxX11/include/wx/string.h" 2
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/limits.h" 1 3 4
# 58 "../wxX11/include/wx/string.h" 2
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdlib.h" 1 3 4
# 54 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdlib.h" 3 4
extern "C" {
# 95 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdlib.h" 3 4
typedef struct div_t {
int quot;
int rem;
} div_t;
typedef struct ldiv_t {
long int quot;
long int rem;
} ldiv_t;
extern size_t __getmbcurmax (void);
extern int __getmaxdispwidth (void);
# 126 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdlib.h" 3 4
extern int mblen(const char *, size_t);
extern size_t mbstowcs(wchar_t *, const char *, size_t);
extern int mbtowc(wchar_t *, const char *, size_t);
extern size_t wcstombs(char *, const wchar_t *, size_t);
extern int wctomb(char *, const wchar_t);
# 182 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdlib.h" 3 4
extern double atof(const char *);
extern int atoi(const char *);
extern long int atol(const char *);
extern double strtod(const char *, char * *);
extern long int strtol(const char *, char * *, int);
extern unsigned long int strtoul(const char *, char * *, int);
extern int rand(void);
extern void srand(unsigned int);
extern void *calloc(size_t, size_t);
extern void free(void *);
extern void *malloc(size_t);
extern void *realloc(void *, size_t);
extern void abort(void);
extern int atexit(void (*)(void));
extern void exit(int);
extern char *getenv(const char *);
extern int system(const char *);
extern void *bsearch(const void *, const void *, size_t, size_t, int(*)(const void *,const void *));
extern void qsort(void *, size_t, size_t, int(*)(const void *,const void *));
# 211 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdlib.h" 3 4
extern int abs(int);
extern struct div_t div(int, int);
extern long int labs(long int);
extern struct ldiv_t ldiv(long int, long int);
# 235 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdlib.h" 3 4
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/wait.h" 1 3 4
# 53 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/wait.h" 3 4
extern "C" {
# 1 "/usr/include/sys/resource.h" 1 3 4
# 54 "/usr/include/sys/resource.h" 3 4
extern "C" {
# 1 "/usr/include/sys/time.h" 1 3 4
# 50 "/usr/include/sys/time.h" 3 4
extern "C" {
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 1 3 4
# 54 "/usr/include/sys/time.h" 2 3 4
# 90 "/usr/include/sys/time.h" 3 4
struct timeval {
time_t tv_sec;
suseconds_t tv_usec;
};
struct timeval32 {
int32_t tv_sec;
int32_t tv_usec;
};
struct timeval64 {
int64_t tv_sec;
int64_t tv_usec;
};
struct itimerval {
struct timeval it_interval;
struct timeval it_value;
};
extern int getitimer(int, struct itimerval *);
extern int setitimer(int, const struct itimerval *, struct itimerval *);
extern int gettimeofday(struct timeval *, void *);
extern int utimes(const char *, const struct timeval *);
# 154 "/usr/include/sys/time.h" 3 4
typedef struct
fd_set
{
long fds_bits[(32767/(sizeof(long) * 8)+1)];
} fd_set;
# 169 "/usr/include/sys/time.h" 3 4
extern int select(int, fd_set *, fd_set *, fd_set *, struct timeval *);
# 272 "/usr/include/sys/time.h" 3 4
struct timestruc_t {
time_t tv_sec;
suseconds_t tv_nsec;
};
struct timestruc32_t {
int32_t tv_sec;
int32_t tv_nsec;
};
# 295 "/usr/include/sys/time.h" 3 4
struct itimerstruc_t {
struct timestruc_t it_interval;
struct timestruc_t it_value;
};
struct itimerstruc32_t {
struct timestruc32_t it_interval;
struct timestruc32_t it_value;
};
# 318 "/usr/include/sys/time.h" 3 4
typedef struct timebasestruct {
int flag;
unsigned int tb_high;
unsigned int tb_low;
} timebasestruct_t;
int read_real_time(timebasestruct_t *, size_t);
int time_base_to_time(timebasestruct_t *, size_t);
# 450 "/usr/include/sys/time.h" 3 4
struct timezone {
int tz_minuteswest;
int tz_dsttime;
};
# 482 "/usr/include/sys/time.h" 3 4
}
# 58 "/usr/include/sys/resource.h" 2 3 4
# 102 "/usr/include/sys/resource.h" 3 4
typedef unsigned long rlim_t;
struct rlimit {
rlim_t rlim_cur;
rlim_t rlim_max;
};
typedef unsigned long long rlim64_t;
struct rlimit64 {
rlim64_t rlim_cur;
rlim64_t rlim_max;
};
# 154 "/usr/include/sys/resource.h" 3 4
struct rusage
{
struct timeval ru_utime;
struct timeval ru_stime;
long ru_maxrss;
long ru_ixrss;
long ru_idrss;
long ru_isrss;
long ru_minflt;
long ru_majflt;
long ru_nswap;
long ru_inblock;
long ru_oublock;
long ru_msgsnd;
long ru_msgrcv;
long ru_nsignals;
long ru_nvcsw;
long ru_nivcsw;
};
struct rusage64
{
struct timeval ru_utime;
struct timeval ru_stime;
long long ru_maxrss;
long long ru_ixrss;
long long ru_idrss;
long long ru_isrss;
long long ru_minflt;
long long ru_majflt;
long long ru_nswap;
long long ru_inblock;
long long ru_oublock;
long long ru_msgsnd;
long long ru_msgrcv;
long long ru_nsignals;
long long ru_nvcsw;
long long ru_nivcsw;
};
struct trusage64
{
struct timeval64 ru_utime;
struct timeval64 ru_stime;
longlong_t ru_maxrss;
longlong_t ru_ixrss;
longlong_t ru_idrss;
longlong_t ru_isrss;
longlong_t ru_minflt;
longlong_t ru_majflt;
longlong_t ru_nswap;
longlong_t ru_inblock;
longlong_t ru_oublock;
longlong_t ru_msgsnd;
longlong_t ru_msgrcv;
longlong_t ru_nsignals;
longlong_t ru_nvcsw;
longlong_t ru_nivcsw;
};
# 249 "/usr/include/sys/resource.h" 3 4
extern int getpriority(int, id_t);
extern int setpriority(int, id_t, int);
extern int getrlimit(int, struct rlimit *);
extern int setrlimit(int, const struct rlimit *);
extern int getrlimit64(int, struct rlimit64 *);
extern int setrlimit64(int, const struct rlimit64 *);
extern int getrusage(int, struct rusage *);
extern int getrusage64(int, struct rusage64 *);
# 290 "/usr/include/sys/resource.h" 3 4
}
# 59 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/wait.h" 2 3 4
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/signal.h" 1 3 4
# 77 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/signal.h" 3 4
extern "C" {
# 108 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/signal.h" 3 4
extern void (*signal(int, void (*)(int)))(int);
extern int raise(int);
typedef int sig_atomic_t;
# 237 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/signal.h" 3 4
union sigval
{
void * sival_ptr;
int sival_int;
};
# 258 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/signal.h" 3 4
typedef struct {
int si_signo;
int si_errno;
int si_code;
pid_t si_pid;
uid_t si_uid;
# 286 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/signal.h" 3 4
void *si_addr;
int si_status;
long si_band;
union sigval si_value;
int __pad[7];
} siginfo_t;
struct sigaction {
union {
void (*__su_handler)(int);
void (*__su_sigaction) (int, siginfo_t *, void *);
} sa_union;
sigset_t sa_mask;
int sa_flags;
};
# 349 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/signal.h" 3 4
# 1 "/usr/include/sys/context.h" 1 3 4
# 25 "/usr/include/sys/context.h" 3 4
# 1 "/usr/include/sys/m_param.h" 1 3 4
# 26 "/usr/include/sys/context.h" 2 3 4
# 1 "/usr/include/sys/mstsave.h" 1 3 4
# 38 "/usr/include/sys/mstsave.h" 3 4
# 1 "/usr/include/sys/m_param.h" 1 3 4
# 39 "/usr/include/sys/mstsave.h" 2 3 4
# 1 "/usr/include/sys/m_types.h" 1 3 4
# 40 "/usr/include/sys/mstsave.h" 2 3 4
struct
mstsave
{
struct mstsave *prev;
label_t *kjmpbuf;
char *stackfix;
char intpri;
char backt;
char rsvd[2];
pid_t curid;
int excp_type;
ulong_t iar;
ulong_t msr;
ulong_t cr;
ulong_t lr;
ulong_t ctr;
ulong_t xer;
ulong_t mq;
ulong_t tid;
ulong_t fpscr;
char fpeu;
char fpinfo;
char pad[2];
ulong_t except[5];
char pad1[4];
ulong_t o_iar;
ulong_t o_toc;
ulong_t o_arg1;
ulong_t excbranch;
ulong_t fpscrx;
ulong_t o_vaddr;
ulong_t cachealign[7];
adspace_t as;
ulong_t gpr[32];
double fpr[32];
# 131 "/usr/include/sys/mstsave.h" 3 4
};
# 220 "/usr/include/sys/mstsave.h" 3 4
extern char __pmap_stack[];
# 27 "/usr/include/sys/context.h" 2 3 4
extern "C" {
# 71 "/usr/include/sys/context.h" 3 4
struct __context64 {
unsigned long long gpr[32];
unsigned long long msr;
unsigned long long iar;
unsigned long long lr;
unsigned long long ctr;
unsigned int cr;
unsigned int xer;
unsigned int fpscr;
unsigned int fpscrx;
unsigned long long except[1];
double fpr[32];
char fpeu;
char fpinfo;
char pad[2];
int excp_type;
};
# 119 "/usr/include/sys/context.h" 3 4
struct sigcontext64 {
int sc_onstack;
unsigned int sc_mask1;
unsigned int sc_mask2;
int sc_uerror;
struct __context64 sc_context;
};
# 211 "/usr/include/sys/context.h" 3 4
struct __jmpbuf {
struct mstsave jmp_context;
};
# 245 "/usr/include/sys/context.h" 3 4
struct __sigcontext {
int sc_onstack;
sigset_t sc_mask;
int sc_uerror;
struct __jmpbuf sc_jmpbuf;
};
typedef struct {
void *ss_sp;
size_t ss_size;
int ss_flags;
int __pad[4];
} stack_t;
typedef struct __jmpbuf mcontext_t;
typedef struct ucontext_t {
int __sc_onstack;
sigset_t uc_sigmask;
int __sc_uerror;
mcontext_t uc_mcontext;
struct ucontext_t *uc_link;
stack_t uc_stack;
int __pad[4];
} ucontext_t;
}
# 350 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/signal.h" 2 3 4
struct sigstack {
void *ss_sp;
int ss_onstack;
};
# 436 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/signal.h" 3 4
extern int sigmask(int);
# 589 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/signal.h" 3 4
# 1 "/usr/include/sys/m_signal.h" 1 3 4
# 590 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/signal.h" 2 3 4
# 599 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/signal.h" 3 4
struct sigevent {
union sigval sigev_value;
int sigev_signo;
int sigev_notify;
void (*sigev_notify_function)(union sigval);
pthread_attr_t * sigev_notify_attributes;
};
# 627 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/signal.h" 3 4
struct osigevent {
void *sevt_value;
signal_t sevt_signo;
};
# 718 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/signal.h" 3 4
struct sigvec {
# 730 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/signal.h" 3 4
union {
void (*sv_handler)(int);
void (*sv_sigaction) (int, siginfo_t *, void *);
} sv_union;
int sv_mask;
int sv_flags;
};
# 804 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/signal.h" 3 4
extern int sigwait(const sigset_t *, int *);
extern int sigblock(int);
extern int siglocalmask(int, const sigset_t *);
extern int sigvec(int, struct sigvec *, struct sigvec *);
extern int siggetmask(void);
extern int sigsetmask(int);
# 856 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/signal.h" 3 4
extern int kill(pid_t, int);
extern int sigprocmask(int, const sigset_t *, sigset_t *);
extern int sigsuspend(const sigset_t *);
extern int sigaction(int, const struct sigaction *, struct sigaction *);
extern int sigemptyset(sigset_t *);
extern int sigfillset(sigset_t *);
extern int sigaddset(sigset_t *, int);
extern int sigdelset(sigset_t *, int);
extern int sigismember(const sigset_t *, int);
extern int sigpending(sigset_t *);
extern void (*bsd_signal (int, void (*)(int)))(int);
extern int killpg(pid_t, int);
extern int sighold(int);
extern int sigignore(int);
extern int siginterrupt(int, int);
extern int sigpause(int);
extern int sigrelse(int);
extern void (*sigset(int, void(*)(int)))(int);
extern int sigaltstack(const stack_t *, stack_t *);
extern int sigstack(struct sigstack *, struct sigstack *);
extern int pthread_kill(pthread_t, int);
extern int pthread_sigmask(int, const sigset_t *, sigset_t *);
extern int sigqueue(pid_t, int, const union sigval);
struct timespec;
extern int sigtimedwait(const sigset_t *, siginfo_t *, const struct timespec *);
extern int sigwaitinfo(const sigset_t *, siginfo_t *);
# 913 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/signal.h" 3 4
}
# 63 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/wait.h" 2 3 4
# 141 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/wait.h" 3 4
typedef enum {P_ALL, P_PID, P_PGID} idtype_t;
# 159 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/wait.h" 3 4
extern pid_t wait(int *);
extern pid_t waitpid(pid_t, int *, int);
# 173 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/wait.h" 3 4
extern int waitid(idtype_t, id_t, siginfo_t *, int);
extern pid_t wait3(int *, int, struct rusage *);
extern pid_t kwaitpid(int *, pid_t, int, struct rusage *, siginfo_t *);
extern pid_t kwaitpid64(int *, pid_t, int, struct rusage64 *, siginfo_t *);
extern pid_t wait364(int *, int, struct rusage64 *);
# 201 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/wait.h" 3 4
extern pid_t wait4(pid_t, int *, int, struct rusage *);
# 221 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/wait.h" 3 4
}
# 236 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdlib.h" 2 3 4
# 308 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdlib.h" 3 4
extern double drand48(void);
extern double erand48(unsigned short[]);
extern long jrand48(unsigned short[]);
extern void lcong48(unsigned short int *);
extern long lrand48(void);
extern long mrand48(void);
extern long nrand48(unsigned short[]);
extern unsigned short *seed48(unsigned short[]);
extern void setkey(const char *);
extern void srand48(long);
extern int putenv(char *);
# 337 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdlib.h" 3 4
extern int rand_r(unsigned int *);
# 361 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdlib.h" 3 4
extern long a64l(const char *);
extern char *ecvt(double, int, int *, int *);
extern char *fcvt(double, int, int *, int *);
extern char *gcvt(double, int, char *);
extern int getsubopt(char **, char *const *, char **);
extern int grantpt(int);
extern char *initstate(unsigned, char *, size_t);
extern char *l64a(long);
extern char *mktemp(char *);
extern int mkstemp(char *);
extern char *ptsname(int);
extern long random(void);
extern char *realpath(const char *, char *);
extern char *setstate(const char *);
extern void srandom(unsigned);
extern int unlockpt(int);
extern int ttyslot(void);
extern void *valloc(size_t);
# 464 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdlib.h" 3 4
extern char *optarg;
extern int optind;
extern int opterr;
# 482 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdlib.h" 3 4
extern float atoff(char *);
extern float strtof(const char *, char **);
extern int setenv(const char *, const char *, int);
extern void imul_dbl(long, long, long *);
extern void umul_dbl(unsigned long, unsigned long, unsigned long *);
extern int on_exit(void (*)(int, void *), void *);
# 508 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdlib.h" 3 4
extern double wcstod(const wchar_t *, wchar_t **);
extern long int wcstol(const wchar_t *, wchar_t **, int);
extern unsigned long int wcstoul(const wchar_t *, wchar_t **, int);
extern int rpmatch(const char *);
extern int clearenv(void);
extern int getopt(int, char* const*, const char*);
extern char *getpass(const char *);
# 535 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdlib.h" 3 4
typedef struct lldiv_t {
long long int quot;
long long int rem ;
} lldiv_t;
# 549 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdlib.h" 3 4
extern long long int llabs( long long int );
extern lldiv_t lldiv( long long int, long long int );
extern long long int strtoll(
const char *,
char **,
int );
extern unsigned long long int strtoull(
const char *,
char **,
int );
# 569 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdlib.h" 3 4
}
# 59 "../wxX11/include/wx/string.h" 2
# 1 "/usr/include/strings.h" 1 3 4
# 38 "/usr/include/strings.h" 3 4
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 1 3 4
# 39 "/usr/include/strings.h" 2 3 4
extern "C" {
# 59 "/usr/include/strings.h" 3 4
extern int bcmp(const void *, const void *, size_t);
extern void bcopy(const void *, void *, size_t);
extern void bzero(void *, size_t);
extern int ffs(int);
extern char *index(const char *, int);
extern char *rindex(const char *, int);
extern int strcasecmp(const char *, const char *);
extern int strncasecmp(const char *, const char *, size_t);
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/string.h" 1 3 4
# 74 "/usr/include/strings.h" 2 3 4
}
# 63 "../wxX11/include/wx/string.h" 2
# 1 "../wxX11/include/wx/wxchar.h" 1
# 66 "../wxX11/include/wx/string.h" 2
# 1 "../wxX11/include/wx/buffer.h" 1
# 17 "../wxX11/include/wx/buffer.h"
# 1 "../wxX11/include/wx/wxchar.h" 1
# 18 "../wxX11/include/wx/buffer.h" 2
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/string.h" 1 3 4
# 20 "../wxX11/include/wx/buffer.h" 2
class wxCharBuffer
{
public:
wxCharBuffer(const char *str)
{
;
m_str = str ? strdup(str) : (char *)__null;
}
wxCharBuffer(size_t len)
{
m_str = (char *)malloc(len+1);
m_str[len] = '\0';
}
~wxCharBuffer() { free(m_str); }
wxCharBuffer(const wxCharBuffer& src)
{
m_str = src.m_str;
((wxCharBuffer*)&src)->m_str = (char *)__null;
}
wxCharBuffer& operator=(const wxCharBuffer& src)
{
m_str = src.m_str;
((wxCharBuffer*)&src)->m_str = (char *)__null;
return *this;
}
const char *data() const { return m_str; }
operator const char *() const { return m_str; }
char operator[](size_t n) const { return m_str[n]; }
private:
char *m_str;
};
class wxWCharBuffer
{
public:
wxWCharBuffer(const wchar_t *wcs)
{
;
if (wcs) {
size_t siz = (::wcslen(wcs)+1)*sizeof(wchar_t);
m_wcs = (wchar_t *)malloc(siz);
memcpy(m_wcs, wcs, siz);
}
else m_wcs = (wchar_t *)__null;
}
wxWCharBuffer(size_t len)
{
m_wcs = (wchar_t *)malloc((len+1)*sizeof(wchar_t));
m_wcs[len] = L'\0';
}
~wxWCharBuffer() { free(m_wcs); }
wxWCharBuffer(const wxWCharBuffer& src)
{
m_wcs = src.m_wcs;
((wxWCharBuffer*)&src)->m_wcs = (wchar_t *)__null;
}
wxWCharBuffer& operator=(const wxWCharBuffer& src)
{
m_wcs = src.m_wcs;
((wxWCharBuffer*)&src)->m_wcs = (wchar_t *)__null;
return *this;
}
const wchar_t *data() const { return m_wcs; }
operator const wchar_t *() const { return m_wcs; }
wchar_t operator[](size_t n) const { return m_wcs[n]; }
private:
wchar_t *m_wcs;
};
# 135 "../wxX11/include/wx/buffer.h"
class wxMemoryBuffer
{
public:
enum { BLOCK_SIZE = 1024 };
wxMemoryBuffer(size_t size=wxMemoryBuffer::BLOCK_SIZE)
{
;
m_data = malloc(size);
;
m_size = size;
m_len = 0;
}
~wxMemoryBuffer() { free(m_data); }
void* GetData() const { return m_data; }
size_t GetBufSize() const { return m_size; }
size_t GetDataLen() const { return m_len; }
void SetBufSize(size_t size) { ResizeIfNeeded(size); }
void SetDataLen(size_t len)
{
;
m_len = len;
}
void* GetWriteBuf(size_t sizeNeeded)
{
ResizeIfNeeded(sizeNeeded);
return m_data;
}
void UngetWriteBuf(size_t sizeUsed) { SetDataLen(sizeUsed); }
void* GetAppendBuf(size_t sizeNeeded)
{
ResizeIfNeeded(m_len + sizeNeeded);
return (char*)m_data + m_len;
}
void UngetAppendBuf(size_t sizeUsed) { SetDataLen(m_len + sizeUsed); }
void AppendByte(char data) {
ResizeIfNeeded(m_len + 1);
*(((char*)m_data)+m_len) = data;
m_len += 1;
}
void AppendData(void* data, size_t len)
{
memcpy(GetAppendBuf(len), data, len);
UngetAppendBuf(len);
}
operator const char *() const { return (const char*)m_data; }
wxMemoryBuffer(const wxMemoryBuffer& src)
{
m_data = src.m_data;
m_size = src.m_size;
m_len = src.m_len;
((wxMemoryBuffer*)&src)->m_data = __null;
((wxMemoryBuffer*)&src)->m_size = 0;
((wxMemoryBuffer*)&src)->m_len = 0;
}
wxMemoryBuffer& operator=(const wxMemoryBuffer& src)
{
m_data = src.m_data;
m_size = src.m_size;
m_len = src.m_len;
((wxMemoryBuffer*)&src)->m_data = __null;
((wxMemoryBuffer*)&src)->m_size = 0;
((wxMemoryBuffer*)&src)->m_len = 0;
return *this;
}
protected:
void ResizeIfNeeded(size_t newSize)
{
if (newSize > m_size)
{
m_data = realloc(m_data, newSize + wxMemoryBuffer::BLOCK_SIZE);
;
m_size = newSize + wxMemoryBuffer::BLOCK_SIZE;
}
}
private:
void* m_data;
size_t m_size;
size_t m_len;
};
# 67 "../wxX11/include/wx/string.h" 2
# 1 "../wxX11/include/wx/strconv.h" 1
# 16 "../wxX11/include/wx/strconv.h"
#pragma interface "strconv.h"
# 1 "../wxX11/include/wx/defs.h" 1
# 20 "../wxX11/include/wx/strconv.h" 2
# 1 "../wxX11/include/wx/wxchar.h" 1
# 21 "../wxX11/include/wx/strconv.h" 2
# 1 "../wxX11/include/wx/buffer.h" 1
# 22 "../wxX11/include/wx/strconv.h" 2
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdlib.h" 1 3 4
# 28 "../wxX11/include/wx/strconv.h" 2
class wxMBConv
{
public:
virtual size_t MB2WC(wchar_t *buf, const char *psz, size_t n) const;
virtual size_t WC2MB(char *buf, const wchar_t *psz, size_t n) const;
const wxWCharBuffer cMB2WC(const char *psz) const;
const wxCharBuffer cWC2MB(const wchar_t *psz) const;
const char* cMB2WX(const char *psz) const { return psz; }
const char* cWX2MB(const char *psz) const { return psz; }
const wxCharBuffer cWC2WX(const wchar_t *psz) const { return cWC2MB(psz); }
const wxWCharBuffer cWX2WC(const char *psz) const { return cMB2WC(psz); }
};
extern wxMBConv wxConvLibc;
class wxMBConvFile : public wxMBConv
{
public:
virtual size_t MB2WC(wchar_t *buf, const char *psz, size_t n) const;
virtual size_t WC2MB(char *buf, const wchar_t *psz, size_t n) const;
};
extern wxMBConvFile wxConvFile;
class wxMBConvUTF7 : public wxMBConv
{
public:
virtual size_t MB2WC(wchar_t *buf, const char *psz, size_t n) const;
virtual size_t WC2MB(char *buf, const wchar_t *psz, size_t n) const;
};
extern wxMBConvUTF7 wxConvUTF7;
class wxMBConvUTF8 : public wxMBConv
{
public:
virtual size_t MB2WC(wchar_t *buf, const char *psz, size_t n) const;
virtual size_t WC2MB(char *buf, const wchar_t *psz, size_t n) const;
};
extern wxMBConvUTF8 wxConvUTF8;
# 121 "../wxX11/include/wx/strconv.h"
class wxCharacterSet;
class wxCSConv : public wxMBConv
{
public:
wxCSConv(const char *charset);
virtual ~wxCSConv();
void LoadNow();
virtual size_t MB2WC(wchar_t *buf, const char *psz, size_t n) const;
virtual size_t WC2MB(char *buf, const wchar_t *psz, size_t n) const;
private:
void SetName(const char *charset);
char *m_name;
wxCharacterSet *m_cset;
bool m_deferred;
};
extern wxCSConv wxConvLocal;
extern wxMBConv * wxConvCurrent;
# 68 "../wxX11/include/wx/string.h" 2
# 95 "../wxX11/include/wx/string.h"
const unsigned int wxSTRING_MAXLEN = (2147483647 * 2U + 1) - 100;
# 104 "../wxX11/include/wx/string.h"
extern const char* wxEmptyString;
# 115 "../wxX11/include/wx/string.h"
inline bool IsEmpty(const char *p) { return (!p || !*p); }
inline size_t Strlen(const char *psz)
{ return psz ? strlen(psz) : 0; }
inline int Stricmp(const char *psz1, const char *psz2)
{
# 141 "../wxX11/include/wx/string.h"
return strcasecmp(psz1, psz2);
# 166 "../wxX11/include/wx/string.h"
}
extern int wxSnprintf(char *buf, size_t len,
const char *format, ...);
extern int wxVsnprintf(char *buf, size_t len,
const char *format, va_list argptr);
class wxString;
inline const wxString& wxGetEmptyString() { return *(wxString *)&wxEmptyString; }
struct wxStringData
{
int nRefs;
size_t nDataLength,
nAllocLength;
char* data() const { return (char*)(this + 1); }
bool IsEmpty() const { return (nRefs == -1); }
bool IsShared() const { return (nRefs > 1); }
void Lock() { if ( !IsEmpty() ) nRefs++; }
void Unlock() { if ( !IsEmpty() && --nRefs == 0) free(this); }
void Validate(bool b) { nRefs = (b ? 1 : 0); }
bool IsValid() const { return (nRefs != 0); }
};
# 238 "../wxX11/include/wx/string.h"
class wxString
{
friend class wxArrayString;
private:
char *m_pchData;
wxStringData* GetStringData() const { return (wxStringData*)m_pchData - 1; }
void Init() { m_pchData = (char *)wxEmptyString; }
void InitWith(const char *psz, size_t nPos = 0, size_t nLen = wxSTRING_MAXLEN);
void Reinit() { GetStringData()->Unlock(); Init(); }
void AllocBuffer(size_t nLen);
void AllocCopy(wxString&, int, int) const;
void AssignCopy(size_t, const char *);
void ConcatSelf(int nLen, const char *src);
void CopyBeforeWrite();
void AllocBeforeWrite(size_t);
# 284 "../wxX11/include/wx/string.h"
wxString& operator=(int);
wxString(int);
public:
wxString() { Init(); }
wxString(const wxString& stringSrc)
{
;
if ( stringSrc.IsEmpty() ) {
Init();
}
else {
m_pchData = stringSrc.m_pchData;
GetStringData()->Lock();
}
}
wxString(char ch, size_t nRepeat = 1);
wxString(const char *psz, size_t nLength = wxSTRING_MAXLEN)
{ InitWith(psz, 0, nLength); }
wxString(const char *psz, wxMBConv& , size_t nLength = wxSTRING_MAXLEN)
{ InitWith(psz, 0, nLength); }
# 329 "../wxX11/include/wx/string.h"
wxString(const unsigned char* psz, size_t nLength = wxSTRING_MAXLEN)
{ InitWith((const char*)psz, 0, nLength); }
wxString(const wchar_t *pwz, wxMBConv& conv = wxConvLibc, size_t nLength = wxSTRING_MAXLEN);
wxString(const wxCharBuffer& psz)
{ InitWith(psz, 0, wxSTRING_MAXLEN); }
~wxString() { GetStringData()->Unlock(); }
size_t Len() const { return GetStringData()->nDataLength; }
bool IsEmpty() const { return Len() == 0; }
bool operator!() const { return IsEmpty(); }
wxString& Truncate(size_t uiLen);
void Empty()
{
Truncate(0);
;
}
void Clear()
{
if ( !GetStringData()->IsEmpty() )
Reinit();
;
;
}
bool IsAscii() const;
bool IsNumber() const;
bool IsWord() const;
char GetChar(size_t n) const
{ ; return m_pchData[n]; }
char& GetWritableChar(size_t n)
{ ; CopyBeforeWrite(); return m_pchData[n]; }
void SetChar(size_t n, char ch)
{ ; CopyBeforeWrite(); m_pchData[n] = ch; }
char Last() const
{ ; return m_pchData[Len() - 1]; }
char& Last()
{ ; CopyBeforeWrite(); return m_pchData[Len()-1]; }
# 420 "../wxX11/include/wx/string.h"
char operator[](size_t n) const
{ ; return m_pchData[n]; }
char operator[](int n) const
{ ; return m_pchData[n]; }
char& operator[](size_t n)
{ ; CopyBeforeWrite(); return m_pchData[n]; }
char operator[](unsigned int n) const
{ ; return m_pchData[n]; }
char& operator[](unsigned int n)
{ ; CopyBeforeWrite(); return m_pchData[n]; }
operator const char*() const { return m_pchData; }
const char* c_str() const { return m_pchData; }
const char* wx_str() const { return m_pchData; }
const char* GetData() const { return m_pchData; }
# 476 "../wxX11/include/wx/string.h"
const char* mb_str() const { return m_pchData; }
const char* mb_str(wxMBConv& ) const { return m_pchData; }
const char* mbc_str() const { return mb_str(); }
const wxWCharBuffer wc_str(wxMBConv& conv) const
{ return conv.cMB2WC(m_pchData); }
const char* fn_str() const { return m_pchData; }
wxString& operator=(const wxString& stringSrc);
wxString& operator=(char ch);
wxString& operator=(const char *psz);
wxString& operator=(const unsigned char* psz);
wxString& operator=(const wchar_t *pwz);
wxString& operator=(const wxCharBuffer& psz) { return operator=((const char *)psz); }
# 520 "../wxX11/include/wx/string.h"
wxString& operator<<(const wxString& s)
{
;
ConcatSelf(s.Len(), s);
return *this;
}
wxString& operator<<(const char *psz)
{ ConcatSelf(wxStrlen(psz), psz); return *this; }
wxString& operator<<(char ch) { ConcatSelf(1, &ch); return *this; }
void operator+=(const wxString& s) { (void)operator<<(s); }
void operator+=(const char *psz) { (void)operator<<(psz); }
void operator+=(char ch) { (void)operator<<(ch); }
wxString& operator<<(const wxCharBuffer& s) { (void)operator<<((const char *)s); return *this; }
void operator+=(const wxCharBuffer& s) { (void)operator<<((const char *)s); }
wxString& Append(const char* psz)
{ ConcatSelf(wxStrlen(psz), psz); return *this; }
wxString& Append(char ch, size_t count = 1u)
{ wxString str(ch, count); return *this << str; }
wxString& Append(const char* psz, size_t nLen)
{ ConcatSelf(nLen, psz); return *this; }
wxString& Prepend(const wxString& str)
{ *this = str + *this; return *this; }
friend wxString operator+(const wxString& string1, const wxString& string2);
friend wxString operator+(const wxString& string, char ch);
friend wxString operator+(char ch, const wxString& string);
friend wxString operator+(const wxString& string, const char *psz);
friend wxString operator+(const char *psz, const wxString& string);
wxString& operator<<(int i)
{ return (*this) << Format("%d", i); }
wxString& operator<<(unsigned int ui)
{ return (*this) << Format("%u", ui); }
wxString& operator<<(long l)
{ return (*this) << Format("%ld", l); }
wxString& operator<<(unsigned long ul)
{ return (*this) << Format("%lu", ul); }
wxString& operator<<(float f)
{ return (*this) << Format("%f", f); }
wxString& operator<<(double d)
{ return (*this) << Format("%g", d); }
int Cmp(const char *psz) const { return strcmp(c_str(), psz); }
int CmpNoCase(const char *psz) const { return strcasecmp(c_str(), psz); }
bool IsSameAs(const char *psz, bool compareWithCase = 1) const
{ return (compareWithCase ? Cmp(psz) : CmpNoCase(psz)) == 0; }
bool IsSameAs(char c, bool compareWithCase = 1) const
{
return (Len() == 1) && (compareWithCase ? GetChar(0u) == c
: toupper(GetChar(0u)) == toupper(c));
}
wxString Mid(size_t nFirst, size_t nCount = wxSTRING_MAXLEN) const;
wxString operator()(size_t start, size_t len) const
{ return Mid(start, len); }
bool StartsWith(const char *prefix, wxString *rest = __null) const;
wxString Left(size_t nCount) const;
wxString Right(size_t nCount) const;
wxString BeforeFirst(char ch) const;
wxString BeforeLast(char ch) const;
wxString AfterFirst(char ch) const;
wxString AfterLast(char ch) const;
wxString Before(char ch) const { return BeforeLast(ch); }
wxString After(char ch) const { return AfterFirst(ch); }
wxString& MakeUpper();
wxString Upper() const ;
wxString& MakeLower();
wxString Lower() const ;
wxString& Trim(bool bFromRight = 1);
wxString& Pad(size_t nCount, char chPad = ' ', bool bFromRight = 1);
int Find(char ch, bool bFromEnd = 0) const;
int Find(const char *pszSub) const;
size_t Replace(const char *szOld,
const char *szNew,
bool bReplaceAll = 1);
bool Matches(const char *szMask) const;
bool ToLong(long *val, int base = 10) const;
bool ToULong(unsigned long *val, int base = 10) const;
bool ToDouble(double *val) const;
int Printf(const char *pszFormat, ...);
int PrintfV(const char* pszFormat, va_list argptr);
static wxString Format(const char *pszFormat, ...);
static wxString FormatV(const char *pszFormat, va_list argptr);
void Alloc(size_t nLen);
void Shrink();
char *GetWriteBuf(size_t nLen);
void UngetWriteBuf();
void UngetWriteBuf(size_t nLen);
wxString SubString(size_t from, size_t to) const
{ return Mid(from, (to - from + 1)); }
enum caseCompare {exact, ignoreCase};
enum stripType {leading = 0x1, trailing = 0x2, both = 0x3};
int sprintf(const char *pszFormat, ...);
inline int CompareTo(const char* psz, caseCompare cmp = exact) const
{ return cmp == exact ? Cmp(psz) : CmpNoCase(psz); }
size_t Length() const { return Len(); }
int Freq(char ch) const;
void LowerCase() { MakeLower(); }
void UpperCase() { MakeUpper(); }
wxString Strip(stripType w = trailing) const;
size_t Index(const char* psz) const { return Find(psz); }
size_t Index(char ch) const { return Find(ch); }
wxString& Remove(size_t pos) { return Truncate(pos); }
wxString& RemoveLast(size_t n = 1) { return Truncate(Len() - n); }
wxString& Remove(size_t nStart, size_t nLen) { return erase( nStart, nLen ); }
int First( const char ch ) const { return Find(ch); }
int First( const char* psz ) const { return Find(psz); }
int First( const wxString &str ) const { return Find(str); }
int Last( const char ch ) const { return Find(ch, 1); }
bool Contains(const wxString& str) const { return Find(str) != -1; }
bool IsNull() const { return IsEmpty(); }
typedef char value_type;
typedef const value_type *const_iterator;
static const size_t npos;
wxString(const wxString& str, size_t nPos, size_t nLen)
{
;
InitWith(str.c_str(), nPos, nLen == npos ? 0 : nLen);
}
wxString(const void *pStart, const void *pEnd);
size_t size() const { return Len(); }
size_t length() const { return Len(); }
size_t max_size() const { return wxSTRING_MAXLEN; }
void resize(size_t nSize, char ch = '\0');
void clear() { Empty(); }
bool empty() const { return IsEmpty(); }
void reserve(size_t size) { Alloc(size); }
char at(size_t n) const { return GetChar(n); }
char& at(size_t n) { return GetWritableChar(n); }
const_iterator begin() const { return wx_str(); }
const_iterator end() const { return wx_str() + length(); }
wxString& append(const wxString& str)
{ *this += str; return *this; }
wxString& append(const wxString& str, size_t pos, size_t n)
{ ConcatSelf(n, str.c_str() + pos); return *this; }
wxString& append(const char *sz, size_t n = npos)
{ ConcatSelf(n == npos ? wxStrlen(sz) : n, sz); return *this; }
wxString& append(size_t n, char ch) { return Pad(n, ch); }
wxString& assign(const wxString& str)
{ return *this = str; }
wxString& assign(const wxString& str, size_t pos, size_t n)
{ Empty(); return Append(str.c_str() + pos, n); }
wxString& assign(const char *sz, size_t n = npos)
{ Empty(); return Append(sz, n == npos ? wxStrlen(sz) : n); }
wxString& assign(size_t n, char ch)
{ Empty(); return Append(ch, n); }
wxString& insert(size_t nPos, const wxString& str);
wxString& insert(size_t nPos, const wxString& str, size_t nStart, size_t n)
{ return insert(nPos, wxString((const char *)str + nStart, n)); }
wxString& insert(size_t nPos, const char *sz, size_t n = npos)
{ return insert(nPos, wxString(sz, n)); }
wxString& insert(size_t nPos, size_t n, char ch)
{ return insert(nPos, wxString(ch, n)); }
wxString& erase(size_t nStart = 0, size_t nLen = npos);
wxString& replace(size_t nStart, size_t nLen, const char* sz);
wxString& replace(size_t nStart, size_t nLen, size_t nCount, char ch);
wxString& replace(size_t nStart, size_t nLen,
const wxString& str, size_t nStart2, size_t nLen2);
wxString& replace(size_t nStart, size_t nLen,
const char* sz, size_t nCount);
void swap(wxString& str);
size_t find(const wxString& str, size_t nStart = 0) const;
size_t find(const char* sz, size_t nStart = 0, size_t n = npos) const;
size_t find(char ch, size_t nStart = 0) const;
size_t rfind(const wxString& str, size_t nStart = npos) const;
size_t rfind(const char* sz, size_t nStart = npos,
size_t n = npos) const;
size_t rfind(char ch, size_t nStart = npos) const;
size_t find_first_of(const wxString& str, size_t nStart = 0) const
{ return find_first_of(str.c_str(), nStart); }
size_t find_first_of(const char* sz, size_t nStart = 0) const;
size_t find_first_of(char c, size_t nStart = 0) const
{ return find(c, nStart); }
size_t find_last_of (const wxString& str, size_t nStart = npos) const
{ return find_last_of(str.c_str(), nStart); }
size_t find_last_of (const char* sz, size_t nStart = npos) const;
size_t find_last_of(char c, size_t nStart = npos) const
{ return rfind(c, nStart); }
size_t find_first_not_of(const wxString& str, size_t nStart = 0) const
{ return find_first_not_of(str.c_str(), nStart); }
size_t find_first_not_of(const char* sz, size_t nStart = 0) const;
size_t find_first_not_of(char ch, size_t nStart = 0) const;
size_t find_last_not_of(const wxString& str, size_t nStart = npos) const
{ return find_first_not_of(str.c_str(), nStart); }
size_t find_last_not_of(const char* sz, size_t nStart = npos) const;
size_t find_last_not_of(char ch, size_t nStart = npos) const;
int compare(const wxString& str) const { return Cmp(str); }
int compare(size_t nStart, size_t nLen, const wxString& str) const
{ return Mid(nStart, nLen).Cmp(str); }
int compare(size_t nStart, size_t nLen,
const wxString& str, size_t nStart2, size_t nLen2) const
{ return Mid(nStart, nLen).Cmp(str.Mid(nStart2, nLen2)); }
int compare(const char* sz) const { return Cmp(sz); }
int compare(size_t nStart, size_t nLen,
const char* sz, size_t nCount = npos) const
{ return Mid(nStart, nLen).Cmp(wxString(sz, nCount)); }
wxString substr(size_t nStart = 0, size_t nLen = npos) const
{ return Mid(nStart, nLen); }
};
# 972 "../wxX11/include/wx/string.h"
class wxArrayString
{
public:
typedef int (*CompareFunction)(const wxString& first,
const wxString& second);
wxArrayString() { Init(0); }
# 990 "../wxX11/include/wx/string.h"
wxArrayString(int autoSort) { Init(autoSort != 0); }
wxArrayString(const wxArrayString& array);
wxArrayString& operator=(const wxArrayString& src);
~wxArrayString();
void Empty();
void Clear();
void Alloc(size_t nCount);
void Shrink();
size_t GetCount() const { return m_nCount; }
bool IsEmpty() const { return m_nCount == 0; }
size_t Count() const { return m_nCount; }
wxString& Item(size_t nIndex) const
{ ; return *(wxString *)&(m_pItems[nIndex]); }
wxString& operator[](size_t nIndex) const { return Item(nIndex); }
wxString& Last() const { ; return Item(Count() - 1); }
wxString* GetStringArray() const;
int Index (const char *sz, bool bCase = 1, bool bFromEnd = 0) const;
size_t Add(const wxString& str);
void Insert(const wxString& str, size_t uiIndex);
void SetCount(size_t count);
void Remove(const char *sz);
void Remove(size_t nIndex);
void RemoveAt(size_t nIndex) { Remove(nIndex); }
void Sort(bool reverseOrder = 0);
void Sort(CompareFunction compareFunction);
bool operator==(const wxArrayString& a) const;
bool operator!=(const wxArrayString& a) const { return !(*this == a); }
protected:
void Init(bool autoSort);
void Copy(const wxArrayString& src);
private:
void Grow();
void Free();
void DoSort();
size_t m_nSize,
m_nCount;
char **m_pItems;
bool m_autoSort;
};
class wxSortedArrayString : public wxArrayString
{
public:
wxSortedArrayString() : wxArrayString(1)
{ }
wxSortedArrayString(const wxArrayString& array) : wxArrayString(1)
{ Copy(array); }
};
class wxStringBuffer
{
public:
wxStringBuffer(wxString& str, size_t lenWanted = 1024)
: m_str(str) { m_buf = m_str.GetWriteBuf(lenWanted); }
~wxStringBuffer() { m_str.UngetWriteBuf(); }
operator char*() const { return m_buf; }
private:
wxString& m_str;
char *m_buf;
};
inline bool operator==(const wxString& s1, const wxString& s2)
{ return (s1.Len() == s2.Len()) && (s1.Cmp(s2) == 0); }
inline bool operator==(const wxString& s1, const char * s2)
{ return s1.Cmp(s2) == 0; }
inline bool operator==(const char * s1, const wxString& s2)
{ return s2.Cmp(s1) == 0; }
inline bool operator!=(const wxString& s1, const wxString& s2)
{ return (s1.Len() != s2.Len()) || (s1.Cmp(s2) != 0); }
inline bool operator!=(const wxString& s1, const char * s2)
{ return s1.Cmp(s2) != 0; }
inline bool operator!=(const char * s1, const wxString& s2)
{ return s2.Cmp(s1) != 0; }
inline bool operator< (const wxString& s1, const wxString& s2)
{ return s1.Cmp(s2) < 0; }
inline bool operator< (const wxString& s1, const char * s2)
{ return s1.Cmp(s2) < 0; }
inline bool operator< (const char * s1, const wxString& s2)
{ return s2.Cmp(s1) > 0; }
inline bool operator> (const wxString& s1, const wxString& s2)
{ return s1.Cmp(s2) > 0; }
inline bool operator> (const wxString& s1, const char * s2)
{ return s1.Cmp(s2) > 0; }
inline bool operator> (const char * s1, const wxString& s2)
{ return s2.Cmp(s1) < 0; }
inline bool operator<=(const wxString& s1, const wxString& s2)
{ return s1.Cmp(s2) <= 0; }
inline bool operator<=(const wxString& s1, const char * s2)
{ return s1.Cmp(s2) <= 0; }
inline bool operator<=(const char * s1, const wxString& s2)
{ return s2.Cmp(s1) >= 0; }
inline bool operator>=(const wxString& s1, const wxString& s2)
{ return s1.Cmp(s2) >= 0; }
inline bool operator>=(const wxString& s1, const char * s2)
{ return s1.Cmp(s2) >= 0; }
inline bool operator>=(const char * s1, const wxString& s2)
{ return s2.Cmp(s1) <= 0; }
inline bool operator==(char c, const wxString& s) { return s.IsSameAs(c); }
inline bool operator==(const wxString& s, char c) { return s.IsSameAs(c); }
inline bool operator!=(char c, const wxString& s) { return !s.IsSameAs(c); }
inline bool operator!=(const wxString& s, char c) { return !s.IsSameAs(c); }
# 1166 "../wxX11/include/wx/string.h"
inline bool operator==(const wxString& s1, const wxCharBuffer& s2)
{ return (s1.Cmp((const char *)s2) == 0); }
inline bool operator==(const wxCharBuffer& s1, const wxString& s2)
{ return (s2.Cmp((const char *)s1) == 0); }
inline bool operator!=(const wxString& s1, const wxCharBuffer& s2)
{ return (s1.Cmp((const char *)s2) != 0); }
inline bool operator!=(const wxCharBuffer& s1, const wxString& s2)
{ return (s2.Cmp((const char *)s1) != 0); }
wxString operator+(const wxString& string1, const wxString& string2);
wxString operator+(const wxString& string, char ch);
wxString operator+(char ch, const wxString& string);
wxString operator+(const wxString& string, const char *psz);
wxString operator+(const char *psz, const wxString& string);
inline wxString operator+(const wxString& string, const wxCharBuffer& buf)
{ return string + (const char *)buf; }
inline wxString operator+(const wxCharBuffer& buf, const wxString& string)
{ return (const char *)buf + string; }
# 70 "../wxX11/src/common/datetime.cpp" 2
# 1 "../wxX11/include/wx/log.h" 1
# 16 "../wxX11/include/wx/log.h"
#pragma interface "log.h"
# 1 "lib/wx/include/motif-2.3/wx/setup.h" 1
# 20 "../wxX11/include/wx/log.h" 2
# 1 "../wxX11/include/wx/string.h" 1
# 21 "../wxX11/include/wx/log.h" 2
class wxTextCtrl;
class wxLogFrame;
class wxFrame;
typedef unsigned long wxTraceMask;
typedef unsigned long wxLogLevel;
# 1 "/usr/include/time.h" 1 3 4
# 30 "/usr/include/time.h" 3 4
extern "C" {
# 70 "/usr/include/time.h" 3 4
struct tm {
int tm_sec;
int tm_min;
int tm_hour;
int tm_mday;
int tm_mon;
int tm_year;
int tm_wday;
int tm_yday;
int tm_isdst;
};
# 110 "/usr/include/time.h" 3 4
extern size_t strftime(char *, size_t, const char *, const struct tm *);
extern clock_t clock(void);
extern double difftime(time_t, time_t);
extern time_t mktime(struct tm *);
extern time_t time(time_t *);
extern char *asctime(const struct tm *);
extern char *ctime(const time_t *);
extern struct tm *gmtime(const time_t *);
extern struct tm *localtime(const time_t *);
# 128 "/usr/include/time.h" 3 4
extern char *asctime_r(const struct tm *, char *);
extern char *ctime_r(const time_t *, char *);
extern struct tm *gmtime_r(const time_t *, struct tm *);
extern struct tm *localtime_r(const time_t *, struct tm *);
# 156 "/usr/include/time.h" 3 4
extern char *tzname[];
extern void tzset(void);
extern long timezone;
extern int daylight;
extern char *strptime(const char *, const char *, struct tm *);
extern int getdate_err;
extern struct tm *getdate(const char *);
struct timespec {
time_t tv_sec;
long tv_nsec;
};
struct itimerspec {
struct timespec it_interval;
struct timespec it_value;
};
extern int clock_getres(clockid_t, struct timespec *);
extern int clock_gettime(clockid_t, struct timespec *);
extern int clock_settime(clockid_t, const struct timespec *);
extern int nanosleep(const struct timespec *, struct timespec *);
extern int timer_create(clockid_t, struct sigevent *, timer_t *);
extern int timer_delete(timer_t);
extern int timer_gettime(timer_t, struct itimerspec *);
extern int timer_getoverrun(timer_t);
extern int timer_settime(timer_t, int, const struct itimerspec *, struct itimerspec *);
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stddef.h" 1 3 4
# 218 "/usr/include/time.h" 2 3 4
# 227 "/usr/include/time.h" 3 4
extern unsigned char *NLctime(long *);
extern unsigned char *NLasctime(struct tm *);
extern char *NLstrtime(char *, size_t, const char *, const struct tm *);
}
# 44 "../wxX11/include/wx/log.h" 2
# 1 "../wxX11/include/wx/dynarray.h" 1
# 16 "../wxX11/include/wx/dynarray.h"
#pragma interface "dynarray.h"
# 1 "../wxX11/include/wx/defs.h" 1
# 20 "../wxX11/include/wx/dynarray.h" 2
# 64 "../wxX11/include/wx/dynarray.h"
extern "C"
{
typedef int ( *CMPFUNC)(const void* pItem1, const void* pItem2);
}
# 466 "../wxX11/include/wx/dynarray.h"
typedef const void * _wxArraywxBaseArrayPtrVoid; class wxBaseArrayPtrVoid { public: wxBaseArrayPtrVoid(); wxBaseArrayPtrVoid(const wxBaseArrayPtrVoid& array); wxBaseArrayPtrVoid& operator=(const wxBaseArrayPtrVoid& src); ~wxBaseArrayPtrVoid(); void Empty() { m_nCount = 0; } void Clear(); void Alloc(size_t uiSize); void Shrink(); size_t GetCount() const { return m_nCount; } bool IsEmpty() const { return m_nCount == 0; } size_t Count() const { return m_nCount; } typedef _wxArraywxBaseArrayPtrVoid base_type; protected: _wxArraywxBaseArrayPtrVoid& Item(size_t uiIndex) const { ; return m_pItems[uiIndex]; } _wxArraywxBaseArrayPtrVoid& operator[](size_t uiIndex) const { return Item(uiIndex); } int Index(_wxArraywxBaseArrayPtrVoid lItem, bool bFromEnd = 0) const; int Index(_wxArraywxBaseArrayPtrVoid lItem, CMPFUNC fnCompare) const; size_t IndexForInsert(_wxArraywxBaseArrayPtrVoid lItem, CMPFUNC fnCompare) const; void Add(_wxArraywxBaseArrayPtrVoid lItem); void Add(_wxArraywxBaseArrayPtrVoid lItem, CMPFUNC fnCompare); void Insert(_wxArraywxBaseArrayPtrVoid lItem, size_t uiIndex); void Remove(_wxArraywxBaseArrayPtrVoid lItem); void RemoveAt(size_t uiIndex); void Sort(CMPFUNC fnCompare); private: void Grow(); size_t m_nSize, m_nCount; _wxArraywxBaseArrayPtrVoid *m_pItems; };;
typedef short _wxArraywxBaseArrayShort; class wxBaseArrayShort { public: wxBaseArrayShort(); wxBaseArrayShort(const wxBaseArrayShort& array); wxBaseArrayShort& operator=(const wxBaseArrayShort& src); ~wxBaseArrayShort(); void Empty() { m_nCount = 0; } void Clear(); void Alloc(size_t uiSize); void Shrink(); size_t GetCount() const { return m_nCount; } bool IsEmpty() const { return m_nCount == 0; } size_t Count() const { return m_nCount; } typedef _wxArraywxBaseArrayShort base_type; protected: _wxArraywxBaseArrayShort& Item(size_t uiIndex) const { ; return m_pItems[uiIndex]; } _wxArraywxBaseArrayShort& operator[](size_t uiIndex) const { return Item(uiIndex); } int Index(_wxArraywxBaseArrayShort lItem, bool bFromEnd = 0) const; int Index(_wxArraywxBaseArrayShort lItem, CMPFUNC fnCompare) const; size_t IndexForInsert(_wxArraywxBaseArrayShort lItem, CMPFUNC fnCompare) const; void Add(_wxArraywxBaseArrayShort lItem); void Add(_wxArraywxBaseArrayShort lItem, CMPFUNC fnCompare); void Insert(_wxArraywxBaseArrayShort lItem, size_t uiIndex); void Remove(_wxArraywxBaseArrayShort lItem); void RemoveAt(size_t uiIndex); void Sort(CMPFUNC fnCompare); private: void Grow(); size_t m_nSize, m_nCount; _wxArraywxBaseArrayShort *m_pItems; };;
typedef int _wxArraywxBaseArrayInt; class wxBaseArrayInt { public: wxBaseArrayInt(); wxBaseArrayInt(const wxBaseArrayInt& array); wxBaseArrayInt& operator=(const wxBaseArrayInt& src); ~wxBaseArrayInt(); void Empty() { m_nCount = 0; } void Clear(); void Alloc(size_t uiSize); void Shrink(); size_t GetCount() const { return m_nCount; } bool IsEmpty() const { return m_nCount == 0; } size_t Count() const { return m_nCount; } typedef _wxArraywxBaseArrayInt base_type; protected: _wxArraywxBaseArrayInt& Item(size_t uiIndex) const { ; return m_pItems[uiIndex]; } _wxArraywxBaseArrayInt& operator[](size_t uiIndex) const { return Item(uiIndex); } int Index(_wxArraywxBaseArrayInt lItem, bool bFromEnd = 0) const; int Index(_wxArraywxBaseArrayInt lItem, CMPFUNC fnCompare) const; size_t IndexForInsert(_wxArraywxBaseArrayInt lItem, CMPFUNC fnCompare) const; void Add(_wxArraywxBaseArrayInt lItem); void Add(_wxArraywxBaseArrayInt lItem, CMPFUNC fnCompare); void Insert(_wxArraywxBaseArrayInt lItem, size_t uiIndex); void Remove(_wxArraywxBaseArrayInt lItem); void RemoveAt(size_t uiIndex); void Sort(CMPFUNC fnCompare); private: void Grow(); size_t m_nSize, m_nCount; _wxArraywxBaseArrayInt *m_pItems; };;
typedef long _wxArraywxBaseArrayLong; class wxBaseArrayLong { public: wxBaseArrayLong(); wxBaseArrayLong(const wxBaseArrayLong& array); wxBaseArrayLong& operator=(const wxBaseArrayLong& src); ~wxBaseArrayLong(); void Empty() { m_nCount = 0; } void Clear(); void Alloc(size_t uiSize); void Shrink(); size_t GetCount() const { return m_nCount; } bool IsEmpty() const { return m_nCount == 0; } size_t Count() const { return m_nCount; } typedef _wxArraywxBaseArrayLong base_type; protected: _wxArraywxBaseArrayLong& Item(size_t uiIndex) const { ; return m_pItems[uiIndex]; } _wxArraywxBaseArrayLong& operator[](size_t uiIndex) const { return Item(uiIndex); } int Index(_wxArraywxBaseArrayLong lItem, bool bFromEnd = 0) const; int Index(_wxArraywxBaseArrayLong lItem, CMPFUNC fnCompare) const; size_t IndexForInsert(_wxArraywxBaseArrayLong lItem, CMPFUNC fnCompare) const; void Add(_wxArraywxBaseArrayLong lItem); void Add(_wxArraywxBaseArrayLong lItem, CMPFUNC fnCompare); void Insert(_wxArraywxBaseArrayLong lItem, size_t uiIndex); void Remove(_wxArraywxBaseArrayLong lItem); void RemoveAt(size_t uiIndex); void Sort(CMPFUNC fnCompare); private: void Grow(); size_t m_nSize, m_nCount; _wxArraywxBaseArrayLong *m_pItems; };;
typedef double _wxArraywxBaseArrayDouble; class wxBaseArrayDouble { public: wxBaseArrayDouble(); wxBaseArrayDouble(const wxBaseArrayDouble& array); wxBaseArrayDouble& operator=(const wxBaseArrayDouble& src); ~wxBaseArrayDouble(); void Empty() { m_nCount = 0; } void Clear(); void Alloc(size_t uiSize); void Shrink(); size_t GetCount() const { return m_nCount; } bool IsEmpty() const { return m_nCount == 0; } size_t Count() const { return m_nCount; } typedef _wxArraywxBaseArrayDouble base_type; protected: _wxArraywxBaseArrayDouble& Item(size_t uiIndex) const { ; return m_pItems[uiIndex]; } _wxArraywxBaseArrayDouble& operator[](size_t uiIndex) const { return Item(uiIndex); } int Index(_wxArraywxBaseArrayDouble lItem, bool bFromEnd = 0) const; int Index(_wxArraywxBaseArrayDouble lItem, CMPFUNC fnCompare) const; size_t IndexForInsert(_wxArraywxBaseArrayDouble lItem, CMPFUNC fnCompare) const; void Add(_wxArraywxBaseArrayDouble lItem); void Add(_wxArraywxBaseArrayDouble lItem, CMPFUNC fnCompare); void Insert(_wxArraywxBaseArrayDouble lItem, size_t uiIndex); void Remove(_wxArraywxBaseArrayDouble lItem); void RemoveAt(size_t uiIndex); void Sort(CMPFUNC fnCompare); private: void Grow(); size_t m_nSize, m_nCount; _wxArraywxBaseArrayDouble *m_pItems; };;
# 587 "../wxX11/include/wx/dynarray.h"
typedef short _wxArraywxArrayShort; struct wxAssert_wxArrayShort { unsigned int TypeTooBigToBeStoredInwxBaseArrayShort: sizeof(_wxArraywxArrayShort) <= sizeof(wxBaseArrayShort::base_type); }; typedef int ( *CMPFUNC_wxArraywxArrayShort)(_wxArraywxArrayShort *pItem1, _wxArraywxArrayShort *pItem2); class wxArrayShort : public wxBaseArrayShort { public: wxArrayShort() { } ~wxArrayShort() { } wxArrayShort& operator=(const wxArrayShort& src) { wxBaseArrayShort* temp = (wxBaseArrayShort*) this; (*temp) = ((const wxBaseArrayShort&)src); return *this; } _wxArraywxArrayShort& operator[](size_t uiIndex) const { return (_wxArraywxArrayShort&)(wxBaseArrayShort::Item(uiIndex)); } _wxArraywxArrayShort& Item(size_t uiIndex) const { return (_wxArraywxArrayShort&)(wxBaseArrayShort::Item(uiIndex)); } _wxArraywxArrayShort& Last() const { return (_wxArraywxArrayShort&)(wxBaseArrayShort::Item(Count() - 1)); } int Index(_wxArraywxArrayShort Item, bool bFromEnd = 0) const { return wxBaseArrayShort::Index(Item, bFromEnd); } void Add(_wxArraywxArrayShort Item) { wxBaseArrayShort::Add(Item); } void Insert(_wxArraywxArrayShort Item, size_t uiIndex) { wxBaseArrayShort::Insert(Item, uiIndex) ; } void RemoveAt(size_t uiIndex) { wxBaseArrayShort::RemoveAt(uiIndex); } void Remove(_wxArraywxArrayShort Item) { int iIndex = Index(Item); if (!(iIndex != (-1))) {; return; }; wxBaseArrayShort::RemoveAt((size_t)iIndex); } void Sort(CMPFUNC_wxArraywxArrayShort fCmp) { wxBaseArrayShort::Sort((CMPFUNC)fCmp); } };
typedef int _wxArraywxArrayInt; struct wxAssert_wxArrayInt { unsigned int TypeTooBigToBeStoredInwxBaseArrayInt: sizeof(_wxArraywxArrayInt) <= sizeof(wxBaseArrayInt::base_type); }; typedef int ( *CMPFUNC_wxArraywxArrayInt)(_wxArraywxArrayInt *pItem1, _wxArraywxArrayInt *pItem2); class wxArrayInt : public wxBaseArrayInt { public: wxArrayInt() { } ~wxArrayInt() { } wxArrayInt& operator=(const wxArrayInt& src) { wxBaseArrayInt* temp = (wxBaseArrayInt*) this; (*temp) = ((const wxBaseArrayInt&)src); return *this; } _wxArraywxArrayInt& operator[](size_t uiIndex) const { return (_wxArraywxArrayInt&)(wxBaseArrayInt::Item(uiIndex)); } _wxArraywxArrayInt& Item(size_t uiIndex) const { return (_wxArraywxArrayInt&)(wxBaseArrayInt::Item(uiIndex)); } _wxArraywxArrayInt& Last() const { return (_wxArraywxArrayInt&)(wxBaseArrayInt::Item(Count() - 1)); } int Index(_wxArraywxArrayInt Item, bool bFromEnd = 0) const { return wxBaseArrayInt::Index(Item, bFromEnd); } void Add(_wxArraywxArrayInt Item) { wxBaseArrayInt::Add(Item); } void Insert(_wxArraywxArrayInt Item, size_t uiIndex) { wxBaseArrayInt::Insert(Item, uiIndex) ; } void RemoveAt(size_t uiIndex) { wxBaseArrayInt::RemoveAt(uiIndex); } void Remove(_wxArraywxArrayInt Item) { int iIndex = Index(Item); if (!(iIndex != (-1))) {; return; }; wxBaseArrayInt::RemoveAt((size_t)iIndex); } void Sort(CMPFUNC_wxArraywxArrayInt fCmp) { wxBaseArrayInt::Sort((CMPFUNC)fCmp); } };
typedef long _wxArraywxArrayLong; struct wxAssert_wxArrayLong { unsigned int TypeTooBigToBeStoredInwxBaseArrayLong: sizeof(_wxArraywxArrayLong) <= sizeof(wxBaseArrayLong::base_type); }; typedef int ( *CMPFUNC_wxArraywxArrayLong)(_wxArraywxArrayLong *pItem1, _wxArraywxArrayLong *pItem2); class wxArrayLong : public wxBaseArrayLong { public: wxArrayLong() { } ~wxArrayLong() { } wxArrayLong& operator=(const wxArrayLong& src) { wxBaseArrayLong* temp = (wxBaseArrayLong*) this; (*temp) = ((const wxBaseArrayLong&)src); return *this; } _wxArraywxArrayLong& operator[](size_t uiIndex) const { return (_wxArraywxArrayLong&)(wxBaseArrayLong::Item(uiIndex)); } _wxArraywxArrayLong& Item(size_t uiIndex) const { return (_wxArraywxArrayLong&)(wxBaseArrayLong::Item(uiIndex)); } _wxArraywxArrayLong& Last() const { return (_wxArraywxArrayLong&)(wxBaseArrayLong::Item(Count() - 1)); } int Index(_wxArraywxArrayLong Item, bool bFromEnd = 0) const { return wxBaseArrayLong::Index(Item, bFromEnd); } void Add(_wxArraywxArrayLong Item) { wxBaseArrayLong::Add(Item); } void Insert(_wxArraywxArrayLong Item, size_t uiIndex) { wxBaseArrayLong::Insert(Item, uiIndex) ; } void RemoveAt(size_t uiIndex) { wxBaseArrayLong::RemoveAt(uiIndex); } void Remove(_wxArraywxArrayLong Item) { int iIndex = Index(Item); if (!(iIndex != (-1))) {; return; }; wxBaseArrayLong::RemoveAt((size_t)iIndex); } void Sort(CMPFUNC_wxArraywxArrayLong fCmp) { wxBaseArrayLong::Sort((CMPFUNC)fCmp); } };
typedef void * _wxArraywxArrayPtrVoid; struct wxAssert_wxArrayPtrVoid { unsigned int TypeTooBigToBeStoredInwxBaseArrayPtrVoid: sizeof(_wxArraywxArrayPtrVoid) <= sizeof(wxBaseArrayPtrVoid::base_type); }; typedef int ( *CMPFUNC_wxArraywxArrayPtrVoid)(_wxArraywxArrayPtrVoid *pItem1, _wxArraywxArrayPtrVoid *pItem2); class wxArrayPtrVoid : public wxBaseArrayPtrVoid { public: wxArrayPtrVoid() { } ~wxArrayPtrVoid() { } wxArrayPtrVoid& operator=(const wxArrayPtrVoid& src) { wxBaseArrayPtrVoid* temp = (wxBaseArrayPtrVoid*) this; (*temp) = ((const wxBaseArrayPtrVoid&)src); return *this; } _wxArraywxArrayPtrVoid& operator[](size_t uiIndex) const { return (_wxArraywxArrayPtrVoid&)(wxBaseArrayPtrVoid::Item(uiIndex)); } _wxArraywxArrayPtrVoid& Item(size_t uiIndex) const { return (_wxArraywxArrayPtrVoid&)(wxBaseArrayPtrVoid::Item(uiIndex)); } _wxArraywxArrayPtrVoid& Last() const { return (_wxArraywxArrayPtrVoid&)(wxBaseArrayPtrVoid::Item(Count() - 1)); } int Index(_wxArraywxArrayPtrVoid Item, bool bFromEnd = 0) const { return wxBaseArrayPtrVoid::Index(Item, bFromEnd); } void Add(_wxArraywxArrayPtrVoid Item) { wxBaseArrayPtrVoid::Add(Item); } void Insert(_wxArraywxArrayPtrVoid Item, size_t uiIndex) { wxBaseArrayPtrVoid::Insert(Item, uiIndex) ; } void RemoveAt(size_t uiIndex) { wxBaseArrayPtrVoid::RemoveAt(uiIndex); } void Remove(_wxArraywxArrayPtrVoid Item) { int iIndex = Index(Item); if (!(iIndex != (-1))) {; return; }; wxBaseArrayPtrVoid::RemoveAt((size_t)iIndex); } void Sort(CMPFUNC_wxArraywxArrayPtrVoid fCmp) { wxBaseArrayPtrVoid::Sort((CMPFUNC)fCmp); } };
# 46 "../wxX11/include/wx/log.h" 2
enum
{
wxLOG_FatalError,
wxLOG_Error,
wxLOG_Warning,
wxLOG_Message,
wxLOG_Info,
wxLOG_Status,
wxLOG_Debug,
wxLOG_Trace,
wxLOG_Progress,
wxLOG_User = 100
};
# 93 "../wxX11/include/wx/log.h"
# 1 "../wxX11/include/wx/ioswrap.h" 1
# 94 "../wxX11/include/wx/log.h" 2
class wxLog
{
public:
wxLog();
static char *SetLogBuffer( char *buf, size_t size = 0 );
static bool IsEnabled() { return ms_doLog; }
static bool EnableLogging(bool doIt = 1)
{ bool doLogOld = ms_doLog; ms_doLog = doIt; return doLogOld; }
static void OnLog(wxLogLevel level, const char *szString, time_t t)
{
if ( IsEnabled() ) {
wxLog *pLogger = GetActiveTarget();
if ( pLogger )
pLogger->DoLog(level, szString, t);
}
}
virtual void Flush();
bool HasPendingMessages() const { return m_bHasMessages; }
static void FlushActive()
{
if ( !ms_suspendCount )
{
wxLog *log = GetActiveTarget();
if ( log && log->HasPendingMessages() )
log->Flush();
}
}
static wxLog *GetActiveTarget();
static wxLog *SetActiveTarget(wxLog *pLogger);
static void Suspend() { ms_suspendCount++; }
static void Resume() { ms_suspendCount--; }
static void SetVerbose(bool bVerbose = 1) { ms_bVerbose = bVerbose; }
static void DontCreateOnDemand();
static void SetTraceMask(wxTraceMask ulMask) { ms_ulTraceMask = ulMask; }
static void AddTraceMask(const wxString& str) { ms_aTraceMasks.Add(str); }
static void RemoveTraceMask(const wxString& str);
static void ClearTraceMasks();
static void SetTimestamp(const char *ts) { ms_timestamp = ts; }
static bool GetVerbose() { return ms_bVerbose; }
static wxTraceMask GetTraceMask() { return ms_ulTraceMask; }
static bool IsAllowedTraceMask(const char *mask)
{ return ms_aTraceMasks.Index(mask) != (-1); }
static const char *GetTimestamp() { return ms_timestamp; }
static void TimeStamp(wxString *str);
virtual ~wxLog() { }
protected:
bool m_bHasMessages;
virtual void DoLog(wxLogLevel level, const char *szString, time_t t);
virtual void DoLogString(const char *szString, time_t t);
private:
static wxLog *ms_pLogger;
static bool ms_doLog;
static bool ms_bAutoCreate;
static bool ms_bVerbose;
static size_t ms_suspendCount;
static const char *ms_timestamp;
static wxTraceMask ms_ulTraceMask;
static wxArrayString ms_aTraceMasks;
};
class wxLogStderr : public wxLog
{
public:
wxLogStderr(FILE *fp = (FILE *) __null);
protected:
virtual void DoLogString(const char *szString, time_t t);
FILE *m_fp;
};
# 293 "../wxX11/include/wx/log.h"
class wxLogNull
{
public:
wxLogNull() { m_flagOld = wxLog::EnableLogging(0); }
~wxLogNull() { (void)wxLog::EnableLogging(m_flagOld); }
private:
bool m_flagOld;
};
# 312 "../wxX11/include/wx/log.h"
class wxLogChain : public wxLog
{
public:
wxLogChain(wxLog *logger);
virtual ~wxLogChain() { delete m_logOld; }
void SetLog(wxLog *logger);
void PassMessages(bool bDoPass) { m_bPassMessages = bDoPass; }
bool IsPassingMessages() const { return m_bPassMessages; }
wxLog *GetOldLog() const { return m_logOld; }
virtual void Flush();
protected:
virtual void DoLog(wxLogLevel level, const char *szString, time_t t);
private:
wxLog *m_logNew;
wxLog *m_logOld;
bool m_bPassMessages;
};
class wxLogPassThrough : public wxLogChain
{
public:
wxLogPassThrough();
};
# 367 "../wxX11/include/wx/log.h"
class wxLogTextCtrl : public wxLog
{
public:
wxLogTextCtrl(wxTextCtrl *pTextCtrl);
private:
virtual void DoLogString(const char *szString, time_t t);
wxTextCtrl *m_pTextCtrl;
};
# 388 "../wxX11/include/wx/log.h"
class wxLogGui : public wxLog
{
public:
wxLogGui();
virtual void Flush();
protected:
virtual void DoLog(wxLogLevel level, const char *szString, time_t t);
void Clear();
wxArrayString m_aMessages;
wxArrayInt m_aSeverity;
wxArrayLong m_aTimes;
bool m_bErrors,
m_bWarnings;
};
# 421 "../wxX11/include/wx/log.h"
class wxLogWindow : public wxLogPassThrough
{
public:
wxLogWindow(wxFrame *pParent,
const char *szTitle,
bool bShow = 1,
bool bPassToOld = 1);
~wxLogWindow();
void Show(bool bShow = 1);
wxFrame *GetFrame() const;
virtual void OnFrameCreate(wxFrame *frame);
virtual bool OnFrameClose(wxFrame *frame);
virtual void OnFrameDelete(wxFrame *frame);
protected:
virtual void DoLog(wxLogLevel level, const char *szString, time_t t);
virtual void DoLogString(const char *szString, time_t t);
private:
wxLogFrame *m_pLogFrame;
};
# 476 "../wxX11/include/wx/log.h"
unsigned long wxSysErrorCode();
const char* wxSysErrorMsg(unsigned long nErrCode = 0);
# 507 "../wxX11/include/wx/log.h"
extern void wxVLogGeneric(wxLogLevel level, const char *szFormat, va_list argptr); extern void wxLogGeneric(wxLogLevel level, const char *szFormat, ...);
extern void wxVLogFatalError(const char *szFormat, va_list argptr); extern void wxLogFatalError(const char *szFormat, ...);
extern void wxVLogError(const char *szFormat, va_list argptr); extern void wxLogError(const char *szFormat, ...);
extern void wxVLogWarning(const char *szFormat, va_list argptr); extern void wxLogWarning(const char *szFormat, ...);
extern void wxVLogMessage(const char *szFormat, va_list argptr); extern void wxLogMessage(const char *szFormat, ...);
extern void wxVLogInfo(const char *szFormat, va_list argptr); extern void wxLogInfo(const char *szFormat, ...);
extern void wxVLogVerbose(const char *szFormat, va_list argptr); extern void wxLogVerbose(const char *szFormat, ...);
extern void wxVLogStatus(const char *szFormat, va_list argptr); extern void wxLogStatus(const char *szFormat, ...);
extern void wxVLogStatus(wxFrame *pFrame, const char *szFormat, va_list argptr); extern void wxLogStatus(wxFrame *pFrame, const char *szFormat, ...);
extern void wxVLogSysError(const char *szFormat, va_list argptr); extern void wxLogSysError(const char *szFormat, ...);
extern void wxVLogSysError(long lErrCode, const char *szFormat, va_list argptr); extern void wxLogSysError(long lErrCode, const char *szFormat, ...);
# 550 "../wxX11/include/wx/log.h"
inline void wxVLogDebug(const char *, va_list) { }
inline void wxLogDebug(const char *, ...) { }
inline void wxVLogTrace(const char *, va_list) { }
inline void wxLogTrace(const char *, ...) { }
inline void wxVLogTrace(wxTraceMask, const char *, va_list) { }
inline void wxLogTrace(wxTraceMask, const char *, ...) { }
inline void wxVLogTrace(const char *, const char *, va_list) { }
inline void wxLogTrace(const char *, const char *, ...) { }
# 583 "../wxX11/include/wx/log.h"
inline void wxLogApiError(const char *, long) { }
inline void wxLogLastError(const char *) { }
# 71 "../wxX11/src/common/datetime.cpp" 2
# 1 "../wxX11/include/wx/intl.h" 1
# 16 "../wxX11/include/wx/intl.h"
#pragma interface "intl.h"
# 1 "../wxX11/include/wx/defs.h" 1
# 20 "../wxX11/include/wx/intl.h" 2
# 1 "../wxX11/include/wx/string.h" 1
# 21 "../wxX11/include/wx/intl.h" 2
# 1 "../wxX11/include/wx/fontenc.h" 1
# 15 "../wxX11/include/wx/fontenc.h"
# 1 "../wxX11/include/wx/string.h" 1
# 16 "../wxX11/include/wx/fontenc.h" 2
enum wxFontEncoding
{
wxFONTENCODING_SYSTEM = -1,
wxFONTENCODING_DEFAULT,
wxFONTENCODING_ISO8859_1,
wxFONTENCODING_ISO8859_2,
wxFONTENCODING_ISO8859_3,
wxFONTENCODING_ISO8859_4,
wxFONTENCODING_ISO8859_5,
wxFONTENCODING_ISO8859_6,
wxFONTENCODING_ISO8859_7,
wxFONTENCODING_ISO8859_8,
wxFONTENCODING_ISO8859_9,
wxFONTENCODING_ISO8859_10,
wxFONTENCODING_ISO8859_11,
wxFONTENCODING_ISO8859_12,
wxFONTENCODING_ISO8859_13,
wxFONTENCODING_ISO8859_14,
wxFONTENCODING_ISO8859_15,
wxFONTENCODING_ISO8859_MAX,
wxFONTENCODING_KOI8,
wxFONTENCODING_ALTERNATIVE,
wxFONTENCODING_BULGARIAN,
wxFONTENCODING_CP437,
wxFONTENCODING_CP850,
wxFONTENCODING_CP852,
wxFONTENCODING_CP855,
wxFONTENCODING_CP866,
wxFONTENCODING_CP874,
wxFONTENCODING_CP932,
wxFONTENCODING_CP936,
wxFONTENCODING_CP949,
wxFONTENCODING_CP950,
wxFONTENCODING_CP1250,
wxFONTENCODING_CP1251,
wxFONTENCODING_CP1252,
wxFONTENCODING_CP1253,
wxFONTENCODING_CP1254,
wxFONTENCODING_CP1255,
wxFONTENCODING_CP1256,
wxFONTENCODING_CP1257,
wxFONTENCODING_CP12_MAX,
wxFONTENCODING_UTF7,
wxFONTENCODING_UTF8,
wxFONTENCODING_UNICODE,
wxFONTENCODING_MAX
};
# 100 "../wxX11/include/wx/fontenc.h"
struct wxNativeEncodingInfo
{
wxString facename;
wxFontEncoding encoding;
wxString xregistry,
xencoding;
# 120 "../wxX11/include/wx/fontenc.h"
bool FromString(const wxString& s);
wxString ToString() const;
};
# 25 "../wxX11/include/wx/intl.h" 2
# 48 "../wxX11/include/wx/intl.h"
class wxLocale;
class wxMsgCatalog;
class wxLanguageInfoArray;
# 64 "../wxX11/include/wx/intl.h"
enum wxLanguage
{
wxLANGUAGE_DEFAULT,
wxLANGUAGE_UNKNOWN,
wxLANGUAGE_ABKHAZIAN,
wxLANGUAGE_AFAR,
wxLANGUAGE_AFRIKAANS,
wxLANGUAGE_ALBANIAN,
wxLANGUAGE_AMHARIC,
wxLANGUAGE_ARABIC,
wxLANGUAGE_ARABIC_ALGERIA,
wxLANGUAGE_ARABIC_BAHRAIN,
wxLANGUAGE_ARABIC_EGYPT,
wxLANGUAGE_ARABIC_IRAQ,
wxLANGUAGE_ARABIC_JORDAN,
wxLANGUAGE_ARABIC_KUWAIT,
wxLANGUAGE_ARABIC_LEBANON,
wxLANGUAGE_ARABIC_LIBYA,
wxLANGUAGE_ARABIC_MOROCCO,
wxLANGUAGE_ARABIC_OMAN,
wxLANGUAGE_ARABIC_QATAR,
wxLANGUAGE_ARABIC_SAUDI_ARABIA,
wxLANGUAGE_ARABIC_SUDAN,
wxLANGUAGE_ARABIC_SYRIA,
wxLANGUAGE_ARABIC_TUNISIA,
wxLANGUAGE_ARABIC_UAE,
wxLANGUAGE_ARABIC_YEMEN,
wxLANGUAGE_ARMENIAN,
wxLANGUAGE_ASSAMESE,
wxLANGUAGE_AYMARA,
wxLANGUAGE_AZERI,
wxLANGUAGE_AZERI_CYRILLIC,
wxLANGUAGE_AZERI_LATIN,
wxLANGUAGE_BASHKIR,
wxLANGUAGE_BASQUE,
wxLANGUAGE_BELARUSIAN,
wxLANGUAGE_BENGALI,
wxLANGUAGE_BHUTANI,
wxLANGUAGE_BIHARI,
wxLANGUAGE_BISLAMA,
wxLANGUAGE_BRETON,
wxLANGUAGE_BULGARIAN,
wxLANGUAGE_BURMESE,
wxLANGUAGE_CAMBODIAN,
wxLANGUAGE_CATALAN,
wxLANGUAGE_CHINESE,
wxLANGUAGE_CHINESE_SIMPLIFIED,
wxLANGUAGE_CHINESE_TRADITIONAL,
wxLANGUAGE_CHINESE_HONGKONG,
wxLANGUAGE_CHINESE_MACAU,
wxLANGUAGE_CHINESE_SINGAPORE,
wxLANGUAGE_CHINESE_TAIWAN,
wxLANGUAGE_CORSICAN,
wxLANGUAGE_CROATIAN,
wxLANGUAGE_CZECH,
wxLANGUAGE_DANISH,
wxLANGUAGE_DUTCH,
wxLANGUAGE_DUTCH_BELGIAN,
wxLANGUAGE_ENGLISH,
wxLANGUAGE_ENGLISH_UK,
wxLANGUAGE_ENGLISH_US,
wxLANGUAGE_ENGLISH_AUSTRALIA,
wxLANGUAGE_ENGLISH_BELIZE,
wxLANGUAGE_ENGLISH_BOTSWANA,
wxLANGUAGE_ENGLISH_CANADA,
wxLANGUAGE_ENGLISH_CARIBBEAN,
wxLANGUAGE_ENGLISH_DENMARK,
wxLANGUAGE_ENGLISH_EIRE,
wxLANGUAGE_ENGLISH_JAMAICA,
wxLANGUAGE_ENGLISH_NEW_ZEALAND,
wxLANGUAGE_ENGLISH_PHILIPPINES,
wxLANGUAGE_ENGLISH_SOUTH_AFRICA,
wxLANGUAGE_ENGLISH_TRINIDAD,
wxLANGUAGE_ENGLISH_ZIMBABWE,
wxLANGUAGE_ESPERANTO,
wxLANGUAGE_ESTONIAN,
wxLANGUAGE_FAEROESE,
wxLANGUAGE_FARSI,
wxLANGUAGE_FIJI,
wxLANGUAGE_FINNISH,
wxLANGUAGE_FRENCH,
wxLANGUAGE_FRENCH_BELGIAN,
wxLANGUAGE_FRENCH_CANADIAN,
wxLANGUAGE_FRENCH_LUXEMBOURG,
wxLANGUAGE_FRENCH_MONACO,
wxLANGUAGE_FRENCH_SWISS,
wxLANGUAGE_FRISIAN,
wxLANGUAGE_GALICIAN,
wxLANGUAGE_GEORGIAN,
wxLANGUAGE_GERMAN,
wxLANGUAGE_GERMAN_AUSTRIAN,
wxLANGUAGE_GERMAN_BELGIUM,
wxLANGUAGE_GERMAN_LIECHTENSTEIN,
wxLANGUAGE_GERMAN_LUXEMBOURG,
wxLANGUAGE_GERMAN_SWISS,
wxLANGUAGE_GREEK,
wxLANGUAGE_GREENLANDIC,
wxLANGUAGE_GUARANI,
wxLANGUAGE_GUJARATI,
wxLANGUAGE_HAUSA,
wxLANGUAGE_HEBREW,
wxLANGUAGE_HINDI,
wxLANGUAGE_HUNGARIAN,
wxLANGUAGE_ICELANDIC,
wxLANGUAGE_INDONESIAN,
wxLANGUAGE_INTERLINGUA,
wxLANGUAGE_INTERLINGUE,
wxLANGUAGE_INUKTITUT,
wxLANGUAGE_INUPIAK,
wxLANGUAGE_IRISH,
wxLANGUAGE_ITALIAN,
wxLANGUAGE_ITALIAN_SWISS,
wxLANGUAGE_JAPANESE,
wxLANGUAGE_JAVANESE,
wxLANGUAGE_KANNADA,
wxLANGUAGE_KASHMIRI,
wxLANGUAGE_KASHMIRI_INDIA,
wxLANGUAGE_KAZAKH,
wxLANGUAGE_KERNEWEK,
wxLANGUAGE_KINYARWANDA,
wxLANGUAGE_KIRGHIZ,
wxLANGUAGE_KIRUNDI,
wxLANGUAGE_KONKANI,
wxLANGUAGE_KOREAN,
wxLANGUAGE_KURDISH,
wxLANGUAGE_LAOTHIAN,
wxLANGUAGE_LATIN,
wxLANGUAGE_LATVIAN,
wxLANGUAGE_LINGALA,
wxLANGUAGE_LITHUANIAN,
wxLANGUAGE_MACEDONIAN,
wxLANGUAGE_MALAGASY,
wxLANGUAGE_MALAY,
wxLANGUAGE_MALAYALAM,
wxLANGUAGE_MALAY_BRUNEI_DARUSSALAM,
wxLANGUAGE_MALAY_MALAYSIA,
wxLANGUAGE_MALTESE,
wxLANGUAGE_MANIPURI,
wxLANGUAGE_MAORI,
wxLANGUAGE_MARATHI,
wxLANGUAGE_MOLDAVIAN,
wxLANGUAGE_MONGOLIAN,
wxLANGUAGE_NAURU,
wxLANGUAGE_NEPALI,
wxLANGUAGE_NEPALI_INDIA,
wxLANGUAGE_NORWEGIAN_BOKMAL,
wxLANGUAGE_NORWEGIAN_NYNORSK,
wxLANGUAGE_OCCITAN,
wxLANGUAGE_ORIYA,
wxLANGUAGE_OROMO,
wxLANGUAGE_PASHTO,
wxLANGUAGE_POLISH,
wxLANGUAGE_PORTUGUESE,
wxLANGUAGE_PORTUGUESE_BRAZILIAN,
wxLANGUAGE_PUNJABI,
wxLANGUAGE_QUECHUA,
wxLANGUAGE_RHAETO_ROMANCE,
wxLANGUAGE_ROMANIAN,
wxLANGUAGE_RUSSIAN,
wxLANGUAGE_RUSSIAN_UKRAINE,
wxLANGUAGE_SAMOAN,
wxLANGUAGE_SANGHO,
wxLANGUAGE_SANSKRIT,
wxLANGUAGE_SCOTS_GAELIC,
wxLANGUAGE_SERBIAN,
wxLANGUAGE_SERBIAN_CYRILLIC,
wxLANGUAGE_SERBIAN_LATIN,
wxLANGUAGE_SERBO_CROATIAN,
wxLANGUAGE_SESOTHO,
wxLANGUAGE_SETSWANA,
wxLANGUAGE_SHONA,
wxLANGUAGE_SINDHI,
wxLANGUAGE_SINHALESE,
wxLANGUAGE_SISWATI,
wxLANGUAGE_SLOVAK,
wxLANGUAGE_SLOVENIAN,
wxLANGUAGE_SOMALI,
wxLANGUAGE_SPANISH,
wxLANGUAGE_SPANISH_ARGENTINA,
wxLANGUAGE_SPANISH_BOLIVIA,
wxLANGUAGE_SPANISH_CHILE,
wxLANGUAGE_SPANISH_COLOMBIA,
wxLANGUAGE_SPANISH_COSTA_RICA,
wxLANGUAGE_SPANISH_DOMINICAN_REPUBLIC,
wxLANGUAGE_SPANISH_ECUADOR,
wxLANGUAGE_SPANISH_EL_SALVADOR,
wxLANGUAGE_SPANISH_GUATEMALA,
wxLANGUAGE_SPANISH_HONDURAS,
wxLANGUAGE_SPANISH_MEXICAN,
wxLANGUAGE_SPANISH_MODERN,
wxLANGUAGE_SPANISH_NICARAGUA,
wxLANGUAGE_SPANISH_PANAMA,
wxLANGUAGE_SPANISH_PARAGUAY,
wxLANGUAGE_SPANISH_PERU,
wxLANGUAGE_SPANISH_PUERTO_RICO,
wxLANGUAGE_SPANISH_URUGUAY,
wxLANGUAGE_SPANISH_US,
wxLANGUAGE_SPANISH_VENEZUELA,
wxLANGUAGE_SUNDANESE,
wxLANGUAGE_SWAHILI,
wxLANGUAGE_SWEDISH,
wxLANGUAGE_SWEDISH_FINLAND,
wxLANGUAGE_TAGALOG,
wxLANGUAGE_TAJIK,
wxLANGUAGE_TAMIL,
wxLANGUAGE_TATAR,
wxLANGUAGE_TELUGU,
wxLANGUAGE_THAI,
wxLANGUAGE_TIBETAN,
wxLANGUAGE_TIGRINYA,
wxLANGUAGE_TONGA,
wxLANGUAGE_TSONGA,
wxLANGUAGE_TURKISH,
wxLANGUAGE_TURKMEN,
wxLANGUAGE_TWI,
wxLANGUAGE_UIGHUR,
wxLANGUAGE_UKRAINIAN,
wxLANGUAGE_URDU,
wxLANGUAGE_URDU_INDIA,
wxLANGUAGE_URDU_PAKISTAN,
wxLANGUAGE_UZBEK,
wxLANGUAGE_UZBEK_CYRILLIC,
wxLANGUAGE_UZBEK_LATIN,
wxLANGUAGE_VIETNAMESE,
wxLANGUAGE_VOLAPUK,
wxLANGUAGE_WELSH,
wxLANGUAGE_WOLOF,
wxLANGUAGE_XHOSA,
wxLANGUAGE_YIDDISH,
wxLANGUAGE_YORUBA,
wxLANGUAGE_ZHUANG,
wxLANGUAGE_ZULU,
wxLANGUAGE_USER_DEFINED
};
# 311 "../wxX11/include/wx/intl.h"
struct wxLanguageInfo
{
int Language;
wxString CanonicalName;
wxString Description;
};
enum wxLocaleCategory
{
wxLOCALE_CAT_NUMBER,
wxLOCALE_CAT_DATE,
wxLOCALE_CAT_MONEY,
wxLOCALE_CAT_MAX
};
enum wxLocaleInfo
{
wxLOCALE_THOUSANDS_SEP,
wxLOCALE_DECIMAL_POINT
};
enum wxLocaleInitFlags
{
wxLOCALE_LOAD_DEFAULT = 0x0001,
wxLOCALE_CONV_ENCODING = 0x0002
};
class wxLocale
{
public:
wxLocale();
wxLocale(const char *szName,
const char *szShort = (const char *) __null,
const char *szLocale = (const char *) __null,
bool bLoadDefault = 1,
bool bConvertEncoding = 0)
{
Init(szName, szShort, szLocale, bLoadDefault, bConvertEncoding);
}
wxLocale(int language,
int flags = wxLOCALE_LOAD_DEFAULT | wxLOCALE_CONV_ENCODING)
{ Init(language, flags); }
bool Init(const char *szName,
const char *szShort = (const char *) __null,
const char *szLocale = (const char *) __null,
bool bLoadDefault = 1,
bool bConvertEncoding = 0);
bool Init(int language = wxLANGUAGE_DEFAULT,
int flags = wxLOCALE_LOAD_DEFAULT | wxLOCALE_CONV_ENCODING);
~wxLocale();
static int GetSystemLanguage();
static wxFontEncoding GetSystemEncoding();
static wxString GetSystemEncodingName();
static wxString GetInfo(wxLocaleInfo index, wxLocaleCategory cat);
bool IsOk() const { return m_pszOldLocale != __null; }
const char *GetLocale() const { return m_strLocale; }
int GetLanguage() const { return m_language; }
wxString GetSysName() const;
wxString GetCanonicalName() const { return m_strShort; }
static void AddCatalogLookupPathPrefix(const wxString& prefix);
# 448 "../wxX11/include/wx/intl.h"
bool AddCatalog(const char *szDomain);
bool IsLoaded(const char *szDomain) const;
static void AddLanguage(const wxLanguageInfo& info);
# 468 "../wxX11/include/wx/intl.h"
const char *GetString(const char *szOrigString,
const char *szDomain = (const char *) __null) const;
const wxString& GetName() const { return m_strShort; }
static void CreateLanguagesDB();
static void DestroyLanguagesDB();
private:
wxMsgCatalog *FindCatalog(const char *szDomain) const;
static void InitLanguagesDB();
wxString m_strLocale,
m_strShort;
int m_language;
const char *m_pszOldLocale;
wxLocale *m_pOldLocale;
wxMsgCatalog *m_pMsgCat;
bool m_bConvertEncoding;
static wxLanguageInfoArray *ms_languagesDB;
};
extern wxLocale* wxGetLocale();
inline const char *wxGetTranslation(const char *sz)
{
wxLocale *pLoc = wxGetLocale();
if (pLoc)
return pLoc->GetString(sz);
else
return sz;
}
# 74 "../wxX11/src/common/datetime.cpp" 2
# 1 "../wxX11/include/wx/thread.h" 1
# 21 "../wxX11/include/wx/thread.h"
# 1 "lib/wx/include/motif-2.3/wx/setup.h" 1
# 22 "../wxX11/include/wx/thread.h" 2
#pragma interface "thread.h"
# 1 "../wxX11/include/wx/module.h" 1
# 16 "../wxX11/include/wx/module.h"
#pragma interface "module.h"
# 1 "../wxX11/include/wx/object.h" 1
# 17 "../wxX11/include/wx/object.h"
#pragma interface "object.h"
# 1 "../wxX11/include/wx/defs.h" 1
# 25 "../wxX11/include/wx/object.h" 2
# 1 "../wxX11/include/wx/memory.h" 1
# 16 "../wxX11/include/wx/memory.h"
#pragma interface "memory.h"
# 1 "../wxX11/include/wx/defs.h" 1
# 20 "../wxX11/include/wx/memory.h" 2
# 1 "../wxX11/include/wx/string.h" 1
# 21 "../wxX11/include/wx/memory.h" 2
# 341 "../wxX11/include/wx/memory.h"
inline void wxTrace(const char *) {}
inline void wxTraceLevel(int , const char *) {}
# 26 "../wxX11/include/wx/object.h" 2
class wxObject;
# 42 "../wxX11/include/wx/object.h"
class wxClassInfo;
class wxHashTable;
# 54 "../wxX11/include/wx/object.h"
typedef wxObject *(*wxObjectConstructorFn)(void);
class wxClassInfo
{
public:
wxClassInfo( const char *className,
const char *baseName1,
const char *baseName2,
int size,
wxObjectConstructorFn ctor )
: m_className(className)
, m_baseClassName1(baseName1)
, m_baseClassName2(baseName2)
, m_objectSize(size)
, m_objectConstructor(ctor)
, m_baseInfo1(0)
, m_baseInfo2(0)
, m_next(sm_first)
{ sm_first = this; }
wxObject *CreateObject() { return m_objectConstructor ? (*m_objectConstructor)() : 0; }
const char *GetClassName() const { return m_className; }
const char *GetBaseClassName1() const { return m_baseClassName1; }
const char *GetBaseClassName2() const { return m_baseClassName2; }
const wxClassInfo *GetBaseClass1() const { return m_baseInfo1; }
const wxClassInfo *GetBaseClass2() const { return m_baseInfo2; }
int GetSize() const { return m_objectSize; }
wxObjectConstructorFn GetConstructor() const { return m_objectConstructor; }
static const wxClassInfo *GetFirst() { return sm_first; }
const wxClassInfo *GetNext() const { return m_next; }
static wxClassInfo *FindClass(const char *className);
bool IsKindOf(const wxClassInfo *info) const
{
return info != 0 &&
( info == this ||
( m_baseInfo1 && m_baseInfo1->IsKindOf(info) ) ||
( m_baseInfo2 && m_baseInfo2->IsKindOf(info) ) );
}
static void InitializeClasses();
static void CleanUpClasses();
public:
const char *m_className;
const char *m_baseClassName1;
const char *m_baseClassName2;
int m_objectSize;
wxObjectConstructorFn m_objectConstructor;
const wxClassInfo *m_baseInfo1;
const wxClassInfo *m_baseInfo2;
static wxClassInfo *sm_first;
wxClassInfo *m_next;
static wxHashTable *sm_classTable;
private:
static wxClassInfo *GetBaseByName(const char *name);
};
wxObject *wxCreateDynamicObject(const char *name);
# 343 "../wxX11/include/wx/object.h"
class wxObjectRefData;
class wxObject
{
public: static wxClassInfo sm_classwxObject; virtual wxClassInfo *GetClassInfo() const { return &wxObject::sm_classwxObject; }
public:
wxObject() : m_refData(0) {}
virtual ~wxObject() { UnRef(); }
bool IsKindOf(wxClassInfo *info) const;
# 393 "../wxX11/include/wx/object.h"
wxObjectRefData *GetRefData() const { return m_refData; }
void SetRefData(wxObjectRefData *data) { m_refData = data; }
void Ref(const wxObject& clone);
void UnRef();
protected:
void AllocExclusive();
virtual wxObjectRefData *CreateRefData() const;
virtual wxObjectRefData *CloneRefData(const wxObjectRefData *data) const;
wxObjectRefData *m_refData;
};
class wxObjectRefData
{
friend class wxObject;
public:
wxObjectRefData() : m_count(1) {}
virtual ~wxObjectRefData() {}
inline int GetRefCount() const { return m_count; }
private:
int m_count;
};
inline wxObject *wxCheckDynamicCast(wxObject *obj, wxClassInfo *classInfo)
{
return obj && obj->GetClassInfo()->IsKindOf(classInfo) ? obj : 0;
}
# 20 "../wxX11/include/wx/module.h" 2
# 1 "../wxX11/include/wx/list.h" 1
# 29 "../wxX11/include/wx/list.h"
#pragma interface "list.h"
# 1 "../wxX11/include/wx/defs.h" 1
# 37 "../wxX11/include/wx/list.h" 2
# 1 "../wxX11/include/wx/object.h" 1
# 38 "../wxX11/include/wx/list.h" 2
# 1 "../wxX11/include/wx/string.h" 1
# 39 "../wxX11/include/wx/list.h" 2
extern char* copystring(const char *s);
class wxObjectListNode;
typedef wxObjectListNode wxNode;
enum wxKeyType
{
wxKEY_NONE,
wxKEY_INTEGER,
wxKEY_STRING
};
# 67 "../wxX11/include/wx/list.h"
extern "C"
{
typedef int (* wxSortCompareFunction)(const void *elem1, const void *elem2);
}
typedef int (* wxListIterateFunction)(void *current);
union wxListKeyValue
{
long integer;
char *string;
};
class wxListKey
{
public:
wxListKey()
{ m_keyType = wxKEY_NONE; }
wxListKey(long i)
{ m_keyType = wxKEY_INTEGER; m_key.integer = i; }
wxListKey(const char *s)
{ m_keyType = wxKEY_STRING; m_key.string = strdup(s); }
wxListKey(const wxString& s)
{ m_keyType = wxKEY_STRING; m_key.string = strdup(s.c_str()); }
wxKeyType GetKeyType() const { return m_keyType; }
const char *GetString() const
{ ; return m_key.string; }
long GetNumber() const
{ ; return m_key.integer; }
bool operator==(wxListKeyValue value) const ;
~wxListKey()
{
if ( m_keyType == wxKEY_STRING )
free(m_key.string);
}
private:
wxKeyType m_keyType;
wxListKeyValue m_key;
};
extern wxListKey wxDefaultListKey;
class wxListBase;
class wxNodeBase
{
friend class wxListBase;
public:
wxNodeBase(wxListBase *list = (wxListBase *)__null,
wxNodeBase *previous = (wxNodeBase *)__null,
wxNodeBase *next = (wxNodeBase *)__null,
void *data = __null,
const wxListKey& key = wxDefaultListKey);
virtual ~wxNodeBase();
const char *GetKeyString() const { return m_key.string; }
long GetKeyInteger() const { return m_key.integer; }
void SetKeyString(char* s) { m_key.string = s; }
void SetKeyInteger(long i) { m_key.integer = i; }
wxNode *Next() const { return (wxNode *)GetNext(); }
wxNode *Previous() const { return (wxNode *)GetPrevious(); }
wxObject *Data() const { return (wxObject *)GetData(); }
protected:
wxNodeBase *GetNext() const { return m_next; }
wxNodeBase *GetPrevious() const { return m_previous; }
void *GetData() const { return m_data; }
void SetData(void *data) { m_data = data; }
int IndexOf() const;
virtual void DeleteData() { }
private:
wxListKeyValue m_key;
void *m_data;
wxNodeBase *m_next,
*m_previous;
wxListBase *m_list;
};
class wxListBase : public wxObject
{
friend class wxNodeBase;
friend class wxHashTableBase;
private:
void Init(wxKeyType keyType = wxKEY_NONE);
public:
wxListBase(wxKeyType keyType = wxKEY_NONE) { Init(keyType); }
virtual ~wxListBase();
size_t GetCount() const { return m_count; }
void Clear();
void DeleteContents(bool destroy) { m_destroy = destroy; }
bool GetDeleteContents() const
{ return m_destroy; }
wxKeyType GetKeyType() const
{ return m_keyType; }
void SetKeyType(wxKeyType keyType)
{ ; m_keyType = keyType; }
int Number() const { return GetCount(); }
wxNode *First() const { return (wxNode *)GetFirst(); }
wxNode *Last() const { return (wxNode *)GetLast(); }
wxNode *Nth(size_t index) const { return (wxNode *)Item(index); }
protected:
virtual wxNodeBase *CreateNode(wxNodeBase *prev, wxNodeBase *next,
void *data,
const wxListKey& key = wxDefaultListKey) = 0;
# 252 "../wxX11/include/wx/list.h"
wxListBase(size_t count, void *elements[]);
wxListBase(void *object, ... );
protected:
wxListBase(const wxListBase& list) : wxObject()
{ Init(); DoCopy(list); }
wxListBase& operator=(const wxListBase& list)
{ Clear(); DoCopy(list); return *this; }
wxNodeBase *GetFirst() const { return m_nodeFirst; }
wxNodeBase *GetLast() const { return m_nodeLast; }
wxNodeBase *Item(size_t index) const;
void *operator[](size_t index) const
{ wxNodeBase *node = Item(index); return node ? node->GetData() : (wxNodeBase*)__null; }
wxNodeBase *Prepend(void *object)
{ return (wxNodeBase *)wxListBase::Insert(object); }
wxNodeBase *Append(void *object);
wxNodeBase *Insert(void *object) { return Insert( (wxNodeBase*)__null, object); }
wxNodeBase *Insert(size_t pos, void *object)
{ return pos == GetCount() ? Append(object)
: Insert(Item(pos), object); }
wxNodeBase *Insert(wxNodeBase *prev, void *object);
wxNodeBase *Append(long key, void *object);
wxNodeBase *Append(const char *key, void *object);
wxNodeBase *DetachNode(wxNodeBase *node);
bool DeleteNode(wxNodeBase *node);
bool DeleteObject(void *object);
wxNodeBase *Find(void *object) const;
wxNodeBase *Find(const wxListKey& key) const;
int IndexOf( void *object ) const;
void Sort(const wxSortCompareFunction compfunc);
void *FirstThat(wxListIterateFunction func);
void ForEach(wxListIterateFunction func);
void *LastThat(wxListIterateFunction func);
private:
void DoCopy(const wxListBase& list);
wxNodeBase *AppendCommon(wxNodeBase *node);
void DoDeleteNode(wxNodeBase *node);
size_t m_count;
bool m_destroy;
wxNodeBase *m_nodeFirst,
*m_nodeLast;
wxKeyType m_keyType;
};
# 499 "../wxX11/include/wx/list.h"
typedef int (*wxSortFuncFor_wxObjectList)(const wxObject **, const wxObject **); class wxObjectListNode : public wxNodeBase { public: wxObjectListNode(wxListBase *list = (wxListBase *)__null, wxObjectListNode *previous = (wxObjectListNode *)__null, wxObjectListNode *next = (wxObjectListNode *)__null, wxObject *data = (wxObject *)__null, const wxListKey& key = wxDefaultListKey) : wxNodeBase(list, previous, next, data, key) { } wxObjectListNode *GetNext() const { return (wxObjectListNode *)wxNodeBase::GetNext(); } wxObjectListNode *GetPrevious() const { return (wxObjectListNode *)wxNodeBase::GetPrevious(); } wxObject *GetData() const { return (wxObject *)wxNodeBase::GetData(); } void SetData(wxObject *data) { wxNodeBase::SetData(data); } virtual void DeleteData(); }; class wxObjectList : public wxListBase { public: typedef wxObjectListNode Node; wxObjectList(wxKeyType keyType = wxKEY_NONE) : wxListBase(keyType) { } wxObjectList(size_t count, wxObject *elements[]) : wxListBase(count, (void **)elements) { } wxObjectList& operator=(const wxObjectList& list) { return (wxObjectList&)wxListBase::operator=(list); } wxObjectListNode *GetFirst() const { return (wxObjectListNode *)wxListBase::GetFirst(); } wxObjectListNode *GetLast() const { return (wxObjectListNode *)wxListBase::GetLast(); } wxObjectListNode *Item(size_t index) const { return (wxObjectListNode *)wxListBase::Item(index); } wxObject *operator[](size_t index) const { wxObjectListNode *node = Item(index); return node ? (wxObject*)(node->GetData()) : (wxObject*)__null; } wxObjectListNode *Append(wxObject *object) { return (wxObjectListNode *)wxListBase::Append(object); } wxObjectListNode *Insert(wxObject *object) { return (wxObjectListNode *)Insert((wxObjectListNode*)__null, object); } wxObjectListNode *Insert(size_t pos, wxObject *object) { return (wxObjectListNode *)wxListBase::Insert(pos, object); } wxObjectListNode *Insert(wxObjectListNode *prev, wxObject *object) { return (wxObjectListNode *)wxListBase::Insert(prev, object); } wxObjectListNode *Append(long key, void *object) { return (wxObjectListNode *)wxListBase::Append(key, object); } wxObjectListNode *Append(const char *key, void *object) { return (wxObjectListNode *)wxListBase::Append(key, object); } wxObjectListNode *DetachNode(wxObjectListNode *node) { return (wxObjectListNode *)wxListBase::DetachNode(node); } bool DeleteNode(wxObjectListNode *node) { return wxListBase::DeleteNode(node); } bool DeleteObject(wxObject *object) { return wxListBase::DeleteObject(object); } wxObjectListNode *Find(wxObject *object) const { return (wxObjectListNode *)wxListBase::Find(object); } virtual wxObjectListNode *Find(const wxListKey& key) const { return (wxObjectListNode *)wxListBase::Find(key); } int IndexOf(wxObject *object) const { return wxListBase::IndexOf(object); } void Sort(wxSortFuncFor_wxObjectList func) { wxListBase::Sort((wxSortCompareFunction)func); } protected: virtual wxNodeBase *CreateNode(wxNodeBase *prev, wxNodeBase *next, void *data, const wxListKey& key = wxDefaultListKey) { return new wxObjectListNode(this, (wxObjectListNode *)prev, (wxObjectListNode *)next, (wxObject *)data, key); } };
class wxList : public wxObjectList
{
public:
wxList(int key_type = wxKEY_NONE) : wxObjectList((wxKeyType)key_type) { }
~wxList() { }
wxList& operator=(const wxList& list)
{ return (wxList&)wxListBase::operator=(list); }
void Sort(wxSortCompareFunction compfunc) { wxListBase::Sort(compfunc); }
wxNode *Member(wxObject *object) const { return (wxNode *)Find(object); }
private:
public: static wxClassInfo sm_classwxList; virtual wxClassInfo *GetClassInfo() const { return &wxList::sm_classwxList; }
};
typedef int (*wxSortFuncFor_wxStringListBase)(const char **, const char **); class wxStringListNode : public wxNodeBase { public: wxStringListNode(wxListBase *list = (wxListBase *)__null, wxStringListNode *previous = (wxStringListNode *)__null, wxStringListNode *next = (wxStringListNode *)__null, char *data = (char *)__null, const wxListKey& key = wxDefaultListKey) : wxNodeBase(list, previous, next, data, key) { } wxStringListNode *GetNext() const { return (wxStringListNode *)wxNodeBase::GetNext(); } wxStringListNode *GetPrevious() const { return (wxStringListNode *)wxNodeBase::GetPrevious(); } char *GetData() const { return (char *)wxNodeBase::GetData(); } void SetData(char *data) { wxNodeBase::SetData(data); } virtual void DeleteData(); }; class wxStringListBase : public wxListBase { public: typedef wxStringListNode Node; wxStringListBase(wxKeyType keyType = wxKEY_NONE) : wxListBase(keyType) { } wxStringListBase(size_t count, char *elements[]) : wxListBase(count, (void **)elements) { } wxStringListBase& operator=(const wxStringListBase& list) { return (wxStringListBase&)wxListBase::operator=(list); } wxStringListNode *GetFirst() const { return (wxStringListNode *)wxListBase::GetFirst(); } wxStringListNode *GetLast() const { return (wxStringListNode *)wxListBase::GetLast(); } wxStringListNode *Item(size_t index) const { return (wxStringListNode *)wxListBase::Item(index); } char *operator[](size_t index) const { wxStringListNode *node = Item(index); return node ? (char*)(node->GetData()) : (char*)__null; } wxStringListNode *Append(char *object) { return (wxStringListNode *)wxListBase::Append(object); } wxStringListNode *Insert(char *object) { return (wxStringListNode *)Insert((wxStringListNode*)__null, object); } wxStringListNode *Insert(size_t pos, char *object) { return (wxStringListNode *)wxListBase::Insert(pos, object); } wxStringListNode *Insert(wxStringListNode *prev, char *object) { return (wxStringListNode *)wxListBase::Insert(prev, object); } wxStringListNode *Append(long key, void *object) { return (wxStringListNode *)wxListBase::Append(key, object); } wxStringListNode *Append(const char *key, void *object) { return (wxStringListNode *)wxListBase::Append(key, object); } wxStringListNode *DetachNode(wxStringListNode *node) { return (wxStringListNode *)wxListBase::DetachNode(node); } bool DeleteNode(wxStringListNode *node) { return wxListBase::DeleteNode(node); } bool DeleteObject(char *object) { return wxListBase::DeleteObject(object); } wxStringListNode *Find(char *object) const { return (wxStringListNode *)wxListBase::Find(object); } virtual wxStringListNode *Find(const wxListKey& key) const { return (wxStringListNode *)wxListBase::Find(key); } int IndexOf(char *object) const { return wxListBase::IndexOf(object); } void Sort(wxSortFuncFor_wxStringListBase func) { wxListBase::Sort((wxSortCompareFunction)func); } protected: virtual wxNodeBase *CreateNode(wxNodeBase *prev, wxNodeBase *next, void *data, const wxListKey& key = wxDefaultListKey) { return new wxStringListNode(this, (wxStringListNode *)prev, (wxStringListNode *)next, (char *)data, key); } };
class wxStringList : public wxStringListBase
{
public:
wxStringList() { DeleteContents(1); }
wxStringList(const char *first ...);
wxStringList(const wxStringList& other) : wxStringListBase() { DeleteContents(1); DoCopy(other); }
wxStringList& operator=(const wxStringList& other)
{ Clear(); DoCopy(other); return *this; }
wxNode *Add(const char *s)
{ return (wxNode *)wxStringListBase::Append(copystring(s)); }
wxNode *Prepend(const char *s)
{ return (wxNode *)wxStringListBase::Insert(copystring(s)); }
bool Delete(const char *s);
char **ListToArray(bool new_copies = 0) const;
bool Member(const char *s) const;
void Sort();
private:
void DoCopy(const wxStringList&);
public: static wxClassInfo sm_classwxStringList; virtual wxClassInfo *GetClassInfo() const { return &wxStringList::sm_classwxStringList; }
};
# 21 "../wxX11/include/wx/module.h" 2
class wxModule;
typedef wxModule _WX_LIST_ITEM_TYPE_wxModuleList; typedef int (*wxSortFuncFor_wxModuleList)(const wxModule **, const wxModule **); class wxwxModuleListNode : public wxNodeBase { public: wxwxModuleListNode(wxListBase *list = (wxListBase *)__null, wxwxModuleListNode *previous = (wxwxModuleListNode *)__null, wxwxModuleListNode *next = (wxwxModuleListNode *)__null, wxModule *data = (wxModule *)__null, const wxListKey& key = wxDefaultListKey) : wxNodeBase(list, previous, next, data, key) { } wxwxModuleListNode *GetNext() const { return (wxwxModuleListNode *)wxNodeBase::GetNext(); } wxwxModuleListNode *GetPrevious() const { return (wxwxModuleListNode *)wxNodeBase::GetPrevious(); } wxModule *GetData() const { return (wxModule *)wxNodeBase::GetData(); } void SetData(wxModule *data) { wxNodeBase::SetData(data); } virtual void DeleteData(); }; class wxModuleList : public wxListBase { public: typedef wxwxModuleListNode Node; wxModuleList(wxKeyType keyType = wxKEY_NONE) : wxListBase(keyType) { } wxModuleList(size_t count, wxModule *elements[]) : wxListBase(count, (void **)elements) { } wxModuleList& operator=(const wxModuleList& list) { return (wxModuleList&)wxListBase::operator=(list); } wxwxModuleListNode *GetFirst() const { return (wxwxModuleListNode *)wxListBase::GetFirst(); } wxwxModuleListNode *GetLast() const { return (wxwxModuleListNode *)wxListBase::GetLast(); } wxwxModuleListNode *Item(size_t index) const { return (wxwxModuleListNode *)wxListBase::Item(index); } wxModule *operator[](size_t index) const { wxwxModuleListNode *node = Item(index); return node ? (wxModule*)(node->GetData()) : (wxModule*)__null; } wxwxModuleListNode *Append(wxModule *object) { return (wxwxModuleListNode *)wxListBase::Append(object); } wxwxModuleListNode *Insert(wxModule *object) { return (wxwxModuleListNode *)Insert((wxwxModuleListNode*)__null, object); } wxwxModuleListNode *Insert(size_t pos, wxModule *object) { return (wxwxModuleListNode *)wxListBase::Insert(pos, object); } wxwxModuleListNode *Insert(wxwxModuleListNode *prev, wxModule *object) { return (wxwxModuleListNode *)wxListBase::Insert(prev, object); } wxwxModuleListNode *Append(long key, void *object) { return (wxwxModuleListNode *)wxListBase::Append(key, object); } wxwxModuleListNode *Append(const char *key, void *object) { return (wxwxModuleListNode *)wxListBase::Append(key, object); } wxwxModuleListNode *DetachNode(wxwxModuleListNode *node) { return (wxwxModuleListNode *)wxListBase::DetachNode(node); } bool DeleteNode(wxwxModuleListNode *node) { return wxListBase::DeleteNode(node); } bool DeleteObject(wxModule *object) { return wxListBase::DeleteObject(object); } wxwxModuleListNode *Find(wxModule *object) const { return (wxwxModuleListNode *)wxListBase::Find(object); } virtual wxwxModuleListNode *Find(const wxListKey& key) const { return (wxwxModuleListNode *)wxListBase::Find(key); } int IndexOf(wxModule *object) const { return wxListBase::IndexOf(object); } void Sort(wxSortFuncFor_wxModuleList func) { wxListBase::Sort((wxSortCompareFunction)func); } protected: virtual wxNodeBase *CreateNode(wxNodeBase *prev, wxNodeBase *next, void *data, const wxListKey& key = wxDefaultListKey) { return new wxwxModuleListNode(this, (wxwxModuleListNode *)prev, (wxwxModuleListNode *)next, (wxModule *)data, key); } };
class wxModule : public wxObject
{
public:
wxModule() {}
virtual ~wxModule() {}
bool Init() { return OnInit(); }
void Exit() { OnExit(); }
virtual bool OnInit() = 0;
virtual void OnExit() = 0;
static void RegisterModule(wxModule* module);
static void RegisterModules();
static bool InitializeModules();
static void CleanUpModules();
static void UnregisterModule(wxModule* module);
protected:
static wxModuleList m_modules;
public: static wxClassInfo sm_classwxModule; virtual wxClassInfo *GetClassInfo() const { return &wxModule::sm_classwxModule; }
};
# 36 "../wxX11/include/wx/thread.h" 2
enum wxMutexError
{
wxMUTEX_NO_ERROR = 0,
wxMUTEX_DEAD_LOCK,
wxMUTEX_BUSY,
wxMUTEX_UNLOCKED,
wxMUTEX_MISC_ERROR
};
enum wxThreadError
{
wxTHREAD_NO_ERROR = 0,
wxTHREAD_NO_RESOURCE,
wxTHREAD_RUNNING,
wxTHREAD_NOT_RUNNING,
wxTHREAD_KILLED,
wxTHREAD_MISC_ERROR
};
enum wxThreadKind
{
wxTHREAD_DETACHED,
wxTHREAD_JOINABLE
};
enum
{
WXTHREAD_MIN_PRIORITY = 0u,
WXTHREAD_DEFAULT_PRIORITY = 50u,
WXTHREAD_MAX_PRIORITY = 100u
};
# 83 "../wxX11/include/wx/thread.h"
class wxMutexInternal;
class wxMutex
{
public:
wxMutex();
~wxMutex();
wxMutexError Lock();
wxMutexError TryLock();
wxMutexError Unlock();
bool IsLocked() const { return (m_locked > 0); }
protected:
wxMutex(const wxMutex&);
wxMutex& operator=(const wxMutex&);
int m_locked;
wxMutexInternal *m_internal;
};
class wxMutexLocker
{
public:
wxMutexLocker(wxMutex& mutex) : m_mutex(mutex)
{ m_isOk = m_mutex.Lock() == wxMUTEX_NO_ERROR; }
bool IsOk() const
{ return m_isOk; }
~wxMutexLocker()
{ if ( IsOk() ) m_mutex.Unlock(); }
private:
wxMutexLocker(const wxMutexLocker&);
wxMutexLocker& operator=(const wxMutexLocker&);
bool m_isOk;
wxMutex& m_mutex;
};
# 147 "../wxX11/include/wx/thread.h"
class wxCriticalSectionInternal;
# 163 "../wxX11/include/wx/thread.h"
class wxCriticalSection
{
public:
inline wxCriticalSection();
inline ~wxCriticalSection();
inline void Enter();
inline void Leave();
private:
wxCriticalSection(const wxCriticalSection&);
wxCriticalSection& operator=(const wxCriticalSection&);
wxMutex m_mutex;
# 192 "../wxX11/include/wx/thread.h"
};
class wxCriticalSectionLocker
{
public:
inline wxCriticalSectionLocker(wxCriticalSection& critsect);
inline ~wxCriticalSectionLocker();
private:
wxCriticalSectionLocker(const wxCriticalSectionLocker&);
wxCriticalSectionLocker& operator=(const wxCriticalSectionLocker&);
wxCriticalSection& m_critsect;
};
class wxConditionInternal;
class wxCondition
{
public:
wxCondition();
~wxCondition();
void Wait();
bool Wait(unsigned long sec, unsigned long nsec);
void Signal();
void Broadcast();
private:
wxConditionInternal *m_internal;
};
# 264 "../wxX11/include/wx/thread.h"
typedef unsigned long wxThreadIdType;
class wxThreadInternal;
class wxThread
{
public:
typedef void *ExitCode;
static wxThread *This();
static bool IsMain();
static void Yield();
static void Sleep(unsigned long milliseconds);
static int GetCPUCount();
static wxThreadIdType GetCurrentId();
# 311 "../wxX11/include/wx/thread.h"
static bool SetConcurrency(size_t level);
wxThread(wxThreadKind kind = wxTHREAD_DETACHED);
# 325 "../wxX11/include/wx/thread.h"
wxThreadError Create(unsigned int stackSize = 0);
wxThreadError Run();
# 342 "../wxX11/include/wx/thread.h"
wxThreadError Delete(ExitCode *rc = (ExitCode *)__null);
ExitCode Wait();
# 358 "../wxX11/include/wx/thread.h"
wxThreadError Kill();
wxThreadError Pause();
wxThreadError Resume();
void SetPriority(unsigned int prio);
unsigned int GetPriority() const;
bool IsAlive() const;
bool IsRunning() const;
bool IsPaused() const;
bool IsDetached() const { return m_isDetached; }
wxThreadIdType GetId() const;
virtual void OnExit() { }
virtual ~wxThread();
protected:
bool TestDestroy();
void Exit(ExitCode exitcode = 0);
virtual void *Entry() = 0;
private:
wxThread(const wxThread&);
wxThread& operator=(const wxThread&);
friend class wxThreadInternal;
wxThreadInternal *m_internal;
wxCriticalSection m_critsect;
bool m_isDetached;
};
void wxMutexGuiEnter();
void wxMutexGuiLeave();
# 463 "../wxX11/include/wx/thread.h"
class wxMutexGuiLocker
{
public:
wxMutexGuiLocker() { wxMutexGuiEnter(); }
~wxMutexGuiLocker() { wxMutexGuiLeave(); }
};
# 525 "../wxX11/include/wx/thread.h"
inline wxCriticalSection::wxCriticalSection() { }
inline wxCriticalSection::~wxCriticalSection() { }
inline void wxCriticalSection::Enter() { (void)m_mutex.Lock(); }
inline void wxCriticalSection::Leave() { (void)m_mutex.Unlock(); }
inline
wxCriticalSectionLocker:: wxCriticalSectionLocker(wxCriticalSection& cs)
: m_critsect(cs) { m_critsect.Enter(); }
inline
wxCriticalSectionLocker::~wxCriticalSectionLocker() { m_critsect.Leave(); }
# 75 "../wxX11/src/common/datetime.cpp" 2
# 1 "../wxX11/include/wx/tokenzr.h" 1
# 16 "../wxX11/include/wx/tokenzr.h"
#pragma interface "tokenzr.h"
# 1 "../wxX11/include/wx/object.h" 1
# 20 "../wxX11/include/wx/tokenzr.h" 2
# 1 "../wxX11/include/wx/string.h" 1
# 21 "../wxX11/include/wx/tokenzr.h" 2
# 30 "../wxX11/include/wx/tokenzr.h"
enum wxStringTokenizerMode
{
wxTOKEN_INVALID = -1,
wxTOKEN_DEFAULT,
wxTOKEN_RET_EMPTY,
wxTOKEN_RET_EMPTY_ALL,
wxTOKEN_RET_DELIMS,
wxTOKEN_STRTOK
};
class wxStringTokenizer : public wxObject
{
public:
wxStringTokenizer() { m_mode = wxTOKEN_INVALID; }
wxStringTokenizer(const wxString& str,
const wxString& delims = (" \t\r\n"),
wxStringTokenizerMode mode = wxTOKEN_DEFAULT);
void SetString(const wxString& str,
const wxString& delims = (" \t\r\n"),
wxStringTokenizerMode mode = wxTOKEN_DEFAULT);
void Reinit(const wxString& str);
size_t CountTokens() const;
bool HasMoreTokens() const;
wxString GetNextToken();
wxString GetString() const { return m_string; }
size_t GetPosition() const { return m_pos; }
wxStringTokenizerMode GetMode() const { return m_mode; }
wxString NextToken() { return GetNextToken(); }
void SetString(const wxString& to_tokenize,
const wxString& delims,
bool )
{
SetString(to_tokenize, delims, wxTOKEN_RET_DELIMS);
}
wxStringTokenizer(const wxString& to_tokenize,
const wxString& delims,
bool ret_delim)
{
SetString(to_tokenize, delims, ret_delim);
}
protected:
bool IsOk() const { return m_mode != wxTOKEN_INVALID; }
wxString m_string,
m_delims;
size_t m_pos;
wxStringTokenizerMode m_mode;
bool m_hasMore;
};
wxArrayString
wxStringTokenize(const wxString& str,
const wxString& delims = (" \t\r\n"),
wxStringTokenizerMode mode = wxTOKEN_DEFAULT);
# 76 "../wxX11/src/common/datetime.cpp" 2
# 1 "../wxX11/include/wx/module.h" 1
# 77 "../wxX11/src/common/datetime.cpp" 2
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/ctype.h" 1 3 4
# 81 "../wxX11/src/common/datetime.cpp" 2
# 1 "../wxX11/include/wx/datetime.h" 1
# 17 "../wxX11/include/wx/datetime.h"
#pragma interface "datetime.h"
# 1 "/usr/include/time.h" 1 3 4
# 23 "../wxX11/include/wx/datetime.h" 2
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/limits.h" 1 3 4
# 24 "../wxX11/include/wx/datetime.h" 2
# 1 "../wxX11/include/wx/longlong.h" 1
# 17 "../wxX11/include/wx/longlong.h"
#pragma interface "longlong.h"
# 1 "../wxX11/include/wx/defs.h" 1
# 21 "../wxX11/include/wx/longlong.h" 2
# 1 "../wxX11/include/wx/string.h" 1
# 22 "../wxX11/include/wx/longlong.h" 2
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/limits.h" 1 3 4
# 24 "../wxX11/include/wx/longlong.h" 2
# 117 "../wxX11/include/wx/longlong.h"
class wxLongLongNative;
class wxULongLongNative;
typedef wxLongLongNative wxLongLong;
typedef wxULongLongNative wxULongLong;
# 131 "../wxX11/include/wx/longlong.h"
# 1 "../wxX11/include/wx/ioswrap.h" 1
# 132 "../wxX11/include/wx/longlong.h" 2
class wxLongLongNative
{
public:
wxLongLongNative() { m_ll = 0; }
wxLongLongNative(long long ll) { m_ll = ll; }
wxLongLongNative(long hi, unsigned long lo)
{
m_ll = ((long long) hi) << 32;
m_ll |= (long long) lo;
}
wxLongLongNative& operator=(long long ll)
{ m_ll = ll; return *this; }
wxLongLongNative& Assign(double d)
{ m_ll = (long long)d; return *this; }
long GetHi() const
{ return (long)(m_ll >> 32); }
unsigned long GetLo() const
{ return (unsigned long)m_ll; }
wxLongLongNative Abs() const { return wxLongLongNative(*this).Abs(); }
wxLongLongNative& Abs() { if ( m_ll < 0 ) m_ll = -m_ll; return *this; }
long long GetValue() const { return m_ll; }
long ToLong() const
{
;
return (long)m_ll;
}
wxLongLongNative operator+(const wxLongLongNative& ll) const
{ return wxLongLongNative(m_ll + ll.m_ll); }
wxLongLongNative& operator+=(const wxLongLongNative& ll)
{ m_ll += ll.m_ll; return *this; }
wxLongLongNative operator+(const long long ll) const
{ return wxLongLongNative(m_ll + ll); }
wxLongLongNative& operator+=(const long long ll)
{ m_ll += ll; return *this; }
wxLongLongNative& operator++()
{ m_ll++; return *this; }
wxLongLongNative& operator++(int)
{ m_ll++; return *this; }
wxLongLongNative operator-() const
{ return wxLongLongNative(-m_ll); }
wxLongLongNative& Negate() { m_ll = -m_ll; return *this; }
wxLongLongNative operator-(const wxLongLongNative& ll) const
{ return wxLongLongNative(m_ll - ll.m_ll); }
wxLongLongNative& operator-=(const wxLongLongNative& ll)
{ m_ll -= ll.m_ll; return *this; }
wxLongLongNative operator-(const long long ll) const
{ return wxLongLongNative(m_ll - ll); }
wxLongLongNative& operator-=(const long long ll)
{ m_ll -= ll; return *this; }
wxLongLongNative& operator--()
{ m_ll--; return *this; }
wxLongLongNative& operator--(int)
{ m_ll--; return *this; }
wxLongLongNative operator<<(int shift) const
{ return wxLongLongNative(m_ll << shift);; }
wxLongLongNative& operator<<=(int shift)
{ m_ll <<= shift; return *this; }
wxLongLongNative operator>>(int shift) const
{ return wxLongLongNative(m_ll >> shift);; }
wxLongLongNative& operator>>=(int shift)
{ m_ll >>= shift; return *this; }
wxLongLongNative operator&(const wxLongLongNative& ll) const
{ return wxLongLongNative(m_ll & ll.m_ll); }
wxLongLongNative& operator&=(const wxLongLongNative& ll)
{ m_ll &= ll.m_ll; return *this; }
wxLongLongNative operator|(const wxLongLongNative& ll) const
{ return wxLongLongNative(m_ll | ll.m_ll); }
wxLongLongNative& operator|=(const wxLongLongNative& ll)
{ m_ll |= ll.m_ll; return *this; }
wxLongLongNative operator^(const wxLongLongNative& ll) const
{ return wxLongLongNative(m_ll ^ ll.m_ll); }
wxLongLongNative& operator^=(const wxLongLongNative& ll)
{ m_ll ^= ll.m_ll; return *this; }
wxLongLongNative operator*(const wxLongLongNative& ll) const
{ return wxLongLongNative(m_ll * ll.m_ll); }
wxLongLongNative operator*(long l) const
{ return wxLongLongNative(m_ll * l); }
wxLongLongNative& operator*=(const wxLongLongNative& ll)
{ m_ll *= ll.m_ll; return *this; }
wxLongLongNative& operator*=(long l)
{ m_ll *= l; return *this; }
wxLongLongNative operator/(const wxLongLongNative& ll) const
{ return wxLongLongNative(m_ll / ll.m_ll); }
wxLongLongNative operator/(long l) const
{ return wxLongLongNative(m_ll / l); }
wxLongLongNative& operator/=(const wxLongLongNative& ll)
{ m_ll /= ll.m_ll; return *this; }
wxLongLongNative& operator/=(long l)
{ m_ll /= l; return *this; }
wxLongLongNative operator%(const wxLongLongNative& ll) const
{ return wxLongLongNative(m_ll % ll.m_ll); }
wxLongLongNative operator%(long l) const
{ return wxLongLongNative(m_ll % l); }
bool operator==(const wxLongLongNative& ll) const
{ return m_ll == ll.m_ll; }
bool operator==(long l) const
{ return m_ll == l; }
bool operator!=(const wxLongLongNative& ll) const
{ return m_ll != ll.m_ll; }
bool operator!=(long l) const
{ return m_ll != l; }
bool operator<(const wxLongLongNative& ll) const
{ return m_ll < ll.m_ll; }
bool operator<(long l) const
{ return m_ll < l; }
bool operator>(const wxLongLongNative& ll) const
{ return m_ll > ll.m_ll; }
bool operator>(long l) const
{ return m_ll > l; }
bool operator<=(const wxLongLongNative& ll) const
{ return m_ll <= ll.m_ll; }
bool operator<=(long l) const
{ return m_ll <= l; }
bool operator>=(const wxLongLongNative& ll) const
{ return m_ll >= ll.m_ll; }
bool operator>=(long l) const
{ return m_ll >= l; }
wxString ToString() const;
void *asArray() const;
private:
long long m_ll;
};
class wxULongLongNative
{
public:
wxULongLongNative() { m_ll = 0; }
wxULongLongNative(unsigned long long ll) { m_ll = ll; }
wxULongLongNative(unsigned long hi, unsigned long lo)
{
m_ll = ((unsigned long long) hi) << 32;
m_ll |= (unsigned long long) lo;
}
wxULongLongNative& operator=(unsigned long long ll)
{ m_ll = ll; return *this; }
unsigned long GetHi() const
{ return (unsigned long)(m_ll >> 32); }
unsigned long GetLo() const
{ return (unsigned long)m_ll; }
unsigned long long GetValue() const { return m_ll; }
unsigned long ToULong() const
{
;
return (unsigned long)m_ll;
}
wxULongLongNative operator+(const wxULongLongNative& ll) const
{ return wxULongLongNative(m_ll + ll.m_ll); }
wxULongLongNative& operator+=(const wxULongLongNative& ll)
{ m_ll += ll.m_ll; return *this; }
wxULongLongNative operator+(const unsigned long long ll) const
{ return wxULongLongNative(m_ll + ll); }
wxULongLongNative& operator+=(const unsigned long long ll)
{ m_ll += ll; return *this; }
wxULongLongNative& operator++()
{ m_ll++; return *this; }
wxULongLongNative& operator++(int)
{ m_ll++; return *this; }
wxULongLongNative operator-(const wxULongLongNative& ll) const
{ return wxULongLongNative(m_ll - ll.m_ll); }
wxULongLongNative& operator-=(const wxULongLongNative& ll)
{ m_ll -= ll.m_ll; return *this; }
wxULongLongNative operator-(const unsigned long long ll) const
{ return wxULongLongNative(m_ll - ll); }
wxULongLongNative& operator-=(const unsigned long long ll)
{ m_ll -= ll; return *this; }
wxULongLongNative& operator--()
{ m_ll--; return *this; }
wxULongLongNative& operator--(int)
{ m_ll--; return *this; }
wxULongLongNative operator<<(int shift) const
{ return wxULongLongNative(m_ll << shift);; }
wxULongLongNative& operator<<=(int shift)
{ m_ll <<= shift; return *this; }
wxULongLongNative operator>>(int shift) const
{ return wxULongLongNative(m_ll >> shift);; }
wxULongLongNative& operator>>=(int shift)
{ m_ll >>= shift; return *this; }
wxULongLongNative operator&(const wxULongLongNative& ll) const
{ return wxULongLongNative(m_ll & ll.m_ll); }
wxULongLongNative& operator&=(const wxULongLongNative& ll)
{ m_ll &= ll.m_ll; return *this; }
wxULongLongNative operator|(const wxULongLongNative& ll) const
{ return wxULongLongNative(m_ll | ll.m_ll); }
wxULongLongNative& operator|=(const wxULongLongNative& ll)
{ m_ll |= ll.m_ll; return *this; }
wxULongLongNative operator^(const wxULongLongNative& ll) const
{ return wxULongLongNative(m_ll ^ ll.m_ll); }
wxULongLongNative& operator^=(const wxULongLongNative& ll)
{ m_ll ^= ll.m_ll; return *this; }
wxULongLongNative operator*(const wxULongLongNative& ll) const
{ return wxULongLongNative(m_ll * ll.m_ll); }
wxULongLongNative operator*(unsigned long l) const
{ return wxULongLongNative(m_ll * l); }
wxULongLongNative& operator*=(const wxULongLongNative& ll)
{ m_ll *= ll.m_ll; return *this; }
wxULongLongNative& operator*=(unsigned long l)
{ m_ll *= l; return *this; }
wxULongLongNative operator/(const wxULongLongNative& ll) const
{ return wxULongLongNative(m_ll / ll.m_ll); }
wxULongLongNative operator/(unsigned long l) const
{ return wxULongLongNative(m_ll / l); }
wxULongLongNative& operator/=(const wxULongLongNative& ll)
{ m_ll /= ll.m_ll; return *this; }
wxULongLongNative& operator/=(unsigned long l)
{ m_ll /= l; return *this; }
wxULongLongNative operator%(const wxULongLongNative& ll) const
{ return wxULongLongNative(m_ll % ll.m_ll); }
wxULongLongNative operator%(unsigned long l) const
{ return wxULongLongNative(m_ll % l); }
bool operator==(const wxULongLongNative& ll) const
{ return m_ll == ll.m_ll; }
bool operator==(unsigned long l) const
{ return m_ll == l; }
bool operator!=(const wxULongLongNative& ll) const
{ return m_ll != ll.m_ll; }
bool operator!=(unsigned long l) const
{ return m_ll != l; }
bool operator<(const wxULongLongNative& ll) const
{ return m_ll < ll.m_ll; }
bool operator<(unsigned long l) const
{ return m_ll < l; }
bool operator>(const wxULongLongNative& ll) const
{ return m_ll > ll.m_ll; }
bool operator>(unsigned long l) const
{ return m_ll > l; }
bool operator<=(const wxULongLongNative& ll) const
{ return m_ll <= ll.m_ll; }
bool operator<=(unsigned long l) const
{ return m_ll <= l; }
bool operator>=(const wxULongLongNative& ll) const
{ return m_ll >= ll.m_ll; }
bool operator>=(unsigned long l) const
{ return m_ll >= l; }
wxString ToString() const;
void *asArray() const;
private:
unsigned long long m_ll;
};
# 899 "../wxX11/include/wx/longlong.h"
inline bool operator<(long l, const wxLongLong& ll) { return ll > l; }
inline bool operator>(long l, const wxLongLong& ll) { return ll < l; }
inline bool operator<=(long l, const wxLongLong& ll) { return ll >= l; }
inline bool operator>=(long l, const wxLongLong& ll) { return ll <= l; }
inline bool operator==(long l, const wxLongLong& ll) { return ll == l; }
inline bool operator!=(long l, const wxLongLong& ll) { return ll != l; }
inline wxLongLong operator+(long l, const wxLongLong& ll) { return ll + l; }
inline wxLongLong operator-(long l, const wxLongLong& ll)
{
return wxLongLong(l) - ll;
}
inline bool operator<(unsigned long l, const wxULongLong& ull) { return ull > l; }
inline bool operator>(unsigned long l, const wxULongLong& ull) { return ull < l; }
inline bool operator<=(unsigned long l, const wxULongLong& ull) { return ull >= l; }
inline bool operator>=(unsigned long l, const wxULongLong& ull) { return ull <= l; }
inline bool operator==(unsigned long l, const wxULongLong& ull) { return ull == l; }
inline bool operator!=(unsigned long l, const wxULongLong& ull) { return ull != l; }
inline wxULongLong operator+(unsigned long l, const wxULongLong& ull) { return ull + l; }
inline wxULongLong operator-(unsigned long l, const wxULongLong& ull)
{
return wxULongLong(l) - ull;
}
# 26 "../wxX11/include/wx/datetime.h" 2
class wxDateTime;
class wxTimeSpan;
class wxDateSpan;
# 116 "../wxX11/include/wx/datetime.h"
class wxDateTime;
extern const wxDateTime wxDefaultDateTime;
class wxDateTime
{
public:
# 136 "../wxX11/include/wx/datetime.h"
typedef unsigned short wxDateTime_t;
enum TZ
{
Local,
GMT_12, GMT_11, GMT_10, GMT_9, GMT_8, GMT_7,
GMT_6, GMT_5, GMT_4, GMT_3, GMT_2, GMT_1,
GMT0,
GMT1, GMT2, GMT3, GMT4, GMT5, GMT6,
GMT7, GMT8, GMT9, GMT10, GMT11, GMT12,
WET = GMT0,
WEST = GMT1,
CET = GMT1,
CEST = GMT2,
EET = GMT2,
EEST = GMT3,
MSK = GMT3,
MSD = GMT4,
AST = GMT_4,
ADT = GMT_3,
EST = GMT_5,
EDT = GMT_4,
CST = GMT_6,
CDT = GMT_5,
MST = GMT_7,
MDT = GMT_6,
PST = GMT_8,
PDT = GMT_7,
HST = GMT_10,
AKST = GMT_9,
AKDT = GMT_8,
A_WST = GMT8,
A_CST = GMT12 + 1,
A_EST = GMT10,
A_ESST = GMT11,
UTC = GMT0
};
enum Calendar
{
Gregorian,
Julian
};
# 222 "../wxX11/include/wx/datetime.h"
enum GregorianAdoption
{
Gr_Unknown,
Gr_Standard,
Gr_Alaska,
Gr_Albania,
Gr_Austria = Gr_Unknown,
Gr_Austria_Brixen,
Gr_Austria_Salzburg = Gr_Austria_Brixen,
Gr_Austria_Tyrol = Gr_Austria_Brixen,
Gr_Austria_Carinthia,
Gr_Austria_Styria = Gr_Austria_Carinthia,
Gr_Belgium,
Gr_Bulgaria = Gr_Unknown,
Gr_Bulgaria_1,
Gr_Bulgaria_2,
Gr_Bulgaria_3,
Gr_Canada = Gr_Unknown,
Gr_China = Gr_Unknown,
Gr_China_1,
Gr_China_2,
Gr_Czechoslovakia,
Gr_Denmark,
Gr_Egypt,
Gr_Estonia,
Gr_Finland,
Gr_France,
Gr_France_Alsace,
Gr_France_Lorraine,
Gr_France_Strasbourg,
Gr_Germany = Gr_Unknown,
Gr_Germany_Catholic,
Gr_Germany_Prussia,
Gr_Germany_Protestant,
Gr_GreatBritain,
Gr_Greece,
Gr_Hungary,
Gr_Ireland = Gr_GreatBritain,
Gr_Italy = Gr_Standard,
Gr_Japan = Gr_Unknown,
Gr_Japan_1,
Gr_Japan_2,
Gr_Japan_3,
Gr_Latvia,
Gr_Lithuania,
Gr_Luxemburg,
Gr_Netherlands = Gr_Belgium,
Gr_Netherlands_Groningen,
Gr_Netherlands_Gelderland,
Gr_Netherlands_Utrecht,
Gr_Netherlands_Friesland,
Gr_Norway = Gr_Denmark,
Gr_Poland = Gr_Standard,
Gr_Portugal = Gr_Standard,
Gr_Romania,
Gr_Russia,
Gr_Scotland = Gr_GreatBritain,
Gr_Spain = Gr_Standard,
# 319 "../wxX11/include/wx/datetime.h"
Gr_Sweden = Gr_Finland,
Gr_Switzerland = Gr_Unknown,
Gr_Switzerland_Catholic,
Gr_Switzerland_Protestant,
Gr_Turkey,
Gr_USA = Gr_GreatBritain,
Gr_Wales = Gr_GreatBritain,
Gr_Yugoslavia
};
enum Country
{
Country_Unknown,
Country_Default,
Country_WesternEurope_Start,
Country_EEC = Country_WesternEurope_Start,
France,
Germany,
UK,
Country_WesternEurope_End = UK,
Russia,
USA
};
enum Month
{
Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec, Inv_Month
};
enum WeekDay
{
Sun, Mon, Tue, Wed, Thu, Fri, Sat, Inv_WeekDay
};
enum Year
{
Inv_Year = (-32767-1)
};
enum NameFlags
{
Name_Full = 0x01,
Name_Abbr = 0x02
};
enum WeekFlags
{
Default_First,
Monday_First,
Sunday_First
};
class TimeZone
{
public:
TimeZone(TZ tz);
TimeZone(wxDateTime_t offset = 0) { m_offset = offset; }
long GetOffset() const { return m_offset; }
private:
long m_offset;
};
# 417 "../wxX11/include/wx/datetime.h"
struct Tm
{
wxDateTime_t msec, sec, min, hour, mday;
Month mon;
int year;
Tm();
Tm(const struct tm& tm, const TimeZone& tz);
bool IsValid() const;
WeekDay GetWeekDay()
{
if ( wday == Inv_WeekDay )
ComputeWeekDay();
return (WeekDay)wday;
}
void AddMonths(int monDiff);
void AddDays(int dayDiff);
private:
void ComputeWeekDay();
TimeZone m_tz;
wxDateTime_t wday, yday;
};
static void SetCountry(Country country);
static Country GetCountry();
static bool IsWestEuropeanCountry(Country country = Country_Default);
static int GetCurrentYear(Calendar cal = Gregorian);
static int ConvertYearToBC(int year);
static Month GetCurrentMonth(Calendar cal = Gregorian);
static bool IsLeapYear(int year = Inv_Year, Calendar cal = Gregorian);
static int GetCentury(int year = Inv_Year);
static wxDateTime_t GetNumberOfDays(int year, Calendar cal = Gregorian);
static wxDateTime_t GetNumberOfDays(Month month,
int year = Inv_Year,
Calendar cal = Gregorian);
static wxString GetMonthName(Month month,
NameFlags flags = Name_Full);
static wxString GetWeekDayName(WeekDay weekday,
NameFlags flags = Name_Full);
static void GetAmPmStrings(wxString *am, wxString *pm);
static bool IsDSTApplicable(int year = Inv_Year,
Country country = Country_Default);
static wxDateTime GetBeginDST(int year = Inv_Year,
Country country = Country_Default);
static wxDateTime GetEndDST(int year = Inv_Year,
Country country = Country_Default);
static inline wxDateTime Now();
static wxDateTime UNow();
static inline wxDateTime Today();
wxDateTime() { m_time = wxLongLong((long)(2147483647L * 2UL + 1), (2147483647L * 2UL + 1)); }
inline wxDateTime(time_t timet);
inline wxDateTime(const struct tm& tm);
inline wxDateTime(const Tm& tm);
inline wxDateTime(double jdn);
inline wxDateTime(wxDateTime_t hour,
wxDateTime_t minute = 0,
wxDateTime_t second = 0,
wxDateTime_t millisec = 0);
inline wxDateTime(wxDateTime_t day,
Month month,
int year = Inv_Year,
wxDateTime_t hour = 0,
wxDateTime_t minute = 0,
wxDateTime_t second = 0,
wxDateTime_t millisec = 0);
# 583 "../wxX11/include/wx/datetime.h"
inline wxDateTime& SetToCurrent();
inline wxDateTime& Set(time_t timet);
wxDateTime& Set(const struct tm& tm);
inline wxDateTime& Set(const Tm& tm);
wxDateTime& Set(double jdn);
wxDateTime& Set(wxDateTime_t hour,
wxDateTime_t minute = 0,
wxDateTime_t second = 0,
wxDateTime_t millisec = 0);
wxDateTime& Set(wxDateTime_t day,
Month month,
int year = Inv_Year,
wxDateTime_t hour = 0,
wxDateTime_t minute = 0,
wxDateTime_t second = 0,
wxDateTime_t millisec = 0);
wxDateTime& ResetTime();
wxDateTime& SetYear(int year);
wxDateTime& SetMonth(Month month);
wxDateTime& SetDay(wxDateTime_t day);
wxDateTime& SetHour(wxDateTime_t hour);
wxDateTime& SetMinute(wxDateTime_t minute);
wxDateTime& SetSecond(wxDateTime_t second);
wxDateTime& SetMillisecond(wxDateTime_t millisecond);
wxDateTime& operator=(time_t timet) { return Set(timet); }
wxDateTime& operator=(const struct tm& tm) { return Set(tm); }
wxDateTime& operator=(const Tm& tm) { return Set(tm); }
# 654 "../wxX11/include/wx/datetime.h"
wxDateTime& SetToWeekDayInSameWeek(WeekDay weekday);
inline wxDateTime GetWeekDayInSameWeek(WeekDay weekday) const;
wxDateTime& SetToNextWeekDay(WeekDay weekday);
inline wxDateTime GetNextWeekDay(WeekDay weekday) const;
wxDateTime& SetToPrevWeekDay(WeekDay weekday);
inline wxDateTime GetPrevWeekDay(WeekDay weekday) const;
bool SetToWeekDay(WeekDay weekday,
int n = 1,
Month month = Inv_Month,
int year = Inv_Year);
inline wxDateTime GetWeekDay(WeekDay weekday,
int n = 1,
Month month = Inv_Month,
int year = Inv_Year) const;
inline bool SetToLastWeekDay(WeekDay weekday,
Month month = Inv_Month,
int year = Inv_Year);
inline wxDateTime GetLastWeekDay(WeekDay weekday,
Month month = Inv_Month,
int year = Inv_Year);
bool SetToTheWeek(wxDateTime_t numWeek, WeekDay weekday = Mon);
inline wxDateTime GetWeek(wxDateTime_t numWeek, WeekDay weekday = Mon) const;
wxDateTime& SetToLastMonthDay(Month month = Inv_Month,
int year = Inv_Year);
inline wxDateTime GetLastMonthDay(Month month = Inv_Month,
int year = Inv_Year) const;
wxDateTime& SetToYearDay(wxDateTime_t yday);
inline wxDateTime GetYearDay(wxDateTime_t yday) const;
# 727 "../wxX11/include/wx/datetime.h"
double GetJulianDayNumber() const;
double GetJDN() const { return GetJulianDayNumber(); }
double GetModifiedJulianDayNumber() const { return GetJDN() - 2400000.5; }
double GetMJD() const { return GetModifiedJulianDayNumber(); }
double GetRataDie() const;
# 757 "../wxX11/include/wx/datetime.h"
inline wxDateTime ToTimezone(const TimeZone& tz, bool noDST = 0) const;
wxDateTime& MakeTimezone(const TimeZone& tz, bool noDST = 0);
wxDateTime ToGMT(bool noDST = 0) const { return ToTimezone(GMT0, noDST); }
wxDateTime& MakeGMT(bool noDST = 0) { return MakeTimezone(GMT0, noDST); }
int IsDST(Country country = Country_Default) const;
# 779 "../wxX11/include/wx/datetime.h"
inline bool IsValid() const { return m_time != wxDefaultDateTime.m_time; }
Tm GetTm(const TimeZone& tz = Local) const;
inline time_t GetTicks() const;
int GetYear(const TimeZone& tz = Local) const
{ return GetTm(tz).year; }
Month GetMonth(const TimeZone& tz = Local) const
{ return (Month)GetTm(tz).mon; }
wxDateTime_t GetDay(const TimeZone& tz = Local) const
{ return GetTm(tz).mday; }
WeekDay GetWeekDay(const TimeZone& tz = Local) const
{ return GetTm(tz).GetWeekDay(); }
wxDateTime_t GetHour(const TimeZone& tz = Local) const
{ return GetTm(tz).hour; }
wxDateTime_t GetMinute(const TimeZone& tz = Local) const
{ return GetTm(tz).min; }
wxDateTime_t GetSecond(const TimeZone& tz = Local) const
{ return GetTm(tz).sec; }
wxDateTime_t GetMillisecond(const TimeZone& tz = Local) const
{ return GetTm(tz).msec; }
wxDateTime_t GetDayOfYear(const TimeZone& tz = Local) const;
wxDateTime_t GetWeekOfYear(WeekFlags flags = Monday_First,
const TimeZone& tz = Local) const;
wxDateTime_t GetWeekOfMonth(WeekFlags flags = Monday_First,
const TimeZone& tz = Local) const;
bool IsWorkDay(Country country = Country_Default) const;
bool IsGregorianDate(GregorianAdoption country = Gr_Standard) const;
inline bool IsEqualTo(const wxDateTime& datetime) const;
inline bool IsEarlierThan(const wxDateTime& datetime) const;
inline bool IsLaterThan(const wxDateTime& datetime) const;
inline bool IsStrictlyBetween(const wxDateTime& t1,
const wxDateTime& t2) const;
inline bool IsBetween(const wxDateTime& t1, const wxDateTime& t2) const;
inline bool IsSameDate(const wxDateTime& dt) const;
inline bool IsSameTime(const wxDateTime& dt) const;
inline bool IsEqualUpTo(const wxDateTime& dt, const wxTimeSpan& ts) const;
inline wxDateTime Add(const wxTimeSpan& diff) const;
inline wxDateTime& Add(const wxTimeSpan& diff);
inline wxDateTime& operator+=(const wxTimeSpan& diff);
inline wxDateTime Subtract(const wxTimeSpan& diff) const;
inline wxDateTime& Subtract(const wxTimeSpan& diff);
inline wxDateTime& operator-=(const wxTimeSpan& diff);
inline wxDateTime Add(const wxDateSpan& diff) const;
wxDateTime& Add(const wxDateSpan& diff);
inline wxDateTime& operator+=(const wxDateSpan& diff);
inline wxDateTime Subtract(const wxDateSpan& diff) const;
inline wxDateTime& Subtract(const wxDateSpan& diff);
inline wxDateTime& operator-=(const wxDateSpan& diff);
inline wxTimeSpan Subtract(const wxDateTime& dt) const;
# 909 "../wxX11/include/wx/datetime.h"
const char *ParseRfc822Date(const char* date);
const char *ParseFormat(const char *date,
const char *format = "%c",
const wxDateTime& dateDef = wxDefaultDateTime);
const char *ParseDateTime(const char *datetime);
const char *ParseDate(const char *date);
const char *ParseTime(const char *time);
wxString Format(const char *format = "%c",
const TimeZone& tz = Local) const;
wxString FormatDate() const { return Format("%x"); }
wxString FormatTime() const { return Format("%X"); }
wxString FormatISODate() const { return Format("%Y-%m-%d"); }
wxString FormatISOTime() const { return Format("%H:%M:%S"); }
wxDateTime(const wxLongLong& time) { m_time = time; }
inline wxLongLong GetValue() const;
static time_t GetTimeNow() { return time((time_t *)__null); }
static struct tm *GetTmNow()
{
time_t t = GetTimeNow();
return localtime(&t);
}
private:
static Country ms_country;
static const long TIME_T_FACTOR;
inline bool IsInStdRange() const;
wxLongLong m_time;
};
class wxTimeSpan
{
public:
static wxTimeSpan Seconds(long sec) { return wxTimeSpan(0, 0, sec); }
static wxTimeSpan Second() { return Seconds(1); }
static wxTimeSpan Minutes(long min) { return wxTimeSpan(0, min, 0 ); }
static wxTimeSpan Minute() { return Minutes(1); }
static wxTimeSpan Hours(long hours) { return wxTimeSpan(hours, 0, 0); }
static wxTimeSpan Hour() { return Hours(1); }
static wxTimeSpan Days(long days) { return Hours(24 * days); }
static wxTimeSpan Day() { return Days(1); }
static wxTimeSpan Weeks(long days) { return Days(7 * days); }
static wxTimeSpan Week() { return Weeks(1); }
wxTimeSpan() { }
inline wxTimeSpan(long hours,
long minutes = 0,
long seconds = 0,
long milliseconds = 0);
# 1034 "../wxX11/include/wx/datetime.h"
inline wxTimeSpan Add(const wxTimeSpan& diff) const;
inline wxTimeSpan& Add(const wxTimeSpan& diff);
wxTimeSpan& operator+=(const wxTimeSpan& diff) { return Add(diff); }
inline wxTimeSpan Subtract(const wxTimeSpan& diff) const;
inline wxTimeSpan& Subtract(const wxTimeSpan& diff);
wxTimeSpan& operator-=(const wxTimeSpan& diff) { return Subtract(diff); }
inline wxTimeSpan Multiply(int n) const;
inline wxTimeSpan& Multiply(int n);
wxTimeSpan& operator*=(int n) { return Multiply(n); }
wxTimeSpan Negate() const { return wxTimeSpan(-GetValue()); }
wxTimeSpan& Neg() { m_diff = -GetValue(); return *this; }
wxTimeSpan& operator-() { return Neg(); }
inline wxTimeSpan Abs() const;
# 1072 "../wxX11/include/wx/datetime.h"
bool IsNull() const { return m_diff == 0l; }
bool operator!() const { return !IsNull(); }
bool IsPositive() const { return m_diff > 0l; }
bool IsNegative() const { return m_diff < 0l; }
inline bool IsEqualTo(const wxTimeSpan& ts) const;
inline bool IsLongerThan(const wxTimeSpan& ts) const;
bool IsShorterThan(const wxTimeSpan& t) const { return !IsLongerThan(t); }
inline int GetWeeks() const;
inline int GetDays() const;
inline int GetHours() const;
inline int GetMinutes() const;
inline wxLongLong GetSeconds() const;
wxLongLong GetMilliseconds() const { return m_diff; }
# 1118 "../wxX11/include/wx/datetime.h"
wxString Format(const char *format = "%H:%M:%S") const;
wxTimeSpan(const wxLongLong& diff) { m_diff = diff; }
wxLongLong GetValue() const { return m_diff; }
private:
wxLongLong m_diff;
};
# 1163 "../wxX11/include/wx/datetime.h"
class wxDateSpan
{
public:
wxDateSpan(int years = 0, int months = 0, int weeks = 0, int days = 0)
{
m_years = years;
m_months = months;
m_weeks = weeks;
m_days = days;
}
static wxDateSpan Days(int days) { return wxDateSpan(0, 0, 0, days); }
static wxDateSpan Day() { return Days(1); }
static wxDateSpan Weeks(int weeks) { return wxDateSpan(0, 0, weeks, 0); }
static wxDateSpan Week() { return Weeks(1); }
static wxDateSpan Months(int mon) { return wxDateSpan(0, mon, 0, 0); }
static wxDateSpan Month() { return Months(1); }
static wxDateSpan Years(int years) { return wxDateSpan(years, 0, 0, 0); }
static wxDateSpan Year() { return Years(1); }
# 1202 "../wxX11/include/wx/datetime.h"
wxDateSpan& SetYears(int n) { m_years = n; return *this; }
wxDateSpan& SetMonths(int n) { m_months = n; return *this; }
wxDateSpan& SetWeeks(int n) { m_weeks = n; return *this; }
wxDateSpan& SetDays(int n) { m_days = n; return *this; }
int GetYears() const { return m_years; }
int GetMonths() const { return m_months; }
int GetWeeks() const { return m_weeks; }
int GetDays() const { return m_days; }
int GetTotalDays() const { return 7*m_weeks + m_days; }
inline wxDateSpan Add(const wxDateSpan& other) const;
inline wxDateSpan& Add(const wxDateSpan& other);
inline wxDateSpan& operator+=(const wxDateSpan& other);
inline wxDateSpan Subtract(const wxDateSpan& other) const;
inline wxDateSpan& Subtract(const wxDateSpan& other);
inline wxDateSpan& operator-=(const wxDateSpan& other);
inline wxDateSpan Negate() const;
inline wxDateSpan& Neg();
wxDateSpan& operator-() { return Neg(); }
inline wxDateSpan Multiply(int factor) const;
inline wxDateSpan& Multiply(int factor);
inline wxDateSpan& operator*=(int factor) { return Multiply(factor); }
private:
int m_years,
m_months,
m_weeks,
m_days;
};
# 1 "../wxX11/include/wx/dynarray.h" 1
# 1264 "../wxX11/include/wx/datetime.h" 2
typedef wxDateTime _wxObjArraywxDateTimeArray; typedef int ( *CMPFUNC_wxObjArraywxDateTimeArray)(_wxObjArraywxDateTimeArray **pItem1, _wxObjArraywxDateTimeArray **pItem2); class wxDateTimeArray : public wxArrayPtrVoid { typedef int ( *CMPFUNCwxArrayPtrVoid)(void **pItem1, void **pItem2); public: wxDateTimeArray() { } wxDateTimeArray(const wxDateTimeArray& src); wxDateTimeArray& operator=(const wxDateTimeArray& src); ~wxDateTimeArray(); _wxObjArraywxDateTimeArray& operator[](size_t uiIndex) const { return *(_wxObjArraywxDateTimeArray*)wxArrayPtrVoid::Item(uiIndex); } _wxObjArraywxDateTimeArray& Item(size_t uiIndex) const { return *(_wxObjArraywxDateTimeArray*)wxArrayPtrVoid::Item(uiIndex); } _wxObjArraywxDateTimeArray& Last() const { return *(_wxObjArraywxDateTimeArray*)(wxArrayPtrVoid::Item(Count() - 1)); } int Index(const _wxObjArraywxDateTimeArray& Item, bool bFromEnd = 0) const; void Add(const _wxObjArraywxDateTimeArray& Item); void Add(const _wxObjArraywxDateTimeArray* pItem) { wxArrayPtrVoid::Add((_wxObjArraywxDateTimeArray*)pItem); } void Insert(const _wxObjArraywxDateTimeArray& Item, size_t uiIndex); void Insert(const _wxObjArraywxDateTimeArray* pItem, size_t uiIndex) { wxArrayPtrVoid::Insert((_wxObjArraywxDateTimeArray*)pItem, uiIndex); } void Empty() { DoEmpty(); wxArrayPtrVoid::Empty(); } void Clear() { DoEmpty(); wxArrayPtrVoid::Clear(); } _wxObjArraywxDateTimeArray* Detach(size_t uiIndex) { _wxObjArraywxDateTimeArray* p = (_wxObjArraywxDateTimeArray*)wxArrayPtrVoid::Item(uiIndex); wxArrayPtrVoid::RemoveAt(uiIndex); return p; } void RemoveAt(size_t uiIndex); void Sort(CMPFUNC_wxObjArraywxDateTimeArray fCmp) { wxArrayPtrVoid::Sort((CMPFUNCwxArrayPtrVoid)fCmp); } private: void DoEmpty(); void DoCopy(const wxDateTimeArray& src); };
# 1276 "../wxX11/include/wx/datetime.h"
class wxDateTimeHolidayAuthority;
typedef wxDateTimeHolidayAuthority * _wxArraywxHolidayAuthoritiesArray; struct wxAssert_wxHolidayAuthoritiesArray { unsigned int TypeTooBigToBeStoredInwxBaseArrayPtrVoid: sizeof(_wxArraywxHolidayAuthoritiesArray) <= sizeof(wxBaseArrayPtrVoid::base_type); }; typedef int ( *CMPFUNC_wxArraywxHolidayAuthoritiesArray)(_wxArraywxHolidayAuthoritiesArray *pItem1, _wxArraywxHolidayAuthoritiesArray *pItem2); class wxHolidayAuthoritiesArray : public wxBaseArrayPtrVoid { public: wxHolidayAuthoritiesArray() { } ~wxHolidayAuthoritiesArray() { } wxHolidayAuthoritiesArray& operator=(const wxHolidayAuthoritiesArray& src) { wxBaseArrayPtrVoid* temp = (wxBaseArrayPtrVoid*) this; (*temp) = ((const wxBaseArrayPtrVoid&)src); return *this; } _wxArraywxHolidayAuthoritiesArray& operator[](size_t uiIndex) const { return (_wxArraywxHolidayAuthoritiesArray&)(wxBaseArrayPtrVoid::Item(uiIndex)); } _wxArraywxHolidayAuthoritiesArray& Item(size_t uiIndex) const { return (_wxArraywxHolidayAuthoritiesArray&)(wxBaseArrayPtrVoid::Item(uiIndex)); } _wxArraywxHolidayAuthoritiesArray& Last() const { return (_wxArraywxHolidayAuthoritiesArray&)(wxBaseArrayPtrVoid::Item(Count() - 1)); } int Index(_wxArraywxHolidayAuthoritiesArray Item, bool bFromEnd = 0) const { return wxBaseArrayPtrVoid::Index(Item, bFromEnd); } void Add(_wxArraywxHolidayAuthoritiesArray Item) { wxBaseArrayPtrVoid::Add(Item); } void Insert(_wxArraywxHolidayAuthoritiesArray Item, size_t uiIndex) { wxBaseArrayPtrVoid::Insert(Item, uiIndex) ; } void RemoveAt(size_t uiIndex) { wxBaseArrayPtrVoid::RemoveAt(uiIndex); } void Remove(_wxArraywxHolidayAuthoritiesArray Item) { int iIndex = Index(Item); if (!(iIndex != (-1))) {; return; }; wxBaseArrayPtrVoid::RemoveAt((size_t)iIndex); } void Sort(CMPFUNC_wxArraywxHolidayAuthoritiesArray fCmp) { wxBaseArrayPtrVoid::Sort((CMPFUNC)fCmp); } };
class wxDateTimeHolidaysModule;
class wxDateTimeHolidayAuthority
{
friend class wxDateTimeHolidaysModule;
public:
static bool IsHoliday(const wxDateTime& dt);
static size_t GetHolidaysInRange(const wxDateTime& dtStart,
const wxDateTime& dtEnd,
wxDateTimeArray& holidays);
static void ClearAllAuthorities();
static void AddAuthority(wxDateTimeHolidayAuthority *auth);
protected:
virtual bool DoIsHoliday(const wxDateTime& dt) const = 0;
# 1312 "../wxX11/include/wx/datetime.h"
virtual size_t DoGetHolidaysInRange(const wxDateTime& dtStart,
const wxDateTime& dtEnd,
wxDateTimeArray& holidays) const = 0;
private:
static wxHolidayAuthoritiesArray ms_authorities;
};
class wxDateTimeWorkDays : public wxDateTimeHolidayAuthority
{
protected:
virtual bool DoIsHoliday(const wxDateTime& dt) const;
virtual size_t DoGetHolidaysInRange(const wxDateTime& dtStart,
const wxDateTime& dtEnd,
wxDateTimeArray& holidays) const;
};
# 1341 "../wxX11/include/wx/datetime.h"
# 1 "../wxX11/include/wx/datetime.inl" 1
# 40 "../wxX11/include/wx/datetime.inl"
const long wxDateTime::TIME_T_FACTOR = 1000l;
inline bool wxDateTime::IsInStdRange() const
{
return m_time >= 0l && (m_time / TIME_T_FACTOR) < 2147483647L;
}
inline wxDateTime wxDateTime::Now()
{
return wxDateTime(*GetTmNow());
}
inline wxDateTime wxDateTime::Today()
{
struct tm *time = GetTmNow();
time->tm_hour = 0;
time->tm_min = 0;
time->tm_sec = 0;
return wxDateTime(*time);
}
inline wxDateTime& wxDateTime::Set(time_t timet)
{
m_time = timet - 0 ;
m_time *= TIME_T_FACTOR;
return *this;
}
inline wxDateTime& wxDateTime::SetToCurrent()
{
*this = Now();
return *this;
}
inline wxDateTime::wxDateTime(time_t timet)
{
Set(timet);
}
inline wxDateTime::wxDateTime(const struct tm& tm)
{
Set(tm);
}
inline wxDateTime::wxDateTime(const Tm& tm)
{
Set(tm);
}
inline wxDateTime::wxDateTime(double jdn)
{
Set(jdn);
}
inline wxDateTime& wxDateTime::Set(const Tm& tm)
{
;
return Set(tm.mday, (Month)tm.mon, tm.year, tm.hour, tm.min, tm.sec);
}
inline wxDateTime::wxDateTime(wxDateTime_t hour,
wxDateTime_t minute,
wxDateTime_t second,
wxDateTime_t millisec)
{
Set(hour, minute, second, millisec);
}
inline wxDateTime::wxDateTime(wxDateTime_t day,
Month month,
int year,
wxDateTime_t hour,
wxDateTime_t minute,
wxDateTime_t second,
wxDateTime_t millisec)
{
Set(day, month, year, hour, minute, second, millisec);
}
inline wxLongLong wxDateTime::GetValue() const
{
;
return m_time;
}
inline time_t wxDateTime::GetTicks() const
{
;
if ( !IsInStdRange() )
{
return (time_t)-1;
}
return (time_t)((m_time / (long)TIME_T_FACTOR).GetLo())+0 ;
}
inline bool wxDateTime::SetToLastWeekDay(WeekDay weekday,
Month month,
int year)
{
return SetToWeekDay(weekday, -1, month, year);
}
inline wxDateTime wxDateTime::GetWeekDayInSameWeek(WeekDay weekday) const
{
return wxDateTime(*this).SetToWeekDayInSameWeek(weekday);
}
inline wxDateTime wxDateTime::GetNextWeekDay(WeekDay weekday) const
{
return wxDateTime(*this).SetToNextWeekDay(weekday);
}
inline wxDateTime wxDateTime::GetPrevWeekDay(WeekDay weekday) const
{
return wxDateTime(*this).SetToPrevWeekDay(weekday);
}
inline wxDateTime wxDateTime::GetWeekDay(WeekDay weekday,
int n,
Month month,
int year) const
{
wxDateTime dt(*this);
return dt.SetToWeekDay(weekday, n, month, year) ? dt : wxDefaultDateTime;
}
inline wxDateTime wxDateTime::GetLastWeekDay(WeekDay weekday,
Month month,
int year)
{
wxDateTime dt(*this);
return dt.SetToLastWeekDay(weekday, month, year) ? dt : wxDefaultDateTime;
}
inline wxDateTime wxDateTime::GetWeek(wxDateTime_t numWeek,
WeekDay weekday) const
{
wxDateTime dt(*this);
return dt.SetToTheWeek(numWeek, weekday) ? dt : wxDefaultDateTime;
}
inline wxDateTime wxDateTime::GetLastMonthDay(Month month, int year) const
{
return wxDateTime(*this).SetToLastMonthDay(month, year);
}
inline wxDateTime wxDateTime::GetYearDay(wxDateTime_t yday) const
{
return wxDateTime(*this).SetToYearDay(yday);
}
inline bool wxDateTime::IsEqualTo(const wxDateTime& datetime) const
{
;
return m_time == datetime.m_time;
}
inline bool wxDateTime::IsEarlierThan(const wxDateTime& datetime) const
{
;
return m_time < datetime.m_time;
}
inline bool wxDateTime::IsLaterThan(const wxDateTime& datetime) const
{
;
return m_time > datetime.m_time;
}
inline bool wxDateTime::IsStrictlyBetween(const wxDateTime& t1,
const wxDateTime& t2) const
{
return IsLaterThan(t1) && IsEarlierThan(t2);
}
inline bool wxDateTime::IsBetween(const wxDateTime& t1,
const wxDateTime& t2) const
{
return IsEqualTo(t1) || IsEqualTo(t2) || IsStrictlyBetween(t1, t2);
}
inline bool wxDateTime::IsSameDate(const wxDateTime& dt) const
{
Tm tm1 = GetTm(),
tm2 = dt.GetTm();
return tm1.year == tm2.year &&
tm1.mon == tm2.mon &&
tm1.mday == tm2.mday;
}
inline bool wxDateTime::IsSameTime(const wxDateTime& dt) const
{
Tm tm1 = GetTm(),
tm2 = dt.GetTm();
return tm1.hour == tm2.hour &&
tm1.min == tm2.min &&
tm1.sec == tm2.sec &&
tm1.msec == tm2.msec;
}
inline bool wxDateTime::IsEqualUpTo(const wxDateTime& dt,
const wxTimeSpan& ts) const
{
return IsBetween(dt.Subtract(ts), dt.Add(ts));
}
inline wxDateTime wxDateTime::Add(const wxTimeSpan& diff) const
{
;
return wxDateTime(m_time + diff.GetValue());
}
inline wxDateTime& wxDateTime::Add(const wxTimeSpan& diff)
{
;
m_time += diff.GetValue();
return *this;
}
inline wxDateTime& wxDateTime::operator+=(const wxTimeSpan& diff)
{
return Add(diff);
}
inline wxDateTime wxDateTime::Subtract(const wxTimeSpan& diff) const
{
;
return wxDateTime(m_time - diff.GetValue());
}
inline wxDateTime& wxDateTime::Subtract(const wxTimeSpan& diff)
{
;
m_time -= diff.GetValue();
return *this;
}
inline wxDateTime& wxDateTime::operator-=(const wxTimeSpan& diff)
{
return Subtract(diff);
}
inline wxTimeSpan wxDateTime::Subtract(const wxDateTime& datetime) const
{
;
return wxTimeSpan(GetValue() - datetime.GetValue());
}
inline wxDateTime wxDateTime::Add(const wxDateSpan& diff) const
{
return wxDateTime(*this).Add(diff);
}
inline wxDateTime& wxDateTime::Subtract(const wxDateSpan& diff)
{
return Add(diff.Negate());
}
inline wxDateTime wxDateTime::Subtract(const wxDateSpan& diff) const
{
return wxDateTime(*this).Subtract(diff);
}
inline wxDateTime& wxDateTime::operator-=(const wxDateSpan& diff)
{
return Subtract(diff);
}
inline wxDateTime& wxDateTime::operator+=(const wxDateSpan& diff)
{
return Add(diff);
}
inline wxDateTime wxDateTime::ToTimezone(const wxDateTime::TimeZone& tz,
bool noDST) const
{
return wxDateTime(*this).MakeTimezone(tz, noDST);
}
inline wxTimeSpan::wxTimeSpan(long hours,
long minutes,
long seconds,
long milliseconds)
{
m_diff = hours;
m_diff *= 60l;
m_diff += minutes;
m_diff *= 60l;
m_diff += seconds;
m_diff *= 1000l;
m_diff += milliseconds;
}
inline wxLongLong wxTimeSpan::GetSeconds() const
{
return m_diff / 1000l;
}
inline int wxTimeSpan::GetMinutes() const
{
return (GetSeconds() / 60l).GetLo();
}
inline int wxTimeSpan::GetHours() const
{
return GetMinutes() / 60;
}
inline int wxTimeSpan::GetDays() const
{
return GetHours() / 24;
}
inline int wxTimeSpan::GetWeeks() const
{
return GetDays() / 7;
}
inline wxTimeSpan wxTimeSpan::Add(const wxTimeSpan& diff) const
{
return wxTimeSpan(m_diff + diff.GetValue());
}
inline wxTimeSpan& wxTimeSpan::Add(const wxTimeSpan& diff)
{
m_diff += diff.GetValue();
return *this;
}
inline wxTimeSpan wxTimeSpan::Subtract(const wxTimeSpan& diff) const
{
return wxTimeSpan(m_diff - diff.GetValue());
}
inline wxTimeSpan& wxTimeSpan::Subtract(const wxTimeSpan& diff)
{
m_diff -= diff.GetValue();
return *this;
}
inline wxTimeSpan& wxTimeSpan::Multiply(int n)
{
m_diff *= (long)n;
return *this;
}
inline wxTimeSpan wxTimeSpan::Multiply(int n) const
{
return wxTimeSpan(m_diff * (long)n);
}
inline wxTimeSpan wxTimeSpan::Abs() const
{
return wxTimeSpan(GetValue().Abs());
}
inline bool wxTimeSpan::IsEqualTo(const wxTimeSpan& ts) const
{
return GetValue() == ts.GetValue();
}
inline bool wxTimeSpan::IsLongerThan(const wxTimeSpan& ts) const
{
return GetValue().Abs() > ts.GetValue().Abs();
}
inline wxDateSpan& wxDateSpan::operator+=(const wxDateSpan& other)
{
m_years += other.m_years;
m_months += other.m_months;
m_weeks += other.m_weeks;
m_days += other.m_days;
return *this;
}
inline wxDateSpan& wxDateSpan::Add(const wxDateSpan& other)
{
return *this += other;
}
inline wxDateSpan wxDateSpan::Add(const wxDateSpan& other) const
{
wxDateSpan ds(*this);
ds.Add(other);
return ds;
}
inline wxDateSpan& wxDateSpan::Multiply(int factor)
{
m_years *= factor;
m_months *= factor;
m_weeks *= factor;
m_days *= factor;
return *this;
}
inline wxDateSpan wxDateSpan::Multiply(int factor) const
{
wxDateSpan ds(*this);
ds.Multiply(factor);
return ds;
}
inline wxDateSpan wxDateSpan::Negate() const
{
return wxDateSpan(-m_years, -m_months, -m_weeks, -m_days);
}
inline wxDateSpan& wxDateSpan::Neg()
{
m_years = -m_years;
m_months = -m_months;
m_weeks = -m_weeks;
m_days = -m_days;
return *this;
}
inline wxDateSpan& wxDateSpan::operator-=(const wxDateSpan& other)
{
return *this += other.Negate();
}
inline wxDateSpan& wxDateSpan::Subtract(const wxDateSpan& other)
{
return *this -= other;
}
inline wxDateSpan wxDateSpan::Subtract(const wxDateSpan& other) const
{
wxDateSpan ds(*this);
ds.Subtract(other);
return ds;
}
# 1342 "../wxX11/include/wx/datetime.h" 2
# 1361 "../wxX11/include/wx/datetime.h"
inline wxDateTime operator+(const wxDateTime& dt,
const wxTimeSpan& ts)
{
return dt.Add(ts);
}
inline wxDateTime operator-(const wxDateTime& dt,
const wxTimeSpan& ts)
{
return dt.Subtract(ts);
}
inline wxDateTime operator+(const wxDateTime& dt,
const wxDateSpan& ds)
{
return dt.Add(ds);
}
inline wxDateTime operator-(const wxDateTime& dt,
const wxDateSpan& ds)
{
return dt.Subtract(ds);
}
inline wxTimeSpan operator-(const wxDateTime& dt1,
const wxDateTime& dt2)
{
return dt1.Subtract(dt2);
}
inline bool operator<(const wxDateTime& t1, const wxDateTime& t2)
{
;
return t1.GetValue() < t2.GetValue();
}
inline bool operator<=(const wxDateTime& t1, const wxDateTime& t2)
{
;
return t1.GetValue() <= t2.GetValue();
}
inline bool operator>(const wxDateTime& t1, const wxDateTime& t2)
{
;
return t1.GetValue() > t2.GetValue();
}
inline bool operator>=(const wxDateTime& t1, const wxDateTime& t2)
{
;
return t1.GetValue() >= t2.GetValue();
}
inline bool operator==(const wxDateTime& t1, const wxDateTime& t2)
{
;
return t1.GetValue() == t2.GetValue();
}
inline bool operator!=(const wxDateTime& t1, const wxDateTime& t2)
{
;
return t1.GetValue() != t2.GetValue();
}
# 1443 "../wxX11/include/wx/datetime.h"
inline wxTimeSpan operator+(const wxTimeSpan& ts1,
const wxTimeSpan& ts2)
{
return wxTimeSpan(ts1.GetValue() + ts2.GetValue());
}
inline wxTimeSpan operator-(const wxTimeSpan& ts1,
const wxTimeSpan& ts2)
{
return wxTimeSpan(ts1.GetValue() - ts2.GetValue());
}
inline wxTimeSpan operator*(const wxTimeSpan& ts, int n)
{
return wxTimeSpan(ts).Multiply(n);
}
inline wxTimeSpan operator*(int n, const wxTimeSpan& ts)
{
return wxTimeSpan(ts).Multiply(n);
}
inline bool operator<(const wxTimeSpan &t1, const wxTimeSpan &t2)
{
return t1.GetValue() < t2.GetValue();
}
inline bool operator<=(const wxTimeSpan &t1, const wxTimeSpan &t2)
{
return t1.GetValue() <= t2.GetValue();
}
inline bool operator>(const wxTimeSpan &t1, const wxTimeSpan &t2)
{
return t1.GetValue() > t2.GetValue();
}
inline bool operator>=(const wxTimeSpan &t1, const wxTimeSpan &t2)
{
return t1.GetValue() >= t2.GetValue();
}
inline bool operator==(const wxTimeSpan &t1, const wxTimeSpan &t2)
{
return t1.GetValue() == t2.GetValue();
}
inline bool operator!=(const wxTimeSpan &t1, const wxTimeSpan &t2)
{
return t1.GetValue() != t2.GetValue();
}
# 1505 "../wxX11/include/wx/datetime.h"
inline wxDateSpan operator+(const wxDateSpan& ds1,
const wxDateSpan& ds2)
{
return wxDateSpan(ds1.GetYears() + ds2.GetYears(),
ds1.GetMonths() + ds2.GetMonths(),
ds1.GetWeeks() + ds2.GetWeeks(),
ds1.GetDays() + ds2.GetDays());
}
inline wxDateSpan operator-(const wxDateSpan& ds1,
const wxDateSpan& ds2)
{
return wxDateSpan(ds1.GetYears() - ds2.GetYears(),
ds1.GetMonths() - ds2.GetMonths(),
ds1.GetWeeks() - ds2.GetWeeks(),
ds1.GetDays() - ds2.GetDays());
}
inline wxDateSpan operator*(const wxDateSpan& ds, int n)
{
return wxDateSpan(ds).Multiply(n);
}
inline wxDateSpan operator*(int n, const wxDateSpan& ds)
{
return wxDateSpan(ds).Multiply(n);
}
# 1543 "../wxX11/include/wx/datetime.h"
inline void wxNextMonth(wxDateTime::Month& m)
{
;
m = (wxDateTime::Month)(m + 1);
}
inline void wxPrevMonth(wxDateTime::Month& m)
{
;
m = m == wxDateTime::Jan ? wxDateTime::Inv_Month
: (wxDateTime::Month)(m - 1);
}
inline void wxNextWDay(wxDateTime::WeekDay& wd)
{
;
wd = (wxDateTime::WeekDay)(wd + 1);
}
inline void wxPrevWDay(wxDateTime::WeekDay& wd)
{
;
wd = wd == wxDateTime::Sun ? wxDateTime::Inv_WeekDay
: (wxDateTime::WeekDay)(wd - 1);
}
# 83 "../wxX11/src/common/datetime.cpp" 2
# 1 "../wxX11/include/wx/timer.h" 1
# 17 "../wxX11/include/wx/timer.h"
#pragma interface "timerbase.h"
# 1 "lib/wx/include/motif-2.3/wx/setup.h" 1
# 21 "../wxX11/include/wx/timer.h" 2
# 1 "../wxX11/include/wx/object.h" 1
# 22 "../wxX11/include/wx/timer.h" 2
# 1 "../wxX11/include/wx/longlong.h" 1
# 23 "../wxX11/include/wx/timer.h" 2
# 1 "../wxX11/include/wx/event.h" 1
# 16 "../wxX11/include/wx/event.h"
#pragma interface "event.h"
# 1 "../wxX11/include/wx/defs.h" 1
# 20 "../wxX11/include/wx/event.h" 2
# 1 "../wxX11/include/wx/object.h" 1
# 21 "../wxX11/include/wx/event.h" 2
# 1 "../wxX11/include/wx/clntdata.h" 1
# 16 "../wxX11/include/wx/clntdata.h"
#pragma interface "clntdata.h"
# 1 "../wxX11/include/wx/defs.h" 1
# 20 "../wxX11/include/wx/clntdata.h" 2
# 1 "../wxX11/include/wx/string.h" 1
# 21 "../wxX11/include/wx/clntdata.h" 2
enum wxClientDataType
{
wxClientData_None,
wxClientData_Object,
wxClientData_Void
};
class wxClientData
{
public:
wxClientData() { }
virtual ~wxClientData() { }
};
class wxStringClientData : public wxClientData
{
public:
wxStringClientData() { }
wxStringClientData( const wxString &data ) : m_data(data) { }
void SetData( const wxString &data ) { m_data = data; }
const wxString& GetData() const { return m_data; }
private:
wxString m_data;
};
# 62 "../wxX11/include/wx/clntdata.h"
class wxClientDataContainer
{
public:
wxClientDataContainer();
virtual ~wxClientDataContainer();
void SetClientObject( wxClientData *data ) { DoSetClientObject(data); }
wxClientData *GetClientObject() const { return DoGetClientObject(); }
void SetClientData( void *data ) { DoSetClientData(data); }
void *GetClientData() const { return DoGetClientData(); }
protected:
union
{
wxClientData *m_clientObject;
void *m_clientData;
};
virtual void DoSetClientObject( wxClientData *data );
virtual wxClientData *DoGetClientObject() const;
virtual void DoSetClientData( void *data );
virtual void *DoGetClientData() const;
wxClientDataType m_clientDataType;
};
# 22 "../wxX11/include/wx/event.h" 2
# 1 "../wxX11/include/wx/gdicmn.h" 1
# 20 "../wxX11/include/wx/gdicmn.h"
#pragma interface "gdicmn.h"
# 1 "../wxX11/include/wx/object.h" 1
# 24 "../wxX11/include/wx/gdicmn.h" 2
# 1 "../wxX11/include/wx/list.h" 1
# 25 "../wxX11/include/wx/gdicmn.h" 2
# 1 "../wxX11/include/wx/hash.h" 1
# 16 "../wxX11/include/wx/hash.h"
#pragma interface "hash.h"
# 1 "../wxX11/include/wx/list.h" 1
# 20 "../wxX11/include/wx/hash.h" 2
# 1 "../wxX11/include/wx/dynarray.h" 1
# 21 "../wxX11/include/wx/hash.h" 2
# 37 "../wxX11/include/wx/hash.h"
class wxHashTableBase : public wxObject
{
public:
wxHashTableBase();
void Create(wxKeyType keyType = wxKEY_INTEGER,
size_t size = (1000));
void Destroy();
size_t GetSize() const { return m_hashSize; }
size_t GetCount() const { return m_count; }
void DeleteContents(bool flag);
protected:
wxNodeBase *GetNode(long key, long value) const;
wxListBase **m_hashTable;
size_t m_hashSize;
wxKeyType m_keyType;
size_t m_count;
bool m_deleteContents;
private:
private: wxHashTableBase(const wxHashTableBase&); wxHashTableBase& operator=(const wxHashTableBase&);
};
class wxHashTableLong : public wxObject
{
public:
wxHashTableLong(size_t size = (1000)) { Init(size); }
virtual ~wxHashTableLong();
void Create(size_t size = (1000));
void Destroy();
size_t GetSize() const { return m_hashSize; }
size_t GetCount() const { return m_count; }
void Put(long key, long value);
long Get(long key) const;
long Delete(long key);
protected:
void Init(size_t size);
private:
wxArrayLong **m_values,
**m_keys;
size_t m_hashSize;
size_t m_count;
private: wxHashTableLong(const wxHashTableLong&); wxHashTableLong& operator=(const wxHashTableLong&);
};
class wxStringHashTable : public wxObject
{
public:
wxStringHashTable(size_t sizeTable = (1000));
virtual ~wxStringHashTable();
void Put(long key, const wxString& value);
wxString Get(long key, bool *wasFound = __null) const;
void Destroy();
private:
wxArrayLong **m_keys;
wxArrayString **m_values;
size_t m_hashSize;
private: wxStringHashTable(const wxStringHashTable&); wxStringHashTable& operator=(const wxStringHashTable&);
};
class wxHashTable : public wxObject
{
public:
int n;
int current_position;
wxNode *current_node;
unsigned int key_type;
wxList **hash_table;
wxHashTable(int the_key_type = wxKEY_INTEGER,
int size = (1000));
~wxHashTable();
wxHashTable(const wxHashTable& table) : wxObject() { DoCopy(table); }
wxHashTable& operator=(const wxHashTable& table)
{ Clear(); DoCopy(table); return *this; }
void DoCopy(const wxHashTable& table);
void Destroy();
bool Create(int the_key_type = wxKEY_INTEGER,
int size = (1000));
# 185 "../wxX11/include/wx/hash.h"
void Put(long key, long value, wxObject *object);
void Put(long key, const char *value, wxObject *object);
void Put(long value, wxObject *object);
void Put(const char *value, wxObject *object);
wxObject *Get(long key, long value) const;
wxObject *Get(long key, const char *value) const;
wxObject *Get(long value) const;
wxObject *Get(const char *value) const;
wxObject *Delete(long key);
wxObject *Delete(const char *key);
wxObject *Delete(long key, int value);
wxObject *Delete(long key, const char *value);
long MakeKey(const char *string) const;
void BeginFind();
wxNode *Next();
void DeleteContents(bool flag);
void Clear();
size_t GetCount() const { return m_count; }
private:
size_t m_count;
bool m_deleteContents;
public: static wxClassInfo sm_classwxHashTable; virtual wxClassInfo *GetClassInfo() const { return &wxHashTable::sm_classwxHashTable; }
};
# 26 "../wxX11/include/wx/gdicmn.h" 2
# 1 "../wxX11/include/wx/string.h" 1
# 27 "../wxX11/include/wx/gdicmn.h" 2
# 1 "lib/wx/include/motif-2.3/wx/setup.h" 1
# 28 "../wxX11/include/wx/gdicmn.h" 2
# 1 "../wxX11/include/wx/colour.h" 1
# 1 "../wxX11/include/wx/motif/colour.h" 1
# 16 "../wxX11/include/wx/motif/colour.h"
#pragma interface "colour.h"
# 1 "../wxX11/include/wx/object.h" 1
# 20 "../wxX11/include/wx/motif/colour.h" 2
# 1 "../wxX11/include/wx/string.h" 1
# 21 "../wxX11/include/wx/motif/colour.h" 2
class wxColour : public wxObject
{
public: static wxClassInfo sm_classwxColour; virtual wxClassInfo *GetClassInfo() const { return &wxColour::sm_classwxColour; }
public:
wxColour();
wxColour( unsigned char red, unsigned char green, unsigned char blue );
wxColour( unsigned long colRGB ) { Set(colRGB); }
wxColour( const wxString &colourName ) { InitFromName(colourName); }
wxColour( const char *colourName ) { InitFromName(colourName); }
wxColour( const wxColour& col );
wxColour& operator = ( const wxColour& col );
~wxColour();
void Set( unsigned char red, unsigned char green, unsigned char blue );
void Set( unsigned long colRGB )
{
Set((unsigned char)colRGB,
(unsigned char)(colRGB >> 8),
(unsigned char)(colRGB >> 16));
}
bool Ok() const {return m_isInit; }
unsigned char Red() const { return m_red; }
unsigned char Green() const { return m_green; }
unsigned char Blue() const { return m_blue; }
int GetPixel() const { return m_pixel; };
void SetPixel(int pixel) { m_pixel = pixel; m_isInit = 1; };
inline bool operator == (const wxColour& colour) const { return (m_red == colour.m_red && m_green == colour.m_green && m_blue == colour.m_blue); }
inline bool operator != (const wxColour& colour) const { return (!(m_red == colour.m_red && m_green == colour.m_green && m_blue == colour.m_blue)); }
# 77 "../wxX11/include/wx/motif/colour.h"
int AllocColour(WXDisplay* display, bool realloc = 0);
void InitFromName(const wxString& col);
private:
bool m_isInit;
unsigned char m_red;
unsigned char m_blue;
unsigned char m_green;
public:
int m_pixel;
};
# 8 "../wxX11/include/wx/colour.h" 2
# 29 "../wxX11/include/wx/gdicmn.h" 2
# 1 "../wxX11/include/wx/font.h" 1
# 16 "../wxX11/include/wx/font.h"
#pragma interface "fontbase.h"
# 1 "../wxX11/include/wx/defs.h" 1
# 24 "../wxX11/include/wx/font.h" 2
# 1 "../wxX11/include/wx/fontenc.h" 1
# 25 "../wxX11/include/wx/font.h" 2
# 1 "../wxX11/include/wx/gdiobj.h" 1
# 1 "../wxX11/include/wx/motif/gdiobj.h" 1
# 15 "../wxX11/include/wx/motif/gdiobj.h"
# 1 "../wxX11/include/wx/object.h" 1
# 16 "../wxX11/include/wx/motif/gdiobj.h" 2
#pragma interface "gdiobj.h"
class wxGDIRefData: public wxObjectRefData {
public:
inline wxGDIRefData()
{
}
};
class wxGDIObject: public wxObject
{
public: static wxClassInfo sm_classwxGDIObject; virtual wxClassInfo *GetClassInfo() const { return &wxGDIObject::sm_classwxGDIObject; }
public:
inline wxGDIObject() { m_visible = 0; };
inline ~wxGDIObject() {};
inline bool IsNull() const { return (m_refData == 0); }
virtual bool GetVisible() { return m_visible; }
virtual void SetVisible(bool v) { m_visible = v; }
protected:
bool m_visible;
};
# 8 "../wxX11/include/wx/gdiobj.h" 2
# 26 "../wxX11/include/wx/font.h" 2
class wxFontData;
class wxFontBase;
class wxFont;
# 43 "../wxX11/include/wx/font.h"
enum wxFontFamily
{
wxFONTFAMILY_DEFAULT = wxDEFAULT,
wxFONTFAMILY_DECORATIVE = wxDECORATIVE,
wxFONTFAMILY_ROMAN = wxROMAN,
wxFONTFAMILY_SCRIPT = wxSCRIPT,
wxFONTFAMILY_SWISS = wxSWISS,
wxFONTFAMILY_MODERN = wxMODERN,
wxFONTFAMILY_TELETYPE = wxTELETYPE,
wxFONTFAMILY_MAX,
wxFONTFAMILY_UNKNOWN = wxFONTFAMILY_MAX
};
enum wxFontStyle
{
wxFONTSTYLE_NORMAL = wxNORMAL,
wxFONTSTYLE_ITALIC = wxITALIC,
wxFONTSTYLE_SLANT = wxSLANT,
wxFONTSTYLE_MAX
};
enum wxFontWeight
{
wxFONTWEIGHT_NORMAL = wxNORMAL,
wxFONTWEIGHT_LIGHT = wxLIGHT,
wxFONTWEIGHT_BOLD = wxBOLD,
wxFONTWEIGHT_MAX
};
class wxFontRefData;
struct wxNativeFontInfo;
class wxFontBase : public wxGDIObject
{
public:
virtual ~wxFontBase();
static wxFont *New(
int pointSize,
int family,
int style,
int weight,
bool underlined = 0,
const wxString& face = wxEmptyString,
wxFontEncoding encoding = wxFONTENCODING_DEFAULT);
static wxFont *New(const wxNativeFontInfo& nativeFontDesc);
static wxFont *New(const wxString& strNativeFontDesc);
bool Ok() const { return m_refData != __null; }
bool operator == (const wxFont& font) const;
bool operator != (const wxFont& font) const;
virtual int GetPointSize() const = 0;
virtual int GetFamily() const = 0;
virtual int GetStyle() const = 0;
virtual int GetWeight() const = 0;
virtual bool GetUnderlined() const = 0;
virtual wxString GetFaceName() const = 0;
virtual wxFontEncoding GetEncoding() const = 0;
virtual wxNativeFontInfo *GetNativeFontInfo() const;
virtual bool IsFixedWidth() const;
wxString GetNativeFontInfoDesc() const;
wxString GetNativeFontInfoUserDesc() const;
virtual void SetPointSize( int pointSize ) = 0;
virtual void SetFamily( int family ) = 0;
virtual void SetStyle( int style ) = 0;
virtual void SetWeight( int weight ) = 0;
virtual void SetFaceName( const wxString& faceName ) = 0;
virtual void SetUnderlined( bool underlined ) = 0;
virtual void SetEncoding(wxFontEncoding encoding) = 0;
virtual void SetNativeFontInfo(const wxNativeFontInfo& info);
void SetNativeFontInfo(const wxString& info);
void SetNativeFontInfoUserDesc(const wxString& info);
wxString GetFamilyString() const;
wxString GetStyleString() const;
wxString GetWeightString() const;
static wxFontEncoding GetDefaultEncoding() { return ms_encodingDefault; }
static void SetDefaultEncoding(wxFontEncoding encoding);
protected:
wxFontRefData *GetFontData() const
{ return (wxFontRefData *)m_refData; }
private:
static wxFontEncoding ms_encodingDefault;
};
# 1 "../wxX11/include/wx/motif/font.h" 1
# 16 "../wxX11/include/wx/motif/font.h"
#pragma interface "font.h"
class wxXFont;
class wxFont : public wxFontBase
{
public:
wxFont() { Init(); }
wxFont(const wxFont& font) { Init(); Ref(font); }
wxFont(int size,
int family,
int style,
int weight,
bool underlined = 0,
const wxString& face = wxEmptyString,
wxFontEncoding encoding = wxFONTENCODING_DEFAULT)
{
Init();
(void)Create(size, family, style, weight, underlined, face, encoding);
}
wxFont(const wxNativeFontInfo& info);
bool Create(int size,
int family,
int style,
int weight,
bool underlined = 0,
const wxString& face = wxEmptyString,
wxFontEncoding encoding = wxFONTENCODING_DEFAULT);
bool Create(const wxString& fontname,
wxFontEncoding fontenc = wxFONTENCODING_DEFAULT);
bool Create(const wxNativeFontInfo& fontinfo);
virtual ~wxFont();
wxFont& operator=(const wxFont& font);
virtual int GetPointSize() const;
virtual int GetFamily() const;
virtual int GetStyle() const;
virtual int GetWeight() const;
virtual bool GetUnderlined() const;
virtual wxString GetFaceName() const;
virtual wxFontEncoding GetEncoding() const;
virtual wxNativeFontInfo *GetNativeFontInfo() const;
virtual void SetPointSize(int pointSize);
virtual void SetFamily(int family);
virtual void SetStyle(int style);
virtual void SetWeight(int weight);
virtual void SetFaceName(const wxString& faceName);
virtual void SetUnderlined(bool underlined);
virtual void SetEncoding(wxFontEncoding encoding);
virtual void SetNativeFontInfo( const wxNativeFontInfo& info );
# 95 "../wxX11/include/wx/motif/font.h"
wxXFont *GetInternalFont(double scale = 1.0,
WXDisplay* display = __null) const;
WXFontStructPtr GetFontStruct(double scale = 1.0,
WXDisplay* display = __null) const;
WXFontList GetFontList(double scale = 1.0,
WXDisplay* display = __null) const;
protected:
void Init();
bool RealizeResource() { return 1; }
void Unshare();
private:
public: static wxClassInfo sm_classwxFont; virtual wxClassInfo *GetClassInfo() const { return &wxFont::sm_classwxFont; }
};
# 167 "../wxX11/include/wx/font.h" 2
# 30 "../wxX11/include/wx/gdicmn.h" 2
class wxBitmap;
class wxBrush;
class wxColour;
class wxCursor;
class wxFont;
class wxIcon;
class wxPalette;
class wxPen;
class wxRegion;
class wxString;
enum wxBitmapType
{
wxBITMAP_TYPE_INVALID,
wxBITMAP_TYPE_BMP,
wxBITMAP_TYPE_BMP_RESOURCE,
wxBITMAP_TYPE_RESOURCE = wxBITMAP_TYPE_BMP_RESOURCE,
wxBITMAP_TYPE_ICO,
wxBITMAP_TYPE_ICO_RESOURCE,
wxBITMAP_TYPE_CUR,
wxBITMAP_TYPE_CUR_RESOURCE,
wxBITMAP_TYPE_XBM,
wxBITMAP_TYPE_XBM_DATA,
wxBITMAP_TYPE_XPM,
wxBITMAP_TYPE_XPM_DATA,
wxBITMAP_TYPE_TIF,
wxBITMAP_TYPE_TIF_RESOURCE,
wxBITMAP_TYPE_GIF,
wxBITMAP_TYPE_GIF_RESOURCE,
wxBITMAP_TYPE_PNG,
wxBITMAP_TYPE_PNG_RESOURCE,
wxBITMAP_TYPE_JPEG,
wxBITMAP_TYPE_JPEG_RESOURCE,
wxBITMAP_TYPE_PNM,
wxBITMAP_TYPE_PNM_RESOURCE,
wxBITMAP_TYPE_PCX,
wxBITMAP_TYPE_PCX_RESOURCE,
wxBITMAP_TYPE_PICT,
wxBITMAP_TYPE_PICT_RESOURCE,
wxBITMAP_TYPE_ICON,
wxBITMAP_TYPE_ICON_RESOURCE,
wxBITMAP_TYPE_ANI,
wxBITMAP_TYPE_IFF,
wxBITMAP_TYPE_MACCURSOR,
wxBITMAP_TYPE_MACCURSOR_RESOURCE,
wxBITMAP_TYPE_ANY = 50
};
enum wxStockCursor
{
wxCURSOR_NONE,
wxCURSOR_ARROW,
wxCURSOR_RIGHT_ARROW,
wxCURSOR_BULLSEYE,
wxCURSOR_CHAR,
wxCURSOR_CROSS,
wxCURSOR_HAND,
wxCURSOR_IBEAM,
wxCURSOR_LEFT_BUTTON,
wxCURSOR_MAGNIFIER,
wxCURSOR_MIDDLE_BUTTON,
wxCURSOR_NO_ENTRY,
wxCURSOR_PAINT_BRUSH,
wxCURSOR_PENCIL,
wxCURSOR_POINT_LEFT,
wxCURSOR_POINT_RIGHT,
wxCURSOR_QUESTION_ARROW,
wxCURSOR_RIGHT_BUTTON,
wxCURSOR_SIZENESW,
wxCURSOR_SIZENS,
wxCURSOR_SIZENWSE,
wxCURSOR_SIZEWE,
wxCURSOR_SIZING,
wxCURSOR_SPRAYCAN,
wxCURSOR_WAIT,
wxCURSOR_WATCH,
wxCURSOR_BLANK,
wxCURSOR_CROSS_REVERSE,
wxCURSOR_DOUBLE_ARROW,
wxCURSOR_BASED_ARROW_UP,
wxCURSOR_BASED_ARROW_DOWN,
wxCURSOR_ARROWWAIT,
wxCURSOR_MAX
};
# 199 "../wxX11/include/wx/gdicmn.h"
class wxSize
{
public:
int x, y;
wxSize() { x = y = 0; }
wxSize(int xx, int yy) { Set(xx, yy); }
bool operator==(const wxSize& sz) const { return x == sz.x && y == sz.y; }
bool operator!=(const wxSize& sz) const { return x != sz.x || y != sz.y; }
wxSize operator+(const wxSize& sz) { return wxSize(x + sz.x, y + sz.y); }
wxSize operator-(const wxSize& sz) { return wxSize(x - sz.x, y - sz.y); }
void Set(int xx, int yy) { x = xx; y = yy; }
void SetWidth(int w) { x = w; }
void SetHeight(int h) { y = h; }
int GetWidth() const { return x; }
int GetHeight() const { return y; }
int GetX() const { return x; }
int GetY() const { return y; }
};
class wxRealPoint
{
public:
double x;
double y;
wxRealPoint() { x = y = 0.0; };
wxRealPoint(double xx, double yy) { x = xx; y = yy; };
wxRealPoint operator+(const wxRealPoint& pt) const { return wxRealPoint(x + pt.x, y + pt.y); }
wxRealPoint operator-(const wxRealPoint& pt) const { return wxRealPoint(x - pt.x, y - pt.y); }
bool operator==(const wxRealPoint& pt) const { return x == pt.x && y == pt.y; }
};
class wxPoint
{
public:
int x, y;
wxPoint() { x = y = 0; };
wxPoint(int xx, int yy) { x = xx; y = yy; };
bool operator==(const wxPoint& p) const { return x == p.x && y == p.y; }
bool operator!=(const wxPoint& p) const { return !(*this == p); }
wxPoint operator+(const wxPoint& p) const { return wxPoint(x + p.x, y + p.y); }
wxPoint operator-(const wxPoint& p) const { return wxPoint(x - p.x, y - p.y); }
wxPoint& operator+=(const wxPoint& p) { x += p.x; y += p.y; return *this; }
wxPoint& operator-=(const wxPoint& p) { x -= p.x; y -= p.y; return *this; }
};
# 283 "../wxX11/include/wx/gdicmn.h"
class wxRect
{
public:
wxRect() { x = y = width = height = 0; }
wxRect(int xx, int yy, int ww, int hh)
{ x = xx; y = yy; width = ww; height = hh; }
wxRect(const wxPoint& topLeft, const wxPoint& bottomRight);
wxRect(const wxPoint& pos, const wxSize& size);
int GetX() const { return x; }
void SetX(int xx) { x = xx; }
int GetY() const { return y; }
void SetY(int yy) { y = yy; }
int GetWidth() const { return width; }
void SetWidth(int w) { width = w; }
int GetHeight() const { return height; }
void SetHeight(int h) { height = h; }
wxPoint GetPosition() const { return wxPoint(x, y); }
wxSize GetSize() const { return wxSize(width, height); }
int GetLeft() const { return x; }
int GetTop() const { return y; }
int GetBottom() const { return y + height - 1; }
int GetRight() const { return x + width - 1; }
void SetLeft(int left) { x = left; }
void SetRight(int right) { width = right - x + 1; }
void SetTop(int top) { y = top; }
void SetBottom(int bottom) { height = bottom - y + 1; }
wxRect& Inflate(wxCoord dx, wxCoord dy);
wxRect& Inflate(wxCoord d) { return Inflate(d, d); }
wxRect Inflate(wxCoord dx, wxCoord dy) const
{
wxRect r = *this;
r.Inflate(dx, dy);
return r;
}
wxRect& Deflate(wxCoord dx, wxCoord dy) { return Inflate(-dx, -dy); }
wxRect& Deflate(wxCoord d) { return Inflate(-d); }
wxRect Deflate(wxCoord dx, wxCoord dy) const
{
wxRect r = *this;
r.Deflate(dx, dy);
return r;
}
void Offset(wxCoord dx, wxCoord dy) { x += dx; y += dy; }
void Offset(const wxPoint& pt) { Offset(pt.x, pt.y); }
wxRect& Intersect(const wxRect& rect);
wxRect Intersect(const wxRect& rect) const
{
wxRect r = *this;
r.Intersect(rect);
return r;
}
wxRect operator+(const wxRect& rect) const;
wxRect& operator+=(const wxRect& rect);
bool operator==(const wxRect& rect) const;
bool operator!=(const wxRect& rect) const { return !(*this == rect); }
bool Inside(int x, int y) const;
bool Inside(const wxPoint& pt) const { return Inside(pt.x, pt.y); }
bool Intersects(const wxRect& rect) const;
public:
int x, y, width, height;
};
typedef char signed wxDash;
class wxPenList : public wxList
{
public: static wxClassInfo sm_classwxPenList; virtual wxClassInfo *GetClassInfo() const { return &wxPenList::sm_classwxPenList; }
public:
wxPenList() { }
~wxPenList();
void AddPen(wxPen *pen);
void RemovePen(wxPen *pen);
wxPen *FindOrCreatePen(const wxColour& colour, int width, int style);
};
class wxBrushList : public wxList
{
public: static wxClassInfo sm_classwxBrushList; virtual wxClassInfo *GetClassInfo() const { return &wxBrushList::sm_classwxBrushList; }
public:
wxBrushList() { }
~wxBrushList();
void AddBrush(wxBrush *brush);
void RemoveBrush(wxBrush *brush);
wxBrush *FindOrCreateBrush(const wxColour& colour, int style);
};
extern const char* wxEmptyString;
class wxFontList : public wxList
{
public: static wxClassInfo sm_classwxFontList; virtual wxClassInfo *GetClassInfo() const { return &wxFontList::sm_classwxFontList; }
public:
wxFontList() { }
~wxFontList();
void AddFont(wxFont *font);
void RemoveFont(wxFont *font);
wxFont *FindOrCreateFont(int pointSize, int family, int style, int weight,
bool underline = 0,
const wxString& face = wxEmptyString,
wxFontEncoding encoding = wxFONTENCODING_DEFAULT);
};
class wxColourDatabase : public wxList
{
public: static wxClassInfo sm_classwxColourDatabase; virtual wxClassInfo *GetClassInfo() const { return &wxColourDatabase::sm_classwxColourDatabase; }
public:
wxColourDatabase(int type);
~wxColourDatabase() ;
wxColour *FindColour(const wxString& colour) ;
wxString FindName(const wxColour& colour) const;
void Initialize();
};
class wxBitmapList : public wxList
{
public: static wxClassInfo sm_classwxBitmapList; virtual wxClassInfo *GetClassInfo() const { return &wxBitmapList::sm_classwxBitmapList; }
public:
wxBitmapList();
~wxBitmapList();
void AddBitmap(wxBitmap *bitmap);
void RemoveBitmap(wxBitmap *bitmap);
};
class wxResourceCache: public wxList
{
public:
wxResourceCache() { }
wxResourceCache(const unsigned int keyType) : wxList(keyType) { }
~wxResourceCache();
private:
public: static wxClassInfo sm_classwxResourceCache; virtual wxClassInfo *GetClassInfo() const { return &wxResourceCache::sm_classwxResourceCache; }
};
extern wxPenList* wxThePenList;
extern wxBrushList* wxTheBrushList;
extern wxFontList* wxTheFontList;
extern wxBitmapList* wxTheBitmapList;
extern wxFont* wxNORMAL_FONT;
extern wxFont* wxSMALL_FONT;
extern wxFont* wxITALIC_FONT;
extern wxFont* wxSWISS_FONT;
extern wxPen* wxRED_PEN;
extern wxPen* wxCYAN_PEN;
extern wxPen* wxGREEN_PEN;
extern wxPen* wxBLACK_PEN;
extern wxPen* wxWHITE_PEN;
extern wxPen* wxTRANSPARENT_PEN;
extern wxPen* wxBLACK_DASHED_PEN;
extern wxPen* wxGREY_PEN;
extern wxPen* wxMEDIUM_GREY_PEN;
extern wxPen* wxLIGHT_GREY_PEN;
extern wxBrush* wxBLUE_BRUSH;
extern wxBrush* wxGREEN_BRUSH;
extern wxBrush* wxWHITE_BRUSH;
extern wxBrush* wxBLACK_BRUSH;
extern wxBrush* wxGREY_BRUSH;
extern wxBrush* wxMEDIUM_GREY_BRUSH;
extern wxBrush* wxLIGHT_GREY_BRUSH;
extern wxBrush* wxTRANSPARENT_BRUSH;
extern wxBrush* wxCYAN_BRUSH;
extern wxBrush* wxRED_BRUSH;
extern wxColour* wxBLACK;
extern wxColour* wxWHITE;
extern wxColour* wxRED;
extern wxColour* wxBLUE;
extern wxColour* wxGREEN;
extern wxColour* wxCYAN;
extern wxColour* wxLIGHT_GREY;
extern wxBitmap wxNullBitmap;
extern wxIcon wxNullIcon;
extern wxCursor wxNullCursor;
extern wxPen wxNullPen;
extern wxBrush wxNullBrush;
extern wxPalette wxNullPalette;
extern wxFont wxNullFont;
extern wxColour wxNullColour;
extern wxCursor* wxSTANDARD_CURSOR;
extern wxCursor* wxHOURGLASS_CURSOR;
extern wxCursor* wxCROSS_CURSOR;
extern wxColourDatabase* wxTheColourDatabase;
extern const char* wxPanelNameStr;
extern const wxSize wxDefaultSize;
extern const wxPoint wxDefaultPosition;
extern wxList wxPendingDelete;
extern void wxInitializeStockObjects();
extern void wxInitializeStockLists();
extern void wxDeleteStockObjects();
extern void wxDeleteStockLists();
extern bool wxColourDisplay();
extern int wxDisplayDepth();
extern void wxDisplaySize(int *width, int *height);
extern wxSize wxGetDisplaySize();
extern void wxDisplaySizeMM(int *width, int *height);
extern wxSize wxGetDisplaySizeMM();
extern void wxClientDisplayRect(int *x, int *y, int *width, int *height);
extern wxRect wxGetClientDisplayRect();
extern void wxSetCursor(const wxCursor& cursor);
# 25 "../wxX11/include/wx/event.h" 2
# 1 "../wxX11/include/wx/cursor.h" 1
# 1 "../wxX11/include/wx/motif/cursor.h" 1
# 16 "../wxX11/include/wx/motif/cursor.h"
#pragma interface "cursor.h"
# 1 "../wxX11/include/wx/bitmap.h" 1
# 20 "../wxX11/include/wx/bitmap.h"
#pragma interface "bitmapbase.h"
# 1 "../wxX11/include/wx/defs.h" 1
# 24 "../wxX11/include/wx/bitmap.h" 2
# 1 "../wxX11/include/wx/object.h" 1
# 25 "../wxX11/include/wx/bitmap.h" 2
# 1 "../wxX11/include/wx/string.h" 1
# 26 "../wxX11/include/wx/bitmap.h" 2
# 1 "../wxX11/include/wx/gdiobj.h" 1
# 27 "../wxX11/include/wx/bitmap.h" 2
# 1 "../wxX11/include/wx/gdicmn.h" 1
# 28 "../wxX11/include/wx/bitmap.h" 2
class wxBitmap;
class wxBitmapHandler;
class wxImage;
class wxMask;
class wxPalette;
# 159 "../wxX11/include/wx/bitmap.h"
# 1 "../wxX11/include/wx/motif/bitmap.h" 1
# 16 "../wxX11/include/wx/motif/bitmap.h"
#pragma interface "bitmap.h"
# 1 "../wxX11/include/wx/gdiobj.h" 1
# 20 "../wxX11/include/wx/motif/bitmap.h" 2
# 1 "../wxX11/include/wx/gdicmn.h" 1
# 21 "../wxX11/include/wx/motif/bitmap.h" 2
# 1 "../wxX11/include/wx/palette.h" 1
# 1 "lib/wx/include/motif-2.3/wx/setup.h" 1
# 6 "../wxX11/include/wx/palette.h" 2
# 1 "../wxX11/include/wx/motif/palette.h" 1
# 16 "../wxX11/include/wx/motif/palette.h"
#pragma interface "palette.h"
# 1 "../wxX11/include/wx/gdiobj.h" 1
# 20 "../wxX11/include/wx/motif/palette.h" 2
# 1 "../wxX11/include/wx/list.h" 1
# 21 "../wxX11/include/wx/motif/palette.h" 2
class wxPalette;
class wxXPalette : public wxObject
{
public: static wxClassInfo sm_classwxXPalette; virtual wxClassInfo *GetClassInfo() const { return &wxXPalette::sm_classwxXPalette; }
public:
wxXPalette();
WXDisplay* m_display;
int m_pix_array_n;
unsigned long* m_pix_array;
WXColormap m_cmap;
bool m_destroyable;
};
class wxPaletteRefData: public wxGDIRefData
{
friend class wxPalette;
public:
wxPaletteRefData();
~wxPaletteRefData();
protected:
wxList m_palettes;
};
class wxPalette: public wxGDIObject
{
public: static wxClassInfo sm_classwxPalette; virtual wxClassInfo *GetClassInfo() const { return &wxPalette::sm_classwxPalette; }
public:
wxPalette();
wxPalette(const wxPalette& palette) { Ref(palette); }
wxPalette(int n, const unsigned char *red, const unsigned char *green, const unsigned char *blue);
~wxPalette();
bool Create(int n, const unsigned char *red, const unsigned char *green, const unsigned char *blue);
int GetPixel(const unsigned char red, const unsigned char green, const unsigned char blue) const;
bool GetRGB(int pixel, unsigned char *red, unsigned char *green, unsigned char *blue) const;
virtual bool Ok() const { return (m_refData != __null) ; }
wxPalette& operator = (const wxPalette& palette) { if (*this == palette) return (*this); Ref(palette); return *this; }
bool operator == (const wxPalette& palette) const { return m_refData == palette.m_refData; }
bool operator != (const wxPalette& palette) const { return m_refData != palette.m_refData; }
WXColormap GetXColormap(WXDisplay* display = __null) const;
bool TransferBitmap(void *data, int depth, int size);
bool TransferBitmap8(unsigned char *data, unsigned long size, void *dest, unsigned int bpp);
unsigned long *GetXPixArray(WXDisplay* display, int *pix_array_n);
void PutXColormap(WXDisplay* display, WXColormap cmap, bool destroyable);
};
# 13 "../wxX11/include/wx/palette.h" 2
# 22 "../wxX11/include/wx/motif/bitmap.h" 2
class wxDC;
class wxControl;
class wxBitmap;
class wxBitmapHandler;
class wxIcon;
class wxCursor;
class wxImage;
class wxMask: public wxObject
{
public: static wxClassInfo sm_classwxMask; virtual wxClassInfo *GetClassInfo() const { return &wxMask::sm_classwxMask; }
public:
wxMask();
wxMask(const wxBitmap& bitmap, const wxColour& colour);
wxMask(const wxBitmap& bitmap, int paletteIndex);
wxMask(const wxBitmap& bitmap);
~wxMask();
bool Create(const wxBitmap& bitmap, const wxColour& colour);
bool Create(const wxBitmap& bitmap, int paletteIndex);
bool Create(const wxBitmap& bitmap);
WXPixmap GetPixmap() const { return m_pixmap; }
void SetPixmap(WXPixmap pixmap) { m_pixmap = pixmap; }
protected:
WXPixmap m_pixmap;
};
class wxBitmapRefData: public wxGDIRefData
{
friend class wxBitmap;
friend class wxIcon;
friend class wxCursor;
public:
wxBitmapRefData();
~wxBitmapRefData();
public:
int m_width;
int m_height;
int m_depth;
bool m_ok;
int m_numColors;
wxPalette m_bitmapPalette;
int m_quality;
wxMask * m_bitmapMask;
public:
WXPixmap m_pixmap;
WXDisplay* m_display;
bool m_freePixmap;
unsigned long* m_freeColors;
long m_freeColorsCount;
WXPixmap m_insensPixmap ;
WXPixmap m_labelPixmap ;
WXPixmap m_armPixmap ;
WXImage* m_image ;
WXImage* m_insensImage ;
};
class wxBitmapHandler: public wxObject
{
public: static wxClassInfo sm_classwxBitmapHandler; virtual wxClassInfo *GetClassInfo() const { return &wxBitmapHandler::sm_classwxBitmapHandler; }
public:
wxBitmapHandler() { m_name = ""; m_extension = ""; m_type = 0; };
virtual bool Create(wxBitmap *bitmap, void *data, long flags, int width, int height, int depth = 1);
virtual bool LoadFile(wxBitmap *bitmap, const wxString& name, long flags,
int desiredWidth, int desiredHeight);
virtual bool SaveFile(wxBitmap *bitmap, const wxString& name, int type, const wxPalette *palette = __null);
void SetName(const wxString& name) { m_name = name; }
void SetExtension(const wxString& ext) { m_extension = ext; }
void SetType(long type) { m_type = type; }
wxString GetName() const { return m_name; }
wxString GetExtension() const { return m_extension; }
long GetType() const { return m_type; }
protected:
wxString m_name;
wxString m_extension;
long m_type;
};
class wxBitmap: public wxGDIObject
{
public: static wxClassInfo sm_classwxBitmap; virtual wxClassInfo *GetClassInfo() const { return &wxBitmap::sm_classwxBitmap; }
friend class wxBitmapHandler;
public:
wxBitmap();
wxBitmap(const wxBitmap& bitmap)
{ Ref(bitmap); }
wxBitmap(const char bits[], int width, int height, int depth = 1);
wxBitmap(const char **data) { (void)CreateFromXpm(data); }
wxBitmap(char **data) { (void)CreateFromXpm((const char **)data); }
wxBitmap(char **data, wxControl* control);
wxBitmap(const wxString& name, long type = wxBITMAP_TYPE_XPM);
wxBitmap(void *data, long type, int width, int height, int depth = 1);
wxBitmap(int width, int height, int depth = -1);
wxBitmap(const wxImage& image, int depth = -1) { (void)CreateFromImage(image, depth); }
~wxBitmap();
virtual bool Create(int width, int height, int depth = -1);
virtual bool Create(void *data, long type, int width, int height, int depth = 1);
wxBitmap GetSubBitmap( const wxRect& rect ) const;
virtual bool LoadFile(const wxString& name, long type = wxBITMAP_TYPE_XPM);
virtual bool SaveFile(const wxString& name, int type, const wxPalette *cmap = __null);
wxImage ConvertToImage() const;
bool Ok() const { return (((wxBitmapRefData *)m_refData) && ((wxBitmapRefData *)m_refData)->m_ok); }
int GetWidth() const { return (((wxBitmapRefData *)m_refData) ? ((wxBitmapRefData *)m_refData)->m_width : 0); }
int GetHeight() const { return (((wxBitmapRefData *)m_refData) ? ((wxBitmapRefData *)m_refData)->m_height : 0); }
int GetDepth() const { return (((wxBitmapRefData *)m_refData) ? ((wxBitmapRefData *)m_refData)->m_depth : 0); }
int GetQuality() const { return (((wxBitmapRefData *)m_refData) ? ((wxBitmapRefData *)m_refData)->m_quality : 0); }
void SetWidth(int w);
void SetHeight(int h);
void SetDepth(int d);
void SetQuality(int q);
void SetOk(bool isOk);
wxPalette* GetPalette() const { return (((wxBitmapRefData *)m_refData) ? (& ((wxBitmapRefData *)m_refData)->m_bitmapPalette) : (wxPalette*) __null); }
void SetPalette(const wxPalette& palette);
wxMask *GetMask() const { return (((wxBitmapRefData *)m_refData) ? ((wxBitmapRefData *)m_refData)->m_bitmapMask : (wxMask*) __null); }
void SetMask(wxMask *mask) ;
wxBitmap& operator = (const wxBitmap& bitmap) { if (*this == bitmap) return (*this); Ref(bitmap); return *this; }
bool operator == (const wxBitmap& bitmap) const { return m_refData == bitmap.m_refData; }
bool operator != (const wxBitmap& bitmap) const { return m_refData != bitmap.m_refData; }
static wxList& GetHandlers() { return sm_handlers; }
static void AddHandler(wxBitmapHandler *handler);
static void InsertHandler(wxBitmapHandler *handler);
static bool RemoveHandler(const wxString& name);
static wxBitmapHandler *FindHandler(const wxString& name);
static wxBitmapHandler *FindHandler(const wxString& extension, long bitmapType);
static wxBitmapHandler *FindHandler(long bitmapType);
static void InitStandardHandlers();
static void CleanUpHandlers();
public:
WXDisplay* GetDisplay() const { return ((wxBitmapRefData *)m_refData)->m_display; }
WXPixmap GetPixmap() const { return (WXPixmap) ((wxBitmapRefData *)m_refData)->m_pixmap; }
virtual WXPixmap GetLabelPixmap(WXWidget w) ;
virtual WXPixmap GetArmPixmap(WXWidget w) ;
virtual WXPixmap GetInsensPixmap(WXWidget w = (WXWidget) 0) ;
void SetPixmapNull() { ((wxBitmapRefData *)m_refData)->m_pixmap = 0; }
protected:
static wxList sm_handlers;
protected:
bool CreateFromXpm(const char **bits);
bool CreateFromImage(const wxImage& image, int depth);
};
wxBitmap wxCreateMaskedBitmap(const wxBitmap& bitmap, wxColour& colour);
# 160 "../wxX11/include/wx/bitmap.h" 2
# 20 "../wxX11/include/wx/motif/cursor.h" 2
class wxXCursor : public wxObject
{
public: static wxClassInfo sm_classwxXCursor; virtual wxClassInfo *GetClassInfo() const { return &wxXCursor::sm_classwxXCursor; }
public:
WXDisplay* m_display;
WXCursor m_cursor;
};
class wxCursorRefData: public wxBitmapRefData
{
friend class wxBitmap;
friend class wxCursor;
public:
wxCursorRefData();
~wxCursorRefData();
wxList m_cursors;
wxStockCursor m_cursorId;
};
class wxCursor: public wxBitmap
{
public: static wxClassInfo sm_classwxCursor; virtual wxClassInfo *GetClassInfo() const { return &wxCursor::sm_classwxCursor; }
public:
wxCursor();
wxCursor(const wxCursor& cursor) { Ref(cursor); }
wxCursor(const char bits[], int width, int height, int hotSpotX = -1, int hotSpotY = -1,
const char maskBits[] = __null);
wxCursor(const wxString& name, long flags = wxBITMAP_TYPE_XBM,
int hotSpotX = 0, int hotSpotY = 0);
wxCursor(wxStockCursor id);
~wxCursor();
virtual bool Ok() const { return ((m_refData != __null) && ((wxCursorRefData *)m_refData)->m_ok); }
wxCursor& operator = (const wxCursor& cursor) { if (*this == cursor) return (*this); Ref(cursor); return *this; }
bool operator == (const wxCursor& cursor) const { return m_refData == cursor.m_refData; }
bool operator != (const wxCursor& cursor) const { return m_refData != cursor.m_refData; }
WXCursor GetXCursor(WXDisplay* display) ;
WXCursor MakeCursor(WXDisplay* display, wxStockCursor id);
};
extern void wxSetCursor(const wxCursor& cursor);
# 8 "../wxX11/include/wx/cursor.h" 2
# 22 "../wxX11/include/wx/cursor.h"
# 1 "../wxX11/include/wx/utils.h" 1
# 20 "../wxX11/include/wx/utils.h"
#pragma interface "utils.h"
# 1 "../wxX11/include/wx/object.h" 1
# 24 "../wxX11/include/wx/utils.h" 2
# 1 "../wxX11/include/wx/list.h" 1
# 25 "../wxX11/include/wx/utils.h" 2
# 1 "../wxX11/include/wx/filefn.h" 1
# 16 "../wxX11/include/wx/filefn.h"
#pragma interface "filefn.h"
# 1 "../wxX11/include/wx/list.h" 1
# 20 "../wxX11/include/wx/filefn.h" 2
# 1 "/usr/include/time.h" 1 3 4
# 22 "../wxX11/include/wx/filefn.h" 2
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 1 3 4
# 30 "../wxX11/include/wx/filefn.h" 2
# 51 "../wxX11/include/wx/filefn.h"
const off_t wxInvalidOffset = (off_t)-1;
enum wxSeekMode
{
wxFromStart,
wxFromCurrent,
wxFromEnd
};
extern const char* wxEmptyString;
# 146 "../wxX11/include/wx/filefn.h"
bool wxFileExists(const wxString& filename);
bool wxPathExists(const char *pszPathName);
bool wxIsAbsolutePath(const wxString& filename);
char* wxFileNameFromPath(char *path);
wxString wxFileNameFromPath(const wxString& path);
wxString wxPathOnly(const wxString& path);
wxString wxRealPath(const wxString& path);
void wxDos2UnixFilename(char *s);
void wxUnix2DosFilename(char *s);
void wxStripExtension(char *buffer);
void wxStripExtension(wxString& buffer);
char* wxGetTempFileName(const wxString& prefix, char *buf = (char *) __null);
bool wxGetTempFileName(const wxString& prefix, wxString& buf);
char* wxExpandPath(char *dest, const char *path);
bool wxExpandPath(wxString& dest, const char *path);
char* wxContractPath(const wxString& filename,
const wxString& envname = wxEmptyString,
const wxString& user = wxEmptyString);
char* wxRealPath(char *path);
char* wxCopyAbsolutePath(const wxString& path);
wxString wxFindFirstFile(const char *spec, int flags = 1);
wxString wxFindNextFile();
bool wxIsWild(const wxString& pattern);
bool wxMatchWild(const wxString& pattern, const wxString& text, bool dot_special = 1);
bool wxConcatFiles(const wxString& file1, const wxString& file2, const wxString& file3);
bool wxCopyFile(const wxString& file1, const wxString& file2,
bool overwrite = 1);
bool wxRemoveFile(const wxString& file);
bool wxRenameFile(const wxString& file1, const wxString& file2);
char* wxGetWorkingDirectory(char *buf = (char *) __null, int sz = 1000);
wxString wxGetCwd();
bool wxSetWorkingDirectory(const wxString& d);
bool wxMkdir(const wxString& dir, int perm = 0777);
bool wxRmdir(const wxString& dir, int flags = 0);
# 296 "../wxX11/include/wx/filefn.h"
inline bool wxIsPathSeparator(char c)
{
return c == '/';
}
bool wxEndsWithPathSeparator(const char *pszFileName);
void wxSplitPath(const char *pszFileName,
wxString *pstrPath,
wxString *pstrName,
wxString *pstrExt);
bool wxFindFileInPath(wxString *pStr, const char *pszPath, const char *pszFile);
wxString wxGetOSDirectory();
time_t wxFileModificationTime(const wxString& filename);
class wxPathList : public wxStringList
{
public:
void AddEnvList(const wxString& envVariable);
void Add(const wxString& path);
wxNode *Add(const char *s) { return wxStringList::Add(s); }
wxString FindValidPath(const wxString& filename);
wxString FindAbsoluteValidPath(const wxString& filename);
void EnsureFileAccessible(const wxString& path);
bool Member(const wxString& path);
private:
public: static wxClassInfo sm_classwxPathList; virtual wxClassInfo *GetClassInfo() const { return &wxPathList::sm_classwxPathList; }
};
# 26 "../wxX11/include/wx/utils.h" 2
# 1 "../wxX11/include/wx/longlong.h" 1
# 30 "../wxX11/include/wx/utils.h" 2
# 1 "/usr/include/dirent.h" 1 3 4
# 35 "/usr/include/dirent.h" 3 4
# 1 "/usr/include/sys/dir.h" 1 3 4
# 54 "/usr/include/sys/dir.h" 3 4
# 1 "/usr/include/standards.h" 1 3 4
# 55 "/usr/include/sys/dir.h" 2 3 4
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/sys/types.h" 1 3 4
# 57 "/usr/include/sys/dir.h" 2 3 4
extern "C" {
# 76 "/usr/include/sys/dir.h" 3 4
struct dirent {
uint32long64_t d_offset;
ino_t d_ino;
ushort_t d_reclen;
ushort_t d_namlen;
char d_name[255 +1];
};
# 104 "/usr/include/sys/dir.h" 3 4
typedef struct _dirdesc {
int dd_fd;
blksize_t dd_blksize;
char *dd_buf;
long dd_size;
long dd_flag;
off_t dd_loc;
off_t dd_curoff;
# 128 "/usr/include/sys/dir.h" 3 4
} DIR;
# 142 "/usr/include/sys/dir.h" 3 4
extern DIR *opendir(const char *);
extern struct dirent *readdir(DIR *);
extern int readdir_r(DIR *, struct dirent *, struct dirent **);
extern int closedir(DIR *);
extern void rewinddir(DIR *);
# 173 "/usr/include/sys/dir.h" 3 4
extern void seekdir(DIR *, long);
extern long telldir(DIR *);
# 195 "/usr/include/sys/dir.h" 3 4
extern int scandir(const char *, struct dirent ***,
int (*)(struct dirent *),
int (*)(void *, void *));
extern int alphasort(void *, void *);
# 1 "/usr/include/sys/lkup.h" 1 3 4
# 204 "/usr/include/sys/dir.h" 2 3 4
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/limits.h" 1 3 4
# 208 "/usr/include/sys/dir.h" 2 3 4
# 276 "/usr/include/sys/dir.h" 3 4
struct direct {
ushort_t d_ino;
char d_name[14];
};
# 295 "/usr/include/sys/dir.h" 3 4
}
# 36 "/usr/include/dirent.h" 2 3 4
# 33 "../wxX11/include/wx/utils.h" 2
# 1 "/usr/include/unistd.h" 1 3 4
# 42 "/usr/include/unistd.h" 3 4
extern "C" {
# 54 "/usr/include/unistd.h" 3 4
# 1 "/usr/include/sys/access.h" 1 3 4
# 35 "/usr/include/sys/access.h" 3 4
# 1 "/usr/include/standards.h" 1 3 4
# 36 "/usr/include/sys/access.h" 2 3 4
# 86 "/usr/include/sys/access.h" 3 4
extern char *acl_get(char *);
extern char *acl_fget(int);
extern int acl_chg(char *, int, int, int);
extern int acl_fchg(int, int, int, int);
extern int acl_put(char *, char *, int);
extern int acl_fput(int, char *, int);
extern int acl_set(char *, int, int, int);
extern int acl_fset(int, int, int, int);
extern int accessx(char *, int, int);
# 55 "/usr/include/unistd.h" 2 3 4
# 134 "/usr/include/unistd.h" 3 4
extern int access(const char *, int);
extern unsigned int alarm(unsigned int);
extern int chdir(const char *);
extern int chown(const char *, uid_t, gid_t);
extern int close(int);
extern char *ctermid(char *);
extern int dup(int);
extern int dup2(int, int);
extern int execl(const char *, const char *, ...);
extern int execv(const char *, char *const []);
extern int execle(const char *, const char *, ...);
extern int execve(const char *, char *const [], char *const []);
extern int execlp(const char *, const char *, ...);
extern int execvp(const char *, char *const []);
extern void _exit(int);
extern pid_t fork(void);
extern long fpathconf(int, int);
extern char *getcwd(char *, size_t);
extern gid_t getegid(void);
extern uid_t geteuid(void);
extern gid_t getgid(void);
extern int getgroups(int, gid_t []);
extern char *getlogin(void);
extern pid_t getpgrp(void);
extern pid_t getpid(void);
extern pid_t getppid(void);
extern uid_t getuid(void);
extern int isatty(int);
extern int link(const char *, const char *);
extern off_t lseek(int, off_t, int);
extern off64_t lseek64(int, off64_t, int);
extern long pathconf(const char *, int);
extern int pause(void);
extern int pipe(int []);
extern int pthread_atfork(void (*)(void), void (*)(void), void (*)(void));
extern ssize_t read(int, void *, size_t);
extern int rmdir(const char *);
extern int setgid(gid_t);
extern int setpgid(pid_t, pid_t);
extern pid_t setsid(void);
extern int setuid(uid_t);
extern unsigned int sleep(unsigned int);
extern long sysconf(int);
extern pid_t tcgetpgrp(int);
extern int tcsetpgrp(int, pid_t);
extern char *ttyname(int);
extern int unlink(const char *);
extern ssize_t write(int, const void *, size_t);
# 236 "/usr/include/unistd.h" 3 4
extern char *optarg;
extern int optind, opterr, optopt;
# 251 "/usr/include/unistd.h" 3 4
extern size_t confstr(int, char*, size_t);
extern char *crypt(const char *, const char *);
extern void encrypt(char *, int);
extern int fsync(int);
extern int getopt(int, char* const*, const char*);
extern int nice(int);
extern void swab(const void *, void *, ssize_t);
extern int chroot(const char *);
extern char *cuserid(char *);
extern char *getpass(const char *);
# 543 "/usr/include/unistd.h" 3 4
# 1 "/usr/include/sys/lockf.h" 1 3 4
# 38 "/usr/include/sys/lockf.h" 3 4
extern "C" {
# 1 "/usr/include/sys/stat.h" 1 3 4
# 42 "/usr/include/sys/stat.h" 3 4
extern "C" {
# 1 "/usr/include/sys/mode.h" 1 3 4
# 41 "/usr/include/sys/mode.h" 3 4
# 1 "/usr/include/standards.h" 1 3 4
# 42 "/usr/include/sys/mode.h" 2 3 4
# 49 "/usr/include/sys/stat.h" 2 3 4
# 61 "/usr/include/sys/stat.h" 3 4
struct stat
{
dev_t st_dev;
ino_t st_ino;
mode_t st_mode;
nlink_t st_nlink;
ushort_t st_flag;
uid_t st_uid;
gid_t st_gid;
dev_t st_rdev;
off_t st_size;
time_t st_atime;
int st_spare1;
time_t st_mtime;
int st_spare2;
time_t st_ctime;
int st_spare3;
blksize_t st_blksize;
blkcnt_t st_blocks;
int st_vfstype;
uint_t st_vfs;
uint_t st_type;
uint_t st_gen;
uint_t st_reserved[9];
# 124 "/usr/include/sys/stat.h" 3 4
};
# 183 "/usr/include/sys/stat.h" 3 4
struct stat64
{
dev_t st_dev;
ino_t st_ino;
mode_t st_mode;
nlink_t st_nlink;
ushort_t st_flag;
uid_t st_uid;
gid_t st_gid;
dev_t st_rdev;
soff_t st_ssize;
time_t st_atime;
int st_spare1;
time_t st_mtime;
int st_spare2;
time_t st_ctime;
int st_spare3;
blksize_t st_blksize;
blkcnt_t st_blocks;
int st_vfstype;
uint_t st_vfs;
uint_t st_type;
uint_t st_gen;
uint_t st_reserved[10];
off64_t st_size;
};
# 236 "/usr/include/sys/stat.h" 3 4
extern mode_t umask(mode_t);
# 264 "/usr/include/sys/stat.h" 3 4
extern int mkdir(const char *, mode_t);
extern int stat(const char *, struct stat *);
extern int fstat(int, struct stat *);
extern int stat64(const char *, struct stat64 *);
extern int fstat64(int, struct stat64 *);
extern int chmod(const char *, mode_t);
extern int fchmod(int, mode_t);
extern int lstat(const char *, struct stat *);
extern int lstat64(const char *, struct stat64 *);
extern int mknod(const char *, mode_t, dev_t);
extern int mkfifo(const char *, mode_t);
# 329 "/usr/include/sys/stat.h" 3 4
}
# 46 "/usr/include/sys/lockf.h" 2 3 4
# 62 "/usr/include/sys/lockf.h" 3 4
extern int lockf (int, int, off_t);
extern int lockf64 (int, int, off64_t);
}
# 544 "/usr/include/unistd.h" 2 3 4
# 571 "/usr/include/unistd.h" 3 4
extern int brk(void *);
extern int fchdir(int);
extern int fchown(int, uid_t, gid_t);
extern int ftruncate(int, off_t);
extern int ftruncate64(int, off64_t);
extern int getdtablesize(void);
extern int gethostname(char *, size_t);
extern long gethostid(void);
extern int getpagesize(void);
extern pid_t getpgid(pid_t);
extern pid_t getsid(pid_t);
extern char *getwd(char *);
extern int lchown(const char *, uid_t, gid_t);
extern int readlink(const char *, char *, size_t);
extern void *sbrk(intptr_t);
extern pid_t setpgrp(void);
extern int setregid(gid_t, gid_t);
extern int setreuid(uid_t, uid_t);
extern int symlink(const char *, const char *);
extern void sync(void);
extern int truncate(const char *, off_t);
extern int truncate64(const char *, off64_t);
extern useconds_t ualarm(useconds_t, useconds_t);
extern int usleep(useconds_t);
extern pid_t vfork(void);
extern int getlogin_r(char *, size_t);
extern int ttyname_r(int, char *, size_t);
extern ssize_t pread(int, void *, size_t, off_t);
extern ssize_t pwrite(int, const void *, size_t, off_t);
extern ssize_t pread64(int, void *, size_t, off64_t);
extern ssize_t pwrite64(int, const void *, size_t, off64_t);
# 631 "/usr/include/unistd.h" 3 4
extern char **environ;
extern pid_t f_fork();
# 655 "/usr/include/unistd.h" 3 4
extern int ioctl(int, int, ...);
extern int setgroups(int, gid_t []);
extern int readx(int, char*, unsigned, long);
extern int writex(int, char*, unsigned, long);
extern off_t fclear(int, off_t);
extern int fsync_range(int, int, off_t, off_t);
extern off64_t fclear64(int, off64_t);
extern int fsync_range64(int, int, off64_t, off64_t);
extern offset_t llseek(int, offset_t, int);
extern char * getusershell(void);
extern void setusershell(void);
extern void endusershell(void);
extern char * get_current_dir_name(void);
extern int sysfs(int, ...);
extern int fdatasync(int);
extern int finfo(const char *, int, void *, int32long64_t);
extern int ffinfo(int, int, void *, int32long64_t);
# 696 "/usr/include/unistd.h" 3 4
}
# 34 "../wxX11/include/wx/utils.h" 2
# 1 "/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.3.0/3.0.4/include/stdio.h" 1 3 4
# 37 "../wxX11/include/wx/utils.h" 2
class wxProcess;
class wxFrame;
class wxWindow;
class wxWindowList;
class wxPoint;
# 66 "../wxX11/include/wx/utils.h"
char* copystring(const char *s);
bool StringMatch(const char *one, const char *two, bool subString = 1, bool exact = 0);
# 79 "../wxX11/include/wx/utils.h"
void wxBell();
wxString wxGetOsDescription();
int wxGetOsVersion(int *majorVsn = (int *) __null,
int *minorVsn = (int *) __null);
wxString wxNow();
const char *wxGetInstallPrefix();
wxString wxGetDataDir();
bool wxSetDetectableAutoRepeat( bool flag );
long wxNewId();
void wxRegisterId(long id);
long wxGetCurrentId();
extern const char* wxFloatToStringStr;
extern const char* wxDoubleToStringStr;
void StringToFloat(const char *s, float *number);
char* FloatToString(float number, const char *fmt = wxFloatToStringStr);
void StringToDouble(const char *s, double *number);
char* DoubleToString(double number, const char *fmt = wxDoubleToStringStr);
void StringToInt(const char *s, int *number);
void StringToLong(const char *s, long *number);
char* IntToString(int number);
char* LongToString(long number);
int wxHexToDec(const wxString& buf);
void wxDecToHex(int dec, char *buf);
wxString wxDecToHex(int dec);
long wxExecute(char **argv, bool sync = 0,
wxProcess *process = (wxProcess *) __null);
long wxExecute(const wxString& command, bool sync = 0,
wxProcess *process = (wxProcess *) __null);
long wxExecute(const wxString& command,
wxArrayString& output);
long wxExecute(const wxString& command,
wxArrayString& output,
wxArrayString& error);
enum wxSignal
{
wxSIGNONE = 0,
wxSIGHUP,
wxSIGINT,
wxSIGQUIT,
wxSIGILL,
wxSIGTRAP,
wxSIGABRT,
wxSIGIOT = wxSIGABRT,
wxSIGEMT,
wxSIGFPE,
wxSIGKILL,
wxSIGBUS,
wxSIGSEGV,
wxSIGSYS,
wxSIGPIPE,
wxSIGALRM,
wxSIGTERM
};
enum wxKillError
{
wxKILL_OK,
wxKILL_BAD_SIGNAL,
wxKILL_ACCESS_DENIED,
wxKILL_NO_PROCESS,
wxKILL_ERROR
};
int wxKill(long pid,
wxSignal sig = wxSIGTERM,
wxKillError *rc = __null);
bool wxShell(const wxString& command = wxEmptyString);
bool wxShell(const wxString& command, wxArrayString& output);
void wxSleep(int nSecs);
void wxUsleep(unsigned long milliseconds);
long wxGetFreeMemory();
bool wxHandleFatalExceptions(bool doit = 1);
bool wxGetEnv(const wxString& var, wxString *value);
bool wxSetEnv(const wxString& var, const char *value);
inline bool wxUnsetEnv(const wxString& var) { return wxSetEnv(var, __null); }
# 247 "../wxX11/include/wx/utils.h"
bool wxGetEmailAddress(char *buf, int maxSize);
wxString wxGetEmailAddress();
bool wxGetHostName(char *buf, int maxSize);
wxString wxGetHostName();
wxString wxGetFullHostName();
bool wxGetFullHostName(char *buf, int maxSize);
bool wxGetUserId(char *buf, int maxSize);
wxString wxGetUserId();
bool wxGetUserName(char *buf, int maxSize);
wxString wxGetUserName();
wxString wxGetHomeDir();
const char* wxGetHomeDir(wxString *pstr);
char* wxGetUserHome(const wxString& user = wxEmptyString);
bool wxGetDiskSpace(const wxString& path,
wxLongLong *pTotal = __null,
wxLongLong *pFree = __null);
char* wxStripMenuCodes(const char *in, char *out = (char *) __null);
wxString wxStripMenuCodes(const wxString& str);
class wxAcceleratorEntry;
wxAcceleratorEntry *wxGetAccelFromString(const wxString& label);
# 304 "../wxX11/include/wx/utils.h"
wxWindow* wxFindWindowByLabel(const wxString& title, wxWindow *parent = (wxWindow *) __null);
wxWindow* wxFindWindowByName(const wxString& name, wxWindow *parent = (wxWindow *) __null);
int wxFindMenuItemId(wxFrame *frame, const wxString& menuString, const wxString& itemString);
wxWindow* wxGenericFindWindowAtPoint(const wxPoint& pt);
wxWindow* wxFindWindowAtPoint(const wxPoint& pt);
bool wxYield();
bool wxYieldIfNeeded();
bool wxSafeYield(wxWindow *win = __null);
void wxEnableTopLevelWindows(bool enable = 1);
bool wxCheckForInterrupt(wxWindow *wnd);
void wxFlushEvents();
class wxWindowDisabler
{
public:
wxWindowDisabler(wxWindow *winToSkip = (wxWindow *)__null);
~wxWindowDisabler();
private:
wxWindowList *m_winDisabled;
};
class wxCursor;
extern wxCursor* wxHOURGLASS_CURSOR;
void wxBeginBusyCursor(wxCursor *cursor = wxHOURGLASS_CURSOR);
void wxEndBusyCursor();
bool wxIsBusy();
class wxBusyCursor
{
public:
wxBusyCursor(wxCursor* cursor = wxHOURGLASS_CURSOR)
{ wxBeginBusyCursor(cursor); }
~wxBusyCursor()
{ wxEndBusyCursor(); }
static const wxCursor &GetStoredCursor();
static const wxCursor GetBusyCursor();
};
bool wxWriteResource(const wxString& section, const wxString& entry, const wxString& value, const wxString& file = wxEmptyString);
bool wxWriteResource(const wxString& section, const wxString& entry, float value, const wxString& file = wxEmptyString);
bool wxWriteResource(const wxString& section, const wxString& entry, long value, const wxString& file = wxEmptyString);
bool wxWriteResource(const wxString& section, const wxString& entry, int value, const wxString& file = wxEmptyString);
bool wxGetResource(const wxString& section, const wxString& entry, char **value, const wxString& file = wxEmptyString);
bool wxGetResource(const wxString& section, const wxString& entry, float *value, const wxString& file = wxEmptyString);
bool wxGetResource(const wxString& section, const wxString& entry, long *value, const wxString& file = wxEmptyString);
bool wxGetResource(const wxString& section, const wxString& entry, int *value, const wxString& file = wxEmptyString);
void wxGetMousePosition( int* x, int* y );
# 420 "../wxX11/include/wx/utils.h"
WXDisplay *wxGetDisplay();
bool wxSetDisplay(const wxString& display_name);
wxString wxGetDisplayName();
# 448 "../wxX11/include/wx/utils.h"
void wxDebugMsg(const char *fmt ...);
extern const char* wxInternalErrorStr;
void wxError(const wxString& msg, const wxString& title = wxInternalErrorStr);
extern const char* wxFatalErrorStr;
void wxFatalError(const wxString& msg, const wxString& title = wxFatalErrorStr);
# 23 "../wxX11/include/wx/cursor.h" 2
# 41 "../wxX11/include/wx/cursor.h"
class wxBusyCursorSuspender
{
public:
wxBusyCursorSuspender()
{
if( wxIsBusy() )
{
wxSetCursor( wxBusyCursor::GetStoredCursor() );
}
}
~wxBusyCursorSuspender()
{
if( wxIsBusy() )
{
wxSetCursor( wxBusyCursor::GetBusyCursor() );
}
}
};
# 26 "../wxX11/include/wx/event.h" 2
# 1 "../wxX11/include/wx/thread.h" 1
# 29 "../wxX11/include/wx/event.h" 2
class wxList;
class wxDC;
class wxMenu;
class wxWindow;
typedef int wxEventType;
# 96 "../wxX11/include/wx/event.h"
extern wxEventType wxNewEventType();
# 109 "../wxX11/include/wx/event.h"
extern const wxEventType wxEVT_NULL;;
const wxEventType wxEVT_FIRST = 10000;
const wxEventType wxEVT_USER_FIRST = wxEVT_FIRST + 2000;
extern const wxEventType wxEVT_COMMAND_BUTTON_CLICKED;
extern const wxEventType wxEVT_COMMAND_CHECKBOX_CLICKED;
extern const wxEventType wxEVT_COMMAND_CHOICE_SELECTED;
extern const wxEventType wxEVT_COMMAND_LISTBOX_SELECTED;
extern const wxEventType wxEVT_COMMAND_LISTBOX_DOUBLECLICKED;
extern const wxEventType wxEVT_COMMAND_CHECKLISTBOX_TOGGLED;
extern const wxEventType wxEVT_COMMAND_MENU_SELECTED;
extern const wxEventType wxEVT_COMMAND_SLIDER_UPDATED;
extern const wxEventType wxEVT_COMMAND_RADIOBOX_SELECTED;
extern const wxEventType wxEVT_COMMAND_RADIOBUTTON_SELECTED;
extern const wxEventType wxEVT_COMMAND_SCROLLBAR_UPDATED;
extern const wxEventType wxEVT_COMMAND_VLBOX_SELECTED;
extern const wxEventType wxEVT_COMMAND_COMBOBOX_SELECTED;
extern const wxEventType wxEVT_COMMAND_TOOL_RCLICKED;
extern const wxEventType wxEVT_COMMAND_TOOL_ENTER;
extern const wxEventType wxEVT_COMMAND_SPINCTRL_UPDATED;
extern const wxEventType wxEVT_SOCKET;
extern const wxEventType wxEVT_TIMER;
extern const wxEventType wxEVT_LEFT_DOWN;
extern const wxEventType wxEVT_LEFT_UP;
extern const wxEventType wxEVT_MIDDLE_DOWN;
extern const wxEventType wxEVT_MIDDLE_UP;
extern const wxEventType wxEVT_RIGHT_DOWN;
extern const wxEventType wxEVT_RIGHT_UP;
extern const wxEventType wxEVT_MOTION;
extern const wxEventType wxEVT_ENTER_WINDOW;
extern const wxEventType wxEVT_LEAVE_WINDOW;
extern const wxEventType wxEVT_LEFT_DCLICK;
extern const wxEventType wxEVT_MIDDLE_DCLICK;
extern const wxEventType wxEVT_RIGHT_DCLICK;
extern const wxEventType wxEVT_SET_FOCUS;
extern const wxEventType wxEVT_KILL_FOCUS;
extern const wxEventType wxEVT_CHILD_FOCUS;
extern const wxEventType wxEVT_MOUSEWHEEL;
extern const wxEventType wxEVT_NC_LEFT_DOWN;
extern const wxEventType wxEVT_NC_LEFT_UP;
extern const wxEventType wxEVT_NC_MIDDLE_DOWN;
extern const wxEventType wxEVT_NC_MIDDLE_UP;
extern const wxEventType wxEVT_NC_RIGHT_DOWN;
extern const wxEventType wxEVT_NC_RIGHT_UP;
extern const wxEventType wxEVT_NC_MOTION;
extern const wxEventType wxEVT_NC_ENTER_WINDOW;
extern const wxEventType wxEVT_NC_LEAVE_WINDOW;
extern const wxEventType wxEVT_NC_LEFT_DCLICK;
extern const wxEventType wxEVT_NC_MIDDLE_DCLICK;
extern const wxEventType wxEVT_NC_RIGHT_DCLICK;
extern const wxEventType wxEVT_CHAR;
extern const wxEventType wxEVT_CHAR_HOOK;
extern const wxEventType wxEVT_NAVIGATION_KEY;
extern const wxEventType wxEVT_KEY_DOWN;
extern const wxEventType wxEVT_KEY_UP;
extern const wxEventType wxEVT_SET_CURSOR;
extern const wxEventType wxEVT_SCROLL_TOP;
extern const wxEventType wxEVT_SCROLL_BOTTOM;
extern const wxEventType wxEVT_SCROLL_LINEUP;
extern const wxEventType wxEVT_SCROLL_LINEDOWN;
extern const wxEventType wxEVT_SCROLL_PAGEUP;
extern const wxEventType wxEVT_SCROLL_PAGEDOWN;
extern const wxEventType wxEVT_SCROLL_THUMBTRACK;
extern const wxEventType wxEVT_SCROLL_THUMBRELEASE;
extern const wxEventType wxEVT_SCROLLWIN_TOP;
extern const wxEventType wxEVT_SCROLLWIN_BOTTOM;
extern const wxEventType wxEVT_SCROLLWIN_LINEUP;
extern const wxEventType wxEVT_SCROLLWIN_LINEDOWN;
extern const wxEventType wxEVT_SCROLLWIN_PAGEUP;
extern const wxEventType wxEVT_SCROLLWIN_PAGEDOWN;
extern const wxEventType wxEVT_SCROLLWIN_THUMBTRACK;
extern const wxEventType wxEVT_SCROLLWIN_THUMBRELEASE;
extern const wxEventType wxEVT_SIZE;
extern const wxEventType wxEVT_MOVE;
extern const wxEventType wxEVT_CLOSE_WINDOW;
extern const wxEventType wxEVT_END_SESSION;
extern const wxEventType wxEVT_QUERY_END_SESSION;
extern const wxEventType wxEVT_ACTIVATE_APP;
extern const wxEventType wxEVT_POWER;
extern const wxEventType wxEVT_ACTIVATE;
extern const wxEventType wxEVT_CREATE;
extern const wxEventType wxEVT_DESTROY;
extern const wxEventType wxEVT_SHOW;
extern const wxEventType wxEVT_ICONIZE;
extern const wxEventType wxEVT_MAXIMIZE;
extern const wxEventType wxEVT_MOUSE_CAPTURE_CHANGED;
extern const wxEventType wxEVT_PAINT;
extern const wxEventType wxEVT_ERASE_BACKGROUND;
extern const wxEventType wxEVT_NC_PAINT;
extern const wxEventType wxEVT_PAINT_ICON;
extern const wxEventType wxEVT_MENU_OPEN;
extern const wxEventType wxEVT_MENU_CLOSE;
extern const wxEventType wxEVT_MENU_HIGHLIGHT;
extern const wxEventType wxEVT_CONTEXT_MENU;
extern const wxEventType wxEVT_SYS_COLOUR_CHANGED;
extern const wxEventType wxEVT_DISPLAY_CHANGED;
extern const wxEventType wxEVT_SETTING_CHANGED;
extern const wxEventType wxEVT_QUERY_NEW_PALETTE;
extern const wxEventType wxEVT_PALETTE_CHANGED;
extern const wxEventType wxEVT_JOY_BUTTON_DOWN;
extern const wxEventType wxEVT_JOY_BUTTON_UP;
extern const wxEventType wxEVT_JOY_MOVE;
extern const wxEventType wxEVT_JOY_ZMOVE;
extern const wxEventType wxEVT_DROP_FILES;
extern const wxEventType wxEVT_DRAW_ITEM;
extern const wxEventType wxEVT_MEASURE_ITEM;
extern const wxEventType wxEVT_COMPARE_ITEM;
extern const wxEventType wxEVT_INIT_DIALOG;
extern const wxEventType wxEVT_IDLE;
extern const wxEventType wxEVT_UPDATE_UI;
extern const wxEventType wxEVT_COMMAND_LEFT_CLICK;
extern const wxEventType wxEVT_COMMAND_LEFT_DCLICK;
extern const wxEventType wxEVT_COMMAND_RIGHT_CLICK;
extern const wxEventType wxEVT_COMMAND_RIGHT_DCLICK;
extern const wxEventType wxEVT_COMMAND_SET_FOCUS;
extern const wxEventType wxEVT_COMMAND_KILL_FOCUS;
extern const wxEventType wxEVT_COMMAND_ENTER;
extern const wxEventType wxEVT_HELP;
extern const wxEventType wxEVT_DETAILED_HELP;
# 277 "../wxX11/include/wx/event.h"
extern const wxEventType wxEVT_COMMAND_TEXT_UPDATED;
# 335 "../wxX11/include/wx/event.h"
class wxEvent : public wxObject
{
protected:
wxEvent(const wxEvent&);
public:
wxEvent(int id = 0, wxEventType commandType = wxEVT_NULL );
void SetEventType(wxEventType typ) { m_eventType = typ; }
wxEventType GetEventType() const { return m_eventType; }
wxObject *GetEventObject() const { return m_eventObject; }
void SetEventObject(wxObject *obj) { m_eventObject = obj; }
long GetTimestamp() const { return m_timeStamp; }
void SetTimestamp(long ts = 0) { m_timeStamp = ts; }
int GetId() const { return m_id; }
void SetId(int Id) { m_id = Id; }
void Skip(bool skip = 1) { m_skipped = skip; }
bool GetSkipped() const { return m_skipped; };
bool IsCommandEvent() const { return m_isCommandEvent; }
virtual wxEvent *Clone() const = 0;
public:
wxObject* m_eventObject;
wxEventType m_eventType;
long m_timeStamp;
int m_id;
wxObject* m_callbackUserData;
bool m_skipped;
bool m_isCommandEvent;
private:
public: static wxClassInfo sm_classwxEvent; virtual wxClassInfo *GetClassInfo() const { return &wxEvent::sm_classwxEvent; }
};
# 402 "../wxX11/include/wx/event.h"
class wxCommandEvent : public wxEvent
{
public:
wxCommandEvent(wxEventType commandType = wxEVT_NULL, int id = 0);
void SetClientData(void* clientData) { m_clientData = clientData; }
void *GetClientData() const { return m_clientData; }
void SetClientObject(wxClientData* clientObject) { m_clientObject = clientObject; }
void *GetClientObject() const { return m_clientObject; }
int GetSelection() const { return m_commandInt; }
void SetString(const wxString& s) { m_commandString = s; }
wxString GetString() const { return m_commandString; }
bool IsChecked() const { return m_commandInt != 0; }
bool IsSelection() const { return (m_extraLong != 0); }
void SetExtraLong(long extraLong) { m_extraLong = extraLong; }
long GetExtraLong() const { return m_extraLong ; }
void SetInt(int i) { m_commandInt = i; }
long GetInt() const { return m_commandInt ; }
virtual wxEvent *Clone() const { return new wxCommandEvent(*this); }
public:
wxString m_commandString;
int m_commandInt;
long m_extraLong;
void* m_clientData;
wxClientData* m_clientObject;
private:
public: static wxClassInfo sm_classwxCommandEvent; virtual wxClassInfo *GetClassInfo() const { return &wxCommandEvent::sm_classwxCommandEvent; }
};
class wxNotifyEvent : public wxCommandEvent
{
public:
wxNotifyEvent(wxEventType commandType = wxEVT_NULL, int id = 0)
: wxCommandEvent(commandType, id) { m_bAllow = 1; }
void Veto() { m_bAllow = 0; }
void Allow() { m_bAllow = 1; }
bool IsAllowed() const { return m_bAllow; }
virtual wxEvent *Clone() const { return new wxNotifyEvent(*this); }
private:
bool m_bAllow;
private:
public: static wxClassInfo sm_classwxNotifyEvent; virtual wxClassInfo *GetClassInfo() const { return &wxNotifyEvent::sm_classwxNotifyEvent; }
};
# 490 "../wxX11/include/wx/event.h"
class wxScrollEvent : public wxCommandEvent
{
public:
wxScrollEvent(wxEventType commandType = wxEVT_NULL,
int id = 0, int pos = 0, int orient = 0);
int GetOrientation() const { return (int) m_extraLong ; }
int GetPosition() const { return m_commandInt ; }
void SetOrientation(int orient) { m_extraLong = (long) orient; }
void SetPosition(int pos) { m_commandInt = pos; }
virtual wxEvent *Clone() const { return new wxScrollEvent(*this); }
private:
public: static wxClassInfo sm_classwxScrollEvent; virtual wxClassInfo *GetClassInfo() const { return &wxScrollEvent::sm_classwxScrollEvent; }
};
# 520 "../wxX11/include/wx/event.h"
class wxScrollWinEvent : public wxEvent
{
public:
wxScrollWinEvent(wxEventType commandType = wxEVT_NULL,
int pos = 0, int orient = 0);
int GetOrientation() const { return (int) m_extraLong ; }
int GetPosition() const { return m_commandInt ; }
void SetOrientation(int orient) { m_extraLong = (long) orient; }
void SetPosition(int pos) { m_commandInt = pos; }
virtual wxEvent *Clone() const { return new wxScrollWinEvent(*this); }
public:
int m_commandInt;
long m_extraLong;
private:
public: static wxClassInfo sm_classwxScrollWinEvent; virtual wxClassInfo *GetClassInfo() const { return &wxScrollWinEvent::sm_classwxScrollWinEvent; }
};
# 570 "../wxX11/include/wx/event.h"
class wxMouseEvent : public wxEvent
{
public:
wxMouseEvent(wxEventType mouseType = wxEVT_NULL);
bool IsButton() const { return Button(-1); }
bool ButtonDown(int but = -1) const;
bool ButtonDClick(int but = -1) const;
bool ButtonUp(int but = -1) const;
bool Button(int but) const;
bool ButtonIsDown(int but) const;
int GetButton() const;
bool ControlDown() const { return m_controlDown; }
bool MetaDown() const { return m_metaDown; }
bool AltDown() const { return m_altDown; }
bool ShiftDown() const { return m_shiftDown; }
bool LeftDown() const { return (m_eventType == wxEVT_LEFT_DOWN); }
bool MiddleDown() const { return (m_eventType == wxEVT_MIDDLE_DOWN); }
bool RightDown() const { return (m_eventType == wxEVT_RIGHT_DOWN); }
bool LeftUp() const { return (m_eventType == wxEVT_LEFT_UP); }
bool MiddleUp() const { return (m_eventType == wxEVT_MIDDLE_UP); }
bool RightUp() const { return (m_eventType == wxEVT_RIGHT_UP); }
bool LeftDClick() const { return (m_eventType == wxEVT_LEFT_DCLICK); }
bool MiddleDClick() const { return (m_eventType == wxEVT_MIDDLE_DCLICK); }
bool RightDClick() const { return (m_eventType == wxEVT_RIGHT_DCLICK); }
bool LeftIsDown() const { return m_leftDown; }
bool MiddleIsDown() const { return m_middleDown; }
bool RightIsDown() const { return m_rightDown; }
bool Dragging() const
{
return ((m_eventType == wxEVT_MOTION) &&
(LeftIsDown() || MiddleIsDown() || RightIsDown()));
}
bool Moving() const { return (m_eventType == wxEVT_MOTION); }
bool Entering() const { return (m_eventType == wxEVT_ENTER_WINDOW); }
bool Leaving() const { return (m_eventType == wxEVT_LEAVE_WINDOW); }
void GetPosition(wxCoord *xpos, wxCoord *ypos) const
{
if (xpos)
*xpos = m_x;
if (ypos)
*ypos = m_y;
}
void GetPosition(long *xpos, long *ypos) const
{
if (xpos)
*xpos = (long)m_x;
if (ypos)
*ypos = (long)m_y;
}
wxPoint GetPosition() const { return wxPoint(m_x, m_y); }
wxPoint GetLogicalPosition(const wxDC& dc) const ;
# 679 "../wxX11/include/wx/event.h"
wxCoord GetX() const { return m_x; }
wxCoord GetY() const { return m_y; }
# 691 "../wxX11/include/wx/event.h"
int GetWheelRotation() const { return m_wheelRotation; }
int GetWheelDelta() const { return m_wheelDelta; }
int GetLinesPerAction() const { return m_linesPerAction; }
virtual wxEvent *Clone() const { return new wxMouseEvent(*this); }
public:
wxCoord m_x, m_y;
bool m_leftDown;
bool m_middleDown;
bool m_rightDown;
bool m_controlDown;
bool m_shiftDown;
bool m_altDown;
bool m_metaDown;
int m_wheelRotation;
int m_wheelDelta;
int m_linesPerAction;
private:
public: static wxClassInfo sm_classwxMouseEvent; virtual wxClassInfo *GetClassInfo() const { return &wxMouseEvent::sm_classwxMouseEvent; }
};
class wxSetCursorEvent : public wxEvent
{
public:
wxSetCursorEvent(wxCoord x = 0, wxCoord y = 0)
{
m_eventType = wxEVT_SET_CURSOR;
m_x = x;
m_y = y;
}
wxCoord GetX() const { return m_x; }
wxCoord GetY() const { return m_y; }
void SetCursor(const wxCursor& cursor) { m_cursor = cursor; }
const wxCursor& GetCursor() const { return m_cursor; }
bool HasCursor() const { return m_cursor.Ok(); }
virtual wxEvent *Clone() const { return new wxSetCursorEvent(*this); }
private:
wxCoord m_x, m_y;
wxCursor m_cursor;
private:
public: static wxClassInfo sm_classwxSetCursorEvent; virtual wxClassInfo *GetClassInfo() const { return &wxSetCursorEvent::sm_classwxSetCursorEvent; }
};
# 767 "../wxX11/include/wx/event.h"
class wxKeyEvent : public wxEvent
{
public:
wxKeyEvent(wxEventType keyType = wxEVT_NULL);
bool ControlDown() const { return m_controlDown; }
bool MetaDown() const { return m_metaDown; }
bool AltDown() const { return m_altDown; }
bool ShiftDown() const { return m_shiftDown; }
bool HasModifiers() const { return ControlDown() || AltDown(); }
int GetKeyCode() const { return (int)m_keyCode; }
void GetPosition(wxCoord *xpos, wxCoord *ypos) const
{
if (xpos) *xpos = m_x;
if (ypos) *ypos = m_y;
}
void GetPosition(long *xpos, long *ypos) const
{
if (xpos) *xpos = (long)m_x;
if (ypos) *ypos = (long)m_y;
}
wxPoint GetPosition() const
{ return wxPoint(m_x, m_y); }
wxCoord GetX() const { return m_x; }
wxCoord GetY() const { return m_y; }
long KeyCode() const { return m_keyCode; }
virtual wxEvent *Clone() const { return new wxKeyEvent(*this); }
wxKeyEvent& operator=(const wxKeyEvent& evt)
{
m_x = evt.m_x;
m_y = evt.m_y;
m_keyCode = evt.m_keyCode;
m_controlDown = evt.m_controlDown;
m_shiftDown = evt.m_shiftDown;
m_altDown = evt.m_altDown;
m_metaDown = evt.m_metaDown;
m_scanCode = evt.m_scanCode;
return *this;
}
public:
wxCoord m_x, m_y;
long m_keyCode;
bool m_controlDown;
bool m_shiftDown;
bool m_altDown;
bool m_metaDown;
bool m_scanCode;
private:
public: static wxClassInfo sm_classwxKeyEvent; virtual wxClassInfo *GetClassInfo() const { return &wxKeyEvent::sm_classwxKeyEvent; }
};
class wxSizeEvent : public wxEvent
{
public:
wxSizeEvent() { m_eventType = wxEVT_SIZE; }
wxSizeEvent(const wxSize& sz, int id = 0)
: m_size(sz)
{ m_eventType = wxEVT_SIZE; m_id = id; }
wxSize GetSize() const { return m_size; }
virtual wxEvent *Clone() const { return new wxSizeEvent(*this); }
public:
wxSize m_size;
private:
public: static wxClassInfo sm_classwxSizeEvent; virtual wxClassInfo *GetClassInfo() const { return &wxSizeEvent::sm_classwxSizeEvent; }
};
class wxMoveEvent : public wxEvent
{
public:
wxMoveEvent() { m_eventType = wxEVT_MOVE; }
wxMoveEvent(const wxPoint& pos, int id = 0)
: m_pos(pos)
{ m_eventType = wxEVT_MOVE; m_id = id; }
wxPoint GetPosition() const { return m_pos; }
virtual wxEvent *Clone() const { return new wxMoveEvent(*this); }
wxPoint m_pos;
private:
public: static wxClassInfo sm_classwxMoveEvent; virtual wxClassInfo *GetClassInfo() const { return &wxMoveEvent::sm_classwxMoveEvent; }
};
# 908 "../wxX11/include/wx/event.h"
class wxPaintEvent : public wxEvent
{
public:
wxPaintEvent(int Id = 0)
{
m_eventType = wxEVT_PAINT;
m_id = Id;
}
# 929 "../wxX11/include/wx/event.h"
virtual wxEvent *Clone() const { return new wxPaintEvent(*this); }
private:
public: static wxClassInfo sm_classwxPaintEvent; virtual wxClassInfo *GetClassInfo() const { return &wxPaintEvent::sm_classwxPaintEvent; }
};
class wxNcPaintEvent : public wxEvent
{
public:
wxNcPaintEvent(int id = 0) : wxEvent(id) { SetEventType(wxEVT_NC_PAINT); }
virtual wxEvent *Clone() const { return new wxNcPaintEvent(*this); }
private:
public: static wxClassInfo sm_classwxNcPaintEvent; virtual wxClassInfo *GetClassInfo() const { return &wxNcPaintEvent::sm_classwxNcPaintEvent; }
};
class wxEraseEvent : public wxEvent
{
public:
wxEraseEvent(int Id = 0, wxDC *dc = (wxDC *) __null)
{ m_eventType = wxEVT_ERASE_BACKGROUND; m_id = Id; m_dc = dc; }
wxDC *GetDC() const { return m_dc; }
virtual wxEvent *Clone() const { return new wxEraseEvent(*this); }
wxDC *m_dc;
private:
public: static wxClassInfo sm_classwxEraseEvent; virtual wxClassInfo *GetClassInfo() const { return &wxEraseEvent::sm_classwxEraseEvent; }
};
class wxFocusEvent : public wxEvent
{
public:
wxFocusEvent(wxEventType type = wxEVT_NULL, int id = 0)
{ m_eventType = type; m_id = id; m_win = __null; }
wxWindow *GetWindow() const { return m_win; }
void SetWindow(wxWindow *win) { m_win = win; }
virtual wxEvent *Clone() const { return new wxFocusEvent(*this); }
private:
wxWindow *m_win;
private:
public: static wxClassInfo sm_classwxFocusEvent; virtual wxClassInfo *GetClassInfo() const { return &wxFocusEvent::sm_classwxFocusEvent; }
};
class wxChildFocusEvent : public wxCommandEvent
{
public:
wxChildFocusEvent(wxWindow *win = __null);
wxWindow *GetWindow() const { return (wxWindow *)GetEventObject(); }
virtual wxEvent *Clone() const { return new wxChildFocusEvent(*this); }
private:
public: static wxClassInfo sm_classwxChildFocusEvent; virtual wxClassInfo *GetClassInfo() const { return &wxChildFocusEvent::sm_classwxChildFocusEvent; }
};
class wxActivateEvent : public wxEvent
{
public:
wxActivateEvent(wxEventType type = wxEVT_NULL, bool active = 1, int Id = 0)
{ m_eventType = type; m_active = active; m_id = Id; }
bool GetActive() const { return m_active; }
virtual wxEvent *Clone() const { return new wxActivateEvent(*this); }
private:
bool m_active;
private:
public: static wxClassInfo sm_classwxActivateEvent; virtual wxClassInfo *GetClassInfo() const { return &wxActivateEvent::sm_classwxActivateEvent; }
};
class wxInitDialogEvent : public wxEvent
{
public:
wxInitDialogEvent(int Id = 0)
{ m_eventType = wxEVT_INIT_DIALOG; m_id = Id; }
virtual wxEvent *Clone() const { return new wxInitDialogEvent(*this); }
private:
public: static wxClassInfo sm_classwxInitDialogEvent; virtual wxClassInfo *GetClassInfo() const { return &wxInitDialogEvent::sm_classwxInitDialogEvent; }
};
# 1056 "../wxX11/include/wx/event.h"
class wxMenuEvent : public wxEvent
{
public:
wxMenuEvent(wxEventType type = wxEVT_NULL, int id = 0)
: wxEvent(id, type)
{ m_menuId = id; }
int GetMenuId() const { return m_menuId; }
bool IsPopup() const { return m_menuId == -1; }
virtual wxEvent *Clone() const { return new wxMenuEvent(*this); }
private:
int m_menuId;
public: static wxClassInfo sm_classwxMenuEvent; virtual wxClassInfo *GetClassInfo() const { return &wxMenuEvent::sm_classwxMenuEvent; }
};
# 1084 "../wxX11/include/wx/event.h"
class wxCloseEvent : public wxEvent
{
public:
wxCloseEvent(wxEventType type = wxEVT_NULL, int id = 0)
{
m_eventType = type;
m_loggingOff = 1;
m_veto = 0;
m_id = id;
m_canVeto = 1;
}
void SetLoggingOff(bool logOff) { m_loggingOff = logOff; }
bool GetLoggingOff() const { return m_loggingOff; }
void Veto(bool veto = 1)
{
if (!(m_canVeto)) {; return; };
m_veto = veto;
}
void SetCanVeto(bool canVeto) { m_canVeto = canVeto; }
bool CanVeto() const { return m_canVeto; }
bool GetVeto() const { return m_canVeto && m_veto; }
# 1123 "../wxX11/include/wx/event.h"
virtual wxEvent *Clone() const { return new wxCloseEvent(*this); }
protected:
bool m_loggingOff;
bool m_veto, m_canVeto;
private:
public: static wxClassInfo sm_classwxCloseEvent; virtual wxClassInfo *GetClassInfo() const { return &wxCloseEvent::sm_classwxCloseEvent; }
};
class wxShowEvent : public wxEvent
{
public:
wxShowEvent(int id = 0, bool show = 0)
{ m_eventType = wxEVT_SHOW; m_id = id; m_show = show; }
void SetShow(bool show) { m_show = show; }
bool GetShow() const { return m_show; }
virtual wxEvent *Clone() const { return new wxShowEvent(*this); }
protected:
bool m_show;
private:
public: static wxClassInfo sm_classwxShowEvent; virtual wxClassInfo *GetClassInfo() const { return &wxShowEvent::sm_classwxShowEvent; }
};
class wxIconizeEvent : public wxEvent
{
public:
wxIconizeEvent(int id = 0, bool iconized = 1)
{ m_eventType = wxEVT_ICONIZE; m_id = id; m_iconized = iconized; }
bool Iconized() const { return m_iconized; }
virtual wxEvent *Clone() const { return new wxIconizeEvent(*this); }
protected:
bool m_iconized;
private:
public: static wxClassInfo sm_classwxIconizeEvent; virtual wxClassInfo *GetClassInfo() const { return &wxIconizeEvent::sm_classwxIconizeEvent; }
};
class wxMaximizeEvent : public wxEvent
{
public:
wxMaximizeEvent(int id = 0)
{ m_eventType = wxEVT_MAXIMIZE; m_id = id; }
virtual wxEvent *Clone() const { return new wxMaximizeEvent(*this); }
private:
public: static wxClassInfo sm_classwxMaximizeEvent; virtual wxClassInfo *GetClassInfo() const { return &wxMaximizeEvent::sm_classwxMaximizeEvent; }
};
# 1216 "../wxX11/include/wx/event.h"
class wxJoystickEvent : public wxEvent
{
public:
wxPoint m_pos;
int m_zPosition;
int m_buttonChange;
int m_buttonState;
int m_joyStick;
wxJoystickEvent(wxEventType type = wxEVT_NULL,
int state = 0,
int joystick = 0,
int change = 0)
{
m_eventType = type;
m_buttonState = state;
m_pos = wxPoint(0,0);
m_zPosition = 0;
m_joyStick = joystick;
m_buttonChange = change;
}
wxPoint GetPosition() const { return m_pos; }
int GetZPosition() const { return m_zPosition; }
int GetButtonState() const { return m_buttonState; }
int GetButtonChange() const { return m_buttonChange; }
int GetJoystick() const { return m_joyStick; }
void SetJoystick(int stick) { m_joyStick = stick; }
void SetButtonState(int state) { m_buttonState = state; }
void SetButtonChange(int change) { m_buttonChange = change; }
void SetPosition(const wxPoint& pos) { m_pos = pos; }
void SetZPosition(int zPos) { m_zPosition = zPos; }
bool IsButton() const { return ((GetEventType() == wxEVT_JOY_BUTTON_DOWN) ||
(GetEventType() == wxEVT_JOY_BUTTON_UP)); }
bool IsMove() const { return (GetEventType() == wxEVT_JOY_MOVE) ; }
bool IsZMove() const { return (GetEventType() == wxEVT_JOY_ZMOVE) ; }
bool ButtonDown(int but = -1) const
{ return ((GetEventType() == wxEVT_JOY_BUTTON_DOWN) &&
((but == -1) || (but == m_buttonChange))); }
bool ButtonUp(int but = -1) const
{ return ((GetEventType() == wxEVT_JOY_BUTTON_UP) &&
((but == -1) || (but == m_buttonChange))); }
bool ButtonIsDown(int but = -1) const
{ return (((but == -1) && (m_buttonState != 0)) ||
((m_buttonState & but) == but)); }
virtual wxEvent *Clone() const { return new wxJoystickEvent(*this); }
private:
public: static wxClassInfo sm_classwxJoystickEvent; virtual wxClassInfo *GetClassInfo() const { return &wxJoystickEvent::sm_classwxJoystickEvent; }
};
class wxDropFilesEvent : public wxEvent
{
public:
int m_noFiles;
wxPoint m_pos;
wxString* m_files;
wxDropFilesEvent(wxEventType type = wxEVT_NULL,
int noFiles = 0,
wxString *files = (wxString *) __null)
{ m_eventType = type; m_noFiles = noFiles; m_files = files; }
wxDropFilesEvent(const wxDropFilesEvent& other)
: m_pos(other.m_pos)
{
m_noFiles = other.m_noFiles;
m_files = new wxString[m_noFiles];
for ( int n = 0; n < m_noFiles; n++ )
{
m_files[n] = other.m_files[n];
}
}
virtual ~wxDropFilesEvent()
{
delete [] m_files;
}
wxPoint GetPosition() const { return m_pos; }
int GetNumberOfFiles() const { return m_noFiles; }
wxString *GetFiles() const { return m_files; }
virtual wxEvent *Clone() const { return new wxDropFilesEvent(*this); }
private:
public: static wxClassInfo sm_classwxDropFilesEvent; virtual wxClassInfo *GetClassInfo() const { return &wxDropFilesEvent::sm_classwxDropFilesEvent; }
};
class wxUpdateUIEvent : public wxCommandEvent
{
public:
wxUpdateUIEvent(wxWindowID commandId = 0)
{
m_eventType = wxEVT_UPDATE_UI;
m_id = commandId;
m_checked = 0;
m_setChecked = 0;
m_enabled = 0;
m_setEnabled = 0;
m_setText = 0;
m_text = "";
}
bool GetChecked() const { return m_checked; }
bool GetEnabled() const { return m_enabled; }
wxString GetText() const { return m_text; }
bool GetSetText() const { return m_setText; }
bool GetSetChecked() const { return m_setChecked; }
bool GetSetEnabled() const { return m_setEnabled; }
void Check(bool check) { m_checked = check; m_setChecked = 1; }
void Enable(bool enable) { m_enabled = enable; m_setEnabled = 1; }
void SetText(const wxString& text) { m_text = text; m_setText = 1; }
virtual wxEvent *Clone() const { return new wxUpdateUIEvent(*this); }
protected:
bool m_checked;
bool m_enabled;
bool m_setEnabled;
bool m_setText;
bool m_setChecked;
wxString m_text;
private:
public: static wxClassInfo sm_classwxUpdateUIEvent; virtual wxClassInfo *GetClassInfo() const { return &wxUpdateUIEvent::sm_classwxUpdateUIEvent; }
};
class wxSysColourChangedEvent : public wxEvent
{
public:
wxSysColourChangedEvent()
{ m_eventType = wxEVT_SYS_COLOUR_CHANGED; }
virtual wxEvent *Clone() const { return new wxSysColourChangedEvent(*this); }
private:
public: static wxClassInfo sm_classwxSysColourChangedEvent; virtual wxClassInfo *GetClassInfo() const { return &wxSysColourChangedEvent::sm_classwxSysColourChangedEvent; }
};
class wxDisplayChangedEvent : public wxEvent
{
private:
public: static wxClassInfo sm_classwxDisplayChangedEvent; virtual wxClassInfo *GetClassInfo() const { return &wxDisplayChangedEvent::sm_classwxDisplayChangedEvent; }
public:
wxDisplayChangedEvent()
{ m_eventType = wxEVT_DISPLAY_CHANGED; }
virtual wxEvent *Clone() const { return new wxDisplayChangedEvent(*this); }
};
class wxPaletteChangedEvent : public wxEvent
{
public:
wxPaletteChangedEvent(wxWindowID id = 0) : wxEvent(id)
{
m_eventType = wxEVT_PALETTE_CHANGED;
m_changedWindow = (wxWindow *) __null;
}
void SetChangedWindow(wxWindow* win) { m_changedWindow = win; }
wxWindow* GetChangedWindow() const { return m_changedWindow; }
virtual wxEvent *Clone() const { return new wxPaletteChangedEvent(*this); }
protected:
wxWindow* m_changedWindow;
private:
public: static wxClassInfo sm_classwxPaletteChangedEvent; virtual wxClassInfo *GetClassInfo() const { return &wxPaletteChangedEvent::sm_classwxPaletteChangedEvent; }
};
class wxQueryNewPaletteEvent : public wxEvent
{
public:
wxQueryNewPaletteEvent(wxWindowID id = 0): wxEvent(id)
{ m_eventType = wxEVT_QUERY_NEW_PALETTE; m_paletteRealized = 0; }
void SetPaletteRealized(bool realized) { m_paletteRealized = realized; }
bool GetPaletteRealized() const { return m_paletteRealized; }
virtual wxEvent *Clone() const { return new wxQueryNewPaletteEvent(*this); }
protected:
bool m_paletteRealized;
private:
public: static wxClassInfo sm_classwxQueryNewPaletteEvent; virtual wxClassInfo *GetClassInfo() const { return &wxQueryNewPaletteEvent::sm_classwxQueryNewPaletteEvent; }
};
class wxNavigationKeyEvent : public wxEvent
{
public:
wxNavigationKeyEvent()
{
SetEventType(wxEVT_NAVIGATION_KEY);
m_flags = IsForward | Propagate;
m_focus = (wxWindow *)__null;
}
bool GetDirection() const
{ return (m_flags & IsForward) != 0; }
void SetDirection(bool bForward)
{ if ( bForward ) m_flags |= IsForward; else m_flags &= ~IsForward; }
bool IsWindowChange() const
{ return (m_flags & WinChange) != 0; }
void SetWindowChange(bool bIs)
{ if ( bIs ) m_flags |= WinChange; else m_flags &= ~WinChange; }
bool ShouldPropagate() const
{ return (m_flags & Propagate) != 0; }
void SetPropagate(bool bDoIt)
{ if ( bDoIt ) m_flags |= Propagate; else m_flags &= ~Propagate; }
wxWindow* GetCurrentFocus() const { return m_focus; }
void SetCurrentFocus(wxWindow *win) { m_focus = win; }
virtual wxEvent *Clone() const { return new wxNavigationKeyEvent(*this); }
private:
enum
{
IsForward = 0x0001,
WinChange = 0x0002,
Propagate = 0x0004
};
long m_flags;
wxWindow *m_focus;
private:
public: static wxClassInfo sm_classwxNavigationKeyEvent; virtual wxClassInfo *GetClassInfo() const { return &wxNavigationKeyEvent::sm_classwxNavigationKeyEvent; }
};
# 1520 "../wxX11/include/wx/event.h"
class wxWindowCreateEvent : public wxCommandEvent
{
public:
wxWindowCreateEvent(wxWindow *win = __null);
wxWindow *GetWindow() const { return (wxWindow *)GetEventObject(); }
virtual wxEvent *Clone() const { return new wxWindowCreateEvent(*this); }
private:
public: static wxClassInfo sm_classwxWindowCreateEvent; virtual wxClassInfo *GetClassInfo() const { return &wxWindowCreateEvent::sm_classwxWindowCreateEvent; }
};
class wxWindowDestroyEvent : public wxCommandEvent
{
public:
wxWindowDestroyEvent(wxWindow *win = __null);
wxWindow *GetWindow() const { return (wxWindow *)GetEventObject(); }
virtual wxEvent *Clone() const { return new wxWindowDestroyEvent(*this); }
private:
public: static wxClassInfo sm_classwxWindowDestroyEvent; virtual wxClassInfo *GetClassInfo() const { return &wxWindowDestroyEvent::sm_classwxWindowDestroyEvent; }
};
class wxHelpEvent : public wxCommandEvent
{
public:
wxHelpEvent(wxEventType type = wxEVT_NULL,
wxWindowID id = 0,
const wxPoint& pt = wxDefaultPosition)
{
m_eventType = type;
m_id = id;
m_pos = pt;
}
const wxPoint& GetPosition() const { return m_pos; }
void SetPosition(const wxPoint& pos) { m_pos = pos; }
const wxString& GetLink() const { return m_link; }
void SetLink(const wxString& link) { m_link = link; }
const wxString& GetTarget() const { return m_target; }
void SetTarget(const wxString& target) { m_target = target; }
virtual wxEvent *Clone() const { return new wxHelpEvent(*this); }
protected:
wxPoint m_pos;
wxString m_target;
wxString m_link;
private:
public: static wxClassInfo sm_classwxHelpEvent; virtual wxClassInfo *GetClassInfo() const { return &wxHelpEvent::sm_classwxHelpEvent; }
};
# 1595 "../wxX11/include/wx/event.h"
class wxContextMenuEvent : public wxCommandEvent
{
public:
wxContextMenuEvent(wxEventType type = wxEVT_NULL,
wxWindowID id = 0,
const wxPoint& pt = wxDefaultPosition)
{
m_eventType = type;
m_id = id;
m_pos = pt;
}
const wxPoint& GetPosition() const { return m_pos; }
void SetPosition(const wxPoint& pos) { m_pos = pos; }
virtual wxEvent *Clone() const { return new wxContextMenuEvent(*this); }
protected:
wxPoint m_pos;
private:
public: static wxClassInfo sm_classwxContextMenuEvent; virtual wxClassInfo *GetClassInfo() const { return &wxContextMenuEvent::sm_classwxContextMenuEvent; }
};
class wxIdleEvent : public wxEvent
{
public:
wxIdleEvent()
{ m_eventType = wxEVT_IDLE; m_requestMore = 0; }
void RequestMore(bool needMore = 1) { m_requestMore = needMore; }
bool MoreRequested() const { return m_requestMore; }
virtual wxEvent *Clone() const { return new wxIdleEvent(*this); }
protected:
bool m_requestMore;
private:
public: static wxClassInfo sm_classwxIdleEvent; virtual wxClassInfo *GetClassInfo() const { return &wxIdleEvent::sm_classwxIdleEvent; }
};
# 1661 "../wxX11/include/wx/event.h"
typedef void (wxObject::*wxObjectEventFunction)(wxEvent&);
# 1684 "../wxX11/include/wx/event.h"
struct wxEventTableEntryBase
{
wxEventTableEntryBase(int id, int idLast,
wxObjectEventFunction fn, wxObject *data)
{
m_id = id;
m_lastId = idLast;
m_fn = fn;
m_callbackUserData = data;
}
int m_id, m_lastId;
wxObjectEventFunction m_fn;
wxObject* m_callbackUserData;
};
struct wxEventTableEntry : public wxEventTableEntryBase
{
wxEventTableEntry(const int& evType, int id, int idLast,
wxObjectEventFunction fn, wxObject *data)
: wxEventTableEntryBase(id, idLast, fn, data),
m_eventType(evType)
{
}
const int& m_eventType;
};
struct wxDynamicEventTableEntry : public wxEventTableEntryBase
{
wxDynamicEventTableEntry(int evType, int id, int idLast,
wxObjectEventFunction fn, wxObject *data)
: wxEventTableEntryBase(id, idLast, fn, data)
{
m_eventType = evType;
}
int m_eventType;
};
struct wxEventTable
{
const wxEventTable *baseTable;
const wxEventTableEntry *entries;
};
class wxEvtHandler : public wxObject
{
public:
wxEvtHandler();
virtual ~wxEvtHandler();
wxEvtHandler *GetNextHandler() const { return m_nextHandler; }
wxEvtHandler *GetPreviousHandler() const { return m_previousHandler; }
void SetNextHandler(wxEvtHandler *handler) { m_nextHandler = handler; }
void SetPreviousHandler(wxEvtHandler *handler) { m_previousHandler = handler; }
void SetEvtHandlerEnabled(bool enabled) { m_enabled = enabled; }
bool GetEvtHandlerEnabled() const { return m_enabled; }
virtual bool ProcessEvent(wxEvent& event);
void AddPendingEvent(wxEvent& event);
void ProcessPendingEvents();
bool ProcessThreadEvent(wxEvent& event);
void Connect( int id, int lastId, int eventType,
wxObjectEventFunction func,
wxObject *userData = (wxObject *) __null );
void Connect( int id, int eventType,
wxObjectEventFunction func,
wxObject *userData = (wxObject *) __null )
{ Connect(id, -1, eventType, func, userData); }
bool Disconnect( int id, int lastId, wxEventType eventType,
wxObjectEventFunction func = __null,
wxObject *userData = (wxObject *) __null );
bool Disconnect( int id, wxEventType eventType = wxEVT_NULL,
wxObjectEventFunction func = __null,
wxObject *userData = (wxObject *) __null )
{ return Disconnect(id, -1, eventType, func, userData); }
void SetClientObject( wxClientData *data ) { DoSetClientObject(data); }
wxClientData *GetClientObject() const { return DoGetClientObject(); }
void SetClientData( void *data ) { DoSetClientData(data); }
void *GetClientData() const { return DoGetClientData(); }
virtual bool SearchEventTable(wxEventTable& table, wxEvent& event);
bool SearchDynamicEventTable( wxEvent& event );
void ClearEventLocker()
{
delete m_eventsLocker;
m_eventsLocker = __null;
};
# 1847 "../wxX11/include/wx/event.h"
private:
static const wxEventTableEntry sm_eventTableEntries[];
protected:
static const wxEventTable sm_eventTable;
virtual const wxEventTable *GetEventTable() const;
wxEvtHandler* m_nextHandler;
wxEvtHandler* m_previousHandler;
wxList* m_dynamicEvents;
wxList* m_pendingEvents;
wxCriticalSection* m_eventsLocker;
bool m_isWindow;
bool m_enabled;
union
{
wxClientData *m_clientObject;
void *m_clientData;
};
wxClientDataType m_clientDataType;
virtual void DoSetClientObject( wxClientData *data );
virtual wxClientData *DoGetClientObject() const;
virtual void DoSetClientData( void *data );
virtual void *DoGetClientData() const;
private:
private: wxEvtHandler(const wxEvtHandler&); wxEvtHandler& operator=(const wxEvtHandler&);
public: static wxClassInfo sm_classwxEvtHandler; virtual wxClassInfo *GetClassInfo() const { return &wxEvtHandler::sm_classwxEvtHandler; }
};
typedef void (wxEvtHandler::*wxEventFunction)(wxEvent&);
typedef void (wxEvtHandler::*wxCommandEventFunction)(wxCommandEvent&);
typedef void (wxEvtHandler::*wxScrollEventFunction)(wxScrollEvent&);
typedef void (wxEvtHandler::*wxScrollWinEventFunction)(wxScrollWinEvent&);
typedef void (wxEvtHandler::*wxSizeEventFunction)(wxSizeEvent&);
typedef void (wxEvtHandler::*wxMoveEventFunction)(wxMoveEvent&);
typedef void (wxEvtHandler::*wxPaintEventFunction)(wxPaintEvent&);
typedef void (wxEvtHandler::*wxEraseEventFunction)(wxEraseEvent&);
typedef void (wxEvtHandler::*wxMouseEventFunction)(wxMouseEvent&);
typedef void (wxEvtHandler::*wxCharEventFunction)(wxKeyEvent&);
typedef void (wxEvtHandler::*wxFocusEventFunction)(wxFocusEvent&);
typedef void (wxEvtHandler::*wxChildFocusEventFunction)(wxChildFocusEvent&);
typedef void (wxEvtHandler::*wxActivateEventFunction)(wxActivateEvent&);
typedef void (wxEvtHandler::*wxMenuEventFunction)(wxMenuEvent&);
typedef void (wxEvtHandler::*wxJoystickEventFunction)(wxJoystickEvent&);
typedef void (wxEvtHandler::*wxDropFilesEventFunction)(wxDropFilesEvent&);
typedef void (wxEvtHandler::*wxInitDialogEventFunction)(wxInitDialogEvent&);
typedef void (wxEvtHandler::*wxSysColourChangedFunction)(wxSysColourChangedEvent&);
typedef void (wxEvtHandler::*wxDisplayChangedFunction)(wxDisplayChangedEvent&);
typedef void (wxEvtHandler::*wxUpdateUIEventFunction)(wxUpdateUIEvent&);
typedef void (wxEvtHandler::*wxIdleEventFunction)(wxIdleEvent&);
typedef void (wxEvtHandler::*wxCloseEventFunction)(wxCloseEvent&);
typedef void (wxEvtHandler::*wxShowEventFunction)(wxShowEvent&);
typedef void (wxEvtHandler::*wxIconizeEventFunction)(wxShowEvent&);
typedef void (wxEvtHandler::*wxMaximizeEventFunction)(wxShowEvent&);
typedef void (wxEvtHandler::*wxNavigationKeyEventFunction)(wxNavigationKeyEvent&);
typedef void (wxEvtHandler::*wxPaletteChangedEventFunction)(wxPaletteChangedEvent&);
typedef void (wxEvtHandler::*wxQueryNewPaletteEventFunction)(wxQueryNewPaletteEvent&);
typedef void (wxEvtHandler::*wxWindowCreateEventFunction)(wxWindowCreateEvent&);
typedef void (wxEvtHandler::*wxWindowDestroyEventFunction)(wxWindowDestroyEvent&);
typedef void (wxEvtHandler::*wxSetCursorEventFunction)(wxSetCursorEvent&);
typedef void (wxEvtHandler::*wxNotifyEventFunction)(wxNotifyEvent&);
typedef void (wxEvtHandler::*wxHelpEventFunction)(wxHelpEvent&);
typedef void (wxEvtHandler::*wxContextMenuEventFunction)(wxContextMenuEvent&);
# 2180 "../wxX11/include/wx/event.h"
extern wxList *wxPendingEvents;
extern wxCriticalSection *wxPendingEventsLocker;
# 2193 "../wxX11/include/wx/event.h"
wxWindow* wxFindFocusDescendant(wxWindow* ancestor);
# 24 "../wxX11/include/wx/timer.h" 2
# 32 "../wxX11/include/wx/timer.h"
class wxTimerBase : public wxObject
{
public:
wxTimerBase() { Init(); SetOwner(__null); }
wxTimerBase(wxEvtHandler *owner, int id = -1)
{ Init(); SetOwner(owner, id); }
void SetOwner(wxEvtHandler *owner, int id = -1)
{ m_owner = owner; m_idTimer = id; }
virtual ~wxTimerBase();
# 62 "../wxX11/include/wx/timer.h"
virtual bool Start(int milliseconds = -1, bool oneShot = 0);
virtual void Stop() = 0;
virtual void Notify();
virtual bool IsRunning() const = 0;
int GetInterval() const { return m_milli; }
bool IsOneShot() const { return m_oneShot; }
protected:
void Init() { m_oneShot = 0; m_milli = 0; }
wxEvtHandler *m_owner;
int m_idTimer;
int m_milli;
bool m_oneShot;
};
# 107 "../wxX11/include/wx/timer.h"
# 1 "../wxX11/include/wx/motif/timer.h" 1
# 16 "../wxX11/include/wx/motif/timer.h"
#pragma interface "timer.h"
class wxTimer : public wxTimerBase
{
friend void wxTimerCallback(wxTimer * timer);
public:
wxTimer() { Init(); }
wxTimer(wxEvtHandler *owner, int id = -1) : wxTimerBase(owner, id)
{ Init(); }
~wxTimer();
virtual bool Start(int milliseconds = -1, bool oneShot = 0);
virtual void Stop();
virtual bool IsRunning() const { return m_id != 0; }
protected:
void Init();
long m_id;
private:
public: static wxClassInfo sm_classwxTimer; virtual wxClassInfo *GetClassInfo() const { return &wxTimer::sm_classwxTimer; }
};
# 108 "../wxX11/include/wx/timer.h" 2
# 124 "../wxX11/include/wx/timer.h"
class wxTimerRunner
{
public:
wxTimerRunner(wxTimer& timer) : m_timer(timer) { }
wxTimerRunner(wxTimer& timer, int milli, bool oneShot = 0)
: m_timer(timer)
{
m_timer.Start(milli, oneShot);
}
void Start(int milli, bool oneShot = 0)
{
m_timer.Start(milli, oneShot);
}
~wxTimerRunner()
{
if ( m_timer.IsRunning() )
{
m_timer.Stop();
}
}
private:
wxTimer& m_timer;
};
class wxTimerEvent : public wxEvent
{
public:
wxTimerEvent(int id = 0, int interval = 0) : wxEvent(id)
{
m_eventType = wxEVT_TIMER;
m_interval = interval;
}
int GetInterval() const { return m_interval; }
virtual wxEvent *Clone() const { return new wxTimerEvent(*this); }
private:
int m_interval;
public: static wxClassInfo sm_classwxTimerEvent; virtual wxClassInfo *GetClassInfo() const { return &wxTimerEvent::sm_classwxTimerEvent; }
};
typedef void (wxEvtHandler::*wxTimerEventFunction)(wxTimerEvent&);
# 190 "../wxX11/include/wx/timer.h"
class wxStopWatch
{
public:
wxStopWatch() { Start(); }
void Start(long t = 0);
void Pause() { m_pause = GetElapsedTime(); }
void Resume() { Start(m_pause); }
long Time() const;
protected:
long GetElapsedTime() const;
private:
wxLongLong m_t0;
long m_pause;
};
void wxStartTimer();
long wxGetElapsedTime(bool resetTimer = 1);
# 230 "../wxX11/include/wx/timer.h"
extern long wxGetLocalTime();
extern long wxGetUTCTime();
extern wxLongLong wxGetLocalTimeMillis();
# 84 "../wxX11/src/common/datetime.cpp" 2
# 143 "../wxX11/src/common/datetime.cpp"
class wxDateTimeHolidaysModule : public wxModule
{
public:
virtual bool OnInit()
{
wxDateTimeHolidayAuthority::AddAuthority(new wxDateTimeWorkDays);
return 1;
}
virtual void OnExit()
{
wxDateTimeHolidayAuthority::ClearAllAuthorities();
wxDateTimeHolidayAuthority::ms_authorities.Clear();
}
private:
public: static wxClassInfo sm_classwxDateTimeHolidaysModule; virtual wxClassInfo *GetClassInfo() const { return &wxDateTimeHolidaysModule::sm_classwxDateTimeHolidaysModule; }
};
wxObject* wxConstructorForwxDateTimeHolidaysModule() { return new wxDateTimeHolidaysModule; } wxClassInfo wxDateTimeHolidaysModule::sm_classwxDateTimeHolidaysModule("wxDateTimeHolidaysModule", "wxModule", 0, (int) sizeof(wxDateTimeHolidaysModule), (wxObjectConstructorFn) wxConstructorForwxDateTimeHolidaysModule);
static const int MONTHS_IN_YEAR = 12;
static const int SEC_PER_MIN = 60;
static const int MIN_PER_HOUR = 60;
static const int HOURS_PER_DAY = 24;
static const long SECONDS_PER_DAY = 86400l;
static const int DAYS_PER_WEEK = 7;
static const long MILLISECONDS_PER_DAY = 86400000l;
static const long EPOCH_JDN = 2440587l;
static const int JDN_0_YEAR = -4713;
static const int JDN_0_MONTH = wxDateTime::Nov;
static const int JDN_0_DAY = 24;
static const long JDN_OFFSET = 32046l;
static const long DAYS_PER_5_MONTHS = 153l;
static const long DAYS_PER_4_YEARS = 1461l;
static const long DAYS_PER_400_YEARS = 146097l;
static const wxDateTime::wxDateTime_t gs_cumulatedDays[2][MONTHS_IN_YEAR] =
{
{ 0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334 },
{ 0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335 }
};
const wxDateTime wxDefaultDateTime;
wxDateTime::Country wxDateTime::ms_country = wxDateTime::Country_Unknown;
# 225 "../wxX11/src/common/datetime.cpp"
static wxCriticalSection gs_critsectTimezone;
# 245 "../wxX11/src/common/datetime.cpp"
static inline
wxDateTime::wxDateTime_t GetNumOfDaysInMonth(int year, wxDateTime::Month month)
{
static wxDateTime::wxDateTime_t daysInMonth[2][MONTHS_IN_YEAR] =
{
{ 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 },
{ 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }
};
return daysInMonth[wxDateTime::IsLeapYear(year)][month];
}
static int GetTimeZone()
{
static bool s_timezoneSet = 0;
wxCriticalSectionLocker lock(gs_critsectTimezone);
if ( !s_timezoneSet )
{
time_t t = 0;
(void)localtime(&t);
s_timezoneSet = 1;
}
return (int)timezone;
}
static long GetTruncatedJDN(wxDateTime::wxDateTime_t day,
wxDateTime::Month mon,
int year)
{
;
year += 4800;
int month;
if ( mon >= wxDateTime::Mar )
{
month = mon - 2;
}
else
{
month = mon + 10;
year--;
}
return ((year / 100) * DAYS_PER_400_YEARS) / 4
+ ((year % 100) * DAYS_PER_4_YEARS) / 4
+ (month * DAYS_PER_5_MONTHS + 2) / 5
+ day
- JDN_OFFSET;
}
static wxString CallStrftime(const char *format, const tm* tm)
{
char buf[4096];
if ( !strftime(buf, (sizeof(buf)/sizeof(buf[0])), format, tm) )
{
;
}
return wxString(buf);
}
static void ReplaceDefaultYearMonthWithCurrent(int *year,
wxDateTime::Month *month)
{
struct tm *tmNow = __null;
if ( *year == wxDateTime::Inv_Year )
{
tmNow = wxDateTime::GetTmNow();
*year = 1900 + tmNow->tm_year;
}
if ( *month == wxDateTime::Inv_Month )
{
if ( !tmNow )
tmNow = wxDateTime::GetTmNow();
*month = (wxDateTime::Month)tmNow->tm_mon;
}
}
static void InitTm(struct tm& tm)
{
memset(&tm, 0, sizeof(struct tm));
tm.tm_mday = 1;
tm.tm_year = 76;
tm.tm_isdst = -1;
}
static wxDateTime::Month GetMonthFromName(const wxString& name, int flags)
{
wxDateTime::Month mon;
for ( mon = wxDateTime::Jan; mon < wxDateTime::Inv_Month; wxNextMonth(mon) )
{
if ( flags & wxDateTime::Name_Full )
{
if ( name.CmpNoCase(wxDateTime::
GetMonthName(mon, wxDateTime::Name_Full)) == 0 )
{
break;
}
}
if ( flags & wxDateTime::Name_Abbr )
{
if ( name.CmpNoCase(wxDateTime::
GetMonthName(mon, wxDateTime::Name_Abbr)) == 0 )
{
break;
}
}
}
return mon;
}
static wxDateTime::WeekDay GetWeekDayFromName(const wxString& name, int flags)
{
wxDateTime::WeekDay wd;
for ( wd = wxDateTime::Sun; wd < wxDateTime::Inv_WeekDay; wxNextWDay(wd) )
{
if ( flags & wxDateTime::Name_Full )
{
if ( name.CmpNoCase(wxDateTime::
GetWeekDayName(wd, wxDateTime::Name_Full)) == 0 )
{
break;
}
}
if ( flags & wxDateTime::Name_Abbr )
{
if ( name.CmpNoCase(wxDateTime::
GetWeekDayName(wd, wxDateTime::Name_Abbr)) == 0 )
{
break;
}
}
}
return wd;
}
static bool GetNumericToken(size_t len, const char*& p, unsigned long *number)
{
size_t n = 1;
wxString s;
while ( isdigit(*p) )
{
s += *p++;
if ( len && ++n > len )
break;
}
return !!s && s.ToULong(number);
}
static wxString GetAlphaToken(const char*& p)
{
wxString s;
while ( isalpha(*p) )
{
s += *p++;
}
return s;
}
# 466 "../wxX11/src/common/datetime.cpp"
wxDateTime::Tm::Tm()
{
year = (wxDateTime_t)wxDateTime::Inv_Year;
mon = wxDateTime::Inv_Month;
mday = 0;
hour = min = sec = msec = 0;
wday = wxDateTime::Inv_WeekDay;
}
wxDateTime::Tm::Tm(const struct tm& tm, const TimeZone& tz)
: m_tz(tz)
{
msec = 0;
sec = tm.tm_sec;
min = tm.tm_min;
hour = tm.tm_hour;
mday = tm.tm_mday;
mon = (wxDateTime::Month)tm.tm_mon;
year = 1900 + tm.tm_year;
wday = tm.tm_wday;
yday = tm.tm_yday;
}
bool wxDateTime::Tm::IsValid() const
{
return (year != wxDateTime::Inv_Year) && (mon != wxDateTime::Inv_Month) &&
(mday <= GetNumOfDaysInMonth(year, mon)) &&
(hour < 24) && (min < 60) && (sec < 62) && (msec < 1000);
}
void wxDateTime::Tm::ComputeWeekDay()
{
wday = (wxDateTime::WeekDay)(GetTruncatedJDN(mday, mon, year) + 2) % 7;
}
void wxDateTime::Tm::AddMonths(int monDiff)
{
while ( monDiff < -mon )
{
year--;
monDiff += MONTHS_IN_YEAR;
}
while ( monDiff + mon >= MONTHS_IN_YEAR )
{
year++;
monDiff -= MONTHS_IN_YEAR;
}
mon = (wxDateTime::Month)(mon + monDiff);
;
}
void wxDateTime::Tm::AddDays(int dayDiff)
{
while ( dayDiff + mday < 1 )
{
AddMonths(-1);
dayDiff += GetNumOfDaysInMonth(year, mon);
}
mday += dayDiff;
while ( mday > GetNumOfDaysInMonth(year, mon) )
{
mday -= GetNumOfDaysInMonth(year, mon);
AddMonths(1);
}
;
}
wxDateTime::TimeZone::TimeZone(wxDateTime::TZ tz)
{
switch ( tz )
{
case wxDateTime::Local:
m_offset = -GetTimeZone();
break;
case wxDateTime::GMT_12:
case wxDateTime::GMT_11:
case wxDateTime::GMT_10:
case wxDateTime::GMT_9:
case wxDateTime::GMT_8:
case wxDateTime::GMT_7:
case wxDateTime::GMT_6:
case wxDateTime::GMT_5:
case wxDateTime::GMT_4:
case wxDateTime::GMT_3:
case wxDateTime::GMT_2:
case wxDateTime::GMT_1:
m_offset = -3600*(wxDateTime::GMT0 - tz);
break;
case wxDateTime::GMT0:
case wxDateTime::GMT1:
case wxDateTime::GMT2:
case wxDateTime::GMT3:
case wxDateTime::GMT4:
case wxDateTime::GMT5:
case wxDateTime::GMT6:
case wxDateTime::GMT7:
case wxDateTime::GMT8:
case wxDateTime::GMT9:
case wxDateTime::GMT10:
case wxDateTime::GMT11:
case wxDateTime::GMT12:
m_offset = 3600*(tz - wxDateTime::GMT0);
break;
case wxDateTime::A_CST:
m_offset = 60l*(9*60 + 30);
break;
default:
;
}
}
bool wxDateTime::IsLeapYear(int year, wxDateTime::Calendar cal)
{
if ( year == Inv_Year )
year = GetCurrentYear();
if ( cal == Gregorian )
{
return (year % 4 == 0) && ((year % 100 != 0) || (year % 400 == 0));
}
else if ( cal == Julian )
{
return year % 4 == 0;
}
else
{
;
return 0;
}
}
int wxDateTime::GetCentury(int year)
{
return year > 0 ? year / 100 : year / 100 - 1;
}
int wxDateTime::ConvertYearToBC(int year)
{
return year > 0 ? year : year - 1;
}
int wxDateTime::GetCurrentYear(wxDateTime::Calendar cal)
{
switch ( cal )
{
case Gregorian:
return Now().GetYear();
case Julian:
;
break;
default:
;
break;
}
return Inv_Year;
}
wxDateTime::Month wxDateTime::GetCurrentMonth(wxDateTime::Calendar cal)
{
switch ( cal )
{
case Gregorian:
return Now().GetMonth();
case Julian:
;
break;
default:
;
break;
}
return Inv_Month;
}
wxDateTime::wxDateTime_t wxDateTime::GetNumberOfDays(int year, Calendar cal)
{
if ( year == Inv_Year )
{
year = GetCurrentYear();
}
switch ( cal )
{
case Gregorian:
case Julian:
return IsLeapYear(year) ? 366 : 365;
default:
;
break;
}
return 0;
}
wxDateTime::wxDateTime_t wxDateTime::GetNumberOfDays(wxDateTime::Month month,
int year,
wxDateTime::Calendar cal)
{
if (!(month < MONTHS_IN_YEAR)) {; return 0; };
if ( cal == Gregorian || cal == Julian )
{
if ( year == Inv_Year )
{
year = GetCurrentYear();
}
return GetNumOfDaysInMonth(year, month);
}
else
{
;
return 0;
}
}
wxString wxDateTime::GetMonthName(wxDateTime::Month month,
wxDateTime::NameFlags flags)
{
if (!(month != Inv_Month)) {; return ""; };
tm tm;
InitTm(tm);
tm.tm_mon = month;
return CallStrftime(flags == Name_Abbr ? "%b" : "%B", &tm);
}
wxString wxDateTime::GetWeekDayName(wxDateTime::WeekDay wday,
wxDateTime::NameFlags flags)
{
if (!(wday != Inv_WeekDay)) {; return ""; };
tm tm;
InitTm(tm);
tm.tm_mday = 28;
tm.tm_mon = Nov;
tm.tm_year = 99;
tm.tm_mday += wday;
(void)mktime(&tm);
return CallStrftime(flags == Name_Abbr ? "%a" : "%A", &tm);
}
void wxDateTime::GetAmPmStrings(wxString *am, wxString *pm)
{
tm tm;
InitTm(tm);
if ( am )
{
*am = CallStrftime("%p", &tm);
}
if ( pm )
{
tm.tm_hour = 13;
*pm = CallStrftime("%p", &tm);
}
}
wxDateTime::Country wxDateTime::GetCountry()
{
if ( ms_country == Country_Unknown )
{
time_t t = time(__null);
struct tm *tm = localtime(&t);
wxString tz = CallStrftime("%Z", tm);
if ( tz == "WET" || tz == "WEST" )
{
ms_country = UK;
}
else if ( tz == "CET" || tz == "CEST" )
{
ms_country = Country_EEC;
}
else if ( tz == "MSK" || tz == "MSD" )
{
ms_country = Russia;
}
else if ( tz == "AST" || tz == "ADT" ||
tz == "EST" || tz == "EDT" ||
tz == "CST" || tz == "CDT" ||
tz == "MST" || tz == "MDT" ||
tz == "PST" || tz == "PDT" )
{
ms_country = USA;
}
else
{
ms_country = USA;
}
}
return ms_country;
}
void wxDateTime::SetCountry(wxDateTime::Country country)
{
ms_country = country;
}
bool wxDateTime::IsWestEuropeanCountry(Country country)
{
if ( country == Country_Default )
{
country = GetCountry();
}
return (Country_WesternEurope_Start <= country) &&
(country <= Country_WesternEurope_End);
}
# 866 "../wxX11/src/common/datetime.cpp"
bool wxDateTime::IsDSTApplicable(int year, Country country)
{
if ( year == Inv_Year )
{
year = GetCurrentYear();
}
if ( country == Country_Default )
{
country = GetCountry();
}
switch ( country )
{
case USA:
case UK:
return year >= 1966 ||
(year >= 1942 && year <= 1945) ||
(year == 1918 || year == 1919);
default:
return year > 1950;
}
}
wxDateTime wxDateTime::GetBeginDST(int year, Country country)
{
if ( year == Inv_Year )
{
year = GetCurrentYear();
}
if ( country == Country_Default )
{
country = GetCountry();
}
if ( !IsDSTApplicable(year, country) )
{
return wxDefaultDateTime;
}
wxDateTime dt;
if ( IsWestEuropeanCountry(country) || (country == Russia) )
{
if ( !dt.SetToLastWeekDay(Sun, Mar, year) )
{
;
}
dt += wxTimeSpan::Hours(1);
dt.MakeGMT(1);
}
else switch ( country )
{
case USA:
switch ( year )
{
case 1918:
case 1919:
case 1943:
case 1944:
case 1945:
dt.Set(1, Jan, year);
break;
case 1942:
dt.Set(2, Feb, year);
break;
case 1974:
dt.Set(6, Jan, 1974);
break;
case 1975:
dt.Set(23, Feb, 1975);
break;
default:
if ( year < 1986 )
{
if ( !dt.SetToLastWeekDay(Sun, Apr, year) )
{
;
}
}
else
{
if ( !dt.SetToWeekDay(Sun, 1, Apr, year) )
{
;
}
}
dt += wxTimeSpan::Hours(2);
}
break;
default:
dt.Set(30, Mar, year);
}
return dt;
}
wxDateTime wxDateTime::GetEndDST(int year, Country country)
{
if ( year == Inv_Year )
{
year = GetCurrentYear();
}
if ( country == Country_Default )
{
country = GetCountry();
}
if ( !IsDSTApplicable(year, country) )
{
return wxDefaultDateTime;
}
wxDateTime dt;
if ( IsWestEuropeanCountry(country) || (country == Russia) )
{
if ( !dt.SetToLastWeekDay(Sun, Oct, year) )
{
;
}
dt += wxTimeSpan::Hours(1);
dt.MakeGMT(1);
}
else switch ( country )
{
case USA:
switch ( year )
{
case 1918:
case 1919:
case 1943:
case 1944:
dt.Set(31, Dec, year);
break;
case 1945:
dt.Set(30, Sep, year);
break;
default:
if ( !dt.SetToLastWeekDay(Sun, Oct, year) )
{
;
}
dt += wxTimeSpan::Hours(2);
}
break;
default:
dt.Set(26, Oct, year);
}
return dt;
}
wxDateTime wxDateTime::UNow()
{
return wxDateTime(wxGetLocalTimeMillis());
}
wxDateTime& wxDateTime::Set(const struct tm& tm)
{
struct tm tm2(tm);
time_t timet = mktime(&tm2);
if ( timet == (time_t)-1 )
{
if ( tm2.tm_year == 70 && tm2.tm_mon == 0 && tm2.tm_mday == 1 )
{
tm2.tm_sec -= GetTimeZone();
timet = mktime(&tm2);
if ( timet != (time_t)-1 )
{
timet += GetTimeZone();
return Set(timet);
}
}
;
*this = wxDefaultDateTime;
return *this;
}
else
{
return Set(timet);
}
}
wxDateTime& wxDateTime::Set(wxDateTime_t hour,
wxDateTime_t minute,
wxDateTime_t second,
wxDateTime_t millisec)
{
if ( !(hour < 24 && second < 62 && minute < 60 && millisec < 1000) ) { ; *this = wxDefaultDateTime; return *this; };
struct tm *tm = GetTmNow();
if ( !(tm) ) { ; *this = wxDefaultDateTime; return *this; };
tm->tm_hour = hour;
tm->tm_min = minute;
tm->tm_sec = second;
(void)Set(*tm);
return SetMillisecond(millisec);
}
wxDateTime& wxDateTime::Set(wxDateTime_t day,
Month month,
int year,
wxDateTime_t hour,
wxDateTime_t minute,
wxDateTime_t second,
wxDateTime_t millisec)
{
if ( !(hour < 24 && second < 62 && minute < 60 && millisec < 1000) ) { ; *this = wxDefaultDateTime; return *this; };
ReplaceDefaultYearMonthWithCurrent(&year, &month);
if ( !((0 < day) && (day <= GetNumberOfDays(month, year))) ) { ; *this = wxDefaultDateTime; return *this; };
static const int yearMinInRange = 1970;
static const int yearMaxInRange = 2037;
if ( year >= yearMinInRange && year <= yearMaxInRange )
{
struct tm tm;
tm.tm_year = year - 1900;
tm.tm_mon = month;
tm.tm_mday = day;
tm.tm_hour = hour;
tm.tm_min = minute;
tm.tm_sec = second;
tm.tm_isdst = -1;
(void)Set(tm);
return SetMillisecond(millisec);
}
else
{
m_time = GetTruncatedJDN(day, month, year);
m_time -= EPOCH_JDN;
m_time *= SECONDS_PER_DAY * TIME_T_FACTOR;
Add(wxTimeSpan(hour, minute, second + GetTimeZone(), millisec));
}
return *this;
}
wxDateTime& wxDateTime::Set(double jdn)
{
jdn -= EPOCH_JDN + 0.5;
jdn *= MILLISECONDS_PER_DAY;
m_time.Assign(jdn);
return *this;
}
wxDateTime& wxDateTime::ResetTime()
{
Tm tm = GetTm();
if ( tm.hour || tm.min || tm.sec || tm.msec )
{
tm.msec =
tm.sec =
tm.min =
tm.hour = 0;
Set(tm);
}
return *this;
}
wxDateTime::Tm wxDateTime::GetTm(const TimeZone& tz) const
{
;
time_t time = GetTicks();
if ( time != (time_t)-1 )
{
tm *tm;
if ( tz.GetOffset() == -GetTimeZone() )
{
tm = localtime(&time);
if (!(tm)) {; return Tm(); };
}
else
{
time += (time_t)tz.GetOffset();
if ( time >= 0 )
{
tm = gmtime(&time);
if (!(tm)) {; return Tm(); };
}
else
{
tm = (struct tm *)__null;
}
}
if ( tm )
{
Tm tm2(*tm, tz);
long timeOnly = (m_time % MILLISECONDS_PER_DAY).ToLong();
tm2.msec = (wxDateTime_t)(timeOnly % 1000);
return tm2;
}
}
wxLongLong timeMidnight = m_time + tz.GetOffset() * 1000;
long timeOnly = (timeMidnight % MILLISECONDS_PER_DAY).ToLong();
if ( timeOnly < 0 )
{
timeOnly = MILLISECONDS_PER_DAY + timeOnly;
}
timeMidnight -= timeOnly;
long jdn = (timeMidnight / MILLISECONDS_PER_DAY).ToLong() + EPOCH_JDN;
;
long temp = (jdn + JDN_OFFSET) * 4 - 1;
long century = temp / DAYS_PER_400_YEARS;
temp = ((temp % DAYS_PER_400_YEARS) / 4) * 4 + 3;
long year = (century * 100) + (temp / DAYS_PER_4_YEARS);
long dayOfYear = (temp % DAYS_PER_4_YEARS) / 4 + 1;
temp = dayOfYear * 5 - 3;
long month = temp / DAYS_PER_5_MONTHS;
long day = (temp % DAYS_PER_5_MONTHS) / 5 + 1;
if ( month < 10 )
{
month += 3;
}
else
{
year += 1;
month -= 9;
}
year -= 4800;
;
;
Tm tm;
tm.year = (int)year;
tm.mon = (Month)(month - 1);
tm.mday = (wxDateTime_t)day;
tm.msec = (wxDateTime_t)(timeOnly % 1000);
timeOnly -= tm.msec;
timeOnly /= 1000;
tm.sec = (wxDateTime_t)(timeOnly % 60);
timeOnly -= tm.sec;
timeOnly /= 60;
tm.min = (wxDateTime_t)(timeOnly % 60);
timeOnly -= tm.min;
tm.hour = (wxDateTime_t)(timeOnly / 60);
return tm;
}
wxDateTime& wxDateTime::SetYear(int year)
{
;
Tm tm(GetTm());
tm.year = year;
Set(tm);
return *this;
}
wxDateTime& wxDateTime::SetMonth(Month month)
{
;
Tm tm(GetTm());
tm.mon = month;
Set(tm);
return *this;
}
wxDateTime& wxDateTime::SetDay(wxDateTime_t mday)
{
;
Tm tm(GetTm());
tm.mday = mday;
Set(tm);
return *this;
}
wxDateTime& wxDateTime::SetHour(wxDateTime_t hour)
{
;
Tm tm(GetTm());
tm.hour = hour;
Set(tm);
return *this;
}
wxDateTime& wxDateTime::SetMinute(wxDateTime_t min)
{
;
Tm tm(GetTm());
tm.min = min;
Set(tm);
return *this;
}
wxDateTime& wxDateTime::SetSecond(wxDateTime_t sec)
{
;
Tm tm(GetTm());
tm.sec = sec;
Set(tm);
return *this;
}
wxDateTime& wxDateTime::SetMillisecond(wxDateTime_t millisecond)
{
;
m_time -= m_time % 1000l;
m_time += millisecond;
return *this;
}
wxDateTime& wxDateTime::Add(const wxDateSpan& diff)
{
Tm tm(GetTm());
tm.year += diff.GetYears();
tm.AddMonths(diff.GetMonths());
if ( tm.mday > GetNumOfDaysInMonth(tm.year, tm.mon) )
{
tm.mday = GetNumOfDaysInMonth(tm.year, tm.mon);
}
tm.AddDays(diff.GetTotalDays());
Set(tm);
;
return *this;
}
bool wxDateTime::SetToTheWeek(wxDateTime_t numWeek, WeekDay weekday)
{
int year = GetYear();
Set(4, Jan, year);
SetToWeekDayInSameWeek(weekday) += wxDateSpan::Weeks(numWeek);
if ( GetYear() != year )
{
return 0;
}
return 1;
}
wxDateTime& wxDateTime::SetToLastMonthDay(Month month,
int year)
{
if ( year == Inv_Year )
year = GetYear();
if ( month == Inv_Month )
month = GetMonth();
return Set(GetNumOfDaysInMonth(year, month), month, year);
}
wxDateTime& wxDateTime::SetToWeekDayInSameWeek(WeekDay weekday)
{
if ( !(weekday != Inv_WeekDay) ) { ; *this = wxDefaultDateTime; return *this; };
WeekDay wdayThis = GetWeekDay();
if ( weekday == wdayThis )
{
return *this;
}
else if ( weekday < wdayThis )
{
return Subtract(wxDateSpan::Days(wdayThis - weekday));
}
else
{
return Add(wxDateSpan::Days(weekday - wdayThis));
}
}
wxDateTime& wxDateTime::SetToNextWeekDay(WeekDay weekday)
{
if ( !(weekday != Inv_WeekDay) ) { ; *this = wxDefaultDateTime; return *this; };
int diff;
WeekDay wdayThis = GetWeekDay();
if ( weekday == wdayThis )
{
return *this;
}
else if ( weekday < wdayThis )
{
diff = 7 - (wdayThis - weekday);
}
else
{
diff = weekday - wdayThis;
}
return Add(wxDateSpan::Days(diff));
}
wxDateTime& wxDateTime::SetToPrevWeekDay(WeekDay weekday)
{
if ( !(weekday != Inv_WeekDay) ) { ; *this = wxDefaultDateTime; return *this; };
int diff;
WeekDay wdayThis = GetWeekDay();
if ( weekday == wdayThis )
{
return *this;
}
else if ( weekday > wdayThis )
{
diff = 7 - (weekday - wdayThis);
}
else
{
diff = wdayThis - weekday;
}
return Subtract(wxDateSpan::Days(diff));
}
bool wxDateTime::SetToWeekDay(WeekDay weekday,
int n,
Month month,
int year)
{
if (!(weekday != Inv_WeekDay)) {; return 0; };
ReplaceDefaultYearMonthWithCurrent(&year, &month);
wxDateTime dt;
if ( n > 0 )
{
dt.Set(1, month, year);
WeekDay wdayFirst = dt.GetWeekDay();
int diff = weekday - wdayFirst;
if ( diff < 0 )
diff += 7;
diff += 7*(n - 1);
dt += wxDateSpan::Days(diff);
}
else
{
dt.SetToLastMonthDay(month, year);
WeekDay wdayLast = dt.GetWeekDay();
int diff = wdayLast - weekday;
if ( diff < 0 )
diff += 7;
diff += 7*(-n - 1);
dt -= wxDateSpan::Days(diff);
}
if ( dt.GetMonth() == month )
{
*this = dt;
return 1;
}
else
{
return 0;
}
}
wxDateTime::wxDateTime_t wxDateTime::GetDayOfYear(const TimeZone& tz) const
{
Tm tm(GetTm(tz));
return gs_cumulatedDays[IsLeapYear(tm.year)][tm.mon] + tm.mday;
}
wxDateTime::wxDateTime_t wxDateTime::GetWeekOfYear(wxDateTime::WeekFlags flags,
const TimeZone& tz) const
{
if ( flags == Default_First )
{
flags = GetCountry() == USA ? Sunday_First : Monday_First;
}
wxDateTime_t nDayInYear = GetDayOfYear(tz);
wxDateTime_t week;
WeekDay wd = GetWeekDay(tz);
if ( flags == Sunday_First )
{
week = (nDayInYear - wd + 7) / 7;
}
else
{
week = (nDayInYear - (wd - 1 + 7) % 7 + 7) / 7;
}
WeekDay wdYearStart = wxDateTime(1, Jan, GetYear()).GetWeekDay();
if ( wdYearStart == Wed || wdYearStart == Thu )
{
week++;
}
return week;
}
wxDateTime::wxDateTime_t wxDateTime::GetWeekOfMonth(wxDateTime::WeekFlags flags,
const TimeZone& tz) const
{
Tm tm = GetTm(tz);
wxDateTime dtMonthStart = wxDateTime(1, tm.mon, tm.year);
int nWeek = GetWeekOfYear(flags) - dtMonthStart.GetWeekOfYear(flags) + 1;
if ( nWeek < 0 )
{
nWeek += IsLeapYear(tm.year - 1) ? 53 : 52;
}
return (wxDateTime::wxDateTime_t)nWeek;
}
wxDateTime& wxDateTime::SetToYearDay(wxDateTime::wxDateTime_t yday)
{
int year = GetYear();
if ( !((0 < yday) && (yday <= GetNumberOfDays(year))) ) { ; *this = wxDefaultDateTime; return *this; };
bool isLeap = IsLeapYear(year);
for ( Month mon = Jan; mon < Inv_Month; wxNextMonth(mon) )
{
if ( (mon == Dec) || (yday < gs_cumulatedDays[isLeap][mon + 1]) )
{
Set(yday - gs_cumulatedDays[isLeap][mon], mon, year);
break;
}
}
return *this;
}
double wxDateTime::GetJulianDayNumber() const
{
Tm tm(ToTimezone(GMT0).GetTm(GMT0));
double result = GetTruncatedJDN(tm.mday, tm.mon, tm.year);
result += 0.5;
return result + ((double)(60*(60*tm.hour + tm.min) + tm.sec)) / 86400;
}
double wxDateTime::GetRataDie() const
{
return GetJulianDayNumber() - 1721119.5 - 306;
}
int wxDateTime::IsDST(wxDateTime::Country country) const
{
if (!(country == Country_Default)) {; return -1; };
time_t timet = GetTicks();
if ( timet != (time_t)-1 )
{
tm *tm = localtime(&timet);
if (!(tm)) {; return -1; };
return tm->tm_isdst;
}
else
{
int year = GetYear();
if ( !IsDSTApplicable(year, country) )
{
return -1;
}
return IsBetween(GetBeginDST(year, country), GetEndDST(year, country));
}
}
wxDateTime& wxDateTime::MakeTimezone(const TimeZone& tz, bool noDST)
{
long secDiff = GetTimeZone() + tz.GetOffset();
if ( !noDST && (IsDST() == 1) )
{
secDiff -= 3600;
}
return Subtract(wxTimeSpan::Seconds(secDiff));
}
wxString wxDateTime::Format(const char *format, const TimeZone& tz) const
{
if (!(format)) {; return ""; };
time_t time = GetTicks();
if ( (time != (time_t)-1) && !strstr(format, "%l") )
{
tm *tm;
if ( tz.GetOffset() == -GetTimeZone() )
{
tm = localtime(&time);
if (!(tm)) {; return wxEmptyString; };
}
else
{
time += (int)tz.GetOffset();
if ( time >= 0 )
{
tm = gmtime(&time);
if (!(tm)) {; return wxEmptyString; };
}
else
{
tm = (struct tm *)__null;
}
}
if ( tm )
{
return CallStrftime(format, tm);
}
}
Tm tm = GetTm(tz);
struct tm tmTimeOnly;
tmTimeOnly.tm_hour = tm.hour;
tmTimeOnly.tm_min = tm.min;
tmTimeOnly.tm_sec = tm.sec;
tmTimeOnly.tm_wday = 0;
tmTimeOnly.tm_yday = 0;
tmTimeOnly.tm_mday = 1;
tmTimeOnly.tm_mon = 0;
tmTimeOnly.tm_year = 76;
tmTimeOnly.tm_isdst = 0;
wxString tmp, res, fmt;
for ( const char *p = format; *p; p++ )
{
if ( *p != '%' )
{
res += *p;
continue;
}
switch ( *++p )
{
case 'Y':
fmt = "%04d";
break;
case 'j':
case 'l':
fmt = "%03d";
break;
default:
fmt = "%02d";
}
bool restart = 1;
while ( restart )
{
restart = 0;
switch ( *p )
{
case 'a':
case 'A':
res += GetWeekDayName(tm.GetWeekDay(),
*p == 'a' ? Name_Abbr : Name_Full);
break;
case 'b':
case 'B':
res += GetMonthName(tm.mon,
*p == 'b' ? Name_Abbr : Name_Full);
break;
case 'c':
case 'x':
# 1942 "../wxX11/src/common/datetime.cpp"
{
# 1952 "../wxX11/src/common/datetime.cpp"
int yearReal = GetYear(tz);
int mod28 = yearReal % 28;
int year;
if ( mod28 < 10 )
{
year = 1988 + mod28;
}
else
{
year = 1970 + mod28 - 10;
}
int nCentury = year / 100,
nCenturyReal = yearReal / 100;
int nLostWeekDays = (nCentury - nCenturyReal) -
(nCentury / 4 - nCenturyReal / 4);
while ( (nLostWeekDays % 7) != 0 )
{
nLostWeekDays += year++ % 4 ? 1 : 2;
}
;
wxString strYear, strYear2;
strYear.Printf("%d", year);
strYear2.Printf("%d", year % 100);
wxString fmt = format;
wxString replacement = (char)-1;
while ( fmt.Find(replacement) != (-1) )
{
replacement << (char)-1;
}
wxString replacement2 = (char)-2;
while ( fmt.Find(replacement) != (-1) )
{
replacement << (char)-2;
}
bool wasReplaced = fmt.Replace(strYear, replacement) > 0;
if ( !wasReplaced )
wasReplaced = fmt.Replace(strYear2, replacement2) > 0;
# 2020 "../wxX11/src/common/datetime.cpp"
struct tm tmAdjusted;
InitTm(tmAdjusted);
tmAdjusted.tm_hour = tm.hour;
tmAdjusted.tm_min = tm.min;
tmAdjusted.tm_sec = tm.sec;
tmAdjusted.tm_wday = tm.GetWeekDay();
tmAdjusted.tm_yday = GetDayOfYear();
tmAdjusted.tm_mday = tm.mday;
tmAdjusted.tm_mon = tm.mon;
tmAdjusted.tm_year = year - 1900;
tmAdjusted.tm_isdst = 0;
wxString str = CallStrftime(*p == 'c' ? "%c"
: "%x",
&tmAdjusted);
wxString strYearReal, strYearReal2;
strYearReal.Printf("%04d", yearReal);
strYearReal2.Printf("%02d", yearReal % 100);
str.Replace(strYear, strYearReal);
str.Replace(strYear2, strYearReal2);
if ( wasReplaced )
{
str.Replace(replacement2, strYear2);
str.Replace(replacement, strYear);
}
res += str;
}
break;
case 'd':
res += wxString::Format(fmt, tm.mday);
break;
case 'H':
res += wxString::Format(fmt, tm.hour);
break;
case 'I':
{
int hour12 = tm.hour > 12 ? tm.hour - 12
: tm.hour ? tm.hour : 12;
res += wxString::Format(fmt, hour12);
}
break;
case 'j':
res += wxString::Format(fmt, GetDayOfYear(tz));
break;
case 'l':
res += wxString::Format(fmt, GetMillisecond(tz));
break;
case 'm':
res += wxString::Format(fmt, tm.mon + 1);
break;
case 'M':
res += wxString::Format(fmt, tm.min);
break;
case 'p':
res += CallStrftime("%p", &tmTimeOnly);
break;
case 'S':
res += wxString::Format(fmt, tm.sec);
break;
case 'U':
res += wxString::Format(fmt, GetWeekOfYear(Sunday_First, tz));
break;
case 'W':
res += wxString::Format(fmt, GetWeekOfYear(Monday_First, tz));
break;
case 'w':
res += wxString::Format(fmt, tm.GetWeekDay());
break;
case 'X':
res += CallStrftime("%X", &tmTimeOnly);
break;
case 'y':
res += wxString::Format(fmt, tm.year % 100);
break;
case 'Y':
res += wxString::Format(fmt, tm.year);
break;
case 'Z':
res += CallStrftime("%Z", &tmTimeOnly);
break;
default:
fmt.Empty();
while ( *p == '-' || *p == '+' ||
*p == ' ' || isdigit(*p) )
{
fmt += *p;
}
if ( !fmt.IsEmpty() )
{
fmt.Prepend('%');
fmt.Append('d');
restart = 1;
break;
}
;
case '%':
res += *p;
break;
case 0:
;
res += '%';
break;
}
}
}
return res;
}
# 2175 "../wxX11/src/common/datetime.cpp"
const char *wxDateTime::ParseRfc822Date(const char* date)
{
if (!(date)) {; return (char *)__null; };
const char *p = date;
const char *comma = strchr(p, ',');
if ( comma )
{
p = comma + 1;
if ( *p != ' ' )
{
wxLogDebug("no space after weekday in RFC822 time spec");
return (char *)__null;
}
p++;
}
if ( !isdigit(*p) )
{
wxLogDebug("day number expected in RFC822 time spec, none found");
return (char *)__null;
}
wxDateTime_t day = *p++ - '0';
if ( isdigit(*p) )
{
day *= 10;
day += *p++ - '0';
}
if ( *p++ != ' ' )
{
return (char *)__null;
}
wxString monName(p, 3);
Month mon;
if ( monName == "Jan" )
mon = Jan;
else if ( monName == "Feb" )
mon = Feb;
else if ( monName == "Mar" )
mon = Mar;
else if ( monName == "Apr" )
mon = Apr;
else if ( monName == "May" )
mon = May;
else if ( monName == "Jun" )
mon = Jun;
else if ( monName == "Jul" )
mon = Jul;
else if ( monName == "Aug" )
mon = Aug;
else if ( monName == "Sep" )
mon = Sep;
else if ( monName == "Oct" )
mon = Oct;
else if ( monName == "Nov" )
mon = Nov;
else if ( monName == "Dec" )
mon = Dec;
else
{
wxLogDebug("Invalid RFC 822 month name '%s'", monName.c_str());
return (char *)__null;
}
p += 3;
if ( *p++ != ' ' )
{
return (char *)__null;
}
if ( !isdigit(*p) )
{
return (char *)__null;
}
int year = *p++ - '0';
if ( !isdigit(*p) )
{
return (char *)__null;
}
year *= 10;
year += *p++ - '0';
if ( isdigit(*p) )
{
year *= 10;
year += *p++ - '0';
if ( !isdigit(*p) )
{
return (char *)__null;
}
year *= 10;
year += *p++ - '0';
}
if ( *p++ != ' ' )
{
return (char *)__null;
}
if ( !isdigit(*p) )
{
return (char *)__null;
}
wxDateTime_t hour = *p++ - '0';
if ( !isdigit(*p) )
{
return (char *)__null;
}
hour *= 10;
hour += *p++ - '0';
if ( *p++ != ':' )
{
return (char *)__null;
}
if ( !isdigit(*p) )
{
return (char *)__null;
}
wxDateTime_t min = *p++ - '0';
if ( !isdigit(*p) )
{
return (char *)__null;
}
min *= 10;
min += *p++ - '0';
wxDateTime_t sec = 0;
if ( *p++ == ':' )
{
if ( !isdigit(*p) )
{
return (char *)__null;
}
sec = *p++ - '0';
if ( !isdigit(*p) )
{
return (char *)__null;
}
sec *= 10;
sec += *p++ - '0';
}
if ( *p++ != ' ' )
{
return (char *)__null;
}
int offset;
if ( *p == '-' || *p == '+' )
{
bool plus = *p++ == '+';
if ( !isdigit(*p) || !isdigit(*(p + 1)) )
{
return (char *)__null;
}
offset = 60*(10*(*p - '0') + (*(p + 1) - '0'));
p += 2;
if ( !isdigit(*p) || !isdigit(*(p + 1)) )
{
return (char *)__null;
}
offset += 10*(*p - '0') + (*(p + 1) - '0');
if ( !plus )
{
offset = -offset;
}
p += 2;
}
else
{
if ( !*(p + 1) )
{
static const int offsets[26] =
{
-1, -2, -3, -4, -5, -6, -7, -8, -9, 0, -10, -11, -12,
+1, +2, +3, +4, +5, +6, +7, +8, +9, +10, +11, +12, 0
};
if ( *p < 'A' || *p > 'Z' || *p == 'J' )
{
wxLogDebug("Invalid militaty timezone '%c'", *p);
return (char *)__null;
}
offset = offsets[*p++ - 'A'];
}
else
{
wxString tz = p;
if ( tz == "UT" || tz == "UTC" || tz == "GMT" )
offset = 0;
else if ( tz == "AST" )
offset = AST - GMT0;
else if ( tz == "ADT" )
offset = ADT - GMT0;
else if ( tz == "EST" )
offset = EST - GMT0;
else if ( tz == "EDT" )
offset = EDT - GMT0;
else if ( tz == "CST" )
offset = CST - GMT0;
else if ( tz == "CDT" )
offset = CDT - GMT0;
else if ( tz == "MST" )
offset = MST - GMT0;
else if ( tz == "MDT" )
offset = MDT - GMT0;
else if ( tz == "PST" )
offset = PST - GMT0;
else if ( tz == "PDT" )
offset = PDT - GMT0;
else
{
wxLogDebug("Unknown RFC 822 timezone '%s'", p);
return (char *)__null;
}
p += tz.length();
}
offset *= 60;
}
Set(day, mon, year, hour, min, sec);
MakeTimezone((wxDateTime_t)(60*offset));
return p;
}
const char *wxDateTime::ParseFormat(const char *date,
const char *format,
const wxDateTime& dateDef)
{
if (!(date && format)) {; return (char *)__null; };
wxString str;
unsigned long num;
bool haveWDay = 0,
haveYDay = 0,
haveDay = 0,
haveMon = 0,
haveYear = 0,
haveHour = 0,
haveMin = 0,
haveSec = 0;
bool hourIsIn12hFormat = 0,
isPM = 0;
wxDateTime_t sec = 0,
min = 0,
hour = 0;
WeekDay wday = Inv_WeekDay;
wxDateTime_t yday = 0,
mday = 0;
wxDateTime::Month mon = Inv_Month;
int year = 0;
const char *input = date;
for ( const char *fmt = format; *fmt; fmt++ )
{
if ( *fmt != '%' )
{
if ( isspace(*fmt) )
{
while ( isspace(*input) )
{
input++;
}
}
else
{
if ( *input++ != *fmt )
{
return (char *)__null;
}
}
continue;
}
size_t width = 0;
while ( isdigit(*++fmt) )
{
width *= 10;
width += *fmt - '0';
}
switch ( *fmt )
{
case 'a':
case 'A':
{
int flag = *fmt == 'a' ? Name_Abbr : Name_Full;
wday = GetWeekDayFromName(GetAlphaToken(input), flag);
if ( wday == Inv_WeekDay )
{
return (char *)__null;
}
}
haveWDay = 1;
break;
case 'b':
case 'B':
{
int flag = *fmt == 'b' ? Name_Abbr : Name_Full;
mon = GetMonthFromName(GetAlphaToken(input), flag);
if ( mon == Inv_Month )
{
return (char *)__null;
}
}
haveMon = 1;
break;
case 'c':
{
wxDateTime dt;
static const char *fmtCtime = "%a %b %d %H:%M:%S %Y";
const char *result = dt.ParseFormat(input, fmtCtime);
if ( !result )
{
result = dt.ParseFormat(input, "%x %X");
}
if ( !result )
{
result = dt.ParseFormat(input, "%X %x");
}
if ( !result )
{
return (char *)__null;
}
Tm tm = dt.GetTm();
haveDay = haveMon = haveYear =
haveHour = haveMin = haveSec = 1;
hour = tm.hour;
min = tm.min;
sec = tm.sec;
year = tm.year;
mon = tm.mon;
mday = tm.mday;
input = result;
}
break;
case 'd':
if ( !GetNumericToken(width, input, &num) ||
(num > 31) || (num < 1) )
{
return (char *)__null;
}
haveDay = 1;
mday = (wxDateTime_t)num;
break;
case 'H':
if ( !GetNumericToken(width, input, &num) || (num > 23) )
{
return (char *)__null;
}
haveHour = 1;
hour = (wxDateTime_t)num;
break;
case 'I':
if ( !GetNumericToken(width, input, &num) || !num || (num > 12) )
{
return (char *)__null;
}
haveHour = 1;
hourIsIn12hFormat = 1;
hour = (wxDateTime_t)(num % 12);
break;
case 'j':
if ( !GetNumericToken(width, input, &num) || !num || (num > 366) )
{
return (char *)__null;
}
haveYDay = 1;
yday = (wxDateTime_t)num;
break;
case 'm':
if ( !GetNumericToken(width, input, &num) || !num || (num > 12) )
{
return (char *)__null;
}
haveMon = 1;
mon = (Month)(num - 1);
break;
case 'M':
if ( !GetNumericToken(width, input, &num) || (num > 59) )
{
return (char *)__null;
}
haveMin = 1;
min = (wxDateTime_t)num;
break;
case 'p':
{
wxString am, pm, token = GetAlphaToken(input);
GetAmPmStrings(&am, &pm);
if ( token.CmpNoCase(pm) == 0 )
{
isPM = 1;
}
else if ( token.CmpNoCase(am) != 0 )
{
return (char *)__null;
}
}
break;
case 'r':
{
wxDateTime dt;
input = dt.ParseFormat(input, "%I:%M:%S %p");
if ( !input )
{
return (char *)__null;
}
haveHour = haveMin = haveSec = 1;
Tm tm = dt.GetTm();
hour = tm.hour;
min = tm.min;
sec = tm.sec;
}
break;
case 'R':
{
wxDateTime dt;
input = dt.ParseFormat(input, "%H:%M");
if ( !input )
{
return (char *)__null;
}
haveHour = haveMin = 1;
Tm tm = dt.GetTm();
hour = tm.hour;
min = tm.min;
}
case 'S':
if ( !GetNumericToken(width, input, &num) || (num > 61) )
{
return (char *)__null;
}
haveSec = 1;
sec = (wxDateTime_t)num;
break;
case 'T':
{
wxDateTime dt;
input = dt.ParseFormat(input, "%H:%M:%S");
if ( !input )
{
return (char *)__null;
}
haveHour = haveMin = haveSec = 1;
Tm tm = dt.GetTm();
hour = tm.hour;
min = tm.min;
sec = tm.sec;
}
break;
case 'w':
if ( !GetNumericToken(width, input, &num) || (wday > 6) )
{
return (char *)__null;
}
haveWDay = 1;
wday = (WeekDay)num;
break;
case 'x':
{
struct tm tm;
const char *result = strptime(input, "%x", &tm);
if ( result )
{
input = result;
haveDay = haveMon = haveYear = 1;
year = 1900 + tm.tm_year;
mon = (Month)tm.tm_mon;
mday = tm.tm_mday;
break;
}
}
{
wxDateTime dt;
wxString fmtDate, fmtDateAlt;
if ( IsWestEuropeanCountry(GetCountry()) ||
GetCountry() == Russia )
{
fmtDate = "%d/%m/%y";
fmtDateAlt = "%m/%d/%y";
}
else
{
fmtDate = "%m/%d/%y";
fmtDateAlt = "%d/%m/%y";
}
const char *result = dt.ParseFormat(input, fmtDate);
if ( !result )
{
result = dt.ParseFormat(input, fmtDateAlt);
}
if ( !result )
{
return (char *)__null;
}
Tm tm = dt.GetTm();
haveDay = haveMon = haveYear = 1;
year = tm.year;
mon = tm.mon;
mday = tm.mday;
input = result;
}
break;
case 'X':
{
struct tm tm;
input = strptime(input, "%X", &tm);
if ( !input )
{
return (char *)__null;
}
haveHour = haveMin = haveSec = 1;
hour = tm.tm_hour;
min = tm.tm_min;
sec = tm.tm_sec;
}
# 2887 "../wxX11/src/common/datetime.cpp"
break;
case 'y':
if ( !GetNumericToken(width, input, &num) || (num > 99) )
{
return (char *)__null;
}
haveYear = 1;
year = (num > 30 ? 1900 : 2000) + (wxDateTime_t)num;
break;
case 'Y':
if ( !GetNumericToken(width, input, &num) )
{
return (char *)__null;
}
haveYear = 1;
year = (wxDateTime_t)num;
break;
case 'Z':
;
break;
case '%':
if ( *input++ != '%' )
{
return (char *)__null;
}
break;
case 0:
;
default:
return (char *)__null;
}
}
Tm tmDef;
if ( dateDef.IsValid() )
{
tmDef = dateDef.GetTm();
}
else if ( IsValid() )
{
tmDef = GetTm();
}
else
{
tmDef = Today().GetTm();
}
Tm tm = tmDef;
if ( haveYear )
{
tm.year = year;
}
if ( haveMon && haveDay )
{
if ( mday > GetNumOfDaysInMonth(tm.year, mon) )
{
wxLogDebug("bad month day in wxDateTime::ParseFormat");
return (char *)__null;
}
tm.mon = mon;
tm.mday = mday;
}
else if ( haveYDay )
{
if ( yday > GetNumberOfDays(tm.year) )
{
wxLogDebug("bad year day in wxDateTime::ParseFormat");
return (char *)__null;
}
Tm tm2 = wxDateTime(1, Jan, tm.year).SetToYearDay(yday).GetTm();
tm.mon = tm2.mon;
tm.mday = tm2.mday;
}
if ( haveHour && hourIsIn12hFormat && isPM )
{
hour += 12;
}
if ( haveHour )
{
tm.hour = hour;
}
if ( haveMin )
{
tm.min = min;
}
if ( haveSec )
{
tm.sec = sec;
}
Set(tm);
return input;
}
const char *wxDateTime::ParseDateTime(const char *date)
{
if (!(date)) {; return (char *)__null; };
;
return (char *)__null;
}
const char *wxDateTime::ParseDate(const char *date)
{
if (!(date)) {; return (char *)__null; };
const char *p = date;
while ( isspace(*p) )
p++;
static struct
{
const char *str;
int dayDiffFromToday;
} literalDates[] =
{
{ "today", 0 },
{ "yesterday", -1 },
{ "tomorrow", 1 },
};
for ( size_t n = 0; n < (sizeof(literalDates)/sizeof(literalDates[0])); n++ )
{
wxString date = wxGetTranslation(literalDates[n].str);
size_t len = date.length();
if ( wxStrlen(p) >= len && (wxString(p, len).CmpNoCase(date) == 0) )
{
p += len;
int dayDiffFromToday = literalDates[n].dayDiffFromToday;
*this = Today();
if ( dayDiffFromToday )
{
*this += wxDateSpan::Days(dayDiffFromToday);
}
return p;
}
}
bool haveDay = 0,
haveWDay = 0,
haveMon = 0,
haveYear = 0;
WeekDay wday = Inv_WeekDay;
wxDateTime_t day = 0;
wxDateTime::Month mon = Inv_Month;
int year = 0;
size_t nPosCur = 0;
static const char *dateDelimiters = ".,/-\t\n ";
wxStringTokenizer tok(p, dateDelimiters);
while ( tok.HasMoreTokens() )
{
wxString token = tok.GetNextToken();
if ( !token )
continue;
unsigned long val;
if ( token.ToULong(&val) )
{
bool isDay = 0,
isMonth = 0,
isYear = 0;
if ( !haveMon && val > 0 && val <= 12 )
{
isMonth = 1;
}
else
{
wxDateTime_t maxDays = haveMon
? GetNumOfDaysInMonth(haveYear ? year : Inv_Year, mon)
: 31;
if ( (val == 0) || (val > (unsigned long)maxDays) )
{
isYear = 1;
}
else
{
isDay = 1;
}
}
if ( isYear )
{
if ( haveYear )
break;
haveYear = 1;
year = (wxDateTime_t)val;
}
else if ( isDay )
{
if ( haveDay )
break;
haveDay = 1;
day = (wxDateTime_t)val;
}
else if ( isMonth )
{
haveMon = 1;
mon = (Month)(val - 1);
}
}
else
{
Month mon2 = GetMonthFromName(token, Name_Full | Name_Abbr);
if ( mon2 != Inv_Month )
{
if ( haveMon )
{
if ( !haveDay )
{
day = (wxDateTime_t)mon + 1;
haveDay = 1;
}
else
{
break;
}
}
mon = mon2;
haveMon = 1;
}
else
{
wday = GetWeekDayFromName(token, Name_Full | Name_Abbr);
if ( wday != Inv_WeekDay )
{
if ( haveWDay )
{
break;
}
haveWDay = 1;
}
else
{
static const char *ordinals[] =
{
"first",
"second",
"third",
"fourth",
"fifth",
"sixth",
"seventh",
"eighth",
"ninth",
"tenth",
"eleventh",
"twelfth",
"thirteenth",
"fourteenth",
"fifteenth",
"sixteenth",
"seventeenth",
"eighteenth",
"nineteenth",
"twentieth",
};
size_t n;
for ( n = 0; n < (sizeof(ordinals)/sizeof(ordinals[0])); n++ )
{
if ( token.CmpNoCase(ordinals[n]) == 0 )
{
break;
}
}
if ( n == (sizeof(ordinals)/sizeof(ordinals[0])) )
{
break;
}
if ( haveDay )
{
break;
}
haveDay = 1;
day = (wxDateTime_t)(n + 1);
}
}
}
nPosCur = tok.GetPosition();
}
if ( !haveDay && !haveWDay )
{
wxLogDebug("ParseDate: no day, no weekday hence no date.");
return (char *)__null;
}
if ( haveWDay && (haveMon || haveYear || haveDay) &&
!(haveDay && haveMon && haveYear) )
{
return (char *)__null;
}
if ( !haveWDay && haveYear && !(haveDay && haveMon) )
{
if ( haveDay && !haveMon )
{
if ( day <= 12 )
{
mon = (wxDateTime::Month)(day - 1);
if ( (year > 0) &&
(unsigned)year <= GetNumOfDaysInMonth(Inv_Year, mon) )
{
day = year;
haveMon = 1;
haveYear = 0;
}
}
}
if ( !haveMon )
{
wxLogDebug("ParseDate: day and month should be specified if year is.");
return (char *)__null;
}
}
if ( !haveMon )
{
mon = GetCurrentMonth();
}
if ( !haveYear )
{
year = GetCurrentYear();
}
if ( haveDay )
{
Set(day, mon, year);
if ( haveWDay )
{
if ( GetWeekDay() != wday )
{
wxLogDebug("ParseDate: inconsistent day/weekday.");
return (char *)__null;
}
}
}
else
{
*this = Today();
SetToWeekDayInSameWeek(wday);
}
p += nPosCur;
if ( nPosCur && strchr(dateDelimiters, *(p - 1)) )
{
p--;
}
return p;
}
const char *wxDateTime::ParseTime(const char *time)
{
if (!(time)) {; return (char *)__null; };
static const struct
{
const char *name;
wxDateTime_t hour;
} stdTimes[] =
{
{ "noon", 12 },
{ "midnight", 00 },
};
for ( size_t n = 0; n < (sizeof(stdTimes)/sizeof(stdTimes[0])); n++ )
{
wxString timeString = wxGetTranslation(stdTimes[n].name);
size_t len = timeString.length();
if ( timeString.CmpNoCase(wxString(time, len)) == 0 )
{
Set(stdTimes[n].hour, 0, 0);
return time + len;
}
}
const char *result = ParseFormat(time, "%I:%M:%S %p");
if ( !result )
{
result = ParseFormat(time, "%H:%M:%S");
}
if ( !result )
{
result = ParseFormat(time, "%I:%M %p");
}
if ( !result )
{
result = ParseFormat(time, "%H:%M");
}
if ( !result )
{
result = ParseFormat(time, "%I %p");
}
if ( !result )
{
result = ParseFormat(time, "%H");
}
if ( !result )
{
result = ParseFormat(time, "%X");
}
return result;
}
bool wxDateTime::IsWorkDay(Country ) const
{
return !wxDateTimeHolidayAuthority::IsHoliday(*this);
}
# 3452 "../wxX11/src/common/datetime.cpp"
enum TimeSpanPart
{
Part_Week,
Part_Day,
Part_Hour,
Part_Min,
Part_Sec,
Part_MSec
};
# 3478 "../wxX11/src/common/datetime.cpp"
wxString wxTimeSpan::Format(const char *format) const
{
if (!(format)) {; return ""; };
wxString str;
str.Alloc(wxStrlen(format));
# 3499 "../wxX11/src/common/datetime.cpp"
TimeSpanPart partBiggest = Part_MSec;
for ( const char *pch = format; *pch; pch++ )
{
char ch = *pch;
if ( ch == '%' )
{
wxString fmtPrefix = '%';
long n;
ch = *++pch;
switch ( ch )
{
default:
;
case '%':
str += ch;
continue;
case 'D':
n = GetDays();
if ( partBiggest < Part_Day )
{
n %= DAYS_PER_WEEK;
}
else
{
partBiggest = Part_Day;
}
break;
case 'E':
partBiggest = Part_Week;
n = GetWeeks();
break;
case 'H':
n = GetHours();
if ( partBiggest < Part_Hour )
{
n %= HOURS_PER_DAY;
}
else
{
partBiggest = Part_Hour;
}
fmtPrefix += "02";
break;
case 'l':
n = GetMilliseconds().ToLong();
if ( partBiggest < Part_MSec )
{
n %= 1000;
}
fmtPrefix += "03";
break;
case 'M':
n = GetMinutes();
if ( partBiggest < Part_Min )
{
n %= MIN_PER_HOUR;
}
else
{
partBiggest = Part_Min;
}
fmtPrefix += "02";
break;
case 'S':
n = GetSeconds().ToLong();
if ( partBiggest < Part_Sec )
{
n %= SEC_PER_MIN;
}
else
{
partBiggest = Part_Sec;
}
fmtPrefix += "02";
break;
}
str += wxString::Format(fmtPrefix + "ld", n);
}
else
{
str += ch;
}
}
return str;
}
# 1 "../wxX11/include/wx/arrimpl.cpp" 1
# 3615 "../wxX11/src/common/datetime.cpp" 2
wxDateTimeArray::~wxDateTimeArray() { Empty(); } void wxDateTimeArray::DoCopy(const wxDateTimeArray& src) { for ( size_t ui = 0; ui < src.Count(); ui++ ) Add(src[ui]); } wxDateTimeArray& wxDateTimeArray::operator=(const wxDateTimeArray& src) { Empty(); DoCopy(src); return *this; } wxDateTimeArray::wxDateTimeArray(const wxDateTimeArray& src) { DoCopy(src); } void wxDateTimeArray::DoEmpty() { for ( size_t ui = 0; ui < Count(); ui++ ) delete (_wxObjArraywxDateTimeArray*)wxBaseArrayPtrVoid::Item(ui); } void wxDateTimeArray::RemoveAt(size_t uiIndex) { if (!(uiIndex < Count())) {; return; }; delete (_wxObjArraywxDateTimeArray*)wxBaseArrayPtrVoid::Item(uiIndex); wxBaseArrayPtrVoid::RemoveAt(uiIndex); } void wxDateTimeArray::Add(const _wxObjArraywxDateTimeArray& item) { _wxObjArraywxDateTimeArray* pItem = new _wxObjArraywxDateTimeArray(item); if ( pItem != __null ) Add(pItem); } void wxDateTimeArray::Insert(const _wxObjArraywxDateTimeArray& item, size_t uiIndex) { _wxObjArraywxDateTimeArray* pItem = new _wxObjArraywxDateTimeArray(item); if ( pItem != __null ) Insert(pItem, uiIndex); } int wxDateTimeArray::Index(const _wxObjArraywxDateTimeArray& Item, bool bFromEnd) const { if ( bFromEnd ) { if ( Count() > 0 ) { size_t ui = Count() - 1; do { if ( (_wxObjArraywxDateTimeArray*)wxBaseArrayPtrVoid::Item(ui) == &Item ) return ui; ui--; } while ( ui != 0 ); } } else { for( size_t ui = 0; ui < Count(); ui++ ) { if( (_wxObjArraywxDateTimeArray*)wxBaseArrayPtrVoid::Item(ui) == &Item ) return ui; } } return (-1); };
static int
wxDateTimeCompareFunc(wxDateTime **first, wxDateTime **second)
{
wxDateTime dt1 = **first,
dt2 = **second;
return dt1 == dt2 ? 0 : dt1 < dt2 ? -1 : +1;
}
wxHolidayAuthoritiesArray wxDateTimeHolidayAuthority::ms_authorities;
bool wxDateTimeHolidayAuthority::IsHoliday(const wxDateTime& dt)
{
size_t count = ms_authorities.GetCount();
for ( size_t n = 0; n < count; n++ )
{
if ( ms_authorities[n]->DoIsHoliday(dt) )
{
return 1;
}
}
return 0;
}
size_t
wxDateTimeHolidayAuthority::GetHolidaysInRange(const wxDateTime& dtStart,
const wxDateTime& dtEnd,
wxDateTimeArray& holidays)
{
wxDateTimeArray hol;
holidays.Empty();
size_t count = ms_authorities.GetCount();
for ( size_t nAuth = 0; nAuth < count; nAuth++ )
{
ms_authorities[nAuth]->DoGetHolidaysInRange(dtStart, dtEnd, hol);
{ size_t count = (hol).Count(); for ( size_t n = 0; n < count; n++ ) { (holidays).Add((hol)[n]); } };
}
holidays.Sort(wxDateTimeCompareFunc);
return holidays.GetCount();
}
void wxDateTimeHolidayAuthority::ClearAllAuthorities()
{
{ size_t count = (ms_authorities).Count(); for ( size_t n = 0; n < count; n++ ) { delete (ms_authorities)[n]; } (ms_authorities).Empty(); };
}
void wxDateTimeHolidayAuthority::AddAuthority(wxDateTimeHolidayAuthority *auth)
{
ms_authorities.Add(auth);
}
bool wxDateTimeWorkDays::DoIsHoliday(const wxDateTime& dt) const
{
wxDateTime::WeekDay wd = dt.GetWeekDay();
return (wd == wxDateTime::Sun) || (wd == wxDateTime::Sat);
}
size_t wxDateTimeWorkDays::DoGetHolidaysInRange(const wxDateTime& dtStart,
const wxDateTime& dtEnd,
wxDateTimeArray& holidays) const
{
if ( dtStart > dtEnd )
{
;
return 0u;
}
holidays.Empty();
wxDateTime dtSatFirst = dtStart.GetNextWeekDay(wxDateTime::Sat),
dtSatLast = dtEnd.GetPrevWeekDay(wxDateTime::Sat),
dtSunFirst = dtStart.GetNextWeekDay(wxDateTime::Sun),
dtSunLast = dtEnd.GetPrevWeekDay(wxDateTime::Sun),
dt;
for ( dt = dtSatFirst; dt <= dtSatLast; dt += wxDateSpan::Week() )
{
holidays.Add(dt);
}
for ( dt = dtSunFirst; dt <= dtSunLast; dt += wxDateSpan::Week() )
{
holidays.Add(dt);
}
return holidays.GetCount();
}
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: c++/6035: Internal compiler error in extract_insn
@ 2002-05-20 7:31 lerdsuwa
0 siblings, 0 replies; 2+ messages in thread
From: lerdsuwa @ 2002-05-20 7:31 UTC (permalink / raw)
To: gcc-bugs, gcc-prs, ian.brown, nobody
Synopsis: Internal compiler error in extract_insn
State-Changed-From-To: open->closed
State-Changed-By: lerdsuwa
State-Changed-When: Mon May 20 07:31:28 2002
State-Changed-Why:
Fixed in 3.1.
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=6035
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2002-05-20 14:31 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-03-22 1:56 c++/6035: Internal compiler error in extract_insn ian.brown
2002-05-20 7:31 lerdsuwa
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).