Compare commits

..

1086 Commits

Author SHA1 Message Date
Bryan Petty
1186b7e57e This commit was manufactured by cvs2svn to create tag
'BEFORE_LONG_INT_CHANGE'.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/tags/BEFORE_LONG_INT_CHANGE@4013 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-15 18:12:56 +00:00
Vadim Zeitlin
a492cb0f49 unused param
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4012 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-15 18:12:56 +00:00
Vadim Zeitlin
a1fffa9fd5 don't draw with NULL font
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4011 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-15 18:09:45 +00:00
Vadim Zeitlin
936895ee9d compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4010 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-15 17:59:05 +00:00
Vadim Zeitlin
c19c1ca9be compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4009 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-15 17:49:56 +00:00
Vadim Zeitlin
729d8f9158 warning fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4008 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-15 17:47:34 +00:00
Vadim Zeitlin
d64af447da on some systems (HP-UX), strtok_r() needs _REENTRANT to be defined
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4007 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-15 17:35:14 +00:00
Vadim Zeitlin
80810ca399 let's not forget that \& has lower priority than == in C
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4006 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-15 17:15:43 +00:00
Vadim Zeitlin
995612e2ab 1. wxImageHandler::DoCanRead() introduced to solve the virtual function name
hiding problem
2. wxPNMHandler::CanRead() shouldn't use wxT() - should it?


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4005 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-15 16:59:32 +00:00
Vadim Zeitlin
52f13e4930 resolved a conflict
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-15 16:28:09 +00:00
Vadim Zeitlin
cb0f56f978 resolved a conflict
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4003 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-15 16:21:25 +00:00
Vadim Zeitlin
5b7f1aab47 compile fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4002 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-15 16:14:01 +00:00
Vadim Zeitlin
2b835535a9 removed wxDialog::Centre()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4001 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-15 15:49:05 +00:00
Robert Roebling
ecab4dba7d scrolling of foreign windowsplus sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@4000 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-15 14:59:44 +00:00
George Tasker
9c40a88dbb Removed a variable declaration from within a FOR statement for compilation on HP-UX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3999 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-15 10:11:06 +00:00
David Webster
11e59d47c0 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3998 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-15 04:07:54 +00:00
David Webster
fb46a9a6c6 no message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3997 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 22:36:24 +00:00
Julian Smart
4c0a2c5c3e Updated install.txt, added double-inclusion guard, corrected a GnuWin32 thing
in spinctrl.cpp


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3996 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 17:47:31 +00:00
Robert Roebling
be0872076f HP-UX fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3995 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 17:08:31 +00:00
Vadim Zeitlin
458ed37d80 never undefine 'inline' keyword for C++ compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3994 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 15:52:35 +00:00
Vadim Zeitlin
d607e6c39d manually test for X11 headers/libs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 15:43:11 +00:00
Vadim Zeitlin
9e92b089c0 NULL shouldn't be used in test programs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3992 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 15:18:39 +00:00
Harco de Hilster
8f8ca6c952 fixed some frame cleanup stuff; The main frame (MyFrame) explicitely closes
the helpframe now before deleting the config pointer and closing itself.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3991 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 14:57:17 +00:00
Julian Smart
f3ef286fee Added sqltypes.h (for Cygwin b20), some other Cygwin fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3990 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 14:10:59 +00:00
Robert Roebling
5451765210 Changed time of sending the wxSizeEvent and assorted things,
this made wxGLCanvas work,
  wxMiniFrame looks correct again,
  Corrected makefile for HTML help


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3989 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 13:09:01 +00:00
Vadim Zeitlin
791a21023f init.cpp isn't included in the makefiles for wxMSW any more
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3988 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 12:55:26 +00:00
Vadim Zeitlin
be4c1d33a7 -mwindows added for mingw32 compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3987 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 12:49:30 +00:00
Julian Smart
b4fe51258d makeg95.env edited for Mingw32/gcc 2.95 compilation; _T not redefined for
Mingw32; removed init.cpp from makefile.vc (tmake keeps generating it);
added spinctrl.cpp to MSW section in filelist.txt.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3986 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 12:37:52 +00:00
Vadim Zeitlin
da8bed9bfd = replaced with ==
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3985 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 12:31:35 +00:00
Vadim Zeitlin
a0c3c734d7 more mingw32 warnings fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3984 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 12:02:03 +00:00
Julian Smart
cd34332fc4 Corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3983 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 10:20:38 +00:00
Robert Roebling
cf1f0870d8 Applied patches for AIX,
Corrected prop dialog,
  Tabbing in parent top-level-windows no longer possible,


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3982 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 09:29:20 +00:00
Julian Smart
a9b832dd86 Added makewise.bat, for making a WISE installation automatically.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3981 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 08:56:05 +00:00
Julian Smart
1c9143bd11 Added system DLL file installs for makewise.bat.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3980 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 08:54:50 +00:00
Michael Bedward
af563b6612 Regenerated from tmake after editing filelist.txt to add gridg.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3979 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 05:41:22 +00:00
Michael Bedward
e7494fa996 Put gridg.h back so that it gets installed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 05:36:05 +00:00
Michael Bedward
5795d034f1 Changed all EVT_WXGRID... constants to EVT_GRID...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3977 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 05:03:00 +00:00
David Webster
37f214d588 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3976 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 04:43:46 +00:00
Michael Bedward
b5f788a51e Changed all EVT_WXGRID... constants to EVT_GRID...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3975 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-14 04:42:29 +00:00
David Webster
d88de032d3 Latest Updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3974 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 22:34:18 +00:00
Unknown (CR)
9bfa7bfcbd changed LVHITTESTINFO to LV_HITTESTINFO
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 22:33:43 +00:00
Unknown (CR)
e43cab59ed brought regconf interface read/write methods up to spec
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3972 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 22:05:03 +00:00
David Webster
634157786d no message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3971 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 20:35:03 +00:00
Vadim Zeitlin
a17e237f4a warnings for mingw32 compilation fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3970 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 18:52:05 +00:00
Vadim Zeitlin
4882bf1b78 DnD is disabled automatically y configure for mingw32 without OLE headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3969 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 18:51:01 +00:00
Vadim Zeitlin
a0c79abb5d small updates for Linux->Win32 cross compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3968 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 18:06:19 +00:00
Robin Dunn
801e06d5a8 update to wxPython module
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3967 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 18:00:29 +00:00
Unknown (CR)
72a0c982c4 Added tabg.o/tabg.d to GTK make stuff. Tabbed dialogs weren't linking correct.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3966 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 17:16:47 +00:00
Vadim Zeitlin
0709ee62f2 regenerated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3965 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 17:07:33 +00:00
Unknown (CR)
84a6b8590b Added item clicks event support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3964 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 17:05:17 +00:00
Unknown (CR)
3995f8eb97 Added support for item clicks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3963 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 17:04:34 +00:00
Unknown (CR)
fb882e1cbe Added right/middle click item support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3962 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 17:03:24 +00:00
Unknown (CR)
aad0fe4b45 Added tree control item click event wrappers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3961 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 17:01:06 +00:00
Unknown (CR)
4debf1352d Added list control item click event wrappers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3960 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 17:00:39 +00:00
Unknown (CR)
5d53c76bab Added tree control item click events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3959 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 16:59:21 +00:00
Julian Smart
07e632909b Added some setup files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3958 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 16:30:46 +00:00
Vadim Zeitlin
0c7571ef17 wxMotif module corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3957 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 16:15:23 +00:00
Robert Roebling
3fd528b939 Forgot resource sample.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3956 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 15:35:55 +00:00
Julian Smart
f4c890fdbe Added precompiled header stuff.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3955 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 11:59:13 +00:00
Michael Bedward
0eee528340 Added demonstration of insert/delete rows/cols
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3954 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 11:57:22 +00:00
Michael Bedward
3f2965162c Fixed bug causing crashes when all rows or cols were deleted and then an attempt was made to insert rows/cols
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3953 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 11:49:55 +00:00
Michael Bedward
616b488dbc Put include for makelib.b32 back in (why was it taken out ? without it the lib isn't built)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3952 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 04:36:32 +00:00
Ryan Norton
38d679fdb5 Tcl regex lib
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3949 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 02:22:17 +00:00
Vadim Zeitlin
652bbafac4 added autogenerated files to make build work
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3948 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-13 02:22:15 +00:00
Vadim Zeitlin
a497618a56 1. DLL compilation fixes (wrong WXDLLEXPORT placement) in db.h/cpp
2. dummy typedef added to gsocket.c - trans unit can't be empty
3. WX_DEFINE_EXPORTED_ARRAY & friends appear


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3947 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-12 23:57:40 +00:00
Vadim Zeitlin
755c41bf1e tmake template for DLL project for VC++ 6.0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3946 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-12 23:49:56 +00:00
David Webster
cdf1e71425 More OS/2 stuff
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3945 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-12 22:49:24 +00:00
Robert Roebling
1b68e0b5b9 Refresh() problem from DialogEd solved
Unified the naming of GNU pragmas for base classed:
    dialogbase, choicebase, etc.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-12 21:52:17 +00:00
Robin Dunn
8ad4b7acf4 Attempting to create module def for wxPython
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-12 20:29:23 +00:00
George Tasker
3351164d4c Moved the #include of filefn.h from db.h to db.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-12 17:20:48 +00:00
George Tasker
53953cf736 Moved the #include of filefn.h to db.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3941 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-12 17:19:45 +00:00
Robert Roebling
c09ab26a49 Some more distrib corrections.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-12 14:36:37 +00:00
George Tasker
e57fe6cc73 Use of a postgres data source would fail due to checking for "PostgresSQL" rather than "PostgreSQL"
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-12 11:06:24 +00:00
George Tasker
aa277f4ce2 Changed #ifdef _IODBC_ to #ifdef __UNIX__
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-12 11:02:53 +00:00
Robert Roebling
79144b8a47 More makefiles, distrib things,
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3937 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-12 09:44:18 +00:00
Robin Dunn
11cde40611 2.1.5 quickie release
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3936 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-12 06:13:37 +00:00
Robin Dunn
07cb3fd3d1 distrib tweaks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-12 03:04:38 +00:00
Robin Dunn
60a15c9b7b more intelligent build for gtk
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3933 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-12 03:04:13 +00:00
Robert Roebling
d5a07b9ec9 Various distrib things,
Applied patches for HP-UX compilation,
  Corrected (?) vetoing of tree expansion,
  Raised version.h to 2.1.10


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3932 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-11 22:36:46 +00:00
Robin Dunn
46c3e3d92a minor fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3931 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-11 22:16:33 +00:00
Robert Roebling
d1b15f03b8 Added wxMenu::Delete() and fixed some menu deleted memory
leaks. Some.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3930 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-11 19:32:58 +00:00
Robert Roebling
147bc49159 Tried to make wxGLCanvas work again. WIP.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3929 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-11 15:24:49 +00:00
Julian Smart
4c61bdabd6 Added blank line to end (Tex2RTF requirement)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3928 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-11 11:06:44 +00:00
Robert Roebling
27d029c722 Minor doc updates,
Made resizing a scrolled window function,


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-11 10:48:43 +00:00
Robert Roebling
738f9e5a12 added SpinCtrl,
updated a few headers,
  tried to set window size hints, no effect with KWM,


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3926 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-11 10:05:36 +00:00
J. Russell Smyth
d66d3ce6dd Updated instructions for Mingw32/gcc-2.95
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3925 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-11 05:56:43 +00:00
David Webster
75f11ad7ca *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3924 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-11 02:49:06 +00:00
Vadim Zeitlin
b782f2e0f6 wxSpinCtrl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3923 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-10 23:28:07 +00:00
Václav Slavík
2083616e16 fixed bug with 2 frames
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3922 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-10 20:21:08 +00:00
Václav Slavík
1b231e235b fixed terminology (widget vs. binded window)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3921 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-10 20:20:43 +00:00
Václav Slavík
622ea7838d fixed cursor flickering in wxHtmlWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3920 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-10 20:18:08 +00:00
Václav Slavík
db98870d82 preparing for HTML printing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3919 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-10 20:17:42 +00:00
Robert Roebling
247e5b1632 TreeTest compiles again,
Found flickering bug wrt cursors.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3918 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-10 19:56:38 +00:00
Robert Roebling
bf0c00c6e8 Scrolling updates.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3917 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-10 18:42:43 +00:00
David Webster
fb9010ed40 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-10 18:36:14 +00:00
Karsten Ballüder
89be8239db updated richedit and nettest
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3915 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-10 16:52:34 +00:00
Karsten Ballüder
2726c66d5b added samples richedit and nettest
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3914 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-10 16:50:05 +00:00
Robert Roebling
5e4ff78a96 Minor changes to keep my MSW source
in synch...


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3913 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-10 15:04:47 +00:00
Guilhem Lavaux
783ff666e0 Changed Ungetch behaviour (FIFO -> LIFO).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3912 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-10 11:36:39 +00:00
Robin Dunn
bc29c5e0e1 minor additions and bugfixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3911 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-09 23:13:43 +00:00
Robin Dunn
06c0fba410 minor additions and bugfixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3910 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-09 21:24:16 +00:00
Robin Dunn
21422dd796 incremented wxPython version number
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3909 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-09 21:23:12 +00:00
Robin Dunn
7e94145827 Ifdef'ed back in the scrolling aware drawing code in wxHtmlWidgetCell
for MSW


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3908 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-09 21:19:10 +00:00
Robin Dunn
a091d18c61 Added WXDLLEXPORT for wxInitAllImageHandlers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3907 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-09 21:16:45 +00:00
Robert Roebling
e115e77131 Applied a few patches,
Put some life into iODBC again,


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3906 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-09 13:32:40 +00:00
Julian Smart
2a6277d4f2 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3905 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-09 13:11:23 +00:00
Robert Roebling
de87c35312 Makefile changes for static libs and HP-UX,
Compile fixes for HP-UX,


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3904 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-09 11:20:06 +00:00
Robert Roebling
307f16e829 Changed SetToolBar() to behave a bit smarter. Untested.
Removed some unused variables.
  More tests in scroll sample.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3903 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-09 09:06:35 +00:00
Robin Dunn
ca43a38c0f Attempting to restore the binary files that got trashed earlier today.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3902 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-09 07:15:31 +00:00
Robin Dunn
a79fa1ed13 fixed compilation error
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3901 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-09 07:13:13 +00:00
Robin Dunn
272cd5dddb Added missing costructor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3900 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-09 07:10:26 +00:00
Robin Dunn
3156ba6ea6 passing CRTFLAG to subordinant makes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3899 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-09 07:09:46 +00:00
David Webster
45016e1a6b *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3898 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-09 04:19:01 +00:00
Robert Roebling
ed673c6a48 New scrolling code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3897 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-08 20:09:32 +00:00
Václav Slavík
2136a764e5 fixed bug in tables when border=0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3896 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-08 15:24:58 +00:00
Václav Slavík
44174280e5 fixed bug in imagemap
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3895 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-08 15:22:39 +00:00
Karsten Ballüder
223d09f6b5 replaced T() makro with wxT() due to namespace probs, _T() exists, too
fixed compilation problems, mainly in html code
compiles and links fine on Solaris, runs with samples and Mahogany


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-08 14:35:56 +00:00
Sylvain Bougnoux
b4a2ab728b tiny fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3893 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-08 11:56:57 +00:00
Julian Smart
fcc228b31e Debug option mod
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3892 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-08 10:22:00 +00:00
Julian Smart
85f3749fd2 Made .dsp files consistent with debug option; added JPEG project file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3891 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-08 10:21:14 +00:00
David Webster
0371a69143 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3890 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-08 03:39:11 +00:00
Robin Dunn
89aea7b0ef distribution updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3888 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 23:40:33 +00:00
Robin Dunn
fbfe0e6a88 more release notes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3887 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 23:19:22 +00:00
Robin Dunn
ae920857a7 bugfix dealing with where the CWD is...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3886 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 23:00:59 +00:00
Robin Dunn
ccba72313c distribution updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 22:28:44 +00:00
Robin Dunn
86e7822245 wxPython documentation updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 22:16:50 +00:00
Robin Dunn
4f63da7e98 more updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3883 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 22:11:23 +00:00
Robin Dunn
f40dc1e275 some release notes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3882 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 22:07:42 +00:00
Robin Dunn
9b5801d640 distribution updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3881 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 22:05:16 +00:00
Robin Dunn
167b96c2ad updated generated sources
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3880 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 18:49:47 +00:00
Robin Dunn
6147ee3451 new contributions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3879 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 18:48:14 +00:00
Vadim Zeitlin
e1ea357c67 wxLog::FlushActive added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3878 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 18:18:07 +00:00
Vadim Zeitlin
bbfa03228a 1. wxLog::FlushActive() added
2. threads can be used in console mode


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3877 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 18:12:57 +00:00
Robin Dunn
48115f4a69 updated generated sources
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3876 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 16:52:00 +00:00
Robin Dunn
1475671a66 Added event class constructors
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3875 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 16:51:10 +00:00
Robin Dunn
e9f2ef9429 updated distribution list
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3874 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 16:50:17 +00:00
Karsten Ballüder
c4684a42c8 added missing implementation (untested, but compiles)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3873 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 16:29:50 +00:00
Vadim Zeitlin
39a7c7e167 compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3872 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 16:06:39 +00:00
Vadim Zeitlin
00ded55423 item about Borland C++ dislike for objects in ternary operator added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3871 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 16:02:11 +00:00
Vadim Zeitlin
2b37dc19c5 compile fix for BC++
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3870 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 15:54:58 +00:00
Karsten Ballüder
3976f6a846 typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3869 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 15:52:58 +00:00
George Tasker
a2115c88f3 Added support for dBase, PostGres, MySQL, Access, MS SQL Server.
Added QUERY_ONLY data connection types.
SQL logging code addded.
Cleaned up handling compilation under both 1.6x and 2.x.
Added debug code to warn when connections were not released on program termination.
MS-VC6 corrections due to larger memory buffers required.
Parameter added to not require CreateView() and CreateTable() to drop the view or table first.
DropView() function added.
Database UserIDs can now be passed to functions that need them.
SQLUnbind() called where needed now to prevent resource leaks.
TableExists() function now handles dBase files.
Dbms() function added to determine which database the program is currently running against.
Comments have been added to the Dbms() function to indicate issues specific to different data sources.
Dynamic cursor support added (no longer creates 5-7 cursors for every wxTable instance).
wxTable dtor is now virtual.
Parameter added to not require CreateIndex() and CreateTable() to drop the view or table first.
DropIndex() and DropTable() functions added.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3868 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 14:19:57 +00:00
Vadim Zeitlin
9b64e79868 some fixes after global _T() => T() change
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3867 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 14:07:48 +00:00
Vadim Zeitlin
7c4eef7a75 Unicode overview added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3866 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 12:02:36 +00:00
George Tasker
3806d8a9f6 no message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3865 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 11:06:20 +00:00
George Tasker
65d7ddc4eb Fixed the GUI so it will now work correctly when widgets are clicked/used. This demo program was not really even usable, although the database portions worked correctly.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3864 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 11:04:06 +00:00
Unknown (JL)
d604ea3355 switch /MD /MDd depend on FINAL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3863 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 07:55:08 +00:00
Michael Bedward
66242c8007 Added page up and page down key support.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3862 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 06:36:41 +00:00
David Webster
21802234df *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3861 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-07 04:44:22 +00:00
Robin Dunn
134d79dca7 more tweaks and fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3860 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 23:49:48 +00:00
Vadim Zeitlin
2690830ea0 added wxDialUpManager::IsAlwaysConnected() and GetISPNames(), also Dial()
is now smart enough to propose to choose from available ISPs and tries to
find out the username and password on its own


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3859 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 23:00:40 +00:00
Vadim Zeitlin
28d00598b3 fix for base-only files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3858 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 22:57:30 +00:00
Vadim Zeitlin
934d4f8d8c fix for .c files in msw subdir for VC++ 6
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3857 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 22:41:17 +00:00
Robin Dunn
7bf5436263 Allow override of /MDd
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3856 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 19:09:07 +00:00
Vadim Zeitlin
cdb5168095 _T() restored for compatibility
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3855 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 18:12:57 +00:00
Vadim Zeitlin
b540eb2bee some warnings suppressed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3854 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 18:12:41 +00:00
Vadim Zeitlin
07818da861 wxRegion::IsEmpty() added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3853 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 18:11:57 +00:00
Vadim Zeitlin
3766781218 more changes for wxBase - starts to work under Unix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3852 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 17:48:34 +00:00
Unknown (JL)
6768c790de compile error with VC6.0 fixed. #include "wx/wxprec.h" moved to top of file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3851 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 17:29:56 +00:00
Robin Dunn
064f8bf6f8 removed some test code that accidentally was left in
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3850 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 16:27:10 +00:00
Karsten Ballüder
74697a5713 cvs debugging
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3849 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 15:42:04 +00:00
Karsten Ballüder
e87d60c93b cvs debugging
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3848 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 15:40:04 +00:00
Julian Smart
a181ac202f Corrected setting back
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3847 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 15:04:05 +00:00
Michael Bedward
e685e57bbd Have to set focus to edit control when it is shown otherwise the
insertion point stays at the beginning of the text control under wxMotif.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3846 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 08:23:29 +00:00
Robin Dunn
13971833d8 now supports wxCURSOR_BULLSEYE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3845 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 07:09:26 +00:00
Robin Dunn
8f17924e73 added font encoding support
some more demos
some contributed items into the library
many little tweaks and such


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3844 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 07:03:36 +00:00
Robin Dunn
f0261a7246 added font encoding support
some more demos
some contributed items into the library
many little tweaks and such


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3843 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 06:22:25 +00:00
Michael Bedward
91233253ec ifdef'd out wxEmptyString. This is defined in string.cpp.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3842 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 05:45:05 +00:00
Michael Bedward
f85afd4e46 Added new wxGrid classes. This is a work in progress !
Define wxUSE_NEW_GRID as 1 in setup.h to compile the new wxGrid
otherwise the old wxGrid class will be compiled.
Treat with caution and expect bugs and missing bits at this stage.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3841 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 05:13:20 +00:00
Michael Bedward
10434f3c24 Added comments
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3840 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 04:58:38 +00:00
Michael Bedward
e442cc0d9d Sample program for new wxGrid classes.
Define wxUSE_NEW_GRID as 1 in setup.h to use the new wxGrid.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3839 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-06 04:55:17 +00:00
Václav Slavík
704d25e2a3 PS printing now uses afm instead of gs_afm metrics
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3838 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-05 22:56:29 +00:00
David Webster
f0a56ab0c3 wxOS2 updates for 10/5/99
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3837 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-05 22:10:56 +00:00
Robert Roebling
f7a11f8c8e Updated configure (not only configure.in)
Refresh improvements


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3836 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-05 19:38:05 +00:00
Sylvain Bougnoux
fe8aa971c4 after a seek, reset error if error==EOF
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3835 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-05 07:34:27 +00:00
Sylvain Bougnoux
a20cd16ca0 warn if visual isn't found
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3834 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-05 07:22:36 +00:00
Unknown (JL)
aee3892569 Debug version with compiler switch /MDd
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3833 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-05 06:40:42 +00:00
Robin Dunn
d6d2b6ae8f Inceremented the version number for the DLL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3832 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-05 06:32:15 +00:00
David Webster
27476f7368 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3831 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-05 04:22:59 +00:00
Vadim Zeitlin
1bd1d102fd use BMPs and npt PNGs under MSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3830 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 22:55:47 +00:00
Vadim Zeitlin
73974df1f9 MSW compilation (and other) fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3829 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 22:55:10 +00:00
Vadim Zeitlin
e90c1d2a19 many changes; major ones:
1. start of !wxUSE_GUI support
2. _T() macro renamed to T()
3. wxConvertWX2MB and MB2WX macro added


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3828 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 20:15:38 +00:00
Karsten Ballüder
9841339c74 ping method almost there
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3827 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 20:03:07 +00:00
Robert Roebling
1d61ebaca1 OpenGl updates (still gives warnings..)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3826 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 19:54:25 +00:00
Julian Smart
5e0201eaa1 Removed some unused parameter warnings; compile error in dialup.cpp corrected;
some commits are redundant (sorry)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3824 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 15:07:20 +00:00
Vadim Zeitlin
c5342938e2 attempt to fix makefile for make -j
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3823 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 14:23:44 +00:00
Vadim Zeitlin
5b95b795cc more new items
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3822 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 14:05:10 +00:00
Vadim Zeitlin
f19d58d551 several new items
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3821 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 13:59:36 +00:00
Julian Smart
302aa842e9 Added ProjGen for generating sample VC++ project files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3820 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 13:31:50 +00:00
Julian Smart
4658cb18f1 Added some makefiles etc. to nettest sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3819 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 13:23:39 +00:00
Vadim Zeitlin
d443da9d54 -ldl only added if it exists
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3818 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 12:56:01 +00:00
Julian Smart
9b94d7f91e Version numbering change, small additions to ToDo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3817 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 12:31:15 +00:00
Unknown (JL)
ef3ab00998 Renameing funktions from DIB to prevent name clashes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3816 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 11:40:50 +00:00
Unknown (JL)
a61ddc4715 Renameing funktions to prevent name clashes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3815 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 11:39:13 +00:00
Unknown (JL)
d676ebcf25 Parameter "small" renamed. Defined in a header file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3814 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 11:28:23 +00:00
Václav Slavík
d57bf68500 added GetTextExtent test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3813 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 09:18:00 +00:00
Karsten Ballüder
fa3e4baf13 minor fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3812 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 09:16:54 +00:00
Robert Roebling
9b7e522ae9 Applied a few old patches,
Changed dclick handling in wxFileDialog,
  Added cursor code to wxToolBar


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3811 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-04 09:03:48 +00:00
Václav Slavík
a439ecef10 more AFM metrics fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3810 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-03 19:41:16 +00:00
Robert Roebling
f35c265988 If we used 10% less inline functions in useless occasions,
we would have 50% less to debug.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3809 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-03 19:33:07 +00:00
Václav Slavík
b714136483 changed to use 2 html windows
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3808 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-03 18:02:19 +00:00
Václav Slavík
f036b31cde postscript DC didn't check for AFM metrics
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3807 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-03 18:01:17 +00:00
Václav Slavík
2131a664df wxHTML 8.3 convention
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3806 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-03 17:56:02 +00:00
Karsten Ballüder
275abf24e1 wxDialUpManager fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3805 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-03 17:26:45 +00:00
Karsten Ballüder
c756f74260 updated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3804 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-03 15:57:28 +00:00
Vadim Zeitlin
24df4c19d9 forgot this one
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3803 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-03 01:36:06 +00:00
Vadim Zeitlin
a0b4c98b8a 1. Win9x support + async dialing + many more for wxDialUpManager
2. renamed files from net.h/cpp to dialup.h/cpp


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3802 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-03 01:33:05 +00:00
Vadim Zeitlin
1949cd9c5c I'm having some weird problems with cvs...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3801 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-03 01:30:31 +00:00
Vadim Zeitlin
4cd056a7c1 fixes I previously forgot to check in
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3800 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-03 00:05:52 +00:00
Robert Roebling
5fd11f0971 Added test for wxTreeCtrl::GetChildrenCount()
Fixed Reparent (added heaps of debug code for this)
  Small mods to glcanvas


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3799 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-02 19:43:56 +00:00
Karsten Ballüder
1c8515f9ab Unix implementation of wxDialUpManager.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3798 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-02 18:29:54 +00:00
Václav Slavík
6782163029 did not compile under GCC2.95
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3797 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-02 18:21:20 +00:00
Václav Slavík
69941f0586 making wxHTML 8.3 compliant
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3796 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-02 18:19:46 +00:00
Václav Slavík
47f631042b added wxHTML
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3795 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-02 18:18:00 +00:00
Václav Slavík
ad1fa80802 global makefile for samples now include html
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3794 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-02 18:17:33 +00:00
Guillermo Rodriguez Garcia
5c15428b75 PROCESS_EVENTS macro added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3793 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-02 15:21:29 +00:00
Julian Smart
25a37c8cb1 Added roadmap.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3792 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-02 14:15:58 +00:00
Václav Slavík
df9cbfc2bf removed declarations of static wxLoadQueryFont, wxLoadQueryNearestFont
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3791 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-02 13:41:13 +00:00
Robert Roebling
e8b04eb349 Updated doc for wxFileExists()
Corrected redrawing and OpenGl canvas
  Made new font code in utilsunix compile (Why does
    Vadim never need any headers?)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3790 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-02 10:56:10 +00:00
David Webster
f1415824cc *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3789 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-02 03:15:13 +00:00
David Webster
ce44c50e9b *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3788 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-02 01:44:39 +00:00
Vadim Zeitlin
def6fb9bd8 fix for Append() bug for sorted comboboxes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3787 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-01 23:00:58 +00:00
Vadim Zeitlin
83b1f35395 Borland makefiles fixes for .c files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3786 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-01 23:00:30 +00:00
Vadim Zeitlin
7cc391bd39 minor correction
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3785 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-01 22:50:26 +00:00
Vadim Zeitlin
09884325fc wxDialUpManager class (first draft, works only under Windows NT for now)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3784 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-01 22:42:17 +00:00
Vadim Zeitlin
7a903311aa virtual functionsignature corrected
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3783 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-01 18:31:57 +00:00
Vadim Zeitlin
0661ec3993 wxCALLBACK added, wxCOMPFUNC_CONV moved to defs.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3782 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-01 18:27:51 +00:00
Vadim Zeitlin
ddc8c2e3ab wxFontEnumerator class for Motif/X
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3781 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-01 18:01:54 +00:00
Robert Roebling
e1811a014b Improved wxFileDialog behaviour wrt to remembering filenames
Ported new scrolling code from wxWindow to wxScrollBar and
    wxSlider


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3780 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-01 15:41:15 +00:00
Vadim Zeitlin
93ccaed869 wxMotif::wxFont supports encodings too (and shares 99% of font code with wxGTK)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3779 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-01 14:59:52 +00:00
Vadim Zeitlin
d391a34510 renamed gsockmot.cpp to *.c
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3778 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-01 13:53:26 +00:00
Vadim Zeitlin
e1393d82b3 fix from Ron for one-shot timers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3777 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-01 13:21:34 +00:00
Julian Smart
5427610e6b Updates to VC++ project files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3776 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-01 11:41:15 +00:00
Vadim Zeitlin
1ccd74daf9 small font demo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3775 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-01 00:50:45 +00:00
Vadim Zeitlin
b9b3ccd9ea basic support for encodings for wxMSW::wxFont
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3774 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-01 00:49:52 +00:00
Guillermo Rodriguez Garcia
f85d901fcb new sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3773 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-30 23:56:10 +00:00
Guillermo Rodriguez Garcia
483249fc1a bugfixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3772 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-30 23:53:10 +00:00
Guillermo Rodriguez Garcia
75d684d9f7 All events now internally watched
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3771 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-30 23:44:00 +00:00
Guillermo Rodriguez Garcia
5bb0807e96 Uses wxSocketBase::Unread instead of CreatePushback
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3770 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-30 23:42:36 +00:00
Guillermo Rodriguez Garcia
96db102a93 Several changes and updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3769 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-30 23:41:33 +00:00
Vadim Zeitlin
8dc9904630 fixed compilation and added support for all 4 images (as a side effect) to the
generic tree control


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3768 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-30 23:25:19 +00:00
Robin Dunn
37f6a9770c gernerated source code updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3767 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-30 22:28:18 +00:00
Robin Dunn
60edeacfb7 version string is now quoted properly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3766 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-30 22:27:28 +00:00
Robin Dunn
e918362128 fixed an error in the sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3765 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-30 22:26:02 +00:00
Vadim Zeitlin
2ebcd5f5fd wxListCtrl::InsertItem returns the index of the inserted item
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3764 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-30 22:17:02 +00:00
Robert Roebling
5e014a0c44 Corrected filelist.txt a little - one gsocket.c is enough,
Corrected cursors - not yet perfect,
  Added some tests to scroll sample
  Made wxScrolledWindow::Scroll() call Refresh(),
  Change wxListCtrl to reflect the latter change (wxTreeCtrl will follow),
  Added activate event for wxMDIChildFrame
  Implemented wxSIMPLE_BORDER for wxWindow (no controls),
  Tried to correct positioning upon start-up - no way,
  Rewrote catching of scroll events - page-up, page-down, up and down
    work now. Don't know what TOP and BOTTOM are used for.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3763 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-30 22:13:45 +00:00
Robin Dunn
a9221a9508 fixed the rule for the DLL so it doesn't build the .lib file twice
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3762 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-30 21:28:29 +00:00
Robin Dunn
e0f83017f5 added missing fontcmn.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3761 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-30 21:26:44 +00:00
Unknown (MT)
36e2955a64 only set parent frame ontop when the current frame being destructed is active
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3760 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-30 08:01:13 +00:00
Robin Dunn
76e1c2debf updates for wxPython docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3759 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-30 07:13:40 +00:00
Robin Dunn
2f90df854e 1. wxHtmlHelpController and related classes
2. the C++ versions of wxSizer and firends, Python versions are
   'depreciated'
3. wxPyEvent and wxPyCommandEvent, event classes that can carry some
   python objects through the event system and safely come back out
   again.
4. wxGridSizer and wxFlexGridSizer
5. wxValidator
6. wxPyOnDemandOutputWindow
7. several tweaks, fixes and additions of missing methods, etc.
8. and probably several other things I am forgetting since CVS was
   down so long...


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3758 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-30 07:11:20 +00:00
Robin Dunn
2348eaee20 Created and wrapped wxPyControlPoint
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-30 06:58:38 +00:00
Vadim Zeitlin
74b31181b3 1. Implemented support for different icons for different states (expanded,
selected, combination of them) for the tree control (and doc'd it)
2. removed code which was sending extra event if wxFrame::SetSize() was
   used
3. important changes to wxWizard interface
4. small compilation corrections


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3756 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-29 22:47:56 +00:00
Sylvain Bougnoux
4f3ac40926 Change wxGetCurrentUTime as wxGetCurrentMTime (milli not micro!)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3755 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-29 19:51:04 +00:00
Sylvain Bougnoux
f0599ea919 Factorize timercmm.cpp code
Added wxGetCurrentUtime
Put extern declaration in wx/timer.h instead of wx/*/timer.h
Added wxChrono class


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3754 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-29 19:40:04 +00:00
Vadim Zeitlin
0c5d3e1ccd 1. added a brief overview of Unicode support
2. added and documented wxBITMAP() macros (as wxICON)
3. restructured wxFont class, added support of encoding parameter
4. regenerated makefiles to compile the new fontcmn.cpp file
5. corrected bug with non existing files in document-view history


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3753 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-29 19:02:07 +00:00
J. Russell Smyth
7a3ac80489 Added wxNB_LEFT,RIGHT,BOTTOM styles to alter tab placement
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3752 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-29 17:45:41 +00:00
J. Russell Smyth
ab20a9a95a Added defines to allow altered tab placement under gcc-2.95
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3751 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-29 17:44:14 +00:00
J. Russell Smyth
a3a7f8791c Added wxNB_RIGHT,LEFT,BOTTOM flags for tab placement
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3750 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-29 17:41:05 +00:00
Vadim Zeitlin
fdb7dadb6e param type of wxWindow::Reparent() fixed in wxGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3749 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-29 17:35:52 +00:00
J. Russell Smyth
4a0253b82b Added wxNB_LEFT,RIGHT,BOTTOM for notebook tab placement
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3748 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-29 17:34:58 +00:00
Robin Dunn
a77aa9d600 Removed call to SetValidator since CreateBase was doing it already
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3747 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-29 16:10:48 +00:00
Julian Smart
1b9315eb77 Misc changes, including to wxPropertyForm and sample to make it work
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3746 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-29 15:55:50 +00:00
Vadim Zeitlin
51c0a521a9 wxListCtrlCompare typedef now is defined correctly (was missing CALLBACK)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3745 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-29 15:18:58 +00:00
Vadim Zeitlin
866592d872 //... => /* ... */
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3744 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-21 11:44:12 +00:00
Vadim Zeitlin
172d3acb55 item about constants naming added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3743 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-21 11:39:52 +00:00
Michael Bedward
556921dc4e Ifdef'd out sample code for wxStaticBitmap. It's not working under
wxMOTIF at the moment.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3742 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-21 05:32:59 +00:00
Michael Bedward
ba7ce6a0b7 Added check to ensure that style arg to ctor has either wxHORIZONTAL or
wxVERTICAL. Without one of these the slider doesn't display under
Motif.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3741 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-21 05:22:34 +00:00
David Webster
23e4b7d824 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3740 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-21 05:16:03 +00:00
Michael Bedward
0ba1a6f33c Added code to wxMemoryDC ctor to set default font. This fixes the controls
sample which was crashing when calling wxDC::DrawText.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3739 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-21 03:29:16 +00:00
Michael Bedward
17023320be Added code to implement wxTE_READONLY style for single line text controls.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3738 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-21 02:37:29 +00:00
David Webster
4486e1be1f no message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3737 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-20 22:29:47 +00:00
Robin Dunn
269e82009d I got tired of some of the memory leak messages related to html and
filesystem classes, (even when I wasn't using them) so I added to the
cleanup code already there.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3736 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-20 20:15:31 +00:00
Sylvain Bougnoux
d57eb7b9b3 add imagall.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3735 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-20 19:06:44 +00:00
Sylvain Bougnoux
b5a4a47df5 change wxImage::InitAllHandlers to wxInitAllImageHandlers and put it in a separate file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3734 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-20 19:05:49 +00:00
Sylvain Bougnoux
6e58e01afa *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3733 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-20 19:03:59 +00:00
David Webster
86de7616de More OS/2 changes and fixes. Getting there.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3732 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-20 17:19:25 +00:00
Vadim Zeitlin
22aed133d8 the bitmaps in wxPropertyList are created on demand: this speeds up the
program startup and also cures the crash under wxMotif


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3731 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-20 16:22:26 +00:00
Vadim Zeitlin
dd85fc6b89 started separating GUI parts of wxLog from the rest
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3730 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-20 16:10:03 +00:00
Harco de Hilster
77cff60663 header inclusion fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3729 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-20 11:53:41 +00:00
Harco de Hilster
9c3d0b59c4 Removed obsolete files.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3728 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-20 11:52:56 +00:00
Sylvain Bougnoux
a14e57f9f7 Add wxImage::InitAllHandlers()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3727 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-20 09:03:37 +00:00
David Webster
45fcbf3b7a *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3726 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-20 04:49:19 +00:00
Robin Dunn
0c0d686fe5 Added userData to wxSizerItems and other things to make sizers more
usable/overrideable from wxPython.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3725 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-20 03:12:49 +00:00
Robin Dunn
76f78a96ce Added CVS module for wxPython
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-19 18:54:02 +00:00
Robin Dunn
9cce9de16f updates of some SWIG generated stuff
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 18:33:39 +00:00
Robin Dunn
10534c0bb1 some ifdef'd out things added back in
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3722 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 18:23:56 +00:00
Robin Dunn
26197023a7 minor changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3721 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 18:21:02 +00:00
Robin Dunn
b2bc50e4ca more things to ignore
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3720 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 18:20:13 +00:00
Vadim Zeitlin
9dea50fc65 setlocale() argument corrected
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3719 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 18:02:58 +00:00
Vadim Zeitlin
90a53a3aed small underscores fix for GTK 1.0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3718 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 17:59:05 +00:00
Vadim Zeitlin
572d746108 underscores in menu items handled too under GTK+ 1.2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3717 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 17:54:14 +00:00
Vadim Zeitlin
a4c970041c unused parameter warnings suppressed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3716 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 17:34:17 +00:00
Vadim Zeitlin
ae8f576913 serbase.cpp added to the list of files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3715 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 17:23:20 +00:00
Vadim Zeitlin
964688d8ec unused parameter warnings suppressed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3714 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 17:17:04 +00:00
Vadim Zeitlin
60df2e7d97 FreeBSD linking fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3713 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 17:14:49 +00:00
Vadim Zeitlin
6e31e94063 unused parameter warnings suppressed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3712 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 16:57:21 +00:00
Vadim Zeitlin
45c94d784d typo fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3711 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 16:53:10 +00:00
Vadim Zeitlin
d2682f231a more files to ignore (*.env)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3710 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 16:51:31 +00:00
Vadim Zeitlin
07d4b94c3b ambiguous ctor call resolved
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3709 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 16:50:48 +00:00
Vadim Zeitlin
ec6e0a192c typo fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3708 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 16:49:31 +00:00
Vadim Zeitlin
014b0d064e unused parameter warnings suppressed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3707 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 16:49:30 +00:00
Vadim Zeitlin
1fa609b166 more files to ignore (*.d and configarg.cache)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3706 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 16:48:25 +00:00
Vadim Zeitlin
0b862e2069 font selector dialog doesn't work with GTK+ 1.0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3705 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 16:42:13 +00:00
Vadim Zeitlin
c8c0e54c70 extra consts removed here and there
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3704 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 16:39:08 +00:00
Vadim Zeitlin
284b4c8866 unused parameter warnings suppressed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3703 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 16:34:02 +00:00
Vadim Zeitlin
7d5af6fa6b 'static not in the beginning of the decl' warnings fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3702 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 16:32:53 +00:00
Vadim Zeitlin
077968ca5e Mac and OS2 files excluded from wxGTK and wxMSW modules
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3701 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 16:30:44 +00:00
Robin Dunn
5aeeab1454 Fixed wxTreeCtrl to use the proper bacground color from
SystemSettings, and changed how wxListCtrl used SystemSettings
too (static method doesn't need an instance.)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3700 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-18 00:10:03 +00:00
Vadim Zeitlin
086c94af90 compilation error corrected
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3699 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-17 23:37:27 +00:00
Vadim Zeitlin
5d47c8a0d2 now we initialize wxListEvent correctly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3698 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-17 23:26:38 +00:00
Guillermo Rodriguez Garcia
186005466d Solved problem with wxhInstance name being mangled by MSVC; wxGetInstance is now extern C
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3697 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-17 22:24:28 +00:00
Guillermo Rodriguez Garcia
eb254be6df Solved problem with wxhInstance name being mangled by MSVC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3696 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-17 22:23:37 +00:00
David Webster
a419c3b116 More OS/2 stubs and caret fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3695 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-17 21:46:51 +00:00
David Webster
0616b8382d More stubs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3694 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-17 21:45:56 +00:00
Robin Dunn
2d0294308d uncommented a try...except that I had removed for testing.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3693 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-17 15:43:05 +00:00
Robin Dunn
0190e1faf8 Don't need these in the demo directory anymore
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3692 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-17 05:58:27 +00:00
Robin Dunn
e166644c53 New wxHtml stuff, including a TagHandler for placing wxPython widgets
on the html page.

Some other tweaks and fixes


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3691 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-17 05:55:00 +00:00
Unknown (MT)
2819545569 set tooltip to be TOPMOST
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3690 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-17 04:03:10 +00:00
David Webster
77cd51c3de *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3689 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-17 03:29:33 +00:00
Guillermo Rodriguez Garcia
af2fd9613a - NOWAIT flag now implemented
- WaitForXXX are now correct (will not report readability / writability if
in the middle of a defered read / write operation)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3688 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-17 01:51:06 +00:00
Guillermo Rodriguez Garcia
236ef8a966 typedef unsigned int bool (instead of int) for consistency with defs.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3687 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-17 01:45:36 +00:00
Unknown (AN)
a3daed0276 call HasMask() before writing PNG files, as was done in WX_2_0_FIXES
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3686 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-16 19:24:01 +00:00
Vadim Zeitlin
9f6af110ff vetoing item collapse works again
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3685 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-16 13:32:03 +00:00
Vadim Zeitlin
0b26605d52 use "cd dir && make" instead of "cd dir; make" which results in infinite loop
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3684 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-16 11:37:41 +00:00
Michael Bedward
7183e38bec Added GetMainWidget() to fix bug that was causing crashes under wxMOTIF.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3683 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-16 10:32:03 +00:00
Patrick Albert
1e2c86ca5c Correcting minor painting problems
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3682 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-16 08:56:32 +00:00
Michael Bedward
1e8abce5e8 Modified wxTranslateMouseEvent so that it can recognize double clicks.
This allows double click events to be intercepted by panel items.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3681 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-16 07:33:16 +00:00
David Webster
9fea1a5d62 Updated makefiles for VisualAge C++ V3.0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3680 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-15 21:56:39 +00:00
J. Russell Smyth
a6f989f3db corrected to allow drag and drop for mingw32/gcc295
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3679 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-15 21:45:36 +00:00
Vadim Zeitlin
7fb233050c added test for changing toolbar on the fly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3678 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-15 16:15:50 +00:00
Vadim Zeitlin
93840b31b9 removed some unneeded bit of test code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3677 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-15 15:22:48 +00:00
Vadim Zeitlin
455fadaa6a underscors are handled better in the menu item labels
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3676 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-15 15:06:19 +00:00
Vadim Zeitlin
503f414edd corrected the bad patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3675 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-15 14:27:04 +00:00
Vadim Zeitlin
2e4f15693a patch for AIX compilation (Hans-Joachim Baader)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3674 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-15 14:12:22 +00:00
Guillermo Rodriguez Garcia
0ce742cf09 Checking for wxUSE_SOCKETS and __GSOCKET_STANDALONE__ should be right, now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3673 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-15 02:21:15 +00:00
Guillermo Rodriguez Garcia
7c235f0914 Now uses wxSocketBase::Error() to see if last IO call failed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3672 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-15 00:17:15 +00:00
Guillermo Rodriguez Garcia
17aa2bec08 Various small bugfixes
Serious bugfix in ReadMsg (Read was being called with buffer == NULL !)
Added m_error
Added error handling to all IO functions
Discard now correctly updates m_lcount
Implemented wxSocketBase::SetTimeout
Deleted wxSocketClient::OnRequest (all is handled inside wxSocketBase's)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3671 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-15 00:15:39 +00:00
Guillermo Rodriguez Garcia
68317b6d3f You CAN'T check for wxUSE_SOCKET *before* #including <wx/setup.h>!!! Who has done this?
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3670 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-15 00:09:54 +00:00
Guillermo Rodriguez Garcia
7c395bf3a1 wxSocketBase::OnRequest is non.virtual now (and there is no wxSocketClient::OnRequest
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3669 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-15 00:04:44 +00:00
Guillermo Rodriguez Garcia
c21b68f7dd Added _GSOCKET_STANDALONE_ symbol
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3668 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-15 00:02:49 +00:00
Robin Dunn
3ef01ce5e3 Added GetParser method to wxHtmlWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3667 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-14 21:09:30 +00:00
J. Russell Smyth
4c2d8a30f6 Patches for mingw32/gcc-2.95
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3666 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-14 21:03:19 +00:00
J. Russell Smyth
2d996ed1c4 Mingw32/gcc-2.95 change
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3665 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-14 20:57:06 +00:00
J. Russell Smyth
6627a4b049 Changes for mingw32/gcc-2.95
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3664 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-14 20:55:29 +00:00
J. Russell Smyth
0045dee3f4 Makefile for mingw/gcc-2.95
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3663 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-14 20:54:48 +00:00
J. Russell Smyth
d04d2fb520 Added makeg295.env file for building with gcc-2.95/mingw
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3662 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-14 20:53:04 +00:00
J. Russell Smyth
eaac466a40 Added files for mingw32/gcc-2.95/norlander headers build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3661 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-14 20:52:00 +00:00
J. Russell Smyth
a98404cd24 Added makefile and resource script for building under mingw32
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3660 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-14 20:30:33 +00:00
Harco de Hilster
91f491639e Changed AppendCommon (called by all Append methods) so it doesn't
call ApplyWidgetStyle (which applies the current style to all list_items,
which should already have the right style), but instead only applies
the style to the new list_item. This results in a *great* speedup for large
listboxes.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3659 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-14 19:32:20 +00:00
Robin Dunn
761a9d2b1f ifdef'ed out GetBoundingRect for wxGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3658 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-14 03:34:00 +00:00
Robin Dunn
a65c6e1446 No need to separate generated code for html because there are no
platform differences.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3657 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-14 02:17:59 +00:00
Robin Dunn
0f66a9f39d wxPython html module updates. The beginings of tag handler support.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3656 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 19:34:01 +00:00
Robin Dunn
5b626e7f84 Added ogl to the module list
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3655 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 19:32:26 +00:00
Robin Dunn
ec3e670f9f The beginings of wxHtmlWindow support in the wxPython demo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3654 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 19:31:50 +00:00
Robin Dunn
d426c97e9a More tweaks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3653 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 19:29:53 +00:00
Robin Dunn
389c55270a Moved wxPy_ConvertList function from oglhelpers to helpers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3652 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 19:28:10 +00:00
Robin Dunn
18ba9da6b9 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3651 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 19:20:10 +00:00
Robin Dunn
d098a3572c Changed HWND --> WXHWND in tooltip.h so it can be included in files
that don't include windows headers.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3650 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 19:19:57 +00:00
Robin Dunn
c23bbc11ea Now specifies the corrent EVT_ macro names for wxScrollBar
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3649 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 18:21:38 +00:00
Harco de Hilster
2e39ec8448 small fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3648 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 18:11:31 +00:00
Julian Smart
7cb86a4c28 Added DLL versions of project files.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3647 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 17:53:28 +00:00
Robin Dunn
5454a9276b Now setting the right library switches for both platforms...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3646 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 17:46:50 +00:00
Harco de Hilster
6b5286d112 Fixed surplus space in help output.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3645 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 17:17:45 +00:00
Harco de Hilster
0940bcf7f5 Changed configure option --with-libgif to --enable-gif
gif now defines wxUSE_GIF instead of wxUSE_LIBGIF
also added --enable-pcx (wxUSE_PCX) and --enable-pnm (wxUSE_PNM).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3644 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 17:15:43 +00:00
Julian Smart
a19fb96bd0 Added VC++ 5 wxWin project files (not generated sample project files)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3643 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 14:31:48 +00:00
Julian Smart
28468136d0 Made HelpGen into a wxWin app (still uses command-line args); moved includes
into src for simplicity; added VC++ 5 project file


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3642 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 14:29:41 +00:00
Harco de Hilster
46c6b9c0ec new include file for change to new wxHtmlHelp classes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3641 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 13:24:06 +00:00
Julian Smart
b31ba28885 Took anonymous class out of wxHtmlHelpFrame; corrected some typos
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3640 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 13:16:28 +00:00
Robin Dunn
c596875e23 Configure support for OGL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3639 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 07:18:36 +00:00
Unknown (MT)
ca8a9e603a add detachmenu, insert menu, replace menu
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3638 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 07:17:09 +00:00
Unknown (MT)
c399c2de41 use global hwndTT
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3637 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 07:16:40 +00:00
Unknown (MT)
ea9a4296a2 Add detachmenu
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3636 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 07:16:18 +00:00
Unknown (MT)
7682a175b6 Add wxTE_AUTO_SCROLL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3635 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 07:15:46 +00:00
Unknown (MT)
066f302c6c use a global hwndTT
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3634 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 07:15:11 +00:00
Unknown (MT)
2c738dd87a add wxTE_AUTO_SCROLL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3633 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 07:14:27 +00:00
Unknown (MT)
ebb206a33d blit using icon mask
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3632 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 07:13:52 +00:00
Unknown (MT)
1cf27c6349 Add detachmenu, insert menu, replace menu.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3631 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 07:13:16 +00:00
Unknown (MT)
bfa2e032ef Added callback to start in current directory
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3630 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 06:38:43 +00:00
Robin Dunn
b661e6759e Allowed gsocket to compile when wxUSE_SOCKETS is 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3629 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 05:31:20 +00:00
Robin Dunn
2bbf461836 Makefile updates from new filelist.txt
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3628 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 05:30:01 +00:00
Robin Dunn
f42b1601d6 Fixed some compile errors (MSVC++ 6) and some very strange link errors when
building a DLL.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3627 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 05:27:36 +00:00
Robin Dunn
e6a5dc94a4 Added implicit rule for building .c files in msw directory (gsocket)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3626 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 05:25:30 +00:00
Robin Dunn
fcd4694c3e Allowed tbarsmpl to be built for win32 as it still has its uses.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3625 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 05:24:57 +00:00
Robin Dunn
a0250ba3e5 Added WXDLLEXPORT's to the class definitions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3624 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 03:49:33 +00:00
Robin Dunn
a097c93d4f Some OGl updates:
uses wxINVERT instead of wxXOR

	a couple minor tweaks

	VC makefiles now use Debug and Release for object files
	depending on FINAL


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3623 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 03:08:57 +00:00
Robin Dunn
93c95e18f4 Made wxNO_DEFAULT set the "no" button as the default, according to the docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3622 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-13 02:50:35 +00:00
Harco de Hilster
90bb2919de fixed typo (?)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3621 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-12 18:49:59 +00:00
Harco de Hilster
8ec2b48446 New HTML help system. The old controller class has been split in
three parts; basic data, a frame and a controller. Docs will appear
shortly...

All Makefiles should be correctly updated. To be sure, I put an
#error pragma in the old files, which will be removed in a few days.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3620 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-12 17:45:34 +00:00
Guillermo Rodriguez Garcia
a0378c28b8 fixed (didn't work at all)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3619 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-12 11:19:35 +00:00
Guillermo Rodriguez Garcia
4c28d606dd Added _GSocket_Configure()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3618 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-12 11:18:15 +00:00
Guillermo Rodriguez Garcia
2f7c2af547 Fixed a bug when GSocket_SetCallback was used before allocating the internal socket
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3617 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-12 11:17:00 +00:00
Guillermo Rodriguez Garcia
83802b0bd9 little changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3616 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-11 20:30:17 +00:00
Guillermo Rodriguez Garcia
fade627a81 Prototypes for some _internal_ functions had to be changed (API remains the same)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3615 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-11 20:29:50 +00:00
Guillermo Rodriguez Garcia
e9e3e3abaf Added GSocket_Select() and removed some unused functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3614 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-11 20:29:14 +00:00
Guillermo Rodriguez Garcia
56d8adc0c0 - Completed WaitOnAccept
- Rewritten all the WaitXXX functions so that they do not depend on the
event notification system.
- Rewritten all the internal event system; now all events are internally
monitorized, but users are notified only of these events they are
interested in. This solves a lot of hard-to-catch little problems
and bugs which could arise sometimes.
- Rewritten all the automatic event notifier code.
- Added callback management code, which had been forgotten (badly needed
for wxTCPConnection in IPC classes)
- Fixed wxSocketBase::Write(), which didn't honour the WAITALL flag.
- Fixed some other bugs.
- The code is now much more stable and robust than before (because
the architecture is more robust, but it still needs testing).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3613 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-11 20:27:55 +00:00
Guillermo Rodriguez Garcia
ef25e6386d Added GSocket_Select()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3612 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-11 20:17:49 +00:00
Guillermo Rodriguez Garcia
483c6690e9 Added GSocket_Select() and fixed some things
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3611 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-11 20:14:30 +00:00
Harco de Hilster
1235650ffb sensible default...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3610 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-10 19:14:15 +00:00
Robin Dunn
b730516c98 Made wxNO_DEFAULT set the "no" button as the default, according to the docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3609 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-10 17:57:47 +00:00
Robin Dunn
e91a9dfcc3 wxPython module for OGL added.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3608 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-10 06:25:47 +00:00
Robin Dunn
1afc06c2d8 Some tweaks and updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3607 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-10 06:23:48 +00:00
Robin Dunn
922dc97681 Better dependency checking
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3606 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-10 06:23:03 +00:00
Robin Dunn
3ab72185cb Put Get/Set/Push/PopEventHandler methods back in.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3605 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-10 06:11:12 +00:00
Robin Dunn
d559219f40 Lots more support for event-less callbacks
Exported some symbols for the other modules to use
etc.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3604 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-10 06:05:32 +00:00
Guillermo Rodriguez Garcia
228b910aea wxUSE_GIF instead of wxUSE_LIBGIF
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3603 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-09 22:20:37 +00:00
Guillermo Rodriguez Garcia
9ab6ee851e Ops. wxUSE_XXX and wxUSE_STREAMS are separated again :-)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-09 22:19:18 +00:00
Guillermo Rodriguez Garcia
2b98cb1f84 small changes here and there
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3601 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-09 22:16:11 +00:00
Guillermo Rodriguez Garcia
83b1bfaac9 wxUSE_GIF instead of wxUSE_LIBGIF
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3600 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-09 22:14:22 +00:00
Guillermo Rodriguez Garcia
83413d6d2d *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3599 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-09 22:12:08 +00:00
Guillermo Rodriguez Garcia
35809fe3d7 Accept, AcceptWith -> wait parameter
WaitOnAccept
m_establishing member for correct WaitOnConnect


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3598 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-09 22:08:31 +00:00
Guillermo Rodriguez Garcia
d80d1aba10 Fixed WaitOnConnect().
Added wait parameter to Accept() and AcceptWith()
Added WaitOnAccept() (incomplete)
Added about a dozen or so small bugfixes here and there.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3597 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-09 22:03:20 +00:00
Guillermo Rodriguez Garcia
7be110e30d Replaced wxUSE_LIBGIF with wxUSE_GIF
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3596 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-09 22:01:30 +00:00
Guillermo Rodriguez Garcia
b9b32d5c4f Added #include "wx/setup.h" (or "wx/defs.h") before checking for
wxUSE_***

Merged wxUSE_*** and wxUSE_STREAM (is this right?)

Replaced wxUSE_LIBGIF with wxUSE_GIF everywhere


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3595 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-09 21:58:54 +00:00
David Webster
6f349458f6 VisualAge C++ V4.0 configuration files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3594 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-09 21:24:24 +00:00
David Webster
feeb816597 Latest OS/2 compiler bug fixes for common and generic
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3593 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-09 21:22:51 +00:00
Guillermo Rodriguez Garcia
cb421e53cb Fixed some bus in Connect()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3592 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-09 19:16:23 +00:00
Karsten Ballüder
a16d3c04d7 cosmetic fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3591 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-09 13:41:40 +00:00
Guillermo Rodriguez Garcia
11235b74ce Nothing serious here :-)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3590 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-09 12:25:47 +00:00
Julian Smart
33bbfe4b23 Small bug fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3589 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-09 11:22:20 +00:00
Karsten Ballüder
0b1c443719 no more errors in make clean
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3588 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-09 08:56:09 +00:00
Guillermo Rodriguez Garcia
aa3981f2c6 Bugfix in GSocket_Cleanup()
GSocket_Connect and GSocket_WaitConnection now detect EWOULDBLOCK
errors and act accordingly (this is needed for correct wxSocket
behaviour)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3587 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-08 22:13:48 +00:00
Julian Smart
2f85113366 Fixed cursor loading on Win95
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3586 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-08 12:39:41 +00:00
Julian Smart
b70ababc14 Added wxTE_NO_VSCROLL style; corrected joystick event class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3585 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-08 08:29:49 +00:00
Guillermo Rodriguez Garcia
2618484fed Little changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3584 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-07 16:23:46 +00:00
Guillermo Rodriguez Garcia
881eba2c0d Added -lwsock32 (needed for socket support)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3583 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-07 15:40:37 +00:00
Guillermo Rodriguez Garcia
a9775f1f58 Added gsocket.c for MSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3582 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-07 15:37:31 +00:00
Guillermo Rodriguez Garcia
791b24c405 wxSocketClient::Connect() now honours the 'wait' parameter.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3581 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-07 15:34:27 +00:00
Guillermo Rodriguez Garcia
9bbd7ba3ea GSocket for MSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3580 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-07 15:25:48 +00:00
Guillermo Rodriguez Garcia
904ec517d3 Header file for MSW GSocket
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3579 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-07 15:20:51 +00:00
Julian Smart
2ef1f50a94 Corrected #include in gsockmot.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3578 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-07 08:22:23 +00:00
J. Russell Smyth
1a9469d7cb Fixed include gsockunix.h line
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3577 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-07 05:28:25 +00:00
Guilhem Lavaux
533c7161fc Moved gsockunx.h from src/unix to include/wx/unix
Added include/wx/unix/gsockunx.h to Makefile.in


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3576 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-06 19:06:46 +00:00
Patrick Albert
63dcfc151b Added documentation for wxMenuBar::Refresh()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3575 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-06 12:54:56 +00:00
Patrick Albert
fbb90f7f2b Changed scope of wxMenuBar::Refresh() from protected to public.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3574 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-06 12:53:09 +00:00
Julian Smart
2f435842c5 Added missing constant
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3573 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-06 12:15:33 +00:00
Julian Smart
24126cdde8 Changed value of wxGA_SMOOTH (clashed with wxVERTICAL)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3572 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-06 12:12:53 +00:00
Julian Smart
543f08a676 Added wxFontEnumerator class for wxMSW, and fixed text validator for French
decimal point (",").


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3571 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-06 09:36:21 +00:00
Vadim Zeitlin
d87a962086 some fixes for VC++ 1.5 makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3570 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-05 20:45:24 +00:00
Julian Smart
7e9a386e10 Fixed some doc problems
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3569 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-05 19:42:03 +00:00
Julian Smart
1044a386f0 Misc. 16-bit compilation fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3568 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-05 15:14:50 +00:00
Julian Smart
ed75793627 Updating corrupt file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3567 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-05 14:09:49 +00:00
Guilhem Lavaux
aa6d970619 Updated wxSocket documentation
Renamed GSOCK_TIMEOUT to GSOCK_TIMEDOUT
Added wxURL::ConvertFromURI
Use wxUSE_LIBGIF in imaggif.cpp and samples/html/test/test.cpp
Full implementation of "timeout"s in gsocket.c
Non-blocking WaitConnection()/Connect() are supported now.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3566 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-05 10:23:22 +00:00
Guilhem Lavaux
de3131e784 Changed some more name in wxSocket (internal)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3565 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-05 06:46:38 +00:00
Michael Bedward
da4a658da4 What is it doing here anyway ?
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3564 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-05 06:33:31 +00:00
Guilhem Lavaux
aa8fb7a016 Added GSocket/wxSocket alias to socket.h to prevent us from using GSocket
internal symbols
Added G721 filter for Wave
Fixed a bug in wxsocket sample


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3563 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-05 05:51:05 +00:00
Michael Bedward
11d737b409 Modifed ShowModal() function so that you can have dialogs with yes, no and cancel buttons.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3562 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-05 03:31:27 +00:00
Harco de Hilster
e951f847fa fixed crashing generic dir dialog.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3561 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-03 10:54:26 +00:00
Michael Bedward
b387781ceb Added statline, checklst and spinbutt file to wxMotif compilation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3560 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-03 05:19:10 +00:00
Michael Bedward
d84b1219a5 Enabled wxStaticLine for wxMotif. Added checklst.cpp and spinbutt.cpp to Motif compilation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3559 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-03 05:16:19 +00:00
Michael Bedward
7a4b8f2770 Fixes for gcc 2.95 and AIX.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3558 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-03 04:18:50 +00:00
Guilhem Lavaux
765e386bfa Added a test to wxSocket sample (client side socket event test)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3557 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-02 19:11:38 +00:00
Julian Smart
da4b7ffc78 SetMenuBar potential memory leak fixed; added wxTAB_TRAVERSAL as dummy (0) style
for backward compatibility


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3556 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-02 08:23:23 +00:00
Robin Dunn
107e4716f2 Prep for wxPython 2.1b3 release
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3554 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-02 06:01:53 +00:00
Robin Dunn
aa855f21a8 updated version number for DLL name
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3553 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-02 05:39:56 +00:00
Robin Dunn
2f78bd2c04 fixed a clash in values for wxSlider styles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3552 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-02 05:38:48 +00:00
Robin Dunn
ac1edf3546 wxPython doc updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3551 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-02 05:36:39 +00:00
Robin Dunn
efc5f22463 Prep for wxPython 2.1b3 release
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3550 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-02 05:31:38 +00:00
Robin Dunn
27d6502f98 removed a test value left in by accident
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3549 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-01 20:58:27 +00:00
Robin Dunn
fd4ff3bf16 Some build updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3548 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-01 20:54:34 +00:00
Robin Dunn
8a35299aa9 Added sh-bang
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3547 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-01 20:53:22 +00:00
Guilhem Lavaux
bc83ea24b4 Write 0 to m_lastcount in OnSysRead and OnSysWrite
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3546 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-01 18:05:15 +00:00
Harco de Hilster
6245e5b6e8 change to make wxHtmlHelp more flexible; don't panic if an empty
index or contents filename is given


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3545 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-31 23:26:36 +00:00
Harco de Hilster
5ca24bf4e0 added wxHtmlHelpController and -System wrappers. See README for some remarks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3544 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-31 23:22:34 +00:00
Harco de Hilster
6a94433573 some changes to make wxHtmlHelpController easier to subclass
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3543 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-31 23:18:41 +00:00
Václav Slavík
18027d49b9 ScanParam has only one parameter now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3542 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-31 20:05:24 +00:00
Guilhem Lavaux
babd4308f2 Fixed wxZlibOutputStream::Sync
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3541 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-31 18:16:23 +00:00
Julian Smart
5360828db9 Added Set/GetSelection to wxPrintDialogData (the value of the Selection radio button);
corrected bug in cursor.cpp (used wxIconRefData).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3540 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-31 12:03:05 +00:00
Michael Bedward
311227c3fe Fixes for scrolling in wxScrolledWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3539 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-31 05:36:29 +00:00
Michael Bedward
70bdacfc8e ifdef'd out call to dc.FloodFill() for WXMOTIF (not implemented).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3538 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-31 03:45:39 +00:00
Václav Slavík
72aa4a9873 wxHtmlTag::ScanParam now returns value
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3537 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-30 22:39:56 +00:00
Václav Slavík
499f945e99 removed html/version.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3536 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-30 22:37:41 +00:00
Patrick Albert
aeb50f8660 removing w4 level warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3535 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-30 08:35:04 +00:00
Patrick Albert
197dd9af26 Removing most of level 4 warnings, particulary in 16 bits mode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3534 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-30 07:11:47 +00:00
Harco de Hilster
c15d098cdf fixed problem in mimetype database and put a temp. fix for font tags
like <FONT SIZE=gaga>, i.e. without an proper integer argument


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3533 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 20:08:53 +00:00
Guillermo Rodriguez Garcia
f0d922cf78 fixed bug for 24bit images
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 20:02:07 +00:00
Guillermo Rodriguez Garcia
ba7c80a26c *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3531 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 20:00:09 +00:00
Guillermo Rodriguez Garcia
7aaacad553 binary
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3530 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 19:57:47 +00:00
Guillermo Rodriguez Garcia
771b931d92 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3529 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 19:56:05 +00:00
Guilhem Lavaux
7a50d5403c PNM horse
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3528 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 19:55:41 +00:00
Guillermo Rodriguez Garcia
307959d652 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3527 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 19:49:57 +00:00
Guillermo Rodriguez Garcia
ccc0d1f2b6 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3526 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 19:49:13 +00:00
Guilhem Lavaux
6319afe332 Removed LastError() from wxFilterStream
Added a better Peek() to wxBufferedInputStream
Fixed wxPNMHandler (it is a lot faster on text PNM now)
Image sample loads a PNM


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3525 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 19:48:03 +00:00
Guillermo Rodriguez Garcia
6cc24024d6 Added horse.pcx
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3524 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 19:40:56 +00:00
Guillermo Rodriguez Garcia
91ffcaf2f6 binary
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3523 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 19:38:29 +00:00
Guillermo Rodriguez Garcia
fb8b9da2ba *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3522 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 19:36:16 +00:00
Guilhem Lavaux
b83290c3eb Start xanim only when we are ready to play
Renamed StartPlay in Play
Added wxVideoBaseDriver::GetSize


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3521 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 14:40:11 +00:00
Sylvain Bougnoux
a2b8bd5537 Fixed wxBufferedInputStream support ...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3520 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 13:32:50 +00:00
Guillermo Rodriguez Garcia
2e36534843 PCX image for testing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3519 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 11:53:05 +00:00
Guillermo Rodriguez Garcia
4df78dc36e PCX handler now working for reading (8bit and 24bit images).
Still no wxPCXHandler::SaveFile, though.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3518 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 11:52:02 +00:00
Guillermo Rodriguez Garcia
e08e239b43 Added error messages when (verbose == TRUE) to know why the
load failed.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3517 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 11:50:57 +00:00
Sylvain Bougnoux
8bb8ab39dd fixed unsolved link
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3516 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 07:49:13 +00:00
Michael Bedward
dfdc56a3b0 Regenerated from tmake to add imagpcx.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3515 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 06:37:03 +00:00
Michael Bedward
f3391ea5e0 Script runs tmake for all template files in distrib/msw/tmake.
Writes wxMSW makefiles to src/msw.
Writes Makefile.in to top wxWindows dir.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3514 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 06:30:50 +00:00
Michael Bedward
ef3a5c9e09 A shell script to run tmake for all template files similar to
Vadim's makeall.bat for DOS.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3513 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 05:49:52 +00:00
Michael Bedward
75ceb69db0 Regenerated with tmake to add imagpcx for all platforms.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3512 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-29 05:12:08 +00:00
Robert Roebling
6a2a235ba9 Added German translation to internat sample.
Fixed recursion in wxLogGui::Flush()


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3511 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-28 16:50:39 +00:00
Harco de Hilster
d39356d524 Added a hack to configure.in to enable cross compiling of glcanvas; search
for GL_TOOLKIT_DIR to see what I mean. Added Makefile.in to glcanvas/win


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3510 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-28 15:31:13 +00:00
Guilhem Lavaux
aa95f52ee7 Fixed compilation/link errors
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3509 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-28 12:28:22 +00:00
Guilhem Lavaux
0662cd3286 Implemented Read in the PCM converter
Changed size_t to wxUint32
Added support for G72X
WAV format multi-codec handling


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-27 17:40:40 +00:00
Guillermo Rodriguez Garcia
5b4f8dd5c0 CanRead() now restores the stream to its previous state (potential
bug when mixing with other handlers' CanRead() code.)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3507 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-27 16:00:13 +00:00
Karsten Ballüder
d559158225 included imagpcx for wxGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3506 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-27 15:23:55 +00:00
Patrick Albert
79bc2382e3 Adding GetPrevSibling() & GetNextSibling() in winundef.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3505 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-27 13:16:09 +00:00
Patrick Albert
2ba3d4f0dd Adding GetFisrtChild in winundef.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3504 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-27 11:56:22 +00:00
Patrick Albert
48c12cb129 Removing some level 3 warning
Updating samples\makefile.vc


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3503 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-27 11:46:55 +00:00
Guillermo Rodriguez Garcia
cbd4be25b2 Added testing code for PCX Handler (which is still not working
because PCX Handler is still a do-nothing and besides, there is
no horse.pcx file, but hey... it doesn't hurt)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3502 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-27 11:42:47 +00:00
Guillermo Rodriguez Garcia
2080bf4f44 Added imagpcx.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3501 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-27 11:34:02 +00:00
Guillermo Rodriguez Garcia
6523d1198f Added wxBITMAP_TYPE_PCX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3500 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-27 11:31:35 +00:00
Guillermo Rodriguez Garcia
b9943f8e8f Added PCX Handler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3499 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-27 11:31:07 +00:00
Guillermo Rodriguez Garcia
8a68d8b6c1 small change (honour 'verbose' parameter in LoadFile)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3498 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-27 11:29:10 +00:00
Guillermo Rodriguez Garcia
56c667557e New PCX Image Handler (still empty)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3497 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-27 11:28:28 +00:00
Michael Bedward
cfcab3d203 Fix for compilation under AIX.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3496 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-27 08:23:56 +00:00
Michael Bedward
d127d9360f Fixes for compilation under AIX.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3495 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-27 08:22:32 +00:00
Guilhem Lavaux
1bd3e1efef Better fix for thread sample code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3494 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-26 18:04:46 +00:00
Guilhem Lavaux
9baf15cea6 Fixed thread sample SEGV on wxGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3493 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-26 17:35:00 +00:00
Patrick Albert
3372145d9d Solving link problem with 16 bits versions (wxProcessEvent, wxSpinEvent)
Various makefile.dos in Samples/ dir are now up-to-date
msvc\Ctl3dv2.lib changed to a valid one


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3492 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-26 17:05:33 +00:00
Robert Roebling
a6f3598d2b Distrib and make install fixes.
Docs for wxSizer finished.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3491 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-26 16:15:38 +00:00
Michael Bedward
b86de524c7 Changed value setting code in ctor and function SetValue so that widget uses a copy of the source string rather than a pointer to the source string. This fixes problems with wxGrid.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3490 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-26 04:41:56 +00:00
Robin Dunn
b164fb385a Better uninstall handling and some other tweaks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3489 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-26 04:05:01 +00:00
Guilhem Lavaux
0ac77ef5c8 Fixed a bug in threadpsx.cpp (wxBaseArray bug).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3488 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-25 17:48:48 +00:00
Guilhem Lavaux
503aa33d55 Added wxSound for Windows support (successful WAV playback on VC++ 5)
Fixes/Updates for the rest.
PNM decoder uses now wxBufferedInputStream to (to be tested).
Support for G72X is on the road ...


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3487 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-25 17:22:26 +00:00
Robert Roebling
641d87d868 Many distribution things.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3486 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-25 16:39:29 +00:00
Harco de Hilster
45e726de6b fixed mingw32 problem. Now correctly deals with egcs / <=gcc-2.8 issue.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3485 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-25 13:47:04 +00:00
Michael Bedward
6970c7b916 Fixed bug (hopefully) that caused windows to be only partially repainted. Last update rect was being missed in wxCanvasRepaintProc().
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3484 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-25 07:52:14 +00:00
Michael Bedward
95814e4902 Fixed but in wxButton::SetDefault() that was causing core dumps when a
generic colour dialog was created.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3483 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-25 06:27:57 +00:00
Robin Dunn
c60fc26d55 glcanvas and utils have mode to the modules directory
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3482 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-25 04:59:42 +00:00
Robin Dunn
78fa90773a Death to all Makefiles and associates!
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3481 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-25 04:50:57 +00:00
Michael Bedward
41435ed2e9 Added test for wxUSE_STATLINE so that wizard will compile under wxMotif
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3480 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 23:45:06 +00:00
Robin Dunn
f1b34d5aa3 More execute bit setting... (again!)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3479 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 23:00:05 +00:00
Robin Dunn
629e313037 More execute bit setting... (again!)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3478 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 22:59:27 +00:00
Robin Dunn
77031c5a16 More execute bit setting...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3477 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 22:58:29 +00:00
Robin Dunn
bfdafe6372 More execute bit setting...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3476 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 22:57:52 +00:00
Robin Dunn
a35c976180 Fixed a typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3475 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 22:55:58 +00:00
Guillermo Rodriguez Garcia
3c87527e89 Added CanRead()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3474 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 22:13:26 +00:00
Guillermo Rodriguez Garcia
bd2fdefea2 Fixed CanRead(), which incorrectly forced version 89a, thus preventing
valid GIFs with older version numbers (87a) to be loaded correctly. Also,
CanRead() is now in gifdecod.cpp


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3473 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 22:10:51 +00:00
Robert Roebling
6dfaa4e5d9 Forgot to add the files.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3472 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 20:30:10 +00:00
Robert Roebling
8636aed896 Added new wxFontDialog,
Added PICFLAGS to parser compilation,
  Implemented COL_CLICK and wxLC_NO_HEADER


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3471 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 20:26:06 +00:00
Robin Dunn
799a341cc3 Deleting and re-adding to get the execute bit set
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3470 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 20:14:14 +00:00
Robin Dunn
271cb474f8 Deleting and re-adding to get the execute bit set
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3469 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 20:13:23 +00:00
Robin Dunn
5c3a94a62a Trying to get the execute bit set by default...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3468 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 20:11:29 +00:00
Robin Dunn
233e355cdd Trying to get the execute bit set but default...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3467 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 20:10:33 +00:00
Robin Dunn
f32bba383f Build tool updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3466 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 19:53:40 +00:00
Sylvain Bougnoux
0a98aa1a4d 2c : check menu was inversely set
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 19:08:52 +00:00
Guilhem Lavaux
09eea162f7 Renamed UnRead to Unread in the doc
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3464 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 17:38:55 +00:00
Sylvain Bougnoux
2e76d51926 Fixed ctor declaration : some default were missing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3463 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 16:17:22 +00:00
Patrick Albert
2996bcde9c Minor corrections to be able to compile with VC++ 1.5C and VC++ 4.1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3462 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 15:54:04 +00:00
Harco de Hilster
d1bc9efeff Oops, had forgotten the GL libraries for unix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3461 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 13:23:44 +00:00
Julian Smart
2723cfeba2 Minor doc & distrib file changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 13:04:55 +00:00
Harco de Hilster
f786a3b23d - Updated gtk SWIGged files to SWIG 1.1 cvs level
- changed SOURCES treatment in build.py; the path is stripped from the source
file when the object name is derived; this means sources can be anywhere
(typically might be in GENCODEDIR) but the compiled object will always be
in the current dir. (This is how the implicit makefile rule already behaved)
- updated glcanvas/build.cfg for unix builds to copy glcanvas.cpp from
utils/glcanvas (like Setup.in did)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3459 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 12:51:54 +00:00
Julian Smart
d50c81d3ad Added WS_VSCROLL, WS_HSCROLL styles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3458 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 08:24:36 +00:00
Robin Dunn
cc17753ff6 Some cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3457 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 08:05:51 +00:00
Robin Dunn
5148fc8e35 New build system for wxPython. (Still needs some polish but is stable
for me.  Will be doing more testing tomorrow on other platforms and
then will remove the old wxPython build stuff...)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3456 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 07:46:54 +00:00
Robin Dunn
a8e3377c03 Moving utils from core to modules
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3455 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 07:39:24 +00:00
Robin Dunn
2f0062dfe4 Fixed compile error for gcc 2.95 (was just a warning on other versions...)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3454 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 07:19:01 +00:00
Robin Dunn
325274bbf5 Adding new SWIGified sources for wxPython modules
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3453 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 07:15:52 +00:00
Robin Dunn
a353a0be68 Added MS VC++ instructions.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3452 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-24 04:37:16 +00:00
Harco de Hilster
3e0de8a570 disabled windows.h check for cross compiling --- might accidently find
wine headers and we wouldn't want that...


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3451 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-23 21:13:20 +00:00
Harco de Hilster
a29cd6c0b0 started adding swigged sources
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3450 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-23 18:00:34 +00:00
Harco de Hilster
a2241297df gtk and msw build dirs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3449 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-23 17:43:44 +00:00
Harco de Hilster
6de7caffec ok
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3448 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-23 17:40:06 +00:00
Robert Roebling
3f3cec484d Small optical changes for MSW
Buttons now get at least 80x23 if given
    a default size
  Small compile and distrib changes


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3447 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-23 15:23:29 +00:00
Harco de Hilster
1db46618f7 added a define STRICT to setup.h (for mingw32-gcc2.95), removed liboldnames
for wxMSW compilation.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3446 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-23 12:43:15 +00:00
Robert Roebling
72ed7aae1d Corrected motif makefile (hopefully)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3445 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-23 12:30:37 +00:00
Harco de Hilster
742af0714e Your typical c_str => c_str() fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3444 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-23 09:26:39 +00:00
Harco de Hilster
0d63916894 small cross-compilation updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3443 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-22 23:20:21 +00:00
Harco de Hilster
80d895cd3f Fixes for smoother cross compilation;
- added parser.o to msw objects in unx.t
- made sure 'lexer.c' is included in parser.y when cross compiling wxMSW
- added optional program extention PROGRAM_EXT set by configure, so that
  makeprog.env can create .exe files
- a few additions to setup.h.in (wxUSE_OWNER_DRAWN for wxMSW, hack to fix
a clash with __WINDOWS__ define in wx/deps.h


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3442 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-22 22:43:58 +00:00
Harco de Hilster
916d0b6165 A few small fixes for cross compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3441 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-22 20:16:23 +00:00
Robert Roebling
65045edde4 Added wxFFileStream base on wxFFile (as opposed to wxFile)
Implemented the "endl" thing for text streams,
  Corrected cursor display for text ctrls,
  Corrected the strange spin button behaviour when dynamically
    changing its range
  Corrcected bug in wxListBox when programmatically unselecting
   an item in multi-select mode (bug reports are getting esoteric)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3440 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-22 16:12:48 +00:00
Robert Roebling
e2acb9ae1c Added wxCountingStream for measuring the size of streamed data
Added wxBitmapObject for putting it on the clipboard


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3439 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-22 14:10:50 +00:00
Robert Roebling
ac2def68ed makefile typo
wxFileDialog now defaults to cwd, not home
  PS can now print in landscape (although upside-down)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3438 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-21 19:14:58 +00:00
Robert Roebling
4130b487dc Doc corrections,
Made colour dialog look slightly nicer,
  Removed generic file dialog from wxMotif


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3437 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-21 13:54:32 +00:00
Robert Roebling
ed58dbeab6 Changed a few #include <xxx.h> to #include "xxx.h"
Added endl operator to wxTextStream
  Corrrected a few misbehaviours in wxFileDialog,
  Corrected tab traversal a bit
  Corrected wxImage::SetData() to not copy, but take
    the data and care for ref couting as well


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3436 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-20 22:52:21 +00:00
Robert Roebling
5586805bfa Added dependency checking and all that.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3435 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-20 19:40:03 +00:00
Robin Dunn
a2c75a028d Added a python note.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3434 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-20 19:18:02 +00:00
Stefan Csomor
585ae8cbc0 CW Pro 5 Adaptions (the .old.mcp are the Pro 4 Files)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3433 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-20 15:36:30 +00:00
Sylvain Bougnoux
d9bd149456 wxScrollBar::Create() produced always vertical scrollbar
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3432 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-20 11:40:03 +00:00
Julian Smart
b2a9d5b418 Restored the ability to scroll.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3431 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-20 10:10:58 +00:00
Harco de Hilster
bd8aa7e059 ignore this...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3430 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-19 20:07:50 +00:00
Robert Roebling
9c8849722a Doc updates, wxsizer et al
wxFileDialog displays current dir now,
 wxTipProvider uses statictext for headline
 messagebox (and other) dialogs now always display
   an OK buttons, unless wxYES_NO is given
 Appending a menu to a menu bar after having called
   wxFrame::SetMenuBar() should now work
 Added test to configure so that it correctly sets
  compiler flags etc if GCC is used on Solaris and
  IRIX instead of CC, also changed default shared
  library create to GCC from G++ on some platforms
  (as previously already Linux)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3429 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-19 18:41:41 +00:00
Karsten Ballüder
03443829ac Added support for locales like de_AT.iso-8859-1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3428 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-19 14:10:22 +00:00
Karsten Ballüder
7750247f60 Had to add it to make daily recompiles work. :-( Only one file anyway.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3427 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-19 12:16:15 +00:00
Sylvain Bougnoux
93dfff5ae6 Implement CanRead
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3426 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-19 08:24:22 +00:00
J. Russell Smyth
f3b8ef890c Fixed "Bound pointer address" error under GCC-2.95
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3425 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-19 05:37:18 +00:00
Robin Dunn
2d0918205a Using a new version of SWIG
A few minor fixes


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3423 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 22:37:56 +00:00
Robin Dunn
e8ac7bf221 Added missing files to filelist.txt and regenerated makefiles.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3422 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 22:33:35 +00:00
Václav Slavík
0828c0875e added wxImage::CanRead
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3421 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 21:22:54 +00:00
Robert Roebling
cae5359f18 More wxFileDialog things
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3420 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 19:31:50 +00:00
Vadim Zeitlin
772829164b added a simple makefile to regenerate all other makefiles with tmake
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3419 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 18:23:03 +00:00
Vadim Zeitlin
b87654f3fd wxWizard added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3418 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 18:06:10 +00:00
Sylvain Bougnoux
a8d9809fc0 Added PNM image handler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3417 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 17:31:34 +00:00
Sylvain Bougnoux
bcc46c7559 Added PNM image handler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3416 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 17:25:45 +00:00
Vadim Zeitlin
3a3eed31f0 vsscanf test corrected (?)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3415 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 17:03:20 +00:00
Sylvain Bougnoux
7b2471a060 Added wxImage wxImage::GetSubImage(cont wxRect&) const
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3414 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 17:01:47 +00:00
Vadim Zeitlin
895fc9cb8b more styles documented
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3413 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 16:58:34 +00:00
Robert Roebling
e6daf79489 EMX compilation,
Minor doc changes,
  wxFileDialog optical things,
  wxMessageDlg dimension


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3412 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 15:23:15 +00:00
Sylvain Bougnoux
9ce29a28cd change some #ifdef
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3411 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 12:50:30 +00:00
Robert Roebling
0b8558681e Whole lot of stuff for new wxFileDialog
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3410 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 11:40:40 +00:00
Robin Dunn
1d99702e4b Using a new version of SWIG
A few minor fixes


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3409 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 07:41:59 +00:00
Julian Smart
661dc384df Added gifdecod.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 06:28:59 +00:00
Julian Smart
464122b639 Added gifdecod.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3407 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 06:28:20 +00:00
Robin Dunn
21d72d1755 Fix to prevent Assert when there is an empty string in a combobox/choice.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3406 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 06:27:58 +00:00
Guilhem Lavaux
eb4642a989 Added a check for -lresolv in configure.in
Removed wxFileInputStream::Peek as it is implemented in wxInputStream::Peek


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3405 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-18 06:11:07 +00:00
Robin Dunn
def89c21b6 removed references to local tick_bmp and cross_bmp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-17 22:21:08 +00:00
Robin Dunn
e841d48627 Added cross and tick bitmaps to the main resource file so the DLL would stop
complaining when trying to initialize the proplist module.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3403 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-17 22:19:00 +00:00
Guilhem Lavaux
6c5e63761c Make wxMMedia2 compile on VC++ 5
Added makefile for VC++ 5
Warning: sndwin.cpp will not compile, it is unfinished


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3402 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-17 17:51:33 +00:00
Robert Roebling
8b17ba727c Added new file dialog
Minor changes to docs and other generic dialogs
  Minor changes to makefiles


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3401 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-17 15:55:25 +00:00
Harco de Hilster
4540b0b60f small makefile.vc fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3400 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-17 15:14:08 +00:00
Karsten Ballüder
7ac080a1c7 minor fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3399 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-17 12:31:34 +00:00
Julian Smart
469eb89edc Fixed bug that wrote incomplete wxExpr files (missing fclose)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3398 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-17 10:27:04 +00:00
Sylvain Bougnoux
deb2fec01e Improve wxImage::LoadImage so that image format in not anymore required
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3397 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-17 09:27:44 +00:00
Michael Bedward
40d4abbc70 Changed values passed to SetClientSize() in CreateWidgets() so that buttons are not clipped by the dialog margin
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3396 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-16 23:04:00 +00:00
Robert Roebling
a24657845b Added missing files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3395 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-16 20:21:06 +00:00
Robert Roebling
42b4e99e9a Added Prepend() and Remove() methods to wxSizer,
Corrected a stupid bug in it,
  Freshed up wxPropertyXXX to make use of the icons
  in the dialogs.
  Made wxBmpButton inherit from wxButton. Grumble.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-16 20:17:48 +00:00
Karsten Ballüder
0b129e1a85 (hopefully) fixed make install
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3393 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-16 13:18:45 +00:00
Robert Roebling
fd9811b137 compile fixes for EMX
minor doc updates
  minor fixes for problems with rdrag and ldrag in tree ctrl and list ctrl


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3392 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-16 12:18:40 +00:00
Karsten Ballüder
c62d808272 fixed duplicate inclusion of jpeg source
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3391 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-16 09:05:18 +00:00
Michael Bedward
5b96c684f3 Fixed bug in function Flush().
It was testing for !fflush() as error


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3390 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-16 07:50:36 +00:00
Vadim Zeitlin
66cd017c29 wxWizard draft
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3389 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-15 20:59:50 +00:00
Robert Roebling
515da557f1 Began docs on sizers,
Correted a few other docs


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3388 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-15 18:35:03 +00:00
Robert Roebling
dc6c62a931 Added and corrected a few more html makefiles,
Corrected wrong buffer size in menu code,
  Turned wxDirDlgg from functional to cool,
  Found a few esoteric bugs in wxListCtrl and
    wxTreeCtrl on the way


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3387 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-15 15:18:54 +00:00
Guilhem Lavaux
354616b046 Commited very sort samples
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3386 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-15 10:28:21 +00:00
Guilhem Lavaux
622e48cbd2 Added utils/Makefile.in for utils makefiles
Changed some name in wxMMedia2


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3385 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-15 10:15:05 +00:00
Michael Bedward
a3736ef475 Put the call to CheckForKeyDown() back in to ProcessXEvent because key down events are no longer being generated in wxCanvasInputEvent(). If you find yourself getting double key down events then CheckForKeyDown() should be bypassed again (but what is going on ???).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3384 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-15 04:19:25 +00:00
Michael Bedward
4c151c737e Added include for wx/window.h to get this to compile.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3383 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-15 02:59:41 +00:00
Vadim Zeitlin
43427087aa InsertPage/SetSelection bug fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3382 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-14 21:41:46 +00:00
Guilhem Lavaux
526ddb13e2 Removed wxMMedia
Added wxMMedia2: it should work on linux (wave read/write, aiff read only)
      I begin to write windows driver now

Added some file to filelist.txt
Make configure build wxMMedia2 makefiles


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3381 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-14 12:06:35 +00:00
Guilhem Lavaux
f1f5976f1f Removed unnecessary branch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3380 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-14 11:51:39 +00:00
Robert Roebling
b1683d3899 Makefile updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3379 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-14 11:14:39 +00:00
Robert Roebling
549c6f67f9 More samples makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3378 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-14 09:41:49 +00:00
Vadim Zeitlin
8fe0578285 templates for new sizer classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3377 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-13 20:33:19 +00:00
Robert Roebling
8a5137d74a More makefiles
Corrected two thing in wxDialogBase (empty lines) and
    msgdlg (wrong flags)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3376 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-13 19:39:15 +00:00
Karsten Ballüder
ac15e21dc7 more compilation fixes, some object files were missing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3375 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-13 19:24:13 +00:00
Robert Roebling
a8efa9e391 More smaple makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3374 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-13 18:54:54 +00:00
Václav Slavík
d54ed754ae *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3373 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-13 18:47:07 +00:00
Karsten Ballüder
66635d688c fixes for make install
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3372 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-13 18:22:25 +00:00
Guilhem Lavaux
d4feedcff1 Bug fix in wxBufferedInputStream::SeekI
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3371 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-13 17:49:02 +00:00
Robert Roebling
d1c7850d7e Updated makefiles for printing sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3370 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-13 17:34:53 +00:00
Robert Roebling
27ea1d8aae Added wxStaticBoxSizer,
Makefile updates,
  Improved look of wxGenericPageSetupDialog


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3369 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-13 17:32:30 +00:00
Robert Roebling
4cb122de97 Compile fixes,
Big-endian fix for image.cpp (Untested, I have no sparc)
  Make dist works (more or less)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3368 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-13 14:21:06 +00:00
Robert Roebling
a4aad9613a Started "make dist"
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3367 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-13 10:33:08 +00:00
Robert Roebling
e4b4d60e56 Added WINE and probably x-compile makefiles
Fixed busy cursor compilation.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3366 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-13 08:58:58 +00:00
Robert Roebling
75ef19df59 Added setup.h.in
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3365 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-13 08:26:34 +00:00
Vadim Zeitlin
e2a1679e71 regenerated makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3364 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-12 20:21:13 +00:00
Julian Smart
c7527e3f21 wxBook additions; added a couple of pixels in menu drawing; taskbar
PopupMenu improvements


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3363 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-12 20:18:18 +00:00
Robert Roebling
ad9edf45f1 Augmented beta to 9,
Removed a few old Makefiles,
  Added one missing one (blush),
  Added first sample makefiles,


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3362 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-12 19:24:39 +00:00
Robert Roebling
517a619dc3 make install, make uninstall and wx-coonfig work again.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3361 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-12 17:41:29 +00:00
Karsten Ballüder
eebe401675 Useful little fix that automatically hides the busy cursor in modal dialogs.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3360 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-12 15:36:50 +00:00
Sylvain Bougnoux
265b457741 just disable alpha buffer to make it more portable as
many hardware doesn't have a true alpha plane !


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3359 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-12 15:02:44 +00:00
Václav Slavík
c32cfa3641 wxHtmlWidgetCells now destroys window correctly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3358 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-12 14:03:23 +00:00
Robert Roebling
583a65787f Corrected PNG etc include paths
Added install for Motif (not tested)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3357 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-12 14:02:50 +00:00
Václav Slavík
a47ad26244 minor fix in wxHtmlWindow::CreateLayout
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3356 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-12 13:37:02 +00:00
Václav Slavík
af23d90aa3 fixed crash in tables deallocation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3355 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-12 13:36:55 +00:00
Robert Roebling
2aa887306b New makefile system in place, obsoletes libtool,
autoheader, automake and the testconf directory.
  So far only GTK and only shared libraries.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3354 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-12 12:54:33 +00:00
Karsten Ballüder
bf3e0fbd1f some compilation fixes atttempts for solaris
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3353 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-12 12:18:49 +00:00
Michael Bedward
364c7f3c68 if'd out CheckForKeyDown call that doesn't seem to be necessary now (but we still need CheckForKeyUp() - why???
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3352 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-12 08:51:45 +00:00
J. Russell Smyth
d2befda32f Changed wxBox to wxBoxSizer to fit current API
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3351 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-12 05:09:59 +00:00
Vadim Zeitlin
1a5e297c6b wxMenuBar::IsEnabled() now returns TRUE sometimes too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3350 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-11 22:54:28 +00:00
Robert Roebling
48b1d0ff4f New makefile updates.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3349 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-11 17:40:09 +00:00
Harco de Hilster
b80c8d89d6 README file (sparse) added.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3348 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-11 17:26:35 +00:00
Harco de Hilster
4107d4fdd1 updates to some readme's
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3347 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-11 17:23:17 +00:00
Harco de Hilster
144247aca9 stubs...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3346 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-11 17:16:00 +00:00
Harco de Hilster
4b123bb9cc lots'o' wxpython modules files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3345 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-11 17:14:49 +00:00
Harco de Hilster
05394a18d4 started adding modules tree...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3344 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-11 17:09:18 +00:00
Julian Smart
bed9b80689 Added wxbook.htm.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3343 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-11 14:37:10 +00:00
Robert Roebling
c0854a089c Corrected Motif build,
Updated testconf


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3342 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-11 13:36:47 +00:00
Robert Roebling
92afa2b150 Did somework on the generic dialogs,
Renamed wxBox -> wxBoxSizer
  Removed old dialog layout code,


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3341 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-11 11:53:40 +00:00
Robert Roebling
9635832dbd Forgot one.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3340 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-10 20:09:45 +00:00
Robert Roebling
8e877c195b New makefiles for GTK and Motif, using configure but not
libtool and automake.
  Numerous Motif crash fixes.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3339 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-10 20:08:24 +00:00
Guilhem Lavaux
d5b08e7b07 #if => #if defined()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3338 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-10 19:59:27 +00:00
Guilhem Lavaux
e96ac54e83 Check for inet_addr/inet_aton.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3337 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-10 17:48:11 +00:00
Sylvain Bougnoux
5391f772be better control of what need refresh.
if selection doesn't changed when hit, no event are triggered anymore.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3336 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-10 13:13:58 +00:00
Robert Roebling
3a2490c684 Further makefile and compile fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3335 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-10 13:12:19 +00:00
Robert Roebling
0ae2df3052 A few compile fixes,
Updated filetxt.txt to include sizer.cpp


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3334 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-10 12:27:07 +00:00
Robert Roebling
073478b3d0 Updates for makefile.unx
Converted numdlg to use wxSizer
  Corrcted bug in default size of wxStaticLine
  Other optical corrections


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3333 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-10 11:23:46 +00:00
Julian Smart
50bcd1ae77 Fixed my fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3332 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-10 06:27:10 +00:00
Vadim Zeitlin
a8cb1d29e7 another makefile updated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3331 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-09 21:21:23 +00:00
Julian Smart
d66d9d5bf0 A fix for wxTaskBarIcon (temporary wxFrame interfering with app shutdown);
added event handler for tbtest.cpp so it'll quit properly


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3330 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-09 20:49:34 +00:00
Guilhem Lavaux
dc26b37a91 Renamed m_blocking to m_non_blocking
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3329 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-09 19:14:15 +00:00
J. Russell Smyth
7dee726c7e Changes to allow OLE to compile under mingw32/gcc-2.95
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3328 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-09 17:47:28 +00:00
Guilhem Lavaux
98781fa30e Removed unnecessary lines from threadpsx
Renamed GSOCK_TRYAGAIN to GSOCK_WOULDBLOCK
Added GSOCK_TIMEOUT
Enabled the replacement code for timeout handling in gsocket.c
Renamed some var in gsockunx & gsocket


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3327 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-09 17:35:30 +00:00
J. Russell Smyth
4b6f0b91ff Corrected check for new mingw32 with new headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3326 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-09 17:26:52 +00:00
Robert Roebling
3417c2cd3d Replaced old wxSizer,
Converted two of wxGTK's standard dialogs to use them,
  Applied two fixes to wxDC code,
  Made wxRadiobox a little smaller,
  Added sizer.h to wx.h


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3325 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-09 17:00:51 +00:00
Robert Roebling
d597fcb781 Completed wxBox,
Changed a few defines in defs.h, most importantly,
    wxCENTRE is now 1


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3324 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-09 11:27:37 +00:00
Michael Bedward
447a039fa3 wxFrame::Create now sets (arbitrary) values for position and size if default values of -1 have been used
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3323 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-09 07:23:59 +00:00
Václav Slavík
956418ab76 added MIME manager fallback support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3322 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-08 22:28:48 +00:00
Vadim Zeitlin
77671fd2d6 1. regenerated makefiles
2. wxNewSizer compiles under MSW


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3321 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-08 21:56:43 +00:00
Robert Roebling
61d514bb2f Finished porting Robin's wxSizers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3320 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-08 21:09:59 +00:00
Robert Roebling
c62ac5b6e4 Added wxNewSizer and wxBorderNewSizer with sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3319 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-08 16:45:57 +00:00
Václav Slavík
29672bf006 scrollbar doesn't appear anymore in html view
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3318 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-08 15:55:21 +00:00
Václav Slavík
60811dc6cc m_Style was bool by mistake, fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3317 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-08 15:53:30 +00:00
Václav Slavík
2c997ad008 now has 'help' item in menu
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3316 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-08 15:52:31 +00:00
Robert Roebling
5279a24d25 zipstrm link fix
added sizer.h/cpp which don't even compile yet


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3315 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-08 13:58:24 +00:00
Robert Roebling
6001e347ba Added strconv
Renamed zipstream -> zipstrm
  Updated makefiles etc.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3314 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-08 11:31:18 +00:00
Vadim Zeitlin
3f1aaa1635 compile fix for Unix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3313 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-07 23:20:54 +00:00
Vadim Zeitlin
8e124873c5 wxMimeTypesManager::AddFallbacks() added, also corrected a minor bug/incompatible
behaviour in wxFileType and added a MIME database query demo to typetest sample


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3312 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-07 23:10:09 +00:00
Guilhem Lavaux
cc345f7897 Commented setsockopt as it doesn't work anywhere. I will use signals for timeout.
Fixed _GSocket_Init_INET.
Only oriented connections should be shutdowned.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3311 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-07 17:03:22 +00:00
Vadim Zeitlin
71f21f464f declared (not implemented yet) wxMimeTypesManager::AddFallbacks()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3310 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-07 15:39:29 +00:00
Vadim Zeitlin
aea02638ea test for vsscanf enhanced, added HAVE_VSSCANF to acconfig.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3309 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-07 14:44:58 +00:00
Robin Dunn
988238ab15 more distrib things
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3308 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-06 19:03:04 +00:00
Guilhem Lavaux
8f7173abc4 Changed Ungetch(void *, ...) to Ungetch(const void *, ...)
Fixed some bug in gsocket


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3307 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-06 18:23:49 +00:00
Julian Smart
ea4f5235fc Changes for BC++
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3306 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-06 16:17:40 +00:00
Julian Smart
91c93c9927 Minor additions to FAQ
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3305 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-06 15:59:31 +00:00
Robert Roebling
402a82c6be Minor corrections to samples again.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3303 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-06 13:41:55 +00:00
Ove Kaaven
ed8f12be32 TVS_CHECKBOXES doesn't seem to exist in Borland C++
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3302 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-06 13:35:31 +00:00
Ove Kaaven
83475efc94 Make it LPNM_UPDOWN, not LPNMUPDOWN, in Borland C++
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3301 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-06 13:24:48 +00:00
Robert Roebling
89124b1ac2 Minor changes to samples.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3300 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-06 13:06:11 +00:00
Václav Slavík
7309b92dd7 win32 miniframe added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3299 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-06 11:52:33 +00:00
Václav Slavík
f8c4475a3e converted to 16 colors
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3298 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-06 11:51:44 +00:00
Robert Roebling
d422d01eec Distrib things,
Typos in dynarray.h,
  Removed C++ comments from code,
  Added a few #ifdef wxUSE_XXX


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3297 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-06 10:10:10 +00:00
Julian Smart
22d6efa851 Cured some bugs/typos/spacing in docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3296 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 22:05:15 +00:00
Robert Roebling
e70f5e1301 Compile fix for dynarray,
Use wxStreams in dialoged,
  Small typo in wxApp::OnIdle()
  Distrib things,
  wxPython makefile corrections (libpy.c and libptr.c missing)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3295 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 20:38:51 +00:00
Robin Dunn
48e74ff549 fixed compile error
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3294 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 19:31:15 +00:00
Guilhem Lavaux
60b6c062f8 Changed BidEndianOrdered to BigEndianOrdered in datstrm.h
Seek and Tell do the right thing in wxIn/OutputStream now
Check for GNU extension in configure.in: this is needed for GLIBC 2.1/GCC 2.95
  -> this enables _GNU_SOURCE


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3293 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 17:42:09 +00:00
Julian Smart
d7cb14cec9 Corrected some doc problems
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3292 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 15:51:32 +00:00
Robert Roebling
fb39c7ecd7 Compile fix for button, MSW
Typo in dialogs sample


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3291 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 13:58:22 +00:00
Harco de Hilster
c543cdb77b Small fix to correctly generate GENCODEDIR/*.py files.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3290 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 11:14:47 +00:00
Robert Roebling
956dbab1eb Applied patch for stipppled brushes,
Corrected idle behaviour after popmenu call


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3289 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 11:14:07 +00:00
Harco de Hilster
867673d4f2 added install for gsocket.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3288 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 10:10:10 +00:00
Julian Smart
edc26c4c2d Added new files to .rsp files; added new samples to index.htm
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3287 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 09:33:04 +00:00
Robin Dunn
77ed579e58 more distrib things
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3286 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 06:47:57 +00:00
Robin Dunn
3f0be3ec40 more tweaks...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3285 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 06:24:45 +00:00
Robin Dunn
923eda0780 more distrib things
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3284 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 06:18:34 +00:00
Michael Bedward
60f5b8804b Added a line to set m_font in the wxWindowDC ctor (with window arg) so that GetTextExtent will work properly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3283 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 06:14:06 +00:00
Robin Dunn
645ab2ee26 Some tweaks...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3282 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 06:10:31 +00:00
Robin Dunn
009a1c89e7 Now uses external SWIG library on win32 too. Simplifies the makefile.vc
somewhat.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3281 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 06:09:54 +00:00
Robin Dunn
91ad003f43 Updated WISE scripts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3280 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 06:08:55 +00:00
Robin Dunn
f581a26df9 Some minor tweaks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3279 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 05:06:50 +00:00
David Webster
c3d434725b *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3278 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 04:05:25 +00:00
Robin Dunn
18ac8d6919 Added missing } so tex2rtf wouldn't puke
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3277 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 03:47:29 +00:00
Ryan Norton
48bf5def83 Tcl regex lib
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3274 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-05 01:16:55 +00:00
Václav Slavík
48828fc9f0 added fsfile.tex
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3273 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-04 22:40:30 +00:00
Vadim Zeitlin
8c3c31d4a5 wxButton::GetDefaultSize() fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3272 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-04 22:07:01 +00:00
J. Russell Smyth
88b0e1c83d Moved initialization of status bar to eliminate assert caused by new
controls trying to set s-bar text


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3271 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-04 21:19:46 +00:00
J. Russell Smyth
17b0d794e6 made panel use wxSystemSettings::GetColor to make sure colors are right for
user's selected color scheme


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3270 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-04 21:15:37 +00:00
J. Russell Smyth
c5be98a644 Fixed to fill in m_dir member when file selected so that GetDirectory
returns the correct value


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3269 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-04 20:19:40 +00:00
J. Russell Smyth
51929198e4 Minor change to make spinbutton text match spinbutton position on startup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3268 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-04 19:51:51 +00:00
Guilhem Lavaux
54e575f947 GSocket_timeout: timeout support hack (disabled for the moment)
Changed some bool to GSocketError in gsockunx.h


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3267 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-04 18:02:24 +00:00
Robin Dunn
cb1b6606ab Set the version number to use for the DLL in WXVERSION
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3266 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-04 16:33:27 +00:00
Robin Dunn
ccf0b1d76c Now uses the version number when doing a cleandll
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3265 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-04 16:32:42 +00:00
Vadim Zeitlin
36dda0de23 radiobox event now contains the string too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3264 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-04 14:49:37 +00:00
Robert Roebling
e65cc56a3b Minor changes to viusal appearance,
Added wxYield() to wxEndBusyCursor(),
  Made wxSpinButton always sent a wxSROLL_THUMBTRACK event,
  Made wxDirDialog resizable,
  Made gsocket.c compile,


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3263 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-04 14:41:41 +00:00
Robert Roebling
33961d59b0 Compile fixes for samples and dialoged,
small optical improvements,
  distrib changes,
  link fix for treectrl


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3262 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-04 13:01:20 +00:00
Václav Slavík
2356708db3 fixed somebody's poorly done StreamSize-->GetSize transition
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3261 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-04 12:30:06 +00:00
Robin Dunn
6bddd8c5f3 New Makefile/Setup files supporting multiple dynamic extension modules
for unix systems.

Fixes for the wxGLCanvas demo to work around a strange bug in gtk.

SWIG support routines now compiled separately instead of being bundled
in wx.cpp.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3260 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-04 05:26:11 +00:00
David Webster
de44a9f06d *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3259 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-04 04:20:17 +00:00
J. Russell Smyth
65fd5cb012 Made changes to allow build with new mingw32/gcc-2.95
added wxUSE_NORLANDER_HEADERS for mingw32/gcc-2.95


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3258 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-04 00:42:51 +00:00
Václav Slavík
ea8fe90e65 bool scrollable replaced by wxHW_* flags
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3257 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-04 00:00:16 +00:00
Václav Slavík
2776d7c3bd malloc() --> new[]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3256 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-03 23:59:38 +00:00
Václav Slavík
a547ebffd6 wxHW_* flags, fixed client area problem
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3255 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-03 23:58:56 +00:00
Václav Slavík
d674cf6dc3 added DLL exports
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3254 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-03 23:56:34 +00:00
Václav Slavík
11b63f34f8 initial commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3253 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-03 23:55:45 +00:00
Karsten Ballüder
fa12f7e609 Changed wxChoice->wxComboBox as list of all paper sizes is too large to fit
on screen. Works fine for wxGTK.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3252 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-03 15:20:23 +00:00
Ove Kaaven
c9f9be4510 Hmm, apparently had to add FNSTRINGCAST elsewhere in the file too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3251 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-03 13:05:19 +00:00
Ove Kaaven
ff881f70d3 Changed my mind and used FNSTRINGCAST instead
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3250 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-03 13:03:33 +00:00
Ove Kaaven
68abfefc45 Replaced (char*)wxFNCONV with (const char*)wxFNCONV
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3249 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-03 13:02:04 +00:00
Vadim Zeitlin
d5d63453b1 LINKAGEMODE moved to defs.h - string.cpp actually compiles now...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3248 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-03 11:31:47 +00:00
Vadim Zeitlin
3fb98ddfec __UNIX__ redefition corrected
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3247 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-03 11:26:39 +00:00
Vadim Zeitlin
6ccec5fcb2 cliet data crash fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3246 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-03 11:12:14 +00:00
Robin Dunn
7bcd390c94 fixed a typo or two...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3245 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-03 06:48:46 +00:00
Robin Dunn
1dc2f8658b Fixed wxImage GetData and SetData to properly use String objects for
data transfer.

Added access methods to wxGridEvent.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3244 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-03 06:44:28 +00:00
David Webster
849949b13f *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3243 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-03 04:36:53 +00:00
Vadim Zeitlin
d22699b5eb 1. minor headers rearrangement: wxprec.h doesn't include setup.h directly
any more, btu defs.h does - and not in the very beginning, but a bit
   later
2. some unused and uncompileable OS2 thing removed from string.cpp


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3242 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-02 21:31:09 +00:00
Robert Roebling
e46286351d Minor changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3241 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-02 19:06:23 +00:00
Guilhem Lavaux
9bb2eb9fd6 Changed a var name
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3240 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-02 19:00:00 +00:00
Guilhem Lavaux
e00f35bb06 Better memory errors handler (added GSOCK_MEMERR)
Fixed 'NULL' warning in socket.cpp


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3239 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-02 17:46:43 +00:00
David Webster
1408104d04 Changes to make common and generic compilable under VisualAge C++ V3.0 ofr OS/2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3238 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-02 16:39:18 +00:00
Michael Bedward
3ab377bd1a Added code to set m_isBeingDeleted as per wxGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3237 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-02 06:00:17 +00:00
David Webster
913df6f2e0 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3236 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-02 04:54:56 +00:00
David Webster
54da4255a2 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3235 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-02 04:44:01 +00:00
Michael Bedward
4d194d6368 Added function GetDefaultSize
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3234 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-02 04:19:49 +00:00
Michael Bedward
5af2ff30ec Added these accessor functions for wxGridEvent: GetRow, GetCol, GetPosition, GetCell, ControlDown, ShiftDown
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3233 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-02 03:23:35 +00:00
Vadim Zeitlin
10fcf31a2c 1. wxWindow::Centre() hopefully fixed
2. attempts to construct bitmaps from icons properly
3. wxTreeCtrl background is always white


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3232 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-01 22:22:02 +00:00
Vadim Zeitlin
4ee14879f2 fix for wxMSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3231 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-01 22:17:11 +00:00
Robert Roebling
23a54e14a7 Updated testconf,
Compile fixes for docview and iostreams,
  SO_RCVTIMEO doesn't exist everywhere and must
   not be used for setting this option - only
   getting it on some systems
  Distrib things


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3230 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-01 11:02:05 +00:00
Guilhem Lavaux
f439844be2 wxMemoryStream doc updated
Added auto-destruction in wxThread::Delete and wxThread::Kill
Fixed thread destruction in thread sample


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3229 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-08-01 07:26:36 +00:00
Vadim Zeitlin
71cbe687e3 compile warning fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3228 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-31 21:56:42 +00:00
Robert Roebling
2899e22327 Compile fixes for wxTreeCtrl (we don't speak about
linking or - dear - even running)
  distrib updates




git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3227 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-31 17:24:28 +00:00
Vadim Zeitlin
fbdc71e0a7 added a blurb about wxBe
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3226 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-31 13:58:34 +00:00
Guilhem Lavaux
9592b68708 Converted some SetBlocking to SetNonBlocking
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3225 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-31 13:33:01 +00:00
Julian Smart
97979ddfbe Added news and coding standards HTML files to CVS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3224 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-31 09:20:44 +00:00
Robin Dunn
8bf5d46efb wxPython 2.1b1:
Added the missing wxWindow.GetUpdateRegion() method.

	Made a new change in SWIG (update your patches everybody) that
	provides a fix for global shadow objects that get an exception in
	their __del__ when their extension module has already been deleted.
	It was only a 1 line change in .../SWIG/Modules/pycpp.cxx at about
	line 496 if you want to do it by hand.

	It is now possible to run through MainLoop more than once in any one
	process.  The cleanup that used to happen as MainLoop completed (and
	prevented it from running again) has been delayed until the wxc module
	is being unloaded by Python.

	wxWindow.PopupMenu() now takes a wxPoint instead of  x,y.  Added
	wxWindow.PopupMenuXY to be consistent with some other methods.

	Added wxGrid.SetEditInPlace and wxGrid.GetEditInPlace.

	You can now provide your own app.MainLoop method.  See
	wxPython/demo/demoMainLoop.py for an example and some explaination.

	Got the in-place-edit for the wxTreeCtrl fixed and added some demo
	code to show how to use it.

	Put the wxIcon constructor back in for GTK as it now has one that
	matches MSW's.

	Added wxGrid.GetCells

	Added wxSystemSettings static methods as functions with names like
	wxSystemSettings_GetSystemColour.

	Removed wxPyMenu since using menu callbacks have been depreciated in
	wxWindows.  Use wxMenu and events instead.

	Added alternate wxBitmap constructor (for MSW only) as
	      wxBitmapFromData(data, type, width, height, depth = 1)

	Added a helper function named wxPyTypeCast that can convert shadow
	objects of one type into shadow objects of another type.  (Like doing
	a down-cast.)  See the implementation in wx.py for some docs.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3223 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-31 07:56:15 +00:00
Robin Dunn
f91cd38969 some dist helpers for wxPython
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3222 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-31 07:21:04 +00:00
David Webster
2179d57968 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3221 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-31 03:35:35 +00:00
Vadim Zeitlin
9dfbf520eb wxMSW::wxTreeCtrl has multiple selection too (somewhat documented)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3220 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-30 22:45:55 +00:00
David Webster
717b9bf234 OS/2 updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3219 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-30 21:47:13 +00:00
David Webster
b7a34956cb OS/2 linkage specification on METHODDEF macro
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3218 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-30 21:46:24 +00:00
Vadim Zeitlin
604e7194e1 no more assert failure in GetSelection() if there is no selection
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3217 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-30 18:32:17 +00:00
Vadim Zeitlin
3646fd68cb link fix for no sockets compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3216 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-30 18:03:23 +00:00
Guilhem Lavaux
39b91ecabe Renamed GSocket_SetBlocking to GSocket_SetNonBlocking and *Fallback to *Callback
Added GSocket_SetTimeout
Added timeout support in wxSocket (as it was in previous releases)
Updated documentation


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3215 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-30 17:54:18 +00:00
Vadim Zeitlin
aa994705c7 a small fix to wxWindow::Centre
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3214 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-30 17:31:31 +00:00
Vadim Zeitlin
154c4aa113 explicit compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3213 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-30 17:02:44 +00:00
Robert Roebling
7ff14117cb Some more doc beauty,
Typo in wxDataStream,


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3212 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-30 13:16:45 +00:00
Robert Roebling
b453e1b24b Doc corrections,
made wxHTML a chapter
  GUI thread work


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3211 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-30 12:02:28 +00:00
Robin Dunn
dfa13ec8d7 wxPython documentation updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3210 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-30 04:31:52 +00:00
Robin Dunn
19e0e04b93 fixed compiler error
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3209 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-30 04:28:24 +00:00
Michael Bedward
978db70ee3 Fixed m_majorDim bug a bit more (was still getting divide by zero error)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3208 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-30 04:20:07 +00:00
Michael Bedward
4a041f2f92 Added KeyRelease case to switch in wxTranslateKeyEvent so that wxApp::CheckForKeyUp will work
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3207 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-30 04:01:08 +00:00
Michael Bedward
e2e04ea4a7 Added wxApp::CheckForKeyUp MB
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3206 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-30 03:55:59 +00:00
Michael Bedward
3d9431bf7e Added wxApp::CheckForKeyUp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3205 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-30 03:50:03 +00:00
Vadim Zeitlin
d5dbeb3140 #warning is a compilation error, not warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3204 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-29 23:38:06 +00:00
Robert Roebling
f56b833007 Testing vaious makefile/configure schemes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3203 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-29 22:18:41 +00:00
Robert Roebling
8a4df1595b Now its possible to run wxHTML without wxSockets
if wxUSE_FS_ZIP = 1, wxUSE_HTML = 1
  Fixed typo in filelist
  Compile fix for spinbutton,


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3202 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-29 19:52:37 +00:00
Guilhem Lavaux
7e1e096097 Typos.
Changed the timeout of wxSocketBase from 3600s to 600s
Added #include <stdio.h> in htmltag.cpp


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3201 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-29 17:23:28 +00:00
Guilhem Lavaux
552e8bf87f Added #include <stddef.h> as it is needed by ANSI.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3200 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-29 17:15:50 +00:00
Karsten Ballüder
7742efff20 fix for HP-UX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3199 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-29 16:12:23 +00:00
Karsten Ballüder
0bcddc59c8 fixed busy cursor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3198 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-29 13:47:18 +00:00
Robert Roebling
9b61f868b5 Compile fixes and typos corrected.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3197 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-29 13:43:08 +00:00
Robert Roebling
631fd4122a Makefile changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3196 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-29 12:51:29 +00:00
Karsten Ballüder
bbdb0e1313 ProgressDialog was *comletely* broken!
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3195 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-29 12:51:12 +00:00
Karsten Ballüder
45ccdd76c3 Fixed missing header.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3194 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-29 12:21:50 +00:00
Ove Kaaven
04392d70b9 By assigning wxEmptyString instead of NULL to m_commandString,
I hope to reduce the number of crash-on-startup events


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3193 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-29 10:16:49 +00:00
Robin Dunn
f79c001d5d Put strmbfrd.tex back into classes.tex since it was finally checked in.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3192 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-29 06:41:52 +00:00
David Webster
65ccd2b826 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3191 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-29 05:27:19 +00:00
David Webster
0e320a79f1 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3190 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-29 05:11:30 +00:00
David Webster
c2ff79b17b *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3189 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-29 04:56:34 +00:00
Robert Roebling
a1925afc90 I had to remove (Robin's) makefile creation clause
from the makefiles, because these deleted my
    makefiles
  Small fixes for templates




git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3188 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-29 01:21:05 +00:00
Vadim Zeitlin
452fd09f36 m_clientData conflict fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3187 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-28 22:53:33 +00:00
Vadim Zeitlin
b1519886c3 SetIcon added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3186 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-28 22:38:39 +00:00
Vadim Zeitlin
52326d0eac compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3185 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-28 22:28:44 +00:00
Vadim Zeitlin
9830033051 string and m_majorDim == 0 bugs fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3184 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-28 22:27:44 +00:00
Robert Roebling
a3015c547a Added tmake template for simple wxGTK makefile
Updated filelist.t for wxGTK
  Compile fixes for MingGW32


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3183 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-28 22:18:58 +00:00
Robin Dunn
0c551f1c23 Changes necessary to make In Place Edit work and look a lot nicer for
MSW and GTK, and hopefully make it easy to make the same tweaks for
other ports.  There are still some very minor anomalies (changing
colors of the grid doesn't change the IPE control, etc.) but it is
definitely useable now.

The IPE control now gets the fore/background color of the cell.

Changed how the current cell highlight is drawn so mulitple clicks in
a single cell don't leave the highlight in an inconsistent state for
GTK.

Changed a dangerous static variable to a member variable.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3182 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-28 21:59:08 +00:00
Vadim Zeitlin
0655ad290a 1. wxSpinButton fixed: it now sends EVT_SPIN_UP/DOWN messages (and unnecessary
old code which didn't send them anyhow removed). It also allows to veto the
   changes, but this feature is not portable and as such is not documented.
2. wxBitmapBuuton doesn't lose its bitmap any more
3. wxImage::ConvertToBitmap() doesn't crash if image is !Ok() but just
   returns wxNullBitmap.
4. wxProgressDialog looks much nicer under Windows and its estimated/elapsed/
   remaining time fields actually show some non random numbers now
5. MDI client window doesn't flicker because wxMDIParentFrame doesn't position
   it at (0, 0) first before moving it to correct location
6. other minor fixes...


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3181 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-28 21:01:04 +00:00
Guilhem Lavaux
f61815af20 Added wxInternetFilesystemModule to fs_inet.cpp
Fixed PROXY support in wxURL, wxHTTP. You can set the environement variable
HTTP_PROXY now.
Fixed parsing of content type in wxHtmlFilter
Added commments to gsocket.c
wxURL parses the URL only once now.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3180 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-28 17:29:59 +00:00
Guilhem Lavaux
3de08727ca Added another missing file (wxBufferedStreams doc)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3179 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-28 17:16:59 +00:00
Ove Kaaven
e5b767fff6 Hm... /P1024 instead of /P512 ...? (At least that makes it work for me)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3178 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-28 12:11:58 +00:00
Robin Dunn
3660fc40ad Fixed some stupid TEX errors...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3177 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-28 05:52:04 +00:00
Robin Dunn
a123dde717 If somebody ever decides to actually check in fsfile.tex and
strmbfrd.tex then they an uncomment them back in.  I'm tired of the
errors...


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3176 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-28 05:49:51 +00:00
David Webster
bac507e062 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3175 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-28 04:16:50 +00:00
David Webster
e2c87f4cc4 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3174 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-28 04:02:37 +00:00
David Webster
1777b9bbf4 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3173 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-28 03:38:12 +00:00
Robert Roebling
2259e00789 Corrected some more docs,
Corrected size of spinbutton
  wxWindow::PopUp() now doesn't return control
    to the program until the menu disappears as
    it is documented and done by wxMSW


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3172 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-27 21:46:34 +00:00
Robert Roebling
4dcaf11a7b Small distrib updates,
tried to find a bug in html which was somewhere else,
  added wxYield() call to wxBeginBusyCursor() which
    should make the cursor appear immediately,
  corrected wxMiniFrame so that clicking on the titlebar
    makes it come to the front
  Used CreateBase() in all controls


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3171 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-27 20:23:13 +00:00
Vadim Zeitlin
813c20a67e wxMotif fixes and common fixes for socket compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3170 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-27 20:12:16 +00:00
Vadim Zeitlin
2d61b48d14 missing wxMSW files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3169 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-27 20:09:15 +00:00
Guilhem Lavaux
31989b0b8f Changed void GSocket_Init() to bool GSocket_Init()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3168 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-27 17:22:30 +00:00
J. Russell Smyth
b116ab033e Added Makefile for gcc-win
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3167 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-27 17:05:05 +00:00
J. Russell Smyth
43871a5df9 Modified dialog size under MSW to look better ( button was cut off)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3166 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-27 17:03:21 +00:00
Guilhem Lavaux
a3c1786def Added the forgotten file txtstrm.tex
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3165 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-27 17:02:58 +00:00
Vadim Zeitlin
193fe98904 wxNO_FULL_REPAINT_ON_RESIZE logic for wxMSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3164 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-27 15:15:36 +00:00
Vadim Zeitlin
106e25cccf wxMSW modules now has png and zlib
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3163 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-27 14:38:30 +00:00
Harco de Hilster
58a855e062 minor fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3162 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-27 14:14:27 +00:00
Vadim Zeitlin
d9ea011f4d wxGTK compilation fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3161 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-27 14:09:25 +00:00
Robert Roebling
ca17eff36b wxSocket compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3160 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-27 13:25:16 +00:00
Ove Kaaven
b2158ed0da char -> wxChar
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3159 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-27 06:52:32 +00:00
Robin Dunn
2ac1b69a00 Added another button to show wxBitmapButton problem
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3158 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-27 04:51:03 +00:00
Vadim Zeitlin
8d99be5f53 1. wxChoice and wxComboBox support client data under MSW
2. control creation streamlined under MSW


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3157 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 23:02:32 +00:00
Unknown (AN)
bae41ce192 use of div_t.quot and div_t.rem were changed to / and %
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3156 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 19:22:21 +00:00
Robert Roebling
e9158f7d8b Next take at radioboxes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3155 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 19:03:53 +00:00
Robert Roebling
a62867a56e TreeCtrl:
Size calculation for bold items
    Reduced height per item by 2 pixels


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3154 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 18:32:59 +00:00
Robert Roebling
7f7d950530 Added test for wxRA_SPECIFY_COLS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3153 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 17:16:08 +00:00
Robert Roebling
5f1ea0eeda Typos in documentation
list and tree ctrl now actually set the text themselves
    and no longer crash
  various compile fixes


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3152 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 16:06:20 +00:00
Karsten Ballüder
15a2076a46 destructor for wxMenu deletes menu now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3151 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 15:49:28 +00:00
Robert Roebling
fd128b0c3a Added more docs for the new events, derived from wxNotifyEvents.
Added docs for wxScrollWinEvent and corrected docs referring
    to wxScrollEvent etc.
  wxTreeCtrl's and wxListCtrl's ::EditLabel() returns void.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3150 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 14:28:25 +00:00
Vadim Zeitlin
6e29a95a9a more fixes for Borland and OLE files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3149 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 13:27:31 +00:00
Ove Kaaven
b56baa2d03 More _T()... trying to get to that clipboard sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3148 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 11:37:53 +00:00
Vadim Zeitlin
d9d61c23a8 automtn.cpp removed for Borland compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3147 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 11:28:18 +00:00
Ove Kaaven
dae3fbd88e Just a _T()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3146 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 11:19:46 +00:00
Vadim Zeitlin
2633389890 no more \& in radio buttons labels
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3145 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 11:01:58 +00:00
Karsten Ballüder
db8db70a19 Documented help API extension and fixed gsocket compilation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3144 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 10:49:50 +00:00
Vadim Zeitlin
0252777919 compile fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3143 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 10:48:56 +00:00
Vadim Zeitlin
86f975a858 EditLabel fixes (wxMSW/wxGTK synchronised, docs updated)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3142 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 10:46:55 +00:00
Ove Kaaven
23aa4f09d2 More asserts and stuff
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3141 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 10:41:38 +00:00
Ove Kaaven
b6caf397b3 Make this compile in Unicode mode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3140 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 10:32:42 +00:00
Ove Kaaven
24bd64eec1 More asserts (well, checks) without _T()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3139 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 10:06:23 +00:00
Vadim Zeitlin
c39eda949d Centre() supports wxCENTER_FRAME flag now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3138 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 09:46:53 +00:00
Karsten Ballüder
fa834f81d7 The modules file containing the definition of the CVS modules.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3137 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-26 09:38:53 +00:00
Vadim Zeitlin
8ed889787f fixes for PS and OLE files for Borland makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3136 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-25 21:29:59 +00:00
Robert Roebling
0544bc0aab Distrib things
Corrected wxPrivateDataObject a little
  Corrected wxRadioButton
  Corrected wrong defines of wxRadioBox styles


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3135 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-25 17:11:17 +00:00
Robert Roebling
41bf0eb335 Added wxStaticBitmap::SetIcon()
wxDC now inits with a WHITE_BRUSH as wxMSW seems to
   do the same
  small doc updates


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3134 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-25 14:38:28 +00:00
Guilhem Lavaux
a58d5df4ef Added GSocket_Init and GSocket_Cleanup
Added wxSocketModule to socket.cpp to call GSocket_Init and GSocket_Cleanup


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3133 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-25 14:26:15 +00:00
Robert Roebling
e179bd6537 Re-Added wxStream::StreamSize()
Added in-place editting to wxTreeCtrl,
    modified wxListCtrl in-place editting
  Corrected behaviour of wxToolBar::Toggle() to not
    send messages and to report the correct state
  Removed many #include "wx/wx.h" to speed up
   compilation
 Some more compile fixes and tests.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3132 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-25 12:59:58 +00:00
Václav Slavík
a76015e6eb fixed static members
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3131 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-25 12:21:23 +00:00
Václav Slavík
420ec58abb html filters has const methods now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3130 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-25 12:20:58 +00:00
Ove Kaaven
3001340cf4 Unicode compilation fix, just for kicks (was bored after missing some
libraries needed to compile current cvs of abiword)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3129 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-25 11:44:08 +00:00
Ove Kaaven
befa6d980e One sample a day keeps stagnation away
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3128 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-25 06:04:20 +00:00
Ove Kaaven
3a5815b583 Unicode compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3127 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-25 05:41:29 +00:00
Vadim Zeitlin
a35faffd59 oops... compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3126 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-24 23:19:03 +00:00
Vadim Zeitlin
22cf5fec15 wxDialog::IsModal() works
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3125 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-24 23:16:35 +00:00
Vadim Zeitlin
e8b591249e help classes compilation fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3124 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-24 23:12:39 +00:00
Vadim Zeitlin
259d1674f2 wxHTML compilation fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3123 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-24 22:44:22 +00:00
Karsten Ballüder
3bcf00abd7 minor fix to find contents file alright
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3122 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-24 22:38:00 +00:00
Vadim Zeitlin
9f3553c83e fix for C files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3121 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-24 22:17:19 +00:00
Vadim Zeitlin
53f69f7a04 compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3120 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-24 22:05:21 +00:00
Karsten Ballüder
4ba80ec7ff compilation fixes and minor improvements
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3119 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-24 20:28:36 +00:00
Ove Kaaven
9260761613 Needed some variation; got bored of seeing the compilation errors for this
sample in Unicode mode, so now I can see the errors for the next instead


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3118 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-24 12:39:40 +00:00
Robert Roebling
cd25b18c8e Renamed wxStream::StreamSize() to wxStream::GetSize()
Add wxStream bool operator !().
  Made wxTextStream safe for conversion from/to Mac/DOS/Unix
  Added wxFrame::Iconize()
  Applied patch for stippled brushes.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3117 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-24 10:50:13 +00:00
Guilhem Lavaux
5a96d2f45f Updated wxDataStream (added ByteOrder)
Removed sckint.cpp from Makefile.am and filelist.txt (Could someone rebuild Makefile for MSW)
Some update to the documentation. I'm documenting GSocket.
Added gsockno.c in stubs


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3116 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-24 09:05:25 +00:00
Ove Kaaven
7e256c24fb Unicode fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3115 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-24 06:50:40 +00:00
Ove Kaaven
11aab0d000 wxString(file.fn_str()) doesn't make sense. If just file.fn_str() gives
problems, better to use (FNSTRINGCAST file.fn_str())


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3114 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-24 06:20:37 +00:00
Ove Kaaven
24463897d5 Blargh, every time someone adds an assert or fail thing, I have to add _T()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3113 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-24 06:10:59 +00:00
Vadim Zeitlin
f98e25588d compilation fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3112 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-24 00:26:01 +00:00
Vadim Zeitlin
c193b707eb wxTreeEvent is declared in one header, not 3 of them
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3111 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-24 00:14:54 +00:00
Vadim Zeitlin
5ea4780630 1. changed spelling error in wxTR_HAS_VARIABLE_HEIGHT (missing 'E')
2. compile fix for dcscreen.cpp
3. editing labels in place works in the tree ctrl and shown in the sample
4. sped up items deletion in the listview


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3110 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 23:41:45 +00:00
Robin Dunn
9be9b97445 Added a rule to the tmake templates so the makefiles know how to
rebuild themselves (if you have tmake).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3109 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 21:26:57 +00:00
Vadim Zeitlin
5bb05bc139 disabled accelerators in wxMotif - they don't work anyhow, but break
everything


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3108 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 21:08:22 +00:00
Vadim Zeitlin
31528cd3ca 1. more wxMotif fixes
2. wxGetNumberFromUser added
3. more compilation fixes when compiling without sockets


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3107 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 21:03:02 +00:00
Robert Roebling
c45a644eda Finished MingW32 makefiles
More drawing tests and corrections
  Distrib things


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3106 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 18:50:12 +00:00
Guilhem Lavaux
dbd300df5c Added GSocket motif (it compiles but I didn't tested it)
Changed wxSockFlags type (switched to int)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3105 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 17:24:25 +00:00
Ove Kaaven
54c13c66d2 Couple more Unicode fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3104 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 09:53:22 +00:00
Ove Kaaven
48a84964c6 Unicode fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3103 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 09:52:33 +00:00
Ove Kaaven
5701b057fb More _T() in asserts...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3102 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 09:51:31 +00:00
Ove Kaaven
ee6db21e41 Add more _T() in asserts...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3101 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 09:49:06 +00:00
Ove Kaaven
59bc036c03 Use memcmp instead of that wxString hack
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3100 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 09:48:39 +00:00
Karsten Ballüder
efee48a0f6 Fixed stupid new bugs :-(
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3099 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 09:48:31 +00:00
Ove Kaaven
6de9282600 Convert argv[] to Unicode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3098 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 09:48:04 +00:00
Ove Kaaven
b91b22004d Someone need to make the clientdata be void* instead of this char*
mess


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3097 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 09:43:48 +00:00
Ove Kaaven
aece0491ee Unicode fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3096 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 09:42:31 +00:00
Ove Kaaven
e7fc59f4a1 Couple of unicode fixes (the #if should be wxUSE_UNICODE, not wxUNICODE,
and there's no sense in allocating a wxWX2MBbuf of len 200 then assigning
a different buffer to it either)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3095 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 09:41:17 +00:00
Ove Kaaven
fc8525d7b0 Convert filenames unicode->ascii
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3094 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 09:38:52 +00:00
Ove Kaaven
e7b3d6babb Implementation of wxFopen, wxFreopen, wxStrftime
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3093 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 09:38:03 +00:00
Ove Kaaven
e385b3ff37 Add wxFopen, wxFreopen, wxStrftime
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3092 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 09:36:38 +00:00
Ove Kaaven
c1b03ce802 Let argv[] be wxChar**
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3091 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 09:36:03 +00:00
Vadim Zeitlin
45e41c05e4 1. corrected "notebook selection handling" event handler to work
2. added a page for bitmapped controls tests


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3090 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 00:56:51 +00:00
Vadim Zeitlin
5d1d2d465d 1. frames respect update region (Tom Surace patch)
2. bitmap buttons don't lose bitmaps
3. attempt to reduce number of simultaneously default buttons in a panel


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3089 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-23 00:53:45 +00:00
Vadim Zeitlin
c49245f8ba 1. added wxGetNumberFromUser (to textdlgg.cpp and dialogs sample)
2. wxTE_RICH style added to wxMSW, the text controls don't use RICHEDIT
   class by default any more
3. wxRadioBox doesn't generate button events any more (grrr...)
4. commented out code in log.cpp restored and a bug corrected


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3088 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-22 23:39:47 +00:00
Robert Roebling
953704c1c7 Corrected wxlistBox, wxRadioBox, wxComboBox and
wxChoice in that they do no longer send events
    after programmatic calls
  Corrected wxStaticBitmap
  Reimplemented wxRadioButton as per wxMSW
  Updated docs for the above
  Update testconf for socket changes
  Other minor fixes


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3087 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-22 23:28:55 +00:00
Robert Roebling
1e7fd31108 New drawing test code.
Added distrib file for wxMSW.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3086 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-22 20:20:42 +00:00
Guilhem Lavaux
a324a7bccf Added GSocket for Unix (only GTK for the moment)
Updated wxSocket to use GSocket API
Added a progress bar to client.cpp
Added CopyTo to wxMemoryOutputStream to copy the internal buffer to a specified buffer.
Various changes/fixes to the high-level protocols FTP/HTTP
Various Unicode fixes
Removed sckint.*


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3085 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-22 17:51:54 +00:00
Robert Roebling
e4d18e7f60 Compile fix for *newest* mingw32
Switched default options for mingw32


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3084 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-22 15:10:43 +00:00
Robert Roebling
b62c3631c9 wxMenu compile fix
new drawing tests
  tree ctrl GCC compile fix (I hope)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3083 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-22 15:05:52 +00:00
Robin Dunn
619d05280a fixed font-matching bug in wxFontList::FindOrCreateFont for wxGTK when
font family is wxDEFAULT.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3082 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-22 07:34:57 +00:00
Harco de Hilster
5d55595cb6 Minor and silly fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3081 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-21 21:21:01 +00:00
Vadim Zeitlin
1fad4c3eb2 added demonstration of wxGTK wxStaticBitmap::SetBitmap() bug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3080 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-21 18:49:00 +00:00
Harco de Hilster
214960fb6d Made cross compiling easier;
run configure --host=i586-mingw32 --build=i586-linux
, for example, to cross compile from linux to windows using
i586-mingw32-xxx binaries.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3079 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-21 18:45:25 +00:00
Karsten Ballüder
e41bbc80bc bug fix for m_parent == NULL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3078 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-21 18:13:27 +00:00
Robert Roebling
f92722960b Mini-fix for wxStaticBitmap
switched on reports after changing text ctrl be hand again


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3077 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-21 16:35:18 +00:00
Robert Roebling
6a570331df MingW32 compilation works now.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3076 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-21 16:19:59 +00:00
Karsten Ballüder
63b522d64b more type-safety
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3075 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-21 16:13:27 +00:00
Vadim Zeitlin
ee31c392ac 1. Assorted Motif fixes
a) tear off menus
 b) native dialogs
 c) crash in ~wxWindow fixed
 d) compilation and linking fixes
2. test code removed from minimal sample, text one compiles without clipboard
3. wxAppBase/wxApp small fixes


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3074 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-21 16:10:18 +00:00
Karsten Ballüder
20a8b34e2c remove duplicate deletion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3073 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-21 15:39:39 +00:00
Karsten Ballüder
d85eb7fcf8 added helpwxht.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3072 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-21 15:01:56 +00:00
Karsten Ballüder
8d18450524 Suppressed a spurious error message, now contents are looked for in entry
with help-id 0 and if not found a homemade list of contents is presented. :-)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3071 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-21 13:50:47 +00:00
Karsten Ballüder
c769f24816 fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3070 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-21 13:37:18 +00:00
Karsten Ballüder
8dd71e2b51 Much improved wxHelpControllerHtml, works under Solaris, too now.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3069 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-21 13:32:08 +00:00
Václav Slavík
2508212677 imagemap support (html)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3068 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-21 11:06:27 +00:00
Václav Slavík
483ff5a5af fixed refresh bug in wxHtmlWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3067 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-21 09:59:47 +00:00
Vadim Zeitlin
a1665b22b0 1. panels pass focus to the next item in parent panel
2. warnings removed from iniconf.cpp and it's removed for Win32 compilation
3. wxWindow::PopupMenu(wxPoint) added, documented
4. Docs for wxTextCtrl explicitly mention that EVT_TEXT is triggered by
   programmatic updates too


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3066 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-20 23:22:30 +00:00
Harco de Hilster
22baaed33e some updates...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3065 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-20 22:38:12 +00:00
Harco de Hilster
934e1edaf4 little wxMenu ctor fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3064 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-20 20:35:30 +00:00
Harco de Hilster
ba7f542f6a Added lots of files. Enough now so that all wxHTML samples link.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3063 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-20 20:34:31 +00:00
Harco de Hilster
c637d46187 When building for/on a non-Unix platform, the --enable-dynlib check will only
issue a warning, not disable dynlib and odbc, since configure can't figure
it out anyway.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3062 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-20 20:33:42 +00:00
Robert Roebling
63aea43ffd Trying to compile samples
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3061 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-20 14:48:03 +00:00
Robert Roebling
2662e49e09 MingW32 compilation fixes all over
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3060 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-20 14:14:46 +00:00
Vadim Zeitlin
1ecffbff71 compilation fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3059 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 22:54:55 +00:00
Vadim Zeitlin
b908d2244a wxMenu ctor made compatible again
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3058 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 22:17:40 +00:00
Robin Dunn
910484a67d Fixed wxListCtrl::SetTextColour to set the RGB value instead of the
RBG value!  (Green and Blue were swapped...  I suppose if you are
colour blind it wouldn't matter much.)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3057 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 20:54:43 +00:00
Harco de Hilster
c7a800eadb forgot .bmp's
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3056 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 18:29:35 +00:00
Guilhem Lavaux
0d63177885 Added StreamSize() to wxMemoryOutputStream.
Added InputStreamBuffer() and OutputStreamBuffer() to have access to
internal buffers.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3055 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 17:34:59 +00:00
Harco de Hilster
089989960f added extra #if case at the end for building using gnuwin and configure
(assuming that you're using a gnu flex prog)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3054 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 17:17:59 +00:00
Sylvain Bougnoux
8506d95db4 cosmetic, added some comment
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3053 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 17:10:29 +00:00
Sylvain Bougnoux
0ae7f2a2e2 item with no image no longer crash when hit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3052 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 17:05:47 +00:00
Harco de Hilster
bcbc841d41 forgot wx.rc
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3051 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 16:33:27 +00:00
Harco de Hilster
b09a4bb984 added .cur and .ico files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3050 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 16:32:11 +00:00
Harco de Hilster
ab5a0b5d33 added dcpsg.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3049 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 16:23:38 +00:00
Harco de Hilster
e6f1ad222c Moved bunch of #defines (LOG2DEV etc) from msw/dc.cpp to msw/dc.h
Small changes to dcpsg.cpp to make it compile for wxMSW


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3048 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 16:23:12 +00:00
Robert Roebling
112c5086e8 Updated testconf
Added dashed pens etc.
  Made tree ctrl sample crash..


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3047 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 14:41:30 +00:00
Harco de Hilster
510649e4d5 small fix for mingw32 compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3046 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 14:36:34 +00:00
Vadim Zeitlin
8b9c0e20ba typo corrected
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3045 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 14:06:13 +00:00
Vadim Zeitlin
cc9efb9be7 even more fixes for nmake compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3044 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 13:17:13 +00:00
Karsten Ballüder
4d223b6704 Added test for vsscanf. GUESSING IS EVIL! Cannot test, my autoconf is too old.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3043 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 13:03:17 +00:00
Vadim Zeitlin
530e7fa307 regenaretd makefile from the latest template
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3042 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 12:55:02 +00:00
Vadim Zeitlin
4f84c635dc 1. compilation fix for wxHelpHtmlController (which shouldn't be compiled #if
!wxUSE_HTML)
2. some fixes to wxGrid


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3041 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 12:33:25 +00:00
Vadim Zeitlin
01bc089cd2 ifdef HAVE_VFORK => if HAVE_VFORK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3040 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 12:17:10 +00:00
Karsten Ballüder
b761fe4cfa typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3039 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 09:22:50 +00:00
Karsten Ballüder
baa9caff7e compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3038 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-19 09:22:37 +00:00
Vadim Zeitlin
73927f8bac Enter won't close dialog if [Ok] button is disabled
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3037 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-18 21:48:31 +00:00
Karsten Ballüder
1d37e64400 more reasonable default size
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3036 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-18 18:12:11 +00:00
Karsten Ballüder
29ea4a2908 Added wxHelpControllerHtml, derived from wxHtmlHelpControllerBase. API like
wxExtHelpController and fully backwards compatible with the "old" help
controller. Docs follow tomorrow. Modified sample to use it if wxHTML is
compiled in.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3035 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-18 18:09:46 +00:00
Harco de Hilster
bfcc7d7fd0 Now uses #define __WX_SETUP_H__ to signify that we're using configure
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3034 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-18 00:07:32 +00:00
Harco de Hilster
0c07f09eab Added statline to Makefile.am
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3033 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-17 22:41:40 +00:00
Harco de Hilster
25a2a4b05e added TODO list for cross compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3032 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-17 22:19:29 +00:00
Harco de Hilster
9e855852c1 Temp. fix for ..\..\zlib problem.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3031 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-17 22:08:14 +00:00
Harco de Hilster
678d9f2a42 Removed USING_CONFIGURE define. As VZ pointed out, checking HAVE_CONFIG_H
is enough to find out wether we're building with configure.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3030 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-17 21:53:06 +00:00
Harco de Hilster
0a2fe387aa Added notes on cross compiling Unix->Windows.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3029 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-17 19:05:34 +00:00
Harco de Hilster
bcb5057e60 ignore...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3028 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-17 18:22:17 +00:00
Harco de Hilster
b2cad68016 ignore these
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3027 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-17 18:21:41 +00:00
Harco de Hilster
bf86bd78cc mingw32/cygwin32 builds now automatically link against the most common win32 libraries.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3026 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-17 18:12:50 +00:00
Harco de Hilster
803a65290b Building wxMSW with configure now also properly installs the msw headers.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3025 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-17 17:33:16 +00:00
Harco de Hilster
77b497a04a minor fixes for mingw32 compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3024 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-17 16:30:03 +00:00
Harco de Hilster
3bb0b01c29 Minor fixes mainly to get stuff compiled using the mingw32 (cross) compiler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3023 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-17 16:27:26 +00:00
Harco de Hilster
4d19d97916 added mingw32 host platform to configure.in, added WINVER define for windows
builds, added USING_CONFIGURE define in acconfig.h and set wxUSE_UNIX default
to 0 (needed for cross-compiling and building on non-Unix-ported bash shells)
configure will of course set wxUSE_UNIX back to 1 by default.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3022 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-17 16:23:35 +00:00
Vadim Zeitlin
9b73db3c34 1. fixed Maximise() mismatch between wxFrame and wxMDIFrame
2. tried (unsuccessfully) to fix the warning in pnghand.cpp
3. fixes for VC and BCC makefiles generation with tmake (still untested)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3021 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-16 23:06:35 +00:00
Karsten Ballüder
de844935b6 removed obsolete flag
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3020 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-16 10:27:53 +00:00
Sylvain Bougnoux
87c13572ad check wxUSE_LIBJPEG
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3019 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-16 08:25:31 +00:00
Sylvain Bougnoux
622d090e8a flag use of multiple selection for MSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3018 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-16 08:19:02 +00:00
Robin Dunn
5d9c28189e Preserve -1 for dilog unit conversions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3017 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-15 23:42:21 +00:00
Vadim Zeitlin
5e3dad49b0 made the sample work under wxMSW too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3016 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-15 23:38:57 +00:00
Vadim Zeitlin
b21624e7e0 some warnings suppressed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3015 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-15 23:34:18 +00:00
Vadim Zeitlin
b6a0d8a25b renamed controls.* to text.*
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3014 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-15 23:33:32 +00:00
Vadim Zeitlin
b07b29d788 the missing file for tmake (sorry)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3013 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-15 22:46:31 +00:00
Robert Roebling
d30e0edda8 Compile fixes,
corrected cursors (it isn't as simple as you think)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3012 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-15 19:26:04 +00:00
Robert Roebling
3b245d601a wxWindowDC now uses its window's font
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3011 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-15 18:13:21 +00:00
Guilhem Lavaux
c980c99263 * wxMemoryStreams updates
* Various fixes about wxGTK and Unicode
* Various fixes in wxStreams


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3010 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-15 18:08:57 +00:00
Robert Roebling
324dbfec39 Compile fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3009 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-15 17:30:33 +00:00
Vadim Zeitlin
d2e1ef1928 1. wxFFile::Close() buglet fixed
2. wxLogTextCtrl doesn't use streams any more


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3008 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-15 15:45:50 +00:00
Vadim Zeitlin
6a008b33c4 1. fixed makefile.vc for OLE files
2. fixed asserts in wxGTK::wxWindow::DoGetClientSize()


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3007 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-15 14:08:30 +00:00
Vadim Zeitlin
0efe5ba76e 1. wxTextCtrl compilation fixes for wxGTK and more ugfixes (untested yet)
for wxMSW. Small doc update, too.
2. wxFFile compilation fixes for wxGTK
3. new files added to gtk/Makefile.am


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3006 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-15 13:42:27 +00:00
Sylvain Bougnoux
8b04a037d0 fixed SelectItem call with an invalid item
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3005 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-15 10:04:09 +00:00
Vadim Zeitlin
a1b82138ef 1. new wxFFile class - as wxFile but uses fopen/fread/fseek... instead of
open/read/seek...
2. wxTextCtrlBase appears, several bug fixes in MSW wxTextCtrl and made
   LoadFile() behave in the same way under GTK and MSW (fixed it for MSW
   too)
3. Corrected the sash position calculation in sashwin.cpp - seems to work
   now but I wonder how it could ever work before?
4. new, tmake generated, MSW makefiles. They probably don't work - will fix
   them as soon as people start complaining.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-14 22:55:57 +00:00
Vadim Zeitlin
f2071dda0b the template files for generating all MSW makefiles with tmake and the
(one and only one) file containing the list of all wxWindows sources.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3003 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-14 22:46:12 +00:00
J. Russell Smyth
52d802ebb8 Changed to use new wxWindow->Reparent call to allow build with current cvs
Added several small fixes from Scott Pleiter


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3002 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-14 17:31:42 +00:00
J. Russell Smyth
0e1ead0ef2 restoring makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3001 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-14 17:24:41 +00:00
J. Russell Smyth
63e3daf4c7 restoring makefile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3000 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-14 17:19:59 +00:00
Robert Roebling
98d3fdbedd Removed bug that made wxWindow call OnPaint
twice and return wrog values for GetClientSize()


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2999 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-14 15:36:37 +00:00
J. Russell Smyth
4705ee2dde Added wxHTML build to Makefile for VisualC++
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2997 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-13 21:59:59 +00:00
J. Russell Smyth
ddbde726d7 Added makefiles for VC++ for wxHTML samples
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2996 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-13 21:58:34 +00:00
J. Russell Smyth
ec4f5ef53d added precomp header stuf
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2995 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-13 20:22:12 +00:00
J. Russell Smyth
3364ab799a Added precompiled header support to allow building with VC++
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2994 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-13 18:24:29 +00:00
J. Russell Smyth
602e68af58 Removed default parameter setting for wxHtmlHelpControler::AddBook causing
VC++ to bomb compile


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-13 17:56:35 +00:00
Robert Roebling
7d6d2cd462 New attempt at getting constraints work
Removed horiz scrollbars from text ctrl
  Corrected client data deletion in combobox


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2992 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-13 13:46:31 +00:00
Guilhem Lavaux
940ddb190c * Changed char to wxChar in operators.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2991 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-13 06:27:42 +00:00
Guilhem Lavaux
b1830dfaba * Changed behaviour of wxTextStreams::operator(wxUint8/wxInt8). Now it writes
characters instead of numbers.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2990 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-12 17:17:43 +00:00
Vadim Zeitlin
bb69661b05 1. wxTextControl::SetFont() does something (good or bad - for you to judge)
2. tip dialog modified slightly to look a bit prettier under GTK
3. notebook test demonstrates the wxGTK radiobox-in-notebook-pages-constraints
bug


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2989 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-12 14:02:01 +00:00
Václav Slavík
a8b96c3dd8 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2988 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-12 13:24:59 +00:00
Václav Slavík
4e938f5b0b *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2987 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-12 13:17:41 +00:00
Vadim Zeitlin
f74ececa19 even more about setup0.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2986 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-12 07:59:18 +00:00
Vadim Zeitlin
c219cecc12 1. wxFrame doesn't show incorrect hints in the status bar for popup items
2. radio box handles wxSIZE_AUTO_WIDTH/HEIGHT correctly (finally!)
3. attempts to fix broken sash


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2985 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-11 22:08:17 +00:00
Robert Roebling
9146082cdf New global cursor behaviour.
Test for tear-off menus in controls sample.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2984 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-11 20:49:54 +00:00
Robert Roebling
56d7679d3e DocView and wxStream things
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2983 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-11 19:29:59 +00:00
Robert Roebling
d4c241b9e6 Updated testconf, fixed mistake in install.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2982 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-11 16:24:31 +00:00
Robert Roebling
d1af991f49 A few compile things.
Changed resizing of multi-line text ctrl.
  Augmented beta version to 8.
  Distribution things.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2981 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-11 15:56:57 +00:00
Vadim Zeitlin
e1f36ff823 wxButton::GetDefaultSize() added for MSW and documented
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2980 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-10 21:51:58 +00:00
Václav Slavík
704a4b7524 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2979 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-10 21:17:24 +00:00
Václav Slavík
42977f66f8 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-10 21:06:05 +00:00
Julian Smart
78bd7ed38c Added an #ifdef
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2977 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-10 20:05:30 +00:00
Brian Macy
e6f09be7da Ignore erase failures
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2976 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-10 16:52:10 +00:00
Julian Smart
f3c0f9e75f Added test for wxUSE_STATLINE in statline.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2975 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-10 13:31:14 +00:00
Václav Slavík
d78b3d6414 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2974 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-10 13:23:22 +00:00
Vadim Zeitlin
7cc98b3e3f 1. minor fixes in wxDynLib
2. added more symbols to winundef.h
3. fixed wxTextFile::IsOpen() - now it does what you'd suppose
4. listctrl now updates the item image when it changes
5. file dlg checks for an error and gives a message about it (debug only)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-10 00:50:16 +00:00
Harco de Hilster
e5b110b109 Installs Vasek's new generic headers (filesys.h, zipstream.h, wxhtml.h, etc)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2972 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-09 18:26:25 +00:00
Harco de Hilster
77133f2d9c Added Makefile.am in include/wx/html (needed for installation of header files)
Patched configure.in so that creates a Makefile there.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2971 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-09 18:00:56 +00:00
Guilhem Lavaux
c7d9131ae5 * wxStream doc update
* wxHTTP fix


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2970 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-09 17:10:49 +00:00
Patrick Albert
cc985face5 Some minors changes, like adding empty lines at end of files, to be able to compile with VC++1.52c.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2969 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-09 15:30:31 +00:00
Vadim Zeitlin
e3e717ecc5 added wxUSE_FS_INET/ZIP
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2968 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-09 14:32:50 +00:00
Karsten Ballüder
4ad3104559 Updated German and new Finnish translations.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2967 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-09 11:15:21 +00:00
Vadim Zeitlin
c94ad3c365 compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2966 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-08 13:28:31 +00:00
Václav Slavík
76ad75d316 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2965 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-07 22:05:00 +00:00
Václav Slavík
f8f81a2245 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2964 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-07 22:04:59 +00:00
Václav Slavík
5526e819ec *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2963 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-07 22:04:58 +00:00
Guilhem Lavaux
fae05df5a9 * New wxStreams (to be documented), new classes: wxBufferedStreams,
wxTextStreams


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2962 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-07 17:45:35 +00:00
Vadim Zeitlin
32d4bfd16c attempts to fix wxStaticBitmap::SetBitmap() - still doesn't work
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2961 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-07 16:00:06 +00:00
Vadim Zeitlin
232806507b compilation fixes for wxGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2960 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-07 15:11:09 +00:00
Karsten Ballüder
4e9865026f documented wxMENU_TEAROFF
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2959 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-07 09:24:55 +00:00
Karsten Ballüder
2b2edbedb4 Made tearoff menus work for gtk :-)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2958 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-07 09:18:34 +00:00
Vadim Zeitlin
094637f6d6 1. wxAppBase class appers, wxApp in wxGTK and wxMSW modified accordingly
(wxMotif not yet, but this change shouldn't break it)
2. GetStdIcon() small fixes
3. #pragma warning removed from dynlib.cpp


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2957 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-06 00:44:26 +00:00
Vadim Zeitlin
4092d6f221 CalcUnscrolledPosition takes int, not floats
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2956 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-05 21:09:00 +00:00
Vadim Zeitlin
ce9a75d225 made wxImage::Scale() const to not confuse people any more and added
a Rescale() which changes the image size "in place". Documented both
changes too.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2955 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-05 21:08:29 +00:00
Vadim Zeitlin
a0bc2c1d27 CalcUnscrolledPosition takes int, not floats
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2954 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-05 20:58:52 +00:00
Karsten Ballüder
ebea0891d0 Made icons configurable via a wxMApp virtual function. Tested on wxGTK only,
added it for all ports, though.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2953 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-05 11:22:45 +00:00
Vadim Zeitlin
13315b0cd3 some appearance fixes from Michael Bedward
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2952 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-04 20:48:05 +00:00
Robert Roebling
8dbf458911 Small changed to wxExtDialog
Made DnD use long instead of int
  Made DnD sample compile again
  Re-Updated wxTextDialog
  Added GetDefaultSize() to wxButton


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2951 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-04 13:50:13 +00:00
Vadim Zeitlin
ba059d80b4 wxList::SortFunc prototype corrected
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2950 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-03 21:13:47 +00:00
Karsten Ballüder
752c7d6bbd Added wxDllLoader::UnloadLibrary()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2949 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-03 19:34:48 +00:00
Robert Roebling
329e86bfde Added wxExtDialog and sample.
Tried to make defs.h slightly more readable, also
    found some wrong flags then.
  Updated testconf.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2948 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-03 16:40:54 +00:00
Vadim Zeitlin
4438caf41a 1. DoSetSize() simplified, DoGetBestSize() introduced
2. code cleanup here and there
3. attempts to make static boxes behave better (i.e. stay below other controls)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2947 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-02 22:02:05 +00:00
Guilhem Lavaux
44719c473b * Typo.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2946 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-02 17:49:59 +00:00
Guilhem Lavaux
e03bcf0d40 * Fixed Apple IEEE conversion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2945 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-02 17:44:41 +00:00
Karsten Ballüder
eda61172d0 Minor improvement.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-02 15:52:54 +00:00
Karsten Ballüder
5724671379 Added demonstration of busy cursor bug.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-02 15:30:00 +00:00
Guilhem Lavaux
e93c800b85 * Changed %d by %u
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-01 17:38:01 +00:00
Robert Roebling
53daeadab7 Corrected bug in filedlg.
Added more stream tests to typetest sample.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2941 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-07-01 12:54:06 +00:00
Guilhem Lavaux
1e3eca9d37 * Moved ReadLine()/WriteLine() to wxIn/OutputStream
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-30 17:15:32 +00:00
Karsten Ballüder
f79fd1e54b fixed wrong assert
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-30 15:40:00 +00:00
Karsten Ballüder
88887175e6 Merged in from M.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-30 13:26:58 +00:00
Robin Dunn
9f0f2064a5 Now passes FILE* to wxExprDatabase instead of ofstream to compy with recent
changes in wxExprDatabase.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2937 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-30 08:30:45 +00:00
Robin Dunn
06d7fdef4b Corrected link error for missing wxRegTipProvider::GetTip by giving it
an empty stub function that can be filled in later when somebody
finishes this class.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2936 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-30 04:34:13 +00:00
Robin Dunn
9f04ccb1ab added some WXDLLEXPORT's
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2935 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-30 04:28:29 +00:00
Robert Roebling
266084b5de Typos.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-30 00:03:20 +00:00
Robert Roebling
a533f5c122 wxChoiceDialog fix.
Distribution and build things.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2933 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-29 23:16:45 +00:00
Guilhem Lavaux
7b8bd8182c * wxDataStreams use wxUint now.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2932 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-29 17:53:42 +00:00
Karsten Ballüder
0868079c33 Added code to look up main program symbols - unix only. PLEASE FIX FOR MSW.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2931 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-29 17:04:57 +00:00
Vadim Zeitlin
bf6c2b3505 1. wxGrid fixes contributed by Gerhard Gruber (client data for cells...)
2. Motif warnings removed
3. Using native msgbox under Motif (ok, it doesn't work, but generic doesn't
   work neither)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2930 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-29 13:13:11 +00:00
Vadim Zeitlin
dfe1eee3bb my wxMotif fixes (merged with Robert's changes), wxMotif compiles, links
and runs... until you click in the menu, that is.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2929 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-29 12:34:18 +00:00
Vadim Zeitlin
a641505f0d startup tips for Unix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2928 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-29 11:50:30 +00:00
Unknown (UG)
7c0f3a1ebb no message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-29 08:41:07 +00:00
Vadim Zeitlin
c89165a82d more files I forgot to commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2926 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-28 22:08:46 +00:00
Vadim Zeitlin
c35414dbe4 misc minor fixes I forgot to commit before
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2925 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-28 22:06:24 +00:00
Vadim Zeitlin
6c582c35b9 should fix compilation for BC++
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2924 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-28 22:04:57 +00:00
Vadim Zeitlin
9f3a38fcd5 wxGTK compile fixes for my wxMSW changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2923 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-28 22:04:40 +00:00
Vadim Zeitlin
4e57b0d495 why cvs thinks that I modified these files?
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2922 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-28 21:53:29 +00:00
Vadim Zeitlin
e37feda245 file I forgot to add...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2921 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-28 21:52:13 +00:00
Vadim Zeitlin
367f2585a5 tip icon in XPM format
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2920 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-28 21:47:54 +00:00
Vadim Zeitlin
c50f1fb922 1. wxStaticLine implemented (generic (ugly) and MSW versions)
2. wxTextDialog looks fine under MSW again
3. startup tips added: code, sample, docs
4. read-only text controls don't participate in TAB traversal


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2919 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-28 21:39:49 +00:00
Guilhem Lavaux
b6bff3019e * wxStream fixes (integer/line parsing).
* Typetest sample fixes.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2918 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-28 18:22:04 +00:00
Robert Roebling
c693edf3bc Applied fixes for AIX (GTK 1.0 compilation).
Removed ostream from property classes.
  Removed Lisp output from wxExpr.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@2917 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-06-28 13:22:00 +00:00
1651 changed files with 422691 additions and 175000 deletions

2
include/.cvsignore Normal file
View File

@@ -0,0 +1,2 @@
Makefile.in

2
include/wx/.cvsignore Normal file
View File

@@ -0,0 +1,2 @@
Makefile.in

21
include/wx/accel.h Normal file
View File

@@ -0,0 +1,21 @@
#ifndef _WX_ACCEL_H_BASE_
#define _WX_ACCEL_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/accel.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/accel.h"
#elif defined(__WXGTK__)
#include "wx/gtk/accel.h"
#elif defined(__WXQT__)
#include "wx/qt/accel.h"
#elif defined(__WXMAC__)
#include "wx/mac/accel.h"
#elif defined(__WXPM__)
#include "wx/os2/accel.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/accel.h"
#endif
#endif
// _WX_ACCEL_H_BASE_

385
include/wx/app.h Normal file
View File

@@ -0,0 +1,385 @@
/////////////////////////////////////////////////////////////////////////////
// Name: app.h
// Purpose: wxAppBase class and macros used for declaration of wxApp
// derived class in the user code
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c) Julian Smart and Markus Holzem
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_APP_H_BASE_
#define _WX_APP_H_BASE_
#ifdef __GNUG__
#pragma interface "appbase.h"
#endif
// ----------------------------------------------------------------------------
// typedefs
// ----------------------------------------------------------------------------
#ifdef __WXMSW__
class WXDLLEXPORT wxApp;
typedef wxApp* (*wxAppInitializerFunction)();
#else
// returning wxApp* won't work with gcc
#include "wx/object.h"
typedef wxObject* (*wxAppInitializerFunction)();
#endif
// ----------------------------------------------------------------------------
// headers we have to include here
// ----------------------------------------------------------------------------
#include "wx/event.h" // for the base class
#if wxUSE_GUI
#include "wx/window.h" // for wxTopLevelWindows
#endif // wxUSE_GUI
#if wxUSE_LOG
#include "wx/log.h"
#endif
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
static const int wxPRINT_WINDOWS = 1;
static const int wxPRINT_POSTSCRIPT = 2;
// ----------------------------------------------------------------------------
// the common part of wxApp implementations for all platforms
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxAppBase : public wxEvtHandler
{
public:
// the virtual functions which may/must be overridden in the derived class
// -----------------------------------------------------------------------
// called during the program initialization, returning FALSE from here
// prevents the program from continuing - it's a good place to create
// the top level program window and return TRUE.
//
// Override: always in GUI application, rarely in console ones.
#if wxUSE_GUI
virtual bool OnInit() { return FALSE; };
#else // !GUI
virtual bool OnInit() { return TRUE; };
#endif // wxUSE_GUI
#if wxUSE_GUI
// a platform-dependent version of OnInit(): the code here is likely to
// depend on the toolkit. default version does nothing.
//
// Override: rarely.
virtual bool OnInitGui() { return TRUE; }
#endif // wxUSE_GUI
// called to start program execution - the default version just enters
// the main GUI loop in which events are received and processed until
// the last window is not deleted (if GetExitOnFrameDelete) or
// ExitMainLoop() is called. In console mode programs, the execution
// of the program really starts here
//
// Override: rarely in GUI applications, always in console ones.
#if wxUSE_GUI
virtual int OnRun() { return MainLoop(); };
#else // !GUI
virtual int OnRun() = 0;
#endif // wxUSE_GUI
// called after the main loop termination. This is a good place for
// cleaning up (it may be too late in dtor) and is also useful if you
// want to return some non-default exit code - this is just the return
// value of this method.
//
// Override: often.
virtual int OnExit() { return 0; }
// called when a fatal exception occurs, this function should take care
// not to do anything which might provoke a nested exception! It may be
// overridden if you wish to react somehow in non-default way (core
// dump under Unix, application crash under Windows) to fatal program
// errors, however extreme care should be taken if you don't want this
// function to crash.
//
// Override: rarely.
virtual void OnFatalException() { }
// the worker functions - usually not used directly by the user code
// -----------------------------------------------------------------
#if wxUSE_GUI
// execute the main GUI loop, the function returns when the loop ends
virtual int MainLoop() = 0;
// exit the main GUI loop during the next iteration (i.e. it does not
// stop the program immediately!)
virtual void ExitMainLoop() = 0;
// returns TRUE if the program is initialized
virtual bool Initialized() = 0;
// returns TRUE if there are unprocessed events in the event queue
virtual bool Pending() = 0;
// process the first event in the event queue (blocks until an event
// apperas if there are none currently)
virtual void Dispatch() = 0;
#endif // wxUSE_GUI
// application info: name, description, vendor
// -------------------------------------------
// NB: all these should be set by the application itself, there are no
// reasonable default except for the application name which is taken to
// be argv[0]
// set/get the application name
wxString GetAppName() const
{
if ( !m_appName )
return m_className;
else
return m_appName;
}
void SetAppName(const wxString& name) { m_appName = name; }
// set/get the app class name
wxString GetClassName() const { return m_className; }
void SetClassName(const wxString& name) { m_className = name; }
// set/get the vendor name
const wxString& GetVendorName() const { return m_vendorName; }
void SetVendorName(const wxString& name) { m_vendorName = name; }
#if wxUSE_GUI
// top level window functions
// --------------------------
// set the "main" top level window
void SetTopWindow(wxWindow *win) { m_topWindow = win; }
// return the "main" top level window (if it hadn't been set previously
// with SetTopWindow(), will return just some top level window and, if
// there are none, will return NULL)
wxWindow *GetTopWindow() const
{
if (m_topWindow)
return m_topWindow;
else if (wxTopLevelWindows.GetCount() > 0)
return wxTopLevelWindows.GetFirst()->GetData();
else
return (wxWindow *)NULL;
}
// control the exit behaviour: by default, the program will exit the
// main loop (and so, usually, terminate) when the last top-level
// program window is deleted. Beware that if you disabel this (with
// SetExitOnFrameDelete(FALSE)), you'll have to call ExitMainLoop()
// explicitly from somewhere.
void SetExitOnFrameDelete(bool flag) { m_exitOnFrameDelete = flag; }
bool GetExitOnFrameDelete() const { return m_exitOnFrameDelete; }
#endif // wxUSE_GUI
// miscellaneous customization functions
// -------------------------------------
#if wxUSE_LOG
// override this function to create default log target of arbitrary
// user-defined class (default implementation creates a wxLogGui
// object) - this log object is used by default by all wxLogXXX()
// functions.
virtual wxLog *CreateLogTarget()
#if wxUSE_GUI
{ return new wxLogGui; }
#else // !GUI
{ return new wxLogStderr; }
#endif // wxUSE_GUI
#endif // wxUSE_LOG
#if wxUSE_GUI
// get the standard icon used by wxWin dialogs - this allows the user
// to customize the standard dialogs. The 'which' parameter is one of
// wxICON_XXX values
virtual wxIcon GetStdIcon(int which) const = 0;
// VZ: what does this do exactly?
void SetWantDebugOutput( bool flag ) { m_wantDebugOutput = flag; }
bool GetWantDebugOutput() const { return m_wantDebugOutput; }
// set/get printing mode: see wxPRINT_XXX constants.
//
// default behaviour is the normal one for Unix: always use PostScript
// printing.
virtual void SetPrintMode(int WXUNUSED(mode)) { }
int GetPrintMode() const { return wxPRINT_POSTSCRIPT; }
#endif // wxUSE_GUI
// implementation only from now on
// -------------------------------
// helpers for dynamic wxApp construction
static void SetInitializerFunction(wxAppInitializerFunction fn)
{ m_appInitFn = fn; }
static wxAppInitializerFunction GetInitializerFunction()
{ return m_appInitFn; }
// access to the command line arguments
int argc;
wxChar **argv;
//private:
protected:
// function used for dynamic wxApp creation
static wxAppInitializerFunction m_appInitFn;
// application info (must be set from the user code)
wxString m_vendorName, // vendor name (ACME Inc)
m_appName, // app name
m_className; // class name
// if TRUE, exit the main loop when the last top level window is deleted
bool m_exitOnFrameDelete;
// TRUE if the application wants to get debug output
bool m_wantDebugOutput;
#if wxUSE_GUI
// the main top level window - may be NULL
wxWindow *m_topWindow;
#endif // wxUSE_GUI
};
// ----------------------------------------------------------------------------
// now include the declaration of the real class
// ----------------------------------------------------------------------------
#if wxUSE_GUI
#if defined(__WXMSW__)
#include "wx/msw/app.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/app.h"
#elif defined(__WXQT__)
#include "wx/qt/app.h"
#elif defined(__WXGTK__)
#include "wx/gtk/app.h"
#elif defined(__WXMAC__)
#include "wx/mac/app.h"
#elif defined(__WXPM__)
#include "wx/os2/app.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/app.h"
#endif
#else // !GUI
typedef wxAppBase wxApp;
#endif // GUI/!GUI
// ----------------------------------------------------------------------------
// the global data
// ----------------------------------------------------------------------------
// the one and only application object - use of wxTheApp in application code
// is discouraged, consider using DECLARE_APP() after which you may call
// wxGetApp() which will return the object of the correct type (i.e. MyApp and
// not wxApp)
WXDLLEXPORT_DATA(extern wxApp*) wxTheApp;
// ----------------------------------------------------------------------------
// global functions
// ----------------------------------------------------------------------------
// event loop related functions only work in GUI programs
// ------------------------------------------------------
#if wxUSE_GUI
// Force an exit from main loop
extern void WXDLLEXPORT wxExit();
// Yield to other apps/messages
extern bool WXDLLEXPORT wxYield();
#endif // wxUSE_GUI
// console applications may avoid using DECLARE_APP and IMPLEMENT_APP macros
// and call these functions instead at the program startup and termination
// -------------------------------------------------------------------------
#if wxUSE_NOGUI
// initialize the library (may be called as many times as needed, but each
// call to wxInitialize() must be matched by wxUninitialize())
extern bool WXDLLEXPORT wxInitialize();
// clean up - the library can't be used any more after the last call to
// wxUninitialize()
extern void WXDLLEXPORT wxUninitialize();
#endif // wxUSE_NOGUI
// ----------------------------------------------------------------------------
// macros for dynamic creation of the application object
// ----------------------------------------------------------------------------
// Having a global instance of this class allows wxApp to be aware of the app
// creator function. wxApp can then call this function to create a new app
// object. Convoluted, but necessary.
class WXDLLEXPORT wxAppInitializer
{
public:
wxAppInitializer(wxAppInitializerFunction fn)
{ wxApp::SetInitializerFunction(fn); }
};
// Here's a macro you can use if your compiler really, really wants main() to
// be in your main program (e.g. hello.cpp). Now IMPLEMENT_APP should add this
// code if required.
#if defined(__AIX__) || defined(__HPUX__)
#define IMPLEMENT_WXWIN_MAIN \
extern int wxEntry( int argc, char *argv[] ); \
int main(int argc, char *argv[]) { return wxEntry(argc, argv); }
#elif defined(__WXMSW__) && defined(WXUSINGDLL)
// NT defines APIENTRY, 3.x not
#if !defined(WXAPIENTRY)
#ifdef __WATCOMC__
#define WXAPIENTRY PASCAL
#else
#define WXAPIENTRY FAR PASCAL
#endif
#endif
#define IMPLEMENT_WXWIN_MAIN \
int WXAPIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,\
LPSTR m_lpCmdLine, int nCmdShow )\
{\
return wxEntry((WXHINSTANCE) hInstance, \
(WXHINSTANCE) hPrevInstance,\
m_lpCmdLine, nCmdShow);\
}
#else
#define IMPLEMENT_WXWIN_MAIN
#endif
// use this macro exactly once, the argument is the name of the wxApp-derived
// class which is the class of your application
#define IMPLEMENT_APP(appname) \
wxApp *wxCreateApp() { return new appname; } \
wxAppInitializer wxTheAppInitializer((wxAppInitializerFunction) wxCreateApp); \
appname& wxGetApp() { return *(appname *)wxTheApp; } \
IMPLEMENT_WXWIN_MAIN
#define DECLARE_APP(appname) extern appname& wxGetApp();
#endif
// _WX_APP_H_BASE_

111
include/wx/arrimpl.cpp Normal file
View File

@@ -0,0 +1,111 @@
///////////////////////////////////////////////////////////////////////////////
// Name: listimpl.cpp
// Purpose: helper file for implementation of dynamic lists
// Author: Vadim Zeitlin
// Modified by:
// Created: 16.10.97
// RCS-ID: $Id$
// Copyright: (c) 1997 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
// Licence: wxWindows license
///////////////////////////////////////////////////////////////////////////////
/*****************************************************************************
* Purpose: implements methods of "template" class declared in *
* DECLARE_OBJARRAY macro and which couldn't be implemented inline *
* (because they need the full definition of type T in scope) *
* *
* Usage: 1) #include dynarray.h *
* 2) WX_DECLARE_OBJARRAY *
* 3) #include arrimpl.cpp *
* 4) WX_DEFINE_OBJARRAY *
*****************************************************************************/
// needed to resolve the conflict between global T and macro parameter T
#define _WX_ERROR_REMOVE2(x) wxT("bad index in " #x "::Remove()")
// macro implements remaining (not inline) methods of template list
// (it's private to this file)
#undef _DEFINE_OBJARRAY
#define _DEFINE_OBJARRAY(T, name) \
name::~name() \
{ \
Empty(); \
} \
\
void name::DoCopy(const name& src) \
{ \
for ( size_t ui = 0; ui < src.Count(); ui++ ) \
Add(src[ui]); \
} \
\
name& name::operator=(const name& src) \
{ \
Empty(); \
DoCopy(src); \
\
return *this; \
} \
\
name::name(const name& src) \
{ \
DoCopy(src); \
} \
\
void name::Empty() \
{ \
for ( size_t ui = 0; ui < Count(); ui++ ) \
delete (T*)wxBaseArray::Item(ui); \
\
wxBaseArray::Clear(); \
} \
\
void name::Remove(size_t uiIndex) \
{ \
wxCHECK_RET( uiIndex < Count(), _WX_ERROR_REMOVE2(name) ); \
\
delete (T*)wxBaseArray::Item(uiIndex); \
\
wxBaseArray::Remove(uiIndex); \
} \
\
void name::Add(const T& item) \
{ \
T* pItem = new T(item); \
if ( pItem != NULL ) \
Add(pItem); \
} \
\
void name::Insert(const T& item, size_t uiIndex) \
{ \
T* pItem = new T(item); \
if ( pItem != NULL ) \
Insert(pItem, uiIndex); \
} \
\
int name::Index(const T& Item, bool bFromEnd) const \
{ \
if ( bFromEnd ) { \
if ( Count() > 0 ) { \
size_t ui = Count() - 1; \
do { \
if ( (T*)wxBaseArray::Item(ui) == &Item ) \
return ui; \
ui--; \
} \
while ( ui != 0 ); \
} \
} \
else { \
for( size_t ui = 0; ui < Count(); ui++ ) { \
if( (T*)wxBaseArray::Item(ui) == &Item ) \
return ui; \
} \
} \
\
return wxNOT_FOUND; \
}
// redefine the macro so that now it will generate the class implementation
// old value would provoke a compile-time error if this file is not included
#undef WX_DEFINE_OBJARRAY
#define WX_DEFINE_OBJARRAY(name) _DEFINE_OBJARRAY(_L##name, name)

21
include/wx/bitmap.h Normal file
View File

@@ -0,0 +1,21 @@
#ifndef _WX_BITMAP_H_BASE_
#define _WX_BITMAP_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/bitmap.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/bitmap.h"
#elif defined(__WXGTK__)
#include "wx/gtk/bitmap.h"
#elif defined(__WXQT__)
#include "wx/qt/bitmap.h"
#elif defined(__WXMAC__)
#include "wx/mac/bitmap.h"
#elif defined(__WXPM__)
#include "wx/os2/bitmap.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/bitmap.h"
#endif
#endif
// _WX_BITMAP_H_BASE_

20
include/wx/bmpbuttn.h Normal file
View File

@@ -0,0 +1,20 @@
#ifndef _WX_BMPBUTTON_H_BASE_
#define _WX_BMPBUTTON_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/bmpbuttn.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/bmpbuttn.h"
#elif defined(__WXGTK__)
#include "wx/gtk/bmpbuttn.h"
#elif defined(__WXQT__)
#include "wx/qt/bmpbuttn.h"
#elif defined(__WXMAC__)
#include "wx/mac/bmpbuttn.h"
#elif defined(__WXPM__)
#include "wx/os2/bmpbuttn.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/bmpbuttn.h"
#endif
#endif

21
include/wx/brush.h Normal file
View File

@@ -0,0 +1,21 @@
#ifndef _WX_BRUSH_H_BASE_
#define _WX_BRUSH_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/brush.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/brush.h"
#elif defined(__WXGTK__)
#include "wx/gtk/brush.h"
#elif defined(__WXQT__)
#include "wx/qt/brush.h"
#elif defined(__WXMAC__)
#include "wx/mac/brush.h"
#elif defined(__WXPM__)
#include "wx/os2/brush.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/brush.h"
#endif
#endif
// _WX_BRUSH_H_BASE_

128
include/wx/buffer.h Normal file
View File

@@ -0,0 +1,128 @@
///////////////////////////////////////////////////////////////////////////////
// Name: buffer.h
// Purpose: auto buffer classes: buffers which automatically free memory
// Author: Vadim Zeitlin
// Modified by:
// Created: 12.04.99
// RCS-ID: $Id$
// Copyright: (c) 1998 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
// Licence: wxWindows license
///////////////////////////////////////////////////////////////////////////////
// these classes are for private use only for now, they're not documented
#ifndef _WX_BUFFER_H
#define _WX_BUFFER_H
#include "wx/wxchar.h"
#include <string.h> // strdup
// ----------------------------------------------------------------------------
// Special classes for (wide) character strings: they use malloc/free instead
// of new/delete
// ----------------------------------------------------------------------------
class wxCharBuffer
{
public:
wxCharBuffer(const char *str)
{
wxASSERT_MSG( str, wxT("NULL string in wxCharBuffer") );
m_str = str ? strdup(str) : (char *)NULL;
}
wxCharBuffer(size_t len)
{
m_str = (char *)malloc(len+1);
m_str[len] = '\0';
}
// no need to check for NULL, free() does it
~wxCharBuffer() { free(m_str); }
wxCharBuffer(const wxCharBuffer& src)
{
m_str = src.m_str;
// no reference count yet...
((wxCharBuffer*)&src)->m_str = (char *)NULL;
}
wxCharBuffer& operator=(const wxCharBuffer& src)
{
m_str = src.m_str;
// no reference count yet...
((wxCharBuffer*)&src)->m_str = (char *)NULL;
return *this;
}
operator const char *() const { return m_str; }
char operator[](size_t n) const { return m_str[n]; }
private:
char *m_str;
};
#if wxUSE_WCHAR_T
class wxWCharBuffer
{
public:
wxWCharBuffer(const wchar_t *wcs)
{
wxASSERT_MSG( wcs, wxT("NULL string in wxWCharBuffer") );
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';
}
// no need to check for NULL, free() does it
~wxWCharBuffer() { free(m_wcs); }
wxWCharBuffer(const wxWCharBuffer& src)
{
m_wcs = src.m_wcs;
// no reference count yet...
((wxWCharBuffer*)&src)->m_wcs = (wchar_t *)NULL;
}
wxWCharBuffer& operator=(const wxWCharBuffer& src)
{
m_wcs = src.m_wcs;
// no reference count yet...
((wxWCharBuffer*)&src)->m_wcs = (wchar_t *)NULL;
return *this;
}
operator const wchar_t *() const { return m_wcs; }
wchar_t operator[](size_t n) const { return m_wcs[n]; }
private:
wchar_t *m_wcs;
};
#endif
#if wxUSE_UNICODE
#define wxMB2WXbuf wxWCharBuffer
#define wxWX2MBbuf wxCharBuffer
#define wxWC2WXbuf wxChar*
#define wxWX2WCbuf wxChar*
#else // ANSI
#define wxMB2WXbuf wxChar*
#define wxWX2MBbuf wxChar*
#define wxWC2WXbuf wxCharBuffer
#define wxWX2WCbuf wxWCharBuffer
#endif // Unicode/ANSI
// ----------------------------------------------------------------------------
// template class for any kind of data
// ----------------------------------------------------------------------------
// TODO
#endif // _WX_BUFFER_H

53
include/wx/busyinfo.h Normal file
View File

@@ -0,0 +1,53 @@
/////////////////////////////////////////////////////////////////////////////
// Name: busyinfo.h
// Purpose: Information window (when app is busy)
// Author: Vaclav Slavik
// Copyright: (c) 1999 Vaclav Slavik
// RCS-ID: $Id$
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __INFOWIN_H__
#define __INFOWIN_H__
#ifdef __GNUG__
#pragma interface
#endif
#include "wx/wxprec.h"
#ifdef __BORDLANDC__
#pragma hdrstop
#endif
#include "wx/frame.h"
#if wxUSE_BUSYINFO
class WXDLLEXPORT wxInfoFrame : public wxFrame
{
public:
wxInfoFrame(wxWindow *parent, const wxString& message);
};
//--------------------------------------------------------------------------------
// wxBusyInfo
// Displays progress information
// Can be used in exactly same way as wxBusyCursor
//--------------------------------------------------------------------------------
class WXDLLEXPORT wxBusyInfo : public wxObject
{
public:
wxBusyInfo(const wxString& message);
~wxBusyInfo();
private:
wxInfoFrame *m_InfoFrame;
};
#endif
#endif

21
include/wx/button.h Normal file
View File

@@ -0,0 +1,21 @@
#ifndef _WX_BUTTON_H_BASE_
#define _WX_BUTTON_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/button.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/button.h"
#elif defined(__WXGTK__)
#include "wx/gtk/button.h"
#elif defined(__WXQT__)
#include "wx/qt/button.h"
#elif defined(__WXMAC__)
#include "wx/mac/button.h"
#elif defined(__WXPM__)
#include "wx/os2/button.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/button.h"
#endif
#endif
// _WX_BUTTON_H_BASE_

190
include/wx/caret.h Normal file
View File

@@ -0,0 +1,190 @@
///////////////////////////////////////////////////////////////////////////////
// Name: caret.h
// Purpose: wxCaretBase class - the interface of wxCaret
// Author: Vadim Zeitlin
// Modified by:
// Created: 23.05.99
// RCS-ID: $Id$
// Copyright: (c) wxWindows team
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_CARET_H_BASE_
#define _WX_CARET_H_BASE_
#ifdef __GNUG__
#pragma interface "caret.h"
#endif
// ---------------------------------------------------------------------------
// forward declarations
// ---------------------------------------------------------------------------
class WXDLLEXPORT wxWindow;
class WXDLLEXPORT wxWindowBase;
// ----------------------------------------------------------------------------
// headers we have to include
// ----------------------------------------------------------------------------
#include "wx/gdicmn.h" // for wxPoint, wxSize
// ----------------------------------------------------------------------------
// A caret is a blinking cursor showing the position where the typed text will
// appear. It can be either a solid block or a custom bitmap (TODO)
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxCaretBase
{
public:
// ctors
// -----
// default - use Create
wxCaretBase() { Init(); }
// create the caret of given (in pixels) width and height and associate
// with the given window
wxCaretBase(wxWindowBase *window, int width, int height)
{
Init();
(void)Create(window, width, height);
}
// same as above
wxCaretBase(wxWindowBase *window, const wxSize& size)
{
Init();
(void)Create(window, size);
}
// Create() functions - same as ctor but returns the success code
// --------------------------------------------------------------
// same as ctor
bool Create(wxWindowBase *window, int width, int height)
{ return DoCreate(window, width, height); }
// same as ctor
bool Create(wxWindowBase *window, const wxSize& size)
{ return DoCreate(window, size.x, size.y); }
// accessors
// ---------
// is the caret valid?
bool IsOk() const { return m_width != 0 && m_height != 0; }
// is the caret currently shown?
bool IsVisible() const { return m_countVisible > 0; }
// get the caret position
void GetPosition(int *x, int *y) const
{
if ( x ) *x = m_x;
if ( y ) *y = m_y;
}
wxPoint GetPosition() const { return wxPoint(m_x, m_y); }
// get the caret size
void GetSize(int *width, int *height) const
{
if ( width ) *width = m_width;
if ( height ) *height = m_height;
}
wxSize GetSize() const { return wxSize(m_width, m_height); }
// get the window we're associated with
wxWindow *GetWindow() const { return (wxWindow *)m_window; }
// operations
// ----------
// move the caret to given position (in logical coords)
void Move(int x, int y) { m_x = x; m_y = y; DoMove(); }
void Move(const wxPoint& pt) { m_x = pt.x; m_y = pt.y; DoMove(); }
// show/hide the caret (should be called by wxWindow when needed):
// Show() must be called as many times as Hide() + 1 to make the caret
// visible
virtual void Show(bool show = TRUE)
{
if ( show )
{
if ( m_countVisible++ == 0 )
DoShow();
}
else
{
if ( --m_countVisible == 0 )
DoHide();
}
}
virtual void Hide() { Show(FALSE); }
// blink time is measured in milliseconds and is the time elapsed
// between 2 inversions of the caret (blink time of the caret is common
// to all carets in the Universe, so these functions are static)
static int GetBlinkTime();
static void SetBlinkTime(int milliseconds);
// implementation from now on
// --------------------------
// these functions should be called by wxWindow when the window gets/loses
// the focus - we create/show and hide/destroy the caret here
virtual void OnSetFocus() { }
virtual void OnKillFocus() { }
protected:
// these functions may be overriden in the derived classes, but they
// should call the base class version first
virtual bool DoCreate(wxWindowBase *window, int width, int height)
{
m_window = window;
m_width = width;
m_height = height;
return TRUE;
}
// pure virtuals to implement in the derived class
virtual void DoShow() = 0;
virtual void DoHide() = 0;
virtual void DoMove() = 0;
// the common initialization
void Init()
{
m_window = (wxWindowBase *)NULL;
m_x = m_y = 0;
m_width = m_height = 0;
m_countVisible = 0;
}
// the size of the caret
int m_width, m_height;
// the position of the caret
int m_x, m_y;
// the window we're associated with
wxWindowBase *m_window;
// visibility count: the caret is visible only if it's positive
int m_countVisible;
private:
DECLARE_NO_COPY_CLASS(wxCaretBase);
};
// ---------------------------------------------------------------------------
// now include the real thing
// ---------------------------------------------------------------------------
#if defined(__WXMSW__)
#include "wx/msw/caret.h"
#else
#include "wx/generic/caret.h"
#endif // platform
#endif // _WX_CARET_H_BASE_

21
include/wx/checkbox.h Normal file
View File

@@ -0,0 +1,21 @@
#ifndef _WX_CHECKBOX_H_BASE_
#define _WX_CHECKBOX_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/checkbox.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/checkbox.h"
#elif defined(__WXGTK__)
#include "wx/gtk/checkbox.h"
#elif defined(__WXQT__)
#include "wx/qt/checkbox.h"
#elif defined(__WXMAC__)
#include "wx/mac/checkbox.h"
#elif defined(__WXPM__)
#include "wx/os2/checkbox.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/checkbox.h"
#endif
#endif
// _WX_CHECKBOX_H_BASE_

21
include/wx/checklst.h Normal file
View File

@@ -0,0 +1,21 @@
#ifndef _WX_CHECKLST_H_BASE_
#define _WX_CHECKLST_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/checklst.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/checklst.h"
#elif defined(__WXGTK__)
#include "wx/gtk/checklst.h"
#elif defined(__WXQT__)
#include "wx/qt/checklst.h"
#elif defined(__WXMAC__)
#include "wx/mac/checklst.h"
#elif defined(__WXPM__)
#include "wx/os2/checklst.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/checklst.h"
#endif
#endif
// _WX_CHECKLST_H_BASE_

7
include/wx/choicdlg.h Normal file
View File

@@ -0,0 +1,7 @@
#ifndef _WX_CHOICDLG_H_BASE_
#define _WX_CHOICDLG_H_BASE_
#include "wx/generic/choicdgg.h"
#endif
// _WX_CHOICDLG_H_BASE_

135
include/wx/choice.h Normal file
View File

@@ -0,0 +1,135 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/choice.h
// Purpose: wxChoice class interface
// Author: Vadim Zeitlin
// Modified by:
// Created: 26.07.99
// RCS-ID: $Id$
// Copyright: (c) wxWindows team
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_CHOICE_H_BASE_
#define _WX_CHOICE_H_BASE_
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------
#ifdef __GNUG__
#pragma interface "choicebase.h"
#endif
#include "wx/control.h" // the base class
// ----------------------------------------------------------------------------
// global data
// ----------------------------------------------------------------------------
WXDLLEXPORT_DATA(extern const wxChar*) wxChoiceNameStr;
// ----------------------------------------------------------------------------
// wxChoice allows to select one of a non-modifiable list of strings
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxChoiceBase : public wxControl
{
public:
// ctor
wxChoiceBase() { m_clientDataItemsType = ClientData_None; }
// add a new item to the list
// no client data
void Append(const wxString& item) { DoAppend(item); }
// with client data which belongs to the caller
void Append(const wxString &item, void* clientData)
{ int n = DoAppend(item); SetClientData(n, clientData); }
// with client data which will be deleted by the control
void Append(const wxString &item, wxClientData* clientData)
{ int n = DoAppend(item); SetClientObject(n, clientData); }
// delete items from the list
// one item
virtual void Delete(int n) = 0;
// all of them
virtual void Clear() = 0;
// selection (at most one item may be selected in wxChoice)
// get the index of currently selected item or -1
virtual int GetSelection() const = 0;
// get the text of the currently selected item or empty string
virtual wxString GetStringSelection() const;
// set selectionto current item
virtual void SetSelection(int n) = 0;
// set selection to the current item, returns TRUE if ok
virtual bool SetStringSelection(const wxString& sel);
// accessors to the list of strings
// get the number of items in the list of strings
virtual int GetCount() const = 0;
// find string in the list, return wxNOT_FOUND if not found
virtual int FindString(const wxString& s) const = 0;
// get the string with the specified index
virtual wxString GetString(int n) const = 0;
// set/get the number of columns in the control (as they're not supporte on
// most platforms, they do nothing by default)
virtual void SetColumns(int WXUNUSED(n) = 1 ) { }
virtual int GetColumns() const { return 1 ; }
// client data
// untyped (isn't deleted by the control)
void SetClientData( int n, void* clientData );
void* GetClientData( int n ) const;
// typed (is owned and deleted by the control)
void SetClientObject( int n, wxClientData* clientData );
wxClientData* GetClientObject( int n ) const;
// emulate selecting the item event.GetInt() from the control
virtual void Command(wxCommandEvent &event);
// deprecated functions, heer for backwards compatibility only
int Number() const { return GetCount(); }
private:
// pure virtuals to implement in the derived classes
virtual int DoAppend(const wxString& item) = 0;
virtual void DoSetClientData( int n, void* clientData ) = 0;
virtual void* DoGetClientData( int n ) const = 0;
virtual void DoSetClientObject( int n, wxClientData* clientData ) = 0;
virtual wxClientData* DoGetClientObject( int n ) const = 0;
// the type of the client data for the items
wxClientDataType m_clientDataItemsType;
// the above pure virtuals hide these virtuals in wxWindowBase
virtual void DoSetClientData(void* clientData ) { wxWindowBase::DoSetClientData(clientData); };
virtual void* DoGetClientData() const { return(wxWindowBase::DoGetClientData()); };
virtual void DoSetClientObject( wxClientData* clientData ) { wxWindowBase::DoSetClientObject(clientData); };
virtual wxClientData* DoGetClientObject() const { return(wxWindowBase::DoGetClientObject()); };
};
// ----------------------------------------------------------------------------
// include the platform-dependent class definition
// ----------------------------------------------------------------------------
#if defined(__WXMSW__)
#include "wx/msw/choice.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/choice.h"
#elif defined(__WXGTK__)
#include "wx/gtk/choice.h"
#elif defined(__WXQT__)
#include "wx/qt/choice.h"
#elif defined(__WXMAC__)
#include "wx/mac/choice.h"
#elif defined(__WXPM__)
#include "wx/os2/choice.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/choice.h"
#endif
#endif
// _WX_CHOICE_H_BASE_

21
include/wx/clipbrd.h Normal file
View File

@@ -0,0 +1,21 @@
#ifndef _WX_CLIPBRD_H_BASE_
#define _WX_CLIPBRD_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/clipbrd.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/clipbrd.h"
#elif defined(__WXGTK__)
#include "wx/gtk/clipbrd.h"
#elif defined(__WXQT__)
#include "wx/gtk/clipbrd.h"
#elif defined(__WXMAC__)
#include "wx/mac/clipbrd.h"
#elif defined(__WXPM__)
#include "wx/os2/clipbrd.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/clipbrd.h"
#endif
#endif
// _WX_CLIPBRD_H_BASE_

391
include/wx/cmndata.h Normal file
View File

@@ -0,0 +1,391 @@
/////////////////////////////////////////////////////////////////////////////
// Name: cmndata.h
// Purpose: Common GDI data classes
// Author: Julian Smart and others
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c)
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_CMNDATA_H_BASE_
#define _WX_CMNDATA_H_BASE_
#ifdef __GNUG__
#pragma interface "cmndata.h"
#endif
#include "wx/window.h"
#include "wx/font.h"
#include "wx/colour.h"
#include "wx/gdicmn.h"
#if (defined(__WXMOTIF__) || defined(__WXGTK__) || defined(__WXPM__)) && wxUSE_POSTSCRIPT
class WXDLLEXPORT wxPrintSetupData;
#endif
class WXDLLEXPORT wxColourData: public wxObject
{
DECLARE_DYNAMIC_CLASS(wxColourData)
public:
wxColourData();
wxColourData(const wxColourData& data);
~wxColourData();
void SetChooseFull(bool flag) { chooseFull = flag; }
bool GetChooseFull() const { return chooseFull; }
void SetColour(wxColour& colour) { dataColour = colour; }
wxColour &GetColour() { return dataColour; }
// Array of 16 custom colours
void SetCustomColour(int i, wxColour& colour);
wxColour GetCustomColour(int i);
void operator=(const wxColourData& data);
public:
wxColour dataColour;
wxColour custColours[16];
bool chooseFull;
};
class WXDLLEXPORT wxFontData: public wxObject
{
DECLARE_DYNAMIC_CLASS(wxFontData)
public:
wxFontData();
wxFontData(const wxFontData& fontData);
~wxFontData();
void SetAllowSymbols(bool flag) { allowSymbols = flag; }
bool GetAllowSymbols() const { return allowSymbols; }
void SetColour(const wxColour& colour) { fontColour = colour; }
wxColour &GetColour() { return fontColour; }
void SetShowHelp(bool flag) { showHelp = flag; }
bool GetShowHelp() const { return showHelp; }
void EnableEffects(bool flag) { enableEffects = flag; }
bool GetEnableEffects() const { return enableEffects; }
void SetInitialFont(const wxFont& font) { initialFont = font; }
wxFont GetInitialFont() const { return initialFont; }
void SetChosenFont(const wxFont& font) { chosenFont = font; }
wxFont GetChosenFont() const { return chosenFont; }
void SetRange(int minRange, int maxRange) { minSize = minRange; maxSize = maxRange; }
void operator=(const wxFontData& data);
public:
wxColour fontColour;
bool showHelp;
bool allowSymbols;
bool enableEffects;
wxFont initialFont;
wxFont chosenFont;
int minSize;
int maxSize;
};
#if wxUSE_PRINTING_ARCHITECTURE
/*
* wxPrintData
* Encapsulates printer information (not printer dialog information)
*/
class WXDLLEXPORT wxPrintData: public wxObject
{
DECLARE_DYNAMIC_CLASS(wxPrintData)
wxPrintData();
wxPrintData(const wxPrintData& printData);
~wxPrintData();
int GetNoCopies() const { return m_printNoCopies; };
bool GetCollate() const { return m_printCollate; };
int GetOrientation() const { return m_printOrientation; };
const wxString& GetPrinterName() const { return m_printerName; }
bool GetColour() const { return m_colour; }
wxDuplexMode GetDuplex() const { return m_duplexMode; }
wxPaperSize GetPaperId() const { return m_paperId; }
const wxSize& GetPaperSize() const { return m_paperSize; } // Not used yet: confusable with paper size
// in wxPageSetupDialogData
wxPrintQuality GetQuality() const { return m_printQuality; }
void SetNoCopies(int v) { m_printNoCopies = v; };
void SetCollate(bool flag) { m_printCollate = flag; };
void SetOrientation(int orient) { m_printOrientation = orient; };
void SetPrinterName(const wxString& name) { m_printerName = name; }
void SetColour(bool colour) { m_colour = colour; }
void SetDuplex(wxDuplexMode duplex) { m_duplexMode = duplex; }
void SetPaperId(wxPaperSize sizeId) { m_paperId = sizeId; }
void SetPaperSize(const wxSize& sz) { m_paperSize = sz; }
void SetQuality(wxPrintQuality quality) { m_printQuality = quality; }
// PostScript-specific data
const wxString& GetPrinterCommand() const { return m_printerCommand; }
const wxString& GetPrinterOptions() const { return m_printerOptions; }
const wxString& GetPreviewCommand() const { return m_previewCommand; }
const wxString& GetFilename() const { return m_filename; }
const wxString& GetFontMetricPath() const { return m_afmPath; }
double GetPrinterScaleX() const { return m_printerScaleX; }
double GetPrinterScaleY() const { return m_printerScaleY; }
long GetPrinterTranslateX() const { return m_printerTranslateX; }
long GetPrinterTranslateY() const { return m_printerTranslateY; }
wxPrintMode GetPrintMode() const { return m_printMode; }
void SetPrinterCommand(const wxString& command) { m_printerCommand = command; }
void SetPrinterOptions(const wxString& options) { m_printerOptions = options; }
void SetPreviewCommand(const wxString& command) { m_previewCommand = command; }
void SetFilename(const wxString& filename) { m_filename = filename; }
void SetFontMetricPath(const wxString& path) { m_afmPath = path; }
void SetPrinterScaleX(double x) { m_printerScaleX = x; }
void SetPrinterScaleY(double y) { m_printerScaleY = y; }
void SetPrinterScaling(double x, double y) { m_printerScaleX = x; m_printerScaleY = y; }
void SetPrinterTranslateX(long x) { m_printerTranslateX = x; }
void SetPrinterTranslateY(long y) { m_printerTranslateY = y; }
void SetPrinterTranslation(long x, long y) { m_printerTranslateX = x; m_printerTranslateY = y; }
void SetPrintMode(wxPrintMode printMode) { m_printMode = printMode; }
void operator=(const wxPrintData& data);
// For compatibility
#if (defined(__WXMOTIF__) || defined(__WXGTK__) || defined(__WXPM__)) && wxUSE_POSTSCRIPT
void operator=(const wxPrintSetupData& setupData);
#endif
#if defined(__WXMSW__)
// Convert to/from the DEVMODE structure
void ConvertToNative();
void ConvertFromNative();
void* GetNativeData() const { return m_devMode; }
void SetNativeData(void* data) { m_devMode = data; }
#endif
public:
#ifdef __WXMSW__
void* m_devMode;
#endif
private:
int m_printNoCopies;
int m_printOrientation;
bool m_printCollate;
// New members, 24/3/99
wxString m_printerName;
bool m_colour;
wxDuplexMode m_duplexMode;
wxPrintQuality m_printQuality;
wxPaperSize m_paperId;
wxSize m_paperSize;
// PostScript-specific data
wxString m_printerCommand;
wxString m_previewCommand;
wxString m_printerOptions;
wxString m_filename;
wxString m_afmPath;
double m_printerScaleX;
double m_printerScaleY;
long m_printerTranslateX;
long m_printerTranslateY;
wxPrintMode m_printMode;
};
/*
* wxPrintDialogData
* Encapsulates information displayed and edited in the printer dialog box.
* Contains a wxPrintData object which is filled in according to the values retrieved
* from the dialog.
*/
class WXDLLEXPORT wxPrintDialogData: public wxObject
{
DECLARE_DYNAMIC_CLASS(wxPrintDialogData)
wxPrintDialogData();
wxPrintDialogData(const wxPrintDialogData& dialogData);
wxPrintDialogData(const wxPrintData& printData);
~wxPrintDialogData();
int GetFromPage() const { return m_printFromPage; };
int GetToPage() const { return m_printToPage; };
int GetMinPage() const { return m_printMinPage; };
int GetMaxPage() const { return m_printMaxPage; };
int GetNoCopies() const { return m_printNoCopies; };
bool GetAllPages() const { return m_printAllPages; };
bool GetSelection() const { return m_printSelection; };
bool GetCollate() const { return m_printCollate; };
bool GetPrintToFile() const { return m_printToFile; };
bool GetSetupDialog() const { return m_printSetupDialog; };
void SetFromPage(int v) { m_printFromPage = v; };
void SetToPage(int v) { m_printToPage = v; };
void SetMinPage(int v) { m_printMinPage = v; };
void SetMaxPage(int v) { m_printMaxPage = v; };
void SetNoCopies(int v) { m_printNoCopies = v; };
void SetAllPages(bool flag) { m_printAllPages = flag; };
void SetSelection(bool flag) { m_printSelection = flag; };
void SetCollate(bool flag) { m_printCollate = flag; };
void SetPrintToFile(bool flag) { m_printToFile = flag; };
void SetSetupDialog(bool flag) { m_printSetupDialog = flag; };
void EnablePrintToFile(bool flag) { m_printEnablePrintToFile = flag; };
void EnableSelection(bool flag) { m_printEnableSelection = flag; };
void EnablePageNumbers(bool flag) { m_printEnablePageNumbers = flag; };
void EnableHelp(bool flag) { m_printEnableHelp = flag; };
bool GetEnablePrintToFile() const { return m_printEnablePrintToFile; };
bool GetEnableSelection() const { return m_printEnableSelection; };
bool GetEnablePageNumbers() const { return m_printEnablePageNumbers; };
bool GetEnableHelp() const { return m_printEnableHelp; };
wxPrintData& GetPrintData() { return m_printData; }
void SetPrintData(const wxPrintData& printData) { m_printData = printData; }
void operator=(const wxPrintDialogData& data);
void operator=(const wxPrintData& data); // Sets internal m_printData member
#ifdef __WXMSW__
// Convert to/from the PRINTDLG structure
void ConvertToNative();
void ConvertFromNative();
void SetOwnerWindow(wxWindow* win);
void* GetNativeData() const { return m_printDlgData; }
#endif
#ifdef __WXMSW__
void* m_printDlgData;
#endif
private:
int m_printFromPage;
int m_printToPage;
int m_printMinPage;
int m_printMaxPage;
int m_printNoCopies;
bool m_printAllPages;
bool m_printCollate;
bool m_printToFile;
bool m_printSelection;
bool m_printEnableSelection;
bool m_printEnablePageNumbers;
bool m_printEnableHelp;
bool m_printEnablePrintToFile;
bool m_printSetupDialog;
wxPrintData m_printData;
};
/*
* This is the data used (and returned) by the wxPageSetupDialog.
*/
// Compatibility with old name
#define wxPageSetupData wxPageSetupDialogData
class WXDLLEXPORT wxPageSetupDialogData: public wxObject
{
DECLARE_DYNAMIC_CLASS(wxPageSetupDialogData)
public:
wxPageSetupDialogData();
wxPageSetupDialogData(const wxPageSetupDialogData& dialogData);
wxPageSetupDialogData(const wxPrintData& printData);
~wxPageSetupDialogData();
wxSize GetPaperSize() const { return m_paperSize; };
wxPaperSize GetPaperId() const { return m_printData.GetPaperId(); };
wxPoint GetMinMarginTopLeft() const { return m_minMarginTopLeft; };
wxPoint GetMinMarginBottomRight() const { return m_minMarginBottomRight; };
wxPoint GetMarginTopLeft() const { return m_marginTopLeft; };
wxPoint GetMarginBottomRight() const { return m_marginBottomRight; };
bool GetDefaultMinMargins() const { return m_defaultMinMargins; };
bool GetEnableMargins() const { return m_enableMargins; };
bool GetEnableOrientation() const { return m_enableOrientation; };
bool GetEnablePaper() const { return m_enablePaper; };
bool GetEnablePrinter() const { return m_enablePrinter; };
bool GetDefaultInfo() const { return m_getDefaultInfo; };
bool GetEnableHelp() const { return m_enableHelp; };
// If a corresponding paper type is found in the paper database, will set the m_printData
// paper size id member as well.
void SetPaperSize(const wxSize& sz);
void SetPaperId(wxPaperSize& id) { m_printData.SetPaperId(id); };
// Sets the wxPrintData id, plus the paper width/height if found in the paper database.
void SetPaperSize(wxPaperSize id);
void SetMinMarginTopLeft(const wxPoint& pt) { m_minMarginTopLeft = pt; };
void SetMinMarginBottomRight(const wxPoint& pt) { m_minMarginBottomRight = pt; };
void SetMarginTopLeft(const wxPoint& pt) { m_marginTopLeft = pt; };
void SetMarginBottomRight(const wxPoint& pt) { m_marginBottomRight = pt; };
void SetDefaultMinMargins(bool flag) { m_defaultMinMargins = flag; };
void SetDefaultInfo(bool flag) { m_getDefaultInfo = flag; };
void EnableMargins(bool flag) { m_enableMargins = flag; };
void EnableOrientation(bool flag) { m_enableOrientation = flag; };
void EnablePaper(bool flag) { m_enablePaper = flag; };
void EnablePrinter(bool flag) { m_enablePrinter = flag; };
void EnableHelp(bool flag) { m_enableHelp = flag; };
#if defined(__WIN95__)
// Convert to/from the PAGESETUPDLG structure
void ConvertToNative();
void ConvertFromNative();
void SetOwnerWindow(wxWindow* win);
void* GetNativeData() const { return m_pageSetupData; }
#endif
// Use paper size defined in this object to set the wxPrintData
// paper id
void CalculateIdFromPaperSize();
// Use paper id in wxPrintData to set this object's paper size
void CalculatePaperSizeFromId();
void operator=(const wxPageSetupData& data);
void operator=(const wxPrintData& data);
wxPrintData& GetPrintData() { return m_printData; }
void SetPrintData(const wxPrintData& printData) { m_printData = printData; }
#if defined(__WIN95__)
void* m_pageSetupData;
#endif
private:
wxSize m_paperSize; // The dimensions selected by the user (on return, same as in wxPrintData?)
wxPoint m_minMarginTopLeft;
wxPoint m_minMarginBottomRight;
wxPoint m_marginTopLeft;
wxPoint m_marginBottomRight;
// Flags
bool m_defaultMinMargins;
bool m_enableMargins;
bool m_enableOrientation;
bool m_enablePaper;
bool m_enablePrinter;
bool m_getDefaultInfo; // Equiv. to PSD_RETURNDEFAULT
bool m_enableHelp;
wxPrintData m_printData;
};
#endif // wxUSE_PRINTING_ARCHITECTURE
#endif
// _WX_CMNDATA_H_BASE_

26
include/wx/colordlg.h Normal file
View File

@@ -0,0 +1,26 @@
#ifndef _WX_COLORDLG_H_BASE_
#define _WX_COLORDLG_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/colordlg.h"
#elif defined(__WXMOTIF__)
#include "wx/generic/colrdlgg.h"
#elif defined(__WXGTK__)
#include "wx/generic/colrdlgg.h"
#elif defined(__WXQT__)
#include "wx/generic/colrdlgg.h"
#elif defined(__WXMAC__)
#include "wx/generic/colrdlgg.h"
#elif defined(__WXPM__)
#include "wx/generic/colrdlgg.h"
#elif defined(__WXSTUBS__)
#include "wx/generic/colrdlgg.h"
#endif
#if !defined(__WXMSW__)
#define wxColourDialog wxGenericColourDialog
#define sm_classwxColourDialog sm_classwxGenericColourDialog
#endif
#endif
// _WX_COLORDLG_H_BASE_

23
include/wx/colour.h Normal file
View File

@@ -0,0 +1,23 @@
#ifndef _WX_COLOUR_H_BASE_
#define _WX_COLOUR_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/colour.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/colour.h"
#elif defined(__WXGTK__)
#include "wx/gtk/colour.h"
#elif defined(__WXQT__)
#include "wx/qt/colour.h"
#elif defined(__WXMAC__)
#include "wx/mac/colour.h"
#elif defined(__WXPM__)
#include "wx/os2/colour.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/colour.h"
#endif
#define wxColor wxColour
#endif
// _WX_COLOUR_H_BASE_

21
include/wx/combobox.h Normal file
View File

@@ -0,0 +1,21 @@
#ifndef _WX_COMBOBOX_H_BASE_
#define _WX_COMBOBOX_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/combobox.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/combobox.h"
#elif defined(__WXGTK__)
#include "wx/gtk/combobox.h"
#elif defined(__WXQT__)
#include "wx/qt/combobox.h"
#elif defined(__WXMAC__)
#include "wx/mac/combobox.h"
#elif defined(__WXPM__)
#include "wx/os2/combobox.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/combobox.h"
#endif
#endif
// _WX_COMBOBOX_H_BASE_

318
include/wx/confbase.h Normal file
View File

@@ -0,0 +1,318 @@
///////////////////////////////////////////////////////////////////////////////
// Name: confbase.h
// Purpose: declaration of the base class of all config implementations
// (see also: fileconf.h and msw/regconf.h and iniconf.h)
// Author: Karsten Ball<6C>der & Vadim Zeitlin
// Modified by:
// Created: 07.04.98 (adapted from appconf.h)
// RCS-ID: $Id$
// Copyright: (c) 1997 Karsten Ball<6C>der Ballueder@usa.net
// Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
// Licence: wxWindows license
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_CONFBASE_H_
#define _WX_CONFBASE_H_
#ifdef __GNUG__
#pragma interface "confbase.h"
#endif
#include "wx/defs.h"
#if wxUSE_CONFIG
#include "wx/string.h"
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
/// shall we be case sensitive in parsing variable names?
#ifndef wxCONFIG_CASE_SENSITIVE
#define wxCONFIG_CASE_SENSITIVE FALSE
#endif
/// separates group and entry names (probably shouldn't be changed)
#ifndef wxCONFIG_PATH_SEPARATOR
#define wxCONFIG_PATH_SEPARATOR '/'
#endif
/// introduces immutable entries
// (i.e. the ones which can't be changed from the local config file)
#ifndef wxCONFIG_IMMUTABLE_PREFIX
#define wxCONFIG_IMMUTABLE_PREFIX '!'
#endif
/// should we use registry instead of configuration files under Win32?
// (i.e. whether wxConfigBase::Create() will create a wxFileConfig (if it's
// FALSE) or wxRegConfig (if it's true and we're under Win32) or wxIniConfig
// (under Win16))
#ifndef wxCONFIG_WIN32_NATIVE
#define wxCONFIG_WIN32_NATIVE TRUE
#endif
// Style flags for constructor style parameter
enum
{
wxCONFIG_USE_LOCAL_FILE = 1,
wxCONFIG_USE_GLOBAL_FILE = 2,
wxCONFIG_USE_RELATIVE_PATH = 4
};
// ----------------------------------------------------------------------------
// abstract base class wxConfigBase which defines the interface for derived
// classes
//
// wxConfig organizes the items in a tree-like structure (modeled after the
// Unix/Dos filesystem). There are groups (directories) and keys (files).
// There is always one current group given by the current path.
//
// Keys are pairs "key_name = value" where value may be of string or integer
// (long) type (TODO doubles and other types such as wxDate coming soon).
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxConfigBase
{
public:
// constants
// the type of an entry
enum EntryType
{
Type_Unknown,
Type_String,
Type_Boolean,
Type_Integer, // use Read(long *)
Type_Float // use Read(double *)
};
// static functions
// sets the config object, returns the previous pointer
static wxConfigBase *Set(wxConfigBase *pConfig);
// get the config object, creates it on demand unless DontCreateOnDemand
// was called
static wxConfigBase *Get() { if ( !ms_pConfig ) Create(); return ms_pConfig; }
// create a new config object: this function will create the "best"
// implementation of wxConfig available for the current platform, see
// comments near definition wxCONFIG_WIN32_NATIVE for details. It returns
// the created object and also sets it as ms_pConfig.
static wxConfigBase *Create();
// should Get() try to create a new log object if the current one is NULL?
static void DontCreateOnDemand() { ms_bAutoCreate = FALSE; }
// ctor & virtual dtor
// ctor (can be used as default ctor too)
//
// Not all args will always be used by derived classes, but including
// them all in each class ensures compatibility. If appName is empty,
// uses wxApp name
wxConfigBase(const wxString& appName = wxEmptyString,
const wxString& vendorName = wxEmptyString,
const wxString& localFilename = wxEmptyString,
const wxString& globalFilename = wxEmptyString,
long style = 0);
// empty but ensures that dtor of all derived classes is virtual
virtual ~wxConfigBase() { }
// path management
// set current path: if the first character is '/', it's the absolute path,
// otherwise it's a relative path. '..' is supported. If the strPath
// doesn't exist it is created.
virtual void SetPath(const wxString& strPath) = 0;
// retrieve the current path (always as absolute path)
virtual const wxString& GetPath() const = 0;
// enumeration: all functions here return false when there are no more items.
// you must pass the same lIndex to GetNext and GetFirst (don't modify it)
// enumerate subgroups
virtual bool GetFirstGroup(wxString& str, long& lIndex) const = 0;
virtual bool GetNextGroup (wxString& str, long& lIndex) const = 0;
// enumerate entries
virtual bool GetFirstEntry(wxString& str, long& lIndex) const = 0;
virtual bool GetNextEntry (wxString& str, long& lIndex) const = 0;
// get number of entries/subgroups in the current group, with or without
// it's subgroups
virtual size_t GetNumberOfEntries(bool bRecursive = FALSE) const = 0;
virtual size_t GetNumberOfGroups(bool bRecursive = FALSE) const = 0;
// tests of existence
// returns TRUE if the group by this name exists
virtual bool HasGroup(const wxString& strName) const = 0;
// same as above, but for an entry
virtual bool HasEntry(const wxString& strName) const = 0;
// returns TRUE if either a group or an entry with a given name exist
bool Exists(const wxString& strName) const
{ return HasGroup(strName) || HasEntry(strName); }
// get the entry type
virtual EntryType GetEntryType(const wxString& name) const
{
// by default all entries are strings
return HasEntry(name) ? Type_String : Type_Unknown;
}
// key access: returns TRUE if value was really read, FALSE if default used
// (and if the key is not found the default value is returned.)
// read a string from the key
virtual bool Read(const wxString& key, wxString *pStr) const = 0;
virtual bool Read(const wxString& key, wxString *pStr, const wxString& defVal) const;
virtual wxString Read(const wxString& key, const wxString& defVal = wxEmptyString) const;
virtual bool Read(const wxString& key, long *pl) const = 0;
virtual bool Read(const wxString& key, long *pl, long defVal) const;
virtual long Read(const wxString& strKey, long defVal) const
{ long l; Read(strKey, &l, defVal); return l; }
// Convenience functions that are built on other forms
// int
virtual bool Read(const wxString& key, int *pi) const;
virtual bool Read(const wxString& key, int *pi, int defVal) const;
// double
virtual bool Read(const wxString& key, double* val) const;
virtual bool Read(const wxString& key, double* val, double defVal) const;
// bool
virtual bool Read(const wxString& key, bool* val) const;
virtual bool Read(const wxString& key, bool* val, bool defVal) const;
// write the value (return true on success)
virtual bool Write(const wxString& key, const wxString& value) = 0;
virtual bool Write(const wxString& key, long value) = 0;
// Convenience functions
virtual bool Write(const wxString& key, double value);
virtual bool Write(const wxString& key, bool value);
// permanently writes all changes
virtual bool Flush(bool bCurrentOnly = FALSE) = 0;
// renaming, all functions return FALSE on failure (probably because the new
// name is already taken by an existing entry)
// rename an entry
virtual bool RenameEntry(const wxString& oldName,
const wxString& newName) = 0;
// rename a group
virtual bool RenameGroup(const wxString& oldName,
const wxString& newName) = 0;
// delete entries/groups
// deletes the specified entry and the group it belongs to if
// it was the last key in it and the second parameter is true
virtual bool DeleteEntry(const wxString& key,
bool bDeleteGroupIfEmpty = TRUE) = 0;
// delete the group (with all subgroups)
virtual bool DeleteGroup(const wxString& key) = 0;
// delete the whole underlying object (disk file, registry key, ...)
// primarly for use by desinstallation routine.
virtual bool DeleteAll() = 0;
// options
// we can automatically expand environment variables in the config entries
// (this option is on by default, you can turn it on/off at any time)
bool IsExpandingEnvVars() const { return m_bExpandEnvVars; }
void SetExpandEnvVars(bool bDoIt = TRUE) { m_bExpandEnvVars = bDoIt; }
// recording of default values
void SetRecordDefaults(bool bDoIt = TRUE) { m_bRecordDefaults = bDoIt; }
bool IsRecordingDefaults() const { return m_bRecordDefaults; }
// does expansion only if needed
wxString ExpandEnvVars(const wxString& str) const;
// misc accessors
wxString GetAppName() const { return m_appName; }
wxString GetVendorName() const { return m_vendorName; }
void SetStyle(long style) { m_style = style; }
long GetStyle() const { return m_style; }
protected:
static bool IsImmutable(const wxString& key)
#if !defined(__WXMAC__) && !defined(__EMX__)
{ return !key.IsEmpty() && key[0u] == wxCONFIG_IMMUTABLE_PREFIX; }
#else
{ return !key.IsEmpty() && key[0ul] == wxCONFIG_IMMUTABLE_PREFIX; }
#endif
private:
// are we doing automatic environment variable expansion?
bool m_bExpandEnvVars;
// do we record default values?
bool m_bRecordDefaults;
// static variables
static wxConfigBase *ms_pConfig;
static bool ms_bAutoCreate;
// Application name and organisation name
wxString m_appName;
wxString m_vendorName;
// Style flag
long m_style;
};
// a handy little class which changes current path to the path of given entry
// and restores it in dtor: so if you declare a local variable of this type,
// you work in the entry directory and the path is automatically restored
// when the function returns
// Taken out of wxConfig since not all compilers can cope with nested classes.
class wxConfigPathChanger
{
public:
// ctor/dtor do path changing/restorin
wxConfigPathChanger(const wxConfigBase *pContainer, const wxString& strEntry);
~wxConfigPathChanger();
// get the key name
const wxString& Name() const { return m_strName; }
private:
wxConfigBase *m_pContainer; // object we live in
wxString m_strName, // name of entry (i.e. name only)
m_strOldPath; // saved path
bool m_bChanged; // was the path changed?
};
// ----------------------------------------------------------------------------
// the native wxConfigBase implementation
// ----------------------------------------------------------------------------
// under Windows we prefer to use the native implementation
#if defined(__WXMSW__) && wxCONFIG_WIN32_NATIVE
#ifdef __WIN32__
#define wxConfig wxRegConfig
#define sm_classwxConfig sm_classwxRegConfig
#else //WIN16
#define wxConfig wxIniConfig
#define sm_classwxConfig sm_classwxIniConfig
#endif
#else // either we're under Unix or wish to use files even under Windows
#define wxConfig wxFileConfig
#define sm_classwxConfig sm_classwxFileConfig
#endif
#endif // wxUSE_CONFIG
// ----------------------------------------------------------------------------
// various helper global functions (defined even if !wxUSE_CONFIG)
// ----------------------------------------------------------------------------
/*
Replace environment variables ($SOMETHING) with their values. The format is
$VARNAME or ${VARNAME} where VARNAME contains alphanumeric characters and
'_' only. '$' must be escaped ('\$') in order to be taken literally.
*/
extern wxString wxExpandEnvVars(const wxString &sz);
/*
Split path into parts removing '..' in progress
*/
extern void wxSplitPath(wxArrayString& aParts, const wxChar *sz);
#endif
// _WX_CONFIG_H_

17
include/wx/config.h Normal file
View File

@@ -0,0 +1,17 @@
#ifndef _WX_CONFIG_H_BASE_
#define _WX_CONFIG_H_BASE_
#include "wx/confbase.h"
#if defined(__WXMSW__) && defined(wxCONFIG_WIN32_NATIVE)
# ifdef __WIN32__
# include "wx/msw/regconf.h"
#else
# include "wx/msw/iniconf.h"
# endif
#else
# include "wx/fileconf.h"
#endif
#endif
// _WX_CONFIG_H_BASE_

72
include/wx/control.h Normal file
View File

@@ -0,0 +1,72 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/control.h
// Purpose: wxControl common interface
// Author: Vadim Zeitlin
// Modified by:
// Created: 26.07.99
// RCS-ID: $Id$
// Copyright: (c) wxWindows team
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_CONTROL_H_BASE_
#define _WX_CONTROL_H_BASE_
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------
#ifdef __GNUG__
#pragma interface "controlbase.h"
#endif
#include "wx/window.h" // base class
// ----------------------------------------------------------------------------
// wxControl is the base class for all controls
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxControlBase : public wxWindow
{
public:
// simulates the event of given type (i.e. wxButton::Command() is just as
// if the button was clicked)
virtual void Command(wxCommandEvent &event);
protected:
// creates the controls (invokes wxWindowBase::CreateBase) and adds it to
// the list of parents children
bool CreateControl(wxWindowBase *parent,
wxWindowID id,
const wxPoint& pos,
const wxSize& size,
long style,
const wxValidator& validator,
const wxString& name);
// inherit colour and font settings from the parent window
void InheritAttributes();
};
// ----------------------------------------------------------------------------
// include platform-dependent wxControl declarations
// ----------------------------------------------------------------------------
#if defined(__WXMSW__)
#include "wx/msw/control.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/control.h"
#elif defined(__WXGTK__)
#include "wx/gtk/control.h"
#elif defined(__WXQT__)
#include "wx/qt/control.h"
#elif defined(__WXMAC__)
#include "wx/mac/control.h"
#elif defined(__WXPM__)
#include "wx/os2/control.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/control.h"
#endif
#endif
// _WX_CONTROL_H_BASE_

43
include/wx/cursor.h Normal file
View File

@@ -0,0 +1,43 @@
#ifndef _WX_CURSOR_H_BASE_
#define _WX_CURSOR_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/cursor.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/cursor.h"
#elif defined(__WXGTK__)
#include "wx/gtk/cursor.h"
#elif defined(__WXQT__)
#include "wx/qt/cursor.h"
#elif defined(__WXMAC__)
#include "wx/mac/cursor.h"
#elif defined(__WXPM__)
#include "wx/os2/cursor.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/cursor.h"
#endif
#include "wx/utils.h"
/* This is a small class which can be used by all ports
to temporarily suspend the busy cursor. Useful in modal
dialogs.
*/
class wxBusyCursorSuspender
{
public:
wxBusyCursorSuspender()
{
m_wasBusy = wxIsBusy();
if(m_wasBusy)
wxEndBusyCursor();
}
~wxBusyCursorSuspender()
{
if(m_wasBusy)
wxBeginBusyCursor();
}
private:
bool m_wasBusy;
};
#endif
// _WX_CURSOR_H_BASE_

98
include/wx/dataobj.h Normal file
View File

@@ -0,0 +1,98 @@
///////////////////////////////////////////////////////////////////////////////
// Name: dataobj.h
// Purpose: common data object classes
// Author: Robert Roebling, Vadim Zeitlin
// Modified by:
// Created: 26.05.99
// RCS-ID: $Id$
// Copyright: (c) wxWindows Team
// Licence: wxWindows license
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DATAOBJ_H_BASE_
#define _WX_DATAOBJ_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/ole/dataobj.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/dataobj.h"
#elif defined(__WXGTK__)
#include "wx/gtk/dataobj.h"
#elif defined(__WXQT__)
#include "wx/qt/dnd.h"
#elif defined(__WXMAC__)
#include "wx/mac/dnd.h"
#elif defined(__WXPM__)
#include "wx/os2/dnd.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/dnd.h"
#endif
// ---------------------------------------------------------------------------
// wxPrivateDataObject is a specialization of wxDataObject for app specific
// data (of some given kind, derive directly from wxDataObject if you wish to
// efficiently support multiple formats)
// ---------------------------------------------------------------------------
class WXDLLEXPORT wxPrivateDataObject : public wxDataObject
{
#if defined(__WXGTK__) || defined(__WXMOTIF__)
DECLARE_DYNAMIC_CLASS( wxPrivateDataObject )
#endif
public:
wxPrivateDataObject();
virtual ~wxPrivateDataObject() { Free(); }
// get the format object - it is used to decide whether we support the
// given output format or not
wxDataFormat& GetFormat() { return m_format; }
// set data. will make copy of the data
void SetData( const void *data, size_t size );
// returns pointer to data
void *GetData() const { return m_data; }
// get the size of the data
virtual size_t GetSize() const;
// copy data to the given buffer
virtual void WriteData( void *dest ) const;
// these functions are provided for wxGTK compatibility, their usage is
// deprecated - use GetFormat().SetId() instead
void SetId( const wxString& id ) { m_format.SetId(id); }
wxString GetId() const { return m_format.GetId(); }
// implement the base class pure virtuals
virtual wxDataFormat GetPreferredFormat() const
{ return m_format; }
virtual bool IsSupportedFormat(wxDataFormat format) const
{ return m_format == format; }
virtual size_t GetDataSize() const
{ return m_size; }
virtual void GetDataHere(void *dest) const
{ WriteData(dest); }
// the function which really copies the data - called by WriteData() above
// and uses GetSize() to get the size of the data
void WriteData( const void *data, void *dest ) const;
private:
// free the data
void Free();
// the data
size_t m_size;
void *m_data;
#if !defined(__WXGTK__) && !defined(__WXMOTIF__)
// the data format
wxDataFormat m_format;
#endif
};
#endif
// _WX_DATAOBJ_H_BASE_

146
include/wx/date.h Normal file
View File

@@ -0,0 +1,146 @@
/////////////////////////////////////////////////////////////////////////////
// Name: date.h
// Purpose: wxDate class
// Author: Julian Smart, Steve Marcus, Eric Simon, Chris Hill,
// Charles D. Price
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c)
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DATE_H_
#define _WX_DATE_H_
#ifdef __GNUG__
#pragma interface "date.h"
#endif
#include "wx/object.h"
#include "wx/string.h"
#if wxUSE_TIMEDATE
// These lines necessary to stop VC++ 6 being confused about namespaces
class WXDLLEXPORT wxDate;
bool WXDLLEXPORT operator<(const wxDate &dt1, const wxDate &dt2);
bool WXDLLEXPORT operator<(const wxDate &dt1, const wxDate &dt2);
bool WXDLLEXPORT operator <= (const wxDate &dt1, const wxDate &dt2);
bool WXDLLEXPORT operator > (const wxDate &dt1, const wxDate &dt2);
bool WXDLLEXPORT operator >= (const wxDate &dt1, const wxDate &dt2);
bool WXDLLEXPORT operator == (const wxDate &dt1, const wxDate &dt2);
bool WXDLLEXPORT operator != (const wxDate &dt1, const wxDate &dt2);
enum wxdate_format_type {wxMDY, wxDAY, wxMONTH, wxFULL, wxEUROPEAN};
#define wxNO_CENTURY 0x02
#define wxDATE_ABBR 0x04
class WXDLLEXPORT wxDate : public wxObject
{
DECLARE_DYNAMIC_CLASS(wxDate)
protected:
unsigned long julian; // see julDate(); days since 1/1/4713 B.C.
int month; // see NMonth()
int day; // see Day()
int year; // see NYear4()
int day_of_week; // see NDOW(); 1 = Sunday, ... 7 = Saturday
private:
int DisplayFormat;
unsigned char DisplayOptions;
void julian_to_mdy (); // convert julian day to mdy
void julian_to_wday (); // convert julian day to day_of_week
void mdy_to_julian (); // convert mdy to julian day
public:
wxDate ();
wxDate (long j);
wxDate (int m, int d, int y);
wxDate (const wxString& dat);
wxDate (const wxDate &dt);
#ifndef __SALFORDC__
operator wxString (void);
#endif
void operator = (const wxDate& date);
void operator = (const wxString& date);
wxDate operator + (long i);
wxDate operator + (int i);
wxDate operator - (long i);
wxDate operator - (int i);
long operator - (const wxDate &dt);
wxDate &operator += (long i);
wxDate &operator -= (long i);
wxDate &operator ++ (); // Prefix increment
wxDate &operator ++ (int); // Postfix increment
wxDate &operator -- (); // Prefix decrement
wxDate &operator -- (int); // Postfix decrement
friend bool WXDLLEXPORT operator < (const wxDate &dt1, const wxDate &dt2);
friend bool WXDLLEXPORT operator <= (const wxDate &dt1, const wxDate &dt2);
friend bool WXDLLEXPORT operator > (const wxDate &dt1, const wxDate &dt2);
friend bool WXDLLEXPORT operator >= (const wxDate &dt1, const wxDate &dt2);
friend bool WXDLLEXPORT operator == (const wxDate &dt1, const wxDate &dt2);
friend bool WXDLLEXPORT operator != (const wxDate &dt1, const wxDate &dt2);
#if wxUSE_STD_IOSTREAM
friend ostream WXDLLEXPORT & operator << (ostream &os, const wxDate &dt);
#endif
wxString FormatDate (int type=-1) const;
void SetFormat (int format);
int SetOption (int option, bool enable=TRUE);
long GetJulianDate() const; // returns julian date
int GetDayOfYear() const; // returns relative date since Jan. 1
bool IsLeapYear() const; // returns TRUE if leap year, FALSE if not
// Version 4.0 Extension to Public Interface - CDP
// These 'Set's modify the date object and actually SET it
// They all return a reference to self (*this)
wxDate &Set(); // Sets to current system date
wxDate &Set(long lJulian);
wxDate &Set(int nMonth, int nDay, int nYear);
wxDate &AddWeeks(int nCount = 1); //
wxDate &AddMonths(int nCount = 1); // May also pass neg# to decrement
wxDate &AddYears(int nCount = 1); //
int GetDay() const; // Numeric Day of date object
int GetDaysInMonth(); // Number of days in month (1..31)
int GetFirstDayOfMonth() const; // First Day Of Month (1..7)
wxString GetDayOfWeekName(); // Character Day Of Week ('Sunday'..'Saturday')
int GetDayOfWeek() const; // (1..7)
int GetWeekOfMonth(); // Numeric Week Of Month (1..6)
int GetWeekOfYear(); // Numeric Week Of Year (1..52)
wxString GetMonthName(); // Character Month name
int GetMonth() const; // Month Number (1..12)
wxDate GetMonthStart(); // First Date Of Month
wxDate GetMonthEnd(); // Last Date Of Month
int GetYear() const; // eg. 1992
wxDate GetYearStart(); // First Date Of Year
wxDate GetYearEnd(); // Last Date Of Year
bool IsBetween(const wxDate& first, const wxDate& second) const;
wxDate Previous(int dayOfWeek) const;
};
#endif // wxUSE_TIMEDATE
#endif
// _WX_DATE_H_

82
include/wx/datstrm.h Normal file
View File

@@ -0,0 +1,82 @@
/////////////////////////////////////////////////////////////////////////////
// Name: datstrm.h
// Purpose: Data stream classes
// Author: Guilhem Lavaux
// Modified by:
// Created: 28/06/1998
// RCS-ID: $Id$
// Copyright: (c) Guilhem Lavaux
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DATSTREAM_H_
#define _WX_DATSTREAM_H_
#ifdef __GNUG__
#pragma interface "datstrm.h"
#endif
#include "wx/stream.h"
#if wxUSE_STREAMS
class WXDLLEXPORT wxDataInputStream {
public:
wxDataInputStream(wxInputStream& s);
~wxDataInputStream();
wxUint32 Read32();
wxUint16 Read16();
wxUint8 Read8();
double ReadDouble();
wxString ReadString();
wxDataInputStream& operator>>(wxString& s);
wxDataInputStream& operator>>(wxInt8& c);
wxDataInputStream& operator>>(wxInt16& i);
wxDataInputStream& operator>>(wxInt32& i);
wxDataInputStream& operator>>(wxUint8& c);
wxDataInputStream& operator>>(wxUint16& i);
wxDataInputStream& operator>>(wxUint32& i);
wxDataInputStream& operator>>(double& i);
wxDataInputStream& operator>>(float& f);
void BigEndianOrdered(bool be_order) { m_be_order = be_order; }
protected:
wxInputStream *m_input;
bool m_be_order;
};
class WXDLLEXPORT wxDataOutputStream {
public:
wxDataOutputStream(wxOutputStream& s);
~wxDataOutputStream();
void Write32(wxUint32 i);
void Write16(wxUint16 i);
void Write8(wxUint8 i);
void WriteDouble(double d);
void WriteString(const wxString& string);
wxDataOutputStream& operator<<(const wxChar *string);
wxDataOutputStream& operator<<(wxString& string);
wxDataOutputStream& operator<<(wxInt8 c);
wxDataOutputStream& operator<<(wxInt16 i);
wxDataOutputStream& operator<<(wxInt32 i);
wxDataOutputStream& operator<<(wxUint8 c);
wxDataOutputStream& operator<<(wxUint16 i);
wxDataOutputStream& operator<<(wxUint32 i);
wxDataOutputStream& operator<<(double f);
wxDataOutputStream& operator<<(float f);
void BigEndianOrdered(bool be_order) { m_be_order = be_order; }
protected:
wxOutputStream *m_output;
bool m_be_order;
};
#endif
// wxUSE_STREAMS
#endif
// _WX_DATSTREAM_H_

461
include/wx/db.h Normal file
View File

@@ -0,0 +1,461 @@
///////////////////////////////////////////////////////////////////////////////
// Name: db.h
// Purpose: Header file wxDB class. The wxDB class represents a connection
// to an ODBC data source. The wxDB class allows operations on the data
// source such as opening and closing the data source.
// Author: Doug Card
// Modified by:
// Mods: Dec, 1998:
// -Added support for SQL statement logging and database cataloging
// April, 1999
// -Added QUERY_ONLY mode support to reduce default number of cursors
// -Added additional SQL logging code
// -Added DEBUG-ONLY tracking of Ctable objects to detect orphaned DB connections
// -Set ODBC option to only read committed writes to the DB so all
// databases operate the same in that respect
//
// Created: 9.96
// RCS-ID: $Id$
// Copyright: (c) 1996 Remstar International, Inc.
// Licence: wxWindows licence, plus:
// Notice: This class library and its intellectual design are free of charge for use,
// modification, enhancement, debugging under the following conditions:
// 1) These classes may only be used as part of the implementation of a
// wxWindows-based application
// 2) All enhancements and bug fixes are to be submitted back to the wxWindows
// user groups free of all charges for use with the wxWindows library.
// 3) These classes may not be distributed as part of any other class library,
// DLL, text (written or electronic), other than a complete distribution of
// the wxWindows GUI development toolkit.
//
///////////////////////////////////////////////////////////////////////////////
/*
// SYNOPSIS START
// SYNOPSIS STOP
*/
#ifndef DB_DOT_H
#define DB_DOT_H
// Use this line for wxWindows v1.x
//#include "wx_ver.h"
// Use this line for wxWindows v2.x
#include "wx/version.h"
#if wxMAJOR_VERSION == 2
#ifdef __GNUG__
#pragma interface "db.h"
#endif
#endif
#if defined(wx_msw) || defined(__WXMSW__) || defined(WIN32)
#include <windows.h>
#endif
#ifdef __UNIX__
#if wxMAJOR_VERSION == 2
extern "C" {
#include "../../src/iodbc/isql.h"
#include "../../src/iodbc/isqlext.h"
}
#else // version == 1
extern "C" {
#include "iodbc.h"
#include "isqlext.h"
}
#endif
typedef float SFLOAT;
typedef double SDOUBLE;
typedef unsigned int UINT;
#define ULONG UDWORD
#else // msw
#define ODBCVER 0x0250
#include <sql.h>
#include <sqlext.h>
#endif
#ifdef __UNIX__
# ifndef strnicmp
# define strnicmp strncasecmp
# endif
# ifndef stricmp
# define stricmp strcasecmp
# endif
#else
# include <io.h>
#endif
enum enumDummy {enumDum1};
#define SQL_C_BOOLEAN(datatype) (sizeof(datatype) == 1 ? SQL_C_UTINYINT : (sizeof(datatype) == 2 ? SQL_C_USHORT : SQL_C_ULONG))
// #define SQL_C_BOOLEAN (sizeof(Bool) == 2 ? SQL_C_USHORT : SQL_C_ULONG)
#define SQL_C_ENUM (sizeof(enumDummy) == 2 ? SQL_C_USHORT : SQL_C_ULONG)
#ifndef TRUE
#define TRUE 1
#endif
#ifndef FALSE
#define FALSE 0
#endif
const int DB_PATH_MAX = 254;
// Database Globals
const int DB_TYPE_NAME_LEN = 40;
const int DB_MAX_STATEMENT_LEN = 2048;
const int DB_MAX_WHERE_CLAUSE_LEN = 1024;
const int DB_MAX_ERROR_MSG_LEN = 512;
const int DB_MAX_ERROR_HISTORY = 5;
const int DB_MAX_TABLE_NAME_LEN = 128;
const int DB_MAX_COLUMN_NAME_LEN = 128;
const int DB_DATA_TYPE_VARCHAR = 1;
const int DB_DATA_TYPE_INTEGER = 2;
const int DB_DATA_TYPE_FLOAT = 3;
const int DB_DATA_TYPE_DATE = 4;
const int DB_SELECT_KEYFIELDS = 1;
const int DB_SELECT_WHERE = 2;
const int DB_SELECT_MATCHING = 3;
const int DB_SELECT_STATEMENT = 4;
const int DB_UPD_KEYFIELDS = 1;
const int DB_UPD_WHERE = 2;
const int DB_DEL_KEYFIELDS = 1;
const int DB_DEL_WHERE = 2;
const int DB_DEL_MATCHING = 3;
const int DB_WHERE_KEYFIELDS = 1;
const int DB_WHERE_MATCHING = 2;
const int DB_GRANT_SELECT = 1;
const int DB_GRANT_INSERT = 2;
const int DB_GRANT_UPDATE = 4;
const int DB_GRANT_DELETE = 8;
const int DB_GRANT_ALL = DB_GRANT_SELECT | DB_GRANT_INSERT | DB_GRANT_UPDATE | DB_GRANT_DELETE;
// ODBC Error codes (derived from ODBC SqlState codes)
enum ODBC_ERRORS
{
DB_FAILURE = 0,
DB_SUCCESS = 1,
DB_ERR_NOT_IN_USE,
DB_ERR_GENERAL_WARNING, // SqlState = '01000'
DB_ERR_DISCONNECT_ERROR, // SqlState = '01002'
DB_ERR_DATA_TRUNCATED, // SqlState = '01004'
DB_ERR_PRIV_NOT_REVOKED, // SqlState = '01006'
DB_ERR_INVALID_CONN_STR_ATTR, // SqlState = '01S00'
DB_ERR_ERROR_IN_ROW, // SqlState = '01S01'
DB_ERR_OPTION_VALUE_CHANGED, // SqlState = '01S02'
DB_ERR_NO_ROWS_UPD_OR_DEL, // SqlState = '01S03'
DB_ERR_MULTI_ROWS_UPD_OR_DEL, // SqlState = '01S04'
DB_ERR_WRONG_NO_OF_PARAMS, // SqlState = '07001'
DB_ERR_DATA_TYPE_ATTR_VIOL, // SqlState = '07006'
DB_ERR_UNABLE_TO_CONNECT, // SqlState = '08001'
DB_ERR_CONNECTION_IN_USE, // SqlState = '08002'
DB_ERR_CONNECTION_NOT_OPEN, // SqlState = '08003'
DB_ERR_REJECTED_CONNECTION, // SqlState = '08004'
DB_ERR_CONN_FAIL_IN_TRANS, // SqlState = '08007'
DB_ERR_COMM_LINK_FAILURE, // SqlState = '08S01'
DB_ERR_INSERT_VALUE_LIST_MISMATCH, // SqlState = '21S01'
DB_ERR_DERIVED_TABLE_MISMATCH, // SqlState = '21S02'
DB_ERR_STRING_RIGHT_TRUNC, // SqlState = '22001'
DB_ERR_NUMERIC_VALUE_OUT_OF_RNG, // SqlState = '22003'
DB_ERR_ERROR_IN_ASSIGNMENT, // SqlState = '22005'
DB_ERR_DATETIME_FLD_OVERFLOW, // SqlState = '22008'
DB_ERR_DIVIDE_BY_ZERO, // SqlState = '22012'
DB_ERR_STR_DATA_LENGTH_MISMATCH, // SqlState = '22026'
DB_ERR_INTEGRITY_CONSTRAINT_VIOL, // SqlState = '23000'
DB_ERR_INVALID_CURSOR_STATE, // SqlState = '24000'
DB_ERR_INVALID_TRANS_STATE, // SqlState = '25000'
DB_ERR_INVALID_AUTH_SPEC, // SqlState = '28000'
DB_ERR_INVALID_CURSOR_NAME, // SqlState = '34000'
DB_ERR_SYNTAX_ERROR_OR_ACCESS_VIOL, // SqlState = '37000'
DB_ERR_DUPLICATE_CURSOR_NAME, // SqlState = '3C000'
DB_ERR_SERIALIZATION_FAILURE, // SqlState = '40001'
DB_ERR_SYNTAX_ERROR_OR_ACCESS_VIOL2, // SqlState = '42000'
DB_ERR_OPERATION_ABORTED, // SqlState = '70100'
DB_ERR_UNSUPPORTED_FUNCTION, // SqlState = 'IM001'
DB_ERR_NO_DATA_SOURCE, // SqlState = 'IM002'
DB_ERR_DRIVER_LOAD_ERROR, // SqlState = 'IM003'
DB_ERR_SQLALLOCENV_FAILED, // SqlState = 'IM004'
DB_ERR_SQLALLOCCONNECT_FAILED, // SqlState = 'IM005'
DB_ERR_SQLSETCONNECTOPTION_FAILED, // SqlState = 'IM006'
DB_ERR_NO_DATA_SOURCE_DLG_PROHIB, // SqlState = 'IM007'
DB_ERR_DIALOG_FAILED, // SqlState = 'IM008'
DB_ERR_UNABLE_TO_LOAD_TRANSLATION_DLL, // SqlState = 'IM009'
DB_ERR_DATA_SOURCE_NAME_TOO_LONG, // SqlState = 'IM010'
DB_ERR_DRIVER_NAME_TOO_LONG, // SqlState = 'IM011'
DB_ERR_DRIVER_KEYWORD_SYNTAX_ERROR, // SqlState = 'IM012'
DB_ERR_TRACE_FILE_ERROR, // SqlState = 'IM013'
DB_ERR_TABLE_OR_VIEW_ALREADY_EXISTS, // SqlState = 'S0001'
DB_ERR_TABLE_NOT_FOUND, // SqlState = 'S0002'
DB_ERR_INDEX_ALREADY_EXISTS, // SqlState = 'S0011'
DB_ERR_INDEX_NOT_FOUND, // SqlState = 'S0012'
DB_ERR_COLUMN_ALREADY_EXISTS, // SqlState = 'S0021'
DB_ERR_COLUMN_NOT_FOUND, // SqlState = 'S0022'
DB_ERR_NO_DEFAULT_FOR_COLUMN, // SqlState = 'S0023'
DB_ERR_GENERAL_ERROR, // SqlState = 'S1000'
DB_ERR_MEMORY_ALLOCATION_FAILURE, // SqlState = 'S1001'
DB_ERR_INVALID_COLUMN_NUMBER, // SqlState = 'S1002'
DB_ERR_PROGRAM_TYPE_OUT_OF_RANGE, // SqlState = 'S1003'
DB_ERR_SQL_DATA_TYPE_OUT_OF_RANGE, // SqlState = 'S1004'
DB_ERR_OPERATION_CANCELLED, // SqlState = 'S1008'
DB_ERR_INVALID_ARGUMENT_VALUE, // SqlState = 'S1009'
DB_ERR_FUNCTION_SEQUENCE_ERROR, // SqlState = 'S1010'
DB_ERR_OPERATION_INVALID_AT_THIS_TIME, // SqlState = 'S1011'
DB_ERR_INVALID_TRANS_OPERATION_CODE, // SqlState = 'S1012'
DB_ERR_NO_CURSOR_NAME_AVAIL, // SqlState = 'S1015'
DB_ERR_INVALID_STR_OR_BUF_LEN, // SqlState = 'S1090'
DB_ERR_DESCRIPTOR_TYPE_OUT_OF_RANGE, // SqlState = 'S1091'
DB_ERR_OPTION_TYPE_OUT_OF_RANGE, // SqlState = 'S1092'
DB_ERR_INVALID_PARAM_NO, // SqlState = 'S1093'
DB_ERR_INVALID_SCALE_VALUE, // SqlState = 'S1094'
DB_ERR_FUNCTION_TYPE_OUT_OF_RANGE, // SqlState = 'S1095'
DB_ERR_INF_TYPE_OUT_OF_RANGE, // SqlState = 'S1096'
DB_ERR_COLUMN_TYPE_OUT_OF_RANGE, // SqlState = 'S1097'
DB_ERR_SCOPE_TYPE_OUT_OF_RANGE, // SqlState = 'S1098'
DB_ERR_NULLABLE_TYPE_OUT_OF_RANGE, // SqlState = 'S1099'
DB_ERR_UNIQUENESS_OPTION_TYPE_OUT_OF_RANGE, // SqlState = 'S1100'
DB_ERR_ACCURACY_OPTION_TYPE_OUT_OF_RANGE, // SqlState = 'S1101'
DB_ERR_DIRECTION_OPTION_OUT_OF_RANGE, // SqlState = 'S1103'
DB_ERR_INVALID_PRECISION_VALUE, // SqlState = 'S1104'
DB_ERR_INVALID_PARAM_TYPE, // SqlState = 'S1105'
DB_ERR_FETCH_TYPE_OUT_OF_RANGE, // SqlState = 'S1106'
DB_ERR_ROW_VALUE_OUT_OF_RANGE, // SqlState = 'S1107'
DB_ERR_CONCURRENCY_OPTION_OUT_OF_RANGE, // SqlState = 'S1108'
DB_ERR_INVALID_CURSOR_POSITION, // SqlState = 'S1109'
DB_ERR_INVALID_DRIVER_COMPLETION, // SqlState = 'S1110'
DB_ERR_INVALID_BOOKMARK_VALUE, // SqlState = 'S1111'
DB_ERR_DRIVER_NOT_CAPABLE, // SqlState = 'S1C00'
DB_ERR_TIMEOUT_EXPIRED // SqlState = 'S1T00'
};
struct DbStuff
{
HENV Henv;
char Dsn[SQL_MAX_DSN_LENGTH+1]; // Data Source Name
char Uid[20+1]; // User ID
char AuthStr[20+1]; // Authorization string (password)
char description[SQL_MAX_DSN_LENGTH+1]; // Not sure what the max length is
char fileType[SQL_MAX_DSN_LENGTH+1]; // Not sure what the max length is
// Optionals needed for some databases like dBase
char defaultDir[DB_PATH_MAX]; // Directory that db file resides in
};
typedef struct
{
char TypeName[DB_TYPE_NAME_LEN];
int FsqlType;
long Precision;
short CaseSensitive;
// short MinimumScale;
short MaximumScale;
} SqlTypeInfo;
class WXDLLEXPORT CcolInf
{
public:
char tableName[DB_MAX_TABLE_NAME_LEN+1];
char colName[DB_MAX_COLUMN_NAME_LEN+1];
int sqlDataType;
};
enum sqlLog
{
sqlLogOFF,
sqlLogON
};
enum dbms
{
dbmsUNIDENTIFIED,
dbmsORACLE,
dbmsSYBASE_ASA, // Adaptive Server Anywhere
dbmsSYBASE_ASE, // Adaptive Server Enterprise
dbmsMS_SQL_SERVER,
dbmsMY_SQL,
dbmsPOSTGRES,
dbmsACCESS,
dbmsDBASE
};
typedef enum dbms DBMS;
// The wxDB::errorList is copied to this variable when the wxDB object
// is closed. This way, the error list is still available after the
// database object is closed. This is necessary if the database
// connection fails so the calling application can show the operator
// why the connection failed. Note: as each wxDB object is closed, it
// will overwrite the errors of the previously destroyed wxDB object in
// this variable.
extern char DBerrorList[DB_MAX_ERROR_HISTORY][DB_MAX_ERROR_MSG_LEN];
class WXDLLEXPORT wxDB
{
private:
// Private data
bool dbIsOpen;
char *dsn; // Data source name
char *uid; // User ID
char *authStr; // Authorization string (password)
FILE *fpSqlLog; // Sql Log file pointer
enum sqlLog sqlLogState; // On or Off
// Private member functions
bool getDbInfo(void);
bool getDataTypeInfo(SWORD fSqlType, SqlTypeInfo &structSQLTypeInfo);
bool setConnectionOptions(void);
void logError(char *errMsg, char *SQLState);
public:
// The following structure contains database information gathered from the
// datasource when the datasource is first opened.
struct
{
char dbmsName[40]; // Name of the dbms product
char dbmsVer[64]; // Version # of the dbms product
char driverName[40]; // Driver name
char odbcVer[60]; // ODBC version of the driver
char drvMgrOdbcVer[60]; // ODBC version of the driver manager
char driverVer[60]; // Driver version
char serverName[80]; // Server Name, typically a connect string
char databaseName[128]; // Database filename
char outerJoins[2]; // Indicates whether the data source supports outer joins
char procedureSupport[2]; // Indicates whether the data source supports stored procedures
UWORD maxConnections; // Maximum # of connections the data source supports
UWORD maxStmts; // Maximum # of HSTMTs per HDBC
UWORD apiConfLvl; // ODBC API conformance level
UWORD cliConfLvl; // Indicates whether the data source is SAG compliant
UWORD sqlConfLvl; // SQL conformance level
UWORD cursorCommitBehavior; // Indicates how cursors are affected by a db commit
UWORD cursorRollbackBehavior; // Indicates how cursors are affected by a db rollback
UWORD supportNotNullClause; // Indicates if data source supports NOT NULL clause
char supportIEF[2]; // Integrity Enhancement Facility (Referential Integrity)
UDWORD txnIsolation; // Default transaction isolation level supported by the driver
UDWORD txnIsolationOptions; // Transaction isolation level options available
UDWORD fetchDirections; // Fetch directions supported
UDWORD lockTypes; // Lock types supported in SQLSetPos
UDWORD posOperations; // Position operations supported in SQLSetPos
UDWORD posStmts; // Position statements supported
UDWORD scrollConcurrency; // Concurrency control options supported for scrollable cursors
UDWORD scrollOptions; // Scroll Options supported for scrollable cursors
UDWORD staticSensitivity; // Indicates if additions, deletions and updates can be detected
UWORD txnCapable; // Indicates if the data source supports transactions
UDWORD loginTimeout; // Number seconds to wait for a login request
} dbInf;
// ODBC handles
HENV henv; // ODBC Environment handle
HDBC hdbc; // ODBC DB Connection handle
HSTMT hstmt; // ODBC Statement handle
// ODBC Error Inf.
char sqlState[20];
SDWORD nativeError;
char errorMsg[SQL_MAX_MESSAGE_LENGTH];
SWORD cbErrorMsg;
char errorList[DB_MAX_ERROR_HISTORY][DB_MAX_ERROR_MSG_LEN];
int DB_STATUS;
//Error reporting mode
bool silent;
// Number of Ctable objects connected to this db object
unsigned int nTables;
// Inf. about logical data types VARCHAR, INTEGER, FLOAT and DATE.
// This inf. is obtained from the ODBC driver by use of the
// SQLGetTypeInfo() function. The key piece of inf. is the
// type name the data source uses for each logical data type.
// e.g. VARCHAR; Oracle calls it VARCHAR2.
SqlTypeInfo typeInfVarchar, typeInfInteger, typeInfFloat, typeInfDate;
// Public member functions
wxDB(HENV &aHenv);
bool Open(char *Dsn, char *Uid, char *AuthStr); // Data Source Name, User ID, Password
void Close(void);
bool CommitTrans(void);
bool RollbackTrans(void);
bool DispAllErrors(HENV aHenv, HDBC aHdbc = SQL_NULL_HDBC, HSTMT aHstmt = SQL_NULL_HSTMT);
bool GetNextError(HENV aHenv, HDBC aHdbc = SQL_NULL_HDBC, HSTMT aHstmt = SQL_NULL_HSTMT);
void DispNextError(void);
bool CreateView(char *viewName, char *colList, char *pSqlStmt, bool attemptDrop=TRUE);
bool DropView(char *viewName);
bool ExecSql(char *pSqlStmt);
bool GetNext(void);
bool GetData(UWORD colNo, SWORD cType, PTR pData, SDWORD maxLen, SDWORD FAR *cbReturned);
bool Grant(int privileges, char *tableName, char *userList = "PUBLIC");
int TranslateSqlState(char *SQLState);
bool Catalog(char *userID, char *fileName = "Catalog.txt");
CcolInf *GetColumns(char *tableName[], char *userID=NULL);
char *GetDatabaseName(void) {return dbInf.dbmsName;}
char *GetDataSource(void) {return dsn;}
char *GetUsername(void) {return uid;}
char *GetPassword(void) {return authStr;}
bool IsOpen(void) {return dbIsOpen;}
HENV GetHENV(void) {return henv;}
HDBC GetHDBC(void) {return hdbc;}
HSTMT GetHSTMT(void) {return hstmt;}
bool TableExists(char *tableName, char *userID=NULL, char *path=NULL); // Table name can refer to a table, view, alias or synonym
void LogError(char *errMsg, char *SQLState = 0) {logError(errMsg, SQLState);}
bool SqlLog(enum sqlLog state, char *filename = "sqllog.txt", bool append = FALSE);
bool WriteSqlLog(char *logMsg);
DBMS Dbms(void);
}; // wxDB
// This structure forms a node in a linked list. The linked list of "DbList" objects
// keeps track of allocated database connections. This allows the application to
// open more than one database connection through ODBC for multiple transaction support
// or for multiple database support.
struct DbList
{
DbList *PtrPrev; // Pointer to previous item in the list
char Dsn[SQL_MAX_DSN_LENGTH+1]; // Data Source Name
wxDB *PtrDb; // Pointer to the wxDB object
bool Free; // Is item free or in use?
DbList *PtrNext; // Pointer to next item in the list
};
#if __WXDEBUG__ > 0
#include "wx/object.h"
class CstructTablesInUse : public wxObject
{
public:
const char *tableName;
ULONG tableID;
class wxDB *pDb;
}; // CstructTablesInUse
#endif
// The following routines allow a user to get new database connections, free them
// for other code segments to use, or close all of them when the application has
// completed.
wxDB WXDLLEXPORT *GetDbConnection(DbStuff *pDbStuff);
bool WXDLLEXPORT FreeDbConnection(wxDB *pDb);
void WXDLLEXPORT CloseDbConnections(void);
int WXDLLEXPORT NumberDbConnectionsInUse(void);
// This function sets the sql log state for all open wxDB objects
bool SqlLog(enum sqlLog state, char *filename = "sqllog.txt");
// This routine allows you to query a driver manager
// for a list of available datasources. Call this routine
// the first time using SQL_FETCH_FIRST. Continue to call it
// using SQL_FETCH_NEXT until you've exhausted the list.
bool WXDLLEXPORT GetDataSource(HENV henv, char *Dsn, SWORD DsnMax, char *DsDesc, SWORD DsDescMax,
UWORD direction = SQL_FETCH_NEXT);
#endif

196
include/wx/dbtable.h Normal file
View File

@@ -0,0 +1,196 @@
///////////////////////////////////////////////////////////////////////////////
// Name: dbtable.h
// Purpose: Declaration of the wxTable class.
// Author: Doug Card
// Modified by:
// Created: 9.96
// RCS-ID: $Id$
// Copyright: (c) 1996 Remstar International, Inc.
// Licence: wxWindows licence, plus:
// Notice: This class library and its intellectual design are free of charge for use,
// modification, enhancement, debugging under the following conditions:
// 1) These classes may only be used as part of the implementation of a
// wxWindows-based application
// 2) All enhancements and bug fixes are to be submitted back to the wxWindows
// user groups free of all charges for use with the wxWindows library.
// 3) These classes may not be distributed as part of any other class library,
// DLL, text (written or electronic), other than a complete distribution of
// the wxWindows GUI development toolkit.
///////////////////////////////////////////////////////////////////////////////
/*
// SYNOPSIS START
// SYNOPSIS STOP
*/
#ifndef DBTABLE_DOT_H
#define DBTABLE_DOT_H
// Use this line for wxWindows v1.x
//#include "wx_ver.h"
// Use this line for wxWindows v2.x
#include "wx/version.h"
#if wxMAJOR_VERSION == 2
#ifdef __GNUG__
#pragma interface "dbtable.h"
#endif
#endif
#if wxMAJOR_VERSION == 2
#include "wx/db.h"
#else
#include "db.h"
#endif
const int ROWID_LEN = 24; // 18 is the max, 24 is in case it gets larger
const int DEFAULT_CURSOR = 0;
const bool QUERY_ONLY = TRUE;
const bool DISABLE_VIEW = TRUE;
// The following class is used to define a column of a table.
// The wxTable constructor will dynamically allocate as many of
// these as there are columns in the table. The class derived
// from wxTable must initialize these column definitions in it's
// constructor. These column definitions provide inf. to the
// wxTable class which allows it to create a table in the data
// source, exchange data between the data source and the C++
// object, and so on.
class WXDLLEXPORT CcolDef
{
public:
char ColName[DB_MAX_COLUMN_NAME_LEN+1]; // Column Name
int DbDataType; // Logical Data Type; e.g. DB_DATA_TYPE_INTEGER
int SqlCtype; // C data type; e.g. SQL_C_LONG
void *PtrDataObj; // Address of the data object
int SzDataObj; // Size, in bytes, of the data object
bool KeyField; // TRUE if this column is part of the PRIMARY KEY to the table; Date fields should NOT be KeyFields.
bool Updateable; // Specifies whether this column is updateable
bool InsertAllowed; // Specifies whether this column should be included in an INSERT statement
bool DerivedCol; // Specifies whether this column is a derived value
SDWORD CbValue; // Internal use only!!!
bool Null; // NOT FULLY IMPLEMENTED - Allows NULL values in Inserts and Updates
}; // CcolDef
// This structure is used when creating secondary indexes.
class WXDLLEXPORT CidxDef
{
public:
char ColName[DB_MAX_COLUMN_NAME_LEN+1];
bool Ascending;
}; // CidxDef
class WXDLLEXPORT wxTable
{
private:
ULONG tableID; // Used for debugging. This can help to match up mismatched constructors/destructors
// Private member variables
UDWORD cursorType;
// Private member functions
bool bindInsertParams(void);
bool bindUpdateParams(void);
bool bindCols(HSTMT cursor);
bool getRec(UWORD fetchType);
bool execDelete(char *pSqlStmt);
bool execUpdate(char *pSqlStmt);
bool query(int queryType, bool forUpdate, bool distinct, char *pSqlStmt = 0);
public:
// Pointer to the database object this table belongs to
wxDB *pDb;
// ODBC Handles
HENV henv; // ODBC Environment handle
HDBC hdbc; // ODBC DB Connection handle
HSTMT hstmt; // ODBC Statement handle
HSTMT *hstmtDefault; // Default cursor
HSTMT hstmtInsert; // ODBC Statement handle used specifically for inserts
HSTMT hstmtDelete; // ODBC Statement handle used specifically for deletes
HSTMT hstmtUpdate; // ODBC Statement handle used specifically for updates
HSTMT hstmtInternal; // ODBC Statement handle used internally only
HSTMT *hstmtCount; // ODBC Statement handle used by Count() function (No binding of columns)
// Table Inf.
char tableName[DB_MAX_TABLE_NAME_LEN+1]; // Table name
char queryTableName[DB_MAX_TABLE_NAME_LEN+1]; // Query Table Name
int noCols; // # of columns in the table
bool queryOnly; // Query Only, no inserts, updates or deletes
char tablePath[DB_PATH_MAX]; // needed for dBase tables
// Column Definitions
CcolDef *colDefs; // Array of CcolDef structures
// Where, Order By and From clauses
char *where; // Standard SQL where clause, minus the word WHERE
char *orderBy; // Standard SQL order by clause, minus the ORDER BY
char *from; // Allows for joins in a wxTable::Query(). Format: ",tbl,tbl..."
// Flags
bool selectForUpdate;
// Public member functions
wxTable(wxDB *pwxDB, const char *tblName, const int nCols,
const char *qryTblName = 0, bool qryOnly = !QUERY_ONLY, char *tblPath=NULL);
virtual ~wxTable();
bool Open(void);
bool CreateTable(bool attemptDrop=TRUE);
bool DropTable(void);
bool CreateIndex(char * idxName, bool unique, int noIdxCols, CidxDef *pIdxDefs, bool attemptDrop=TRUE);
bool DropIndex(char * idxName);
bool CloseCursor(HSTMT cursor);
int Insert(void);
bool Update(void);
bool Update(char *pSqlStmt);
bool UpdateWhere(char *pWhereClause);
bool Delete(void);
bool DeleteWhere(char *pWhereClause);
bool DeleteMatching(void);
virtual bool Query(bool forUpdate = FALSE, bool distinct = FALSE);
bool QueryBySqlStmt(char *pSqlStmt);
bool QueryMatching(bool forUpdate = FALSE, bool distinct = FALSE);
bool QueryOnKeyFields(bool forUpdate = FALSE, bool distinct = FALSE);
bool GetNext(void) { return(getRec(SQL_FETCH_NEXT)); }
bool operator++(int) { return(getRec(SQL_FETCH_NEXT)); }
#ifndef FWD_ONLY_CURSORS
bool GetPrev(void) { return(getRec(SQL_FETCH_PRIOR)); }
bool operator--(int) { return(getRec(SQL_FETCH_PRIOR)); }
bool GetFirst(void) { return(getRec(SQL_FETCH_FIRST)); }
bool GetLast(void) { return(getRec(SQL_FETCH_LAST)); }
#endif
bool IsCursorClosedOnCommit(void);
bool IsColNull(int colNo);
UWORD GetRowNum(void);
void GetSelectStmt(char *pSqlStmt, int typeOfSelect, bool distinct);
void GetDeleteStmt(char *pSqlStmt, int typeOfDel, char *pWhereClause = 0);
void GetUpdateStmt(char *pSqlStmt, int typeOfUpd, char *pWhereClause = 0);
void GetWhereClause(char *pWhereClause, int typeOfWhere, char *qualTableName = 0);
bool CanSelectForUpdate(void);
bool CanUpdByROWID(void);
void ClearMemberVars(void);
bool SetQueryTimeout(UDWORD nSeconds);
void SetColDefs (int index, char *fieldName, int dataType, void *pData, int cType,
int size, bool keyField = FALSE, bool upd = TRUE,
bool insAllow = TRUE, bool derivedCol = FALSE);
HSTMT *NewCursor(bool setCursor = FALSE, bool bindColumns = TRUE);
bool DeleteCursor(HSTMT *hstmtDel);
void SetCursor(HSTMT *hstmtActivate = (void **) DEFAULT_CURSOR);
HSTMT GetCursor(void) { return(hstmt); }
ULONG Count(void);
int DB_STATUS(void) { return(pDb->DB_STATUS); }
bool Refresh(void);
bool SetNull(int colNo);
bool SetNull(char *colName);
#if __WXDEBUG__ > 0
ULONG GetTableID() { return tableID; };
#endif
}; // wxTable
#endif

558
include/wx/dc.h Normal file
View File

@@ -0,0 +1,558 @@
/////////////////////////////////////////////////////////////////////////////
// Name: dc.h
// Purpose: wxDC class
// Author: Vadim Zeitlin
// Modified by:
// Created: 05/25/99
// RCS-ID: $Id$
// Copyright: (c) wxWindows team
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DC_H_BASE_
#define _WX_DC_H_BASE_
#ifdef __GNUG__
#pragma interface "dcbase.h"
#endif
// ----------------------------------------------------------------------------
// headers which we must include here
// ----------------------------------------------------------------------------
#include "wx/object.h" // the base class
#include "wx/cursor.h" // we have member variables of these classes
#include "wx/font.h" // so we can't do without them
#include "wx/colour.h"
#include "wx/brush.h"
#include "wx/pen.h"
#include "wx/palette.h"
#include "wx/list.h" // we use wxList in inline functions
// ---------------------------------------------------------------------------
// types
// ---------------------------------------------------------------------------
// type which should be used (whenever possible, i.e. as long as it doesn't
// break compatibility) for screen coordinates
typedef int wxCoord;
// ---------------------------------------------------------------------------
// global variables
// ---------------------------------------------------------------------------
WXDLLEXPORT_DATA(extern int) wxPageNumber;
// ---------------------------------------------------------------------------
// wxDC is the device context - object on which any drawing is done
// ---------------------------------------------------------------------------
class WXDLLEXPORT wxDCBase : public wxObject
{
DECLARE_ABSTRACT_CLASS(wxDCBase)
public:
wxDCBase()
{
m_clipping = FALSE;
m_ok = TRUE;
m_minX = m_minY = m_maxX = m_maxY = 0;
m_signX = m_signY = 1;
m_logicalOriginX = m_logicalOriginY =
m_deviceOriginX = m_deviceOriginY = 0;
m_logicalScaleX = m_logicalScaleY =
m_userScaleX = m_userScaleY =
m_scaleX = m_scaleY = 1.0;
m_logicalFunction = -1;
m_backgroundMode = wxTRANSPARENT;
m_mappingMode = wxMM_TEXT;
m_backgroundBrush = *wxTRANSPARENT_BRUSH;
m_textForegroundColour = *wxBLACK;
m_textBackgroundColour = *wxWHITE;
m_colour = wxColourDisplay();
}
~wxDCBase() { }
virtual void BeginDrawing() { }
virtual void EndDrawing() { }
// graphic primitives
// ------------------
void FloodFill(long x, long y, const wxColour& col,
int style = wxFLOOD_SURFACE)
{ DoFloodFill(x, y, col, style); }
void FloodFill(const wxPoint& pt, const wxColour& col,
int style = wxFLOOD_SURFACE)
{ DoFloodFill(pt.x, pt.y, col, style); }
bool GetPixel(long x, long y, wxColour *col) const
{ return DoGetPixel(x, y, col); }
bool GetPixel(const wxPoint& pt, wxColour *col) const
{ return DoGetPixel(pt.x, pt.y, col); }
void DrawLine(long x1, long y1, long x2, long y2)
{ DoDrawLine(x1, y1, x2, y2); }
void DrawLine(const wxPoint& pt1, const wxPoint& pt2)
{ DoDrawLine(pt1.x, pt1.y, pt2.x, pt2.y); }
void CrossHair(long x, long y)
{ DoCrossHair(x, y); }
void CrossHair(const wxPoint& pt)
{ DoCrossHair(pt.x, pt.y); }
void DrawArc(long x1, long y1, long x2, long y2, long xc, long yc)
{ DoDrawArc(x1, y1, x2, y2, xc, yc); }
void DrawArc(const wxPoint& pt1, const wxPoint& pt2, const wxPoint& centre)
{ DoDrawArc(pt1.x, pt1.y, pt2.x, pt2.y, centre.x, centre.y); }
void DrawEllipticArc(long x, long y, long w, long h, double sa, double ea)
{ DoDrawEllipticArc(x, y, w, h, sa, ea); }
void DrawEllipticArc(const wxPoint& pt, const wxSize& sz,
double sa, double ea)
{ DoDrawEllipticArc(pt.x, pt.y, sz.x, sz.y, sa, ea); }
void DrawPoint(long x, long y)
{ DoDrawPoint(x, y); }
void DrawPoint(const wxPoint& pt)
{ DoDrawPoint(pt.x, pt.y); }
void DrawLines(int n, wxPoint points[], long xoffset = 0, long yoffset = 0)
{ DoDrawLines(n, points, xoffset, yoffset); }
void DrawLines(const wxList *list, long xoffset = 0, long yoffset = 0);
void DrawPolygon(int n, wxPoint points[],
long xoffset = 0, long yoffset = 0,
int fillStyle = wxODDEVEN_RULE)
{ DoDrawPolygon(n, points, xoffset, yoffset, fillStyle); }
void DrawPolygon(const wxList *list,
long xoffset = 0, long yoffset = 0,
int fillStyle = wxODDEVEN_RULE);
void DrawRectangle(long x, long y, long width, long height)
{ DoDrawRectangle(x, y, width, height); }
void DrawRectangle(const wxPoint& pt, const wxSize& sz)
{ DoDrawRectangle(pt.x, pt.y, sz.x, sz.y); }
void DrawRectangle(const wxRect& rect)
{ DoDrawRectangle(rect.x, rect.y, rect.width, rect.height); }
void DrawRoundedRectangle(long x, long y, long width, long height,
double radius)
{ DoDrawRoundedRectangle(x, y, width, height, radius); }
void DrawRoundedRectangle(const wxPoint& pt, const wxSize& sz,
double radius)
{ DoDrawRoundedRectangle(pt.x, pt.y, sz.x, sz.y, radius); }
void DrawRoundedRectangle(const wxRect& r, double radius)
{ DoDrawRoundedRectangle(r.x, r.y, r.width, r.height, radius); }
void DrawCircle(long x, long y, long radius)
{ DoDrawEllipse(x - radius, y - radius, 2*radius, 2*radius); }
void DrawEllipse(long x, long y, long width, long height)
{ DoDrawEllipse(x, y, width, height); }
void DrawEllipse(const wxPoint& pt, const wxSize& sz)
{ DoDrawEllipse(pt.x, pt.y, sz.x, sz.y); }
void DrawEllipse(const wxRect& rect)
{ DoDrawEllipse(rect.x, rect.y, rect.width, rect.height); }
void DrawIcon(const wxIcon& icon, long x, long y)
{ DoDrawIcon(icon, x, y); }
void DrawIcon(const wxIcon& icon, const wxPoint& pt)
{ DoDrawIcon(icon, pt.x, pt.y); }
void DrawBitmap(const wxBitmap &bmp, long x, long y, bool useMask = FALSE)
{ DoDrawBitmap(bmp, x, y, useMask); }
void DrawBitmap(const wxBitmap &bmp, const wxPoint& pt,
bool useMask = FALSE)
{ DoDrawBitmap(bmp, pt.x, pt.y, useMask); }
void DrawText(const wxString& text, long x, long y)
{ DoDrawText(text, x, y); }
void DrawText(const wxString& text, const wxPoint& pt)
{ DoDrawText(text, pt.x, pt.y); }
bool Blit(long xdest, long ydest, long width, long height,
wxDC *source, long xsrc, long ysrc,
int rop = wxCOPY, bool useMask = FALSE)
{
return DoBlit(xdest, ydest, width, height,
source, xsrc, ysrc, rop, useMask);
}
bool Blit(const wxPoint& destPt, const wxSize& sz,
wxDC *source, const wxPoint& srcPt,
int rop = wxCOPY, bool useMask = FALSE)
{
return DoBlit(destPt.x, destPt.y, sz.x, sz.y,
source, srcPt.x, srcPt.y, rop, useMask);
}
#if wxUSE_SPLINES
// TODO: this API needs fixing (wxPointList, why (!const) "wxList *"?)
void DrawSpline(long x1, long y1, long x2, long y2, long x3, long y3);
void DrawSpline(int n, wxPoint points[]);
void DrawSpline(wxList *points) { DoDrawSpline(points); }
#endif // wxUSE_SPLINES
// global DC operations
// --------------------
virtual void Clear() = 0;
virtual bool StartDoc(const wxString& WXUNUSED(message)) { return TRUE; }
virtual void EndDoc() { }
virtual void StartPage() { }
virtual void EndPage() { }
// set objects to use for drawing
// ------------------------------
virtual void SetFont(const wxFont& font) = 0;
virtual void SetPen(const wxPen& pen) = 0;
virtual void SetBrush(const wxBrush& brush) = 0;
virtual void SetBackground(const wxBrush& brush) = 0;
virtual void SetBackgroundMode(int mode) = 0;
virtual void SetPalette(const wxPalette& palette) = 0;
// clipping region
// ---------------
void SetClippingRegion(long x, long y, long width, long height)
{ DoSetClippingRegion(x, y, width, height); }
void SetClippingRegion(const wxPoint& pt, const wxSize& sz)
{ DoSetClippingRegion(pt.x, pt.y, sz.x, sz.y); }
void SetClippingRegion(const wxRect& rect)
{ DoSetClippingRegion(rect.x, rect.y, rect.width, rect.height); }
void SetClippingRegion(const wxRegion& region)
{ DoSetClippingRegionAsRegion(region); }
virtual void DestroyClippingRegion() = 0;
void GetClippingBox(long *x, long *y, long *w, long *h) const
{ DoGetClippingBox(x, y, w, h); }
void GetClippingBox(wxRect& rect) const
{ DoGetClippingBox(&rect.x, &rect.y, &rect.width, &rect.height); }
// text extent
// -----------
virtual long GetCharHeight() const = 0;
virtual long GetCharWidth() const = 0;
virtual void GetTextExtent(const wxString& string,
long *x, long *y,
long *descent = NULL,
long *externalLeading = NULL,
wxFont *theFont = NULL) const = 0;
// size and resolution
// -------------------
// in device units
void GetSize(int *width, int *height) const
{ DoGetSize(width, height); }
wxSize GetSize() const
{
int w, h;
DoGetSize(&w, &h);
return wxSize(w, h);
}
// in mm
void GetSizeMM(int* width, int* height) const
{ DoGetSizeMM(width, height); }
wxSize GetSizeMM() const
{
int w, h;
DoGetSizeMM(&w, &h);
return wxSize(w, h);
}
// coordinates conversions
// -----------------------
// This group of functions does actual conversion of the input, as you'd
// expect.
long DeviceToLogicalX(long x) const;
long DeviceToLogicalY(long y) const;
long DeviceToLogicalXRel(long x) const;
long DeviceToLogicalYRel(long y) const;
long LogicalToDeviceX(long x) const;
long LogicalToDeviceY(long y) const;
long LogicalToDeviceXRel(long x) const;
long LogicalToDeviceYRel(long y) const;
// query DC capabilities
// ---------------------
virtual bool CanDrawBitmap() const = 0;
virtual bool CanGetTextExtent() const = 0;
// colour depth
virtual int GetDepth() const = 0;
// Resolution in Pixels per inch
virtual wxSize GetPPI() const = 0;
virtual bool Ok() const { return m_ok; }
// accessors
// ---------
// const...
const wxBrush& GetBackground() const { return m_backgroundBrush; }
const wxBrush& GetBrush() const { return m_brush; }
const wxFont& GetFont() const { return m_font; }
const wxPen& GetPen() const { return m_pen; }
const wxColour& GetTextBackground() const { return m_textBackgroundColour; }
const wxColour& GetTextForeground() const { return m_textForegroundColour; }
// ... and non const
wxBrush& GetBackground() { return m_backgroundBrush; }
wxBrush& GetBrush() { return m_brush; }
wxFont& GetFont() { return m_font; }
wxPen& GetPen() { return m_pen; }
wxColour& GetTextBackground() { return m_textBackgroundColour; }
wxColour& GetTextForeground() { return m_textForegroundColour; }
virtual void SetTextForeground(const wxColour& colour)
{ m_textForegroundColour = colour; }
virtual void SetTextBackground(const wxColour& colour)
{ m_textBackgroundColour = colour; }
int GetMapMode() const { return m_mappingMode; }
virtual void SetMapMode(int mode) = 0;
virtual void GetUserScale(double *x, double *y) const
{
if ( x ) *x = m_userScaleX;
if ( y ) *y = m_userScaleY;
}
virtual void SetUserScale(double x, double y) = 0;
virtual void GetLogicalScale(double *x, double *y)
{
if ( x ) *x = m_logicalScaleX;
if ( y ) *y = m_logicalScaleY;
}
virtual void SetLogicalScale(double x, double y)
{
m_logicalScaleX = x;
m_logicalScaleY = y;
}
void GetLogicalOrigin(long *x, long *y) const
{ DoGetLogicalOrigin(x, y); }
wxPoint GetLogicalOrigin() const
{ long x, y; DoGetLogicalOrigin(&x, &y); return wxPoint(x, y); }
virtual void SetLogicalOrigin(long x, long y) = 0;
void GetDeviceOrigin(long *x, long *y) const
{ DoGetDeviceOrigin(x, y); }
wxPoint GetDeviceOrigin() const
{ long x, y; DoGetDeviceOrigin(&x, &y); return wxPoint(x, y); }
virtual void SetDeviceOrigin(long x, long y) = 0;
virtual void SetAxisOrientation(bool xLeftRight, bool yBottomUp) = 0;
int GetLogicalFunction() const { return m_logicalFunction; }
virtual void SetLogicalFunction(int function) = 0;
// Sometimes we need to override optimization, e.g. if other software is
// drawing onto our surface and we can't be sure of who's done what.
//
// FIXME: is this (still) used?
virtual void SetOptimization(bool WXUNUSED(opt)) { }
virtual bool GetOptimization() { return FALSE; }
// bounding box
// ------------
virtual void CalcBoundingBox(long x, long y)
{
if (x < m_minX) m_minX = x;
if (y < m_minY) m_minY = y;
if (x > m_maxX) m_maxX = x;
if (y > m_maxY) m_maxY = y;
}
// Get the final bounding box of the PostScript or Metafile picture.
long MinX() const { return m_minX; }
long MaxX() const { return m_maxX; }
long MinY() const { return m_minY; }
long MaxY() const { return m_maxY; }
// misc old functions
// ------------------
#if WXWIN_COMPATIBILITY
virtual void SetColourMap(const wxPalette& palette) { SetPalette(palette); }
void GetTextExtent(const wxString& string, float *x, float *y,
float *descent = NULL, float *externalLeading = NULL,
wxFont *theFont = NULL, bool use16bit = FALSE) const ;
void GetSize(float* width, float* height) const { int w, h; GetSize(& w, & h); *width = w; *height = h; }
void GetSizeMM(float *width, float *height) const { long w, h; GetSizeMM(& w, & h); *width = (float) w; *height = (float) h; }
#endif // WXWIN_COMPATIBILITY
protected:
// the pure virtual functions which should be implemented by wxDC
virtual void DoFloodFill(long x, long y, const wxColour& col,
int style = wxFLOOD_SURFACE) = 0;
virtual bool DoGetPixel(long x, long y, wxColour *col) const = 0;
virtual void DoDrawPoint(long x, long y) = 0;
virtual void DoDrawLine(long x1, long y1, long x2, long y2) = 0;
virtual void DoDrawArc(long x1, long y1,
long x2, long y2,
long xc, long yc) = 0;
virtual void DoDrawEllipticArc(long x, long y, long w, long h,
double sa, double ea) = 0;
virtual void DoDrawRectangle(long x, long y, long width, long height) = 0;
virtual void DoDrawRoundedRectangle(long x, long y,
long width, long height,
double radius) = 0;
virtual void DoDrawEllipse(long x, long y, long width, long height) = 0;
virtual void DoCrossHair(long x, long y) = 0;
virtual void DoDrawIcon(const wxIcon& icon, long x, long y) = 0;
virtual void DoDrawBitmap(const wxBitmap &bmp, long x, long y,
bool useMask = FALSE) = 0;
virtual void DoDrawText(const wxString& text, long x, long y) = 0;
virtual bool DoBlit(long xdest, long ydest, long width, long height,
wxDC *source, long xsrc, long ysrc,
int rop = wxCOPY, bool useMask = FALSE) = 0;
virtual void DoGetSize(int *width, int *height) const = 0;
virtual void DoGetSizeMM(int* width, int* height) const = 0;
virtual void DoDrawLines(int n, wxPoint points[],
long xoffset, long yoffset) = 0;
virtual void DoDrawPolygon(int n, wxPoint points[],
long xoffset, long yoffset,
int fillStyle = wxODDEVEN_RULE) = 0;
virtual void DoSetClippingRegionAsRegion(const wxRegion& region) = 0;
virtual void DoSetClippingRegion(long x, long y,
long width, long height) = 0;
// FIXME are these functions really different?
virtual void DoGetClippingRegion(long *x, long *y,
long *w, long *h)
{ DoGetClippingBox(x, y, w, h); }
virtual void DoGetClippingBox(long *x, long *y,
long *w, long *h) const
{
if ( m_clipping )
{
if ( x ) *x = m_clipX1;
if ( y ) *y = m_clipY1;
if ( w ) *w = m_clipX2 - m_clipX1;
if ( h ) *h = m_clipY2 - m_clipY1;
}
else
{
*x = *y = *w = *h = 0;
}
}
virtual void DoGetLogicalOrigin(long *x, long *y) const
{
if ( x ) *x = m_logicalOriginX;
if ( y ) *y = m_logicalOriginY;
}
virtual void DoGetDeviceOrigin(long *x, long *y) const
{
if ( x ) *x = m_deviceOriginX;
if ( y ) *y = m_deviceOriginY;
}
#if wxUSE_SPLINES
virtual void DoDrawSpline(wxList *points) = 0;
#endif
protected:
// flags
bool m_colour:1;
bool m_ok:1;
bool m_clipping:1;
bool m_isInteractive:1;
// coordinate system variables
// TODO short descriptions of what exactly they are would be nice...
long m_logicalOriginX, m_logicalOriginY;
long m_deviceOriginX, m_deviceOriginY;
double m_logicalScaleX, m_logicalScaleY;
double m_userScaleX, m_userScaleY;
double m_scaleX, m_scaleY;
// Used by SetAxisOrientation() to invert the axes
int m_signX, m_signY;
// bounding and clipping boxes
long m_minX, m_minY, m_maxX, m_maxY;
long m_clipX1, m_clipY1, m_clipX2, m_clipY2;
int m_logicalFunction;
int m_backgroundMode;
int m_mappingMode;
// GDI objects
wxPen m_pen;
wxBrush m_brush;
wxBrush m_backgroundBrush;
wxColour m_textForegroundColour;
wxColour m_textBackgroundColour;
wxFont m_font;
wxPalette m_palette;
private:
DECLARE_NO_COPY_CLASS(wxDCBase);
};
// ----------------------------------------------------------------------------
// now include the declaration of wxDC class
// ----------------------------------------------------------------------------
#if defined(__WXMSW__)
#include "wx/msw/dc.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/dc.h"
#elif defined(__WXGTK__)
#include "wx/gtk/dc.h"
#elif defined(__WXQT__)
#include "wx/qt/dc.h"
#elif defined(__WXMAC__)
#include "wx/mac/dc.h"
#elif defined(__WXPM__)
#include "wx/os2/dc.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/dc.h"
#endif
#endif
// _WX_DC_H_BASE_

21
include/wx/dcclient.h Normal file
View File

@@ -0,0 +1,21 @@
#ifndef _WX_DCCLIENT_H_BASE_
#define _WX_DCCLIENT_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/dcclient.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/dcclient.h"
#elif defined(__WXGTK__)
#include "wx/gtk/dcclient.h"
#elif defined(__WXQT__)
#include "wx/qt/dcclient.h"
#elif defined(__WXMAC__)
#include "wx/mac/dcclient.h"
#elif defined(__WXPM__)
#include "wx/os2/dcclient.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/dcclient.h"
#endif
#endif
// _WX_DCCLIENT_H_BASE_

21
include/wx/dcmemory.h Normal file
View File

@@ -0,0 +1,21 @@
#ifndef _WX_DCMEMORY_H_BASE_
#define _WX_DCMEMORY_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/dcmemory.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/dcmemory.h"
#elif defined(__WXGTK__)
#include "wx/gtk/dcmemory.h"
#elif defined(__WXQT__)
#include "wx/qt/dcmemory.h"
#elif defined(__WXMAC__)
#include "wx/mac/dcmemory.h"
#elif defined(__WXPM__)
#include "wx/os2/dcmemory.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/dcmemory.h"
#endif
#endif
// _WX_DCMEMORY_H_BASE_

12
include/wx/dcprint.h Normal file
View File

@@ -0,0 +1,12 @@
#ifndef _WX_DCPRINT_H_BASE_
#define _WX_DCPRINT_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/dcprint.h"
#endif
#if defined(__WXPM__)
#include "wx/os2/dcprint.h"
#endif
#endif
// _WX_DCPRINT_H_BASE_

7
include/wx/dcps.h Normal file
View File

@@ -0,0 +1,7 @@
#ifndef _WX_DCPS_H_BASE_
#define _WX_DCPS_H_BASE_
#include "wx/generic/dcpsg.h"
#endif

21
include/wx/dcscreen.h Normal file
View File

@@ -0,0 +1,21 @@
#ifndef _WX_DCSCREEN_H_BASE_
#define _WX_DCSCREEN_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/dcscreen.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/dcscreen.h"
#elif defined(__WXGTK__)
#include "wx/gtk/dcscreen.h"
#elif defined(__WXQT__)
#include "wx/qt/dcscreen.h"
#elif defined(__WXMAC__)
#include "wx/mac/dcscreen.h"
#elif defined(__WXPM__)
#include "wx/os2/dcscreen.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/dcscreen.h"
#endif
#endif
// _WX_DCSCREEN_H_BASE_

21
include/wx/dde.h Normal file
View File

@@ -0,0 +1,21 @@
#ifndef _WX_DDE_H_BASE_
#define _WX_DDE_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/dde.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/dde.h"
#elif defined(__WXGTK__)
#include "wx/gtk/dde.h"
#elif defined(__WXQT__)
#include "wx/qt/dde.h"
#elif defined(__WXMAC__)
#include "wx/mac/dde.h"
#elif defined(__WXPM__)
#include "wx/os2/dde.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/dde.h"
#endif
#endif
// _WX_DDE_H_BASE_

119
include/wx/debug.h Normal file
View File

@@ -0,0 +1,119 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/debug.h
// Purpose: Misc debug functions and macros
// Author: Vadim Zeitlin
// Modified by:
// Created: 29/01/98
// RCS-ID: $Id$
// Copyright: (c) 1998 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DEBUG_H_
#define _WX_DEBUG_H_
#include <assert.h>
#include "wx/wxchar.h"
// ----------------------------------------------------------------------------
/**
@name Debugging macros
All debugging macros rely on ASSERT() which in turn calls user-defined
OnAssert() function. To keep things simple, it's called even when the
expression is TRUE (i.e. everything is ok) and by default does nothing: just
returns the same value back. But if you redefine it to do something more sexy
(popping up a message box in your favourite GUI, sending you e-mail or
whatever) it will affect all ASSERTs, FAILs and CHECKs in your code.
<BR>
<BR>
<b>Warning</b>: if you don't like advices on programming style, don't read
further! ;-)
<BR>
<BR>
Extensive use of these macros is recommended! Remember that ASSERTs are
disabled in final (without __WXDEBUG__ defined) build, so they add strictly
nothing to your program's code. On the other hand, CHECK macros do stay
even in release builds, but in general are not much of a burden, while
a judicious use of them might increase your program's stability.
@memo Debugging macros (replacement for standard assert()) and more.
*/
// ----------------------------------------------------------------------------
//@{
/** @name Macros which are completely disabled in 'release' mode */
//@{
#ifdef __WXDEBUG__
/**
this function may be redefined to do something non trivial and is called
whenever one of debugging macros fails (i.e. condition is false in an
assertion)
@param szFile and nLine - file name and line number of the ASSERT
szMsg - optional message explaining the reason
*/
void WXDLLEXPORT wxOnAssert(const wxChar *szFile, int nLine, const wxChar *szMsg = (const wxChar *) NULL);
/// generic assert macro
#define wxASSERT(cond) if ( !(cond) ) wxOnAssert(__TFILE__, __LINE__)
#if 0 // defined(__BORLANDC__) && defined(__WIN16__)
// Too much text, so make wxASSERT_MSG the same as wxASSERT,
// thus removing the text from the program.
#define wxASSERT_MSG(x, m) if ( !(x) ) wxOnAssert(__TFILE__, __LINE__)
#else
/// assert with additional message explaining it's cause
#define wxASSERT_MSG(x, m) if ( !(x) ) wxOnAssert(__TFILE__, __LINE__, m)
#endif
#else
// nothing to do in release modes (hopefully at this moment there are
// no more bugs ;-)
#define wxASSERT(cond)
#define wxASSERT_MSG(x, m)
#endif //__WXDEBUG__
/// special form of assert: always triggers it (in debug mode)
#define wxFAIL wxASSERT(wxFalse)
#if 0 // defined(__BORLANDC__) && defined(__WIN16__)
// Too much text, so make wxFAIL_MSG the same as wxFAIL,
// thus removing the text from the program.
#define wxFAIL_MSG(msg) wxASSERT(wxFalse)
#else
/// FAIL with some message
#define wxFAIL_MSG(msg) wxASSERT_MSG(wxFalse, msg)
#endif
//@}
// NB: these macros work also in release mode!
/**
These macros must be used only in invalid situation: for example, an
invalid parameter (NULL pointer) is passed to a function. Instead of
dereferencing it and causing core dump the function might try using
CHECK( p != NULL ) or CHECK( p != NULL, return LogError("p is NULL!!") )
@name Macros which remain even in 'release' mode
*/
//@{
/// check that expression is true, "return" if not (also FAILs in debug mode)
#define wxCHECK(x, rc) if (!(x)) {wxFAIL; return rc; }
/// as wxCHECK but with a message explaining why we fail
#define wxCHECK_MSG(x, rc, msg) if (!(x)) {wxFAIL_MSG(msg); return rc; }
/// check that expression is true, perform op if not
#define wxCHECK2(x, op) if (!(x)) {wxFAIL; op; }
/// as wxCHECK2 but with a message explaining why we fail
#define wxCHECK2_MSG(x, op, msg) if (!(x)) {wxFAIL_MSG(msg); op; }
/// special form of wxCHECK2: as wxCHECK, but for use in void functions
// NB: there is only one form (with msg parameter) and it's intentional:
// there is no other way to tell the caller what exactly went wrong
// from the void function (of course, the function shouldn't be void
// to begin with...)
#define wxCHECK_RET(x, msg) if (!(x)) {wxFAIL_MSG(msg); return; }
//@}
//@}
#endif // _WX_DEBUG_H_

1669
include/wx/defs.h Normal file

File diff suppressed because it is too large Load Diff

59
include/wx/dialog.h Normal file
View File

@@ -0,0 +1,59 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/dialog.h
// Purpose: wxDialogBase class
// Author: Vadim Zeitlin
// Modified by:
// Created: 29.06.99
// RCS-ID: $Id$
// Copyright: (c) Vadim Zeitlin
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DIALOG_H_BASE_
#define _WX_DIALOG_H_BASE_
#ifdef __GNUG__
#pragma interface "dialogbase.h"
#endif
#include "wx/defs.h"
#include "wx/panel.h"
class WXDLLEXPORT wxDialogBase : public wxPanel
{
public:
// the modal dialogs have a return code - usually the id of the last
// pressed button
void SetReturnCode(int returnCode) { m_returnCode = returnCode; }
int GetReturnCode() const { return m_returnCode; }
protected:
// splits text up at newlines and places the
// lines into a vertical wxBoxSizer
wxSizer *CreateTextSizer( const wxString &message );
// places buttons into a horizontal wxBoxSizer
wxSizer *CreateButtonSizer( long flags );
// the return code from modal dialog
int m_returnCode;
};
#if defined(__WXMSW__)
#include "wx/msw/dialog.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/dialog.h"
#elif defined(__WXGTK__)
#include "wx/gtk/dialog.h"
#elif defined(__WXQT__)
#include "wx/qt/dialog.h"
#elif defined(__WXMAC__)
#include "wx/mac/dialog.h"
#elif defined(__WXPM__)
#include "wx/os2/dialog.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/dialog.h"
#endif
#endif
// _WX_DIALOG_H_BASE_

189
include/wx/dialup.h Normal file
View File

@@ -0,0 +1,189 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/dialup.h
// Purpose: Network related wxWindows classes and functions
// Author: Vadim Zeitlin
// Modified by:
// Created: 07.07.99
// RCS-ID: $Id$
// Copyright: (c) Vadim Zeitlin
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_NET_H
#define _WX_NET_H
#ifdef __GNUG__
#pragma interface "dialup.h"
#endif
#if wxUSE_DIALUP_MANAGER
// ----------------------------------------------------------------------------
// misc
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxArrayString;
extern const wxChar *wxEmptyString;
#define WXDIALUP_MANAGER_DEFAULT_BEACONHOST wxT("www.yahoo.com")
// ----------------------------------------------------------------------------
// A class which groups functions dealing with connecting to the network from a
// workstation using dial-up access to the net. There is at most one instance
// of this class in the program accessed via GetDialUpManager().
// ----------------------------------------------------------------------------
/* TODO
*
* 1. more configurability for Unix: i.e. how to initiate the connection, how
* to check for online status, &c.
* 2. a function to enumerate all connections (ISPs) and show a dialog in
* Dial() allowing to choose between them if no ISP given
* 3. add an async version of dialing functions which notify the caller about
* the progress (or may be even start another thread to monitor it)
* 4. the static creation/accessor functions are not MT-safe - but is this
* really crucial? I think we may suppose they're always called from the
* main thread?
*/
class WXDLLEXPORT wxDialUpManager
{
public:
// this function should create and return the object of the
// platform-specific class derived from wxDialUpManager. It's implemented
// in the platform-specific source files.
static wxDialUpManager *Create();
// could the dialup manager be initialized correctly? If this function
// returns FALSE, no other functions will work neither, so it's a good idea
// to call this function and check its result before calling any other
// wxDialUpManager methods
virtual bool IsOk() const = 0;
// virtual dtor for any base class
virtual ~wxDialUpManager() { }
// operations
// ----------
// fills the array with the names of all possible values for the first
// parameter to Dial() on this machine and returns their number (may be 0)
virtual size_t GetISPNames(wxArrayString& names) const = 0;
// dial the given ISP, use username and password to authentificate
//
// if no nameOfISP is given, the function will select the default one
//
// if no username/password are given, the function will try to do without
// them, but will ask the user if really needed
//
// if async parameter is FALSE, the function waits until the end of dialing
// and returns TRUE upon successful completion.
// if async is TRUE, the function only initiates the connection and returns
// immediately - the result is reported via events (an event is sent
// anyhow, but if dialing failed it will be a DISCONNECTED one)
virtual bool Dial(const wxString& nameOfISP = wxEmptyString,
const wxString& username = wxEmptyString,
const wxString& password = wxEmptyString,
bool async = TRUE) = 0;
// returns TRUE if (async) dialing is in progress
virtual bool IsDialing() const = 0;
// cancel dialing the number initiated with Dial(async = TRUE)
// NB: this won't result in DISCONNECTED event being sent
virtual bool CancelDialing() = 0;
// hang up the currently active dial up connection
virtual bool HangUp() = 0;
// online status
// -------------
// returns TRUE if the computer has a permanent network connection (i.e. is
// on a LAN) and so there is no need to use Dial() function to go online
//
// NB: this functions tries to guess the result and it is not always
// guaranteed to be correct, so it's better to ask user for
// confirmation or give him a possibility to override it
virtual bool IsAlwaysOnline() const = 0;
// returns TRUE if the computer is connected to the network: under Windows,
// this just means that a RAS connection exists, under Unix we check that
// the "well-known host" (as specified by SetWellKnownHost) is reachable
virtual bool IsOnline() const = 0;
// sometimes the built-in logic for determining the online status may fail,
// so, in general, the user should be allowed to override it. This function
// allows to forcefully set the online status - whatever our internal
// algorithm may think about it.
virtual void SetOnlineStatus(bool isOnline = TRUE) = 0;
// set misc wxDialUpManager options
// --------------------------------
// enable automatical checks for the connection status and sending of
// wxEVT_DIALUP_CONNECTED/wxEVT_DIALUP_DISCONNECTED events. The interval
// parameter is only for Unix where we do the check manually: under
// Windows, the notification about the change of connection status is
// instantenous.
//
// Returns FALSE if couldn't set up automatic check for online status.
virtual bool EnableAutoCheckOnlineStatus(size_t nSeconds = 60) = 0;
// disable automatic check for connection status change - notice that the
// wxEVT_DIALUP_XXX events won't be sent any more neither.
virtual void DisableAutoCheckOnlineStatus() = 0;
// additional Unix-only configuration
// ----------------------------------
// under Unix, the value of well-known host is used to check whether we're
// connected to the internet. It's unused under Windows, but this function
// is always safe to call. The default value is www.yahoo.com.
virtual void SetWellKnownHost(const wxString& hostname,
int portno = 80) = 0;
// Sets the commands to start up the network and to hang up again. Used by
// the Unix implementations only.
virtual void
SetConnectCommand(const wxString& commandDial = wxT("/usr/bin/pon"),
const wxString& commandHangup = wxT("/usr/bin/poff")) = 0;
};
// ----------------------------------------------------------------------------
// DIALUP events processing
// ----------------------------------------------------------------------------
// the event class for the dialup events
class WXDLLEXPORT wxDialUpEvent : public wxEvent
{
public:
wxDialUpEvent(bool isConnected, bool isOwnEvent) : wxEvent(isOwnEvent)
{
SetEventType(isConnected ? wxEVT_DIALUP_CONNECTED
: wxEVT_DIALUP_DISCONNECTED);
}
// is this a CONNECTED or DISCONNECTED event?
bool IsConnectedEvent() const
{ return GetEventType() == wxEVT_DIALUP_CONNECTED; }
// does this event come from wxDialUpManager::Dial() or from some extrenal
// process (i.e. does it result from our own attempt to establish the
// connection)?
bool IsOwnEvent() const { return m_id != 0; }
};
// the type of dialup event handler function
typedef void (wxObject::*wxDialUpEventFunction)(wxDialUpEvent&);
// macros to catch dialup events
#define EVT_DIALUP_CONNECTED(func) { wxEVT_DIALUP_CONNECTED, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxDialUpEventFunction) & func, NULL},
#define EVT_DIALUP_DISCONNECTED(func) { wxEVT_DIALUP_DISCONNECTED, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxDialUpEventFunction) & func, NULL},
#endif // wxUSE_DIALUP_MANAGER
#endif // _WX_NET_H

33
include/wx/dirdlg.h Normal file
View File

@@ -0,0 +1,33 @@
#ifndef _WX_DIRDLG_H_BASE_
#define _WX_DIRDLG_H_BASE_
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
WXDLLEXPORT_DATA(extern const wxChar*) wxDirDialogNameStr;
WXDLLEXPORT_DATA(extern const wxChar*) wxDirDialogDefaultFolderStr;
WXDLLEXPORT_DATA(extern const wxChar*) wxEmptyString;
#if defined(__WXMSW__)
#if defined(__WIN16__) || (defined(__GNUWIN32__)&&!defined(wxUSE_NORLANDER_HEADERS)) || defined(__SALFORDC__)
#include "wx/generic/dirdlgg.h"
#else
#include "wx/msw/dirdlg.h"
#endif
#elif defined(__WXMOTIF__)
#include "wx/generic/dirdlgg.h"
#elif defined(__WXGTK__)
#include "wx/generic/dirdlgg.h"
#elif defined(__WXQT__)
#include "wx/qt/dirdlg.h"
#elif defined(__WXMAC__)
#include "wx/mac/dirdlg.h"
#elif defined(__WXPM__)
#include "wx/os2/dirdlg.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/dirdlg.h"
#endif
#endif
// _WX_DIRDLG_H_BASE_

23
include/wx/dnd.h Normal file
View File

@@ -0,0 +1,23 @@
#ifndef _WX_DND_H_BASE_
#define _WX_DND_H_BASE_
#if defined(__WXMSW__)
#include "wx/dataobj.h"
#include "wx/msw/ole/dropsrc.h"
#include "wx/msw/ole/droptgt.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/dnd.h"
#elif defined(__WXGTK__)
#include "wx/gtk/dnd.h"
#elif defined(__WXQT__)
#include "wx/qt/dnd.h"
#elif defined(__WXMAC__)
#include "wx/mac/dnd.h"
#elif defined(__WXPM__)
#include "wx/os2/dnd.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/dnd.h"
#endif
#endif
// _WX_DND_H_BASE_

90
include/wx/docmdi.h Normal file
View File

@@ -0,0 +1,90 @@
/////////////////////////////////////////////////////////////////////////////
// Name: docmdi.h
// Purpose: Frame classes for MDI document/view applications
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c)
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DOCMDI_H_
#define _WX_DOCMDI_H_
#ifdef __GNUG__
#pragma interface "docmdi.h"
#endif
#include "wx/defs.h"
#if wxUSE_MDI_ARCHITECTURE && wxUSE_DOC_VIEW_ARCHITECTURE
#include "wx/docview.h"
#include "wx/mdi.h"
/*
* Use this instead of wxMDIParentFrame
*/
class WXDLLEXPORT wxDocMDIParentFrame: public wxMDIParentFrame
{
DECLARE_CLASS(wxDocMDIParentFrame)
public:
wxDocMDIParentFrame(wxDocManager *manager, wxFrame *parent, wxWindowID id,
const wxString& title, const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE, const wxString& name = "frame");
// Extend event processing to search the document manager's event table
virtual bool ProcessEvent(wxEvent& event);
wxDocManager *GetDocumentManager(void) const { return m_docManager; }
void OnExit(wxCommandEvent& event);
void OnMRUFile(wxCommandEvent& event);
void OnCloseWindow(wxCloseEvent& event);
protected:
wxDocManager *m_docManager;
DECLARE_EVENT_TABLE()
};
/*
* Use this instead of wxMDIChildFrame
*/
class WXDLLEXPORT wxDocMDIChildFrame: public wxMDIChildFrame
{
DECLARE_CLASS(wxDocMDIChildFrame)
public:
wxDocMDIChildFrame(wxDocument *doc, wxView *view, wxMDIParentFrame *frame, wxWindowID id,
const wxString& title, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
long type = wxDEFAULT_FRAME_STYLE, const wxString& name = "frame");
~wxDocMDIChildFrame(void);
// Extend event processing to search the view's event table
virtual bool ProcessEvent(wxEvent& event);
void OnActivate(wxActivateEvent& event);
void OnCloseWindow(wxCloseEvent& event);
inline wxDocument *GetDocument(void) const { return m_childDocument; }
inline wxView *GetView(void) const { return m_childView; }
inline void SetDocument(wxDocument *doc) { m_childDocument = doc; }
inline void SetView(wxView *view) { m_childView = view; }
protected:
wxDocument* m_childDocument;
wxView* m_childView;
DECLARE_EVENT_TABLE()
};
#endif
// wxUSE_MDI_ARCHITECTURE
#endif
// _WX_DOCMDI_H_

599
include/wx/docview.h Normal file
View File

@@ -0,0 +1,599 @@
/////////////////////////////////////////////////////////////////////////////
// Name: docview.h
// Purpose: Doc/View classes
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c)
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DOCH__
#define _WX_DOCH__
#ifdef __GNUG__
#pragma interface "docview.h"
#endif
#include "wx/defs.h"
#include "wx/list.h"
#include "wx/cmndata.h"
#include "wx/string.h"
#if wxUSE_PRINTING_ARCHITECTURE
#include "wx/print.h"
#endif
class WXDLLEXPORT wxWindow;
class WXDLLEXPORT wxDocument;
class WXDLLEXPORT wxView;
class WXDLLEXPORT wxDocTemplate;
class WXDLLEXPORT wxDocManager;
class WXDLLEXPORT wxPrintInfo;
class WXDLLEXPORT wxCommand;
class WXDLLEXPORT wxCommandProcessor;
class WXDLLEXPORT wxFileHistory;
class WXDLLEXPORT wxConfigBase;
#if wxUSE_STD_IOSTREAM
#include "wx/ioswrap.h"
#else
#include "wx/stream.h"
#endif
// Document manager flags
enum
{
wxDOC_SDI = 1,
wxDOC_MDI,
wxDOC_NEW,
wxDOC_SILENT,
wxDEFAULT_DOCMAN_FLAGS = wxDOC_SDI
};
// Document template flags
enum
{
wxTEMPLATE_VISIBLE = 1,
wxTEMPLATE_INVISIBLE,
wxDEFAULT_TEMPLATE_FLAGS = wxTEMPLATE_VISIBLE
};
#define wxMAX_FILE_HISTORY 9
class WXDLLEXPORT wxDocument : public wxEvtHandler
{
DECLARE_ABSTRACT_CLASS(wxDocument)
public:
wxDocument(wxDocument *parent = (wxDocument *) NULL);
~wxDocument();
// accessors
void SetFilename(const wxString& filename, bool notifyViews = FALSE);
wxString GetFilename() const { return m_documentFile; }
void SetTitle(const wxString& title) { m_documentTitle = title; };
wxString GetTitle() const { return m_documentTitle; }
void SetDocumentName(const wxString& name) { m_documentTypeName = name; };
wxString GetDocumentName() const { return m_documentTypeName; }
bool GetDocumentSaved() const { return m_savedYet; }
void SetDocumentSaved(bool saved = TRUE) { m_savedYet = saved; }
virtual bool Close();
virtual bool Save();
virtual bool SaveAs();
virtual bool Revert();
#if wxUSE_STD_IOSTREAM
virtual ostream& SaveObject(ostream& stream);
virtual istream& LoadObject(istream& stream);
#else
virtual wxOutputStream& SaveObject(wxOutputStream& stream);
virtual wxInputStream& LoadObject(wxInputStream& stream);
#endif
#if wxUSE_SERIAL
// need this to keep from hiding the virtual from wxObject
virtual void LoadObject(wxObjectInputStream& stream) { wxObject::LoadObject(stream); };
#endif
// Called by wxWindows
virtual bool OnSaveDocument(const wxString& filename);
virtual bool OnOpenDocument(const wxString& filename);
virtual bool OnNewDocument();
virtual bool OnCloseDocument();
// Prompts for saving if about to close a modified document. Returns TRUE
// if ok to close the document (may have saved in the meantime, or set
// modified to FALSE)
virtual bool OnSaveModified();
// Called by framework if created automatically by the default document
// manager: gives document a chance to initialise and (usually) create a
// view
virtual bool OnCreate(const wxString& path, long flags);
// By default, creates a base wxCommandProcessor.
virtual wxCommandProcessor *OnCreateCommandProcessor();
virtual wxCommandProcessor *GetCommandProcessor() const { return m_commandProcessor; }
virtual void SetCommandProcessor(wxCommandProcessor *proc) { m_commandProcessor = proc; }
// Called after a view is added or removed. The default implementation
// deletes the document if this is there are no more views.
virtual void OnChangedViewList();
virtual bool DeleteContents();
virtual bool Draw(wxDC&);
virtual bool IsModified() const { return m_documentModified; }
virtual void Modify(bool mod) { m_documentModified = mod; }
virtual bool AddView(wxView *view);
virtual bool RemoveView(wxView *view);
wxList& GetViews() const { return (wxList&) m_documentViews; }
wxView *GetFirstView() const;
virtual void UpdateAllViews(wxView *sender = (wxView *) NULL, wxObject *hint = (wxObject *) NULL);
// Remove all views (because we're closing the document)
virtual bool DeleteAllViews();
// Other stuff
virtual wxDocManager *GetDocumentManager() const;
virtual wxDocTemplate *GetDocumentTemplate() const { return m_documentTemplate; }
virtual void SetDocumentTemplate(wxDocTemplate *temp) { m_documentTemplate = temp; }
// Get title, or filename if no title, else [unnamed]
virtual bool GetPrintableName(wxString& buf) const;
// Returns a window that can be used as a parent for document-related
// dialogs. Override if necessary.
virtual wxWindow *GetDocumentWindow() const;
protected:
wxList m_documentViews;
wxString m_documentFile;
wxString m_documentTitle;
wxString m_documentTypeName;
wxDocTemplate* m_documentTemplate;
bool m_documentModified;
wxDocument* m_documentParent;
wxCommandProcessor* m_commandProcessor;
bool m_savedYet;
};
class WXDLLEXPORT wxView: public wxEvtHandler
{
DECLARE_ABSTRACT_CLASS(wxView)
public:
// wxView(wxDocument *doc = (wxDocument *) NULL);
wxView();
~wxView();
wxDocument *GetDocument() const { return m_viewDocument; }
void SetDocument(wxDocument *doc);
wxString GetViewName() const { return m_viewTypeName; }
void SetViewName(const wxString& name) { m_viewTypeName = name; };
wxFrame *GetFrame() const { return m_viewFrame ; }
void SetFrame(wxFrame *frame) { m_viewFrame = frame; }
virtual void OnActivateView(bool activate, wxView *activeView, wxView *deactiveView);
virtual void OnDraw(wxDC *dc) = 0;
virtual void OnPrint(wxDC *dc, wxObject *info);
virtual void OnUpdate(wxView *sender, wxObject *hint = (wxObject *) NULL);
virtual void OnChangeFilename();
// Called by framework if created automatically by the default document
// manager class: gives view a chance to initialise
virtual bool OnCreate(wxDocument *WXUNUSED(doc), long WXUNUSED(flags)) { return TRUE; };
// Checks if the view is the last one for the document; if so, asks user
// to confirm save data (if modified). If ok, deletes itself and returns
// TRUE.
virtual bool Close(bool deleteWindow = TRUE);
// Override to do cleanup/veto close
virtual bool OnClose(bool deleteWindow);
#if WXWIN_COMPATIBILITY
// Defeat compiler warning
bool OnClose() { return wxEvtHandler::OnClose(); }
#endif
// Extend event processing to search the document's event table
virtual bool ProcessEvent(wxEvent& event);
// A view's window can call this to notify the view it is (in)active.
// The function then notifies the document manager.
virtual void Activate(bool activate);
wxDocManager *GetDocumentManager() const
{ return m_viewDocument->GetDocumentManager(); }
#if wxUSE_PRINTING_ARCHITECTURE
virtual wxPrintout *OnCreatePrintout();
#endif
protected:
wxDocument* m_viewDocument;
wxString m_viewTypeName;
wxFrame* m_viewFrame;
};
// Represents user interface (and other) properties of documents and views
class WXDLLEXPORT wxDocTemplate: public wxObject
{
DECLARE_CLASS(wxDocTemplate)
friend class WXDLLEXPORT wxDocManager;
public:
// Associate document and view types. They're for identifying what view is
// associated with what template/document type
wxDocTemplate(wxDocManager *manager,
const wxString& descr,
const wxString& filter,
const wxString& dir,
const wxString& ext,
const wxString& docTypeName,
const wxString& viewTypeName,
wxClassInfo *docClassInfo = (wxClassInfo *) NULL,
wxClassInfo *viewClassInfo = (wxClassInfo *)NULL,
long flags = wxDEFAULT_TEMPLATE_FLAGS);
~wxDocTemplate();
// By default, these two member functions dynamically creates document and
// view using dynamic instance construction. Override these if you need a
// different method of construction.
virtual wxDocument *CreateDocument(const wxString& path, long flags = 0);
virtual wxView *CreateView(wxDocument *doc, long flags = 0);
wxString GetDefaultExtension() const { return m_defaultExt; };
wxString GetDescription() const { return m_description; }
wxString GetDirectory() const { return m_directory; };
wxDocManager *GetDocumentManager() const { return m_documentManager; }
void SetDocumentManager(wxDocManager *manager) { m_documentManager = manager; }
wxString GetFileFilter() const { return m_fileFilter; };
long GetFlags() const { return m_flags; };
virtual wxString GetViewName() const { return m_viewTypeName; }
virtual wxString GetDocumentName() const { return m_docTypeName; }
void SetFileFilter(const wxString& filter) { m_fileFilter = filter; };
void SetDirectory(const wxString& dir) { m_directory = dir; };
void SetDescription(const wxString& descr) { m_description = descr; };
void SetDefaultExtension(const wxString& ext) { m_defaultExt = ext; };
void SetFlags(long flags) { m_flags = flags; };
bool IsVisible() const { return ((m_flags & wxTEMPLATE_VISIBLE) == wxTEMPLATE_VISIBLE); }
virtual bool FileMatchesTemplate(const wxString& path);
protected:
long m_flags;
wxString m_fileFilter;
wxString m_directory;
wxString m_description;
wxString m_defaultExt;
wxString m_docTypeName;
wxString m_viewTypeName;
wxDocManager* m_documentManager;
// For dynamic creation of appropriate instances.
wxClassInfo* m_docClassInfo;
wxClassInfo* m_viewClassInfo;
};
// One object of this class may be created in an application, to manage all
// the templates and documents.
class WXDLLEXPORT wxDocManager: public wxEvtHandler
{
DECLARE_DYNAMIC_CLASS(wxDocManager)
public:
wxDocManager(long flags = wxDEFAULT_DOCMAN_FLAGS, bool initialize = TRUE);
~wxDocManager();
virtual bool Initialize();
// Handlers for common user commands
void OnFileClose(wxCommandEvent& event);
void OnFileNew(wxCommandEvent& event);
void OnFileOpen(wxCommandEvent& event);
void OnFileRevert(wxCommandEvent& event);
void OnFileSave(wxCommandEvent& event);
void OnFileSaveAs(wxCommandEvent& event);
void OnPrint(wxCommandEvent& event);
void OnPrintSetup(wxCommandEvent& event);
void OnPreview(wxCommandEvent& event);
void OnUndo(wxCommandEvent& event);
void OnRedo(wxCommandEvent& event);
// Extend event processing to search the view's event table
virtual bool ProcessEvent(wxEvent& event);
virtual wxDocument *CreateDocument(const wxString& path, long flags = 0);
virtual wxView *CreateView(wxDocument *doc, long flags = 0);
virtual void DeleteTemplate(wxDocTemplate *temp, long flags = 0);
virtual bool FlushDoc(wxDocument *doc);
virtual wxDocTemplate *MatchTemplate(const wxString& path);
virtual wxDocTemplate *SelectDocumentPath(wxDocTemplate **templates,
int noTemplates, wxString& path, long flags, bool save = FALSE);
virtual wxDocTemplate *SelectDocumentType(wxDocTemplate **templates,
int noTemplates);
virtual wxDocTemplate *SelectViewType(wxDocTemplate **templates,
int noTemplates);
virtual wxDocTemplate *FindTemplateForPath(const wxString& path);
void AssociateTemplate(wxDocTemplate *temp);
void DisassociateTemplate(wxDocTemplate *temp);
wxDocument *GetCurrentDocument() const;
void SetMaxDocsOpen(int n) { m_maxDocsOpen = n; }
int GetMaxDocsOpen() const { return m_maxDocsOpen; }
// Add and remove a document from the manager's list
void AddDocument(wxDocument *doc);
void RemoveDocument(wxDocument *doc);
// Clear remaining documents and templates
bool Clear(bool force = TRUE);
// Views or windows should inform the document manager
// when a view is going in or out of focus
virtual void ActivateView(wxView *view, bool activate = TRUE, bool deleting = FALSE);
virtual wxView *GetCurrentView() const;
virtual wxList& GetDocuments() const { return (wxList&) m_docs; }
// Make a default document name
virtual bool MakeDefaultName(wxString& buf);
virtual wxFileHistory *OnCreateFileHistory();
virtual wxFileHistory *GetFileHistory() const { return m_fileHistory; }
// File history management
virtual void AddFileToHistory(const wxString& file);
virtual void RemoveFileFromHistory(int i);
virtual int GetNoHistoryFiles() const;
virtual wxString GetHistoryFile(int i) const;
virtual void FileHistoryUseMenu(wxMenu *menu);
virtual void FileHistoryRemoveMenu(wxMenu *menu);
#if wxUSE_CONFIG
virtual void FileHistoryLoad(wxConfigBase& config);
virtual void FileHistorySave(wxConfigBase& config);
#endif // wxUSE_CONFIG
virtual void FileHistoryAddFilesToMenu();
virtual void FileHistoryAddFilesToMenu(wxMenu* menu);
protected:
long m_flags;
int m_defaultDocumentNameCounter;
int m_maxDocsOpen;
wxList m_docs;
wxList m_templates;
wxView* m_currentView;
wxFileHistory* m_fileHistory;
DECLARE_EVENT_TABLE()
};
// ----------------------------------------------------------------------------
// A default child frame
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxDocChildFrame : public wxFrame
{
DECLARE_CLASS(wxDocChildFrame)
public:
wxDocChildFrame(wxDocument *doc,
wxView *view,
wxFrame *frame,
wxWindowID id,
const wxString& title,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long type = wxDEFAULT_FRAME_STYLE,
const wxString& name = "frame");
~wxDocChildFrame();
// Extend event processing to search the view's event table
virtual bool ProcessEvent(wxEvent& event);
void OnActivate(wxActivateEvent& event);
void OnCloseWindow(wxCloseEvent& event);
wxDocument *GetDocument() const { return m_childDocument; }
wxView *GetView() const { return m_childView; }
void SetDocument(wxDocument *doc) { m_childDocument = doc; }
void SetView(wxView *view) { m_childView = view; }
protected:
wxDocument* m_childDocument;
wxView* m_childView;
DECLARE_EVENT_TABLE()
};
// ----------------------------------------------------------------------------
// A default parent frame
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxDocParentFrame : public wxFrame
{
DECLARE_CLASS(wxDocParentFrame)
public:
wxDocParentFrame(wxDocManager *manager,
wxFrame *frame,
wxWindowID id,
const wxString& title,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long type = wxDEFAULT_FRAME_STYLE,
const wxString& name = "frame");
// Extend event processing to search the document manager's event table
virtual bool ProcessEvent(wxEvent& event);
wxDocManager *GetDocumentManager() const { return m_docManager; }
void OnExit(wxCommandEvent& event);
void OnMRUFile(wxCommandEvent& event);
void OnCloseWindow(wxCloseEvent& event);
protected:
wxDocManager *m_docManager;
DECLARE_EVENT_TABLE()
};
// ----------------------------------------------------------------------------
// Provide simple default printing facilities
// ----------------------------------------------------------------------------
#if wxUSE_PRINTING_ARCHITECTURE
class WXDLLEXPORT wxDocPrintout : public wxPrintout
{
DECLARE_DYNAMIC_CLASS(wxDocPrintout)
public:
wxDocPrintout(wxView *view = (wxView *) NULL, const wxString& title = "Printout");
bool OnPrintPage(int page);
bool HasPage(int page);
bool OnBeginDocument(int startPage, int endPage);
void GetPageInfo(int *minPage, int *maxPage, int *selPageFrom, int *selPageTo);
virtual wxView *GetView() { return m_printoutView; }
protected:
wxView* m_printoutView;
};
#endif // wxUSE_PRINTING_ARCHITECTURE
// ----------------------------------------------------------------------------
// Command processing framework
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxCommand : public wxObject
{
DECLARE_CLASS(wxCommand)
public:
wxCommand(bool canUndoIt = FALSE, const wxString& name = "");
~wxCommand();
// Override this to perform a command
virtual bool Do() = 0;
// Override this to undo a command
virtual bool Undo() = 0;
virtual bool CanUndo() const { return m_canUndo; }
virtual wxString GetName() const { return m_commandName; }
protected:
bool m_canUndo;
wxString m_commandName;
};
class WXDLLEXPORT wxCommandProcessor : public wxObject
{
DECLARE_DYNAMIC_CLASS(wxCommandProcessor)
public:
wxCommandProcessor(int maxCommands = 100);
~wxCommandProcessor();
// Pass a command to the processor. The processor calls Do(); if
// successful, is appended to the command history unless storeIt is FALSE.
virtual bool Submit(wxCommand *command, bool storeIt = TRUE);
virtual bool Undo();
virtual bool Redo();
virtual bool CanUndo() const;
virtual bool CanRedo() const;
// Call this to manage an edit menu.
void SetEditMenu(wxMenu *menu) { m_commandEditMenu = menu; }
wxMenu *GetEditMenu() const { return m_commandEditMenu; }
virtual void SetMenuStrings();
virtual void Initialize();
wxList& GetCommands() const { return (wxList&) m_commands; }
int GetMaxCommands() const { return m_maxNoCommands; }
virtual void ClearCommands();
protected:
int m_maxNoCommands;
wxList m_commands;
wxNode* m_currentCommand;
wxMenu* m_commandEditMenu;
};
// ----------------------------------------------------------------------------
// File history management
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxFileHistory : public wxObject
{
DECLARE_DYNAMIC_CLASS(wxFileHistory)
public:
wxFileHistory(int maxFiles = 9);
~wxFileHistory();
// Operations
virtual void AddFileToHistory(const wxString& file);
virtual void RemoveFileFromHistory(int i);
virtual int GetMaxFiles() const { return m_fileMaxFiles; }
virtual void UseMenu(wxMenu *menu);
// Remove menu from the list (MDI child may be closing)
virtual void RemoveMenu(wxMenu *menu);
#if wxUSE_CONFIG
virtual void Load(wxConfigBase& config);
virtual void Save(wxConfigBase& config);
#endif // wxUSE_CONFIG
virtual void AddFilesToMenu();
virtual void AddFilesToMenu(wxMenu* menu); // Single menu
// Accessors
virtual wxString GetHistoryFile(int i) const;
// A synonym for GetNoHistoryFiles
virtual int GetCount() const { return m_fileHistoryN; }
int GetNoHistoryFiles() const { return m_fileHistoryN; }
wxList& GetMenus() const { return (wxList&) m_fileMenus; }
protected:
// Last n files
wxChar** m_fileHistory;
// Number of files saved
int m_fileHistoryN;
// Menus to maintain (may need several for an MDI app)
wxList m_fileMenus;
// Max files to maintain
int m_fileMaxFiles;
};
#if wxUSE_STD_IOSTREAM
// For compatibility with existing file formats:
// converts from/to a stream to/from a temporary file.
bool WXDLLEXPORT wxTransferFileToStream(const wxString& filename, ostream& stream);
bool WXDLLEXPORT wxTransferStreamToFile(istream& stream, const wxString& filename);
#endif
#endif // _WX_DOCH__

25
include/wx/dragimag.h Normal file
View File

@@ -0,0 +1,25 @@
#ifndef _WX_DRAGIMAG_H_BASE_
#define _WX_DRAGIMAG_H_BASE_
#if defined(__WXMSW__)
#ifdef __WIN16__
#include "wx/generic/dragimag.h"
#else
#include "wx/msw/dragimag.h"
#endif
#elif defined(__WXMOTIF__)
#include "wx/generic/dragimag.h"
#elif defined(__WXGTK__)
#include "wx/generic/dragimag.h"
#elif defined(__WXQT__)
#include "wx/generic/dragimag.h"
#elif defined(__WXMAC__)
#include "wx/generic/dragimag.h"
#elif defined(__WXPM__)
#include "wx/generic/dragimag.h"
#elif defined(__WXSTUBS__)
#include "wx/generic/dragimag.h"
#endif
#endif
// _WX_DRAGIMAG_H_BASE_

466
include/wx/dynarray.h Normal file
View File

@@ -0,0 +1,466 @@
///////////////////////////////////////////////////////////////////////////////
// Name: dynarray.h
// Purpose: auto-resizable (i.e. dynamic) array support
// Author: Vadim Zeitlin
// Modified by:
// Created: 12.09.97
// RCS-ID: $Id$
// Copyright: (c) 1998 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
// Licence: wxWindows license
///////////////////////////////////////////////////////////////////////////////
#ifndef _DYNARRAY_H
#define _DYNARRAY_H
#ifdef __GNUG__
#pragma interface "dynarray.h"
#endif
#include "wx/defs.h"
#include "wx/debug.h"
/** @name Dynamic arrays and object arrays (array which own their elements)
@memo Arrays which grow on demand and do range checking (only in debug)
*/
//@{
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
/**
the initial size by which an array grows when an element is added
default value avoids allocate one or two bytes when the array is created
which is rather inefficient
*/
#define WX_ARRAY_DEFAULT_INITIAL_SIZE (16)
// ----------------------------------------------------------------------------
// types
// ----------------------------------------------------------------------------
/**
callback compare function for quick sort
must return negative value, 0 or positive value if pItem1 <, = or > pItem2
*/
typedef int (wxCMPFUNC_CONV *CMPFUNC)(const void* pItem1, const void* pItem2);
// ----------------------------------------------------------------------------
/**
base class managing data having size of type 'long' (not used directly)
NB: for efficiency this often used class has no virtual functions (hence no
VTBL), even dtor is <B>not</B> virtual. If used as expected it won't
create any problems because ARRAYs from DEFINE_ARRAY have no dtor at all,
so it's not too important if it's not called (this happens when you cast
"SomeArray *" as "BaseArray *" and then delete it)
@memo Base class for template array classes
*/
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxBaseArray
{
public:
/** @name ctors and dtor */
//@{
/// default ctor
wxBaseArray();
/// copy ctor
wxBaseArray(const wxBaseArray& array);
/// assignment operator
wxBaseArray& operator=(const wxBaseArray& src);
/// not virtual, see above
/// EXCEPT for Gnu compiler to reduce warnings...
#ifdef __GNUG__
virtual
#endif
~wxBaseArray();
//@}
/** @name memory management */
//@{
/// empties the array, but doesn't release memory
void Empty() { m_nCount = 0; }
/// empties the array and releases memory
void Clear();
/// preallocates memory for given number of items
void Alloc(size_t uiSize);
/// minimizes the memory used by the array (frees unused memory)
void Shrink();
//@}
/** @name simple accessors */
//@{
/// number of elements in the array
size_t Count() const { return m_nCount; }
size_t GetCount() const { return m_nCount; }
/// is it empty?
bool IsEmpty() const { return m_nCount == 0; }
//@}
protected:
// these methods are protected because if they were public one could
// mistakenly call one of them instead of DEFINE_ARRAY's or OBJARRAY's
// type safe methods
/** @name items access */
//@{
/// get item at position uiIndex (range checking is done in debug version)
long& Item(size_t uiIndex) const
{ wxASSERT( uiIndex < m_nCount ); return m_pItems[uiIndex]; }
/// same as Item()
long& operator[](size_t uiIndex) const { return Item(uiIndex); }
//@}
/** @name item management */
//@{
/**
Search the element in the array, starting from the either side
@param bFromEnd if TRUE, start from the end
@return index of the first item matched or wxNOT_FOUND
@see wxNOT_FOUND
*/
int Index(long lItem, bool bFromEnd = FALSE) const;
/// search for an item using binary search in a sorted array
int Index(long lItem, CMPFUNC fnCompare) const;
/// add new element at the end
void Add(long lItem);
/// add item assuming the array is sorted with fnCompare function
void Add(long lItem, CMPFUNC fnCompare);
/// add new element at given position (it becomes Item[uiIndex])
void Insert(long lItem, size_t uiIndex);
/// remove first item matching this value
void Remove(long lItem);
/// remove item by index
void Remove(size_t uiIndex);
//@}
/// sort array elements using given compare function
void Sort(CMPFUNC fnCompare);
private:
void Grow(); // makes array bigger if needed
size_t m_nSize, // current size of the array
m_nCount; // current number of elements
long *m_pItems; // pointer to data
};
// ============================================================================
// template classes
// ============================================================================
// resolves the name conflict between the wxT() macor and T typedef: we can't
// use wxT() inside WX_DEFINE_ARRAY!
#define _WX_ERROR_SIZEOF wxT("illegal use of DEFINE_ARRAY")
#define _WX_ERROR_REMOVE wxT("removing inexisting element in wxArray::Remove")
// ----------------------------------------------------------------------------
// This macro generates a new array class. It is intended for storage of simple
// types of sizeof()<=sizeof(long) or pointers if sizeof(pointer)<=sizeof(long)
//
// NB: it has only inline functions => takes no space at all
// Mod by JACS: Salford C++ doesn't like 'var->operator=' syntax, as in:
// { ((wxBaseArray *)this)->operator=((const wxBaseArray&)src);
// so using a temporary variable instead.
// ----------------------------------------------------------------------------
#define _WX_DEFINE_ARRAY(T, name, classexp) \
typedef int (CMPFUNC_CONV *CMPFUNC##T)(T *pItem1, T *pItem2); \
classexp name : public wxBaseArray \
{ \
public: \
name() \
{ \
size_t type = sizeof(T); \
size_t sizelong = sizeof(long); \
if ( type > sizelong ) \
{ wxFAIL_MSG( _WX_ERROR_SIZEOF ); } \
} \
\
name& operator=(const name& src) \
{ wxBaseArray* temp = (wxBaseArray*) this; \
(*temp) = ((const wxBaseArray&)src); \
return *this; } \
\
T& operator[](size_t uiIndex) const \
{ return (T&)(wxBaseArray::Item(uiIndex)); } \
T& Item(size_t uiIndex) const \
{ return (T&)(wxBaseArray::Item(uiIndex)); } \
T& Last() const \
{ return (T&)(wxBaseArray::Item(Count() - 1)); } \
\
int Index(T Item, bool bFromEnd = FALSE) const \
{ return wxBaseArray::Index((long)Item, bFromEnd); } \
\
void Add(T Item) \
{ wxBaseArray::Add((long)Item); } \
void Insert(T Item, size_t uiIndex) \
{ wxBaseArray::Insert((long)Item, uiIndex) ; } \
\
void Remove(size_t uiIndex) { wxBaseArray::Remove(uiIndex); } \
void Remove(T Item) \
{ int iIndex = Index(Item); \
wxCHECK2_MSG( iIndex != wxNOT_FOUND, return, \
_WX_ERROR_REMOVE); \
wxBaseArray::Remove((size_t)iIndex); } \
\
void Sort(CMPFUNC##T fCmp) { wxBaseArray::Sort((CMPFUNC)fCmp); } \
}
// ----------------------------------------------------------------------------
// This is the same as the previous macro, but it defines a sorted array.
// Differences:
// 1) it must be given a COMPARE function in ctor which takes 2 items of type
// T* and should return -1, 0 or +1 if the first one is less/greater
// than/equal to the second one.
// 2) the Add() method inserts the item in such was that the array is always
// sorted (it uses the COMPARE function)
// 3) it has no Sort() method because it's always sorted
// 4) Index() method is much faster (the sorted arrays use binary search
// instead of linear one), but Add() is slower.
//
// Summary: use this class when the speed of Index() function is important, use
// the normal arrays otherwise.
//
// NB: it has only inline functions => takes no space at all
// Mod by JACS: Salford C++ doesn't like 'var->operator=' syntax, as in:
// { ((wxBaseArray *)this)->operator=((const wxBaseArray&)src);
// so using a temporary variable instead.
// ----------------------------------------------------------------------------
#define _WX_DEFINE_SORTED_ARRAY(T, name, classexp) \
typedef int (CMPFUNC_CONV *SCMPFUNC##T)(T pItem1, T pItem2); \
classexp name : public wxBaseArray \
{ \
public: \
name(SCMPFUNC##T fn) \
{ size_t type = sizeof(T); \
size_t sizelong = sizeof(long); \
if ( type > sizelong ) \
{ wxFAIL_MSG( _WX_ERROR_SIZEOF ); } \
m_fnCompare = fn; \
} \
\
name& operator=(const name& src) \
{ wxBaseArray* temp = (wxBaseArray*) this; \
(*temp) = ((const wxBaseArray&)src); \
m_fnCompare = src.m_fnCompare; \
return *this; } \
\
T& operator[](size_t uiIndex) const \
{ return (T&)(wxBaseArray::Item(uiIndex)); } \
T& Item(size_t uiIndex) const \
{ return (T&)(wxBaseArray::Item(uiIndex)); } \
T& Last() const \
{ return (T&)(wxBaseArray::Item(Count() - 1)); } \
\
int Index(T Item) const \
{ return wxBaseArray::Index((long)Item, (CMPFUNC)m_fnCompare); }\
\
void Add(T Item) \
{ wxBaseArray::Add((long)Item, (CMPFUNC)m_fnCompare); } \
\
void Remove(size_t uiIndex) { wxBaseArray::Remove(uiIndex); } \
void Remove(T Item) \
{ int iIndex = Index(Item); \
wxCHECK2_MSG( iIndex != wxNOT_FOUND, return, \
_WX_ERROR_REMOVE ); \
wxBaseArray::Remove((size_t)iIndex); } \
\
private: \
SCMPFUNC##T m_fnCompare; \
}
// ----------------------------------------------------------------------------
// see WX_DECLARE_OBJARRAY and WX_DEFINE_OBJARRAY
// ----------------------------------------------------------------------------
#define _WX_DECLARE_OBJARRAY(T, name, classexp) \
typedef int (CMPFUNC_CONV *CMPFUNC##T)(T** pItem1, T** pItem2); \
classexp name : public wxBaseArray \
{ \
public: \
name() { } \
name(const name& src); \
name& operator=(const name& src); \
\
~name(); \
\
T& operator[](size_t uiIndex) const \
{ return *(T*)wxBaseArray::Item(uiIndex); } \
T& Item(size_t uiIndex) const \
{ return *(T*)wxBaseArray::Item(uiIndex); } \
T& Last() const \
{ return *(T*)(wxBaseArray::Item(Count() - 1)); } \
\
int Index(const T& Item, bool bFromEnd = FALSE) const; \
\
void Add(const T& Item); \
void Add(const T* pItem) \
{ wxBaseArray::Add((long)pItem); } \
\
void Insert(const T& Item, size_t uiIndex); \
void Insert(const T* pItem, size_t uiIndex) \
{ wxBaseArray::Insert((long)pItem, uiIndex); } \
\
void Empty(); \
\
T* Detach(size_t uiIndex) \
{ T* p = (T*)wxBaseArray::Item(uiIndex); \
wxBaseArray::Remove(uiIndex); return p; } \
void Remove(size_t uiIndex); \
\
void Sort(CMPFUNC##T fCmp) { wxBaseArray::Sort((CMPFUNC)fCmp); } \
\
private: \
void DoCopy(const name& src); \
}
// ----------------------------------------------------------------------------
/** @name Macros for definition of dynamic arrays and objarrays
These macros are ugly (especially if you look in the sources ;-), but they
allow us to define 'template' classes without actually using templates.
<BR>
<BR>
Range checking is performed in debug build for both arrays and objarrays.
Type checking is done at compile-time. Warning: arrays <I>never</I> shrink,
they only grow, so loading 10 millions in an array only to delete them 2
lines below is <I>not</I> recommended. However, it does free memory when
it's destroyed, so if you destroy array also, it's ok.
*/
// ----------------------------------------------------------------------------
//@{
/**
This macro generates a new array class. It is intended for storage of simple
types of sizeof()<=sizeof(long) or pointers if sizeof(pointer)<=sizeof(long)
<BR>
NB: it has only inline functions => takes no space at all
<BR>
@memo declare and define array class 'name' containing elements of type 'T'
*/
#define WX_DEFINE_ARRAY(T, name) \
typedef T _A##name; \
_WX_DEFINE_ARRAY(_A##name, name, class)
/**
This macro does the same as WX_DEFINE_ARRAY except that the array will be
sorted with the specified compare function.
*/
#define WX_DEFINE_SORTED_ARRAY(T, name) \
typedef T _A##name; \
_WX_DEFINE_SORTED_ARRAY(_A##name, name, class)
/**
This macro generates a new objarrays class which owns the objects it
contains, i.e. it will delete them when it is destroyed. An element is of
type T*, but arguments of type T& are taken (see below!) and T& is
returned. <BR>
Don't use this for simple types such as "int" or "long"!
You _may_ use it for "double" but it's awfully inefficient.
<BR>
<BR>
Note on Add/Insert functions:
<BR>
1) function(T*) gives the object to the array, i.e. it will delete the
object when it's removed or in the array's dtor
<BR>
2) function(T&) will create a copy of the object and work with it
<BR>
<BR>
Also:
<BR>
1) Remove() will delete the object after removing it from the array
<BR>
2) Detach() just removes the object from the array (returning pointer to it)
<BR>
<BR>
NB1: Base type T should have an accessible copy ctor if Add(T&) is used,
<BR>
NB2: Never ever cast a array to it's base type: as dtor is <B>not</B> virtual
it will provoke memory leaks
<BR>
<BR>
some functions of this class are not inline, so it takes some space to
define new class from this template.
@memo declare objarray class 'name' containing elements of type 'T'
*/
#define WX_DECLARE_OBJARRAY(T, name) \
typedef T _L##name; \
_WX_DECLARE_OBJARRAY(_L##name, name, class)
/**
To use an objarray class you must
<ll>
<li>#include "dynarray.h"
<li>WX_DECLARE_OBJARRAY(element_type, list_class_name)
<li>#include "arrimpl.cpp"
<li>WX_DEFINE_OBJARRAY(list_class_name) // same as above!
</ll>
<BR><BR>
This is necessary because at the moment of DEFINE_OBJARRAY class
element_type must be fully defined (i.e. forward declaration is not
enough), while WX_DECLARE_OBJARRAY may be done anywhere. The separation of
two allows to break cicrcular dependencies with classes which have member
variables of objarray type.
@memo define (must include arrimpl.cpp!) objarray class 'name'
*/
#define WX_DEFINE_OBJARRAY(name) "don't forget to include arrimpl.cpp!"
//@}
// these macros do the same thing as the WX_XXX ones above, but should be used
// inside the library for user visible classes because otherwise they wouldn't
// be visible from outside (when using wxWindows as DLL under Windows)
#define WX_DEFINE_EXPORTED_ARRAY(T, name) \
typedef T _A##name; \
_WX_DEFINE_ARRAY(_A##name, name, class WXDLLEXPORT)
#define WX_DEFINE_SORTED_EXPORTED_ARRAY(T, name) \
typedef T _A##name; \
_WX_DEFINE_SORTED_ARRAY(_A##name, name, class WXDLLEXPORT)
#define WX_DECLARE_EXPORTED_OBJARRAY(T, name) \
typedef T _L##name; \
_WX_DECLARE_OBJARRAY(_L##name, name, class WXDLLEXPORT)
// ----------------------------------------------------------------------------
/** @name Some commonly used predefined arrays */
// ----------------------------------------------------------------------------
//@{
/** @name ArrayInt */
WX_DEFINE_EXPORTED_ARRAY(int, wxArrayInt);
/** @name ArrayLong */
WX_DEFINE_EXPORTED_ARRAY(long, wxArrayLong);
/** @name ArrayPtrVoid */
WX_DEFINE_EXPORTED_ARRAY(void *, wxArrayPtrVoid);
//@}
//@}
// -----------------------------------------------------------------------------
// convinience macros
// -----------------------------------------------------------------------------
// delete all array elements
//
// NB: the class declaration of the array elements must be visible from the
// place where you use this macro, otherwise the proper destructor may not
// be called (a decent compiler should give a warning about it, but don't
// count on it)!
#define WX_CLEAR_ARRAY(array) \
{ \
size_t count = array.Count(); \
for ( size_t n = 0; n < count; n++ ) \
{ \
delete array[n]; \
} \
\
array.Empty(); \
}
#endif // _DYNARRAY_H

162
include/wx/dynlib.h Normal file
View File

@@ -0,0 +1,162 @@
/////////////////////////////////////////////////////////////////////////////
// Name: dynlib.cpp
// Purpose: Dynamic library management
// Author: Guilhem Lavaux
// Modified by:
// Created: 20/07/98
// RCS-ID: $Id$
// Copyright: (c) Guilhem Lavaux
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DYNLIB_H__
#define _WX_DYNLIB_H__
#ifdef __GNUG__
# pragma interface
#endif
#include "wx/setup.h"
#if wxUSE_DYNLIB_CLASS
#include "wx/string.h"
#include "wx/list.h"
#include "wx/hash.h"
// this is normally done by configure, but I leave it here for now...
#if defined(__UNIX__) && !(defined(HAVE_DLOPEN) || defined(HAVE_SHL_LOAD))
# if defined(__LINUX__) || defined(__SOLARIS__) || defined(__SUNOS__) || defined(__FREEBSD__)
# define HAVE_DLOPEN
# elif defined(__HPUX__)
# define HAVE_SHL_LOAD
# endif // Unix flavour
#endif // !Unix or already have some HAVE_xxx defined
#if defined(HAVE_DLOPEN)
# include <dlfcn.h>
typedef void *wxDllType;
#elif defined(HAVE_SHL_LOAD)
# include <dl.h>
typedef shl_t wxDllType;
#elif defined(__WINDOWS__)
# include <windows.h>
typedef HMODULE wxDllType;
#elif defined(__OS2__)
# define INCL_DOS
# include <os2.h>
typedef HMODULE wxDllType;
#elif defined(__WXMAC__)
typedef CFragConnectionID wxDllType;
#else
# error "wxLibrary can't be compiled on this platform, sorry."
#endif // OS
// LoadLibrary is defined in windows.h as LoadLibraryA, but wxDllLoader method
// should be called LoadLibrary, not LoadLibraryA or LoadLibraryW!
#if defined(__WIN32__) && defined(LoadLibrary)
# include "wx/msw/winundef.h"
#endif
// ----------------------------------------------------------------------------
// wxDllLoader
// ----------------------------------------------------------------------------
/** wxDllLoader is a class providing an interface similar to unix's
dlopen(). It is used by the wxLibrary framework and manages the
actual loading of DLLs and the resolving of symbols in them.
There are no instances of this class, it simply serves as a
namespace for its static member functions.
*/
class wxDllLoader
{
public:
/** This function loads a shared library into memory, with libname
being the basename of the library, without the filename
extension. No initialisation of the library will be done.
@param libname Name of the shared object to load.
@param success Must point to a bool variable which will be set to TRUE or FALSE.
@return A handle to the loaded DLL. Use success parameter to test if it is valid.
*/
static wxDllType LoadLibrary(const wxString & libname, bool *success = NULL);
/** This function unloads the shared library. */
static void UnloadLibrary(wxDllType dll);
/** This function returns a valid handle for the main program
itself. */
static wxDllType GetProgramHandle(void);
/** This function resolves a symbol in a loaded DLL, such as a
variable or function name.
@param dllHandle Handle of the DLL, as returned by LoadDll().
@param name Name of the symbol.
@return A pointer to the symbol.
*/
static void * GetSymbol(wxDllType dllHandle, const wxString &name);
private:
/// forbid construction of objects
wxDllLoader();
};
// ----------------------------------------------------------------------------
// wxLibrary
// ----------------------------------------------------------------------------
class wxLibrary : public wxObject
{
public:
wxHashTable classTable;
public:
wxLibrary(wxDllType handle);
~wxLibrary();
// Get a symbol from the dynamic library
void *GetSymbol(const wxString& symbname);
// Create the object whose classname is "name"
wxObject *CreateObject(const wxString& name);
protected:
void PrepareClasses(wxClassInfo *first);
wxDllType m_handle;
};
// ----------------------------------------------------------------------------
// wxLibraries
// ----------------------------------------------------------------------------
class wxLibraries
{
public:
wxLibraries();
~wxLibraries();
// caller is responsible for deleting the returned pointer if !NULL
wxLibrary *LoadLibrary(const wxString& basename);
wxObject *CreateObject(const wxString& name);
protected:
wxList m_loaded;
};
// ----------------------------------------------------------------------------
// Global variables
// ----------------------------------------------------------------------------
extern wxLibraries wxTheLibraries;
// ----------------------------------------------------------------------------
// Interesting defines
// ----------------------------------------------------------------------------
#define WXDLL_ENTRY_FUNCTION() \
extern "C" wxClassInfo *wxGetClassFirst(); \
wxClassInfo *wxGetClassFirst() { \
return wxClassInfo::GetFirst(); \
}
#endif // wxUSE_DYNLIB_CLASS
#endif // _WX_DYNLIB_H__

1630
include/wx/event.h Normal file

File diff suppressed because it is too large Load Diff

127
include/wx/expr.h Normal file
View File

@@ -0,0 +1,127 @@
/* //////////////////////////////////////////////////////////////////////////
// Name: expr.h
// Purpose: C helper defines and functions for wxExpr class
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c)
// Licence: wxWindows licence
////////////////////////////////////////////////////////////////////////// */
#ifndef _WX_EXPRH__
#define _WX_EXPRH__
#include <math.h>
#include <stdlib.h>
#ifdef ____HPUX__
#define alloca malloc
#endif
/* Rename all YACC/LEX stuff or we'll conflict with other
* applications
*/
#define yyback PROIO_yyback
#define yylook PROIO_yylook
#define yywrap PROIO_yywrap
#define yyoutput PROIO_yyoutput
#define yylex PROIO_yylex
#define yyerror PROIO_yyerror
#define yyleng PROIO_yyleng
#define yytext PROIO_yytext
#define yymorfg PROIO_yymorfg
#define yylineno PROIO_yylineno
#define yytchar PROIO_yytchar
#define yyin PROIO_yyin
#define yyout PROIO_yyout
#define yysvf PROIO_yysvf
#define yyestate PROIO_yyestate
#define yysvec PROIO_yysvec
#define yybgin PROIO_yybgin
#define yyprevious PROIO_yyprevious
#define yylhs PROIO_yylhs
#define yylen PROIO_yylen
#define yydefred PROIO_yydefred
#define yydgoto PROIO_yydgoto
#define yysindex PROIO_yysindex
#define yyrindex PROIO_yyrindex
#define yygindex PROIO_yygindex
#define yytable PROIO_yytable
#define yycheck PROIO_yycheck
#define yyname PROIO_yyname
#define yyrule PROIO_yyrule
#define yydebug PROIO_yydebug
#define yynerrs PROIO_yynerrs
#define yyerrflag PROIO_yyerrflag
#define yychar PROIO_yychar
#define yyvsp PROIO_yyvsp
#define yyssp PROIO_yyssp
#define yyval PROIO_yyval
#define yylval PROIO_yylval
#define yyss PROIO_yyss
#define yyvs PROIO_yyvs
#define yyparse PROIO_yyparse
/* +++steve162e: more defines necessary */
#define yy_init_buffer PROIO_yy_init_buffer
#define yy_create_buffer PROIO_yy_create_buffer
#define yy_load_buffer_state PROIO_yy_load_buffer_state
#define yyrestart PROIO_yyrestart
#define yy_switch_to_buffer PROIO_yy_switch_to_buffer
#define yy_delete_buffer PROIO_yy_delete_buffer
/* ---steve162e */
/* WG 1/96: still more for flex 2.5 */
#define yy_scan_buffer PROIO_scan_buffer
#define yy_scan_string PROIO_scan_string
#define yy_scan_bytes PROIO_scan_bytes
#define yy_flex_debug PROIO_flex_debug
#define yy_flush_buffer PROIO_flush_buffer
#define yyleng PROIO_yyleng
#define yytext PROIO_yytext
#ifdef __cplusplus
extern "C" {
char *proio_cons(char *, char *);
char * wxmake_integer(char *);
char * wxmake_word(char *);
char * wxmake_string(char *);
char * wxmake_real(char *, char *);
char * wxmake_exp(char *, char *);
char * wxmake_exp2(char *, char *, char*);
void add_expr(char *);
void process_command(char *);
void syntax_error(char *);
}
#else
#if defined(__BORLANDC__) || defined(__VISAGECPP__)
char *proio_cons(char *, char *);
char * wxmake_integer(char *);
char * wxmake_word(char *);
char * wxmake_string(char *);
char * wxmake_real(char *, char *);
char * wxmake_exp(char *, char *);
char * wxmake_exp2(char *, char *, char*);
void add_expr(char *);
void process_command(char *);
void syntax_error(char *);
int lex_input(void);
#else
char *proio_cons();
char * wxmake_integer();
char * wxmake_word();
char * wxmake_string();
char * wxmake_real();
char * wxmake_exp();
char * wxmake_exp2();
void add_expr();
void process_command();
void syntax_error();
#endif
#endif
#endif
/* _WX_EXPRH__ */

114
include/wx/ffile.h Normal file
View File

@@ -0,0 +1,114 @@
/////////////////////////////////////////////////////////////////////////////
// Name: ffile.h
// Purpose: wxFFile - encapsulates "FILE *" stream
// Author: Vadim Zeitlin
// Modified by:
// Created: 14.07.99
// RCS-ID: $Id$
// Copyright: (c) 1998 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FFILE_H_
#define _WX_FFILE_H_
#ifdef __GNUG__
#pragma interface "ffile.h"
#endif
#if wxUSE_FILE
#ifndef WX_PRECOMP
#include "wx/string.h"
#include "wx/filefn.h"
#endif
#include <stdio.h>
// ----------------------------------------------------------------------------
// class wxFFile: standard C stream library IO
//
// NB: for space efficiency this class has no virtual functions, including
// dtor which is _not_ virtual, so it shouldn't be used as a base class.
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxFFile
{
public:
// ctors
// -----
// def ctor
wxFFile() { m_fp = NULL; }
// open specified file (may fail, use IsOpened())
wxFFile(const wxChar *filename, const char *mode = "r");
// attach to (already opened) file
wxFFile(FILE *fp) { m_fp = fp; }
// open/close
// open a file (existing or not - the mode controls what happens)
bool Open(const wxChar *filename, const char *mode = "r");
// closes the opened file (this is a NOP if not opened)
bool Close();
// assign an existing file descriptor and get it back from wxFFile object
void Attach(FILE *fp, const wxString& name = wxT(""))
{ Close(); m_fp = fp; m_name = name; }
void Detach() { m_fp = NULL; }
FILE *fp() const { return m_fp; }
// read/write (unbuffered)
// read all data from the file into a string (useful for text files)
bool ReadAll(wxString *str);
// returns number of bytes read - use Eof() and Error() to see if an error
// occured or not
size_t Read(void *pBuf, size_t nCount);
// returns the number of bytes written
size_t Write(const void *pBuf, size_t nCount);
// returns true on success
bool Write(const wxString& s)
{
size_t size = s.Len()*sizeof(wxChar);
return Write(s.c_str(), size) == size;
}
// flush data not yet written
bool Flush();
// file pointer operations (return ofsInvalid on failure)
// move ptr ofs bytes related to start/current pos/end of file
bool Seek(long ofs, wxSeekMode mode = wxFromStart);
// move ptr to ofs bytes before the end
bool SeekEnd(long ofs = 0) { return Seek(ofs, wxFromEnd); }
// get current position in the file
size_t Tell() const;
// get current file length
size_t Length() const;
// simple accessors
// is file opened?
bool IsOpened() const { return m_fp != NULL; }
// is end of file reached?
bool Eof() const { return feof(m_fp) != 0; }
// is an error occured?
bool Error() const { return ferror(m_fp) != 0; }
// get the file name
const wxString& GetName() const { return m_name; }
// dtor closes the file if opened
~wxFFile() { Close(); }
private:
// copy ctor and assignment operator are private because it doesn't make
// sense to copy files this way: attempt to do it will provoke a compile-time
// error.
wxFFile(const wxFFile&);
wxFFile& operator=(const wxFFile&);
FILE *m_fp; // IO stream or NULL if not opened
wxString m_name; // the name of the file (for diagnostic messages)
};
#endif // wxUSE_FILE
#endif // _WX_FFILE_H_

189
include/wx/file.h Normal file
View File

@@ -0,0 +1,189 @@
/////////////////////////////////////////////////////////////////////////////
// Name: file.h
// Purpose: wxFile - encapsulates low-level "file descriptor"
// wxTempFile - safely replace the old file
// Author: Vadim Zeitlin
// Modified by:
// Created: 29/01/98
// RCS-ID: $Id$
// Copyright: (c) 1998 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FILEH__
#define _WX_FILEH__
#ifdef __GNUG__
#pragma interface "file.h"
#endif
#ifndef WX_PRECOMP
#include "wx/string.h"
#include "wx/filefn.h"
#endif
#if wxUSE_FILE
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
// we redefine these constants here because S_IREAD &c are _not_ standard
// however, we do assume that the values correspond to the Unix umask bits
#define wxS_IRUSR 00400
#define wxS_IWUSR 00200
#define wxS_IXUSR 00100
#define wxS_IRGRP 00040
#define wxS_IWGRP 00020
#define wxS_IXGRP 00010
#define wxS_IROTH 00004
#define wxS_IWOTH 00002
#define wxS_IXOTH 00001
// default mode for the new files: corresponds to umask 022
#define wxS_DEFAULT (wxS_IRUSR | wxS_IWUSR | wxS_IRGRP | wxS_IWGRP |\
wxS_IROTH | wxS_IWOTH)
// ----------------------------------------------------------------------------
// class wxFile: raw file IO
//
// NB: for space efficiency this class has no virtual functions, including
// dtor which is _not_ virtual, so it shouldn't be used as a base class.
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxFile
{
public:
// more file constants
// -------------------
// opening mode
enum OpenMode { read, write, read_write, write_append };
// standard values for file descriptor
enum { fd_invalid = -1, fd_stdin, fd_stdout, fd_stderr };
// static functions
// ----------------
// check whether a regular file by this name exists
static bool Exists(const wxChar *name);
// check whetther we can access the given file in given mode
// (only read and write make sense here)
static bool Access(const wxChar *name, OpenMode mode);
// ctors
// -----
// def ctor
wxFile() { m_fd = fd_invalid; }
// open specified file (may fail, use IsOpened())
wxFile(const wxChar *szFileName, OpenMode mode = read);
// attach to (already opened) file
wxFile(int fd) { m_fd = fd; }
// open/close
// create a new file (with the default value of bOverwrite, it will fail if
// the file already exists, otherwise it will overwrite it and succeed)
bool Create(const wxChar *szFileName, bool bOverwrite = FALSE,
int access = wxS_DEFAULT);
bool Open(const wxChar *szFileName, OpenMode mode = read,
int access = wxS_DEFAULT);
bool Close(); // Close is a NOP if not opened
// assign an existing file descriptor and get it back from wxFile object
void Attach(int fd) { Close(); m_fd = fd; }
void Detach() { m_fd = fd_invalid; }
int fd() const { return m_fd; }
// read/write (unbuffered)
// returns number of bytes read or ofsInvalid on error
off_t Read(void *pBuf, off_t nCount);
// returns the number of bytes written
size_t Write(const void *pBuf, size_t nCount);
// returns true on success
bool Write(const wxString& s)
{
size_t size = s.Len()*sizeof(wxChar);
return Write(s.c_str(), size) == size;
}
// flush data not yet written
bool Flush();
// file pointer operations (return ofsInvalid on failure)
// move ptr ofs bytes related to start/current off_t/end of file
off_t Seek(off_t ofs, wxSeekMode mode = wxFromStart);
// move ptr to ofs bytes before the end
off_t SeekEnd(off_t ofs = 0) { return Seek(ofs, wxFromEnd); }
// get current off_t
off_t Tell() const;
// get current file length
off_t Length() const;
// simple accessors
// is file opened?
bool IsOpened() const { return m_fd != fd_invalid; }
// is end of file reached?
bool Eof() const;
// has an error occured?
bool Error() const { return m_error; }
// dtor closes the file if opened
~wxFile() { Close(); }
private:
// copy ctor and assignment operator are private because
// it doesn't make sense to copy files this way:
// attempt to do it will provoke a compile-time error.
wxFile(const wxFile&);
wxFile& operator=(const wxFile&);
int m_fd; // file descriptor or INVALID_FD if not opened
bool m_error; // error memory
};
// ----------------------------------------------------------------------------
// class wxTempFile: if you want to replace another file, create an instance
// of wxTempFile passing the name of the file to be replaced to the ctor. Then
// you can write to wxTempFile and call Commit() function to replace the old
// file (and close this one) or call Discard() to cancel the modification. If
// you call neither of them, dtor will call Discard().
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxTempFile
{
public:
// ctors
// default
wxTempFile() { }
// associates the temp file with the file to be replaced and opens it
wxTempFile(const wxString& strName);
// open the temp file (strName is the name of file to be replaced)
bool Open(const wxString& strName);
// is the file opened?
bool IsOpened() const { return m_file.IsOpened(); }
// I/O (both functions return true on success, false on failure)
bool Write(const void *p, size_t n) { return m_file.Write(p, n) != 0; }
bool Write(const wxString& str) { return m_file.Write(str); }
// different ways to close the file
// validate changes and delete the old file of name m_strName
bool Commit();
// discard changes
void Discard();
// dtor calls Discard() if file is still opened
~wxTempFile();
private:
// no copy ctor/assignment operator
wxTempFile(const wxTempFile&);
wxTempFile& operator=(const wxTempFile&);
wxString m_strName, // name of the file to replace in Commit()
m_strTemp; // temporary file name
wxFile m_file; // the temporary file
};
#endif // wxUSE_FILE
#endif // _WX_FILEH__

351
include/wx/fileconf.h Normal file
View File

@@ -0,0 +1,351 @@
///////////////////////////////////////////////////////////////////////////////
// Name: fileconf.h
// Purpose: wxFileConfig derivation of wxConfigBase
// Author: Vadim Zeitlin
// Modified by:
// Created: 07.04.98 (adapted from appconf.cpp)
// RCS-ID: $Id$
// Copyright: (c) 1997 Karsten Ball<6C>der & Vadim Zeitlin
// Ballueder@usa.net <zeitlin@dptmaths.ens-cachan.fr>
// Licence: wxWindows license
///////////////////////////////////////////////////////////////////////////////
#ifndef _FILECONF_H
#define _FILECONF_H
#ifdef __GNUG__
#pragma interface "fileconf.h"
#endif
#include "wx/defs.h"
#if wxUSE_CONFIG
#include "wx/textfile.h"
#include "wx/string.h"
// ----------------------------------------------------------------------------
// wxFileConfig
// ----------------------------------------------------------------------------
/*
wxFileConfig derives from base Config and implements file based config class,
i.e. it uses ASCII disk files to store the information. These files are
alternatively called INI, .conf or .rc in the documentation. They are
organized in groups or sections, which can nest (i.e. a group contains
subgroups, which contain their own subgroups &c). Each group has some
number of entries, which are "key = value" pairs. More precisely, the format
is:
# comments are allowed after either ';' or '#' (Win/UNIX standard)
# blank lines (as above) are ignored
# global entries are members of special (no name) top group
written_for = Windows
platform = Linux
# the start of the group 'Foo'
[Foo] # may put comments like this also
# following 3 lines are entries
key = value
another_key = " strings with spaces in the beginning should be quoted, \
otherwise the spaces are lost"
last_key = but you don't have to put " normally (nor quote them, like here)
# subgroup of the group 'Foo'
# (order is not important, only the name is: separator is '/', as in paths)
[Foo/Bar]
# entries prefixed with "!" are immutable, i.e. can't be changed if they are
# set in the system-wide config file
!special_key = value
bar_entry = whatever
[Foo/Bar/Fubar] # depth is (theoretically :-) unlimited
# may have the same name as key in another section
bar_entry = whatever not
You have {read/write/delete}Entry functions (guess what they do) and also
setCurrentPath to select current group. enum{Subgroups/Entries} allow you
to get all entries in the config file (in the current group). Finally,
flush() writes immediately all changed entries to disk (otherwise it would
be done automatically in dtor)
wxFileConfig manages not less than 2 config files for each program: global
and local (or system and user if you prefer). Entries are read from both of
them and the local entries override the global ones unless the latter is
immutable (prefixed with '!') in which case a warning message is generated
and local value is ignored. Of course, the changes are always written to local
file only.
The names of these files can be specified in a number of ways. First of all,
you can use the standard convention: using the ctor which takes 'strAppName'
parameter will probably be sufficient for 90% of cases. If, for whatever
reason you wish to use the files with some other names, you can always use the
second ctor.
wxFileConfig also may automatically expand the values of environment variables
in the entries it reads: for example, if you have an entry
score_file = $HOME/.score
a call to Read(&str, "score_file") will return a complete path to .score file
unless the expansion was previousle disabled with SetExpandEnvVars(FALSE) call
(it's on by default, the current status can be retrieved with
IsExpandingEnvVars function).
*/
class wxFileConfig;
class ConfigGroup;
class ConfigEntry;
// we store all lines of the local config file as a linked list in memory
class LineList
{
public:
void SetNext(LineList *pNext) { m_pNext = pNext; }
void SetPrev(LineList *pPrev) { m_pPrev = pPrev; }
// ctor
LineList(const wxString& str, LineList *pNext = (LineList *) NULL) : m_strLine(str)
{ SetNext(pNext); SetPrev((LineList *) NULL); }
//
LineList *Next() const { return m_pNext; }
LineList *Prev() const { return m_pPrev; }
//
void SetText(const wxString& str) { m_strLine = str; }
const wxString& Text() const { return m_strLine; }
private:
wxString m_strLine; // line contents
LineList *m_pNext, // next node
*m_pPrev; // previous one
};
class wxFileConfig : public wxConfigBase
{
public:
// construct the "standard" full name for global (system-wide) and
// local (user-specific) config files from the base file name.
//
// the following are the filenames returned by this functions:
// global local
// Unix /etc/file.ext ~/.file
// Win %windir%\file.ext %USERPROFILE%\file.ext
//
// where file is the basename of szFile, ext is it's extension
// or .conf (Unix) or .ini (Win) if it has none
static wxString GetGlobalFileName(const wxChar *szFile);
static wxString GetLocalFileName(const wxChar *szFile);
// ctor & dtor
// New constructor: one size fits all. Specify wxCONFIG_USE_LOCAL_FILE or
// wxCONFIG_USE_GLOBAL_FILE to say which files should be used.
wxFileConfig(const wxString& appName,
const wxString& vendorName = wxT(""),
const wxString& localFilename = wxT(""),
const wxString& globalFilename = wxT(""),
long style = wxCONFIG_USE_LOCAL_FILE);
// dtor will save unsaved data
virtual ~wxFileConfig();
// implement inherited pure virtual functions
virtual void SetPath(const wxString& strPath);
virtual const wxString& GetPath() const { return m_strPath; }
virtual bool GetFirstGroup(wxString& str, long& lIndex) const;
virtual bool GetNextGroup (wxString& str, long& lIndex) const;
virtual bool GetFirstEntry(wxString& str, long& lIndex) const;
virtual bool GetNextEntry (wxString& str, long& lIndex) const;
virtual size_t GetNumberOfEntries(bool bRecursive = FALSE) const;
virtual size_t GetNumberOfGroups(bool bRecursive = FALSE) const;
virtual bool HasGroup(const wxString& strName) const;
virtual bool HasEntry(const wxString& strName) const;
virtual bool Read(const wxString& key, wxString *pStr) const;
virtual bool Read(const wxString& key, wxString *pStr, const wxString& defValue) const;
virtual bool Read(const wxString& key, long *pl) const;
// The following are necessary to satisfy the compiler
wxString Read(const wxString& key, const wxString& defVal) const
{ return wxConfigBase::Read(key, defVal); }
bool Read(const wxString& key, long *pl, long defVal) const
{ return wxConfigBase::Read(key, pl, defVal); }
long Read(const wxString& key, long defVal) const
{ return wxConfigBase::Read(key, defVal); }
bool Read(const wxString& key, int *pi, int defVal) const
{ return wxConfigBase::Read(key, pi, defVal); }
bool Read(const wxString& key, int *pi) const
{ return wxConfigBase::Read(key, pi); }
bool Read(const wxString& key, double* val) const
{ return wxConfigBase::Read(key, val); }
bool Read(const wxString& key, double* val, double defVal) const
{ return wxConfigBase::Read(key, val, defVal); }
bool Read(const wxString& key, bool* val) const
{ return wxConfigBase::Read(key, val); }
bool Read(const wxString& key, bool* val, bool defVal) const
{ return wxConfigBase::Read(key, val, defVal); }
virtual bool Write(const wxString& key, const wxString& szValue);
virtual bool Write(const wxString& key, long lValue);
bool Write(const wxString& key, double value)
{ return wxConfigBase::Write(key, value); }
bool Write(const wxString& key, bool value)
{ return wxConfigBase::Write(key, value); }
virtual bool Flush(bool bCurrentOnly = FALSE);
virtual bool RenameEntry(const wxString& oldName, const wxString& newName);
virtual bool RenameGroup(const wxString& oldName, const wxString& newName);
virtual bool DeleteEntry(const wxString& key, bool bGroupIfEmptyAlso);
virtual bool DeleteGroup(const wxString& szKey);
virtual bool DeleteAll();
public:
// functions to work with this list
LineList *LineListAppend(const wxString& str);
LineList *LineListInsert(const wxString& str,
LineList *pLine); // NULL => Prepend()
void LineListRemove(LineList *pLine);
bool LineListIsEmpty();
private:
// GetXXXFileName helpers: return ('/' terminated) directory names
static wxString GetGlobalDir();
static wxString GetLocalDir();
// common part of all ctors (assumes that m_str{Local|Global}File are already
// initialized
void Init();
// common part of from dtor and DeleteAll
void CleanUp();
// parse the whole file
void Parse(wxTextFile& file, bool bLocal);
// the same as SetPath("/")
void SetRootPath();
// member variables
// ----------------
LineList *m_linesHead, // head of the linked list
*m_linesTail; // tail
wxString m_strLocalFile, // local file name passed to ctor
m_strGlobalFile; // global
wxString m_strPath; // current path (not '/' terminated)
ConfigGroup *m_pRootGroup, // the top (unnamed) group
*m_pCurrentGroup; // the current group
public:
WX_DEFINE_SORTED_ARRAY(ConfigEntry *, ArrayEntries);
WX_DEFINE_SORTED_ARRAY(ConfigGroup *, ArrayGroups);
};
class ConfigEntry
{
private:
ConfigGroup *m_pParent; // group that contains us
wxString m_strName, // entry name
m_strValue; // value
bool m_bDirty, // changed since last read?
m_bImmutable; // can be overriden locally?
int m_nLine; // used if m_pLine == NULL only
LineList *m_pLine; // pointer to our line in the linked list
// or NULL if it was found in global file
public:
ConfigEntry(ConfigGroup *pParent, const wxString& strName, int nLine);
// simple accessors
const wxString& Name() const { return m_strName; }
const wxString& Value() const { return m_strValue; }
ConfigGroup *Group() const { return m_pParent; }
bool IsDirty() const { return m_bDirty; }
bool IsImmutable() const { return m_bImmutable; }
bool IsLocal() const { return m_pLine != 0; }
int Line() const { return m_nLine; }
LineList *GetLine() const { return m_pLine; }
// modify entry attributes
void SetValue(const wxString& strValue, bool bUser = TRUE);
void SetDirty();
void SetLine(LineList *pLine);
};
class ConfigGroup
{
private:
wxFileConfig *m_pConfig; // config object we belong to
ConfigGroup *m_pParent; // parent group (NULL for root group)
wxFileConfig::ArrayEntries m_aEntries; // entries in this group
wxFileConfig::ArrayGroups m_aSubgroups; // subgroups
wxString m_strName; // group's name
bool m_bDirty; // if FALSE => all subgroups are not dirty
LineList *m_pLine; // pointer to our line in the linked list
ConfigEntry *m_pLastEntry; // last entry/subgroup of this group in the
ConfigGroup *m_pLastGroup; // local file (we insert new ones after it)
// DeleteSubgroupByName helper
bool DeleteSubgroup(ConfigGroup *pGroup);
public:
// ctor
ConfigGroup(ConfigGroup *pParent, const wxString& strName, wxFileConfig *);
// dtor deletes all entries and subgroups also
~ConfigGroup();
// simple accessors
const wxString& Name() const { return m_strName; }
ConfigGroup *Parent() const { return m_pParent; }
wxFileConfig *Config() const { return m_pConfig; }
bool IsDirty() const { return m_bDirty; }
const wxFileConfig::ArrayEntries& Entries() const { return m_aEntries; }
const wxFileConfig::ArrayGroups& Groups() const { return m_aSubgroups; }
bool IsEmpty() const { return Entries().IsEmpty() && Groups().IsEmpty(); }
// find entry/subgroup (NULL if not found)
ConfigGroup *FindSubgroup(const wxChar *szName) const;
ConfigEntry *FindEntry (const wxChar *szName) const;
// delete entry/subgroup, return FALSE if doesn't exist
bool DeleteSubgroupByName(const wxChar *szName);
bool DeleteEntry(const wxChar *szName);
// create new entry/subgroup returning pointer to newly created element
ConfigGroup *AddSubgroup(const wxString& strName);
ConfigEntry *AddEntry (const wxString& strName, int nLine = wxNOT_FOUND);
// will also recursively set parent's dirty flag
void SetDirty();
void SetLine(LineList *pLine);
// rename: no checks are done to ensure that the name is unique!
void Rename(const wxString& newName);
//
wxString GetFullName() const;
// get the last line belonging to an entry/subgroup of this group
LineList *GetGroupLine(); // line which contains [group]
LineList *GetLastEntryLine(); // after which our subgroups start
LineList *GetLastGroupLine(); // after which the next group starts
// called by entries/subgroups when they're created/deleted
void SetLastEntry(ConfigEntry *pEntry) { m_pLastEntry = pEntry; }
void SetLastGroup(ConfigGroup *pGroup) { m_pLastGroup = pGroup; }
};
#endif
// wxUSE_CONFIG
#endif
//_FILECONF_H

22
include/wx/filedlg.h Normal file
View File

@@ -0,0 +1,22 @@
#ifndef _WX_FILEDLG_H_BASE_
#define _WX_FILEDLG_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/filedlg.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/filedlg.h"
#elif defined(__WXGTK__)
#include "wx/generic/filedlgg.h"
#elif defined(__WXQT__)
#include "wx/qt/filedlg.h"
#elif defined(__WXMAC__)
#include "wx/mac/filedlg.h"
#elif defined(__WXPM__)
#include "wx/os2/filedlg.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/filedlg.h"
#endif
#endif
// _WX_FILEDLG_H_BASE_

239
include/wx/filefn.h Normal file
View File

@@ -0,0 +1,239 @@
/////////////////////////////////////////////////////////////////////////////
// Name: filefn.h
// Purpose: File- and directory-related functions
// Author: Julian Smart
// Modified by:
// Created: 29/01/98
// RCS-ID: $Id$
// Copyright: (c) 1998 Julian Smart
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
#ifndef _FILEFN_H_
#define _FILEFN_H_
#ifdef __GNUG__
#pragma interface "filefn.h"
#endif
#include "wx/list.h"
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
// define off_t
#ifndef __WXMAC__
#include <sys/types.h>
#else
typedef long off_t;
#endif
#if defined(__VISUALC__) || ( defined(__MWERKS__) && defined( __INTEL__) )
typedef _off_t off_t;
#elif defined(__BORLANDC__) && defined(__WIN16__)
typedef long off_t;
#elif defined(__SC__)
typedef long off_t;
#elif defined(__MWERKS__) && !defined(__INTEL__)
typedef long off_t;
#endif
const off_t wxInvalidOffset = (off_t)-1;
enum wxSeekMode
{
wxFromStart,
wxFromCurrent,
wxFromEnd
};
WXDLLEXPORT_DATA(extern const wxChar*) wxEmptyString;
// ----------------------------------------------------------------------------
// functions
// ----------------------------------------------------------------------------
WXDLLEXPORT bool wxFileExists(const wxString& filename);
#define FileExists wxFileExists
// does the path exist? (may have or not '/' or '\\' at the end)
WXDLLEXPORT bool wxPathExists(const wxChar *pszPathName);
#define wxDirExists wxPathExists
#define DirExists wxDirExists
WXDLLEXPORT bool wxIsAbsolutePath(const wxString& filename);
#define IsAbsolutePath wxIsAbsolutePath
// Get filename
WXDLLEXPORT wxChar* wxFileNameFromPath(wxChar *path);
WXDLLEXPORT wxString wxFileNameFromPath(const wxString& path);
#define FileNameFromPath wxFileNameFromPath
// Get directory
WXDLLEXPORT wxString wxPathOnly(const wxString& path);
#define PathOnly wxPathOnly
// wxString version
WXDLLEXPORT wxString wxRealPath(const wxString& path);
WXDLLEXPORT void wxDos2UnixFilename(wxChar *s);
#define Dos2UnixFilename wxDos2UnixFilename
WXDLLEXPORT void wxUnix2DosFilename(wxChar *s);
#define Unix2DosFilename wxUnix2DosFilename
#ifdef __WXMAC__
WXDLLEXPORT void wxMacPathToFSSpec( const wxChar *path , FSSpec *spec ) ;
WXDLLEXPORT void wxMac2UnixFilename(wxChar *s);
WXDLLEXPORT void wxUnix2MacFilename(wxChar *s);
#endif
// Strip the extension, in situ
WXDLLEXPORT void wxStripExtension(wxChar *buffer);
WXDLLEXPORT void wxStripExtension(wxString& buffer);
// Get a temporary filename, opening and closing the file.
WXDLLEXPORT wxChar* wxGetTempFileName(const wxString& prefix, wxChar *buf = (wxChar *) NULL);
// Expand file name (~/ and ${OPENWINHOME}/ stuff)
WXDLLEXPORT wxChar* wxExpandPath(wxChar *dest, const wxChar *path);
// Contract w.r.t environment (</usr/openwin/lib, OPENWHOME> -> ${OPENWINHOME}/lib)
// and make (if under the home tree) relative to home
// [caller must copy-- volatile]
WXDLLEXPORT wxChar* wxContractPath(const wxString& filename,
const wxString& envname = wxEmptyString,
const wxString& user = wxEmptyString);
// Destructive removal of /./ and /../ stuff
WXDLLEXPORT wxChar* wxRealPath(wxChar *path);
// Allocate a copy of the full absolute path
WXDLLEXPORT wxChar* wxCopyAbsolutePath(const wxString& path);
// Get first file name matching given wild card.
// Flags are reserved for future use.
#define wxFILE 1
#define wxDIR 2
WXDLLEXPORT wxString wxFindFirstFile(const wxChar *spec, int flags = wxFILE);
WXDLLEXPORT wxString wxFindNextFile();
// Does the pattern contain wildcards?
WXDLLEXPORT bool wxIsWild(const wxString& pattern);
// Does the pattern match the text (usually a filename)?
// If dot_special is TRUE, doesn't match * against . (eliminating
// `hidden' dot files)
WXDLLEXPORT bool wxMatchWild(const wxString& pattern, const wxString& text, bool dot_special = TRUE);
// Concatenate two files to form third
WXDLLEXPORT bool wxConcatFiles(const wxString& file1, const wxString& file2, const wxString& file3);
// Copy file1 to file2
WXDLLEXPORT bool wxCopyFile(const wxString& file1, const wxString& file2);
// Remove file
WXDLLEXPORT bool wxRemoveFile(const wxString& file);
// Rename file
WXDLLEXPORT bool wxRenameFile(const wxString& file1, const wxString& file2);
// Get current working directory.
// If buf is NULL, allocates space using new, else
// copies into buf.
// IMPORTANT NOTE getcwd is know not to work under some releases
// of Win32s 1.3, according to MS release notes!
WXDLLEXPORT wxChar* wxGetWorkingDirectory(wxChar *buf = (wxChar *) NULL, int sz = 1000);
// new and preferred version of wxGetWorkingDirectory
// NB: can't have the same name because of overloading ambiguity
WXDLLEXPORT wxString wxGetCwd();
// Set working directory
WXDLLEXPORT bool wxSetWorkingDirectory(const wxString& d);
// Make directory
WXDLLEXPORT bool wxMkdir(const wxString& dir, int perm = 0777);
// Remove directory. Flags reserved for future use.
WXDLLEXPORT bool wxRmdir(const wxString& dir, int flags = 0);
// separators in file names
#define wxFILE_SEP_EXT wxT('.')
#define wxFILE_SEP_DSK wxT(':')
#define wxFILE_SEP_PATH_DOS wxT('\\')
#define wxFILE_SEP_PATH_UNIX wxT('/')
// separator in the path list (as in PATH environment variable)
// NB: these are strings and not characters on purpose!
#define wxPATH_SEP_DOS wxT(";")
#define wxPATH_SEP_UNIX wxT(":")
// platform independent versions
#ifdef __UNIX__
#define wxFILE_SEP_PATH wxFILE_SEP_PATH_UNIX
#define wxPATH_SEP wxPATH_SEP_UNIX
#else // Windows and OS/2
#define wxFILE_SEP_PATH wxFILE_SEP_PATH_DOS
#define wxPATH_SEP wxPATH_SEP_DOS
#endif // Unix/Windows
// this is useful for wxString::IsSameAs(): to compare two file names use
// filename1.IsSameAs(filename2, wxARE_FILENAMES_CASE_SENSITIVE)
#ifdef __UNIX__
#define wxARE_FILENAMES_CASE_SENSITIVE TRUE
#else // Windows and OS/2
#define wxARE_FILENAMES_CASE_SENSITIVE FALSE
#endif // Unix/Windows
// is the char a path separator?
inline bool wxIsPathSeparator(wxChar c)
{ return c == wxFILE_SEP_PATH_DOS || c == wxFILE_SEP_PATH_UNIX; }
// does the string ends with path separator?
WXDLLEXPORT bool wxEndsWithPathSeparator(const wxChar *pszFileName);
// split the full path into path (including drive for DOS), name and extension
// (understands both '/' and '\\')
WXDLLEXPORT void wxSplitPath(const wxChar *pszFileName,
wxString *pstrPath,
wxString *pstrName,
wxString *pstrExt);
// find a file in a list of directories, returns false if not found
WXDLLEXPORT bool wxFindFileInPath(wxString *pStr, const wxChar *pszPath, const wxChar *pszFile);
// Get the OS directory if appropriate (such as the Windows directory).
// On non-Windows platform, probably just return the empty string.
WXDLLEXPORT wxString wxGetOSDirectory();
// ----------------------------------------------------------------------------
// classes
// ----------------------------------------------------------------------------
// Path searching
class WXDLLEXPORT wxPathList : public wxStringList
{
public:
// Adds all paths in environment variable
void AddEnvList(const wxString& envVariable);
void Add(const wxString& path);
// Avoid compiler warning
wxNode *Add(const wxChar *s) { return wxStringList::Add(s); }
// Find the first full path for which the file exists
wxString FindValidPath(const wxString& filename);
// Find the first full path for which the file exists; ensure it's an
// absolute path that gets returned.
wxString FindAbsoluteValidPath(const wxString& filename);
// Given full path and filename, add path to list
void EnsureFileAccessible(const wxString& path);
// Returns TRUE if the path is in the list
bool Member(const wxString& path);
private:
DECLARE_DYNAMIC_CLASS(wxPathList)
};
#endif
// _WX_FILEFN_H_

211
include/wx/filesys.h Normal file
View File

@@ -0,0 +1,211 @@
/////////////////////////////////////////////////////////////////////////////
// Name: filesys.h
// Purpose: class for opening files - virtual file system
// Author: Vaclav Slavik
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __FILESYS_H__
#define __FILESYS_H__
#ifdef __GNUG__
#pragma interface
#endif
#include "wx/setup.h"
#if (wxUSE_FS_INET || wxUSE_FS_ZIP) && wxUSE_STREAMS
#include "wx/stream.h"
#include "wx/mimetype.h"
#include "wx/url.h"
class wxFSFile;
class wxFileSystemHandler;
class wxFileSystem;
//--------------------------------------------------------------------------------
// wxFSFile
// This class is a file opened using wxFileSystem. It consists of
// input stream, location, mime type & optional anchor
// (in 'index.htm#chapter2', 'chapter2' is anchor)
//--------------------------------------------------------------------------------
class WXDLLEXPORT wxFSFile : public wxObject
{
private:
wxInputStream *m_Stream;
wxString m_Location;
wxString m_MimeType;
wxString m_Anchor;
public:
wxFSFile(wxInputStream *stream, const wxString& loc, const wxString& mimetype, const wxString& anchor)
{
m_Stream = stream;
m_Location = loc;
m_MimeType = mimetype; m_MimeType.MakeLower();
m_Anchor = anchor;
}
virtual ~wxFSFile()
{
if (m_Stream) delete m_Stream;
}
wxInputStream *GetStream() const {return m_Stream;}
// returns stream. This doesn't _create_ stream, it only returns
// pointer to it!!
const wxString& GetMimeType() const {return m_MimeType;}
// returns file's mime type
const wxString& GetLocation() const {return m_Location;}
// returns the original location (aka filename) of the file
const wxString& GetAnchor() const {return m_Anchor;}
};
//--------------------------------------------------------------------------------
// wxFileSystemHandler
// This class is FS handler for wxFileSystem. It provides
// interface to access certain
// kinds of files (HTPP, FTP, local, tar.gz etc..)
//--------------------------------------------------------------------------------
class WXDLLEXPORT wxFileSystemHandler : public wxObject
{
DECLARE_ABSTRACT_CLASS(wxFileSystemHandler)
public:
wxFileSystemHandler() : wxObject() {}
virtual bool CanOpen(const wxString& location) = 0;
// returns TRUE if this handler is able to open given location
virtual wxFSFile* OpenFile(wxFileSystem& fs, const wxString& location) = 0;
// opens given file and returns pointer to input stream.
// Returns NULL if opening failed.
// The location is always absolute path.
protected:
wxString GetProtocol(const wxString& location) const;
// returns protocol ("file", "http", "tar" etc.) The last (most right)
// protocol is used:
// {it returns "tar" for "file:subdir/archive.tar.gz#tar:/README.txt"}
wxString GetLeftLocation(const wxString& location) const;
// returns left part of address:
// {it returns "file:subdir/archive.tar.gz" for "file:subdir/archive.tar.gz#tar:/README.txt"}
wxString GetAnchor(const wxString& location) const;
// returns anchor part of address:
// {it returns "anchor" for "file:subdir/archive.tar.gz#tar:/README.txt#anchor"}
// NOTE: anchor is NOT a part of GetLeftLocation()'s return value
wxString GetRightLocation(const wxString& location) const;
// returns right part of address:
// {it returns "/README.txt" for "file:subdir/archive.tar.gz#tar:/README.txt"}
wxString GetMimeTypeFromExt(const wxString& location);
// Returns MIME type of the file - w/o need to open it
// (default behaviour is that it returns type based on extension)
public:
static void CleanUpStatics();
// deletes static members (m_MimeMng). It can be called
// as many times as you wish because m_MimeMng is created
// on demand
private:
static wxMimeTypesManager *m_MimeMng;
// MIME manager
// (it's static and thus shared by all instances and derived classes)
};
//--------------------------------------------------------------------------------
// wxFileSystem
// This class provides simple interface for opening various
// kinds of files (HTPP, FTP, local, tar.gz etc..)
//--------------------------------------------------------------------------------
class WXDLLEXPORT wxFileSystem : public wxObject
{
DECLARE_DYNAMIC_CLASS(wxFileSystem)
private:
wxString m_Path;
// the path (location) we are currently in
// this is path, not file!
// (so if you opened test/demo.htm, it is
// "test/", not "test/demo.htm")
wxString m_LastName;
// name of last opened file (full path)
static wxList m_Handlers;
// list of FS handlers
public:
wxFileSystem() : wxObject() {m_Path = m_LastName = wxEmptyString; m_Handlers.DeleteContents(TRUE);}
void ChangePathTo(const wxString& location, bool is_dir = FALSE);
// sets the current location. Every call to OpenFile is
// relative to this location.
// NOTE !!
// unless is_dir = TRUE 'location' is *not* the directory but
// file contained in this directory
// (so ChangePathTo("dir/subdir/xh.htm") sets m_Path to "dir/subdir/")
wxString GetPath() const {return m_Path;}
wxFSFile* OpenFile(const wxString& location);
// opens given file and returns pointer to input stream.
// Returns NULL if opening failed.
// It first tries to open the file in relative scope
// (based on ChangePathTo()'s value) and then as an absolute
// path.
static void AddHandler(wxFileSystemHandler *handler);
// Adds FS handler.
// In fact, this class is only front-end to the FS hanlers :-)
static void CleanUpHandlers();
// remove all items from the m_Handlers list
};
/*
'location' syntax:
To determine FS type, we're using standard KDE notation:
file:/absolute/path/file.htm
file:relative_path/xxxxx.html
/some/path/x.file ('file:' is default)
http://www.gnome.org
file:subdir/archive.tar.gz#tar:/README.txt
special characters :
':' - FS identificator is before this char
'#' - separator. It can be either HTML anchor ("index.html#news")
(in case there is no ':' in the string to the right from it)
or FS separator
(example : http://www.wxhtml.org/wxhtml-0.1.tar.gz#tar:/include/wxhtml/filesys.h"
this would access tgz archive stored on web)
'/' - directory (path) separator. It is used to determine upper-level path.
HEY! Don't use \ even if you're on Windows!
*/
#endif
// (wxUSE_FS_INET || wxUSE_FS_ZIP) && wxUSE_STREAMS
#endif
// __FILESYS_H__

205
include/wx/font.h Normal file
View File

@@ -0,0 +1,205 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/font.h
// Purpose: wxFontBase class: the interface of wxFont
// Author: Vadim Zeitlin
// Modified by:
// Created: 20.09.99
// RCS-ID: $Id$
// Copyright: (c) wxWindows team
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FONT_H_BASE_
#define _WX_FONT_H_BASE_
#ifdef __GNUG__
#pragma interface "fontbase.h"
#endif
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------
#include "wx/defs.h" // for wxDEFAULT &c
#include "wx/gdiobj.h" // the base class
// ----------------------------------------------------------------------------
// forward declarations
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxFontBase;
class WXDLLEXPORT wxFont;
// ----------------------------------------------------------------------------
// font constants
// ----------------------------------------------------------------------------
// standard font families
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
};
// font styles
enum wxFontStyle
{
wxFONTSTYLE_NORMAL = wxNORMAL,
wxFONTSTYLE_ITALIC = wxITALIC,
wxFONTSTYLE_SLANT = wxSLANT,
wxFONTSTYLE_MAX
};
// font weights
enum wxFontWeight
{
wxFONTWEIGHT_NORMAL = wxNORMAL,
wxFONTWEIGHT_LIGHT = wxLIGHT,
wxFONTWEIGHT_BOLD = wxBOLD,
wxFONTWEIGHT_MAX
};
// font encodings
enum wxFontEncoding
{
wxFONTENCODING_SYSTEM = -1, // system default
wxFONTENCODING_DEFAULT, // current default encoding
// ISO8859 standard defines a number of single-byte charsets
wxFONTENCODING_ISO8859_1, // West European (Latin1)
wxFONTENCODING_ISO8859_2, // Central and East European (Latin2)
wxFONTENCODING_ISO8859_3, // Esperanto (Latin3)
wxFONTENCODING_ISO8859_4, // Baltic languages (Estonian) (Latin4)
wxFONTENCODING_ISO8859_5, // Cyrillic
wxFONTENCODING_ISO8859_6, // Arabic
wxFONTENCODING_ISO8859_7, // Greek
wxFONTENCODING_ISO8859_8, // Hebrew
wxFONTENCODING_ISO8859_9, // Turkish (Latin5)
wxFONTENCODING_ISO8859_10, // Variation of Latin4 (Latin6)
wxFONTENCODING_ISO8859_11, // Thai
wxFONTENCODING_ISO8859_12, // doesn't exist currently, but put it
// here anyhow to make all ISO8859
// consecutive numbers
wxFONTENCODING_ISO8859_13, // Latin7
wxFONTENCODING_ISO8859_14, // Latin8
wxFONTENCODING_ISO8859_15, // Latin9 (a.k.a. Latin0, includes euro)
// Cyrillic charset soup (see http://czyborra.com/charsets/cyrillic.html)
wxFONTENCODING_KOI8, // we don't support any of KOI8 variants
wxFONTENCODING_ALTERNATIVE, // same as MS-DOS CP866
wxFONTENCODING_BULGARIAN, // used under Linux in Bulgaria
// what would we do without Microsoft? They have their own encodings
// for DOS
wxFONTENCODING_CP437, // original MS-DOS codepage
wxFONTENCODING_CP850, // CP437 merged with Latin1
wxFONTENCODING_CP852, // CP437 merged with Latin2
wxFONTENCODING_CP855, // another cyrillic encoding
wxFONTENCODING_CP866, // and another one
// and for Windows
wxFONTENCODING_CP1250, // WinLatin2
wxFONTENCODING_CP1251, // WinCyrillic
wxFONTENCODING_CP1252, // WinLatin1
wxFONTENCODING_MAX
};
// ----------------------------------------------------------------------------
// wxFontBase represents a font object
// ----------------------------------------------------------------------------
class wxFontBase : public wxGDIObject
{
public:
// creator function
static wxFont *New(
int pointSize, // size of the font in points
int family, // see wxFontFamily enum
int style, // see wxFontStyle enum
int weight, // see wxFontWeight enum
bool underlined = FALSE, // not underlined by default
const wxString& face = wxEmptyString, // facename
wxFontEncoding encoding = wxFONTENCODING_DEFAULT); // ISO8859-X, ...
// was the font successfully created?
bool Ok() const { return m_refData != NULL; }
// comparison
bool operator == (const wxFont& font) const;
bool operator != (const wxFont& font) const;
// accessors: get the font characteristics
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;
// change the font characteristics
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;
// translate the fonts into human-readable string (i.e. GetStyleString()
// will return "wxITALIC" for an italic font, ...)
wxString GetFamilyString() const;
wxString GetStyleString() const;
wxString GetWeightString() const;
// the default encoding is used for creating all fonts with default
// encoding parameter
static wxFontEncoding GetDefaultEncoding()
{ return ms_encodingDefault; }
static void SetDefaultEncoding(wxFontEncoding encoding)
{ ms_encodingDefault = encoding; }
protected:
// get the internal data
class WXDLLEXPORT wxFontRefData *GetFontData() const
{ return (wxFontRefData *)m_refData; }
private:
// the currently default encoding: by default, it's the default system
// encoding, but may be changed by the application using
// SetDefaultEncoding() to make all subsequent fonts created without
// specifing encoding parameter using this encoding
static wxFontEncoding ms_encodingDefault;
};
// include the real class declaration
#if defined(__WXMSW__)
#include "wx/msw/font.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/font.h"
#elif defined(__WXGTK__)
#include "wx/gtk/font.h"
#elif defined(__WXQT__)
#include "wx/qt/font.h"
#elif defined(__WXMAC__)
#include "wx/mac/font.h"
#elif defined(__WXPM__)
#include "wx/os2/font.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/font.h"
#endif
// ----------------------------------------------------------------------------
// macros
// ----------------------------------------------------------------------------
#define M_FONTDATA GetFontData()
#endif
// _WX_FONT_H_BASE_

29
include/wx/fontdlg.h Normal file
View File

@@ -0,0 +1,29 @@
#ifndef _WX_FONTDLG_H_BASE_
#define _WX_FONTDLG_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/fontdlg.h"
#elif defined(__WXMOTIF__)
#include "wx/generic/fontdlgg.h"
# define wxFontDialog wxGenericFontDialog
# define sm_classwxFontDialog sm_classwxGenericFontDialog
#elif defined(__WXGTK__)
#include "wx/gtk/fontdlg.h"
#elif defined(__WXQT__)
#include "wx/generic/fontdlgg.h"
# define wxFontDialog wxGenericFontDialog
# define sm_classwxFontDialog sm_classwxGenericFontDialog
#elif defined(__WXMAC__)
#include "wx/generic/fontdlgg.h"
# define wxFontDialog wxGenericFontDialog
# define sm_classwxFontDialog sm_classwxGenericFontDialog
#elif defined(__WXPM__)
#include "wx/os2/fontdlg.h"
#elif defined(__WXSTUBS__)
#include "wx/generic/fontdlgg.h"
# define wxFontDialog wxGenericFontDialog
# define sm_classwxFontDialog sm_classwxGenericFontDialog
#endif
#endif
// _WX_FONTDLG_H_BASE_

51
include/wx/fontenum.h Normal file
View File

@@ -0,0 +1,51 @@
/////////////////////////////////////////////////////////////////////////////
// Name: fontenum.h
// Purpose: wxFontEnumerator class for getting available fonts
// Author: Julian Smart, Vadim Zeitlin
// Modified by: extended to enumerate more than just font families and work ot
// only on Windows (VZ)
// Created: 04/01/98
// RCS-ID: $Id$
// Copyright: (c) Julian Smart, Vadim Zeitlin
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FONTENUM_H_
#define _WX_FONTENUM_H_
#ifdef __GNUG__
#pragma interface "fontenum.h"
#endif
// ----------------------------------------------------------------------------
// wxFontEnumerator enumerates all available fonts on the system or only the
// fonts with given attributes
// ----------------------------------------------------------------------------
class wxFontEnumerator
{
public:
// start enumerating font families - will result in OnFontFamily() being
// called for each available font family (unless it returns FALSE)
virtual bool EnumerateFamilies(bool fixedWidthOnly = FALSE);
// enumerate the different encodings either for given font family or for
// all font families - will result in OnFontEncoding() being called for
// each available (family, encoding) couple
virtual bool EnumerateEncodings(const wxString& family = wxT(""));
// callbacks which are called after one of EnumerateXXX() functions from
// above is invoked - all of them may return FALSE to stop enumeration or
// TRUE to continue with it
// called by EnumerateFamilies
virtual bool OnFontFamily(const wxString& WXUNUSED(family))
{ return FALSE; }
// called by EnumerateEncodings
virtual bool OnFontEncoding(const wxString& WXUNUSED(family),
const wxString& WXUNUSED(encoding))
{ return FALSE; }
};
#endif // _WX_FONTENUM_H_

21
include/wx/frame.h Normal file
View File

@@ -0,0 +1,21 @@
#ifndef _WX_FRAME_H_BASE_
#define _WX_FRAME_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/frame.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/frame.h"
#elif defined(__WXGTK__)
#include "wx/gtk/frame.h"
#elif defined(__WXQT__)
#include "wx/qt/frame.h"
#elif defined(__WXMAC__)
#include "wx/mac/frame.h"
#elif defined(__WXPM__)
#include "wx/os2/frame.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/frame.h"
#endif
#endif
// _WX_FRAME_H_BASE_

58
include/wx/fs_inet.h Normal file
View File

@@ -0,0 +1,58 @@
/////////////////////////////////////////////////////////////////////////////
// Name: fs_inet.h
// Purpose: HTTP and FTP file system
// Author: Vaclav Slavik
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
/*
REMARKS :
This FS creates local cache (in /tmp directory). The cache is freed
on program exit.
Size of cache is limited to cca 1000 items (due to GetTempFileName
limitation)
*/
#ifdef __GNUG__
#pragma implementation
#endif
#include "wx/wxprec.h"
#ifdef __BORDLANDC__
#pragma hdrstop
#endif
#if wxUSE_FS_INET && wxUSE_STREAMS && wxUSE_SOCKETS
#ifndef WXPRECOMP
#include "wx/wx.h"
#endif
#include "wx/filesys.h"
//--------------------------------------------------------------------------------
// wxInternetFSHandler
//--------------------------------------------------------------------------------
class WXDLLEXPORT wxInternetFSHandler : public wxFileSystemHandler
{
private:
wxHashTable m_Cache;
public:
virtual bool CanOpen(const wxString& location);
virtual wxFSFile* OpenFile(wxFileSystem& fs, const wxString& location);
~wxInternetFSHandler();
};
#endif
// wxUSE_FS_INET && wxUSE_STREAMS && wxUSE_SOCKETS

44
include/wx/fs_zip.h Normal file
View File

@@ -0,0 +1,44 @@
/////////////////////////////////////////////////////////////////////////////
// Name: fs_zip.h
// Purpose: ZIP file system
// Author: Vaclav Slavik
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
#pragma implementation
#endif
#include "wx/wxprec.h"
#ifdef __BORDLANDC__
#pragma hdrstop
#endif
#if wxUSE_FS_ZIP && wxUSE_STREAMS
#ifndef WXPRECOMP
#include "wx/wx.h"
#endif
#include "wx/filesys.h"
//--------------------------------------------------------------------------------
// wxZipFSHandler
//--------------------------------------------------------------------------------
class WXDLLEXPORT wxZipFSHandler : public wxFileSystemHandler
{
public:
virtual bool CanOpen(const wxString& location);
virtual wxFSFile* OpenFile(wxFileSystem& fs, const wxString& location);
~wxZipFSHandler();
};
#endif
// wxUSE_FS_ZIP && wxUSE_STREAMS

21
include/wx/gauge.h Normal file
View File

@@ -0,0 +1,21 @@
#ifndef _WX_GAUGE_H_BASE_
#define _WX_GAUGE_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/gauge.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/gauge.h"
#elif defined(__WXGTK__)
#include "wx/gtk/gauge.h"
#elif defined(__WXQT__)
#include "wx/qt/gauge.h"
#elif defined(__WXMAC__)
#include "wx/mac/gauge.h"
#elif defined(__WXPM__)
#include "wx/os2/gauge.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/gauge.h"
#endif
#endif
// _WX_GAUGE_H_BASE_

487
include/wx/gdicmn.h Normal file
View File

@@ -0,0 +1,487 @@
/////////////////////////////////////////////////////////////////////////////
// Name: gdicmn.h
// Purpose: Common GDI classes, types and declarations
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c)
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_GDICMNH__
#define _WX_GDICMNH__
// ---------------------------------------------------------------------------
// headers
// ---------------------------------------------------------------------------
#ifdef __GNUG__
#pragma interface "gdicmn.h"
#endif
#include "wx/object.h"
#include "wx/list.h"
#include "wx/hash.h"
#include "wx/string.h"
#include "wx/setup.h"
#include "wx/colour.h"
// ---------------------------------------------------------------------------
// forward declarations
// ---------------------------------------------------------------------------
class WXDLLEXPORT wxBitmap;
class WXDLLEXPORT wxBrush;
class WXDLLEXPORT wxColour;
class WXDLLEXPORT wxCursor;
class WXDLLEXPORT wxFont;
class WXDLLEXPORT wxIcon;
class WXDLLEXPORT wxPalette;
class WXDLLEXPORT wxPen;
class WXDLLEXPORT wxRegion;
class WXDLLEXPORT wxString;
// ---------------------------------------------------------------------------
// constants
// ---------------------------------------------------------------------------
// Bitmap flags
enum
{
wxBITMAP_TYPE_BMP = 1,
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_ANY = 50
};
// Standard cursors
enum wxStockCursor
{
wxCURSOR_NONE, // should be 0
wxCURSOR_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,
#ifdef __WXGTK__
wxCURSOR_DEFAULT, // standard X11 cursor
#endif
#ifdef __X__
// Not yet implemented for Windows
wxCURSOR_CROSS_REVERSE,
wxCURSOR_DOUBLE_ARROW,
wxCURSOR_BASED_ARROW_UP,
wxCURSOR_BASED_ARROW_DOWN,
#endif // X11
wxCURSOR_MAX
};
// ---------------------------------------------------------------------------
// macros
// ---------------------------------------------------------------------------
/* Useful macro for creating icons portably, for example:
wxIcon *icon = new wxICON(mondrian);
expands into:
wxIcon *icon = new wxIcon("mondrian"); // On wxMSW
wxIcon *icon = new wxIcon(mondrian_xpm); // On wxGTK
*/
#ifdef __WXMSW__
// Load from a resource
#define wxICON(X) wxIcon("" #X "")
#elif defined(__WXPM__)
// Load from a resource
#define wxICON(X) wxIcon("" #X "")
#elif defined(__WXGTK__)
// Initialize from an included XPM
#define wxICON(X) wxIcon( (const char**) X##_xpm )
#elif defined(__WXMOTIF__)
// Initialize from an included XPM
#define wxICON(X) wxIcon( X##_xpm )
#else
// This will usually mean something on any platform
#define wxICON(X) wxIcon("" #X "")
#endif // platform
/* Another macro: this one is for portable creation of bitmaps. We assume that
under Unix bitmaps live in XPMs and under Windows they're in ressources.
*/
#if defined(__WXMSW__) || defined(__WXPM__)
#define wxBITMAP(name) wxBitmap(#name, wxBITMAP_TYPE_RESOURCE)
#else // !(Windows || OS2)
#define wxBITMAP(name) wxBitmap(name##_xpm, wxBITMAP_TYPE_XPM)
#endif // platform
// ===========================================================================
// classes
// ===========================================================================
// ---------------------------------------------------------------------------
// wxSize
// ---------------------------------------------------------------------------
class WXDLLEXPORT wxSize
{
public:
// members are public for compatibility (don't use them directly,
// especially that there names were chosen very unfortunately - they should
// have been called width and height)
long x;
long y;
// constructors
wxSize() { x = y = 0; }
wxSize(long xx, long yy) { Set(xx, yy); }
// no copy ctor or assignment operator - the defaults are ok
bool operator==(const wxSize& sz) const { return x == sz.x && y == sz.y; }
// FIXME are these really useful? If they're, we should have += &c as well
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); }
// accessors
void Set(long xx, long yy) { x = xx; y = yy; }
void SetWidth(long w) { x = w; }
void SetHeight(long h) { y = h; }
long GetWidth() const { return x; }
long GetHeight() const { return y; }
// compatibility
long GetX() const { return x; }
long GetY() const { return y; }
};
// ---------------------------------------------------------------------------
// Point classes: with real or integer coordinates
// ---------------------------------------------------------------------------
class WXDLLEXPORT 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) { return wxRealPoint(x + pt.x, y + pt.y); }
wxRealPoint operator-(const wxRealPoint& pt) { return wxRealPoint(x - pt.x, y - pt.y); }
bool operator==(const wxRealPoint& pt) const { return x == pt.x && y == pt.y; }
};
class WXDLLEXPORT wxPoint
{
public:
#if defined(__WXMSW__) && !defined(__WIN32__)
int x;
int y;
#else
long x;
long y;
#endif
wxPoint() { x = y = 0; };
wxPoint(long xx, long yy) { x = xx; y = yy; };
// no copy ctor or assignment operator - the defaults are ok
// comparison
bool operator==(const wxPoint& p) const { return x == p.x && y == p.y; }
bool operator!=(const wxPoint& p) const { return !(*this == p); }
// arithmetic operations (component wise)
wxPoint operator+(const wxPoint& p) { return wxPoint(x + p.x, y + p.y); }
wxPoint operator-(const wxPoint& p) { 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; }
};
#if WXWIN_COMPATIBILITY
#define wxIntPoint wxPoint
#define wxRectangle wxRect
#endif // WXWIN_COMPATIBILITY
// ---------------------------------------------------------------------------
// wxRect
// ---------------------------------------------------------------------------
class WXDLLEXPORT wxRect
{
public:
wxRect() { x = y = width = height = 0; }
wxRect(long xx, long yy, long ww, long hh)
{ x = xx; y = yy; width = ww; height = hh; }
wxRect(const wxPoint& topLeft, const wxPoint& bottomRight);
wxRect(const wxPoint& pos, const wxSize& size);
// default copy ctor and assignment operators ok
long GetX() const { return x; }
void SetX(long xx) { x = xx; }
long GetY() const { return y; }
void SetY(long yy) { y = yy; }
long GetWidth() const { return width; }
void SetWidth(long w) { width = w; }
long GetHeight() const { return height; }
void SetHeight(long h) { height = h; }
wxPoint GetPosition() const { return wxPoint(x, y); }
wxSize GetSize() const { return wxSize(width, height); }
// MFC-like functions
long GetLeft() const { return x; }
long GetTop() const { return y; }
long GetBottom() const { return y + height - 1; }
long GetRight() const { return x + width - 1; }
void SetLeft(long left) { x = left; }
void SetRight(long right) { width = right - x + 1; }
void SetTop(long top) { y = top; }
void SetBottom(long bottom) { height = bottom - y + 1; }
bool operator==(const wxRect& rect) const;
bool operator!=(const wxRect& rect) const { return !(*this == rect); }
bool Inside(int cx, int cy) const;
wxRect operator + (const wxRect& rect) const;
const wxRect& operator += (const wxRect& rect);
public:
long x, y, width, height;
};
// ---------------------------------------------------------------------------
// Management of pens, brushes and fonts
// ---------------------------------------------------------------------------
class WXDLLEXPORT wxPenList : public wxList
{
DECLARE_DYNAMIC_CLASS(wxPenList)
public:
wxPenList() { }
~wxPenList();
void AddPen(wxPen *pen);
void RemovePen(wxPen *pen);
wxPen *FindOrCreatePen(const wxColour& colour, int width, int style);
};
class WXDLLEXPORT wxBrushList : public wxList
{
DECLARE_DYNAMIC_CLASS(wxBrushList)
public:
wxBrushList() { }
~wxBrushList();
void AddBrush(wxBrush *brush);
void RemoveBrush(wxBrush *brush);
wxBrush *FindOrCreateBrush(const wxColour& colour, int style);
};
WXDLLEXPORT_DATA(extern const wxChar*) wxEmptyString;
class WXDLLEXPORT wxFontList : public wxList
{
DECLARE_DYNAMIC_CLASS(wxFontList)
public:
wxFontList() { }
~wxFontList();
void AddFont(wxFont *font);
void RemoveFont(wxFont *font);
wxFont *FindOrCreateFont(int pointSize, int family, int style, int weight,
bool underline = FALSE,
const wxString& face = wxEmptyString);
};
class WXDLLEXPORT wxColourDatabase : public wxList
{
DECLARE_CLASS(wxColourDatabase)
public:
wxColourDatabase(int type);
~wxColourDatabase() ;
// Not const because it may add a name to the database
wxColour *FindColour(const wxString& colour) ;
wxString FindName(const wxColour& colour) const;
void Initialize();
};
class WXDLLEXPORT wxBitmapList : public wxList
{
DECLARE_DYNAMIC_CLASS(wxBitmapList)
public:
wxBitmapList();
~wxBitmapList();
void AddBitmap(wxBitmap *bitmap);
void RemoveBitmap(wxBitmap *bitmap);
};
class WXDLLEXPORT wxResourceCache: public wxList
{
public:
wxResourceCache() { }
wxResourceCache(const unsigned int keyType) : wxList(keyType) { }
~wxResourceCache();
private:
DECLARE_DYNAMIC_CLASS(wxResourceCache)
};
// ---------------------------------------------------------------------------
// global variables
// ---------------------------------------------------------------------------
// Lists of GDI objects
WXDLLEXPORT_DATA(extern wxPenList*) wxThePenList;
WXDLLEXPORT_DATA(extern wxBrushList*) wxTheBrushList;
WXDLLEXPORT_DATA(extern wxFontList*) wxTheFontList;
WXDLLEXPORT_DATA(extern wxBitmapList*) wxTheBitmapList;
// Stock objects
WXDLLEXPORT_DATA(extern wxFont*) wxNORMAL_FONT;
WXDLLEXPORT_DATA(extern wxFont*) wxSMALL_FONT;
WXDLLEXPORT_DATA(extern wxFont*) wxITALIC_FONT;
WXDLLEXPORT_DATA(extern wxFont*) wxSWISS_FONT;
WXDLLEXPORT_DATA(extern wxPen*) wxRED_PEN;
WXDLLEXPORT_DATA(extern wxPen*) wxCYAN_PEN;
WXDLLEXPORT_DATA(extern wxPen*) wxGREEN_PEN;
WXDLLEXPORT_DATA(extern wxPen*) wxBLACK_PEN;
WXDLLEXPORT_DATA(extern wxPen*) wxWHITE_PEN;
WXDLLEXPORT_DATA(extern wxPen*) wxTRANSPARENT_PEN;
WXDLLEXPORT_DATA(extern wxPen*) wxBLACK_DASHED_PEN;
WXDLLEXPORT_DATA(extern wxPen*) wxGREY_PEN;
WXDLLEXPORT_DATA(extern wxPen*) wxMEDIUM_GREY_PEN;
WXDLLEXPORT_DATA(extern wxPen*) wxLIGHT_GREY_PEN;
WXDLLEXPORT_DATA(extern wxBrush*) wxBLUE_BRUSH;
WXDLLEXPORT_DATA(extern wxBrush*) wxGREEN_BRUSH;
WXDLLEXPORT_DATA(extern wxBrush*) wxWHITE_BRUSH;
WXDLLEXPORT_DATA(extern wxBrush*) wxBLACK_BRUSH;
WXDLLEXPORT_DATA(extern wxBrush*) wxGREY_BRUSH;
WXDLLEXPORT_DATA(extern wxBrush*) wxMEDIUM_GREY_BRUSH;
WXDLLEXPORT_DATA(extern wxBrush*) wxLIGHT_GREY_BRUSH;
WXDLLEXPORT_DATA(extern wxBrush*) wxTRANSPARENT_BRUSH;
WXDLLEXPORT_DATA(extern wxBrush*) wxCYAN_BRUSH;
WXDLLEXPORT_DATA(extern wxBrush*) wxRED_BRUSH;
WXDLLEXPORT_DATA(extern wxColour*) wxBLACK;
WXDLLEXPORT_DATA(extern wxColour*) wxWHITE;
WXDLLEXPORT_DATA(extern wxColour*) wxRED;
WXDLLEXPORT_DATA(extern wxColour*) wxBLUE;
WXDLLEXPORT_DATA(extern wxColour*) wxGREEN;
WXDLLEXPORT_DATA(extern wxColour*) wxCYAN;
WXDLLEXPORT_DATA(extern wxColour*) wxLIGHT_GREY;
// 'Null' objects
WXDLLEXPORT_DATA(extern wxBitmap) wxNullBitmap;
WXDLLEXPORT_DATA(extern wxIcon) wxNullIcon;
WXDLLEXPORT_DATA(extern wxCursor) wxNullCursor;
WXDLLEXPORT_DATA(extern wxPen) wxNullPen;
WXDLLEXPORT_DATA(extern wxBrush) wxNullBrush;
WXDLLEXPORT_DATA(extern wxPalette) wxNullPalette;
WXDLLEXPORT_DATA(extern wxFont) wxNullFont;
WXDLLEXPORT_DATA(extern wxColour) wxNullColour;
// Stock cursors types
WXDLLEXPORT_DATA(extern wxCursor*) wxSTANDARD_CURSOR;
WXDLLEXPORT_DATA(extern wxCursor*) wxHOURGLASS_CURSOR;
WXDLLEXPORT_DATA(extern wxCursor*) wxCROSS_CURSOR;
WXDLLEXPORT_DATA(extern wxColourDatabase*) wxTheColourDatabase;
WXDLLEXPORT_DATA(extern const wxChar*) wxPanelNameStr;
WXDLLEXPORT_DATA(extern const wxSize) wxDefaultSize;
WXDLLEXPORT_DATA(extern const wxPoint) wxDefaultPosition;
// The list of objects which should be deleted
WXDLLEXPORT_DATA(extern wxList) wxPendingDelete;
// ---------------------------------------------------------------------------
// global functions
// ---------------------------------------------------------------------------
// resource management
extern void WXDLLEXPORT wxInitializeStockObjects();
extern void WXDLLEXPORT wxInitializeStockLists();
extern void WXDLLEXPORT wxDeleteStockObjects();
extern void WXDLLEXPORT wxDeleteStockLists();
// is the display colour (or monochrome)?
extern bool WXDLLEXPORT wxColourDisplay();
// Returns depth of screen
extern int WXDLLEXPORT wxDisplayDepth();
#define wxGetDisplayDepth wxDisplayDepth
// get the diaplay size
extern void WXDLLEXPORT wxDisplaySize(int *width, int *height);
extern wxSize WXDLLEXPORT wxGetDisplaySize();
// set global cursor
extern void WXDLLEXPORT wxSetCursor(const wxCursor& cursor);
#endif
// _WX_GDICMNH__

21
include/wx/gdiobj.h Normal file
View File

@@ -0,0 +1,21 @@
#ifndef _WX_GDIOBJ_H_BASE_
#define _WX_GDIOBJ_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/gdiobj.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/gdiobj.h"
#elif defined(__WXGTK__)
#include "wx/gtk/gdiobj.h"
#elif defined(__WXQT__)
#include "wx/qt/gdiobj.h"
#elif defined(__WXMAC__)
#include "wx/mac/gdiobj.h"
#elif defined(__WXPM__)
#include "wx/os2/gdiobj.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/gdiobj.h"
#endif
#endif
// _WX_GDIOBJ_H_BASE_

View File

@@ -0,0 +1,2 @@
Makefile.in

View File

@@ -0,0 +1,70 @@
///////////////////////////////////////////////////////////////////////////////
// Name: generic/caret.h
// Purpose: generic wxCaret class
// Author: Vadim Zeitlin (original code by Robert Roebling)
// Modified by:
// Created: 25.05.99
// RCS-ID: $Id$
// Copyright: (c) wxWindows team
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_CARET_H_
#define _WX_CARET_H_
#ifdef __GNUG__
#pragma interface "caret.h"
#endif
#include "wx/timer.h"
class wxCaret;
class wxCaretTimer : public wxTimer
{
public:
wxCaretTimer(wxCaret *caret);
virtual void Notify();
private:
wxCaret *m_caret;
};
class wxCaret : public wxCaretBase
{
public:
// ctors
// -----
// default - use Create()
wxCaret() : m_timer(this) { InitGeneric(); }
// creates a block caret associated with the given window
wxCaret(wxWindowBase *window, int width, int height)
: wxCaretBase(window, width, height), m_timer(this) { InitGeneric(); }
wxCaret(wxWindowBase *window, const wxSize& size)
: wxCaretBase(window, size), m_timer(this) { InitGeneric(); }
virtual ~wxCaret();
// implementation
// --------------
// blink the caret once
void Blink();
protected:
virtual void DoShow();
virtual void DoHide();
virtual void DoMove();
// draw the caret on the given DC
void DoDraw(wxDC *dc);
private:
// GTK specific initialization
void InitGeneric();
wxCaretTimer m_timer;
bool m_blinkedOut; // TRUE => caret hidden right now
};
#endif // _WX_CARET_H_

View File

@@ -0,0 +1,135 @@
/////////////////////////////////////////////////////////////////////////////
// Name: choicdgg.h
// Purpose: Generic choice dialogs
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c)
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __CHOICEDLGH_G__
#define __CHOICEDLGH_G__
#ifdef __GNUG__
#pragma interface "choicdgg.h"
#endif
#include "wx/setup.h"
#include "wx/dialog.h"
#include "wx/listbox.h"
#define wxCHOICE_HEIGHT 150
#define wxCHOICE_WIDTH 200
#define wxCHOICEDLG_STYLE (wxDEFAULT_DIALOG_STYLE|wxOK | wxCANCEL | wxCENTRE)
class WXDLLEXPORT wxSingleChoiceDialog: public wxDialog
{
DECLARE_DYNAMIC_CLASS(wxSingleChoiceDialog)
public:
wxSingleChoiceDialog(wxWindow *parent,
const wxString& message,
const wxString& caption,
int n,
const wxString *choices,
char **clientData = (char **)NULL,
long style = wxCHOICEDLG_STYLE,
const wxPoint& pos = wxDefaultPosition);
wxSingleChoiceDialog(wxWindow *parent,
const wxString& message,
const wxString& caption,
const wxStringList& choices,
char **clientData = (char **)NULL,
long style = wxCHOICEDLG_STYLE,
const wxPoint& pos = wxDefaultPosition);
bool Create(wxWindow *parent,
const wxString& message,
const wxString& caption,
int n,
const wxString *choices,
char **clientData = (char **)NULL,
long style = wxCHOICEDLG_STYLE,
const wxPoint& pos = wxDefaultPosition);
bool Create(wxWindow *parent,
const wxString& message,
const wxString& caption,
const wxStringList& choices,
char **clientData = (char **)NULL,
long style = wxCHOICEDLG_STYLE,
const wxPoint& pos = wxDefaultPosition);
void SetSelection(int sel) ;
int GetSelection() const { return m_selection; }
wxString GetStringSelection() const { return m_stringSelection; }
// get client data associated with selection
void *GetClientData() const { return m_clientData; }
// obsolete function (NB: no need to make it return wxChar, it's untyped)
char *GetSelectionClientData() const { return (char *)m_clientData; }
// implementation from now on
void OnOK(wxCommandEvent& event);
void OnListBoxDClick(wxCommandEvent& event);
protected:
int m_selection;
int m_dialogStyle;
wxString m_stringSelection;
wxListBox *m_listbox;
private:
DECLARE_EVENT_TABLE()
};
WXDLLEXPORT wxString wxGetSingleChoice(const wxString& message, const wxString& caption,
int n, const wxString *choices, wxWindow *parent = (wxWindow *) NULL,
int x = -1, int y = -1, bool centre = TRUE,
int width = wxCHOICE_WIDTH, int height = wxCHOICE_HEIGHT);
WXDLLEXPORT wxString wxGetSingleChoice(const wxString& message, const wxString& caption,
int n, wxChar *choices[], wxWindow *parent = (wxWindow *) NULL,
int x = -1, int y = -1, bool centre = TRUE,
int width = wxCHOICE_WIDTH, int height = wxCHOICE_HEIGHT);
// Same as above but gets position in list of strings, instead of string,
// or -1 if no selection
WXDLLEXPORT int wxGetSingleChoiceIndex(const wxString& message, const wxString& caption,
int n, const wxString *choices, wxWindow *parent = (wxWindow *) NULL,
int x = -1, int y = -1, bool centre = TRUE,
int width = wxCHOICE_WIDTH, int height = wxCHOICE_HEIGHT);
WXDLLEXPORT int wxGetSingleChoiceIndex(const wxString& message, const wxString& caption,
int n, wxChar *choices[], wxWindow *parent = (wxWindow *) NULL,
int x = -1, int y = -1, bool centre = TRUE,
int width = wxCHOICE_WIDTH, int height = wxCHOICE_HEIGHT);
// Return client data instead
// FIXME: this is horrible, using "char *" instead of "void *" belongs to the 70s!
WXDLLEXPORT wxChar* wxGetSingleChoiceData(const wxString& message, const wxString& caption,
int n, const wxString *choices, char **client_data,
wxWindow *parent = (wxWindow *) NULL, int x = -1, int y = -1,
bool centre = TRUE,
int width = wxCHOICE_WIDTH, int height = wxCHOICE_HEIGHT);
WXDLLEXPORT wxChar* wxGetSingleChoiceData(const wxString& message, const wxString& caption,
int n, wxChar *choices[], char **client_data,
wxWindow *parent = (wxWindow *) NULL, int x = -1, int y = -1,
bool centre = TRUE,
int width = wxCHOICE_WIDTH, int height = wxCHOICE_HEIGHT);
/*
WXDLLEXPORT int wxGetMultipleChoice(const wxString& message, const wxString& caption,
int n, const wxString *choices,
int nsel, int * selection,
wxWindow *parent = NULL, int x = -1 , int y = -1, bool centre = TRUE,
int width = wxCHOICE_WIDTH, int height = wxCHOICE_HEIGHT);
*/
#endif

View File

@@ -0,0 +1,120 @@
/////////////////////////////////////////////////////////////////////////////
// Name: colrdlgg.h
// Purpose: wxGenericColourDialog
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c)
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __COLORDLGH_G__
#define __COLORDLGH_G__
#ifdef __GNUG__
#pragma interface "colrdlgg.h"
#endif
#include "wx/setup.h"
#include "wx/gdicmn.h"
#include "wx/dialog.h"
#include "wx/cmndata.h"
#define wxID_ADD_CUSTOM 3000
#define wxID_RED_SLIDER 3001
#define wxID_GREEN_SLIDER 3002
#define wxID_BLUE_SLIDER 3003
class WXDLLEXPORT wxSlider;
class WXDLLEXPORT wxGenericColourDialog: public wxDialog
{
DECLARE_DYNAMIC_CLASS(wxGenericColourDialog)
protected:
wxColourData colourData;
wxWindow *dialogParent;
// Area reserved for grids of colours
wxRect standardColoursRect;
wxRect customColoursRect;
wxRect singleCustomColourRect;
// Size of each colour rectangle
wxPoint smallRectangleSize;
// For single customizable colour
wxPoint customRectangleSize;
// Grid spacing (between rectangles)
int gridSpacing;
// Section spacing (between left and right halves of dialog box)
int sectionSpacing;
// 48 'standard' colours
wxColour standardColours[48];
// 16 'custom' colours
wxColour customColours[16];
// One single custom colour (use sliders)
wxColour singleCustomColour;
// Which colour is selected? An index into one of the two areas.
int colourSelection;
int whichKind; // 1 for standard colours, 2 for custom colours,
wxSlider *redSlider;
wxSlider *greenSlider;
wxSlider *blueSlider;
int buttonY;
int okButtonX;
int customButtonX;
// static bool colourDialogCancelled;
public:
wxGenericColourDialog(void);
wxGenericColourDialog(wxWindow *parent, wxColourData *data = (wxColourData *) NULL);
~wxGenericColourDialog(void);
bool Create(wxWindow *parent, wxColourData *data = (wxColourData *) NULL);
int ShowModal(void);
wxColourData &GetColourData(void) { return colourData; }
// Internal functions
void OnMouseEvent(wxMouseEvent& event);
void OnPaint(wxPaintEvent& event);
virtual void CalculateMeasurements(void);
virtual void CreateWidgets(void);
virtual void InitializeColours(void);
virtual void PaintBasicColours(wxDC& dc);
virtual void PaintCustomColours(wxDC& dc);
virtual void PaintCustomColour(wxDC& dc);
virtual void PaintHighlight(wxDC& dc, bool draw);
virtual void OnBasicColourClick(int which);
virtual void OnCustomColourClick(int which);
void OnAddCustom(wxCommandEvent& event);
void OnRedSlider(wxCommandEvent& event);
void OnGreenSlider(wxCommandEvent& event);
void OnBlueSlider(wxCommandEvent& event);
void OnCloseWindow(wxCloseEvent& event);
DECLARE_EVENT_TABLE()
};
/* This shouldn't be necessary, we have a #define in wx/colordlg.h.
#ifdef __WXGTK__
typedef wxGenericColourDialog wxColourDialog;
#endif
*/
#endif

View File

@@ -0,0 +1,32 @@
/* XPM */
static char *cross_xpm[] = {
/* columns rows colors chars-per-pixel */
"10 10 16 1",
" c Gray0",
". c #bf0000",
"X c #00bf00",
"o c #bfbf00",
"O c #0000bf",
"+ c #bf00bf",
"@ c #00bfbf",
"# c None",
"$ c #808080",
"% c Red",
"& c Green",
"* c Yellow",
"= c Blue",
"- c Magenta",
"; c Cyan",
": c Gray100",
/* pixels */
" ######## ",
" #### ",
"# ## #",
"## ##",
"### ###",
"### ###",
"## ##",
"# ## #",
" #### ",
" ###### "
};

281
include/wx/generic/dcpsg.h Normal file
View File

@@ -0,0 +1,281 @@
/////////////////////////////////////////////////////////////////////////////
// Name: dcps.h
// Purpose: wxPostScriptDC class
// Author: Julian Smart and others
// Modified by:
// RCS-ID: $Id$
// Copyright: (c) Julian Smart, Robert Roebling and Markus Holzem
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DCPSG_H_
#define _WX_DCPSG_H_
#ifdef __GNUG__
#pragma interface
#endif
#include "wx/dc.h"
#if wxUSE_PRINTING_ARCHITECTURE
#if wxUSE_POSTSCRIPT
#include "wx/dialog.h"
#include "wx/module.h"
#include "wx/cmndata.h"
//-----------------------------------------------------------------------------
// classes
//-----------------------------------------------------------------------------
class wxPostScriptDC;
//-----------------------------------------------------------------------------
// wxPostScriptDC
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxPostScriptDC: public wxDC
{
DECLARE_DYNAMIC_CLASS(wxPostScriptDC)
public:
wxPostScriptDC();
// Deprecated constructor
wxPostScriptDC(const wxString& output, bool interactive = TRUE, wxWindow *parent = (wxWindow *) NULL);
// Recommended constructor
wxPostScriptDC(const wxPrintData& printData);
~wxPostScriptDC();
// Deprecated
bool Create(const wxString& output, bool interactive = TRUE, wxWindow *parent = (wxWindow *) NULL);
virtual bool Ok() const;
// Deprecated: use wxGenericPrintDialog instead
virtual bool PrinterDialog(wxWindow *parent = (wxWindow *) NULL);
virtual void BeginDrawing() {}
virtual void EndDrawing() {}
void DoFloodFill(long x1, long y1, const wxColour &col, int style=wxFLOOD_SURFACE );
bool DoGetPixel(long x1, long y1, wxColour *col) const;
void DoDrawLine(long x1, long y1, long x2, long y2);
void DoCrossHair(long x, long y) ;
void DoDrawArc(long x1,long y1,long x2,long y2,long xc,long yc);
void DoDrawEllipticArc(long x,long y,long w,long h,double sa,double ea);
void DoDrawPoint(long x, long y);
void DoDrawLines(int n, wxPoint points[], long xoffset = 0, long yoffset = 0);
void DoDrawPolygon(int n, wxPoint points[], long xoffset = 0, long yoffset = 0, int fillStyle=wxODDEVEN_RULE);
void DoDrawRectangle(long x, long y, long width, long height);
void DoDrawRoundedRectangle(long x, long y, long width, long height, double radius = 20);
void DoDrawEllipse(long x, long y, long width, long height);
void DoDrawSpline(wxList *points);
bool DoBlit(long xdest, long ydest, long width, long height,
wxDC *source, long xsrc, long ysrc, int rop = wxCOPY, bool useMask = FALSE);
inline bool CanDrawBitmap(void) const { return TRUE; }
void DoDrawIcon( const wxIcon& icon, long x, long y );
void DoDrawBitmap( const wxBitmap& bitmap, long x, long y, bool useMask=FALSE );
void DoDrawText(const wxString& text, long x, long y );
void Clear();
void SetFont( const wxFont& font );
void SetPen( const wxPen& pen );
void SetBrush( const wxBrush& brush );
void SetLogicalFunction( int function );
void SetBackground( const wxBrush& brush );
void SetClippingRegion(long x, long y, long width, long height);
void SetClippingRegion( const wxRegion &region );
void DestroyClippingRegion();
void DoSetClippingRegionAsRegion( const wxRegion &WXUNUSED(clip) ) {}
bool StartDoc(const wxString& message);
void EndDoc();
void StartPage();
void EndPage();
long GetCharHeight() const;
long GetCharWidth() const;
inline bool CanGetTextExtent(void) const { return FALSE; }
void GetTextExtent(const wxString& string, long *x, long *y,
long *descent = (long *) NULL,
long *externalLeading = (long *) NULL,
wxFont *theFont = (wxFont *) NULL ) const;
void DoGetSize(int* width, int* height) const;
void DoGetSizeMM(int *width, int *height) const;
// Resolution in pixels per logical inch
wxSize GetPPI(void) const;
void SetAxisOrientation( bool xLeftRight, bool yBottomUp );
void SetDeviceOrigin( long x, long y );
inline void SetBackgroundMode(int WXUNUSED(mode)) {}
inline void SetPalette(const wxPalette& WXUNUSED(palette)) {}
wxPrintData& GetPrintData() { return m_printData; }
void SetPrintData(const wxPrintData& data) { m_printData = data; }
virtual int GetDepth() const { return 24; }
protected:
FILE* m_pstream; // PostScript output stream
wxString m_title;
unsigned char m_currentRed;
unsigned char m_currentGreen;
unsigned char m_currentBlue;
int m_pageNumber;
bool m_clipping;
double m_underlinePosition;
double m_underlineThickness;
wxPrintData m_printData;
};
// Deprecated: should use wxGenericPrintDialog instead.
#if 1
#define wxID_PRINTER_COMMAND 1
#define wxID_PRINTER_OPTIONS 2
#define wxID_PRINTER_ORIENTATION 3
#define wxID_PRINTER_MODES 4
#define wxID_PRINTER_X_SCALE 5
#define wxID_PRINTER_Y_SCALE 6
#define wxID_PRINTER_X_TRANS 7
#define wxID_PRINTER_Y_TRANS 8
class WXDLLEXPORT wxPostScriptPrintDialog: public wxDialog
{
DECLARE_CLASS(wxPostScriptPrintDialog)
public:
wxPostScriptPrintDialog (wxWindow *parent, const wxString& title,
const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
long style = wxDEFAULT_DIALOG_STYLE);
virtual int ShowModal(void) ;
};
#endif
// Print Orientation (Should also add Left, Right)
enum
{
PS_PORTRAIT = 1,
PS_LANDSCAPE = 2
};// ps_orientation = PS_PORTRAIT;
// Print Actions
enum
{
PS_NONE,
PS_PREVIEW,
PS_FILE,
PS_PRINTER
};// ps_action = PS_PREVIEW;
// PostScript printer settings
WXDLLEXPORT void wxSetPrinterCommand(const wxString& cmd);
WXDLLEXPORT void wxSetPrintPreviewCommand(const wxString& cmd);
WXDLLEXPORT void wxSetPrinterOptions(const wxString& flags);
WXDLLEXPORT void wxSetPrinterOrientation(int orientation);
WXDLLEXPORT void wxSetPrinterScaling(double x, double y);
WXDLLEXPORT void wxSetPrinterTranslation(long x, long y);
WXDLLEXPORT void wxSetPrinterMode(int mode);
WXDLLEXPORT void wxSetPrinterFile(const wxString& f);
WXDLLEXPORT void wxSetAFMPath(const wxString& f);
// Get current values
WXDLLEXPORT wxString wxGetPrinterCommand();
WXDLLEXPORT wxString wxGetPrintPreviewCommand();
WXDLLEXPORT wxString wxGetPrinterOptions();
WXDLLEXPORT int wxGetPrinterOrientation();
WXDLLEXPORT void wxGetPrinterScaling(double* x, double* y);
WXDLLEXPORT void wxGetPrinterTranslation(long *x, long *y);
WXDLLEXPORT int wxGetPrinterMode();
WXDLLEXPORT wxString wxGetPrinterFile();
WXDLLEXPORT wxString wxGetAFMPath();
/*
* PostScript print setup information.
* This is now obsolete, but retained for a while for compatibility
*/
class WXDLLEXPORT wxPrintSetupData: public wxObject
{
public:
wxPrintSetupData();
~wxPrintSetupData();
void SetPrinterCommand(const wxString& cmd) { m_printerCommand = cmd; };
void SetPaperName(const wxString& paper) { m_paperName = paper; };
void SetPrintPreviewCommand(const wxString& cmd) { m_previewCommand = cmd; };
void SetPrinterOptions(const wxString& flags) { m_printerFlags = flags; };
void SetPrinterFile(const wxString& f) { m_printerFile = f; };
void SetPrinterOrientation(int orient) { m_printerOrient = orient; };
void SetPrinterScaling(double x, double y) { m_printerScaleX = x; m_printerScaleY = y; };
void SetPrinterTranslation(long x, long y) { m_printerTranslateX = x; m_printerTranslateY = y; };
// 1 = Preview, 2 = print to file, 3 = send to printer
void SetPrinterMode(int mode) { m_printerMode = mode; };
void SetAFMPath(const wxString& f) { m_afmPath = f; };
void SetColour(bool col) { m_printColour = col; };
// Get current values
wxString GetPrinterCommand() const { return m_printerCommand; } ;
wxString GetPrintPreviewCommand() const { return m_previewCommand; } ;
wxString GetPrinterOptions() const { return m_printerFlags; };
wxString GetPrinterFile() const { return m_printerFile; };
wxString GetPaperName() const { return m_paperName; }
int GetPrinterOrientation() const { return m_printerOrient; };
void GetPrinterScaling(double* x, double* y) const { *x = m_printerScaleX; *y = m_printerScaleY; };
void GetPrinterTranslation(long *x, long *y) const { *x = m_printerTranslateX; *y = m_printerTranslateY; };
int GetPrinterMode() const { return m_printerMode; };
wxString GetAFMPath() const { return m_afmPath; };
bool GetColour() const { return m_printColour; };
void operator=(wxPrintSetupData& data);
// Initialize from a wxPrintData object (wxPrintData should now be used instead of wxPrintSetupData).
// There is also an operator for initializing a wxPrintData from a wxPrintSetupData.
void operator=(const wxPrintData& data);
public:
wxString m_printerCommand;
wxString m_previewCommand;
wxString m_printerFlags;
wxString m_printerFile;
int m_printerOrient;
double m_printerScaleX;
double m_printerScaleY;
long m_printerTranslateX;
long m_printerTranslateY;
// 1 = Preview, 2 = print to file, 3 = send to printer
int m_printerMode;
wxString m_afmPath;
// A name in the paper database (see paper.h)
wxString m_paperName;
bool m_printColour;
DECLARE_DYNAMIC_CLASS(wxPrintSetupData)
};
WXDLLEXPORT_DATA(extern wxPrintSetupData*) wxThePrintSetupData;
WXDLLEXPORT extern void wxInitializePrintSetupData(bool init = TRUE);
#endif
// wxUSE_POSTSCRIPT
#endif
// wxUSE_PRINTING_ARCHITECTURE
#endif
// _WX_DCPSG_H_

View File

@@ -0,0 +1,42 @@
/* XPM */
static char *dir_up_xpm[] = {
/* columns rows colors chars-per-pixel */
"20 20 16 1",
" c Gray0",
". c #800000",
"X c #008000",
"o c #808000",
"O c #000080",
"+ c #800080",
"@ c #008080",
"# c None",
"$ c #808080",
"% c Red",
"& c Green",
"* c Yellow",
"= c Blue",
"- c Magenta",
"; c Cyan",
": c Gray100",
/* pixels */
"####################",
"####################",
"####################",
"#### ###########",
"### *:*:* ##########",
"## ####",
"## :*:*:*:*:*:*: ###",
"## *:*: :*:*:*:* ###",
"## :*: :*:*:*: ###",
"## *: :*:*:* ###",
"## :*:* *:*:*:*: ###",
"## *:*: :*:*:*:* ###",
"## :*:* :*: ###",
"## *:*:*:*:*:*:* ###",
"## :*:*:*:*:*:*: ###",
"## ###",
"####################",
"####################",
"####################",
"####################",
};

View File

@@ -0,0 +1,177 @@
/////////////////////////////////////////////////////////////////////////////
// Name: dirdlgg.h
// Purpose: wxDirDialog
// Author: Harm van der Heijden and Robert Roebling
// Modified by:
// Created: 12/12/98
// Copyright: (c) Harm van der Heijden and Robert Roebling
// RCS-ID: $Id$
// Licence: wxWindows licence
//
// Notes: wxDirDialog class written by Harm van der Heijden,
// uses wxDirCtrl class written by Robert Roebling for the
// wxFile application, modified by Harm van der Heijden
//
// Description: This generic dirdialog implementation defines three classes:
// 1) wxDirItemData(public wxTreeItemData) stores pathname and
// displayed name for each item in the directory tree
// 2) wxDirCtrl(public wxTreeCtrl) is a tree widget that
// displays a directory tree. It is possible to define sections
// for fast access to parts of the file system (such as the
// user's homedir, /usr/local, /tmp ...etc), similar to
// Win95 Explorer's shortcuts to 'My Computer', 'Desktop', etc.
// 3) wxDirDialog is the dialog box itself. The user can choose
// a directory by navigating the tree, or by typing a dir
// in an inputbox. The inputbox displays paths selected in the
// tree. It is possible to create new directories. The user
// will automatically be prompted for dir creation if he
// enters a non-existing dir.
//
// TODO/BUGS: - standard sections only have reasonable defaults for Unix
// (but others are easily added in wxDirCtrl::SetupSections)
// - No direct support for "show hidden" toggle. Partly due
// to laziness on my part and partly because
// wxFindFirst/NextFile never seems to find hidden dirs
// anyway.
// - No automatic update of the tree (branch) after directory
// creation.
// - I call wxBeginBusyCursor while expanding items (creating
// a new branch might take a few seconds, especially if a
// CDROM drive or something is involved) but that doesn't
// seem to do anything. Need to look into that.
// - Am still looking for an efficient way to delete wxTreeCtrl
// branches. DeleteChildren has disappeared and
// CollapseAndReset( parent ) deletes the parent as well.
// - The dialog window layout is done using wxConstraints. It
// works, but it's not as simple as I'd like it to be (see
// comments in wxDirDialog::doSize)
//
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DIRDLGG_H_
#define _WX_DIRDLGG_H_
#ifdef __GNUG__
#pragma interface "dirdlgg.h"
#endif
#include "wx/defs.h"
#if wxUSE_DIRDLG
#include "wx/dialog.h"
#include "wx/checkbox.h"
#include "wx/treectrl.h"
//-----------------------------------------------------------------------------
// data
//-----------------------------------------------------------------------------
WXDLLEXPORT_DATA(extern const wxChar*) wxFileSelectorPromptStr;
WXDLLEXPORT_DATA(extern const wxChar*) wxDirDialogDefaultFolderStr;
//-----------------------------------------------------------------------------
// classes
//-----------------------------------------------------------------------------
class wxDirItemData;
class wxDirCtrl;
class wxDirDialog;
//-----------------------------------------------------------------------------
// wxDirItemData
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxDirItemData : public wxTreeItemData
{
public:
wxDirItemData(wxString& path, wxString& name);
~wxDirItemData();
bool HasSubDirs();
void SetNewDirName( wxString path );
wxString m_path, m_name;
bool m_isHidden;
bool m_hasSubDirs;
};
//-----------------------------------------------------------------------------
// wxDirCtrl
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxDirCtrl: public wxTreeCtrl
{
public:
bool m_showHidden;
wxTreeItemId m_rootId;
wxDirCtrl();
wxDirCtrl(wxWindow *parent, const wxWindowID id = -1,
const wxString &dir = wxDirDialogDefaultFolderStr,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
const long style = wxTR_HAS_BUTTONS,
const wxString& name = wxTreeCtrlNameStr );
void ShowHidden( const bool yesno );
void OnExpandItem(wxTreeEvent &event );
void OnCollapseItem(wxTreeEvent &event );
void OnBeginEditItem(wxTreeEvent &event );
void OnEndEditItem(wxTreeEvent &event );
protected:
void CreateItems(const wxTreeItemId &parent);
void SetupSections();
wxArrayString m_paths, m_names;
private:
DECLARE_EVENT_TABLE()
DECLARE_DYNAMIC_CLASS(wxDirCtrl)
};
//-----------------------------------------------------------------------------
// wxDirDialog
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxDirDialog: public wxDialog
{
public:
wxDirDialog(wxWindow *parent,
const wxString& message = wxFileSelectorPromptStr,
const wxString& defaultPath = wxEmptyString,
long style = 0, const wxPoint& pos = wxDefaultPosition);
inline void SetMessage(const wxString& message) { m_message = message; }
inline void SetPath(const wxString& path) { m_path = path; }
inline void SetStyle(long style) { m_dialogStyle = style; }
inline wxString GetMessage() const { return m_message; }
inline wxString GetPath() const { return m_path; }
inline long GetStyle() const { return m_dialogStyle; }
int ShowModal();
void OnTreeSelected( wxTreeEvent &event );
void OnTreeKeyDown( wxTreeEvent &event );
void OnOK(wxCommandEvent& event);
void OnCancel(wxCommandEvent& event);
void OnNew(wxCommandEvent& event);
// void OnCheck(wxCommandEvent& event);
protected:
// implementation
wxString m_message;
long m_dialogStyle;
wxString m_path;
wxDirCtrl *m_dir;
wxTextCtrl *m_input;
wxCheckBox *m_check; // not yet used
wxButton *m_ok, *m_cancel, *m_new;
private:
DECLARE_EVENT_TABLE()
DECLARE_DYNAMIC_CLASS(wxDirDialog)
};
#endif
#endif
// _WX_DIRDLGG_H_

View File

@@ -0,0 +1,129 @@
/* XPM */
static char * error_xpm[] = {
"48 48 78 1",
" c None",
". c #000000",
"+ c #200000",
"@ c #4A0000",
"# c #6B0000",
"$ c #8F0000",
"% c #890000",
"& c #5F0000",
"* c #380000",
"= c #0E0000",
"- c #030000",
"; c #480000",
"> c #9C0000",
", c #E40000",
"' c #FE0000",
") c #FF0000",
"! c #C90000",
"~ c #7E0000",
"{ c #250000",
"] c #090000",
"^ c #700000",
"/ c #DE0000",
"( c #FB0000",
"_ c #BB0000",
": c #410000",
"< c #500000",
"[ c #DF0000",
"} c #B00000",
"| c #0D0000",
"1 c #AB0000",
"2 c #F60000",
"3 c #600000",
"4 c #010000",
"5 c #220000",
"6 c #DA0000",
"7 c #950000",
"8 c #070000",
"9 c #350000",
"0 c #F00000",
"a c #BD0000",
"b c #080000",
"c c #B10000",
"d c #880000",
"e c #FD0000",
"f c #4D0000",
"g c #0B0000",
"h c #F50000",
"i c #1A0000",
"j c #820000",
"k c #E30000",
"l c #040000",
"m c #3C0000",
"n c #FEAFAF",
"o c #FFFEFE",
"p c #FEFEFE",
"q c #FF7F7F",
"r c #840000",
"s c #FFAFAF",
"t c #FFFFFF",
"u c #C00000",
"v c #EA0000",
"w c #2F0000",
"x c #290000",
"y c #D80000",
"z c #AE0000",
"A c #FE6D6D",
"B c #FF9F9F",
"C c #FE9F9F",
"D c #FF4F4F",
"E c #690000",
"F c #C10000",
"G c #5B0000",
"H c #050000",
"I c #B70000",
"J c #E50000",
"K c #F40000",
"L c #420000",
"M c #650000",
" ",
" ",
" ..+@#$$$%&*=. ",
" -;>,''''''))))!~{. ",
" ]^/'''''''''))))))(_:. ",
" .<['''''''''''))))))))'}+. ",
" |1'''''''''''''))))))))))234 ",
" 56)'''''''''''''))))))))))))78 ",
" 90))''''''''''''')))))))))))))ab ",
" 50)))'''''''''''''))))))))))))))c4 ",
" |6))))''''''''''''')))))))))))))))d. ",
" .1'))))''''''''''''')))))))))))))))ef ",
" <''))))''''''''''''')))))))))))))))),g ",
" ][')))))''''''''''''')))))))))))))))))%. ",
" ^'''))))''''''''''''')))))))))))))))))hi ",
" -/'''))))'''''''''''''))))))))))))))))))j ",
" ;)'')))))'''''''''''''))))))))))))))))))kl ",
" >''''))))''''''''''''')))))))))))))))))))m ",
" .,'''noooopppppppppppppoooooooooooooooq)))r ",
" +))')sttttppppppppppppptttttttttttttttq)))u. ",
" @''''nttttppppppppppppptttttttttttttttq)))v. ",
" #))''nttttppppppppppppptttttttttttttttq))))g ",
" $)'''nttttppppppppppppptttttttttttttttq))))w ",
" $''''nttttppppppppppppptttttttttttttttq))))w ",
" $)'''nttttppppppppppppptttttttttttttttq))))w ",
" %)'''nttttppppppppppppptttttttttttttttq))))x ",
" &''''nttttppppppppppppptttttttttttttttq)))). ",
" *)'''nttttppppppppppppptttttttttttttttq)))y. ",
" =))''sttttppppppppppppptttttttttttttttq)))z ",
" .!'''ABBBBCCCCCCCCCCCCCBBBBBBBBBBBBBBBD)))E ",
" ~''''))))'''''''''''''))))))))))))))))))e+ ",
" {('))))))'''''''''''''))))))))))))))))))F. ",
" ._'''))))'''''''''''''))))))))))))))))))G ",
" :'''))))''''''''''''')))))))))))))))))6H ",
" .}))))))''''''''''''')))))))))))))))))< ",
" +2'))))'''''''''''''))))))))))))))))I. ",
" .3)))))''''''''''''')))))))))))))))Ji ",
" 47))))'''''''''''''))))))))))))))KL ",
" 8a)))'''''''''''''))))))))))))))M. ",
" bc))'''''''''''''))))))))))))KM. ",
" 4de''''''''''''')))))))))))JL. ",
" .f,''''''''''''))))))))))Ii ",
" g%h''''''''''))))))))6<. ",
" .ijk'''''''')))))eFGH ",
" .lmruv''''))yzE+. ",
" ..gwwwx... ",
" ",
" "};

View File

@@ -0,0 +1,240 @@
/////////////////////////////////////////////////////////////////////////////
// Name: filedlgg.h
// Purpose: wxFileDialog
// Author: Robert Roebling
// Modified by:
// Created: 8/17/99
// Copyright: (c) Robert Roebling
// RCS-ID: $Id$
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FILEDLGG_H_
#define _WX_FILEDLGG_H_
#ifdef __GNUG__
#pragma interface "filedlgg.h"
#endif
#include "wx/defs.h"
#include "wx/dialog.h"
#include "wx/checkbox.h"
#include "wx/listctrl.h"
#include "wx/textctrl.h"
#include "wx/choice.h"
#include "wx/checkbox.h"
#include "wx/stattext.h"
//-----------------------------------------------------------------------------
// data
//-----------------------------------------------------------------------------
WXDLLEXPORT_DATA(extern const wxChar *)wxFileSelectorPromptStr;
WXDLLEXPORT_DATA(extern const wxChar *)wxFileSelectorDefaultWildcardStr;
//-----------------------------------------------------------------------------
// classes
//-----------------------------------------------------------------------------
class wxFileData;
class wxFileCtrl;
class wxFileDialog;
//-----------------------------------------------------------------------------
// wxFileData
//-----------------------------------------------------------------------------
class wxFileData : public wxObject
{
private:
wxString m_name;
wxString m_fileName;
long m_size;
int m_hour;
int m_minute;
int m_year;
int m_month;
int m_day;
wxString m_permissions;
bool m_isDir;
bool m_isLink;
bool m_isExe;
public:
wxFileData() { }
wxFileData( const wxString &name, const wxString &fname );
wxString GetName() const;
wxString GetFullName() const;
wxString GetHint() const;
wxString GetEntry( int num );
bool IsDir();
bool IsLink();
bool IsExe();
long GetSize();
void MakeItem( wxListItem &item );
void SetNewName( const wxString &name, const wxString &fname );
private:
DECLARE_DYNAMIC_CLASS(wxFileData);
};
//-----------------------------------------------------------------------------
// wxFileCtrl
//-----------------------------------------------------------------------------
class wxFileCtrl : public wxListCtrl
{
private:
wxString m_dirName;
bool m_showHidden;
wxString m_wild;
public:
wxFileCtrl();
wxFileCtrl( wxWindow *win,
wxWindowID id,
const wxString &dirName,
const wxString &wild,
const wxPoint &pos = wxDefaultPosition,
const wxSize &size = wxDefaultSize,
long style = wxLC_LIST,
const wxValidator &validator = wxDefaultValidator,
const wxString &name = wxT("filelist") );
void ChangeToListMode();
void ChangeToReportMode();
void ChangeToIconMode();
void ShowHidden( bool show = TRUE );
long Add( wxFileData *fd, wxListItem &item );
void Update();
virtual void StatusbarText( char *WXUNUSED(text) ) {};
void MakeDir();
void GoToParentDir();
void GoToHomeDir();
void GoToDir( const wxString &dir );
void SetWild( const wxString &wild );
void GetDir( wxString &dir );
void OnListDeleteItem( wxListEvent &event );
void OnListEndLabelEdit( wxListEvent &event );
private:
DECLARE_DYNAMIC_CLASS(wxFileCtrl);
DECLARE_EVENT_TABLE()
};
//-------------------------------------------------------------------------
// File selector
//-------------------------------------------------------------------------
class wxFileDialog: public wxDialog
{
public:
wxFileDialog() { }
wxFileDialog(wxWindow *parent,
const wxString& message = wxFileSelectorPromptStr,
const wxString& defaultDir = "",
const wxString& defaultFile = "",
const wxString& wildCard = wxFileSelectorDefaultWildcardStr,
long style = 0,
const wxPoint& pos = wxDefaultPosition);
~wxFileDialog();
void SetMessage(const wxString& message) { m_message = message; }
void SetPath(const wxString& path);
void SetDirectory(const wxString& dir) { m_dir = dir; }
void SetFilename(const wxString& name) { m_fileName = name; }
void SetWildcard(const wxString& wildCard) { m_wildCard = wildCard; }
void SetStyle(long style) { m_dialogStyle = style; }
void SetFilterIndex(int filterIndex) { m_filterIndex = filterIndex; }
wxString GetMessage() const { return m_message; }
wxString GetPath() const { return m_path; }
wxString GetDirectory() const { return m_dir; }
wxString GetFilename() const { return m_fileName; }
wxString GetWildcard() const { return m_wildCard; }
long GetStyle() const { return m_dialogStyle; }
int GetFilterIndex() const { return m_filterIndex ; }
void OnSelected( wxListEvent &event );
void OnActivated( wxListEvent &event );
void OnList( wxCommandEvent &event );
void OnReport( wxCommandEvent &event );
void OnUp( wxCommandEvent &event );
void OnHome( wxCommandEvent &event );
void OnListOk( wxCommandEvent &event );
void OnNew( wxCommandEvent &event );
void OnChoice( wxCommandEvent &event );
void OnTextEnter( wxCommandEvent &event );
void HandleAction( const wxString &fn );
protected:
wxString m_message;
long m_dialogStyle;
wxString m_dir;
wxString m_path; // Full path
wxString m_fileName;
wxString m_wildCard;
int m_filterIndex;
wxChoice *m_choice;
wxTextCtrl *m_text;
wxFileCtrl *m_list;
wxCheckBox *m_check;
wxStaticText *m_static;
private:
DECLARE_DYNAMIC_CLASS(wxFileDialog)
DECLARE_EVENT_TABLE()
};
enum
{
wxOPEN = 1,
wxSAVE = 2,
wxOVERWRITE_PROMPT = 4,
wxHIDE_READONLY = 8,
wxFILE_MUST_EXIST = 16
};
// File selector - backward compatibility
WXDLLEXPORT wxString
wxFileSelector(const wxChar *message = wxFileSelectorPromptStr,
const wxChar *default_path = NULL,
const wxChar *default_filename = NULL,
const wxChar *default_extension = NULL,
const wxChar *wildcard = wxFileSelectorDefaultWildcardStr,
int flags = 0,
wxWindow *parent = NULL,
int x = -1, int y = -1);
// An extended version of wxFileSelector
WXDLLEXPORT wxString
wxFileSelectorEx(const wxChar *message = wxFileSelectorPromptStr,
const wxChar *default_path = NULL,
const wxChar *default_filename = NULL,
int *indexDefaultExtension = NULL,
const wxChar *wildcard = wxFileSelectorDefaultWildcardStr,
int flags = 0,
wxWindow *parent = NULL,
int x = -1, int y = -1);
// Ask for filename to load
WXDLLEXPORT wxString
wxLoadFileSelector(const wxChar *what,
const wxChar *extension,
const wxChar *default_name = (const wxChar *)NULL,
wxWindow *parent = (wxWindow *) NULL);
// Ask for filename to save
WXDLLEXPORT wxString
wxSaveFileSelector(const wxChar *what,
const wxChar *extension,
const wxChar *default_name = (const wxChar *) NULL,
wxWindow *parent = (wxWindow *) NULL);
#endif
// _WX_DIRDLGG_H_

View File

@@ -0,0 +1,95 @@
/////////////////////////////////////////////////////////////////////////////
// Name: fontdlgg.h
// Purpose: wxGenericFontDialog
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c)
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __FONTDLGH_G__
#define __FONTDLGH_G__
#ifdef __GNUG__
#pragma interface "fontdlgg.h"
#endif
#include "wx/setup.h"
#include "wx/gdicmn.h"
#include "wx/font.h"
#include "wx/dialog.h"
#include "wx/cmndata.h"
/*
* FONT DIALOG
*/
class WXDLLEXPORT wxChoice;
class WXDLLEXPORT wxText;
class WXDLLEXPORT wxCheckBox;
#define wxID_FONT_UNDERLINE 3000
#define wxID_FONT_STYLE 3001
#define wxID_FONT_WEIGHT 3002
#define wxID_FONT_FAMILY 3003
#define wxID_FONT_COLOUR 3004
#define wxID_FONT_SIZE 3005
class WXDLLEXPORT wxGenericFontDialog: public wxDialog
{
DECLARE_DYNAMIC_CLASS(wxGenericFontDialog)
protected:
wxFontData fontData;
wxFont dialogFont;
wxWindow *dialogParent;
// Area reserved for font display
wxRect fontRect;
wxChoice *familyChoice;
wxChoice *styleChoice;
wxChoice *weightChoice;
wxChoice *colourChoice;
wxCheckBox *underLineCheckBox;
wxChoice *pointSizeChoice;
bool m_useEvents;
// static bool fontDialogCancelled;
public:
wxGenericFontDialog(void);
wxGenericFontDialog(wxWindow *parent, wxFontData *data = (wxFontData *) NULL);
~wxGenericFontDialog(void);
bool Create(wxWindow *parent, wxFontData *data = (wxFontData *) NULL);
int ShowModal(void);
inline wxFontData& GetFontData(void) { return fontData; }
// Internal functions
void OnPaint(wxPaintEvent& event);
void OnCloseWindow(wxCloseEvent& event);
virtual void CreateWidgets(void);
virtual void InitializeFont(void);
virtual void PaintFontBackground(wxDC& dc);
virtual void PaintFont(wxDC& dc);
void OnChangeFont(wxCommandEvent& event);
DECLARE_EVENT_TABLE()
};
wxChar WXDLLEXPORT *wxFontFamilyIntToString(int family);
wxChar WXDLLEXPORT *wxFontWeightIntToString(int weight);
wxChar WXDLLEXPORT *wxFontStyleIntToString(int style);
int WXDLLEXPORT wxFontFamilyStringToInt(wxChar *family);
int WXDLLEXPORT wxFontWeightStringToInt(wxChar *weight);
int WXDLLEXPORT wxFontStyleStringToInt(wxChar *style);
#endif

1086
include/wx/generic/grid.h Normal file

File diff suppressed because it is too large Load Diff

424
include/wx/generic/gridg.h Normal file
View File

@@ -0,0 +1,424 @@
/////////////////////////////////////////////////////////////////////////////
// Name: gridg.h
// Purpose: wxGenericGrid
// Author: Julian Smart
// Modified by: Michael Bedward
// Added edit in place facility, 20 April 1999
// Added cursor key control, 29 Jun 1999
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c)
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __GRIDH_G__
#define __GRIDH_G__
#ifdef __GNUG__
#pragma interface "gridg.h"
#endif
#include "wx/defs.h"
#include "wx/panel.h"
#include "wx/string.h"
#include "wx/scrolbar.h"
#include "wx/event.h"
#define wxGRID_DEFAULT_EDIT_WIDTH 300
#define wxGRID_DEFAULT_EDIT_HEIGHT 27
#define wxGRID_DEFAULT_EDIT_X 2
#define wxGRID_DEFAULT_EDIT_Y 1
#define wxGRID_DEFAULT_SHEET_TOP 31
#define wxGRID_DEFAULT_SHEET_LEFT 0
#define wxGRID_DEFAULT_CELL_HEIGHT 20
#define wxGRID_DEFAULT_CELL_WIDTH 80
#define wxGRID_DEFAULT_VERTICAL_LABEL_WIDTH 40
#define wxGRID_DEFAULT_HORIZONAL_LABEL_HEIGHT 20
#define WXGENERIC_GRID_VERSION 0.5
class WXDLLEXPORT wxGridEvent;
class WXDLLEXPORT wxGridCell;
class WXDLLEXPORT wxGenericGrid : public wxPanel
{
DECLARE_DYNAMIC_CLASS(wxGenericGrid)
public:
wxGenericGrid();
wxGenericGrid(wxWindow *parent, int x, int y, int width, int height, long style = 0, char *name = "grid")
{
Create(parent, -1, wxPoint(x, y), wxSize(width, height), style, name);
}
wxGenericGrid(wxWindow *parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style = 0, const wxString& name = "grid")
{
Create(parent, id, pos, size, style, name);
}
~wxGenericGrid();
bool Create(wxWindow *parent, wxWindowID, const wxPoint& pos, const wxSize& size, long style = 0, const wxString& name = "grid");
bool CreateGrid(int nRows, int nCols, wxString **cellValues = (wxString **) NULL, short *widths = (short *) NULL,
short defaultWidth = wxGRID_DEFAULT_CELL_WIDTH, short defaultHeight = wxGRID_DEFAULT_CELL_HEIGHT);
void PaintGrid(wxDC& dc);
void ClearGrid();
virtual wxGridCell *GetCell(int row, int col) const;
wxGridCell ***GetCells() const { return m_gridCells; }
bool InsertCols(int pos = 0, int n = 1, bool updateLabels = TRUE);
bool InsertRows(int pos = 0, int n = 1, bool updateLabels = TRUE);
bool AppendCols(int n = 1, bool updateLabels = TRUE);
bool AppendRows(int n = 1, bool updateLabels = TRUE);
bool DeleteCols(int pos = 0, int n = 1, bool updateLabels = TRUE);
bool DeleteRows(int pos = 0, int n = 1, bool updateLabels = TRUE);
// Cell accessors
void SetCellValue(const wxString& val, int row, int col);
wxString& GetCellValue(int row, int col) const;
void SetCellAlignment(int flag, int row, int col);
void SetCellAlignment(int flag);
int GetCellAlignment(int row, int col) const;
int GetCellAlignment() const;
void SetCellTextColour(const wxColour& val, int row, int col);
void SetCellTextColour(const wxColour& col);
wxColour& GetCellTextColour(int row, int col) const;
wxColour& GetCellTextColour() const { return (wxColour&) m_cellTextColour; }
void SetCellBackgroundColour(const wxColour& col);
void SetCellBackgroundColour(const wxColour& colour, int row, int col);
wxColour& GetCellBackgroundColour() const { return (wxColour&) m_cellBackgroundColour; }
wxColour& GetCellBackgroundColour(int row, int col) const;
wxFont& GetCellTextFont() const { return (wxFont&) m_cellTextFont; }
wxFont& GetCellTextFont(int row, int col) const;
void SetCellTextFont(const wxFont& fnt);
void SetCellTextFont(const wxFont& fnt, int row, int col);
wxBitmap *GetCellBitmap(int row, int col) const;
void SetCellBitmap(wxBitmap *bitmap, int row, int col);
void *SetCellData(void *data, int row, int col);
void *GetCellData(int row, int col);
// Size accessors
void SetColumnWidth(int col, int width);
int GetColumnWidth(int col) const;
void SetRowHeight(int row, int height);
int GetRowHeight(int row) const;
int GetViewHeight() const { return m_viewHeight; }
int GetViewWidth() const { return m_viewWidth; }
// Label accessors
void SetLabelSize(int orientation, int sz);
int GetLabelSize(int orientation) const;
void SetLabelAlignment(int orientation, int alignment);
int GetLabelAlignment(int orientation) const;
wxGridCell *GetLabelCell(int orientation, int pos) const;
void SetLabelValue(int orientation, const wxString& val, int pos);
wxString& GetLabelValue(int orientation, int pos) const;
void SetLabelTextColour(const wxColour& colour);
void SetLabelBackgroundColour(const wxColour& colour);
wxColour& GetLabelTextColour() const { return (wxColour&) m_labelTextColour; }
wxColour& GetLabelBackgroundColour() { return (wxColour&) m_labelBackgroundColour; }
wxFont& GetLabelTextFont() { return (wxFont&) m_labelTextFont; }
void SetLabelTextFont(const wxFont& fnt) { m_labelTextFont = fnt; }
// Miscellaneous accessors
int GetCursorRow() const { return m_wCursorRow; }
int GetCursorColumn() const { return m_wCursorColumn; }
void SetGridCursor(int row, int col);
int GetRows() const { return m_totalRows; }
int GetCols() const { return m_totalCols; }
int GetScrollPosX() const { return m_scrollPosX; }
int GetScrollPosY() const { return m_scrollPosY; }
void SetScrollPosX(int pos) { m_scrollPosX = pos; }
void SetScrollPosY(int pos) { m_scrollPosY = pos; }
wxTextCtrl *GetTextItem() const { return m_textItem; }
wxScrollBar *GetHorizScrollBar() const { return m_hScrollBar; }
wxScrollBar *GetVertScrollBar() const { return m_vScrollBar; }
bool GetEditable() const { return m_editable; }
void SetEditable(bool edit);
bool GetEditInPlace() const { return m_editInPlace; }
void SetEditInPlace(bool edit = TRUE);
wxRect& GetCurrentRect() const { return (wxRect&) m_currentRect; }
bool CurrentCellVisible() const { return m_currentRectVisible; }
void SetDividerPen(const wxPen& pen) { m_divisionPen = pen; }
wxPen& GetDividerPen() const { return (wxPen&) m_divisionPen; }
// High-level event handling
// Override e.g. to check value of current cell; but call
// base member for default processing.
virtual void OnSelectCellImplementation(wxDC *dc, int row, int col);
virtual void OnSelectCell(int WXUNUSED(row), int WXUNUSED(col)) {};
void _OnSelectCell(wxGridEvent& event);
// Override to create your own class of grid cell
virtual wxGridCell *OnCreateCell();
void _OnCreateCell(wxGridEvent& event);
// Override to change labels e.g. creation of grid, inserting/deleting a row/col.
// By default, auto-labels the grid.
virtual void OnChangeLabels();
void _OnChangeLabels(wxGridEvent& event);
// Override to change the label of the edit field when selecting a cell
// By default, sets it to e.g. A12
virtual void OnChangeSelectionLabel();
void _OnChangeSelectionLabel(wxGridEvent& event);
// Override for event processing
virtual void OnCellChange(int WXUNUSED(row), int WXUNUSED(col)) {};
virtual void OnCellLeftClick(int WXUNUSED(row), int WXUNUSED(col), int WXUNUSED(x), int WXUNUSED(y), bool WXUNUSED(control), bool WXUNUSED(shift)) {};
virtual void OnCellRightClick(int WXUNUSED(row), int WXUNUSED(col), int WXUNUSED(x), int WXUNUSED(y), bool WXUNUSED(control), bool WXUNUSED(shift)) {};
virtual void OnLabelLeftClick(int WXUNUSED(row), int WXUNUSED(col), int WXUNUSED(x), int WXUNUSED(y), bool WXUNUSED(control), bool WXUNUSED(shift)) {};
virtual void OnLabelRightClick(int WXUNUSED(row), int WXUNUSED(col), int WXUNUSED(x), int WXUNUSED(y), bool WXUNUSED(control), bool WXUNUSED(shift)) {};
void _OnCellChange(wxGridEvent& event);
void _OnCellLeftClick(wxGridEvent& event);
void _OnCellRightClick(wxGridEvent& event);
void _OnLabelLeftClick(wxGridEvent& event);
void _OnLabelRightClick(wxGridEvent& event);
// Activation: call from wxFrame::OnActivate
void OnActivate(bool active);
// Miscellaneous
void AdjustScrollbars();
void UpdateDimensions();
void SetCurrentRect (int Row, int Column, int canvasW = -1, int canvasH = -1);
void HighlightCell(wxDC *dc, bool doHighlight);
void DrawCellText();
void SetGridClippingRegion(wxDC *dc);
virtual bool CellHitTest(int x, int y, int *row, int *col);
virtual bool LabelSashHitTest(int x, int y, int *orientation, int *rowOrCol, int *startPos);
virtual bool LabelHitTest(int x, int y, int *row, int *col);
// Painting
virtual void DrawLabelAreas(wxDC *dc);
virtual void DrawEditableArea(wxDC *dc);
virtual void DrawGridLines(wxDC *dc);
virtual void DrawColumnLabels(wxDC *dc);
virtual void DrawColumnLabel(wxDC *dc, wxRect *rect, int col);
virtual void DrawRowLabels(wxDC *dc);
virtual void DrawRowLabel(wxDC *dc, wxRect *rect, int row);
virtual void DrawCells(wxDC *dc);
virtual void DrawCellValue(wxDC *dc, wxRect *rect, int row, int col);
virtual void DrawCellBackground(wxDC *dc, wxRect *rect, int row, int col);
virtual void DrawTextRect(wxDC *dc, const wxString& text, wxRect *rect, int flag);
virtual void DrawBitmapRect(wxDC *dc, wxBitmap *bitmap, wxRect *rect, int flag);
// Refresh cell and optionally set the text field
void RefreshCell(int row, int col, bool setText = FALSE);
// Don't refresh within the outer pair of these.
void BeginBatch() { m_batchCount ++; }
void EndBatch() { m_batchCount --; }
int GetBatchCount() { return m_batchCount; }
// implementation from now on
void OnPaint(wxPaintEvent& event);
void OnEraseBackground(wxEraseEvent& event);
void OnMouseEvent(wxMouseEvent& event);
void OnSize(wxSizeEvent& event);
void OnText(wxCommandEvent& ev);
void OnTextEnter(wxCommandEvent& ev);
void OnTextInPlace(wxCommandEvent& ev);
void OnTextInPlaceEnter(wxCommandEvent& ev);
void OnGridScroll(wxScrollEvent& ev);
protected:
wxPanel* m_editingPanel; // Contains the text control
wxTextCtrl* m_textItem;
wxTextCtrl* m_inPlaceTextItem;
wxScrollBar* m_hScrollBar;
wxScrollBar* m_vScrollBar;
int m_wCursorRow;
int m_wCursorColumn;
wxRect m_currentRect;
bool m_currentRectVisible;
wxGridCell*** m_gridCells;
wxGridCell** m_rowLabelCells;
wxGridCell** m_colLabelCells;
bool m_editCreated;
bool m_editable;
bool m_editInPlace;
bool m_inOnTextInPlace;
bool m_inScroll;
int m_totalRows;
int m_totalCols;
// Row and column we're currently looking at
int m_scrollPosX;
int m_scrollPosY;
// Dimensions
int m_leftOfSheet;
int m_topOfSheet;
int m_rightOfSheet; // Calculated from m_colWidths
int m_bottomOfSheet; // Calculated from m_rowHeights
int m_totalGridWidth; // Total 'virtual' size
int m_totalGridHeight;
int m_viewHeight; // Number of rows displayed
int m_viewWidth; // Number of columns displayed
int m_cellHeight; // For now, a default
int m_verticalLabelWidth;
int m_horizontalLabelHeight;
int m_verticalLabelAlignment;
int m_horizontalLabelAlignment;
int m_cellAlignment;
short* m_colWidths; // Dynamically allocated
short* m_rowHeights; // Dynamically allocated
int m_scrollWidth; // Vert. scroll width, horiz. scroll height
// Colours
wxColour m_cellTextColour;
wxColour m_cellBackgroundColour;
wxFont m_cellTextFont;
wxColour m_labelTextColour;
wxColour m_labelBackgroundColour;
wxBrush m_labelBackgroundBrush;
wxFont m_labelTextFont;
wxPen m_divisionPen;
wxPen m_highlightPen;
wxBitmap* m_doubleBufferingBitmap;
// Position of Edit control
wxRect m_editControlPosition;
// Drag status
int m_dragStatus;
int m_dragRowOrCol;
int m_dragStartPosition;
int m_dragLastPosition;
wxCursor m_horizontalSashCursor;
wxCursor m_verticalSashCursor;
// To avoid multiple refreshes, use Begin/EndBatch
int m_batchCount;
DECLARE_EVENT_TABLE()
};
#define wxGRID_TEXT_CTRL 2000
#define wxGRID_HSCROLL 2001
#define wxGRID_VSCROLL 2002
#define wxGRID_EDIT_IN_PLACE_TEXT_CTRL 2003
class WXDLLEXPORT wxGridCell : public wxObject
{
public:
wxString textValue;
wxFont font;
wxColour textColour;
wxColour backgroundColour;
wxBrush backgroundBrush;
wxBitmap* cellBitmap;
void* cellData; // intended for additional data associated with a cell
int alignment;
wxGridCell(wxGenericGrid *window = (wxGenericGrid *) NULL);
~wxGridCell();
virtual wxString& GetTextValue() const { return (wxString&) textValue; }
virtual void SetTextValue(const wxString& str) { textValue = str; }
wxFont& GetFont() const { return (wxFont&) font; }
void SetFont(const wxFont& f) { font = f; }
wxColour& GetTextColour() const { return (wxColour&) textColour; }
void SetTextColour(const wxColour& colour) { textColour = colour; }
wxColour& GetBackgroundColour() const { return (wxColour&) backgroundColour; }
void SetBackgroundColour(const wxColour& colour);
wxBrush& GetBackgroundBrush() const { return (wxBrush&) backgroundBrush; }
void SetBackgroundBrush(const wxBrush& brush) { backgroundBrush = brush; }
int GetAlignment() const { return alignment; }
void SetAlignment(int align) { alignment = align; }
wxBitmap *GetCellBitmap() const { return cellBitmap; }
void SetCellBitmap(wxBitmap *bitmap) { cellBitmap = bitmap; }
void *SetCellData(void *data) { void *rc = cellData; cellData = data; return rc; }
void *GetCellData() const { return cellData; }
};
class WXDLLEXPORT wxGrid : public wxGenericGrid
{
public:
wxGrid() : wxGenericGrid() { }
wxGrid(wxWindow *parent, int x=-1, int y=-1, int width=-1, int height=-1,
long style=0, char *name = "gridWindow")
: wxGenericGrid(parent, x, y, width, height, style, name)
{
}
wxGrid(wxWindow *parent, wxWindowID id, const wxPoint& pos,
const wxSize& size, long style = 0, const wxString& name = "grid")
: wxGenericGrid(parent, id, pos, size, style, name)
{
}
};
class WXDLLEXPORT wxGridEvent : public wxCommandEvent
{
DECLARE_DYNAMIC_CLASS(wxGridEvent)
public:
wxGridEvent()
: wxCommandEvent(), m_row(-1), m_col(-1), m_x(-1), m_y(-1),
m_control(0), m_shift(0), m_cell(0)
{
}
wxGridEvent(int id, wxEventType type, wxObject* obj,
int row=-1, int col=-1, int x=-1, int y=-1,
bool control=FALSE, bool shift=FALSE)
: wxCommandEvent(type, id), m_row(row), m_col(col), m_x(x), m_y(y),
m_control(control), m_shift(shift), m_cell(0)
{
SetEventObject(obj);
}
//private:
int m_row;
int m_col;
int m_x;
int m_y;
bool m_control;
bool m_shift;
wxGridCell* m_cell;
int GetRow() const { return m_row; }
int GetCol() const { return m_col; }
wxPoint GetPosition() const { return wxPoint( m_x, m_y ); }
wxGridCell* GetCell() const { return m_cell; }
bool ControlDown() const { return m_control; }
bool ShiftDown() const { return m_shift; }
};
const wxEventType wxEVT_GRID_SELECT_CELL = wxEVT_FIRST + 1575;
const wxEventType wxEVT_GRID_CREATE_CELL = wxEVT_FIRST + 1576;
const wxEventType wxEVT_GRID_CHANGE_LABELS = wxEVT_FIRST + 1577;
const wxEventType wxEVT_GRID_CHANGE_SEL_LABEL = wxEVT_FIRST + 1578;
const wxEventType wxEVT_GRID_CELL_CHANGE = wxEVT_FIRST + 1579;
const wxEventType wxEVT_GRID_CELL_LCLICK = wxEVT_FIRST + 1580;
const wxEventType wxEVT_GRID_CELL_RCLICK = wxEVT_FIRST + 1581;
const wxEventType wxEVT_GRID_LABEL_LCLICK = wxEVT_FIRST + 1582;
const wxEventType wxEVT_GRID_LABEL_RCLICK = wxEVT_FIRST + 1583;
typedef void (wxEvtHandler::*wxGridEventFunction)(wxGridEvent&);
#define EVT_GRID_SELECT_CELL(fn) { wxEVT_GRID_SELECT_CELL, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL },
#define EVT_GRID_CREATE_CELL(fn) { wxEVT_GRID_CREATE_CELL, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL },
#define EVT_GRID_CHANGE_LABELS(fn) { wxEVT_GRID_CHANGE_LABELS, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL },
#define EVT_GRID_CHANGE_SEL_LABEL(fn) { wxEVT_GRID_CHANGE_SEL_LABEL, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL },
#define EVT_GRID_CELL_CHANGE(fn) { wxEVT_GRID_CELL_CHANGE, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL },
#define EVT_GRID_CELL_LCLICK(fn) { wxEVT_GRID_CELL_LCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL },
#define EVT_GRID_CELL_RCLICK(fn) { wxEVT_GRID_CELL_RCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL },
#define EVT_GRID_LABEL_LCLICK(fn) { wxEVT_GRID_LABEL_LCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL },
#define EVT_GRID_LABEL_RCLICK(fn) { wxEVT_GRID_LABEL_RCLICK, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxGridEventFunction) &fn, NULL },
#endif // __GRIDH_G__

View File

@@ -0,0 +1,82 @@
/*-*- c++ -*-********************************************************
* helpext.h - an external help controller for wxWindows *
* *
* (C) 1998 by Karsten Ball<6C>der (Ballueder@usa.net) *
* *
* $Id$
*******************************************************************/
#ifndef __WX_HELPEXT_H_
#define __WX_HELPEXT_H_
#if wxUSE_HELP
#ifdef __GNUG__
# pragma interface "wxexthlp.h"
#endif
#include "wx/generic/helphtml.h"
#ifndef WXEXTHELP_DEFAULTBROWSER
/// Default browser name.
# define WXEXTHELP_DEFAULTBROWSER "netscape"
/// Is default browse a variant of netscape?
# define WXEXTHELP_DEFAULTBROWSER_IS_NETSCAPE TRUE
#endif
/// Name of environment variable to set help browser.
#define WXEXTHELP_ENVVAR_BROWSER "WX_HELPBROWSER"
/// Is browser a netscape browser?
#define WXEXTHELP_ENVVAR_BROWSERISNETSCAPE "WX_HELPBROWSER_NS"
/**
This class implements help via an external browser.
It requires the name of a directory containing the documentation
and a file mapping numerical Section numbers to relative URLS.
The map file contains two or three fields per line:
numeric_id relative_URL [; comment/documentation]
The numeric_id is the id used to look up the entry in
DisplaySection()/DisplayBlock(). The relative_URL is a filename of
an html file, relative to the help directory. The optional
comment/documentation field (after a ';') is used for keyword
searches, so some meaningful text here does not hurt.
If the documentation itself contains a ';', only the part before
that will be displayed in the listbox, but all of it used for search.
Lines starting with ';' will be ignored.
*/
class WXDLLEXPORT wxExtHelpController : public wxHTMLHelpControllerBase
{
DECLARE_CLASS(wxExtHelpController)
public:
wxExtHelpController(void);
/** Tell it which browser to use.
The Netscape support will check whether Netscape is already
running (by looking at the .netscape/lock file in the user's
home directory) and tell it to load the page into the existing
window.
@param browsername The command to call a browser/html viewer.
@param isNetscape Set this to TRUE if the browser is some variant of Netscape.
*/
// Obsolete form
void SetBrowser(wxString const & browsername = WXEXTHELP_DEFAULTBROWSER,
bool isNetscape = WXEXTHELP_DEFAULTBROWSER_IS_NETSCAPE);
// Set viewer: new name for SetBrowser
virtual void SetViewer(const wxString& viewer = WXEXTHELP_DEFAULTBROWSER, long flags = wxHELP_NETSCAPE);
private:
/// How to call the html viewer.
wxString m_BrowserName;
/// Is the viewer a variant of netscape?
bool m_BrowserIsNetscape;
/// Call the browser using a relative URL.
virtual bool DisplayHelp(wxString const &);
};
#endif // wxUSE_HELP
#endif // __WX_HELPEXT_H_

View File

@@ -0,0 +1,152 @@
/*-*- c++ -*-********************************************************
* helphtml.h - base class for html based help controllers *
* *
* (C) 1999 by Karsten Ball<6C>der (Ballueder@usa.net) *
* *
* $Id$
*******************************************************************/
#ifndef __WX_HELPHTML_H_
#define __WX_HELPHTML_H_
#if wxUSE_HELP
#ifdef __GNUG__
# pragma interface "helphtml.h"
#endif
#include "wx/helpbase.h"
#include "wx/frame.h"
/// Name for map file.
#define WXEXTHELP_MAPFILE "wxhelp.map"
/// Path separator.
#ifdef __WXMSW__
#define WXEXTHELP_SEPARATOR '\\'
#else
#define WXEXTHELP_SEPARATOR '/'
#endif
/// Maximum line length in map file.
#define WXEXTHELP_BUFLEN 512
/// Character introducing comments/documentation field in map file.
#define WXEXTHELP_COMMENTCHAR ';'
class WXDLLEXPORT wxExtHelpMapList;
/**
This class is the base class for all html help implementations.
It requires the name of a directory containing the documentation
and a file mapping numerical Section numbers to relative URLS.
The map file contains two or three fields per line:
numeric_id relative_URL [; comment/documentation]
The numeric_id is the id used to look up the entry in
DisplaySection()/DisplayBlock(). The relative_URL is a filename of
an html file, relative to the help directory. The optional
comment/documentation field (after a ';') is used for keyword
searches, so some meaningful text here does not hurt.
If the documentation itself contains a ';', only the part before
that will be displayed in the listbox, but all of it used for search.
Lines starting with ';' will be ignored.
*/
class WXDLLEXPORT wxHTMLHelpControllerBase : public wxHelpControllerBase
{
DECLARE_ABSTRACT_CLASS(wxHTMLHelpControllerBase)
public:
wxHTMLHelpControllerBase(void);
virtual ~wxHTMLHelpControllerBase(void);
/** This must be called to tell the controller where to find the
documentation.
If a locale is set, look in file/localename, i.e.
If passed "/usr/local/myapp/help" and the current wxLocale is
set to be "de", then look in "/usr/local/myapp/help/de/"
first and fall back to "/usr/local/myapp/help" if that
doesn't exist.
@param file - NOT a filename, but a directory name.
@return true on success
*/
virtual bool Initialize(const wxString& dir, int WXUNUSED(server))
{ return Initialize(dir); }
/** This must be called to tell the controller where to find the
documentation.
If a locale is set, look in file/localename, i.e.
If passed "/usr/local/myapp/help" and the current wxLocale is
set to be "de", then look in "/usr/local/myapp/help/de/"
first and fall back to "/usr/local/myapp/help" if that
doesn't exist.
@param dir - directory name where to fine the help files
@return true on success
*/
virtual bool Initialize(const wxString& dir);
/** If file is "", reloads file given in Initialize.
@file Name of help directory.
@return true on success
*/
virtual bool LoadFile(const wxString& file = "");
/** Display list of all help entries.
@return true on success
*/
virtual bool DisplayContents(void);
/** Display help for id sectionNo.
@return true on success
*/
virtual bool DisplaySection(int sectionNo);
/** Display help for id sectionNo -- identical with DisplaySection().
@return true on success
*/
virtual bool DisplayBlock(long blockNo);
/** Search comment/documentation fields in map file and present a
list to chose from.
@key k string to search for, empty string will list all entries
@return true on success
*/
virtual bool KeywordSearch(const wxString& k);
/// does nothing
virtual bool Quit(void);
/// does nothing
virtual void OnQuit(void);
/// Call the browser using a relative URL.
virtual bool DisplayHelp(wxString const &) = 0;
/// Allows one to override the default settings for the help frame.
virtual void SetFrameParameters(const wxString& WXUNUSED(title),
const wxSize& WXUNUSED(size),
const wxPoint& WXUNUSED(pos) = wxDefaultPosition,
bool WXUNUSED(newFrameEachTime) = FALSE)
{
// does nothing by default
}
/// Obtains the latest settings used by the help frame and the help
/// frame.
virtual wxFrame *GetFrameParameters(wxSize *WXUNUSED(size) = NULL,
wxPoint *WXUNUSED(pos) = NULL,
bool *WXUNUSED(newFrameEachTime) = NULL)
{
return (wxFrame*) NULL;// does nothing by default
}
protected:
/// Filename of currently active map file.
wxString m_MapFile;
/// How many entries do we have in the map file?
int m_NumOfEntries;
/// A list containing all id,url,documentation triples.
wxList *m_MapList;
/// Deletes the list and all objects.
void DeleteList(void);
};
#endif // wxUSE_HELP
#endif // __WX_HELPHTML_H_

View File

@@ -0,0 +1,75 @@
/*-*- c++ -*-********************************************************
* helpwxht.h - a help controller using wxHTML *
* *
* (C) 1999 by Karsten Ball<6C>der (Ballueder@usa.net) *
* *
* $Id$
*******************************************************************/
#ifndef __WX_HELPWXHT_H_
#define __WX_HELPWXHT_H_
#if wxUSE_HELP
#if wxUSE_HTML
#ifdef __GNUG__
# pragma interface "helpwxht.h"
#endif
#include "wx/generic/helphtml.h"
/**
This class implements help via wxHTML.
It requires the name of a directory containing the documentation
and a file mapping numerical Section numbers to relative URLS.
The map file contains two or three fields per line:
numeric_id relative_URL [; comment/documentation]
The numeric_id is the id used to look up the entry in
DisplaySection()/DisplayBlock(). The relative_URL is a filename of
an html file, relative to the help directory. The optional
comment/documentation field (after a ';') is used for keyword
searches, so some meaningful text here does not hurt.
If the documentation itself contains a ';', only the part before
that will be displayed in the listbox, but all of it used for search.
Lines starting with ';' will be ignored.
*/
class WXDLLEXPORT wxHelpControllerHtml : public wxHTMLHelpControllerBase
{
DECLARE_CLASS(wxHelpControllerHtml)
public:
wxHelpControllerHtml(void);
~wxHelpControllerHtml(void);
/// Allows one to override the default settings for the help frame.
virtual void SetFrameParameters(const wxString &title,
const wxSize &size,
const wxPoint &pos = wxDefaultPosition,
bool newFrameEachTime = FALSE);
/// Obtains the latest settings used by the help frame.
virtual wxFrame * GetFrameParameters(wxSize *size = NULL,
wxPoint *pos = NULL,
bool *newFrameEachTime = NULL);
private:
/// Call the browser using a relative URL.
virtual bool DisplayHelp(wxString const &);
protected:
friend class wxHelpFrame;
class wxHelpFrame *m_Frame;
wxString m_FrameTitle;
wxPoint m_FramePosition;
wxSize m_FrameSize;
bool m_NewFrameEachTime;
size_t m_offset;
};
#endif // wxUSE_HELP
#endif // wxUSE_HTML
#endif // __WX_HELPEXT_H_

View File

@@ -0,0 +1,126 @@
/////////////////////////////////////////////////////////////////////////////
// Name: helpxlp.h
// Purpose: Help system: wxHelp implementation
// Author: Julian Smart
// Modified by:
// Created: 04/01/98
// RCS-ID: $Id$
// Copyright: (c) Julian Smart and Markus Holzem
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
#ifndef __HELPXLPH__
#define __HELPXLPH__
#ifdef __GNUG__
#pragma interface "helpxlp.h"
#endif
#include <stdio.h>
#include "wx/wx.h"
#if wxUSE_HELP
#include "wx/helpbase.h"
#ifdef __WXMSW__
#include "wx/dde.h"
#else
#include "wx/sckipc.h"
#endif
class WXDLLEXPORT wxXLPHelpController;
// Connection class for implementing the connection between the
// wxHelp process and the application
class WXDLLEXPORT wxXLPHelpConnection: public
#ifdef __WXMSW__
wxDDEConnection
#else
wxTCPConnection
#endif
{
friend class wxXLPHelpController;
DECLARE_DYNAMIC_CLASS(wxXLPHelpConnection)
public:
wxXLPHelpConnection(wxXLPHelpController *instance);
bool OnDisconnect(void);
private:
wxXLPHelpController *helpInstance;
};
// Connection class for implementing the client process
// controlling the wxHelp process
class WXDLLEXPORT wxXLPHelpClient: public
#ifdef __WXMSW__
wxDDEClient
#else
wxTCPClient
#endif
{
DECLARE_CLASS(wxXLPHelpClient)
friend class WXDLLEXPORT wxXLPHelpController;
public:
wxXLPHelpClient(wxXLPHelpController* c) { m_controller = c; }
wxConnectionBase *OnMakeConnection(void)
{ return new wxXLPHelpConnection(m_controller);
}
protected:
wxXLPHelpController* m_controller;
};
// An application can have one or more instances of wxHelp,
// represented by an object of this class.
// Nothing happens on initial creation; the application
// must call a member function to display help.
// If the instance of wxHelp is already active, that instance
// will be used for subsequent help.
class WXDLLEXPORT wxXLPHelpController: public wxHelpControllerBase
{
friend class WXDLLEXPORT wxXLPHelpConnection;
DECLARE_CLASS(wxXLPHelpController)
public:
wxXLPHelpController(void);
~wxXLPHelpController(void);
// Must call this to set the filename and server name
virtual bool Initialize(const wxString& file, int server = -1);
// If file is "", reloads file given in Initialize
virtual bool LoadFile(const wxString& file = "");
virtual bool DisplayContents(void);
virtual bool DisplaySection(int sectionNo);
virtual bool DisplayBlock(long blockNo);
virtual bool KeywordSearch(const wxString& k);
virtual bool Quit(void);
virtual void OnQuit(void);
// Private
bool Run(void);
protected:
wxString helpFile;
wxString helpHost;
int helpServer;
bool helpRunning;
wxXLPHelpConnection* helpConnection;
wxXLPHelpClient helpClient;
private:
virtual bool Initialize(const wxString& file) { return(wxHelpControllerBase::Initialize(file)); };
};
#endif // wxUSE_HELP
#endif
// __HELPXLPH__

View File

@@ -0,0 +1,26 @@
/* XPM */
static char * home_xpm[] = {
"20 20 3 1",
" c None",
". c #000000000000",
"X c #FFFFFFFFFFFF",
" ",
" ",
" .. ",
" . .... ",
" . .XX . ",
" . .XXXX . ",
" ..XXXXXX . ",
" .XXXXXXXX . ",
" .XXXXXXXXX . ",
" ...XXXXXXXX ... ",
" .XXXXXXXX . ",
" .XXX...XX . ",
" .XXX. .XX . ",
" .XXX. .XX . ",
" .XXX. .XX . ",
" .XXX. .XX . ",
" ..... ...... ",
" ",
" ",
" "};

View File

@@ -0,0 +1,78 @@
/////////////////////////////////////////////////////////////////////////////
// Name: imaglist.h
// Purpose:
// Author: Robert Roebling
// Created: 01/02/97
// Id:
// Copyright: (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __IMAGELISTH_G__
#define __IMAGELISTH_G__
#ifdef __GNUG__
#pragma interface "imaglist.h"
#endif
#include "wx/defs.h"
#include "wx/gdicmn.h"
#include "wx/bitmap.h"
#include "wx/dc.h"
/*
* wxImageList is used for wxListCtrl, wxTreeCtrl. These controls refer to
* images for their items by an index into an image list.
* A wxImageList is capable of creating images with optional masks from
* a variety of sources - a single bitmap plus a colour to indicate the mask,
* two bitmaps, or an icon.
*
* Image lists can also create and draw images used for drag and drop functionality.
* This is not yet implemented in wxImageList. We need to discuss a generic API
* for doing drag and drop and see whether it ties in with the Win95 view of it.
* See below for candidate functions and an explanation of how they might be
* used.
*/
// Flags for Draw
#define wxIMAGELIST_DRAW_NORMAL 0x0001
#define wxIMAGELIST_DRAW_TRANSPARENT 0x0002
#define wxIMAGELIST_DRAW_SELECTED 0x0004
#define wxIMAGELIST_DRAW_FOCUSED 0x0008
// Flag values for Set/GetImageList
enum {
wxIMAGE_LIST_NORMAL, // Normal icons
wxIMAGE_LIST_SMALL, // Small icons
wxIMAGE_LIST_STATE // State icons: unimplemented (see WIN32 documentation)
};
class wxImageList: public wxObject
{
DECLARE_DYNAMIC_CLASS(wxImageList)
public:
wxImageList() { }
wxImageList( int width, int height, bool mask = TRUE, int initialCount = 1 );
~wxImageList();
bool Create();
int GetImageCount() const;
int Add( const wxBitmap &bitmap );
const wxBitmap *GetBitmap(int index) const;
bool Replace( int index, const wxBitmap &bitmap );
bool Remove( int index );
bool RemoveAll();
bool GetSize( int index, int &width, int &height ) const;
bool Draw(int index, wxDC& dc, int x, int y,
int flags = wxIMAGELIST_DRAW_NORMAL, bool solidBackground = FALSE );
private:
wxList m_images;
int m_width;
int m_height;
};
#endif // __IMAGELISTH_G__

210
include/wx/generic/info.xpm Normal file
View File

@@ -0,0 +1,210 @@
/* XPM */
static char * info_xpm[] = {
"48 48 159 2",
" c None",
". c #12165C",
"+ c #9E9EC4",
"@ c #565294",
"# c #2E3274",
"$ c #1A227C",
"% c #16229C",
"& c #262274",
"* c #362E8C",
"= c #262A9C",
"- c #121E7C",
"; c #1A2AAC",
"> c #162284",
", c #262EA4",
"' c #2A2A84",
") c #1E1E6C",
"! c #3E3A84",
"~ c #7A72B4",
"{ c #121E74",
"] c #1E2284",
"^ c #2A2E9C",
"/ c #362E9C",
"( c #D2D2E4",
"_ c #62669C",
": c #1E269C",
"< c #1A2AB4",
"[ c #6A6EAC",
"} c #121A6C",
"| c #2E2A84",
"1 c #26268C",
"2 c #3E328C",
"3 c #322E9C",
"4 c #B6B6CC",
"5 c #1626AC",
"6 c #1E268C",
"7 c #2E267C",
"8 c #363294",
"9 c #1A2694",
"0 c #22226C",
"a c #26267C",
"b c #2E2A9C",
"c c #1A1E7C",
"d c #222A9C",
"e c #162294",
"f c #1E2EBC",
"g c #2A2EAC",
"h c #6A6A9C",
"i c #2E2A94",
"j c #CACADC",
"k c #1A1A64",
"l c #16269C",
"m c #262AAC",
"n c #161E8C",
"o c #464294",
"p c #8286C4",
"q c #1A1E64",
"r c #222AB4",
"s c #6A6EB4",
"t c #1A1A6C",
"u c #BABAD4",
"v c #1E2694",
"w c #121A64",
"x c #2E2E94",
"y c #3A2E8C",
"z c #2A2A9C",
"A c #161E7C",
"B c #1A2284",
"C c #262A94",
"D c #2E2E9C",
"E c #36329C",
"F c #FEFEFC",
"G c #666AA4",
"H c #1E2AB4",
"I c #161A6C",
"J c #322A84",
"K c #2A267C",
"L c #262EB4",
"M c #1A269C",
"N c #1E2274",
"O c #1E2AA4",
"P c #221E6C",
"Q c #423E8C",
"R c #222284",
"S c #E6E6EC",
"T c #22269C",
"U c #6E6EA4",
"V c #3232A4",
"W c #BAB6D4",
"X c #1A26AC",
"Y c #222684",
"Z c #3A328C",
"` c #22227C",
" . c #222AAC",
".. c #222EB4",
"+. c #8A86BC",
"@. c #1A1E74",
"#. c #161A5C",
"$. c #322E8C",
"%. c #3A329C",
"&. c #A29ECC",
"*. c #26227C",
"=. c #362E94",
"-. c #262AA4",
";. c #121E84",
">. c #16228C",
",. c #262EAC",
"'. c #2A2A8C",
"). c #1E1E74",
"!. c #7A76B4",
"~. c #161E74",
"{. c #1E228C",
"]. c #2A2EA4",
"^. c #6266A4",
"/. c #1E26A4",
"(. c #1A2ABC",
"_. c #121A74",
":. c #2E2A8C",
"<. c #262694",
"[. c #3E3294",
"}. c #322EA4",
"|. c #B6B6D4",
"1. c #222274",
"2. c #262684",
"3. c #222AA4",
"4. c #1A2294",
"5. c #2E2EAC",
"6. c #6E6AA4",
"7. c #322A94",
"8. c #1626A4",
"9. c #8E8ABC",
"0. c #4A429C",
"a. c #6E6EBC",
"b. c #222694",
"c. c #2A2A94",
"d. c #1A1E6C",
"e. c #BABADC",
"f. c #3A2E94",
"g. c #2A2AA4",
"h. c #161E84",
"i. c #1A228C",
"j. c #2E2EA4",
"k. c #3632A4",
"l. c #666AAC",
"m. c #1E2ABC",
"n. c #161A74",
"o. c #322A8C",
"p. c #2A2684",
"q. c #1A26A4",
"r. c #1E227C",
"s. c #1E2AAC",
"t. c #423E94",
"u. c #E6E6F4",
"v. c #6E6EAC",
"w. c #1A26B4",
"x. c #22268C",
"y. c #3A3294",
"z. c #222EBC",
"A. c #161A64",
"B. c #322E94",
" ",
" ",
" ",
" ",
" 7 7 7 7 7 7 7 7 & ",
" 2 2 2 2 2 2 y y y f.f.[.y 7 *. ",
" J y 2 2 2 2 2 [.[.[.[.y.=.=.f.=./ B.p. ",
" 2 2 2 2 [.2 [.[.f.y y y * * =.=.B./ B.3 o.*.*. ",
" y 2 2 [.2 [.2 2 y [.[.f.f.o.* $.$.B.B.7.D 3 D }.D ",
" 2 2 [.[.2 [.2 [.f.[.y ~ ( F F W 0.$.:.i x 7.3 D D <.R ",
" y 2 [.[.[.2 [.2 2 y y ~ F F F F F u.o :.:.c.c.b b D }.}.g. ",
" 2 [.[.2 [.2 [.2 [.y 2 Z ( F F F F F F +.7 '.:.:.i D b ].].z R ",
" y 2 2 [.[.[.[.[.2 f.y y y F F F F F F F |.p.p.'.'.<.z z g.].].5.m ",
" 2 2 [.t.[.[.2 2 2 f.2 f.* * u.F F F F F F + *.2.2.C '.c.z ^ ].g m = n ",
" y 2 [.2 [.[.[.[.2 f.2 f.* * &.F F F F F F @ a *.2.2.C C z = g.].,.g. . ",
" 2 2 [.[.[.[.[.2 [.[.[.f.* o.J $.u F F F u.U 1.0 Y *.2.1 <.C ^ -.m g.L = n ",
" 2 2 2 [.2 t.[.[.f.[.Z y.* $.J 7 | Q U 6.P 1.P P ` ` 2.1 <.= = , ,.,.m m . ",
" 2 [.[.[.[.[.[.2 f.2 f.f.* =.o.:.| K & & 0 0 P N 1.1.` R 2.d <.= -.-.m ..../.n ",
" 2 2 [.2 [.2 [.[.[.[.y.=.=.* o.:.p.K ! 6.h 4 4 ) ) ).r.6 Y b.= = , ,.,.m ..r r ",
" [.2 t.[.[.[.[.[.f.y.8 y.* B.9.W S F F F F F F ) ) N 1.R R x.b.= 3.m m ..m ..s. ",
" 7 [.2 [.2 [.[.[.[.[.f.=.=.=.o.e.F F F F F F F F ) ) ).N R x.b.T 3.3. .m ..r H m.H ",
" 2 [.[.[.[.[.[.[.[.f.%.=.=.$.B.:.o W F F F F F F k q N r.] R b.d T , . .r ....s.n ",
" y 2 2 [.[.[.[.[.%.f.%.=.=.B.$.:.'.v.F F F F F F t k ) N ] 6 x.d T 3... .H r H m.< ",
" 2 [.[.[.[.[.[.%.y.%.=.E / 7.7.p.p.v.F F F F F F q d.t @.r.R v T O . .....f r X n ",
" y 2 2 [.[.[.[.%.=.%.=.B.B.x B.:.| v.F F F F F F k d.d.c $ {.6 T d O .r r f f m.(. ",
" 2 [.[.[.[.[.%.%.%./ E / 3 7.i '.2.v.F F F F F F A.A.t @.r.] b.: /. .s.H H H m.5 ;. ",
" J 2 [.[.[.[.f.%.8 / E 8 3 i i :.p.v.F F F F F F k A.d.~.$ B 6 : : /.s.H m.m.f (.(. ",
" [.[.[.%.[.%.%./ f.E / 3 3 B.i p.1 v.F F F F F F . A.I @.c {.{.: O s. .H H m.(.w.;. ",
" 7 [.[.%.f.%.%.E / V =.3 D D ^ '.1 v.F F F F F F #.A.I @.A i.9 : O s.s.H f m.(.(.w. ",
" [.[.[.[.%.%.E E E / 3 3 7.i i c.2.v.F F F F F F . . A.~.c B {.M /.X H H (.(.(.w.;. ",
" [.%.%./ %.f./ V 3 3 D D c.c.<.Y v.F F F F F F #.A.A.~.A B 4.9 /.X ; < f f (.(. ",
" %.f.E %./ k.k./ V }.}.D D c.'.1 [ F F F F F F . . } I c >.i.M q.; H < (.(.(.5 ",
" J f.k.E E E / / 3 V 3 D b z 1 x.v.F F F F F F #.. A.} c B 4.M /.X < (.(.(.(.(. ",
" %.%.%.E / V }.V D j.z z c.C 1 [ F F F F F F . A.} ~.A h.4.4.q.; w.(.(.(.5 ",
" 7 k./ V / V D }.j.j.^ z z <.x.[ F F F F F F . . . _.A h.4.% q.; 5 w.w.(.(. ",
" / k./ V }.}.j.j.j.b z C C R l.F F F F F F . } I ~.A >.e M 5 5 (.(.(.5 ",
" 7 V 3 V V V }.j.].].g.= C <.s F F F F F F # w } n.A >.e 4.X 5 < (.w.(. ",
" / k.}.}.j.j.j.j.g.z = a.p u.F F F F F F j _ _ - - n e 8.5 5 w.w.5 ",
" V V j.j.j.].].].z = F F F F F F F F F F F F n.;.n e % X 5 (.(. ",
" j.V j.j.j.].-.-.<.a.a.s [ l.G G _ _ _ ^.^.- h.e % 8.5 < 5 ",
" 5.].g j.]., , d T b.{.{.c A ~._.} } _.n.;.;.e % % 5 5 ",
" 5.j.].g g.-.-.d : v i.> A A ~._.- - - >.e e % 5 % ",
" g g.g -., 3.d : v v i.B h.A n.h.;.;.;.n % 8.% ",
" -.,. .-.3.T : 4.{.>.>.>.>.;.>.n % % % ",
" 3.-.3.3.O M 4.4.i.n e n e e e ",
" : : : /.4.% e n ;. ",
" ",
" "};

198
include/wx/generic/laywin.h Normal file
View File

@@ -0,0 +1,198 @@
/////////////////////////////////////////////////////////////////////////////
// Name: laywin.h
// Purpose: Implements a simple layout algorithm, plus
// wxSashLayoutWindow which is an example of a window with
// layout-awareness (via event handlers). This is suited to
// IDE-style window layout.
// Author: Julian Smart
// Modified by:
// Created: 04/01/98
// RCS-ID: $Id$
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_LAYWIN_H_G_
#define _WX_LAYWIN_H_G_
#ifdef __GNUG__
#pragma interface "laywin.h"
#endif
#if wxUSE_SASH
#include "wx/sashwin.h"
#endif // wxUSE_SASH
const wxEventType wxEVT_QUERY_LAYOUT_INFO = wxEVT_FIRST + 1500;
const wxEventType wxEVT_CALCULATE_LAYOUT = wxEVT_FIRST + 1501;
enum wxLayoutOrientation
{
wxLAYOUT_HORIZONTAL,
wxLAYOUT_VERTICAL
};
enum wxLayoutAlignment
{
wxLAYOUT_NONE,
wxLAYOUT_TOP,
wxLAYOUT_LEFT,
wxLAYOUT_RIGHT,
wxLAYOUT_BOTTOM
};
// Not sure this is necessary
// Tell window which dimension we're sizing on
#define wxLAYOUT_LENGTH_Y 0x0008
#define wxLAYOUT_LENGTH_X 0x0000
// Use most recently used length
#define wxLAYOUT_MRU_LENGTH 0x0010
// Only a query, so don't actually move it.
#define wxLAYOUT_QUERY 0x0100
/*
* This event is used to get information about window alignment,
* orientation and size.
*/
class WXDLLEXPORT wxQueryLayoutInfoEvent: public wxEvent
{
DECLARE_DYNAMIC_CLASS(wxQueryLayoutInfoEvent)
public:
wxQueryLayoutInfoEvent(wxWindowID id = 0)
{
SetEventType(wxEVT_QUERY_LAYOUT_INFO);
m_requestedLength = 0;
m_flags = 0;
m_id = id;
m_alignment = wxLAYOUT_TOP;
m_orientation = wxLAYOUT_HORIZONTAL;
}
// Read by the app
void SetRequestedLength(int length) { m_requestedLength = length; }
int GetRequestedLength() const { return m_requestedLength; }
void SetFlags(int flags) { m_flags = flags; }
int GetFlags() const { return m_flags; }
// Set by the app
void SetSize(const wxSize& size) { m_size = size; }
wxSize GetSize() const { return m_size; }
void SetOrientation(wxLayoutOrientation orient) { m_orientation = orient; }
wxLayoutOrientation GetOrientation() const { return m_orientation; }
void SetAlignment(wxLayoutAlignment align) { m_alignment = align; }
wxLayoutAlignment GetAlignment() const { return m_alignment; }
protected:
int m_flags;
int m_requestedLength;
wxSize m_size;
wxLayoutOrientation m_orientation;
wxLayoutAlignment m_alignment;
};
typedef void (wxEvtHandler::*wxQueryLayoutInfoEventFunction)(wxQueryLayoutInfoEvent&);
#define EVT_QUERY_LAYOUT_INFO(func) { wxEVT_QUERY_LAYOUT_INFO, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxQueryLayoutInfoEventFunction) & func, NULL },
/*
* This event is used to take a bite out of the available client area.
*/
class WXDLLEXPORT wxCalculateLayoutEvent: public wxEvent
{
DECLARE_DYNAMIC_CLASS(wxCalculateLayoutEvent)
public:
wxCalculateLayoutEvent(wxWindowID id = 0)
{
SetEventType(wxEVT_CALCULATE_LAYOUT);
m_flags = 0;
m_id = id;
}
// Read by the app
inline void SetFlags(int flags) { m_flags = flags; }
inline int GetFlags() const { return m_flags; }
// Set by the app
inline void SetRect(const wxRect& rect) { m_rect = rect; }
inline wxRect GetRect() const { return m_rect; }
protected:
int m_flags;
wxRect m_rect;
};
typedef void (wxEvtHandler::*wxCalculateLayoutEventFunction)(wxCalculateLayoutEvent&);
#define EVT_CALCULATE_LAYOUT(func) { wxEVT_CALCULATE_LAYOUT, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxCalculateLayoutEventFunction) & func, NULL },
#if wxUSE_SASH
// This is window that can remember alignment/orientation, does its own layout,
// and can provide sashes too. Useful for implementing docked windows with sashes in
// an IDE-style interface.
class WXDLLEXPORT wxSashLayoutWindow: public wxSashWindow
{
DECLARE_CLASS(wxSashLayoutWindow)
public:
wxSashLayoutWindow(wxWindow *parent, wxWindowID id = -1, const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize, long style = wxSW_3D|wxCLIP_CHILDREN, const wxString& name = "layoutWindow");
// Accessors
inline wxLayoutAlignment GetAlignment() const { return m_alignment; };
inline wxLayoutOrientation GetOrientation() const { return m_orientation; };
inline void SetAlignment(wxLayoutAlignment align) { m_alignment = align; };
inline void SetOrientation(wxLayoutOrientation orient) { m_orientation = orient; };
// Give the window default dimensions
inline void SetDefaultSize(const wxSize& size) { m_defaultSize = size; }
// Event handlers
// Called by layout algorithm to allow window to take a bit out of the
// client rectangle, and size itself if not in wxLAYOUT_QUERY mode.
void OnCalculateLayout(wxCalculateLayoutEvent& event);
// Called by layout algorithm to retrieve information about the window.
void OnQueryLayoutInfo(wxQueryLayoutInfoEvent& event);
protected:
wxLayoutAlignment m_alignment;
wxLayoutOrientation m_orientation;
wxSize m_defaultSize;
DECLARE_EVENT_TABLE()
};
#endif // wxUSE_SASH
class WXDLLEXPORT wxMDIParentFrame;
class WXDLLEXPORT wxFrame;
// This class implements the layout algorithm
class WXDLLEXPORT wxLayoutAlgorithm: public wxObject
{
public:
wxLayoutAlgorithm() {}
// The MDI client window is sized to whatever's left over.
bool LayoutMDIFrame(wxMDIParentFrame* frame, wxRect* rect = (wxRect*) NULL);
// mainWindow is sized to whatever's left over. This function for backward
// compatibility; use LayoutWindow.
bool LayoutFrame(wxFrame* frame, wxWindow* mainWindow = (wxWindow*) NULL)
{
return LayoutWindow(frame, mainWindow);
}
// mainWindow is sized to whatever's left over. This function for backward
bool LayoutWindow(wxWindow* frame, wxWindow* mainWindow = (wxWindow*) NULL);
};
#endif
// _WX_LAYWIN_H_G_

View File

@@ -0,0 +1,618 @@
/////////////////////////////////////////////////////////////////////////////
// Name: listctrl.h
// Purpose: Generic list control
// Author: Robert Roebling
// Created: 01/02/97
// Id:
// Copyright: (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __LISTCTRLH_G__
#define __LISTCTRLH_G__
#ifdef __GNUG__
#pragma interface "listctrl.h"
#endif
#include "wx/defs.h"
#include "wx/object.h"
#include "wx/generic/imaglist.h"
#include "wx/control.h"
#include "wx/timer.h"
#include "wx/textctrl.h"
#include "wx/dcclient.h"
#include "wx/scrolwin.h"
#include "wx/settings.h"
#if wxUSE_DRAG_AND_DROP
class WXDLLEXPORT wxDropTarget;
#endif
//-----------------------------------------------------------------------------
// classes
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxListItem;
class WXDLLEXPORT wxListEvent;
class WXDLLEXPORT wxListCtrl;
//-----------------------------------------------------------------------------
// internal classes
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxListHeaderData;
class WXDLLEXPORT wxListItemData;
class WXDLLEXPORT wxListLineData;
class WXDLLEXPORT wxListHeaderWindow;
class WXDLLEXPORT wxListMainWindow;
class WXDLLEXPORT wxListRenameTimer;
class WXDLLEXPORT wxListTextCtrl;
//-----------------------------------------------------------------------------
// types
//-----------------------------------------------------------------------------
// type of compare function for wxListCtrl sort operation
typedef int (*wxListCtrlCompare)(long item1, long item2, long sortData);
//-----------------------------------------------------------------------------
// wxListCtrl flags
//-----------------------------------------------------------------------------
#define wxLC_ICON 0x0004
#define wxLC_SMALL_ICON 0x0008
#define wxLC_LIST 0x0010
#define wxLC_REPORT 0x0020
#define wxLC_ALIGN_TOP 0x0040
#define wxLC_ALIGN_LEFT 0x0080
#define wxLC_AUTOARRANGE 0x0100 // not supported in wxGLC
#define wxLC_USER_TEXT 0x0200 // not supported in wxGLC (how does it work?)
#define wxLC_EDIT_LABELS 0x0400
#define wxLC_NO_HEADER 0x0800
#define wxLC_NO_SORT_HEADER 0x1000 // not supported in wxGLC
#define wxLC_SINGLE_SEL 0x2000
#define wxLC_SORT_ASCENDING 0x4000
#define wxLC_SORT_DESCENDING 0x8000 // not supported in wxGLC
#define wxLC_MASK_TYPE (wxLC_ICON | wxLC_SMALL_ICON | wxLC_LIST | wxLC_REPORT)
#define wxLC_MASK_ALIGN (wxLC_ALIGN_TOP | wxLC_ALIGN_LEFT)
#define wxLC_MASK_SORT (wxLC_SORT_ASCENDING | wxLC_SORT_DESCENDING)
// Omitted because (a) too much detail (b) not enough style flags
// #define wxLC_NO_SCROLL
// #define wxLC_NO_LABEL_WRAP
// #define wxLC_OWNERDRAW_FIXED
// #define wxLC_SHOW_SEL_ALWAYS
// Mask flags to tell app/GUI what fields of wxListItem are valid
#define wxLIST_MASK_STATE 0x0001
#define wxLIST_MASK_TEXT 0x0002
#define wxLIST_MASK_IMAGE 0x0004
#define wxLIST_MASK_DATA 0x0008
#define wxLIST_SET_ITEM 0x0010
#define wxLIST_MASK_WIDTH 0x0020
#define wxLIST_MASK_FORMAT 0x0040
// State flags for indicating the state of an item
#define wxLIST_STATE_DONTCARE 0x0000
#define wxLIST_STATE_DROPHILITED 0x0001 // not supported in wxGLC
#define wxLIST_STATE_FOCUSED 0x0002
#define wxLIST_STATE_SELECTED 0x0004
#define wxLIST_STATE_CUT 0x0008 // not supported in wxGLC
// Hit test flags, used in HitTest // wxGLC suppots 20 and 80
#define wxLIST_HITTEST_ABOVE 0x0001 // Above the client area.
#define wxLIST_HITTEST_BELOW 0x0002 // Below the client area.
#define wxLIST_HITTEST_NOWHERE 0x0004 // In the client area but below the last item.
#define wxLIST_HITTEST_ONITEMICON 0x0020 // On the bitmap associated with an item.
#define wxLIST_HITTEST_ONITEMLABEL 0x0080 // On the label (string) associated with an item.
#define wxLIST_HITTEST_ONITEMRIGHT 0x0100 // In the area to the right of an item.
#define wxLIST_HITTEST_ONITEMSTATEICON 0x0200 // On the state icon for a tree view item that is in a user-defined state.
#define wxLIST_HITTEST_TOLEFT 0x0400 // To the right of the client area.
#define wxLIST_HITTEST_TORIGHT 0x0800 // To the left of the client area.
#define wxLIST_HITTEST_ONITEM (wxLIST_HITTEST_ONITEMICON | wxLIST_HITTEST_ONITEMLABEL | wxLIST_HITTEST_ONITEMSTATEICON)
// Flags for GetNextItem // always wxLIST_NEXT_ALL in wxGLC
enum {
wxLIST_NEXT_ABOVE, // Searches for an item above the specified item
wxLIST_NEXT_ALL, // Searches for subsequent item by index
wxLIST_NEXT_BELOW, // Searches for an item below the specified item
wxLIST_NEXT_LEFT, // Searches for an item to the left of the specified item
wxLIST_NEXT_RIGHT // Searches for an item to the right of the specified item
};
// Alignment flags for Arrange // always wxLIST_ALIGN_LEFT in wxGLC
enum {
wxLIST_ALIGN_DEFAULT,
wxLIST_ALIGN_LEFT,
wxLIST_ALIGN_TOP,
wxLIST_ALIGN_SNAP_TO_GRID
};
// Column format // always wxLIST_FORMAT_LEFT in wxGLC
enum {
wxLIST_FORMAT_LEFT,
wxLIST_FORMAT_RIGHT,
wxLIST_FORMAT_CENTRE,
wxLIST_FORMAT_CENTER = wxLIST_FORMAT_CENTRE
};
// Autosize values for SetColumnWidth
enum {
wxLIST_AUTOSIZE = -1, // width of longest item
wxLIST_AUTOSIZE_USEHEADER = -2 // always 80 in wxGLC
};
// Flag values for GetItemRect
enum {
wxLIST_RECT_BOUNDS,
wxLIST_RECT_ICON,
wxLIST_RECT_LABEL
};
// Flag values for FindItem // not supported by wxGLC
enum {
wxLIST_FIND_UP,
wxLIST_FIND_DOWN,
wxLIST_FIND_LEFT,
wxLIST_FIND_RIGHT
};
//-----------------------------------------------------------------------------
// wxListItem
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxListItem: public wxObject
{
DECLARE_DYNAMIC_CLASS(wxListItem)
public:
long m_mask; // Indicates what fields are valid
long m_itemId; // The zero-based item position
int m_col; // Zero-based column, if in report mode
long m_state; // The state of the item
long m_stateMask; // Which flags of m_state are valid (uses same flags)
wxString m_text; // The label/header text
int m_image; // The zero-based index into an image list
long m_data; // App-defined data
wxColour *m_colour; // only wxGLC, not supported by Windows ;->
// For columns only
int m_format; // left, right, centre
int m_width; // width of column
wxListItem();
};
//-----------------------------------------------------------------------------
// wxListItemData (internal)
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxListItemData : public wxObject
{
public:
wxString m_text;
int m_image;
long m_data;
int m_xpos,m_ypos;
int m_width,m_height;
wxColour *m_colour;
public:
wxListItemData();
wxListItemData( const wxListItem &info );
void SetItem( const wxListItem &info );
void SetText( const wxString &s );
void SetImage( int image );
void SetData( long data );
void SetPosition( int x, int y );
void SetSize( int width, int height );
void SetColour( wxColour *col );
bool HasImage() const;
bool HasText() const;
bool IsHit( int x, int y ) const;
void GetText( wxString &s );
int GetX( void ) const;
int GetY( void ) const;
int GetWidth() const;
int GetHeight() const;
int GetImage() const;
void GetItem( wxListItem &info );
wxColour *GetColour();
private:
DECLARE_DYNAMIC_CLASS(wxListItemData);
};
//-----------------------------------------------------------------------------
// wxListHeaderData (internal)
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxListHeaderData : public wxObject
{
DECLARE_DYNAMIC_CLASS(wxListHeaderData);
protected:
long m_mask;
int m_image;
wxString m_text;
int m_format;
int m_width;
int m_xpos,m_ypos;
int m_height;
public:
wxListHeaderData();
wxListHeaderData( const wxListItem &info );
void SetItem( const wxListItem &item );
void SetPosition( int x, int y );
void SetWidth( int w );
void SetFormat( int format );
void SetHeight( int h );
bool HasImage() const;
bool HasText() const;
bool IsHit( int x, int y ) const;
void GetItem( wxListItem &item );
void GetText( wxString &s );
int GetImage() const;
int GetWidth() const;
int GetFormat() const;
};
//-----------------------------------------------------------------------------
// wxListLineData (internal)
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxListLineData : public wxObject
{
DECLARE_DYNAMIC_CLASS(wxListLineData);
public:
wxList m_items;
wxRect m_bound_all;
wxRect m_bound_label;
wxRect m_bound_icon;
wxRect m_bound_hilight;
int m_mode;
bool m_hilighted;
wxBrush *m_hilightBrush;
int m_spacing;
wxListMainWindow *m_owner;
void DoDraw( wxDC *dc, bool hilight, bool paintBG );
public:
wxListLineData() {};
wxListLineData( wxListMainWindow *owner, int mode, wxBrush *hilightBrush );
void CalculateSize( wxDC *dc, int spacing );
void SetPosition( wxDC *dc, int x, int y, int window_width );
void SetColumnPosition( int index, int x );
void GetSize( int &width, int &height );
void GetExtent( int &x, int &y, int &width, int &height );
void GetLabelExtent( int &x, int &y, int &width, int &height );
long IsHit( int x, int y );
void InitItems( int num );
void SetItem( int index, const wxListItem &info );
void GetItem( int index, wxListItem &info );
void GetText( int index, wxString &s );
void SetText( int index, const wxString s );
int GetImage( int index );
void GetRect( wxRect &rect );
void Hilight( bool on );
void ReverseHilight();
void DrawRubberBand( wxDC *dc, bool on );
void Draw( wxDC *dc );
bool IsInRect( int x, int y, const wxRect &rect );
bool IsHilighted();
void AssignRect( wxRect &dest, int x, int y, int width, int height );
void AssignRect( wxRect &dest, const wxRect &source );
};
//-----------------------------------------------------------------------------
// wxListHeaderWindow (internal)
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxListHeaderWindow : public wxWindow
{
DECLARE_DYNAMIC_CLASS(wxListHeaderWindow)
protected:
wxListMainWindow *m_owner;
wxCursor *m_currentCursor;
wxCursor *m_resizeCursor;
bool m_isDragging;
int m_column;
int m_minX;
int m_currentX;
public:
wxListHeaderWindow();
~wxListHeaderWindow();
wxListHeaderWindow( wxWindow *win, wxWindowID id, wxListMainWindow *owner,
const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize,
long style = 0, const wxString &name = "columntitles" );
void DoDrawRect( wxDC *dc, int x, int y, int w, int h );
void OnPaint( wxPaintEvent &event );
void DrawCurrent();
void OnMouse( wxMouseEvent &event );
void OnSetFocus( wxFocusEvent &event );
DECLARE_EVENT_TABLE()
};
//-----------------------------------------------------------------------------
// wxListRenameTimer (internal)
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxListRenameTimer: public wxTimer
{
private:
wxListMainWindow *m_owner;
public:
wxListRenameTimer( wxListMainWindow *owner );
void Notify();
};
//-----------------------------------------------------------------------------
// wxListTextCtrl (internal)
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxListTextCtrl: public wxTextCtrl
{
DECLARE_DYNAMIC_CLASS(wxListTextCtrl);
private:
bool *m_accept;
wxString *m_res;
wxListMainWindow *m_owner;
wxString m_startValue;
public:
wxListTextCtrl() {};
wxListTextCtrl( wxWindow *parent, const wxWindowID id,
bool *accept, wxString *res, wxListMainWindow *owner,
const wxString &value = "",
const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize,
int style = 0, const wxValidator& validator = wxDefaultValidator,
const wxString &name = "wxListTextCtrlText" );
void OnChar( wxKeyEvent &event );
void OnKillFocus( wxFocusEvent &event );
DECLARE_EVENT_TABLE()
};
//-----------------------------------------------------------------------------
// wxListMainWindow (internal)
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxListMainWindow: public wxScrolledWindow
{
DECLARE_DYNAMIC_CLASS(wxListMainWindow);
public:
long m_mode;
wxList m_lines;
wxList m_columns;
wxListLineData *m_current;
wxListLineData *m_currentEdit;
int m_visibleLines;
wxBrush *m_hilightBrush;
wxColour *m_hilightColour;
int m_xScroll,m_yScroll;
bool m_dirty;
wxImageList *m_small_image_list;
wxImageList *m_normal_image_list;
int m_small_spacing;
int m_normal_spacing;
bool m_hasFocus;
bool m_usedKeys;
bool m_lastOnSame;
wxTimer *m_renameTimer;
bool m_renameAccept;
wxString m_renameRes;
bool m_isCreated;
int m_dragCount;
wxPoint m_dragStart;
public:
wxListMainWindow();
wxListMainWindow( wxWindow *parent, wxWindowID id,
const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize,
long style = 0, const wxString &name = "listctrl" );
~wxListMainWindow();
void RefreshLine( wxListLineData *line );
void OnPaint( wxPaintEvent &event );
void HilightAll( bool on );
void SendNotify( wxListLineData *line, wxEventType command );
void FocusLine( wxListLineData *line );
void UnfocusLine( wxListLineData *line );
void SelectLine( wxListLineData *line );
void DeselectLine( wxListLineData *line );
void DeleteLine( wxListLineData *line );
void EditLabel( long item );
void Edit( long item ) { EditLabel(item); } // deprecated
void OnRenameTimer();
void OnRenameAccept();
void OnMouse( wxMouseEvent &event );
void MoveToFocus();
void OnArrowChar( wxListLineData *newCurrent, bool shiftDown );
void OnChar( wxKeyEvent &event );
void OnKeyDown( wxKeyEvent &event );
void OnSetFocus( wxFocusEvent &event );
void OnKillFocus( wxFocusEvent &event );
void OnSize( wxSizeEvent &event );
void DrawImage( int index, wxDC *dc, int x, int y );
void GetImageSize( int index, int &width, int &height );
int GetIndexOfLine( const wxListLineData *line );
int GetTextLength( wxString &s ); // should be const
void SetImageList( wxImageList *imageList, int which );
void SetItemSpacing( int spacing, bool isSmall = FALSE );
int GetItemSpacing( bool isSmall = FALSE );
void SetColumn( int col, wxListItem &item );
void SetColumnWidth( int col, int width );
void GetColumn( int col, wxListItem &item );
int GetColumnWidth( int vol );
int GetColumnCount();
int GetCountPerPage();
void SetItem( wxListItem &item );
void GetItem( wxListItem &item );
void SetItemState( long item, long state, long stateMask );
int GetItemState( long item, long stateMask );
int GetItemCount();
void GetItemRect( long index, wxRect &rect );
bool GetItemPosition( long item, wxPoint& pos );
int GetSelectedItemCount();
void SetMode( long mode );
long GetMode() const;
void CalculatePositions();
void RealizeChanges();
long GetNextItem( long item, int geometry, int state );
void DeleteItem( long index );
void DeleteAllItems();
void DeleteColumn( int col );
void DeleteEverything();
void EnsureVisible( long index );
long FindItem( long start, const wxString& str, bool partial = FALSE );
long FindItem( long start, long data);
long HitTest( int x, int y, int &flags );
void InsertItem( wxListItem &item );
// void AddItem( wxListItem &item );
void InsertColumn( long col, wxListItem &item );
// void AddColumn( wxListItem &item );
void SortItems( wxListCtrlCompare fn, long data );
DECLARE_EVENT_TABLE()
};
//-----------------------------------------------------------------------------
// wxListCtrl
//-----------------------------------------------------------------------------
class WXDLLEXPORT wxListCtrl: public wxControl
{
DECLARE_DYNAMIC_CLASS(wxListCtrl);
public:
wxListCtrl();
wxListCtrl( wxWindow *parent, wxWindowID id = -1,
const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize,
long style = wxLC_ICON, const wxValidator& validator = wxDefaultValidator,
const wxString &name = "listctrl" )
{
Create(parent, id, pos, size, style, validator, name);
}
~wxListCtrl();
bool Create( wxWindow *parent, wxWindowID id = -1,
const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize,
long style = wxLC_ICON, const wxValidator& validator = wxDefaultValidator,
const wxString &name = "listctrl" );
void OnSize( wxSizeEvent &event );
bool GetColumn( int col, wxListItem& item ) const;
bool SetColumn( int col, wxListItem& item );
int GetColumnWidth( int col ) const;
bool SetColumnWidth( int col, int width);
int GetCountPerPage() const; // not the same in wxGLC as in Windows, I think
bool GetItem( wxListItem& info ) const;
bool SetItem( wxListItem& info ) ;
long SetItem( long index, int col, const wxString& label, int imageId = -1 );
int GetItemState( long item, long stateMask ) const;
bool SetItemState( long item, long state, long stateMask);
bool SetItemImage( long item, int image, int selImage);
wxString GetItemText( long item ) const;
void SetItemText( long item, const wxString& str );
long GetItemData( long item ) const;
bool SetItemData( long item, long data );
bool GetItemRect( long item, wxRect& rect, int code = wxLIST_RECT_BOUNDS ) const;
bool GetItemPosition( long item, wxPoint& pos ) const;
bool SetItemPosition( long item, const wxPoint& pos ); // not supported in wxGLC
int GetItemCount() const;
int GetColumnCount() const;
void SetItemSpacing( int spacing, bool isSmall = FALSE );
int GetItemSpacing( bool isSmall ) const;
int GetSelectedItemCount() const;
// wxColour GetTextColour() const; // wxGLC has colours for every Item (see wxListItem)
// void SetTextColour(const wxColour& col);
long GetTopItem() const;
void SetSingleStyle( long style, bool add = TRUE ) ;
void SetWindowStyleFlag( long style );
void RecreateWindow() {}
long GetNextItem( long item, int geometry = wxLIST_NEXT_ALL, int state = wxLIST_STATE_DONTCARE ) const;
wxImageList *GetImageList( int which ) const;
void SetImageList( wxImageList *imageList, int which );
bool Arrange( int flag = wxLIST_ALIGN_DEFAULT ); // always wxLIST_ALIGN_LEFT in wxGLC
void ClearAll();
bool DeleteItem( long item );
bool DeleteAllItems();
bool DeleteAllColumns();
bool DeleteColumn( int col );
void EditLabel( long item ) { Edit(item); }
void Edit( long item );
bool EnsureVisible( long item );
long FindItem( long start, const wxString& str, bool partial = FALSE );
long FindItem( long start, long data );
long FindItem( long start, const wxPoint& pt, int direction ); // not supported in wxGLC
long HitTest( const wxPoint& point, int& flags);
long InsertItem(wxListItem& info);
long InsertItem( long index, const wxString& label );
long InsertItem( long index, int imageIndex );
long InsertItem( long index, const wxString& label, int imageIndex );
long InsertColumn( long col, wxListItem& info );
long InsertColumn( long col, const wxString& heading, int format = wxLIST_FORMAT_LEFT,
int width = -1 );
bool ScrollList( int dx, int dy );
bool SortItems( wxListCtrlCompare fn, long data );
bool Update( long item );
void OnIdle( wxIdleEvent &event );
// We have to hand down a few functions
bool SetBackgroundColour( const wxColour &colour );
bool SetForegroundColour( const wxColour &colour );
bool SetFont( const wxFont &font );
#if wxUSE_DRAG_AND_DROP
void SetDropTarget( wxDropTarget *dropTarget )
{ m_mainWin->SetDropTarget( dropTarget ); }
wxDropTarget *GetDropTarget() const
{ return m_mainWin->GetDropTarget(); }
#endif
bool SetCursor( const wxCursor &cursor )
{ return m_mainWin ? m_mainWin->wxWindow::SetCursor(cursor) : FALSE; }
wxColour GetBackgroundColour() const
{ return m_mainWin ? m_mainWin->GetBackgroundColour() : wxColour(); }
wxColour GetForegroundColour() const
{ return m_mainWin ? m_mainWin->GetForegroundColour() : wxColour(); }
bool DoPopupMenu( wxMenu *menu, int x, int y )
{ return m_mainWin->PopupMenu( menu, x, y ); }
void SetFocus()
{ m_mainWin->SetFocus(); }
// implementation
wxImageList *m_imageListNormal;
wxImageList *m_imageListSmall;
wxImageList *m_imageListState; // what's that ?
wxListHeaderWindow *m_headerWin;
wxListMainWindow *m_mainWin;
DECLARE_EVENT_TABLE()
};
#endif // __LISTCTRLH_G__

View File

@@ -0,0 +1,28 @@
/* XPM */
static char * listview_xpm[] = {
"20 20 3 1",
" c None",
". c #000000000000",
"X c #FFFFFFFFFFFF",
" ",
" ",
" ",
" ................. ",
" .XXXXXXXXXXXXXXX. ",
" .XX.....XXX....X. ",
" .XXXXXXXXXXXXXXX. ",
" .XX...XXXXX..XXX. ",
" .XXXXXXXXXXXXXXX. ",
" .XX..XXXXXX...XX. ",
" .XXXXXXXXXXXXXXX. ",
" .XX.....XXX...XX. ",
" .XXXXXXXXXXXXXXX. ",
" .XX...XXXXXXXXXX. ",
" .XXXXXXXXXXXXXXX. ",
" ................. ",
" ",
" ",
" ",
" "};

View File

@@ -0,0 +1,60 @@
/////////////////////////////////////////////////////////////////////////////
// Name: msgdlgg.h
// Purpose: Generic wxMessageDialog
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c)
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __MSGDLGH_G__
#define __MSGDLGH_G__
#ifdef __GNUG__
#pragma interface "msgdlgg.h"
#endif
#include "wx/setup.h"
#include "wx/dialog.h"
// type is an 'or' (|) of wxOK, wxCANCEL, wxYES_NO
// Returns wxYES/NO/OK/CANCEL
WXDLLEXPORT_DATA(extern const wxChar*) wxMessageBoxCaptionStr;
class WXDLLEXPORT wxGenericMessageDialog: public wxDialog
{
DECLARE_DYNAMIC_CLASS(wxGenericMessageDialog)
public:
wxGenericMessageDialog(wxWindow *parent, const wxString& message,
const wxString& caption = wxMessageBoxCaptionStr,
long style = wxOK|wxCENTRE, const wxPoint& pos = wxDefaultPosition);
void OnYes(wxCommandEvent& event);
void OnNo(wxCommandEvent& event);
void OnCancel(wxCommandEvent& event);
private:
int m_dialogStyle;
DECLARE_EVENT_TABLE()
};
#if !defined( __WXMSW__ ) && !defined( __WXMAC__) && !defined(__WXPM__)
#define wxMessageDialog wxGenericMessageDialog
int wxMessageBox( const wxString& message
,const wxString& caption = wxMessageBoxCaptionStr
,long style = wxOK|wxCENTRE
,wxWindow *parent = (wxWindow *) NULL
,int x = -1
,int y = -1
);
#endif
#endif
// __MSGDLGH_G__

View File

@@ -0,0 +1,42 @@
/* XPM */
static char *new_dir_xpm[] = {
/* columns rows colors chars-per-pixel */
"20 20 16 1",
" c Gray0",
". c #800000",
"X c #008000",
"o c #808000",
"O c #000080",
"+ c #800080",
"@ c #008080",
"# c None",
"$ c #808080",
"% c Red",
"& c Green",
"* c Yellow",
"= c Blue",
"- c Magenta",
"; c Cyan",
": c Gray100",
/* pixels */
"####################",
"####################",
"############# ######",
"####################",
"############# ######",
"########## ##### ###",
"##### ## # # ####",
"#### *:*: ## # #####",
"### ## # ##",
"### :*:*:*:*: #####",
"### *:*:*:*:* # ####",
"### :*:*:*:*: ## ###",
"### *:*:*:*:* ######",
"### :*:*:*:*: ######",
"### *:*:*:*:* ######",
"### ######",
"####################",
"####################",
"####################",
"####################"
};

View File

@@ -0,0 +1,203 @@
/////////////////////////////////////////////////////////////////////////////
// Name: notebook.h
// Purpose: wxNotebook class (a.k.a. property sheet, tabbed dialog)
// Author: Julian Smart
// Modified by:
// RCS-ID: $Id$
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_NOTEBOOK_H_
#define _WX_NOTEBOOK_H_
#ifdef __GNUG__
#pragma interface "notebook.h"
#endif
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------
#include "wx/dynarray.h"
#include "wx/event.h"
#include "wx/control.h"
#include "wx/generic/tabg.h"
// ----------------------------------------------------------------------------
// types
// ----------------------------------------------------------------------------
// fwd declarations
class WXDLLEXPORT wxImageList;
class WXDLLEXPORT wxWindow;
// array of notebook pages
typedef wxWindow wxNotebookPage; // so far, any window can be a page
WX_DEFINE_ARRAY(wxNotebookPage *, wxArrayPages);
// ----------------------------------------------------------------------------
// wxNotebook
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxNotebook;
// This reuses wxTabView to draw the tabs.
class WXDLLEXPORT wxNotebookTabView: public wxTabView
{
DECLARE_DYNAMIC_CLASS(wxNotebookTabView)
public:
wxNotebookTabView(wxNotebook* notebook, long style = wxTAB_STYLE_DRAW_BOX | wxTAB_STYLE_COLOUR_INTERIOR);
~wxNotebookTabView(void);
// Called when a tab is activated
virtual void OnTabActivate(int activateId, int deactivateId);
protected:
wxNotebook* m_notebook;
};
class wxNotebook : public wxControl
{
public:
// ctors
// -----
// default for dynamic class
wxNotebook();
// the same arguments as for wxControl (@@@ any special styles?)
wxNotebook(wxWindow *parent,
wxWindowID id,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = 0,
const wxString& name = "notebook");
// Create() function
bool Create(wxWindow *parent,
wxWindowID id,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = 0,
const wxString& name = "notebook");
// dtor
~wxNotebook();
// accessors
// ---------
// get number of pages in the dialog
int GetPageCount() const;
// Find the position of the wxNotebookPage, -1 if not found.
int FindPagePosition(wxNotebookPage* page) const;
// set the currently selected page, return the index of the previously
// selected one (or -1 on error)
// NB: this function will _not_ generate wxEVT_NOTEBOOK_PAGE_xxx events
int SetSelection(int nPage);
// cycle thru the tabs
void AdvanceSelection(bool bForward = TRUE);
// get the currently selected page
int GetSelection() const { return m_nSelection; }
// set/get the title of a page
bool SetPageText(int nPage, const wxString& strText);
wxString GetPageText(int nPage) const;
// image list stuff: each page may have an image associated with it. All
// the images belong to an image list, so you have to
// 1) create an image list
// 2) associate it with the notebook
// 3) set for each page it's image
// associate image list with a control
void SetImageList(wxImageList* imageList);
// get pointer (may be NULL) to the associated image list
wxImageList* GetImageList() const { return m_pImageList; }
// sets/returns item's image index in the current image list
int GetPageImage(int nPage) const;
bool SetPageImage(int nPage, int nImage);
// currently it's always 1 because wxGTK doesn't support multi-row
// tab controls
int GetRowCount() const;
// control the appearance of the notebook pages
// set the size (the same for all pages)
void SetPageSize(const wxSize& size);
// set the padding between tabs (in pixels)
void SetPadding(const wxSize& padding);
// Sets the size of the tabs (assumes all tabs are the same size)
void SetTabSize(const wxSize& sz);
// operations
// ----------
// remove one page from the notebook, and delete the page.
bool DeletePage(int nPage);
bool DeletePage(wxNotebookPage* page);
// remove one page from the notebook, without deleting the page.
bool RemovePage(int nPage);
bool RemovePage(wxNotebookPage* page);
// remove all pages
bool DeleteAllPages();
// adds a new page to the notebook (it will be deleted ny the notebook,
// don't delete it yourself). If bSelect, this page becomes active.
bool AddPage(wxNotebookPage *pPage,
const wxString& strText,
bool bSelect = FALSE,
int imageId = -1);
// the same as AddPage(), but adds it at the specified position
bool InsertPage(int nPage,
wxNotebookPage *pPage,
const wxString& strText,
bool bSelect = FALSE,
int imageId = -1);
// get the panel which represents the given page
wxNotebookPage *GetPage(int nPage) { return m_aPages[nPage]; }
// callbacks
// ---------
void OnSize(wxSizeEvent& event);
void OnIdle(wxIdleEvent& event);
void OnSelChange(wxNotebookEvent& event);
void OnSetFocus(wxFocusEvent& event);
void OnNavigationKey(wxNavigationKeyEvent& event);
// base class virtuals
// -------------------
virtual void Command(wxCommandEvent& event);
virtual void SetConstraintSizes(bool recurse = TRUE);
virtual bool DoPhase(int nPhase);
// Implementation
// wxNotebook on Motif uses a generic wxTabView to implement itself.
wxTabView *GetTabView() const { return m_tabView; }
void SetTabView(wxTabView *v) { m_tabView = v; }
void OnMouseEvent(wxMouseEvent& event);
void OnPaint(wxPaintEvent& event);
virtual wxRect GetAvailableClientSize();
// Implementation: calculate the layout of the view rect
// and resize the children if required
bool RefreshLayout(bool force = TRUE);
protected:
// common part of all ctors
void Init();
// helper functions
void ChangePage(int nOldSel, int nSel); // change pages
wxImageList *m_pImageList; // we can have an associated image list
wxArrayPages m_aPages; // array of pages
int m_nSelection; // the current selection (-1 if none)
wxTabView* m_tabView;
DECLARE_DYNAMIC_CLASS(wxNotebook)
DECLARE_EVENT_TABLE()
};
#endif // _WX_NOTEBOOK_H_

101
include/wx/generic/panelg.h Normal file
View File

@@ -0,0 +1,101 @@
/////////////////////////////////////////////////////////////////////////////
// Name: panelg.h
// Purpose: wxPanel: similar to wxWindows but is coloured as for a dialog
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c)
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __PANELH_G__
#define __PANELH_G__
#ifdef __GNUG__
#pragma interface "panelg.h"
#endif
#include "wx/window.h"
#include "wx/button.h"
WXDLLEXPORT_DATA(extern const wxChar*) wxPanelNameStr;
class WXDLLEXPORT wxPanel : public wxWindow
{
public:
wxPanel() { Init(); }
// Old-style constructor (no default values for coordinates to avoid
// ambiguity with the new one)
wxPanel(wxWindow *parent,
int x, int y, int width, int height,
long style = wxTAB_TRAVERSAL | wxNO_BORDER,
const wxString& name = wxPanelNameStr)
{
Init();
Create(parent, -1, wxPoint(x, y), wxSize(width, height), style, name);
}
// Constructor
wxPanel(wxWindow *parent,
wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxTAB_TRAVERSAL | wxNO_BORDER,
const wxString& name = wxPanelNameStr)
{
Init();
Create(parent, id, pos, size, style, name);
}
// Pseudo ctor
bool Create(wxWindow *parent, wxWindowID id,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxTAB_TRAVERSAL | wxNO_BORDER,
const wxString& name = wxPanelNameStr);
// Sends an OnInitDialog event, which in turns transfers data to
// to the dialog via validators.
virtual void InitDialog();
// a default button is activated when Enter is pressed
wxButton *GetDefaultItem() const { return m_btnDefault; }
void SetDefaultItem(wxButton *btn) { m_btnDefault = btn; }
// implementation from now on
// --------------------------
// responds to colour changes
void OnSysColourChanged(wxSysColourChangedEvent& event);
// process a keyboard navigation message (Tab traversal)
void OnNavigationKey(wxNavigationKeyEvent& event);
// set the focus to the first child if we get it
void OnFocus(wxFocusEvent& event);
// called by wxWindow whenever it gets focus
void SetLastFocus(wxWindow *win) { m_winLastFocused = win; }
wxWindow *GetLastFocus() const { return m_winLastFocused; }
protected:
// common part of all ctors
void Init();
// the child which had the focus last time this panel was activated
wxWindow *m_winLastFocused;
// a default button or NULL
wxButton *m_btnDefault;
private:
DECLARE_DYNAMIC_CLASS(wxPanel)
DECLARE_EVENT_TABLE()
};
#endif
// __PANELH_G__

View File

@@ -0,0 +1,70 @@
/////////////////////////////////////////////////////////////////////////////
// Name: printps.h
// Purpose: wxPostScriptPrinter, wxPostScriptPrintPreview
// wxGenericPageSetupDialog
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c)
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __PRINTPSH__
#define __PRINTPSH__
#ifdef __GNUG__
#pragma interface "printps.h"
#endif
#include "wx/prntbase.h"
#if wxUSE_PRINTING_ARCHITECTURE
// ----------------------------------------------------------------------------
// Represents the printer: manages printing a wxPrintout object
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxPostScriptPrinter : public wxPrinterBase
{
DECLARE_DYNAMIC_CLASS(wxPostScriptPrinter)
public:
wxPostScriptPrinter(wxPrintDialogData *data = (wxPrintDialogData *) NULL);
virtual ~wxPostScriptPrinter();
virtual bool Print(wxWindow *parent, wxPrintout *printout, bool prompt = TRUE);
virtual wxDC* PrintDialog(wxWindow *parent);
virtual bool Setup(wxWindow *parent);
};
// ----------------------------------------------------------------------------
// wxPrintPreview: programmer creates an object of this class to preview a
// wxPrintout.
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxPostScriptPrintPreview : public wxPrintPreviewBase
{
DECLARE_CLASS(wxPostScriptPrintPreview)
public:
wxPostScriptPrintPreview(wxPrintout *printout,
wxPrintout *printoutForPrinting = (wxPrintout *) NULL,
wxPrintDialogData *data = (wxPrintDialogData *) NULL);
wxPostScriptPrintPreview(wxPrintout *printout,
wxPrintout *printoutForPrinting,
wxPrintData *data);
virtual ~wxPostScriptPrintPreview();
virtual bool Print(bool interactive);
virtual void DetermineScaling();
private:
void Init(wxPrintout *printout, wxPrintout *printoutForPrinting);
};
#endif
#endif
// __PRINTPSH__

View File

@@ -0,0 +1,196 @@
/////////////////////////////////////////////////////////////////////////////
// Name: prntdlgg.h
// Purpose: wxGenericPrintDialog, wxGenericPrintSetupDialog,
// wxGenericPageSetupDialog
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c)
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __PRINTDLGH_G_
#define __PRINTDLGH_G_
#ifdef __GNUG__
#pragma interface "prntdlgg.h"
#endif
#include "wx/defs.h"
#if wxUSE_PRINTING_ARCHITECTURE
#include "wx/dialog.h"
#include "wx/dialog.h"
#if wxUSE_POSTSCRIPT
#include "wx/dcps.h"
#endif
class WXDLLEXPORT wxTextCtrl;
class WXDLLEXPORT wxButton;
class WXDLLEXPORT wxCheckBox;
class WXDLLEXPORT wxComboBox;
class WXDLLEXPORT wxStaticText;
class WXDLLEXPORT wxRadioBox;
class WXDLLEXPORT wxPrintSetupData;
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
// FIXME why all these enums start with 10 or 30?
enum
{
wxPRINTID_STATIC = 10,
wxPRINTID_RANGE,
wxPRINTID_FROM,
wxPRINTID_TO,
wxPRINTID_COPIES,
wxPRINTID_PRINTTOFILE,
wxPRINTID_SETUP
};
enum
{
wxPRINTID_LEFTMARGIN = 30,
wxPRINTID_RIGHTMARGIN,
wxPRINTID_TOPMARGIN,
wxPRINTID_BOTTOMMARGIN
};
enum
{
wxPRINTID_PRINTCOLOUR = 10,
wxPRINTID_ORIENTATION,
wxPRINTID_COMMAND,
wxPRINTID_OPTIONS,
wxPRINTID_PAPERSIZE
};
// ----------------------------------------------------------------------------
// Simulated Print and Print Setup dialogs for non-Windows platforms (and
// Windows using PostScript print/preview)
// ----------------------------------------------------------------------------
#if wxUSE_POSTSCRIPT
class WXDLLEXPORT wxGenericPrintDialog : public wxDialog
{
DECLARE_DYNAMIC_CLASS(wxGenericPrintDialog)
public:
wxGenericPrintDialog(wxWindow *parent,
wxPrintDialogData* data = (wxPrintDialogData*)NULL);
wxGenericPrintDialog(wxWindow *parent, wxPrintData* data);
virtual ~wxGenericPrintDialog();
void OnSetup(wxCommandEvent& event);
void OnRange(wxCommandEvent& event);
void OnOK(wxCommandEvent& event);
virtual bool TransferDataFromWindow();
virtual bool TransferDataToWindow();
virtual int ShowModal();
#if wxUSE_POSTSCRIPT
wxPrintData& GetPrintData()
{ return m_printDialogData.GetPrintData(); }
#endif // wxUSE_POSTSCRIPT
wxPrintDialogData& GetPrintDialogData() { return m_printDialogData; }
wxDC *GetPrintDC();
public:
// wxStaticText* m_printerMessage;
wxButton* m_setupButton;
// wxButton* m_helpButton;
wxRadioBox* m_rangeRadioBox;
wxTextCtrl* m_fromText;
wxTextCtrl* m_toText;
wxTextCtrl* m_noCopiesText;
wxCheckBox* m_printToFileCheckBox;
// wxCheckBox* m_collateCopiesCheckBox;
wxPrintDialogData m_printDialogData;
protected:
void Init(wxWindow *parent);
private:
DECLARE_EVENT_TABLE()
};
class WXDLLEXPORT wxGenericPrintSetupDialog : public wxDialog
{
DECLARE_CLASS(wxGenericPrintSetupDialog)
public:
// There are no configuration options for the dialog, so we
// just pass the wxPrintData object (no wxPrintSetupDialogData class needed)
wxGenericPrintSetupDialog(wxWindow *parent, wxPrintData* data);
wxGenericPrintSetupDialog(wxWindow *parent, wxPrintSetupData* data);
virtual ~wxGenericPrintSetupDialog();
void Init(wxPrintData* data);
virtual bool TransferDataFromWindow();
virtual bool TransferDataToWindow();
wxComboBox *CreatePaperTypeChoice(int* x, int* y);
public:
wxRadioBox* m_orientationRadioBox;
wxTextCtrl* m_printerCommandText;
wxTextCtrl* m_printerOptionsText;
wxCheckBox* m_colourCheckBox;
wxComboBox* m_paperTypeChoice;
#if wxUSE_POSTSCRIPT
wxPrintData m_printData;
wxPrintData& GetPrintData() { return m_printData; }
#endif // wxUSE_POSTSCRIPT
};
#endif
// wxUSE_POSTSCRIPT
class WXDLLEXPORT wxGenericPageSetupDialog : public wxDialog
{
DECLARE_CLASS(wxGenericPageSetupDialog)
public:
wxGenericPageSetupDialog(wxWindow *parent, wxPageSetupData* data = (wxPageSetupData*) NULL);
virtual ~wxGenericPageSetupDialog();
virtual bool TransferDataFromWindow();
virtual bool TransferDataToWindow();
void OnPrinter(wxCommandEvent& event);
wxComboBox *CreatePaperTypeChoice(int* x, int* y);
wxPageSetupData& GetPageSetupData() { return m_pageData; }
public:
wxButton* m_printerButton;
wxRadioBox* m_orientationRadioBox;
wxTextCtrl* m_marginLeftText;
wxTextCtrl* m_marginTopText;
wxTextCtrl* m_marginRightText;
wxTextCtrl* m_marginBottomText;
wxComboBox* m_paperTypeChoice;
static bool m_pageSetupDialogCancelled;
wxPageSetupData m_pageData;
private:
DECLARE_EVENT_TABLE()
};
#endif
#endif
// __PRINTDLGH_G__

View File

@@ -0,0 +1,111 @@
////////////////////////////////////////////////////
// Name: progdlgg.h
// Purpose: wxProgressDialog class
// Author: Karsten Ball<6C>der
// Modified by:
// Created: 09.05.1999
// RCS-ID: $Id$
// Copyright: (c) Karsten Ball<6C>der
// Licence: wxWindows license
////////////////////////////////////////////////////
#ifndef __PROGDLGH_G__
#define __PROGDLGH_G__
#ifdef __GNUG__
#pragma interface "progdlgg.h"
#endif
#include "wx/setup.h"
#if wxUSE_PROGRESSDLG
#include "wx/dialog.h"
class WXDLLEXPORT wxButton;
class WXDLLEXPORT wxStaticText;
/* Progress dialog which shows a moving progress bar.
Taken from the Mahogany project.*/
class WXDLLEXPORT wxProgressDialog : public wxDialog
{
DECLARE_DYNAMIC_CLASS(wxProgressDialog)
public:
/* Creates and displays dialog, disables event handling for other
frames or parent frame to avoid recursion problems.
@param title title for window
@param message message to display in window
@param maximum value for status bar, if <= 0, no bar is shown
@param parent window or NULL
@param style is the bit mask of wxPD_XXX constants from wx/defs.h
*/
wxProgressDialog(const wxString &title, wxString const &message,
int maximum = 100,
wxWindow *parent = NULL,
int style = wxPD_APP_MODAL | wxPD_AUTO_HIDE);
/* Destructor.
Re-enables event handling for other windows.
*/
~wxProgressDialog();
/* Update the status bar to the new value.
@param value new value
@param newmsg if used, new message to display
@returns true if ABORT button has not been pressed
*/
bool Update(int value = -1, const wxString& newmsg = wxT(""));
/* Can be called to continue after the cancel button has been pressed, but
the program decided to continue the operation (e.g., user didn't
confirm it)
*/
void Resume() { m_state = Continue; }
// implementation from now on
// callback for optional abort button
void OnCancel(wxCommandEvent& event);
// callback to disable "hard" window closing
void OnClose(wxCloseEvent& event);
private:
// create the label with given text and another one to show the time nearby
// under the lastWindow and modify it to be the same as the control created
// (which is returned)
wxStaticText *CreateLabel(const wxString& text, wxWindow **lastWindow);
// the status bar
class wxGauge *m_gauge;
// the message displayed
class wxStaticText *m_msg;
// disable all or parent window only
bool m_disableParentOnly;
// auto-hide?
bool m_AutoHide;
// displayed elapsed, estimated, remaining time
class wxStaticText *m_elapsed,
*m_estimated,
*m_remaining;
// time when the dialog was created
unsigned long m_timeStart;
// parent window
wxWindow *m_parent;
// continue processing or not (return value for Update())
enum
{
Uncancelable = -1, // dialog can't be canceled
Canceled, // can be cancelled and, in fact, was
Continue, // can be cancelled but wasn't
Finished // finished, waiting to be removed from screen
} m_state;
// the abort button (or NULL if none)
wxButton *m_btnAbort;
// the maximum value
int m_maximum;
DECLARE_EVENT_TABLE()
};
#endif
#endif
// __PROGDLGH_G__

View File

@@ -0,0 +1,216 @@
/* XPM */
static char * question_xpm[] = {
"48 48 165 2",
" c None",
". c #000000",
"+ c #080808",
"@ c #2A2A2A",
"# c #434343",
"$ c #545454",
"% c #626262",
"& c #6A6A6A",
"* c #6E6E6E",
"= c #424242",
"- c #525252",
"; c #898989",
"> c #DCDCDC",
", c #E5E5E5",
"' c #EDEDED",
") c #F4F4F4",
"! c #F9F9F9",
"~ c #FCFCFC",
"{ c #FFFFFF",
"] c #888888",
"^ c #4F4F4F",
"/ c #050505",
"( c #0F0F0F",
"_ c #9C9C9C",
": c #E6E6E6",
"< c #9B9B9B",
"[ c #1F1F1F",
"} c #A1A1A1",
"| c #E3E3E3",
"1 c #4D4D4D",
"2 c #D6D6D6",
"3 c #ECECEC",
"4 c #D9D9D9",
"5 c #C6C6C6",
"6 c #B0B0B0",
"7 c #848484",
"8 c #D3D3D3",
"9 c #010101",
"0 c #8B8B8B",
"a c #F2F2F2",
"b c #F3F3F3",
"c c #A6A6A6",
"d c #5E5E5E",
"e c #2F2F2F",
"f c #272727",
"g c #202020",
"h c #4E4E4E",
"i c #8A8A8A",
"j c #0B0B0B",
"k c #B6B6B6",
"l c #5D5D5D",
"m c #131313",
"n c #9A9A9A",
"o c #C9C9C9",
"p c #878787",
"q c #0A0A0A",
"r c #373737",
"s c #DADADA",
"t c #B4B4B4",
"u c #B1B1B1",
"v c #030303",
"w c #767676",
"x c #FDFDFD",
"y c #FAFAFA",
"z c #383838",
"A c #F8F8F8",
"B c #AFAFAF",
"C c #070707",
"D c #818181",
"E c #555555",
"F c #BDBDBD",
"G c #7D7D7D",
"H c #3C3C3C",
"I c #F6F6F6",
"J c #535353",
"K c #242424",
"L c #ABABAB",
"M c #393939",
"N c #BBBBBB",
"O c #EAEAEA",
"P c #A3A3A3",
"Q c #4B4B4B",
"R c #616161",
"S c #CFCFCF",
"T c #060606",
"U c #EFEFEF",
"V c #B9B9B9",
"W c #303030",
"X c #161616",
"Y c #2C2C2C",
"Z c #C0C0C0",
"` c #2E2E2E",
" . c #858585",
".. c #E4E4E4",
"+. c #1C1C1C",
"@. c #D4D4D4",
"#. c #828282",
"$. c #C7C7C7",
"%. c #3A3A3A",
"&. c #090909",
"*. c #151515",
"=. c #8E8E8E",
"-. c #F7F7F7",
";. c #C4C4C4",
">. c #EBEBEB",
",. c #CECECE",
"'. c #3D3D3D",
"). c #676767",
"!. c #F1F1F1",
"~. c #FBFBFB",
"{. c #353535",
"]. c #212121",
"^. c #EEEEEE",
"/. c #444444",
"(. c #DEDEDE",
"_. c #020202",
":. c #6B6B6B",
"<. c #E1E1E1",
"[. c #575757",
"}. c #111111",
"|. c #939393",
"1. c #ADADAD",
"2. c #6C6C6C",
"3. c #929292",
"4. c #4A4A4A",
"5. c #1E1E1E",
"6. c #3B3B3B",
"7. c #A0A0A0",
"8. c #696969",
"9. c #FEFEFE",
"0. c #CBCBCB",
"a. c #F0F0F0",
"b. c #0E0E0E",
"c. c #DFDFDF",
"d. c #808080",
"e. c #D0D0D0",
"f. c #636363",
"g. c #323232",
"h. c #D2D2D2",
"i. c #333333",
"j. c #292929",
"k. c #484848",
"l. c #646464",
"m. c #F5F5F5",
"n. c #B2B2B2",
"o. c #494949",
"p. c #E2E2E2",
"q. c #3F3F3F",
"r. c #0D0D0D",
"s. c #E0E0E0",
"t. c #2D2D2D",
"u. c #3E3E3E",
"v. c #C8C8C8",
"w. c #D1D1D1",
"x. c #7C7C7C",
"y. c #141414",
"z. c #A4A4A4",
"A. c #C2C2C2",
"B. c #262626",
"C. c #191919",
"D. c #999999",
"E. c #0C0C0C",
"F. c #101010",
"G. c #787878",
"H. c #797979",
" ",
" ",
" ",
" ",
" ",
" ",
" . . . . . . . . . . . . . . . . ",
" . . . . + @ # $ % & * * & % $ = @ + . . . . ",
" . . . . - ; > , ' ) ! ~ { { ~ ! ) ' , > ] ^ . . . . ",
" . . / ( _ : { { { { { { { { { { { { { { { { { { : < ( / . . ",
" . . [ } | { { { { { { { { { { { { { { { { { { { { { { | } [ . . ",
" . . 1 2 { { { { { { { { 3 4 5 6 7 7 7 < 5 8 : ! { { { { { { 2 1 . . . ",
" . . 9 0 a { { { { { { { b c d e 9 9 9 f 9 9 9 g h i 4 { { { { { { a ; 9 . . ",
" . . j k { { { { { { { { ' l m 9 9 9 9 n o p 9 9 9 9 q r s { { { { { { { t q . . ",
" . . + u { { { { { { { { { # v 9 9 9 9 w x { y z 9 9 9 9 9 @ A { { { { { { { B C . . ",
" . . . D y { { { { { { { { { 9 9 9 9 9 j ' { { { E 9 9 9 9 9 9 F { { { { { { { y G . . . ",
" . . H I { { { { { { { { { { J 9 9 9 9 ^ { { { { K 9 9 9 9 9 9 L { { { { { { { { I M . . . ",
" . . . N { { { { { { { { { { { O P Q Q R S { { { } 9 9 9 9 9 9 T U { { { { { { { { { V . . . ",
" . . W ! { { { { { { { { { { { { { { { { { { A 6 X 9 9 9 9 9 Y Z { { { { { { { { { { ! ` . . ",
" . . .{ { { { { { { { { { { { { { { { { { ..7 ( 9 9 9 9 +.* @.{ { { { { { { { { { { { #.. . . ",
". . . $.{ { { { { { { { { { { { { { { { { < %.&.9 9 9 *.=.5 -.{ { { { { { { { { { { { { ;.. . . ",
". . . >.{ { { { { { { { { { { { { { { ,.'.+ . . . . ).!.~ { { { { { { { { { { { { { { { O . . . ",
". . . ~.{ { { { { { { { { { { { { { O {.. . . . . ].^.{ { { { { { { { { { { { { { { { { ~.. . . ",
". . . A { { { { { { { { { { { { { { k 9 9 9 9 9 9 /.{ { { { { { { { { { { { { { { { { { A . . . ",
". . . (.{ { { { { { { { { { { { { { 5 _.. . . . . q :.4 U U <.{ { { { { { { { { { { { { > . . . ",
". . . 6 { { { { { { { { { { { { { { { [.&.. . . . . . . . }.|.{ { { { { { { { { { { { { 1.. . . ",
". . . 2.{ { { { { { { { { { { { { { { a 3.4.5.9 9 9 5.6.).7.a { { { { { { { { { { { { { 8.. . . ",
" . . ( !.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.<.0.F F F 0.s a.9.9.9.9.9.9.9.9.9.9.9.9.9.9.!.b.. . . ",
" . . . D { { { { { { { { { { { { { { { { { U c.c.c.U { { { { { { { { { { { { { { { { d.. . . ",
" . . . ( 8 { { { { { { { { { { { { { { { e.f.g.g.g.f.;.{ { { { { { { { { { { { { { h.b.. . . ",
" . . . 4.) { { { { { { { { { { { { { ' i.9 9 9 9 9 j.' { { { { { { { { { { { { ) k.. . . ",
" . . . l.m.{ { { { { { { { { { { { n.. . . . . . . n.{ { { { { { { { { { { m.f.. . . . ",
" . . . o.p.{ { { { { { { { { { { F 9 9 9 9 9 9 9 5 { { { { { { { { { { p.k.. . . . ",
" . . . @ 0.{ { { { { { { { { { b q.. . . . . d { { { { { { { { { { b j.. . . . ",
" . . . r.7.{ { { { { { { { { { s.* = t.= < 3 { { { { { { { { { { A e . . . ",
" . . . . u._ >.y { { { { { { { { { { { { { { { { { { { { { { { { a - . . ",
" . . . . . W % v., { { { { { { { { { { { { { { , w.e.>.{ { { { { U x.T ",
" . . . . . y.f D z.A.4 >.-.x x -.>.4 A.z.d.B.C.C.Y i c h.{ { { ) D.. ",
" . . . . . . / &.E.( F.}.}.F.b.E.&./ . . . . . 9 T E.}.] 5 ' ) G.. ",
" . . . . . . . . . . . . . . . . . . . . . . . . . . . . M H.H.. ",
" . . . . . . . . . . . . . . . . . . . . . . . . ",
" . . . . ",
" ",
" ",
" ",
" ",
" ",
" "};

View File

@@ -0,0 +1,29 @@
/* XPM */
static char * repview_xpm[] = {
"20 20 3 1",
" c None",
". c #000000000000",
"X c #FFFFFFFFFFFF",
" ",
" ",
" ",
" ................. ",
" .XXXXXXXXXXXXXXX. ",
" ................. ",
" .XXXXXXXXXXXXXXX. ",
" .XX..XXXX.XX..XX. ",
" .XXXXXXXXXXXXXXX. ",
" .XX...XXX.XX..XX. ",
" .XXXXXXXXXXXXXXX. ",
" .XX...XXX.XX..XX. ",
" .XXXXXXXXXXXXXXX. ",
" .XX...XXX.XX..XX. ",
" .XXXXXXXXXXXXXXX. ",
" ................. ",
" ",
" ",
" ",
" "};

View File

@@ -0,0 +1,218 @@
/////////////////////////////////////////////////////////////////////////////
// Name: sashwin.h
// Purpose: wxSashWindow implementation. A sash window has an optional
// sash on each edge, allowing it to be dragged. An event
// is generated when the sash is released.
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c) Julian Smart
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_SASHWIN_H_G_
#define _WX_SASHWIN_H_G_
#ifdef __GNUG__
#pragma interface "sashwin.h"
#endif
#if wxUSE_SASH
#include "wx/defs.h"
#include "wx/window.h"
#include "wx/string.h"
#define wxSASH_DRAG_NONE 0
#define wxSASH_DRAG_DRAGGING 1
#define wxSASH_DRAG_LEFT_DOWN 2
enum wxSashEdgePosition {
wxSASH_TOP = 0,
wxSASH_RIGHT,
wxSASH_BOTTOM,
wxSASH_LEFT,
wxSASH_NONE = 100
};
/*
* wxSashEdge represents one of the four edges of a window.
*/
class WXDLLEXPORT wxSashEdge
{
public:
wxSashEdge() { m_show = FALSE; m_border = FALSE; m_margin = 0; }
bool m_show; // Is the sash showing?
bool m_border; // Do we draw a border?
int m_margin; // The margin size
};
/*
* wxSashWindow flags
*/
#define wxSW_3D 0x0004
/*
* wxSashWindow allows any of its edges to have a sash which can be dragged
* to resize the window. The actual content window will be created as a child
* of wxSashWindow.
*/
class WXDLLEXPORT wxSashWindow: public wxWindow
{
DECLARE_DYNAMIC_CLASS(wxSashWindow)
public:
////////////////////////////////////////////////////////////////////////////
// Public API
// Default constructor
wxSashWindow();
// Normal constructor
wxSashWindow(wxWindow *parent, wxWindowID id = -1, const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize, long style = wxSW_3D|wxCLIP_CHILDREN, const wxString& name = "sashWindow");
~wxSashWindow();
// Set whether there's a sash in this position
void SetSashVisible(wxSashEdgePosition edge, bool sash);
// Get whether there's a sash in this position
inline bool GetSashVisible(wxSashEdgePosition edge) const { return m_sashes[edge].m_show; }
// Set whether there's a border in this position
inline void SetSashBorder(wxSashEdgePosition edge, bool border) { m_sashes[edge].m_border = border; }
// Get whether there's a border in this position
inline bool HasBorder(wxSashEdgePosition edge) const { return m_sashes[edge].m_border; }
// Get border size
inline int GetEdgeMargin(wxSashEdgePosition edge) const { return m_sashes[edge].m_margin; }
// Sets the default sash border size
inline void SetDefaultBorderSize(int width) { m_borderSize = width; }
// Gets the default sash border size
inline int GetDefaultBorderSize() const { return m_borderSize; }
// Sets the addition border size between child and sash window
inline void SetExtraBorderSize(int width) { m_extraBorderSize = width; }
// Gets the addition border size between child and sash window
inline int GetExtraBorderSize() const { return m_extraBorderSize; }
virtual void SetMinimumSizeX(int min) { m_minimumPaneSizeX = min; }
virtual void SetMinimumSizeY(int min) { m_minimumPaneSizeY = min; }
virtual int GetMinimumSizeX() const { return m_minimumPaneSizeX; }
virtual int GetMinimumSizeY() const { return m_minimumPaneSizeY; }
virtual void SetMaximumSizeX(int max) { m_maximumPaneSizeX = max; }
virtual void SetMaximumSizeY(int max) { m_maximumPaneSizeY = max; }
virtual int GetMaximumSizeX() const { return m_maximumPaneSizeX; }
virtual int GetMaximumSizeY() const { return m_maximumPaneSizeY; }
////////////////////////////////////////////////////////////////////////////
// Implementation
// Paints the border and sash
void OnPaint(wxPaintEvent& event);
// Handles mouse events
void OnMouseEvent(wxMouseEvent& ev);
// Adjusts the panes
void OnSize(wxSizeEvent& event);
// Draws borders
void DrawBorders(wxDC& dc);
// Draws the sashes
void DrawSash(wxSashEdgePosition edge, wxDC& dc);
// Draws the sashes
void DrawSashes(wxDC& dc);
// Draws the sash tracker (for whilst moving the sash)
void DrawSashTracker(wxSashEdgePosition edge, int x, int y);
// Tests for x, y over sash
wxSashEdgePosition SashHitTest(int x, int y, int tolerance = 2);
// Resizes subwindows
void SizeWindows();
// Initialize colours
void InitColours();
protected:
wxSashEdge m_sashes[4];
int m_dragMode;
wxSashEdgePosition m_draggingEdge;
int m_oldX;
int m_oldY;
int m_borderSize;
int m_extraBorderSize;
int m_firstX;
int m_firstY;
int m_minimumPaneSizeX;
int m_minimumPaneSizeY;
int m_maximumPaneSizeX;
int m_maximumPaneSizeY;
wxCursor* m_sashCursorWE;
wxCursor* m_sashCursorNS;
wxColour m_lightShadowColour;
wxColour m_mediumShadowColour;
wxColour m_darkShadowColour;
wxColour m_hilightColour;
wxColour m_faceColour;
DECLARE_EVENT_TABLE()
};
#define wxEVT_SASH_DRAGGED (wxEVT_FIRST + 1200)
enum wxSashDragStatus
{
wxSASH_STATUS_OK,
wxSASH_STATUS_OUT_OF_RANGE
};
class WXDLLEXPORT wxSashEvent: public wxCommandEvent
{
DECLARE_DYNAMIC_CLASS(wxSashEvent)
public:
inline wxSashEvent(int id = 0, wxSashEdgePosition edge = wxSASH_NONE) {
m_eventType = (wxEventType) wxEVT_SASH_DRAGGED; m_id = id; m_edge = edge; }
inline void SetEdge(wxSashEdgePosition edge) { m_edge = edge; }
inline wxSashEdgePosition GetEdge() const { return m_edge; }
//// The rectangle formed by the drag operation
inline void SetDragRect(const wxRect& rect) { m_dragRect = rect; }
inline wxRect GetDragRect() const { return m_dragRect; }
//// Whether the drag caused the rectangle to be reversed (e.g.
//// dragging the top below the bottom)
inline void SetDragStatus(wxSashDragStatus status) { m_dragStatus = status; }
inline wxSashDragStatus GetDragStatus() const { return m_dragStatus; }
private:
wxSashEdgePosition m_edge;
wxRect m_dragRect;
wxSashDragStatus m_dragStatus;
};
typedef void (wxEvtHandler::*wxSashEventFunction)(wxSashEvent&);
#define EVT_SASH_DRAGGED(id, fn) { wxEVT_SASH_DRAGGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSashEventFunction) & fn, NULL },
#define EVT_SASH_DRAGGED_RANGE(id1, id2, fn) { wxEVT_SASH_DRAGGED, id1, id2, (wxObjectEventFunction) (wxEventFunction) (wxSashEventFunction) & fn, NULL },
#endif // wxUSE_SASH
#endif
// _WX_SASHWIN_H_G_

View File

@@ -0,0 +1,135 @@
/////////////////////////////////////////////////////////////////////////////
// Name: scrolwin.h
// Purpose: wxScrolledWindow class
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c) Julian Smart and Markus Holzem
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
#ifndef __SCROLWINH_G__
#define __SCROLWINH_G__
#ifdef __GNUG__
#pragma interface "scrolwin.h"
#endif
#include "wx/window.h"
#include "wx/panel.h"
WXDLLEXPORT_DATA(extern const wxChar*) wxPanelNameStr;
class WXDLLEXPORT wxScrolledWindow : public wxPanel
{
public:
wxScrolledWindow();
inline wxScrolledWindow(wxWindow *parent, wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxHSCROLL|wxVSCROLL,
const wxString& name = wxPanelNameStr)
{
Create(parent, id, pos, size, style, name);
}
~wxScrolledWindow();
bool Create(wxWindow *parent, wxWindowID id,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxHSCROLL|wxVSCROLL,
const wxString& name = wxPanelNameStr);
// Normally the wxScrolledWindow will scroll itself, but in
// some rare occasions you might want it to scroll another
// window (e.g. a child of it in order to scroll only a portion
// the area between the scrollbars (spreadsheet: only cell area
// will move).
virtual void SetTargetWindow( wxWindow *target );
virtual wxWindow *GetTargetWindow();
// Number of pixels per user unit (0 or -1 for no scrollbar)
// Length of virtual canvas in user units
// Length of page in user units
virtual void SetScrollbars(int pixelsPerUnitX, int pixelsPerUnitY,
int noUnitsX, int noUnitsY,
int xPos = 0, int yPos = 0,
bool noRefresh = FALSE );
// Physically scroll the window
virtual void Scroll(int x_pos, int y_pos);
#if WXWIN_COMPATIBILITY
virtual void GetScrollUnitsPerPage(int *x_page, int *y_page) const;
virtual void CalcUnscrolledPosition(int x, int y, float *xx, float *yy) const ;
#endif
int GetScrollPageSize(int orient) const ;
void SetScrollPageSize(int orient, int pageSize);
virtual void GetScrollPixelsPerUnit(int *x_unit, int *y_unit) const;
// Enable/disable Windows scrolling in either direction.
// If TRUE, wxWindows scrolls the canvas and only a bit of
// the canvas is invalidated; no Clear() is necessary.
// If FALSE, the whole canvas is invalidated and a Clear() is
// necessary. Disable for when the scroll increment is used
// to actually scroll a non-constant distance
virtual void EnableScrolling(bool x_scrolling, bool y_scrolling);
// Get the view start
virtual void ViewStart(int *x, int *y) const;
// Actual size in pixels when scrolling is taken into account
virtual void GetVirtualSize(int *x, int *y) const;
// Set the scale factor, used in PrepareDC
void SetScale(double xs, double ys) { m_scaleX = xs; m_scaleY = ys; }
double GetScaleX() const { return m_scaleX; }
double GetScaleY() const { return m_scaleY; }
virtual void CalcScrolledPosition(int x, int y, int *xx, int *yy) const ;
virtual void CalcUnscrolledPosition(int x, int y, int *xx, int *yy) const ;
// Adjust the scrollbars
virtual void AdjustScrollbars(void);
// Override this function to draw the graphic (or just process EVT_PAINT)
virtual void OnDraw(wxDC& WXUNUSED(dc)) {};
// Override this function if you don't want to have wxScrolledWindow
// automatically change the origin according to the scroll position.
virtual void PrepareDC(wxDC& dc);
// implementation from now on
void OnScroll(wxScrollWinEvent& event);
void OnSize(wxSizeEvent& event);
void OnPaint(wxPaintEvent& event);
// Calculate scroll increment
virtual int CalcScrollInc(wxScrollWinEvent& event);
protected:
wxWindow *m_targetWindow;
int m_xScrollPixelsPerLine;
int m_yScrollPixelsPerLine;
bool m_xScrollingEnabled;
bool m_yScrollingEnabled;
int m_xScrollPosition;
int m_yScrollPosition;
int m_xScrollLines;
int m_yScrollLines;
int m_xScrollLinesPerPage;
int m_yScrollLinesPerPage;
double m_scaleX;
double m_scaleY;
private:
DECLARE_EVENT_TABLE()
DECLARE_ABSTRACT_CLASS(wxScrolledWindow)
};
#endif
// __SCROLWINH_G__

View File

@@ -0,0 +1,338 @@
/////////////////////////////////////////////////////////////////////////////
// Name: splitter.h
// Purpose: wxSplitterWindow class
// Author: Julian Smart
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c) Julian Smart and Markus Holzem
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
#ifndef __SPLITTERH_G__
#define __SPLITTERH_G__
#ifdef __GNUG__
#pragma interface "splitter.h"
#endif
#include "wx/window.h" // base class declaration
class WXDLLEXPORT wxSplitterEvent;
// ---------------------------------------------------------------------------
// splitter constants
// ---------------------------------------------------------------------------
enum
{
wxSPLIT_HORIZONTAL = 1,
wxSPLIT_VERTICAL
};
enum
{
wxSPLIT_DRAG_NONE,
wxSPLIT_DRAG_DRAGGING,
wxSPLIT_DRAG_LEFT_DOWN
};
// ---------------------------------------------------------------------------
// wxSplitterWindow maintains one or two panes, with
// an optional vertical or horizontal split which
// can be used with the mouse or programmatically.
// ---------------------------------------------------------------------------
// TODO:
// 1) Perhaps make the borders sensitive to dragging in order to create a split.
// The MFC splitter window manages scrollbars as well so is able to
// put sash buttons on the scrollbars, but we probably don't want to go down
// this path.
// 2) for wxWindows 2.0, we must find a way to set the WS_CLIPCHILDREN style
// to prevent flickering. (WS_CLIPCHILDREN doesn't work in all cases so can't be
// standard).
class WXDLLEXPORT wxSplitterWindow: public wxWindow
{
public:
////////////////////////////////////////////////////////////////////////////
// Public API
// Default constructor
wxSplitterWindow();
// Normal constructor
wxSplitterWindow(wxWindow *parent, wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxSP_3D|wxCLIP_CHILDREN,
const wxString& name = "splitter");
~wxSplitterWindow();
// Gets the only or left/top pane
wxWindow *GetWindow1() const { return m_windowOne; }
// Gets the right/bottom pane
wxWindow *GetWindow2() const { return m_windowTwo; }
// Sets the split mode
void SetSplitMode(int mode) { m_splitMode = mode; }
// Gets the split mode
int GetSplitMode() const { return m_splitMode; };
// Initialize with one window
void Initialize(wxWindow *window);
// Associates the given window with window 2, drawing the appropriate sash
// and changing the split mode.
// Does nothing and returns FALSE if the window is already split.
// A sashPosition of 0 means choose a default sash position,
// negative sashPosition specifies the size of right/lower pane as it's
// absolute value rather than the size of left/upper pane.
virtual bool SplitVertically(wxWindow *window1,
wxWindow *window2,
int sashPosition = 0);
virtual bool SplitHorizontally(wxWindow *window1,
wxWindow *window2,
int sashPosition = 0);
// Removes the specified (or second) window from the view
// Doesn't actually delete the window.
bool Unsplit(wxWindow *toRemove = (wxWindow *) NULL);
// Replaces one of the windows with another one (neither old nor new
// parameter should be NULL)
bool ReplaceWindow(wxWindow *winOld, wxWindow *winNew);
// Is the window split?
bool IsSplit() const { return (m_windowTwo != NULL); }
// Sets the sash size
void SetSashSize(int width) { m_sashSize = width; }
// Sets the border size
void SetBorderSize(int width) { m_borderSize = width; }
// Gets the sash size
int GetSashSize() const { return m_sashSize; }
// Gets the border size
int GetBorderSize() const { return m_borderSize; }
// Set the sash position
void SetSashPosition(int position, bool redraw = TRUE);
// Gets the sash position
int GetSashPosition() const { return m_sashPosition; }
// If this is zero, we can remove panes by dragging the sash.
void SetMinimumPaneSize(int min) { m_minimumPaneSize = min; }
int GetMinimumPaneSize() const { return m_minimumPaneSize; }
// Called when the sash position is about to be changed, return
// FALSE from here to prevent the change from taking place.
// Repositions sash to minimum position if pane would be too small.
// newSashPosition here is always positive or zero.
virtual bool OnSashPositionChange(int WXUNUSED(newSashPosition))
{ return TRUE; }
// If the sash is moved to an extreme position, a subwindow
// is removed from the splitter window, and the app is
// notified. The app should delete or hide the window.
virtual void OnUnsplit(wxWindow *WXUNUSED(removed)) { }
// Called when the sash is double-clicked.
// The default behaviour is to remove the sash if the
// minimum pane size is zero.
virtual void OnDoubleClickSash(int WXUNUSED(x), int WXUNUSED(y)) { }
////////////////////////////////////////////////////////////////////////////
// Implementation
// Paints the border and sash
void OnPaint(wxPaintEvent& event);
// Handles mouse events
void OnMouseEvent(wxMouseEvent& ev);
// Adjusts the panes
void OnSize(wxSizeEvent& event);
// In live mode, resize child windows in idle time
void OnIdle(wxIdleEvent& event);
// Draws borders
void DrawBorders(wxDC& dc);
// Draws the sash
void DrawSash(wxDC& dc);
// Draws the sash tracker (for whilst moving the sash)
void DrawSashTracker(int x, int y);
// Tests for x, y over sash
bool SashHitTest(int x, int y, int tolerance = 2);
// Resizes subwindows
void SizeWindows();
// Initialize colours
void InitColours();
protected:
// our event handlers
void OnSashPosChanged(wxSplitterEvent& event);
void OnSashPosChanging(wxSplitterEvent& event);
void OnDoubleClick(wxSplitterEvent& event);
void OnUnsplitEvent(wxSplitterEvent& event);
void SendUnsplitEvent(wxWindow *winRemoved);
int m_splitMode;
bool m_permitUnsplitAlways;
bool m_needUpdating; // when in live mode, set the to TRUE to resize children in idle
wxWindow* m_windowOne;
wxWindow* m_windowTwo;
int m_dragMode;
int m_oldX;
int m_oldY;
int m_borderSize;
int m_sashSize; // Sash width or height
int m_sashPosition; // Number of pixels from left or top
int m_firstX;
int m_firstY;
int m_minimumPaneSize;
wxCursor* m_sashCursorWE;
wxCursor* m_sashCursorNS;
wxPen* m_sashTrackerPen;
wxPen* m_lightShadowPen;
wxPen* m_mediumShadowPen;
wxPen* m_darkShadowPen;
wxPen* m_hilightPen;
wxBrush* m_faceBrush;
wxPen* m_facePen;
private:
DECLARE_DYNAMIC_CLASS(wxSplitterWindow)
DECLARE_EVENT_TABLE()
};
// ----------------------------------------------------------------------------
// event class and macros
// ----------------------------------------------------------------------------
// we reuse the same class for all splitter event types because this is the
// usual wxWin convention, but the three event types have different kind of
// data associated with them, so the accessors can be only used if the real
// event type matches with the one for which the accessors make sense
class WXDLLEXPORT wxSplitterEvent : public wxCommandEvent
{
public:
wxSplitterEvent(wxEventType type = wxEVT_NULL,
wxSplitterWindow *splitter = (wxSplitterWindow *)NULL)
: wxCommandEvent(type)
{
SetEventObject(splitter);
}
// SASH_POS_CHANGED methods
// setting the sash position to -1 prevents the change from taking place at
// all
void SetSashPosition(int pos)
{
wxASSERT( GetEventType() == wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGED
|| GetEventType() == wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGING);
m_data.pos = pos;
}
int GetSashPosition() const
{
wxASSERT( GetEventType() == wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGED
|| GetEventType() == wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGING);
return m_data.pos;
}
// UNSPLIT event methods
wxWindow *GetWindowBeingRemoved() const
{
wxASSERT( GetEventType() == wxEVT_COMMAND_SPLITTER_UNSPLIT );
return m_data.win;
}
// DCLICK event methods
int GetX() const
{
wxASSERT( GetEventType() == wxEVT_COMMAND_SPLITTER_DOUBLECLICKED );
return m_data.pt.x;
}
int GetY() const
{
wxASSERT( GetEventType() == wxEVT_COMMAND_SPLITTER_DOUBLECLICKED );
return m_data.pt.y;
}
private:
friend class WXDLLEXPORT wxSplitterWindow;
// data for the different types of event
union
{
int pos; // position for SASH_POS_CHANGED event
wxWindow *win; // window being removed for UNSPLIT event
struct
{
int x, y;
} pt; // position of double click for DCLICK event
} m_data;
DECLARE_DYNAMIC_CLASS(wxSplitterEvent)
};
typedef void (wxEvtHandler::*wxSplitterEventFunction)(wxSplitterEvent&);
#define EVT_SPLITTER_SASH_POS_CHANGED(id, fn) \
{ \
wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGED, \
id, \
-1, \
(wxObjectEventFunction)(wxEventFunction)(wxSplitterEventFunction) &fn, \
NULL \
},
#define EVT_SPLITTER_SASH_POS_CHANGING(id, fn) \
{ \
wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGING, \
id, \
-1, \
(wxObjectEventFunction)(wxEventFunction)(wxSplitterEventFunction) &fn, \
NULL \
},
#define EVT_SPLITTER_DCLICK(id, fn) \
{ \
wxEVT_COMMAND_SPLITTER_DOUBLECLICKED, \
id, \
-1, \
(wxObjectEventFunction)(wxEventFunction)(wxSplitterEventFunction) &fn, \
NULL \
},
#define EVT_SPLITTER_UNSPLIT(id, fn) \
{ \
wxEVT_COMMAND_SPLITTER_UNSPLIT, \
id, \
-1, \
(wxObjectEventFunction)(wxEventFunction)(wxSplitterEventFunction) &fn, \
NULL \
},
#endif // __SPLITTERH_G__

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