Compare commits

..

2306 Commits

Author SHA1 Message Date
Bryan Petty
3b692ff639 This commit was manufactured by cvs2svn to create tag
'BEFORE_INIT_REFACTORING'.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/tags/BEFORE_INIT_REFACTORING@21512 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-30 13:11:51 +00:00
Julian Smart
65b17727e6 Added optional event sink for use with dynamic event tables
Removed comments and commented-out code re. focus window processing
from wxToolBarBase


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21511 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-30 13:11:51 +00:00
Jouk Jansen
d48568a5ec Committing in .
fix for new getosversion procedure.

 Modified Files:
 	wxWindows/src/motif/descrip.mms wxWindows/src/motif/utils.cpp
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21510 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-30 12:56:42 +00:00
Jouk Jansen
04272d5883 Committing in .
Updated OpenVMS compile support

 Modified Files:
 	wxWindows/setup.h_vms wxWindows/src/common/descrip.mms
 	wxWindows/src/motif/descrip.mms wxWindows/src/unix/descrip.mms
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21509 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-30 10:35:08 +00:00
Vadim Zeitlin
db882c5431 added wxCRIT_SECT_DECLARE_MEMBER
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-30 01:18:10 +00:00
Václav Slavík
adb4b1488a regenerated: smaller makefiles with new bakefile version
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21507 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-29 23:25:27 +00:00
Vadim Zeitlin
5455e22751 added release()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21506 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-29 15:44:08 +00:00
Stefan Neis
86c7378f32 Applied Patch 760644 (wxGrid SetTable uses deleted wxGridTable).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21505 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-29 15:18:46 +00:00
Vadim Zeitlin
789bdf9b18 documented wxIsMainThread() and other thread-related stuff
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21504 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-29 11:52:16 +00:00
Vadim Zeitlin
12b55afaf3 corrected link in see also
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21503 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-29 11:51:42 +00:00
Vadim Zeitlin
17dbd23000 added wxIsMainThread()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21502 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-29 11:51:17 +00:00
Václav Slavík
f0290fcacd oops, partially reverted previous commit, it was incorrect
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21501 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-29 09:25:45 +00:00
Václav Slavík
fddeb06b11 use CODE_GEN_FLAGS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21500 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-29 09:17:26 +00:00
Václav Slavík
fcf61db4d1 regenerated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21499 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-29 00:43:30 +00:00
Vadim Zeitlin
a03675d9ba compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21498 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-29 00:39:13 +00:00
Vadim Zeitlin
22f69dd493 we don't need to include wx/mac/private.h, at least under OS X
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21497 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-29 00:35:07 +00:00
Vadim Zeitlin
2ba721aa6c fix for compiling in wxUSE_GUI == 0 mode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21496 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-29 00:32:06 +00:00
Václav Slavík
4fc5f50932 naming convention fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21495 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-29 00:03:46 +00:00
Václav Slavík
8ee2dd0536 more bakefile optimalizations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21494 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-29 00:02:14 +00:00
Václav Slavík
f1a004eb19 compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21493 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-29 00:02:10 +00:00
Vadim Zeitlin
66feaf3bbf fix for comparison bug in GetHeader()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21492 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 23:40:29 +00:00
Mattia Barbon
695578271d Stop GCC from complaining about unhandled enumeration values.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21491 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 20:56:40 +00:00
Václav Slavík
d8f97a0c52 MacOS X fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21490 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 17:18:46 +00:00
Václav Slavík
baa6e1d6a8 regenerated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21489 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 16:08:36 +00:00
Václav Slavík
bbc1cf3fd4 missing libbase
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21488 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 16:07:49 +00:00
Václav Slavík
b625909cd6 samples/console is buildable as part of multilib, too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21487 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 15:59:01 +00:00
Václav Slavík
f95cd8fab8 update
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21486 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 15:06:43 +00:00
Václav Slavík
fd3880a72e don't create samples/autoconf_inc.m4
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21485 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 15:00:23 +00:00
Václav Slavík
d974277526 fixed dll extension when crosscompiling for win32
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21484 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 14:33:31 +00:00
Václav Slavík
8a7c93a384 libgdi32.a is not included in console apps by mingw, but we required it in wxBase
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21483 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 14:23:59 +00:00
Václav Slavík
c7dfb5bb48 upstream fixes in bakefile's handling of mutually exclusive targets with same name
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21482 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 14:14:22 +00:00
Václav Slavík
5ab5f2a3dc typo fix (bakefile needs error checking...)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21481 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 13:52:55 +00:00
Vadim Zeitlin
1d6a432423 fixed fatal crash in Create() after my last change
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21480 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 13:12:00 +00:00
Václav Slavík
6fd9f0a474 wxUSE_BASE fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21479 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 13:10:36 +00:00
Václav Slavík
827f829c6b fixed libtiff build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21478 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 12:34:54 +00:00
Václav Slavík
e292124a6b libtiff build fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21477 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 12:34:02 +00:00
Václav Slavík
c15d9c859c fixed linker errors
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21476 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 12:33:09 +00:00
Vadim Zeitlin
2bf2d09ed0 replaced wxGetOsVersion() with wxGUIAppTraits::GetOSVersion()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21475 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 12:23:27 +00:00
Vadim Zeitlin
a40af6f957 fixed unused variable warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21474 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 12:21:09 +00:00
Vadim Zeitlin
a905235eb0 fixed sscanf() format string typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21473 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 11:59:02 +00:00
Václav Slavík
dffbab5eca use BASE_UNIX_SRC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21472 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 11:54:40 +00:00
Vadim Zeitlin
166263e652 don't generate makefiles for the samples which don't build in current configuration
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21471 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 11:49:34 +00:00
Vadim Zeitlin
9de9b8f0fc don't output strange "base (hosted)" message when not cross-compiling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21470 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 11:39:19 +00:00
Vadim Zeitlin
6c3e36af8f only configure programs which compile without GUI when building wxBase
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21469 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 11:34:41 +00:00
Stefan Csomor
a5c1f8ca21 function key support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21468 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 06:59:30 +00:00
David Elliott
31d20b589d Added more generic implementation files to wxCocoa files list
FIXME: Update list of header files
Added all of the UNIX implementation files
FIXME: Make this use the base UNIX list of files (like any other UNIX port)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21467 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 04:12:18 +00:00
David Elliott
e7f11f60d0 include "wx/setup.h" before testing for wxUSE_SLIDER
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21466 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 04:05:25 +00:00
David Elliott
a631300cb8 Added wxGUIAppTraits::GetOSVersion() implementation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-28 04:03:11 +00:00
Václav Slavík
498368e9e4 fixed stupid bug - failure to generate samples/makefile.bcc
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 23:57:25 +00:00
Václav Slavík
cbdf98e37b fixed command line arguments order problems
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21459 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 23:48:31 +00:00
Václav Slavík
09d2927055 needs wxbase, too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21458 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 23:47:43 +00:00
David Elliott
c7b296c2f9 Removed wxGetOsVersion stub. It's now handled by utilscmn.cpp.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21457 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 23:40:06 +00:00
Václav Slavík
546a7e42a2 it's the other way around..
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21456 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 23:24:12 +00:00
Václav Slavík
6b9d41a5ea bk-deps fixes and win32
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21455 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 21:59:09 +00:00
Václav Slavík
4d2efb51e6 fixed linking against 3rd party libs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21454 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 21:55:22 +00:00
Václav Slavík
f5f530fd9f added Borland C++ makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21453 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 21:53:57 +00:00
Václav Slavík
82cb028026 different name for release and debug build of third party libraries
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21452 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 21:29:07 +00:00
Vadim Zeitlin
497b8e091e added RefreshItem[s]()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21451 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 21:15:05 +00:00
Václav Slavík
cdc0282e61 1. more borland work
2. added optimization and debug info flags


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21449 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 19:22:12 +00:00
Václav Slavík
4843dc4cda misc win32 fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21446 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 13:47:59 +00:00
Václav Slavík
4cd612f944 install setup.h before compiling on windows
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21445 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 13:41:21 +00:00
Václav Slavík
468375fe69 fixed linking against builtin 3rd party libs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21444 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 13:38:27 +00:00
Václav Slavík
332cc656f3 1) Added INC_FOO variable with include directory for 3rd party libraries
2) Don't compile ODBC on Windows


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21443 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 13:25:11 +00:00
Václav Slavík
42d54220ee compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21442 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 10:09:19 +00:00
Václav Slavík
e6b02f3f26 another compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21441 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 09:59:00 +00:00
Václav Slavík
60ab32727e compilation fix for wxMSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21440 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 09:57:43 +00:00
Václav Slavík
9cce3be7ae Windows compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21439 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 09:55:13 +00:00
Václav Slavík
66fc790841 changed WXTOPDIR definition to not begin with /
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21438 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 09:32:58 +00:00
Vadim Zeitlin
2739d4f052 moved GetOSVersion() to the base traits class; implement it in platform-specific files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21437 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 00:16:04 +00:00
Vadim Zeitlin
18f0a2c5aa TryParent()/ProcessEvent() were included in both base and GUI
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21436 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-27 00:07:05 +00:00
Vadim Zeitlin
ec67cff1f6 __WXBASE__ -> wxUSE_BASE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21435 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-26 23:46:00 +00:00
Václav Slavík
882b369df3 CR/LF fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21434 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-26 22:16:20 +00:00
Václav Slavík
eefdc53ac7 preliminary work on borland bakefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21433 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-26 21:30:40 +00:00
Václav Slavík
5f0ccb412e fixed dependency tracking if . not in PATH
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21432 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-26 21:17:51 +00:00
Václav Slavík
846704576c build event.cpp into both wxBase and wxGUI
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21431 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-26 21:17:16 +00:00
Julian Smart
5c2e937699 Removed 16-bit conditional compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21430 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-26 17:47:47 +00:00
Julian Smart
9c110148e8 Corrected small typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21429 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-26 17:29:33 +00:00
Julian Smart
aaace8739a Removed WIN16 references
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21428 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-26 17:26:34 +00:00
Julian Smart
b073db94f2 Removed obsolete code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21427 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-26 17:10:14 +00:00
Vadim Zeitlin
1e0af0bcda added EstimateTotalHeight
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21426 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-26 15:39:24 +00:00
Julian Smart
ae500232a4 Added m_ prefix to wxColourData and wxFontData members for consistency.
Fixed some typos in comments.
Fixed wizard constructor doc.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21425 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-26 13:15:12 +00:00
Vadim Zeitlin
22c2307c2b pass event to validators fisrt, before using the dynamic event table
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21424 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-26 13:00:56 +00:00
Vadim Zeitlin
8b655af19d compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21423 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-26 12:45:18 +00:00
Chris Elliott
df2309bac7 remove conflicts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21422 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-26 11:22:50 +00:00
Vadim Zeitlin
034957673c changing the number of items in wxHtmlListBox should flush the cache
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21421 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-26 10:05:13 +00:00
Vadim Zeitlin
2887179b1f compilation fixes for separate build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21420 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-26 01:14:22 +00:00
Vadim Zeitlin
d6045bb81d compilation fix for wxGUI
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21419 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-26 01:10:41 +00:00
Vadim Zeitlin
4caf847c87 got rid of wxEvtHandler::m_isWindow, use virtual functions (overridden in wxWindow) instead
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21418 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-26 00:44:55 +00:00
Vadim Zeitlin
3ed2104c99 some more #if wxUSE_BASE (but still not enough)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21417 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 23:50:35 +00:00
Vadim Zeitlin
5fb98c22c2 extracted wxStopWatch and global timer functions in a separate file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21416 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 23:49:45 +00:00
Václav Slavík
21c557b8f4 added stopwatch.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21415 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 23:27:59 +00:00
Gilles Depeyrot
12aec44572 corrected resource file compilation command for wxMac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21414 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 20:12:33 +00:00
Václav Slavík
86ec293520 no need for --enable-soname anymore
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21413 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 19:54:06 +00:00
Václav Slavík
1936dc8b29 more fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21412 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 19:50:04 +00:00
Václav Slavík
50d11be16b new dependencies tracking code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21411 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 19:43:11 +00:00
Václav Slavík
c656b78389 new dependencies tracking code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21410 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 19:27:50 +00:00
Václav Slavík
3e03bdd85f use MacOS X resources
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21407 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 19:07:02 +00:00
Václav Slavík
2df276eaac updated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21406 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 19:02:37 +00:00
Václav Slavík
acf38e5f19 added gizmos makefile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21405 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 18:48:54 +00:00
Václav Slavík
bce78bdc42 compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 18:44:11 +00:00
Václav Slavík
d1d83c9b7d blind wxCocoa fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21401 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 18:31:51 +00:00
Václav Slavík
47f9586840 top_builddir is part of bakefile now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21400 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 18:30:52 +00:00
Václav Slavík
49b0a3aad9 new dependency tracking from bakefile cvs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21399 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 18:14:32 +00:00
Roger Gammans
a1c7887200 correct documentation for wxEVT_GRID_SELECT_CELL and wxEVT_GRID_CELL_CHANGE
events


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21398 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 17:33:22 +00:00
Václav Slavík
af84819372 compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21396 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 17:08:01 +00:00
Václav Slavík
47e4384c75 regenerated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21395 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 16:35:43 +00:00
Václav Slavík
8d8bc1bd41 split log.h into GUI and base parts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 16:34:19 +00:00
Václav Slavík
e86e15224d many changed to enable multilib build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21393 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 16:29:51 +00:00
Václav Slavík
7e8c564c1a split log.h into GUI and base parts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21392 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 16:28:47 +00:00
Václav Slavík
aa855785a9 fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21391 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 15:33:22 +00:00
Václav Slavík
4b1e57eb35 regenerated makefiles, with support for multilib build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21390 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 15:23:46 +00:00
Václav Slavík
9747f85dad regenerated makefiles, with support for multilib build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21389 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 15:13:17 +00:00
Václav Slavík
60c0a8dbf4 fixes to previous commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21388 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 15:09:05 +00:00
Václav Slavík
2de5a6ee23 moved AddFile(wxImage) to GUI part of library, too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21387 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 14:59:02 +00:00
Václav Slavík
08b3ac36d9 find available samples, demos and contribs at runtime
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21386 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 14:52:07 +00:00
Václav Slavík
d0ce3e528a compilation fix for wxBase
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21385 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 14:32:08 +00:00
Václav Slavík
d6b95c13df only define wxUSE_GUI if not already defined; this is needed for multilib build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21384 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 14:21:47 +00:00
Václav Slavík
380ba753ff install headers and link against main lib
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21383 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 11:02:02 +00:00
Václav Slavík
fab9850d5d more contrib tweaks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21382 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 11:00:44 +00:00
David Elliott
bf25264013 Changed bool WakeUpIdle() to void to match base class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21381 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 02:10:36 +00:00
Václav Slavík
fb8ee64d78 added XRC contrib makefile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21380 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 00:40:06 +00:00
Václav Slavík
6dcc040d57 added first contrib makefile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21379 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 00:37:46 +00:00
Václav Slavík
a90f1b0b82 different location for contrib bakefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21378 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 00:26:27 +00:00
Vadim Zeitlin
fcdb9b388a missign app.h header
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21377 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 00:13:29 +00:00
Vadim Zeitlin
f98d23fd94 a quick hack to fix wxBase compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21376 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 00:11:34 +00:00
Vadim Zeitlin
c41dbc2085 missing wx/iconloc.h added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21375 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 00:10:07 +00:00
Vadim Zeitlin
4f356748c6 removed #pragma interface because it results in link problems when building wxBase/wxGUI
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21374 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-25 00:08:31 +00:00
Václav Slavík
c06088650e support for building contrib libraries
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21373 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 23:52:06 +00:00
Václav Slavík
6ae02da411 wxBase fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21372 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 23:48:18 +00:00
Václav Slavík
6d7d8f3b3b fixes to wxBase compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21371 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 23:27:15 +00:00
Vadim Zeitlin
335f20cb00 wxTINY_CAPTION_XXX are obsolete
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21370 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 22:47:45 +00:00
Václav Slavík
7f1ed35c26 fixed make install
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21369 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 22:46:41 +00:00
Václav Slavík
4136b40acc no longer needed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21368 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 22:35:14 +00:00
Václav Slavík
04b4031605 renamed julian's private makefile, it's in the way
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21367 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 22:31:03 +00:00
Václav Slavík
01aa586397 Mac OS X fixes for ac-2.5
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21366 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 22:23:43 +00:00
Václav Slavík
e90ed8ad58 moving to autoconf-2.5x
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21365 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 22:12:12 +00:00
Václav Slavík
481290e226 moved to autoconf-2.5x
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21364 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 22:05:29 +00:00
Václav Slavík
e6cc62c672 moving to autoconf-2.5x
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21363 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 21:56:41 +00:00
Václav Slavík
f70083b694 fixed OSX resources invalid path
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21362 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 20:13:44 +00:00
Gilles Depeyrot
52ad8c7da7 corrections for compilation under Mac OS X
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21361 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 20:00:40 +00:00
Gilles Depeyrot
8495ba5368 updated code to not use deprecated methods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21360 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 19:49:13 +00:00
Gilles Depeyrot
73bdd73aa2 minor corrections for compilation with gcc 3.3 (use cast of address instead
of address of cast)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21359 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 19:35:54 +00:00
Václav Slavík
c5ab794840 added Mac resource with icon
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21357 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 18:19:12 +00:00
Václav Slavík
e43fcd5449 added wxART_MISSING_IMAGE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21356 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 18:14:37 +00:00
Václav Slavík
9d830d3ea1 don't compile generic wxMessageDialog w/ GTK+2, it's not used (forgot to commit this)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21355 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 18:08:02 +00:00
Václav Slavík
55d8199638 regenerated after fixing OSX install_name and adding wxCocoa files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21354 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 11:54:23 +00:00
Václav Slavík
84b001ebab regenerated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21353 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 11:31:31 +00:00
Václav Slavík
910426ee7b compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21352 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 11:29:40 +00:00
Václav Slavík
af515aade5 wxCocoa fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21351 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 11:25:45 +00:00
Václav Slavík
ba28d9bbd5 defined __WXBASE__ when building the monolib
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21350 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 11:22:50 +00:00
Václav Slavík
8df6de970d compilation fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21349 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 11:21:42 +00:00
Julian Smart
1882f416e3 Initialised static controls
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21348 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 08:20:05 +00:00
Chris Elliott
0ef7283884 correct library names
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21347 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 06:34:23 +00:00
Vadim Zeitlin
9a90985d5f added new files (after library split)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21346 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 01:36:40 +00:00
Vadim Zeitlin
46446cc2aa compilation fix for wxGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21345 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 01:31:22 +00:00
Vadim Zeitlin
153ecbb81c regenerated project/makefiles with tmake
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21344 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 01:24:12 +00:00
Vadim Zeitlin
505f0a85c9 removed duplicate wxTheApp and m_appInitFn definitions from all ports, not just MSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21343 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 01:20:33 +00:00
Vadim Zeitlin
e2478fde62 wxBase/GUI separation: 1st step, wxMSW should build, all the rest is broken
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21342 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-24 00:56:19 +00:00
Václav Slavík
433f5675a9 updated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21341 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 22:56:34 +00:00
Václav Slavík
e94a9f4e5b updated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21340 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 22:49:09 +00:00
Václav Slavík
cbd63f42f6 generated new makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21339 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 22:42:25 +00:00
Václav Slavík
63dfd606ed compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21338 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 22:32:21 +00:00
Václav Slavík
3c41f265ea updated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21337 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 22:31:52 +00:00
Václav Slavík
e8f2f43d12 fix missing files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21336 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 22:31:51 +00:00
Václav Slavík
b9fbba05ef samples configuration didn't work
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21335 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 22:31:51 +00:00
Václav Slavík
fe0895cf82 new build system
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21334 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 22:31:50 +00:00
Václav Slavík
7e7336a7e4 fixed missing files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21333 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 22:02:12 +00:00
Václav Slavík
a00348789e depending on Makefile is oversensitive, anybody who changes the make will know to run 'make clean'
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21332 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 22:00:37 +00:00
Václav Slavík
bce8fed638 wxSelectionStore fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21331 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 21:13:27 +00:00
Václav Slavík
6bd5dab592 fixed dependencies
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21330 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 21:12:56 +00:00
Václav Slavík
7abe18c2ac bakefile build system
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21329 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 21:12:25 +00:00
Mattia Barbon
a49686b4c2 Compilation fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21328 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 21:06:18 +00:00
Václav Slavík
ddf9896893 moving bakefile build system to the trunk
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21327 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 19:50:43 +00:00
Vadim Zeitlin
d512306c0b deleted non existing Cancelled() method
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21326 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 19:47:12 +00:00
Vadim Zeitlin
3ccae3ba9b added missing Skip() in OnIdle()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21325 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 19:43:27 +00:00
Vadim Zeitlin
fbae49eedf use __VISUALC__ instead of _MSC_VER to avoid problems with CW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21322 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 16:04:09 +00:00
David Elliott
ef3e4a2c81 Added #if wxUSE_SLIDER guard
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21321 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 15:49:11 +00:00
David Elliott
c0e2aaa94a Only MSW has a class wxIconLocation. The other platforms have
typedef wxIconLocationBase wxIconLocation;  Apple's GCC does not like
the mismatch when forward declaring it.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21320 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 15:27:17 +00:00
David Elliott
c41b649631 Added #ifdef wxHAS_TASK_BAR_ICON guard
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21319 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 15:17:41 +00:00
Julian Smart
3fc2f8c635 Spelling correction.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21317 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 14:49:46 +00:00
Vadim Zeitlin
da0766ab2a GetIcon() returns wxIconLocation, not wxIcon, now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21316 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 13:49:24 +00:00
Julian Smart
80185c6ceb Implemented wxTextCtrl::GetStyle for MSW
Added status bar showing major style attributes at cursor in text sample


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21315 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-23 13:14:42 +00:00
Vadim Zeitlin
6b7993a952 Fixed typo in cmdline option name; TRUE / FALSE -> {\tt true} / {\tt false} (patch 757770)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21314 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-22 23:02:49 +00:00
Vadim Zeitlin
62313dec27 missing backslash before underscore (patch 758143)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21313 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-22 23:01:11 +00:00
Vadim Zeitlin
3b3fe1f6e7 allow wxFileConfig be created with empty name (will take it from wxApp) (patch 749749)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21312 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-22 22:45:05 +00:00
Vadim Zeitlin
bf43ff9a90 LaTeX2e fixes (patch 748118)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21311 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-22 22:20:40 +00:00
Vadim Zeitlin
55f9f0cbc8 support Show() in wxFlexGridSizer (patch 737850)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21308 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-22 22:08:13 +00:00
Vadim Zeitlin
1b1ca07a70 set selection before setting focus to the control in SetFocusFromKbd() (patch 726361)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21306 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-22 21:56:43 +00:00
Vadim Zeitlin
e1720942b0 fix VC 7.x release build problems
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21296 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-22 16:13:47 +00:00
Vadim Zeitlin
636773ddad temp fix for link errors after last commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21295 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-22 15:44:31 +00:00
Vadim Zeitlin
32b38f99ce GNU/Hurd patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21293 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-22 12:48:38 +00:00
Vadim Zeitlin
b3e6525497 added missing default value for pos parameter in ctor/Create
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21292 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-22 11:04:13 +00:00
Vadim Zeitlin
55d0aaa372 updated after wxFileType change
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21291 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-22 00:22:39 +00:00
Vadim Zeitlin
3e3362daa8 added default ctor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21290 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-22 00:19:38 +00:00
Mattia Barbon
3ec4107dfc Add a missing structure definition, move all rich text missing
stuff to wx/msw/missing.h.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21288 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-21 20:09:14 +00:00
Mattia Barbon
9795182e4a Typo fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21287 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-21 20:06:07 +00:00
Vadim Zeitlin
7c0720183f don't disable hidden windows in wxWindowDisabler, it's at best useless
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21286 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-21 17:45:14 +00:00
Vadim Zeitlin
376ccc457c removed Win16 horrors
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21285 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-21 17:38:55 +00:00
Vadim Zeitlin
6feaaaedd6 removed datacmn, not a base file any more
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21284 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-21 14:09:20 +00:00
Vadim Zeitlin
c07f134693 removed datacmn
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21283 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-21 14:08:14 +00:00
Robert Roebling
21b07f95d0 Small fix for splitter window.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21282 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-21 14:07:16 +00:00
Vadim Zeitlin
aaf7ab431b added wxIconLocation; minor fixes to wxIcon on some platforms
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21279 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-21 13:39:40 +00:00
Stefan Neis
75f7af39d1 Reverted patch [ 746201 ] (partially) because of unwanted side-effects
to grids with 0 rows _or_ 0 columns.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21277 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-21 08:40:06 +00:00
Mattia Barbon
7d268a705c Applied patch from William Gallafent to copy manifest at install
time for wxMSW cross compiles.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21276 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-20 22:03:43 +00:00
Gilles Depeyrot
ac672b5ae8 corrected DEPFILES which contained an object file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21275 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-20 21:19:21 +00:00
Gilles Depeyrot
c5990c0034 corrected return value of wxTimer::Start when timer is successfully created
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21274 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-20 20:48:17 +00:00
Václav Slavík
2269ff5679 fix one of reasons for crash if there is no font
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21273 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-20 20:20:16 +00:00
Julian Smart
e00a5d3ca1 Extended wxTextAttr and added wxTextCtrl::GetStyle stub
allow better rich text support.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21272 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-20 16:25:31 +00:00
Chris Elliott
f22c3c98a0 relative path to wxwin in samples for Digital Mars (fixes SF bug 757845)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21271 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-20 15:20:31 +00:00
Vadim Zeitlin
f561a4e09c removed redundant wxUSE_GUI checks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21270 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 23:43:01 +00:00
Vadim Zeitlin
a6ab05be98 added __WXBASE__ define; removed duplicated (in wx/chkconf.h) compatibility section
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21269 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 23:39:51 +00:00
Vadim Zeitlin
a434b43fd4 added wxIsDebuggerRunning() (which is going to replace the mess in log.cpp)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21268 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 23:31:19 +00:00
Václav Slavík
53fef662b8 quick and dirty fix for wxMGL compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21264 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 22:33:00 +00:00
David Elliott
c1ff26f55f Removed forced default no for wxUSE_SLIDER and wxUSE_COLOURDLG
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21263 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 22:22:15 +00:00
David Elliott
a1725a7205 Added slider.h/slider.mm to wxCocoa build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21262 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 22:18:12 +00:00
David Elliott
bfddb9239f Missed a few substitutions the first time around
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21261 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 22:16:22 +00:00
David Elliott
746aa166e4 Include wxCocoa header
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21259 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 22:14:10 +00:00
Václav Slavík
3191ff3b91 added wxHAS_TASK_BAR_ICON
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21258 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 22:14:06 +00:00
David Elliott
2ec55dc0be Added wxSlider stub
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21257 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 22:09:27 +00:00
David Elliott
bec1ace627 wxCocoa does not have wxDialog::OnPaint()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21256 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 22:06:24 +00:00
David Elliott
bfec7058d4 Added return NULL; for __WXCOCOA__
FIXME: The platform specific stuff is a real mess


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21254 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 21:32:16 +00:00
David Elliott
fc56dc1202 Changed colour.cpp to colour.mm
Also, generated files.lst now has fdlgcmn.cpp included


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21253 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 21:30:14 +00:00
David Elliott
d9b4ddf28f Added NSColor declarataion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21252 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 21:27:13 +00:00
David Elliott
683b185d01 First stab at wxColour using NSColor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21251 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 21:24:10 +00:00
Robert Roebling
7b14c561d9 Font crash and timer fix as per 2_4.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21248 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 19:06:06 +00:00
David Elliott
8eabf55943 On wxMac, set the common menubar to the MDI parent and don't show it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21245 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 18:22:06 +00:00
David Elliott
3fdac2ab39 In wxApp::OnIdle() check to see if there is not a current menubar and if
there is a common menubar, install it.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21244 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 18:20:26 +00:00
David Elliott
1b1d2207ea Add ability to have a wxMenuBar as a common menu
- static wxMenuBar::MacSetCommonMenuBar()
- static wxMenuBar::MacGetCommonMenuBar()
- static wxMenuBar::s_macCommonMenuBar;


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21243 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 18:17:33 +00:00
Vadim Zeitlin
523c2b8d45 fixed infinite recursion bug in some rare cases
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21241 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 16:55:15 +00:00
Vadim Zeitlin
9f522551db wxUniv compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21239 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 09:43:19 +00:00
Chris Elliott
1997b8ba19 fix making base for Borland
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21238 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 09:21:07 +00:00
Chris Elliott
572affa49c fix making base for watcom (lib\base and console sample now compile)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21237 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 08:13:00 +00:00
Chris Elliott
40bed4b61b fix making base for watcom (lib\base and console sample now compile)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21236 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-19 08:05:26 +00:00
Vadim Zeitlin
32013d27f6 detect EOF better when reading HTTP reply
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21234 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-18 22:09:09 +00:00
Vadim Zeitlin
3cac31513f removed unnecessary #if wxUSE_GUIs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21233 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-18 21:49:40 +00:00
Vadim Zeitlin
c631d59053 removed deprecated ConvertToBitmap() and wxImage(wxBitmap) ctor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21232 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-18 21:38:29 +00:00
Vadim Zeitlin
dc6c9679d6 wxComboBox doesn't (officially) derive from wxChoice
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21231 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-18 21:36:51 +00:00
Julian Smart
7919cba5b7 Removed very obsolete Set/GetColourMap accessors.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21227 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-18 16:19:26 +00:00
Václav Slavík
017b6a0d40 make it possible to not attach toolbars to frames (John Anderson)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21226 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-18 16:17:54 +00:00
Václav Slavík
2f42e5b6bf added --basename and --release flags to wx-config (patch #750815)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21225 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-18 16:08:15 +00:00
Chris Elliott
3eb14b8c98 fix perl commands for makefile.sc
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21224 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-18 12:59:17 +00:00
Chris Elliott
7d5848668d fix DMars compilation to use precompiled headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21223 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-18 12:09:16 +00:00
Julian Smart
dd27a3bd76 Added extra wxGLCanvas documentation from
Davide Pasquini <davide.pasquini@fastwebnet.it>


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21222 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-18 09:20:46 +00:00
Julian Smart
3b13683cad Workaround a crash bug; real solution as yet unknown
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21221 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-18 07:41:24 +00:00
Vadim Zeitlin
9ad19a2bde removed a now unnecessary line
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21220 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-18 00:42:39 +00:00
Vadim Zeitlin
c8688869d9 better mask handling in wxBitmap to wxImage conversion (patch 754881)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21219 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-18 00:41:37 +00:00
David Elliott
8b389fab25 DEFAULT_wxUSE_TABDIALOG=yes for wxCocoa (Generic notebook)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21212 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-17 20:54:10 +00:00
Vadim Zeitlin
20aed02647 fixed compilation warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21210 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-17 18:09:55 +00:00
Julian Smart
afc5159044 Added 'Go' button for quickly saving setup or configure file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21207 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-17 16:23:49 +00:00
Václav Slavík
d2739ea6db added htlbox to samples
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21206 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-17 14:27:04 +00:00
Václav Slavík
f30251fb86 added htlbox to samples
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21205 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-17 14:05:43 +00:00
Chris Elliott
7a9f270ffc modify Borland makefile to include bc in library names
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21204 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-17 13:22:34 +00:00
Julian Smart
d9a41dfe5a Renamed Platform -> Target
Bumped version


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21201 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-17 09:55:49 +00:00
Julian Smart
c649a6aba4 Eliminated some code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21200 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-17 09:52:26 +00:00
Chris Elliott
18d491685c add ipc client / server samples for digital mars
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21199 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-17 09:36:48 +00:00
Chris Elliott
4ce458c74f fix for client / server samples
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21198 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-17 09:30:10 +00:00
Julian Smart
25b1b442d6 Added corrected Show() to wxPopupWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21197 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-17 08:26:01 +00:00
Robin Dunn
577baeef5a Remove the test for parent window type when checking if to give a
sunken style automatically


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21184 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-16 22:08:01 +00:00
Chris Elliott
be235d0801 initail Digital Mars makefile for stc
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21181 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-16 19:35:52 +00:00
Chris Elliott
7832ab4f68 initail Digital Mars makefile for stc
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21180 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-16 19:30:19 +00:00
Chris Elliott
bd746613ca faster Borland makefile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21179 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-16 16:52:26 +00:00
Chris Elliott
0e4c7ab4f2 makefiles for samples for digital mars
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21178 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-16 16:51:46 +00:00
Julian Smart
01ebf75203 Platform and compiler-specific checking for MSW and Mac now done
in wx/xxx/chkconf.h.
Removed some very obsolete settings, and MSW-specific settings
from Mac's setup0.h.
wxTimer now derives from wxEvtHandler.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21177 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-16 12:31:45 +00:00
Václav Slavík
748418c02b fixed misbehaving selection on some words
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21176 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-15 22:40:12 +00:00
Vadim Zeitlin
29865cc3b9 empty description doesn't look good
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21175 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-15 20:18:03 +00:00
Vadim Zeitlin
d949746098 typo fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21174 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-15 20:14:57 +00:00
Vadim Zeitlin
817670e454 fixed bug with parsing filter string without description
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21173 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-15 20:13:20 +00:00
Vadim Zeitlin
5447d1b493 GTK2 Unicode build warning fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21172 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-15 20:03:34 +00:00
Vadim Zeitlin
a8f1f1b23b check parmateres in Replace() (bug 752716)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21170 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-15 19:33:04 +00:00
Stefan Neis
5d8f5f875e Added definition of wxUSE_DISPLAY.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21169 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-15 18:36:42 +00:00
Mattia Barbon
24f9edfdae Blind fix for startup crash with Lesstif.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21168 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-15 17:27:22 +00:00
Gilles Depeyrot
9711d31ed2 partially applied SF #753787 to correct wx-config --rezflags which was
refering to top build dir instead of install dir


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21162 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-15 08:36:15 +00:00
Julian Smart
0e7bcd61ac Include wxHTML help controller from wx/helphtml.h.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21161 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-14 19:48:14 +00:00
Julian Smart
bd582574c2 Added wxMenuBase::FindItemByPosition
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21160 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-14 19:44:54 +00:00
Vadim Zeitlin
9505511c59 removed duplicated stuff in Delete() docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21158 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-14 16:55:35 +00:00
Vadim Zeitlin
ef0dd8e517 always NUL-terminate log messages, even if they're longer than buffer size
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21157 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-14 16:45:31 +00:00
Julian Smart
b1f68ca345 Can now skip default manifest inclusion by defining wxUSE_NO_MANIFEST
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21156 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-14 16:44:18 +00:00
Julian Smart
eac703e9c5 Made XPMs transparent
Corrected wxMessageBox usage


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21155 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-14 16:42:40 +00:00
Vadim Zeitlin
27db95f054 speed up for debug mode startup (doesn't matter much but as it doesn't cost anything to fix this...)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21154 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-14 16:36:08 +00:00
Julian Smart
e776786754 Added Find dialog
Bumped version to 1.01


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21153 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-14 16:25:26 +00:00
Julian Smart
8cb4919bd4 Added configtool to configure and Makefile.in
Added -lsupc++ to end of LDLIBS to avoid link errors


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21152 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-14 16:18:39 +00:00
Julian Smart
02ae000a99 Removed compilo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21151 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-14 16:04:11 +00:00
Vadim Zeitlin
de89696245 regenerated using tmake to add fldlgcmn.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21150 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-14 13:39:10 +00:00
Vadim Zeitlin
b600ed1362 wxFileDialog cleanup, extracted common code to fldlgcmn.cpp (patch 754187)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21149 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-14 13:31:49 +00:00
Vadim Zeitlin
30e671a59f added virtual dtor to wxDateTimeHolidayAuthority (patch 753947)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21148 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-14 13:23:56 +00:00
Vadim Zeitlin
3080bf599a added a few #ifdefs needed to build a smaller library (patch 751523)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21147 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-14 13:00:55 +00:00
Vadim Zeitlin
095980e182 no changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21146 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-14 13:00:31 +00:00
Vadim Zeitlin
1e74d03b7f implemented alpha support for raw bitmaps under Mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21145 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-14 12:57:44 +00:00
Julian Smart
059d039e1e Small updates to wxCT
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21143 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-14 09:29:45 +00:00
Chris Elliott
52bd669655 fix some more samples for digital mars
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21142 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-14 08:48:42 +00:00
Václav Slavík
9b24b388c1 compilation fix for platforms w/o wxRawBitmap
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21141 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 23:25:09 +00:00
Vadim Zeitlin
4636a1e8f8 no real changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21140 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 22:32:23 +00:00
Vadim Zeitlin
de5d3a20ce SetSelection() may be used for both single and multi selection listboxes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21139 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 22:30:55 +00:00
Vadim Zeitlin
9a9b4940a1 added possibility to customize the listbox colours
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21138 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 22:26:45 +00:00
David Elliott
6874238c54 Include wx/file.h even when using precompiled headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21134 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 21:32:07 +00:00
David Elliott
c500250d39 * Added gsockcocoa.c to files list
* Regenerated files lists, wxCocoa now includes selstore


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21133 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 21:28:45 +00:00
David Elliott
d533381ebc Added GSocket stubs for wxCocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21132 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 21:19:49 +00:00
David Elliott
c8cae94c72 Use the new wxNSStringWithWxString conversion function
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21131 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 21:15:04 +00:00
David Elliott
724ebdde8a Added wxString to NSString conversion functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21130 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 21:09:21 +00:00
Chris Elliott
f4bf676380 fix some more samples for digital mars [allow contrib to work]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21129 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 20:30:52 +00:00
David Elliott
70024cfb08 Proposed wxMac MDI interface (in limbo)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21128 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 20:29:48 +00:00
Chris Elliott
31bb77da45 fix some more samples for digital mars
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21127 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 20:26:54 +00:00
David Elliott
245f35816d Added support for delayed deactivation of windows (for MDI)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21126 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 20:24:32 +00:00
Vadim Zeitlin
0063c16999 documented all methods pertaining to the multiple selection
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21125 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 19:21:37 +00:00
Julian Smart
ea723360ee Fixed MDI scrollbars
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21124 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 18:56:53 +00:00
Chris Elliott
b8f34efb02 add dmc makefile (samples compile and run OK)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21122 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 18:43:35 +00:00
Chris Elliott
b911bc32a1 fix for dmc compilation of projects with more than one obj
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21121 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 18:39:45 +00:00
Vadim Zeitlin
5d6dcfb327 added RefreshLine(s), HitTest() and IsVisible()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21118 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 17:18:28 +00:00
Vadim Zeitlin
ceb71775b4 added def value for Create() id parameter
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21117 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 17:17:46 +00:00
Vadim Zeitlin
d5eddfef2e quote '|' inside regexes (fixes dump mode); fixed crash due to strange HelpGenApp code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21115 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 17:05:43 +00:00
Vadim Zeitlin
71b5725f30 fixed bug in group counting Compile()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21114 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 17:02:29 +00:00
Vadim Zeitlin
09c6a817fa collected all deprecated methods in the beginning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21113 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 16:38:09 +00:00
Vadim Zeitlin
87a36e90d4 mention wxMac THUMBRELEASE bug fix and wxHtmlLbox &c
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21112 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 16:30:14 +00:00
Vadim Zeitlin
6ed71b4f20 send wxEVT_SCROLLWIN_THUMBRELEASE events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21111 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 16:25:10 +00:00
Václav Slavík
ce73e65400 fs_inet depends on protocol classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21110 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 15:33:14 +00:00
Vadim Zeitlin
14b6653cc1 compilation fix for PCH
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21109 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 15:24:40 +00:00
Vadim Zeitlin
33a037495e fixed off by 1 bug in SelectRange()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21108 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 13:29:52 +00:00
Vadim Zeitlin
5f73281084 added commands to toggle multiple selection and to select all items
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21107 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 13:23:49 +00:00
Vadim Zeitlin
970b97a267 made multiple selection behave more consistently with the usual (Windows) way
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21106 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 13:09:30 +00:00
Vadim Zeitlin
b0126f6094 regenerated all make/project files to include selstore.cpp/.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21105 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 13:06:51 +00:00
Vadim Zeitlin
6c9210a76a added checks for the item index
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21104 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 12:42:35 +00:00
Julian Smart
f8105809ef Some fixes for gcc compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21103 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 12:20:33 +00:00
Julian Smart
7c5ece9e3c Small fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21102 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 10:56:26 +00:00
Julian Smart
99f03ce9c7 Merged some info from the 2.4 branch.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21101 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 10:30:03 +00:00
Václav Slavík
4a6e4a46a3 added wxLocale::GetLanguageName
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21099 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 10:16:19 +00:00
Julian Smart
6e16f8693f Added DialogBlocks file for configtool
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21098 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-13 09:08:39 +00:00
Julian Smart
d7463f75f9 Added first cut wxWindows Configuration Tool
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21083 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-12 20:43:55 +00:00
Robin Dunn
f2c3db9d7d Patch #753465 a fix for Bug#750363.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21082 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-12 18:53:42 +00:00
Václav Slavík
854e189f90 added wxRTTI to XRC handlers (patch #752996 by David Falkinder)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21078 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-12 18:10:38 +00:00
Václav Slavík
71ff7c911a fixed typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21077 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-12 16:15:26 +00:00
Chris Elliott
cc693a8200 fix Borland makefile as per 2 recent bug reports
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21076 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-12 15:23:25 +00:00
David Elliott
be7a101366 Make wxMDIParentFrame a regular top level window
- Override DoGetClientSize for wxMDIClientWindow instead of wxMDIParentFrame
- Do not override OnSize for wxMDIParentFrame


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21075 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-12 13:41:05 +00:00
Chris Elliott
b478e7a71c fix Borland makefile for xrc as per SF report 747099
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21074 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-12 12:32:22 +00:00
Jouk Jansen
c698eae5a8 Committing in .
OpenVMS compile issues

 Modified Files:
 	wxWindows/include/wx/vms_x_fix.h
 	wxWindows/samples/image/image.cpp
 	wxWindows/src/generic/descrip.mms
 	wxWindows/src/motif/clipbrd.cpp
 	wxWindows/src/motif/combobox.cpp
 	wxWindows/src/motif/scrolbar.cpp
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21071 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-12 11:28:16 +00:00
Vadim Zeitlin
4c38c20777 added missing selstore.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21069 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-12 08:54:28 +00:00
Vadim Zeitlin
973e686595 fixed warnings about assigning literal strings to char *
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21062 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 22:21:42 +00:00
Vadim Zeitlin
75240db295 WriteString() doesn't append EOL automatically
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21061 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 22:02:05 +00:00
Vadim Zeitlin
ac53090cb7 don't ignore wxLC_NO_HEADER style when inserting first column
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21060 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 21:58:55 +00:00
Gilles Depeyrot
2d3441d7e5 applied SF patch #752538 to implement wxGetOSDirectory() for Mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21047 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 18:17:56 +00:00
Chris Elliott
8adeb85117 fix SF bug report 751351
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21046 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 14:44:43 +00:00
Julian Smart
1be9536aaa Allow for multiple CHM controllers in app (don't leak dynamic libs)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21044 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 14:15:36 +00:00
Vadim Zeitlin
d8a01976c0 trigraph warning fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21043 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 12:18:46 +00:00
Vadim Zeitlin
8613d47ba9 multi selection test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21042 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 11:55:06 +00:00
Vadim Zeitlin
43e319a307 removed countItems parameter from ctor -- doesn't work anyhow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21041 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 11:47:09 +00:00
Vadim Zeitlin
be46555538 implemented multiple selection
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21040 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 11:40:37 +00:00
Vadim Zeitlin
ae0f022346 added RefreshLines()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21039 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 11:37:52 +00:00
Vadim Zeitlin
e135f09367 removed duplicate code from SetData(), just call AddData()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21038 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 11:36:45 +00:00
Vadim Zeitlin
d659d703ef made CopySelection() always available (otherwise it wouldn't compile when wxUSE_CLIPBOARD == 0); copy double/triple clicked selection to primary X11 clipboard under Unix as well; minor code cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21037 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 11:34:44 +00:00
Vadim Zeitlin
63b8dd39b8 merged the confllict resolution (I've fixed the m_format bug independently); no real changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21036 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 11:34:26 +00:00
Vadim Zeitlin
86ff9b45d9 a hack to make copying double clicked words to clipboard work
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21035 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 11:33:48 +00:00
Julian Smart
4f610b3443 Add back #endif
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21034 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 11:11:34 +00:00
Vadim Zeitlin
b3005659bd made GetType() inline
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21033 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 11:02:04 +00:00
Vadim Zeitlin
ef5cfa3889 added selstore.(h|cpp)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21032 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 11:00:09 +00:00
Vadim Zeitlin
c71d3313a4 extracted wxSelectionStore in a separate file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21031 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 10:49:53 +00:00
Vadim Zeitlin
210c92a367 try to determine the correct SOCKLEN_T value harder
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21030 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 10:48:43 +00:00
Julian Smart
dd74a7ad67 Removing vestiges of wxUSE_NEW_GRID
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21029 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 10:03:57 +00:00
Stefan Csomor
4ab107d7f1 corrected error in last fix for insert items
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21028 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-11 08:34:07 +00:00
Robin Dunn
1e93ca1729 Ensure that a wxMenuItem's parent menu is updated if it is removed
from one and added to another menu.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21027 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-10 23:48:46 +00:00
Václav Slavík
13fd234c9c fixed Content-Type lookup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21026 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-10 21:23:53 +00:00
David Elliott
cbe13a1f09 Apple #pragma implementation fix (Yes, some of us do compile wxGTK on OS X)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21025 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-09 18:33:02 +00:00
Stefan Neis
75625d796c Fixed Refresh to clip update rectangles to the visible area of a
(scrolled) window. If there are many invisible/partly visible
        rectangles in the update region GTK+-1.2.10 starts complaining
        about bad match errors and soon crashes.
Change corresponds to changes on WX_2_4_BRANCH from 1.408.2.21 to 1.408.2.24.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21024 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-09 18:27:31 +00:00
Stefan Neis
542e68c719 Moved include to wx/module.h out of #ifndef WX_PRECOMP.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21022 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-09 17:33:39 +00:00
Václav Slavík
f9ba645e5d compilation fix for VisualAge C++
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21021 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-09 17:06:40 +00:00
Stefan Neis
e7262344d0 Moved include to wx/module.h out of #ifndef WX_PRECOMP.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21020 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-09 16:35:12 +00:00
Stefan Neis
33c6ae1d81 Fixed typos as reported by Adrian Gschwend.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21019 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-09 16:27:04 +00:00
Julian Smart
1c84423290 Only bring the window to the top in Show() if we're a top-level
window, else we mess up z-order/tab order


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21014 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-08 23:56:27 +00:00
Stefan Csomor
76158d52be corrected include for Apple's Dev Tools
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21012 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-08 21:39:33 +00:00
Mattia Barbon
dc0cecbcc9 wxMessageDialog and ::wxMessageBox don't support wxCENTRE: remove
it from documentation.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21010 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-08 18:20:24 +00:00
Julian Smart
44cf9b50ee Added shaped sample copying
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21009 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-08 17:49:49 +00:00
David Elliott
6444e22daa Restored Objective-C typesafety while retaining proper C++ name mangling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21005 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-08 03:25:42 +00:00
David Elliott
085c39b402 Mention RFC 1738, in particular file://hostname/path/to/file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-08 01:58:10 +00:00
Václav Slavík
77bae5e228 use 'I' cursor when over text
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21003 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 23:31:21 +00:00
Stefan Csomor
493ac0b8b5 GetId was accessing the m_format var incorrectly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21002 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 21:55:19 +00:00
Stefan Csomor
2f64c3bb23 Accepts Focus was incorrectly returning FALSE for a panel w/o children on mac because of the two implicit scrollbars...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21001 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 21:40:32 +00:00
Stefan Csomor
ac2153a686 cast correction Profiler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21000 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 21:04:00 +00:00
Stefan Csomor
383cbf1320 cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20999 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 21:02:06 +00:00
Stefan Csomor
4b26b60fac MacHandleControlClick extended by mouseStillDown state for supporting things like THUMBRELEASE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20998 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 20:58:38 +00:00
Stefan Csomor
e71a0aa95f changing inheritance and delegation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20997 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 20:34:29 +00:00
Stefan Csomor
69b85ca49b adapting MacHandleControlClick to know about mouse state
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20996 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 20:29:57 +00:00
Robin Dunn
3ba18664fc revert my last change
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20995 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 15:54:41 +00:00
Vadim Zeitlin
b1043cdc3c printf() format warrning fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20994 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 14:39:15 +00:00
Julian Smart
4603b4f92f Applied patch [ 748638 ] wxDos2UnixFilename for unicode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 13:55:43 +00:00
Julian Smart
f9007c324c Reports suggest that _sometimes_ WS_VSCROLL/WS_HSCROLL
are needed. So map wxVSCROLL/wxHSCROLL to these.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20992 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 13:22:34 +00:00
Vadim Zeitlin
c60a36d5dd DoGiveHelp() should be defined even if !wxUSE_STATUSBAR
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20991 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 12:40:34 +00:00
Vadim Zeitlin
253fe8ab4b no changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20990 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 11:19:28 +00:00
Roger Gammans
fd3d753463 Make changes to configure to fix mbug noted by David Elliot .
(fix is based on david's patch ).
 Add odbc library status to the summary provided by configure.

 Fix typo it prologio test.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20989 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 10:52:20 +00:00
Julian Smart
6613474976 Typo fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20988 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 10:12:53 +00:00
Julian Smart
91f2c1540f Fix for [ 748805 ] Assert failure for specified situation in samples/controls
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20987 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 09:59:38 +00:00
David Elliott
6ce5198539 Place m_lastDoubleClick initialization inside existing #if wxUSE_CLIPBOARD
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20981 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 02:20:20 +00:00
David Elliott
49de49497d Added #if wxUSE_DATAOBJ guard around header
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20980 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 02:16:44 +00:00
David Elliott
be65775665 Added stub for the new pure virtual DoInsert method
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20979 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 01:38:13 +00:00
David Elliott
11c084163e include "wx/module.h" for wxModule
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-07 01:34:17 +00:00
Robin Dunn
58751a8685 fix so wxMenu::InsertItem actually inserts rather than overwrites
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20974 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-06 23:46:36 +00:00
Robin Dunn
c69279ef70 Just silently return NULL like the other ports
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-06 23:15:50 +00:00
Robin Dunn
88b1cfb651 Don't get picky about unicode mode. Scintilla doesn't set the mode
for calltip windows anyway.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20972 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-06 21:34:00 +00:00
Julian Smart
9275167db0 Include module.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20964 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-06 16:32:40 +00:00
Vadim Zeitlin
3195dca76c typo in the event type name
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20963 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-06 15:40:15 +00:00
Julian Smart
3885ccc54a Fixed usage
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20962 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-06 10:46:59 +00:00
Robin Dunn
8760bc6529 Put terminating NUL in the buffer since MB2WC doesn't do it.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20958 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-06 00:43:21 +00:00
Václav Slavík
161a87e614 added wxHW_NO_SELECTION
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20955 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-05 21:33:56 +00:00
Václav Slavík
a689b6d6dd documented wxHW_NO_SELECTION
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20954 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-05 21:32:56 +00:00
Julian Smart
f080251d92 Reverted the warning fix since it breaks MinGW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20952 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-05 20:33:17 +00:00
Václav Slavík
0994d9683e added line selection
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20951 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-05 20:30:56 +00:00
Václav Slavík
13bf5a8231 added text selection
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20950 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-05 20:30:22 +00:00
Mattia Barbon
2b2309a466 Add missing header for wxMotif.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20947 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-05 18:11:45 +00:00
Julian Smart
a9fa99ad9e Fixed compile warning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-05 16:08:40 +00:00
Julian Smart
04eb05b01e Disable non-standard notebook styles if CommCtl doesn't support them.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-05 13:35:50 +00:00
Julian Smart
34aa61407a Fixed bug [ 749471 ] wxDocument with no command processor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20932 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-05 12:03:47 +00:00
Julian Smart
f032bf3d16 Fixed native dialog bug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20931 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-05 10:57:59 +00:00
Václav Slavík
31eefb998d doubleclick selects word
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20928 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-04 21:42:34 +00:00
Stefan Csomor
595ec11a45 casts correction
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-04 21:26:50 +00:00
Stefan Csomor
f81bfef982 moving / sizing patch applied
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20926 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-04 21:16:43 +00:00
Stefan Csomor
65334b43fe support undo patch applied
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20925 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-04 21:14:16 +00:00
Václav Slavík
091f0dc759 wxHtmlWindow uses double buffering now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20923 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-04 19:03:56 +00:00
Václav Slavík
1338c59a02 added selecting-while-dragging
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20922 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-04 18:17:04 +00:00
Julian Smart
8ca3dfcdfa Don't divide by zero.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20921 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-04 12:53:03 +00:00
Vadim Zeitlin
b6d5d4548c made wxNativePixelFormat usable under Mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20917 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-04 00:50:18 +00:00
Vadim Zeitlin
77a4354e85 compilation warnings fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-04 00:49:18 +00:00
Václav Slavík
bfc248a3f9 fixed bug in selection style if selection colours is not constant
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20910 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-04 00:18:22 +00:00
Václav Slavík
285f58ab66 new rendering customization api fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20908 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 23:32:10 +00:00
Vadim Zeitlin
5de2429102 documented RefreshAll()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20907 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 23:24:01 +00:00
Vadim Zeitlin
901b583c71 compilation fixed after recent wxHTML changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20905 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 23:13:41 +00:00
Vadim Zeitlin
70bae0166c signed/unsigned comparison warning fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20904 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 23:10:51 +00:00
Václav Slavík
a99798d20c (hopefully) finished subcell selection
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20903 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 23:07:52 +00:00
Václav Slavík
f30e67dbea new rendering customization API for Vadim
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20902 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 23:04:59 +00:00
Vadim Zeitlin
0ea0359bca don't ignore cache hints with from == to
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20901 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 21:22:35 +00:00
Václav Slavík
ed9d5d17e1 new rendering customization API for Vadim
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20900 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 21:22:08 +00:00
Stefan Csomor
ace07c80ba feeds missed key events back to the control
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20899 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 20:32:59 +00:00
Stefan Csomor
0154fd2c88 correcting lookup of equal names in different modules
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20898 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 20:21:12 +00:00
Vadim Zeitlin
3964e424bf fixed the channel order for Mac (alpha comes first)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20897 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 18:52:57 +00:00
Vadim Zeitlin
091c90b7cb no changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20896 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 18:49:49 +00:00
Vadim Zeitlin
05a0787179 Mac compilation warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20895 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 18:47:53 +00:00
Julian Smart
5ed4c021dd Phase 2 of line ending conversion.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20893 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 16:32:30 +00:00
Julian Smart
00ffaa4c96 Phase 1 in converting line endings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20892 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 16:30:18 +00:00
Julian Smart
bfcbd20ff2 Fix for bug [ 748171 ] Can't compile contrib/samples/fl/fl_demo2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20891 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 16:19:39 +00:00
Václav Slavík
169ee861bd subcell selection
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20890 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 13:56:43 +00:00
Václav Slavík
5a1597e9ef subcell selection
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20889 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 13:48:59 +00:00
Vadim Zeitlin
e87fb0ee85 added missing module.h include (bug 748158)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20888 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 13:19:21 +00:00
Vadim Zeitlin
5a0b749487 removed absolutely unneeded #include module.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20887 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 13:17:36 +00:00
Julian Smart
b4f1a309b7 Typo correction
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20886 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 12:44:16 +00:00
Vadim Zeitlin
0b49ccf8d6 pressing PageDown and then PageUp should return to the same item
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 11:15:38 +00:00
Vadim Zeitlin
e7546115db Unicode compilation fix (patch 747959)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 10:55:47 +00:00
Vadim Zeitlin
f124ddf450 use c_str() instead of mb_str() with wxString::Printf() (patch 747903)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20883 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 10:51:52 +00:00
Vadim Zeitlin
a67e6e5438 generate wxEVT_COMMAND_LIST_INSERT_ITEM (patch 747070)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20882 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 10:46:08 +00:00
Vadim Zeitlin
8d85bf5c58 no changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20881 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 10:41:49 +00:00
Vadim Zeitlin
17be85312c fixed wxPenRefData::operator==() (part of patch 742783)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20879 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 10:32:26 +00:00
Vadim Zeitlin
55e18dbe2f initial attempts to get raw bitmaps working under Mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20878 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 00:44:43 +00:00
Vadim Zeitlin
eb7f8ac545 fixed compilation warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20877 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-03 00:44:10 +00:00
Václav Slavík
e24529d70d another bug fixed: wrong lookup of nearest cell before given point
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20876 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 23:35:26 +00:00
Vadim Zeitlin
4ce19ed7aa compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20875 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 23:05:22 +00:00
Vadim Zeitlin
c9c61efbdd compilation warning fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20874 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 23:03:56 +00:00
Vadim Zeitlin
5ecdc7ab6d refresh cache on size/margins change; expanded cache to contain N elements, not just one
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20873 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 23:02:12 +00:00
Vadim Zeitlin
6af4ea87d0 added GetMargins()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20872 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 23:00:35 +00:00
Vadim Zeitlin
4760fa9109 test popup menu help strings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20871 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 22:59:37 +00:00
Vadim Zeitlin
8b053348a5 added RefreshAll()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20870 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 22:58:38 +00:00
Vadim Zeitlin
fb4769829b test for setting caret size and more changes (details are hazy; should have been committed a couple of months ago)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20869 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 22:57:03 +00:00
Vadim Zeitlin
7fd4e7e1c2 attempt to fix gcc printf() warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20868 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 22:50:12 +00:00
Vadim Zeitlin
82922a02d8 fixed calculations in SetMapMode() (use FP division, not integer)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20867 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 22:41:44 +00:00
Vadim Zeitlin
2da34e7d9e updated after grid samples removal/renaming
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20866 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 22:29:13 +00:00
Vadim Zeitlin
3c907f20e4 regenerated after --enable-resources/prologio and wxUSE_X_RESOURCES changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20865 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 21:54:22 +00:00
Vadim Zeitlin
b52e49f51c fix for gcc 3.3 warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20864 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 21:46:31 +00:00
Vadim Zeitlin
b6de9890a4 removed wxUSE_X_RESOURCES -- was unused anyhow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20863 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 21:44:55 +00:00
Vadim Zeitlin
1b86c3ac37 give error if --enable-prologio/resources were given -- this is better than ignoring them silently
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20862 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 21:41:26 +00:00
Václav Slavík
e377412473 added copying selection to clipboard; fixes to selection making
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20861 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 21:21:23 +00:00
Roger Gammans
cf6ae2907c Addition at simple wxObject*, support into wxVariant.
This includes 2 new methods wxVariant::IsValueKindOf() and
wxVariantData::GetValueClassInfo() to allow query of the
wxRTTI data of the variant's data.

Also included is a macro analogues to dynamicCast for fetching
objects out of a wxVariant.

Documentation patches for the above.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20860 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 21:17:28 +00:00
Roger Gammans
8647bec62d Change '--with-odbc' to use the WX_ARG_SYS_WITH macro instead of
the WX_ARG_WITH macro. Add some extra rules to find the new correct
linker flags.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20859 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 21:09:53 +00:00
Václav Slavík
61233023a0 added copying selection to clipboard; fixes to selection making
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20858 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 20:14:31 +00:00
Vadim Zeitlin
bb178b2971 compilation fixes for !USE_PCH
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20857 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 17:29:40 +00:00
Vadim Zeitlin
6170c108a1 printf() format warning fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20856 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 17:27:57 +00:00
Julian Smart
85b43fbf7a Attempt to make wxWindows play better with XP themes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20852 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-02 10:27:03 +00:00
Václav Slavík
73bab6b44d attempt to fix first click problem
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20851 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 23:17:08 +00:00
Vadim Zeitlin
6d41981d89 compilation fix (not all paths returned a value)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20850 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 22:33:06 +00:00
Václav Slavík
adf2eb2d34 more work on text selection: selecting should work now, but there's no clipboard interaction yet
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20849 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 22:19:15 +00:00
Vadim Zeitlin
7fb8086de8 fixed broken English...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20847 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 21:25:08 +00:00
Julian Smart
e415391a4e Notify -> NotifyEvent
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20846 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 21:24:57 +00:00
Vadim Zeitlin
53ae92099f fixed broken TeX markup which resulted in broken links
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20845 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 21:20:07 +00:00
Julian Smart
feb6856235 Fixed doc bug [ 733128 ] 'wxTaskBarIcon.PopupMenu(..)' missing doc.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20844 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 21:11:16 +00:00
Julian Smart
8da336ebe1 toback24 for Raise() fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20843 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 21:03:22 +00:00
Julian Smart
313901f3e5 Fix for bug [ 744199 ] wxBringWindowToTop, child window z-order
A child window should only have it's z-order raised, not
the parent window brought to the front.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20842 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 21:01:18 +00:00
Julian Smart
e00865fab6 Get the initialization order right.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20841 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 20:47:50 +00:00
Julian Smart
7ac4c27aa6 Pass focus window to submenu items too (no reason I can think of not to).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20840 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 20:40:09 +00:00
Julian Smart
c377f1bef4 Added submenu
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20839 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 20:35:12 +00:00
Julian Smart
c546974fbf Fixed bug [ 743664 ] wxListCtrl asserts when deleting its m_textCtrl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20838 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 20:12:30 +00:00
Julian Smart
65b683fd1b Fix for [ 688754 ] wxNotebook::SetSelection(-1) will segfault
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20836 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 19:41:50 +00:00
Julian Smart
272995af2c Fix (I hope) for bug [ 673862 ] printing zero length string with postscript does not work
Now descent and externalLeading will be zeroed if the string is empty.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20835 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 19:23:16 +00:00
Julian Smart
3aabb24c08 Applied bug fix [ 684949 ] Dialup Sample With Borland C++ 5.5.1 Free Compiler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20833 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 19:06:30 +00:00
Gilles Depeyrot
c038ecc666 ignore MSVC build output directories
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20831 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 18:17:50 +00:00
Julian Smart
f67db8c002 Removed AlignIn after further thought
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20830 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 17:15:38 +00:00
Julian Smart
605dfd9173 Applied patch [ 650511 ] wxCalendarCtrl - year does not change
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20828 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 16:46:49 +00:00
Julian Smart
920b9675d9 Applied patch [ 735304 ] wxDisplay::ChangeMode - does not resize full-screen windows
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20827 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 16:32:59 +00:00
Julian Smart
fca36d9a03 Applied patch [ 735948 ] wxStaticPicture contrib
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20826 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 16:26:58 +00:00
Julian Smart
c8e4fa8b2d Applied patch [ 719667 ] Ownerdrawn Buttons without wxUSE_OWNER_DRAWN
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20825 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 16:16:41 +00:00
Julian Smart
939fadc8aa Applied patch [ 710608 ] wxImage::GetImageExtWildcard for image load/save dialogs.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20824 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 16:10:17 +00:00
Julian Smart
b1b3ddd840 Applied patch [ 649157 ] wxDisplay for Unix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20823 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 16:03:24 +00:00
Julian Smart
a89abd7f0c Applied patch [ 730697 ] wxRect::AlignIn member
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20822 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 15:53:00 +00:00
Julian Smart
22328fa444 Applied patch [ 623187 ] virtual methods and new AppendItem
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20821 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 15:48:42 +00:00
Vadim Zeitlin
b544a27802 a workaround for Mac update problems
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20820 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 15:48:10 +00:00
Julian Smart
0d1cb8cb29 Applied patch [ 619386 ] uxtheme.dll support
with filename changes


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20819 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 15:18:36 +00:00
Vadim Zeitlin
5be55d562f compilation warnings fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20818 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 15:16:07 +00:00
Vadim Zeitlin
550e6c014c compilation fix for Mac and reformatted the code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20817 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 15:15:09 +00:00
Julian Smart
5706de1cf4 Partially applied patch [ 531199 ] new EVT_MOVING and EVT_SIZING
Changed to reuse wxMoveEvent, wxSizeEvent
Only applied the Mac part as a TODO comment


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20816 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 14:37:28 +00:00
Julian Smart
5c5428f913 Applied patch [ 619539 ] patch to get small icon via geticon
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20815 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 13:57:23 +00:00
Julian Smart
ef094fa075 Applied patch [ 619705 ] Fixes wxApp::GetComCtl32Version
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20814 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 13:50:55 +00:00
Julian Smart
7408cf7f76 Applied patch [ 739063 ] window.cpp (gtk) - mouse event processing
x -> y


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20813 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 13:45:54 +00:00
Julian Smart
fb47b99f25 Applied patch [ 735588 ] Gtk2 textctrl selection fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20812 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 13:42:21 +00:00
Julian Smart
eaf6274cc0 Applied patch [ 733425 ] Fix for header rendering problem in CalCtrl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20811 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 13:39:30 +00:00
Vadim Zeitlin
201ca87982 added wxHtmlListBox sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20810 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 13:38:45 +00:00
Vadim Zeitlin
e0c6027b5a added wxVListBox using wxVScrolledWindow and wxHtmlListBox using it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20808 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 13:35:26 +00:00
Václav Slavík
6fac75c355 added default ctor and SetSelection to wxHtmlRenderingState
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20807 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 13:28:09 +00:00
Julian Smart
17816c2e70 Applied patch [ 743194 ] HitTest for wxNotebook
Yes, we do need implementations for other platforms,
but it's a start.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20806 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 13:26:09 +00:00
Julian Smart
eee3624b11 Applied patch [ 743248 ] wxArray::RemoveAt() error message fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20805 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 13:21:40 +00:00
Julian Smart
0e4cfcdd77 Applied patch [ 743471 ] wxSplitter::Unsplit fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20804 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 13:19:56 +00:00
Julian Smart
32923e21c7 Implemented wxNotebook::DoGetBestSize so Fit now works.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20803 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 13:14:51 +00:00
Julian Smart
2ce7af354a Applied [ 745533 ] implemented wxNotebook::DoGetBestSize
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20802 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 13:13:03 +00:00
Julian Smart
4611305399 Applied patch [ 745983 ] Fix for memory leak in class wxPluginManager in dynload.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20801 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 12:58:30 +00:00
Julian Smart
4ea3479cb5 Applied [ 746201 ] wxGrid row/col change not updated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20800 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 12:55:59 +00:00
Julian Smart
233a54f6af Applied patch [ 746203 ] xwGrid::SetTable may be called multiple times
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20799 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 12:51:06 +00:00
Julian Smart
12491c1f8e Applied patch [ 746355 ] Adds some checks for chkconf.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20798 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 12:46:22 +00:00
Julian Smart
392c714810 Applied patch [ 746547 ] fixes 'wrong header file included' in fontmap.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20797 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 12:42:49 +00:00
Julian Smart
f43084de97 Applie dpatch [ 741366 ] wxMac d'n'd fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20796 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 12:41:00 +00:00
Julian Smart
dab7302127 Added BCC include dir in XRC makefile
Typo correction in app.tex


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20795 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 12:34:12 +00:00
Václav Slavík
cd275246d3 fixed UpdateRenderingState to do what it was meant to
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20792 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 11:19:13 +00:00
Vadim Zeitlin
7d96264c68 added consts needed by VC++/BC++
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20790 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 10:25:23 +00:00
Václav Slavík
31d8b4ad24 react on mouse up, not mouse down
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20789 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-01 00:10:06 +00:00
Václav Slavík
3033131651 oops, commited debugging code by mistake
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20788 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-31 21:51:17 +00:00
Václav Slavík
36c4ff4d65 preparing wxHtmlWindow for text selection (highlighting works, mouse input and clipboard does not)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20787 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-31 21:48:50 +00:00
Václav Slavík
f65a786ffd preparing wxHtmlWindow for text selection (highlighting works, mouse input and clipboard does not)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20786 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-31 21:42:13 +00:00
Václav Slavík
13005f1d1e backport gtk2 fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20785 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-31 18:07:20 +00:00
Václav Slavík
76b204675b support SetBackgroundMode and SetTextBackground with GTK+2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20783 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-31 17:30:00 +00:00
Vadim Zeitlin
e6173e54a0 back port wxPanel focus fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20782 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-31 17:26:45 +00:00
Vadim Zeitlin
a7407834c4 clicking on a panel without children should give it the focus (closes 215436)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20781 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-31 17:25:07 +00:00
Vadim Zeitlin
e16f8973cd corrected MakeLower/Upper() return value
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20780 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-31 15:10:56 +00:00
Vadim Zeitlin
af9fe8874f missing WXDLLEXPORT added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20779 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-31 12:04:34 +00:00
Vadim Zeitlin
4a7ec775fe typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20777 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-30 21:40:57 +00:00
Vadim Zeitlin
738fc94287 changed vscroll.cpp file location
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20776 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-30 21:28:38 +00:00
Vadim Zeitlin
75bff3be85 added {Line/Page}{Up/Down}
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20775 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-30 21:20:25 +00:00
Vadim Zeitlin
2a70e6eb3f bad link fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20774 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-30 21:17:56 +00:00
Vadim Zeitlin
c9bf76f73d LaTeX error fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20773 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-30 21:16:04 +00:00
Vadim Zeitlin
cf7d632953 added wxVScrolledWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20772 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-30 21:08:31 +00:00
Vadim Zeitlin
95ac740c3b minor fixes to workspace/project files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20771 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-30 20:36:16 +00:00
Julian Smart
13c4e406d3 Wrap missing.h in #ifdef __GNUG__
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20768 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-30 13:29:10 +00:00
Vadim Zeitlin
aedcc0dc82 compilation fix for yet another broken version of mingw (ENSESSION_LOGOFF not defined)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20767 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-30 13:23:55 +00:00
Vadim Zeitlin
7863fab40d #define WINVER as 0x400 if it is not defined at all
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20763 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-30 00:13:20 +00:00
Robin Dunn
51566b0bc9 Added LoadFile and SaveFile methods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20762 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-29 23:50:21 +00:00
Robin Dunn
feddd867de fix a precedence order problem
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20760 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-29 20:30:54 +00:00
Stefan Csomor
55da8bd1e1 GetEventHandler()-> was missing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20759 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-29 19:02:04 +00:00
Gilles Depeyrot
f1317a5d94 fixed error in inlined (standard) version of wxStringData deallocation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20758 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-29 15:59:46 +00:00
Gilles Depeyrot
8ecf21b7db improved deallocation fix for Visual C++ Multithreaded non DLL runtime
so that it only has a performance impact on wxString in this configuration


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20756 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-29 14:03:37 +00:00
Gilles Depeyrot
ca5e07c768 VC++ free must take place in same DLL as allocation when using non dll
run-time library (e.g. Multithreaded instead of Multithreaded DLL)
we must not inline wxStringData deallocation since allocation is not inlined


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20755 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-28 21:11:17 +00:00
Roger Gammans
ff818ab87b Reinsert missing ctor removed in date/time tidy
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20754 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-28 20:48:40 +00:00
Gilles Depeyrot
e8ca710507 allow wxDisplaySize to be called with NULL parameters
implement GetMetric for wxSYS_SCREEN_X & wxSYS_SCREEN_X using wxDisplaySize


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20752 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-28 18:46:32 +00:00
Vadim Zeitlin
eb382f3e5e force wxUSE_IOSTREAMH to 0 with VC 7.1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20751 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-27 22:04:50 +00:00
Mattia Barbon
6c33b24c53 Derive wxScrollBar from wxScrollBarBase, plus miscellaneous
refactoring. Adjusted default scrollbar size to match the
size of wxScrolledWindow (and other scrolled controls) scrollbars.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20750 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-27 20:36:31 +00:00
Mattia Barbon
c8ec0b3d36 Allow initialising wxStaticBitamp with wxNullBitmap/wxNullIcon,
automatically resize the control to match the bitmap (as wxMSW does).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20749 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-27 20:34:13 +00:00
Mattia Barbon
ffa3d6b8a3 Removed some duplicated code, made wxCursor( wxImage )
handling of dark/light colors agree with wxMSW and wxGTK, i.e.
dark -> black, light -> white.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20748 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-27 20:31:41 +00:00
Mattia Barbon
d7c40406e6 Don't leave the wxStaticBox hanging around after wxStaticLine
destruction.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20747 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-27 20:28:51 +00:00
Chris Elliott
e6275f8d02 Borland makefiles for contrib keeping output apart
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20746 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-27 13:43:30 +00:00
Jouk Jansen
dc3b0532ee Committing in .
OpenVMS complie issues
 +
 src/generic/statline.cpp : setup should be runned before first #ifdef

 Modified Files:
 	wxWindows/src/generic/descrip.mms
 	wxWindows/src/generic/statline.cpp
 	wxWindows/src/motif/descrip.mms wxWindows/src/x11/descrip.mms
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20744 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-27 06:09:38 +00:00
Julian Smart
983d2e1414 More style fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20743 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-26 22:59:24 +00:00
Julian Smart
e0b9ad2982 Further border style corrections.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20742 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-26 22:15:25 +00:00
Gilles Depeyrot
245abf09bf ignore dll build output directories
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20741 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-26 20:41:36 +00:00
Julian Smart
3fcea4b10b Include missing.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20739 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-26 19:25:15 +00:00
Václav Slavík
96aba1e942 clarify using embedded XRC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20738 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-26 16:20:54 +00:00
Chris Elliott
2cedc12a6a Borland makefiles now keep output apart
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20737 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-26 11:34:39 +00:00
Chris Elliott
ba0d56c3c2 fix SF bug 742496
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20736 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-26 10:23:03 +00:00
Julian Smart
a5ae8241de Allow printing objects to be passed a wxWindow, not a wxFrame
(vestigial remains of older wxWin version)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20735 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-26 09:55:28 +00:00
Chris Elliott
9f6df75d32 dialogs sample now works with digitalmars
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20734 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-26 09:17:31 +00:00
Vadim Zeitlin
a9103a81be fix m_Matches overflow if Compile() is called more than once (bug 742236)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20733 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-25 20:28:01 +00:00
Václav Slavík
7df93c2deb fix _() for wxUSE_INTL==0 case
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20729 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-25 11:18:28 +00:00
Václav Slavík
c53207a546 added CompareAccelString function
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20728 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-25 11:18:13 +00:00
Vadim Zeitlin
90985bdec4 added a link to the Wiki page explaining MSVC++ install process
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20727 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-24 22:27:36 +00:00
Stefan Csomor
c69e74885f guarded M_PI declaration
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20726 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-24 21:31:29 +00:00
Mattia Barbon
a5f0148111 Removed obsoleted files from vc.t.
Regenerated some makefiles/project files.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20725 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-24 20:23:12 +00:00
Mattia Barbon
29d0a26e65 Compilation/warning fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-24 20:07:22 +00:00
Mattia Barbon
7bb2947d52 Added --enable-accessibility switch to configure
(off by default). Fixed makefile for the accessibility
sample.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-24 20:06:46 +00:00
Mattia Barbon
a538c1c36f wxMotif now uses src/x11/region.cpp, change makefiles accordingly.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20722 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-24 20:01:32 +00:00
Mattia Barbon
148b44a1e7 Used wxRegion code from wxX11.
Removed update rect list from wxWindow
(not necessary anymore).
  Simplified and corrected clipping region handling
in wxWindowDC. Stopped wxWindowDC::DoBlit from
destroying the clipping region.
  Simplified wxPaintDC code.
Added wxWindow::DoCreateScrollBar helper function.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20721 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-24 19:41:05 +00:00
Julian Smart
69108ccb4e Removed wxHTMLHelpControllerBase (putting the
implementation into wxExtHelpController.
wx/helphtml.h now includes wx/html/helpctrl.h.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20720 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-24 11:20:39 +00:00
Stefan Csomor
33a74b19c0 reflected latest file movements...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20718 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-24 07:42:56 +00:00
Stefan Csomor
4457f32a77 removed DoGetSize implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20717 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-24 07:39:01 +00:00
Stefan Csomor
7052b16ded removed carbon printing code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20716 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-24 07:37:05 +00:00
Stefan Csomor
26b9b4e12a comments added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20715 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-24 07:35:06 +00:00
Stefan Csomor
8d4f85ce8d two fixes for CW/Mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20714 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-24 07:30:50 +00:00
Julian Smart
b39dbf34b8 Applied patch [ 736322 ] Remove TWINE support, merge it in Wine.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20713 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-23 19:16:45 +00:00
Julian Smart
d726047819 Applied patch [ 738821 ] Allow more features to be turned off
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20712 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-23 18:59:07 +00:00
Julian Smart
3443393889 Applied patch [ 736321 ] Compile error for src/msw/textctrl.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20711 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-23 18:56:14 +00:00
Julian Smart
404749841f Applied patch [ 742452 ] wxPrintDialogData: can't set PD_PAGENUMS
Applied patch [ 742446 ] wxPrintDialogData::GetAllPages always returns TRUE


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20710 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-23 18:38:12 +00:00
Gilles Depeyrot
9946aa4bf0 removed print.cpp from list of Mac files and regenerated files.lst
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20707 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-23 18:18:42 +00:00
Mattia Barbon
bef8d4810d MinGW compilation fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20697 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-22 20:51:36 +00:00
Mattia Barbon
092276a865 Correct wxCommandEvent.IsChecked() when generated from
a checkable menu item.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20696 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-22 20:39:28 +00:00
Mattia Barbon
94e785e128 Remove duplicate wxEmptyString declaration.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20695 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-22 20:36:33 +00:00
Stefan Csomor
b9c102317d deactivating wxSTAY_ON_TOP patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20694 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-22 19:43:08 +00:00
Robin Dunn
5aed9d5067 Fix page positioning when the tabs are on a side different than
wxNB_TOP by choosing margins dynamically instead of always using fixed
margin sizes.  Also remove unnecessary large internal borders
(although they can be reactivated by flipping an #if.)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20689 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-21 22:41:01 +00:00
Julian Smart
92647cb718 Added pngs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20688 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-21 22:02:54 +00:00
Julian Smart
0a4c16d6c4 Test using transparency in menu bitmaps.
Better, but still shows background when menu item selected.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20687 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-21 22:01:31 +00:00
Julian Smart
c0cb30dc8f Applied patch [ 731656 ] Owner draw menu icons
Benjamin I. Williams


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20685 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-21 19:07:02 +00:00
Julian Smart
f3466c5537 Applied patch [ 739401 ] gtk_init() has to be called before gdk_threads_enter()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20684 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-21 18:54:27 +00:00
Julian Smart
1fdf858b87 Applied patch [ 740012 ] GetKeyState returns 16-Bit value on WindowsNT
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20683 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-21 18:43:03 +00:00
Julian Smart
0fc7f695ce Applied patch [ 740071 ] Make tiff errors/warnings use wxLog functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20682 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-21 18:25:24 +00:00
Mattia Barbon
732c0bfdff Stop the ApplicationShell from being managed (and thus show
on the screen as a "normal" window).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20681 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-21 16:50:46 +00:00
Julian Smart
deda94c5b4 Noted that the preview object is deleted by the frame.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20680 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-21 15:45:57 +00:00
Julian Smart
e6c96a7ca4 Applied patch [ 689188 ] adds wxToolBar::GetToolPos
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20679 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-21 15:27:39 +00:00
Julian Smart
b5db27fe1e Fixed simple border style on wxListCtrl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20677 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-21 07:40:56 +00:00
Julian Smart
5024483dd0 A fix to prevent mungeing of the config file after reading in
entries (say, just one entry in one group), then adding entries
to a different group.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20676 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-20 21:45:04 +00:00
Stefan Csomor
1be0560eff DoGetSize implementation corrected
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20671 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-19 18:49:11 +00:00
Stefan Csomor
746d758297 switch to pImpl pattern for mac printing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20670 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-19 18:45:01 +00:00
Stefan Csomor
5f965f0b41 DoGetSize overrides
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20669 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-19 18:33:36 +00:00
Stefan Csomor
1da7f7a5be switch to pImpl pattern for mac printing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20668 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-19 18:27:10 +00:00
Stefan Csomor
8a5b9f0807 switch to pImpl pattern for mac printing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20667 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-19 18:22:03 +00:00
Václav Slavík
a71b82dda9 compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20666 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-19 16:46:27 +00:00
Václav Slavík
876262caf1 allow untranslated accelerators, too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20665 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-19 16:45:47 +00:00
Julian Smart
a37e4a071c Corrected some wxAccessible mistakes
Implemented some SplitterWindowAccessible functions
in sample


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20664 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-19 14:00:18 +00:00
Julian Smart
067ad8205c Added list of possible slogans for wxWindows stuff
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20663 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-19 07:40:25 +00:00
Julian Smart
c2d48b36a6 Added a backport item and items to the todo list
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20662 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-19 07:36:47 +00:00
Roger Gammans
b4bfd0fa63 * Prevent miminum and actual row and col sizes going below the
minimum acceptable row size.
   This should fix sf.net bug #645734


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20661 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-18 20:15:17 +00:00
Roger Gammans
b8d24d4edd * Apply patch #735595. Add miminumAcceptable{Height,Width}
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20660 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-18 19:49:43 +00:00
Stefan Csomor
b233688254 no message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20659 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-18 15:23:41 +00:00
Roger Gammans
ff699386b9 * Fix logical error in m_overflow attribute merging
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20658 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-18 15:07:40 +00:00
Stefan Csomor
f243e00b4b no message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20657 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-18 12:08:49 +00:00
Julian Smart
8ad9ca97bb Don't prepend directory to filename for shortcuts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20656 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-18 09:20:42 +00:00
Stefan Csomor
a1fea40ec6 not needed anywhere
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20655 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-18 07:58:39 +00:00
Stefan Csomor
20cd7383dd UMAPr.. calls for classic only
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20654 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-18 07:43:03 +00:00
Mattia Barbon
76208c7ef6 Remove dead code. Factor out duplicated code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20653 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-17 20:14:07 +00:00
Mattia Barbon
719e7f81cc Update changes.txt.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20652 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-17 19:52:58 +00:00
Mattia Barbon
3f3071dcd5 Compilation fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20651 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-17 19:51:02 +00:00
Julian Smart
7051e6c79c Corrected wxScrollBar style
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20650 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-17 09:30:00 +00:00
Stefan Csomor
8868ab3313 finding papersizes allows for 1 mm tolerance
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20649 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-17 07:45:47 +00:00
Stefan Csomor
b47d37a99f temporary fix for carbon (problems under OS 9)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20648 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-17 07:44:04 +00:00
Julian Smart
ba8c70bb2e Wizard now validates as well as doing data transfer when
pressing Back or Next


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20647 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-16 21:21:53 +00:00
Stefan Csomor
cfb00da4c4 carbon printing extended
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20646 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-16 20:39:24 +00:00
Stefan Csomor
e99cc06dc6 ValidateOrCreate added for wxMac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20645 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-16 20:36:37 +00:00
Stefan Csomor
056541fab7 added cw support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20633 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-16 16:15:58 +00:00
Václav Slavík
92337e39b9 unicode compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20632 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-15 22:38:32 +00:00
Julian Smart
c09615b8ed An attempt to make the notebook sizer report its size
correctly under Windows, otherwise you get a huge gap
at the bottom if fitting to the content of the page.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20631 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-15 22:15:25 +00:00
Stefan Csomor
c91a2f7e67 forgot to commit project file for CW before
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20630 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-15 09:31:52 +00:00
Julian Smart
6390284bfa Doc fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20629 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-14 21:31:03 +00:00
Robin Dunn
46a5010a06 Acutally use the m_maxChars parameter value instead of ignoring it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20628 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-14 20:50:55 +00:00
Robin Dunn
7c5e6fc68e Changes allowing for proper KEY_DOWN and CHAR events for wxGTK2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20627 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-14 19:25:18 +00:00
Jouk Jansen
44d511ad4d Committing in .
wxMOTIF for OpenVMS compilation updates

 Modified Files:
 	wxWindows/lib/vms.opt wxWindows/src/motif/descrip.mms
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20626 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-14 06:52:46 +00:00
Mattia Barbon
9a595736d0 Derive wxStaticText from wxStaticTextBase, remove dead code/code
duplication. Likewise for wxStaticBitmap.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20624 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-13 20:02:15 +00:00
Mattia Barbon
882b1d8d0e Fixed bug with notebook pages not showing (probably affected any
wxWindow/wxPanel child when panel was hidden and then shown again).
The bug was introduced by the fix for hidden windows still intercepting
mouse events.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20622 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-13 19:52:58 +00:00
Mattia Barbon
f332a5a0f8 Lesstif compilation fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20621 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-13 19:50:33 +00:00
Julian Smart
932b55d0d6 Reordered the slow-click test, otherwise it would never
be fired if in row-select more. Also added a ClearSelection,
which was omitted in the changes since 2.4.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20620 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-13 17:45:23 +00:00
Julian Smart
7699361c96 Rationalised style handling in tree control
No longer use WS_EX_WINDOWEDGE since it seems to be obsolete,
and has no effect


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20619 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-13 15:20:50 +00:00
Julian Smart
6678c7f838 Removed obsolete check
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20618 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-13 15:16:54 +00:00
Václav Slavík
f2034f1b6e applied HTML pagebreaks patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20617 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-12 22:33:51 +00:00
Mattia Barbon
6769d0cbf3 Factored out some common code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20616 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-12 20:04:08 +00:00
Mattia Barbon
11eadd92f3 Removed dead code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20614 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-12 19:58:45 +00:00
Mattia Barbon
47be989f6b Implemented copy-on-demand for wxClipboard.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20612 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-12 19:55:35 +00:00
Mattia Barbon
3f85391ea7 Compilation fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20611 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-12 19:54:01 +00:00
Mattia Barbon
0cc1d4ff2a Removed redundant wx<Control>NameStr declarations.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20610 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-12 19:52:43 +00:00
Julian Smart
22a746d726 Apply correct style variable
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20598 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-12 10:09:40 +00:00
Julian Smart
975ee4b4a9 Auto 3D border if parent is panel or dialog
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20597 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-12 10:04:46 +00:00
Vadim Zeitlin
be9b0663d9 reworked vertical scrolling code to correspond better to what I think is correct (horizontal case is unchanged)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20596 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-12 08:35:53 +00:00
Vadim Zeitlin
0cf5de1133 changed handling of range/max scrolling parameter and cleanup (removed Win16 code)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20595 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-12 08:33:48 +00:00
Vadim Zeitlin
5eae641dd6 fixed bug in WinStruct<> ctor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20594 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-11 23:25:14 +00:00
Vadim Zeitlin
bffa02ff6f added WinStruct<>
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20593 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-11 22:43:28 +00:00
Vadim Zeitlin
c4e54c6d80 moved missing constants definitions to their right place in wx/msw/missing.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20592 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-11 22:41:23 +00:00
Vadim Zeitlin
3136f782be wxTextBuffer ctor bug and something else
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20591 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-11 22:29:31 +00:00
Vadim Zeitlin
51e257806f init m_isOpened in ctor (bug 736208)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20590 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-11 22:28:16 +00:00
Chris Elliott
7db39dd699 digital mars fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20589 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-11 20:02:40 +00:00
Gilles Depeyrot
4431a7322b We don't put main() in the library any more.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20588 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-11 19:31:00 +00:00
Gilles Depeyrot
e8617760b0 assert is raised when using the thread sample (which works) so the test is
probably not so easy. Can widget callbacks be triggered from child threads
and, if so, for which widgets?


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20587 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-11 19:28:13 +00:00
Gilles Depeyrot
edf6a06341 disable use of #pragma interface under Mac OS X
GNU compiler included with Mac OS X 10.2 (Jaguar) as well as available updates
contain a bug concerning #pragma interface handling that can only be worked
around by not using them (and they are not necessary anyways)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20586 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-11 18:08:58 +00:00
Gilles Depeyrot
e8117e7f5c updated CodeWarrior 5.3 xml project with latest changes to file list
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20585 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-11 18:08:51 +00:00
Gilles Depeyrot
3399051ee9 disable use of #pragma interface under Mac OS X
GNU compiler included with Mac OS X 10.2 (Jaguar) as well as available updates
contain a bug concerning #pragma interface handling that can only be worked
around by not using them (and they are not necessary anyways)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20584 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-11 17:57:23 +00:00
Gilles Depeyrot
d5f3e1ebf5 added assert to detect attempt to install idle handler from widget callback
not called from main thread


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20583 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-11 16:44:48 +00:00
Vadim Zeitlin
275a63e3a6 use alpha channel in Blit() as well and not only in DrawBitmap()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20582 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-11 11:14:35 +00:00
Vadim Zeitlin
c9fcf5817f many fixes for PNG reading after recent alpha changes; grey scale images reading was in particular broken
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20581 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-11 10:49:27 +00:00
Vadim Zeitlin
edb57eaebe added missing typename
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20580 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-11 01:04:10 +00:00
Vadim Zeitlin
70cd62e95c TRUE/FALSE -> true/false
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20579 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-11 01:01:36 +00:00
Vadim Zeitlin
aaa9782834 wxImage::Create() should be bool, not void
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20578 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-11 00:59:42 +00:00
Vadim Zeitlin
d9ef4e06ed added LVSICF_NOSCROLL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20576 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-10 12:55:39 +00:00
Vadim Zeitlin
8fa97a5819 compilation fix for BCC (and probably others)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20575 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-10 12:53:08 +00:00
Vadim Zeitlin
73baf01ab3 compilation fix (sorry)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20574 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-10 11:43:39 +00:00
Vadim Zeitlin
82eba82658 fix wxDisplay initialization (patch 735303)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20573 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-10 00:57:51 +00:00
Vadim Zeitlin
41b78190ad recognize ESC[APE] in menu accel strings (patch 733967)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20572 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-10 00:56:07 +00:00
Vadim Zeitlin
a8fbc9cc57 fall back to wxAlphaBlend() if ::AlphaBlend() didn't work
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20571 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-09 23:57:34 +00:00
Vadim Zeitlin
4b8ab2f93a use DIB, not DDB, when converting from an image with alpha channel
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20570 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-09 23:54:16 +00:00
Vadim Zeitlin
edf8e8e071 memory for alpha channel was over allocated by a factor of 3
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20569 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-09 23:52:20 +00:00
Vadim Zeitlin
2f22353e37 fixed iterator over wxImage with alpha channel
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20568 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-09 23:50:43 +00:00
Julian Smart
2c92d7e398 Removed a spurious print statement
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20567 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-09 23:32:55 +00:00
Julian Smart
ff38281aa1 Fixed crash in EnsureVisible in wxTR_HIDE_ROOT mode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20566 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-09 21:48:24 +00:00
Vadim Zeitlin
243dbf1a50 Insert() patch from John Labenski
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20564 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-09 12:58:28 +00:00
Vadim Zeitlin
b5f159ac91 use wxDEPRECATED around GetNoHistoryFiles()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20563 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-09 12:04:01 +00:00
Jouk Jansen
d171743ed3 Committing in .
Fixes needed for OpenVMS

 Modified Files:
 	wxWindows/include/wx/x11/private.h
 	wxWindows/include/wx/x11/privx.h
 	wxWindows/src/common/dbtable.cpp
 	wxWindows/src/common/descrip.mms
 	wxWindows/src/motif/bmpmotif.cpp
 	wxWindows/src/motif/descrip.mms wxWindows/src/x11/bitmap.cpp
 	wxWindows/src/x11/utilsx.cpp
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20562 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-09 10:53:52 +00:00
Stefan Csomor
1925be658c fixing some redrawing bugs overpainting foreign window's area under OS9, reintroduced TransitionWindow calls
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20560 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-09 07:16:30 +00:00
Stefan Csomor
76a60a81b4 typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20559 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-09 07:13:32 +00:00
Stefan Csomor
4506b24a05 masking out wxOK and friends from dialog style in order to avoid clashes with miniframe windows flags
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20558 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-09 07:12:53 +00:00
Stefan Csomor
140f2012cd reintroduced m_isBeingDeleted
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20557 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-09 07:12:02 +00:00
Vadim Zeitlin
7af6b69e74 wxDocManager::GetNoHistoryFiles() renamed to GetHistoryFilesCount()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20556 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-09 00:02:58 +00:00
Vadim Zeitlin
1162d0a257 wxGLCanvas doesn't derive from wxScrolledWindow since quite some time already despite of the docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20555 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-08 23:46:34 +00:00
Vadim Zeitlin
50ef440170 undid patch which was supposed to allow thread recreation and added instead an assert preventing it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20554 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-08 23:38:05 +00:00
Robin Dunn
faad0a95e1 Prevent scrolling back to the top when calling SetItemCount again
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20547 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-08 06:29:39 +00:00
Robin Dunn
7e6874c014 Fix GetItemRect to offset by the header window, if present.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20546 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-08 02:17:52 +00:00
Robin Dunn
45ff80056c Added #if TARGET_CARBON around shaped window stuff
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20542 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-07 20:31:29 +00:00
Julian Smart
0bbeb42dde Ensure grid components don't have borders
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20541 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-07 20:16:41 +00:00
Václav Slavík
139c5871c9 fix for multiple initialization
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20538 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-07 19:03:10 +00:00
Robin Dunn
b63fce942f fixed compile errors
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20537 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-07 18:08:01 +00:00
Robin Dunn
ef5df12bdf Also merge the m_overflow attribute
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20536 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-07 17:50:08 +00:00
Mattia Barbon
dd38c87578 Implemented wxBitmapDataObject.
Implemented generic wxDataObject support in wxClipboard.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20534 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-07 17:24:11 +00:00
Julian Smart
27c7397611 More style issues
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20533 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-07 16:07:36 +00:00
Julian Smart
31e7e89fdd Fixed style glitches
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-07 15:03:11 +00:00
Julian Smart
6ae0daf6c5 Added WS_VISIBLE style
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20530 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-07 14:02:38 +00:00
Chris Elliott
05d3cd45e5 update for digital mars - resolve externals in shell and winsock libs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20528 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-07 13:18:45 +00:00
Chris Elliott
44e8cf38f1 missing externals for digital mars
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20527 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-07 13:09:14 +00:00
Chris Elliott
e81cf2eb73 update makefile.sc for digital mars to use relative paths
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20526 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-07 11:41:21 +00:00
Chris Elliott
f5705f7e3e update makefile.sc for digital mars
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20525 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-07 11:20:32 +00:00
Chris Elliott
f0fc695806 remove if defs for DigitalMars as suggested by Vadim
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20522 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-07 09:14:14 +00:00
Julian Smart
acd42a2395 Removed some commented-out code
Added border improvements to changes.txt


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20520 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-07 08:32:57 +00:00
Robin Dunn
8adb5d4557 Added inline setters for wxTreeEvent so we don't need to add new
friends anytime someone wants to generate wxTreeEvents


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20513 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-07 00:30:37 +00:00
Robin Dunn
0b887a21d4 allow the base class to participate in the CanPaste decision
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20512 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-06 23:43:39 +00:00
Julian Smart
fe3d9123c6 Revamped border handling.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20511 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-06 21:57:32 +00:00
Chris Elliott
957f03699b possible fix for templates with digitalmars
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20502 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-06 15:08:52 +00:00
Julian Smart
59fac08507 Removed obsolete 16-bit import libs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20500 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-06 09:44:36 +00:00
Robert Roebling
6d18407fa4 Compilo.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20499 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-06 08:52:14 +00:00
Chris Elliott
ce51dc7507 update digitalmars makefile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20498 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-06 08:13:18 +00:00
Chris Elliott
025bbf5bcf update install docs for MSW (Borland & Digital Mars)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20497 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-06 08:08:07 +00:00
Julian Smart
8161ba085f Doc clarifications
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20496 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-06 07:53:46 +00:00
Robert Roebling
bcc4c54184 Penguin Unicode compilation fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20494 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-06 07:22:13 +00:00
Robert Roebling
2b5b932572 OpenGL for GTK2 fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20493 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-06 07:21:22 +00:00
Robert Roebling
84e7741af6 Splitter clean up.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20492 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-06 07:20:14 +00:00
Mattia Barbon
1ae2e0af5a Fix for crash on exit.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20488 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-05 20:51:18 +00:00
Robert Roebling
7f5f144a81 Upported fix to mouse capture event handling.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20486 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-05 08:42:22 +00:00
Julian Smart
d60913555c Initialised m_isBeingDeleted -- I don't know how anything
worked without it...


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20482 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-04 21:09:58 +00:00
Julian Smart
1dfc3cda6e Setting state to STATE_NEW in wxThread::Create
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20481 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-04 20:51:09 +00:00
Mattia Barbon
eb6fa4b425 Changed the way ApplicationShells are used: now wxMotif
creates one ApplicationShell per display, and makes top
level windows popup childs of the ApplicationShell.
  Removed a couple of unused variables from wxApp.
  Replaced some calls to wxGetDisplay with XtDisplay(widget)
or event.xany.display, and some others with wxGlobalDisplay
(the latter changes are just eyecandy).
  Used wxFlushEvents where appropriate.
  Fixed (hopefully) wxFindAcceleratorText and wxFindAccelerator;
for now the new version is still disabled, awaiting further testing.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20474 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-04 17:40:46 +00:00
Mattia Barbon
b0feedc5db Avoid crash during global destruction.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20473 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-04 17:35:44 +00:00
Julian Smart
cfbf444a53 Applied updated patch [ 731719 ] Owner draw font leak/overuse
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20472 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-04 17:12:58 +00:00
Julian Smart
1d105d58f4 Added defined() to directive
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20470 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-04 15:50:27 +00:00
Julian Smart
84969af72d Added some missing copyright lines
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20469 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-04 14:11:45 +00:00
Mattia Barbon
28169f14ec Fix for the fact that unmapped but managed widgets
intercept mouse events even if they are not visible.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20466 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-04 12:19:57 +00:00
Mattia Barbon
44f5b99574 Pass events to pushed event handlers.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-04 12:17:15 +00:00
Robin Dunn
819451b6c7 Reversed the meaning of black and white in wxRegion::ConvertToBitmap
so it matches the menaning of black and white in wxMask


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20464 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-03 17:56:30 +00:00
Julian Smart
40f359cafe Applied [ 731578 ] wxThread state bugfix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20462 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-03 15:41:57 +00:00
Stefan Csomor
2cee82b781 corrected pageRect for non carbon targets, removed commented obsolete sections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20461 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-03 15:41:03 +00:00
Julian Smart
afd366a714 Added items to todo list and publicity doc
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-03 15:34:28 +00:00
Julian Smart
dddcedbf7f Mentioned: Applied patch [ 701238 ] Added BLOB support to dbtable.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20459 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-03 15:32:23 +00:00
Julian Smart
5962bdb85a Applied patch [ 701238 ] Added BLOB support to dbtable.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20458 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-03 15:28:18 +00:00
Julian Smart
4b8f491298 Applied patch [ 726350 ] wxGrid - MovePageDown()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20457 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-03 15:17:38 +00:00
Julian Smart
cb27bab1e6 Applied patch [ 731846 ] GTK Print Options
Print options were omitted from print command


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20455 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-03 15:11:55 +00:00
Julian Smart
69e66915e3 Mentioned wxImage::Scale improvement
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20454 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-03 15:07:55 +00:00
Julian Smart
ff865c132a Applied patch [ 730686 ] wxImage::Scale speed improvements
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20453 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-03 15:06:07 +00:00
Julian Smart
8c18da2e41 Applied patch [ 731195 ] More #if/#endif's to build a smaller library
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20451 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-03 13:50:04 +00:00
Julian Smart
384c96533e Doc corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20450 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-03 13:45:00 +00:00
Julian Smart
c754f4aa00 Mentioned docview changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20449 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-03 13:39:04 +00:00
Julian Smart
19b4237945 Applied patch [ 731719 ] Owner draw font leak/overuse
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20443 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-03 11:56:38 +00:00
Julian Smart
9d4a05be9b Applied some of patch [ 622660 ] consistent behaviour for docview.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20442 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-03 11:44:40 +00:00
Julian Smart
a36d790a7b Added m_isOpened variable to simulate opening/closing
the clipboard on wxMSW


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20439 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-02 17:48:17 +00:00
Chris Elliott
dec2b82453 digital mars updated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20438 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-02 14:48:05 +00:00
Chris Elliott
76c718091a typo fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20437 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-02 14:05:03 +00:00
Chris Elliott
1e3c12d774 implement wxHAVE_RAW_BITMAP
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20436 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-02 12:58:00 +00:00
Julian Smart
7a311019db Corrected a memory leak I introduced in the last patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20435 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-02 12:49:07 +00:00
Chris Elliott
e6c13db6ec fix bug to make Borland compile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20434 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-02 12:47:07 +00:00
Chris Elliott
7581faf616 digital mars updated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20433 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-02 12:16:28 +00:00
Chris Elliott
bf978f96c2 Macro swicth from SC to SYMANTEC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20432 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-02 11:30:18 +00:00
Chris Elliott
384f18ed35 info about digitalmars in header
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20431 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-02 11:28:38 +00:00
Chris Elliott
2bdf715463 Macro swicth from SC to SYMANTEC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20430 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-02 11:21:03 +00:00
Chris Elliott
0b3f29b359 fix for digitalmars header
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20429 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-02 11:19:20 +00:00
Chris Elliott
e7e793efd3 fix for digitalmars header
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20428 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-02 11:13:07 +00:00
Vadim Zeitlin
33caa9948d make accelerators for bitmap menu items work (patch 626048)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20427 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 23:15:09 +00:00
Vadim Zeitlin
20f18ea193 compilation fix when WXUNUSED(arg) == arg
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20426 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 22:53:59 +00:00
Vadim Zeitlin
eb76cc945b added (back?) CROSS support (patch 658234)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20425 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 22:36:46 +00:00
Vadim Zeitlin
4d0d77affc show the taskbar icon even after Explorer restart (patch 723532) + some code cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20424 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 20:49:34 +00:00
Vadim Zeitlin
660b190686 fixed spurious debug error message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20423 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 20:41:59 +00:00
Vadim Zeitlin
d694de12e7 compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20421 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 20:03:32 +00:00
Vadim Zeitlin
2eefae6efa better handling of transparent colour in wxImage conversion (patch 726208)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20420 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 19:59:40 +00:00
Vadim Zeitlin
8e0a317c4f stddef.h required for IRIX compilation (patch 721388)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20419 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 19:47:16 +00:00
Vadim Zeitlin
e8c6a69c9d set the index for BEGIN_DRAG events (patch 726308)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20418 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 19:38:42 +00:00
Vadim Zeitlin
e9c8005b47 only set replace string for replace events (patch 728415)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20417 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 19:35:47 +00:00
Vadim Zeitlin
8ab40c5227 fixes for working with mono bitmaps (patch 728768)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20416 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 19:31:30 +00:00
Vadim Zeitlin
10545ca4e7 fix for a crash in ~wxLocale and incorrect GetLanguage() return value (patch 729758)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20413 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 17:06:41 +00:00
Vadim Zeitlin
adf9e09990 missing #if's needed for compilation with some wxUSE_XXX set to 0 (patch 728413)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20412 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 16:52:17 +00:00
Vadim Zeitlin
ea39221211 fix a problem with Unicows (patch 720542)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20411 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 16:46:28 +00:00
Vadim Zeitlin
2015f2b308 fix the wrong size of the first page when it's added to the notebook (replaces patch 728770)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20410 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 16:39:59 +00:00
Vadim Zeitlin
a452af5e68 allow raw access to a part of the image only (faster when using alpha)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20409 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 16:37:51 +00:00
Julian Smart
b72b192036 Implemented delayed closing of an existing document
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 15:40:39 +00:00
Julian Smart
1cf1238db4 Reset m_lastItem to avoid crashes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20407 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 15:38:55 +00:00
Julian Smart
3e3a7b97ec Implemented delayed selection (e.g. after adding the root
or deleting items) so that the event handler will be
called appropriately.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20406 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 15:37:30 +00:00
Julian Smart
5c180caf1b Removed backslashes in verbatim example
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20403 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 13:37:59 +00:00
Vadim Zeitlin
444d3e017e read numbers even if they're followed by spaces
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20402 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 11:08:22 +00:00
Vadim Zeitlin
2423ef22ee compilation fix for Unicode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20401 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-05-01 00:48:58 +00:00
Václav Slavík
cf5e94bc6d fixed Norwegian Bokmal code to conform to new ISO 639-2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20400 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-30 22:48:01 +00:00
Stefan Csomor
c0ef107e6b correcting non-unicode char conversion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20399 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-30 20:19:29 +00:00
Stefan Csomor
4241baae44 removing unused flags
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20398 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-30 20:17:13 +00:00
Stefan Csomor
dd49c69170 include "ToolUtils.h" for LoWord and friends
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20397 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-30 19:01:55 +00:00
Vadim Zeitlin
ef33c57631 fixed configure for autoconf 2.5x (patch from Olly Betts)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-30 13:31:09 +00:00
Julian Smart
00013f54a2 Allow for +/- in E part
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20393 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-30 12:44:03 +00:00
Julian Smart
7102c47355 Allow 'e' or 'E' in numeric text.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20391 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-30 09:43:03 +00:00
Julian Smart
e0f4c2c88b Use the context help XPM for MSW too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20390 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-30 08:41:31 +00:00
Robin Dunn
6a7e641161 Shaped window support for wxMac, plus a wxSTAY_ON_TOP fix from Egon
<e_lub@yahoo.com>   wxMac requires knowledge before Create that SetShape
will be called so I also added the wxFRAME_SHAPED style flag.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20383 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-30 00:39:15 +00:00
Vadim Zeitlin
e97251c58e compilation fix for !USE_PCH
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20382 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-29 22:39:02 +00:00
Mattia Barbon
f734e1dad1 MinGW compilation fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20381 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-29 21:15:28 +00:00
Julian Smart
91fd135b38 Fixed brace problem.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20380 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-29 10:26:52 +00:00
Chris Elliott
5d19b6acd1 fix filefn conditional error
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20379 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-29 09:36:05 +00:00
Chris Elliott
f15dcc0158 update to make digitalmars compile/link libraries
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20378 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-28 21:12:02 +00:00
Chris Elliott
3e6477f4ab SF patch [ 708702 ] Wide character filename support for BCC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20377 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-28 21:09:58 +00:00
Chris Elliott
a3bb1d14a5 SF patch [ 708702 ] Wide character filename support for BCC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20376 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-28 20:58:29 +00:00
Mattia Barbon
6cee329241 Blind compilation fix in the case where libXpm
isn't available.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20375 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-28 19:55:18 +00:00
Robin Dunn
cd01e3646a SF Patch #728691, dangling pointer fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20374 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-28 18:44:27 +00:00
Chris Elliott
9a55c2ee2a fix wxChar error in docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20369 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-28 15:09:59 +00:00
Vadim Zeitlin
b8985048a5 fix for Unicode compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20368 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-28 11:51:53 +00:00
Julian Smart
2f930c8501 Doc suggestions applied
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20367 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-28 10:37:08 +00:00
Julian Smart
01d0d0e57d Fixed [ 728819 ] memory leak in ipcbase.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20366 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-28 10:33:05 +00:00
Vadim Zeitlin
6298b8d0b2 another blind fix for wxX11 compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20365 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-28 02:08:57 +00:00
Vadim Zeitlin
1d2f48b681 updated to use the new raw bitmap API
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20364 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-28 02:04:09 +00:00
Vadim Zeitlin
b9bcaf117a new template-based more flexible and hopefully more efficient raw bitmap implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20363 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-28 01:46:05 +00:00
Vadim Zeitlin
96df9ed9b1 create tab ctrl with WS_VISIBLE style
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20362 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-27 21:49:22 +00:00
Vadim Zeitlin
bb793b0cfb *really* fixed searching in sorted arrays
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20359 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-27 15:17:46 +00:00
Vadim Zeitlin
13a6fb3a25 don't hardcode wxCHOICEDLG_DIALOG_STYLE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20356 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-27 13:30:01 +00:00
Stefan Csomor
a722995e62 moving rollover check, was causing hangs upon termination in case ->top was 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20353 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-26 20:18:20 +00:00
Stefan Csomor
7f7a740336 transition window calls had some problems with layering, switched back to hide and show native calls
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20352 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-26 20:01:43 +00:00
Mattia Barbon
e6be3e7c1b Implemented wxEntryStart, wxEntryInitGui, wxEntryCleanup.
Removed code already in wxTopLevelWindowBase.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20351 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-26 12:54:45 +00:00
Václav Slavík
4f1f340199 added xh_wizrd.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20350 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-25 22:34:25 +00:00
Mattia Barbon
77e0239d76 Patch [ 726877 ]: Remove /GX- from makevc.env
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20349 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-25 20:42:25 +00:00
Mattia Barbon
94923d5127 Compilation fix for wxBase.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20348 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-25 20:26:32 +00:00
Mattia Barbon
9a8ffaddeb Warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20347 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-25 20:24:35 +00:00
Chris Elliott
d56327cd06 update to make digitalmars compile/link libraries
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20346 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-25 18:55:46 +00:00
Mattia Barbon
8a73873fa0 Not used anymore.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20345 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-25 12:13:31 +00:00
Vadim Zeitlin
c8011d7377 fixed bug recently introduced in wxSortedArray::Index()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20344 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-25 12:06:25 +00:00
Vadim Zeitlin
0cad49b42c blind fix for wxMotif compilation with wxHAVE_LIB_XPM == 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20342 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-25 11:10:45 +00:00
Jouk Jansen
c5a2f27478 Committing in .
#undef before #def in order to suppress redefinition warnings

 Modified Files:
 	wxWindows/contrib/include/wx/deprecated/setup.h
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20341 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-25 06:06:08 +00:00
Mattia Barbon
56cc1400c7 COmpilation fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20340 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-24 22:17:14 +00:00
Mattia Barbon
a28fda44bc Added wxWizard handler to Makefile.in.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20339 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-24 22:15:21 +00:00
Chris Elliott
d26fad77f7 update to make digitalmars compile/link html\test sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20338 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-24 21:56:03 +00:00
Chris Elliott
7960c7b4c5 update to make digitalmars compile/link make clean
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20337 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-24 21:37:23 +00:00
Chris Elliott
2cea8d2558 update to make digitalmars compile/link make clean
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20336 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-24 21:16:56 +00:00
Chris Elliott
ee252037cf update to make digitalmars compile/link make clean
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20335 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-24 21:08:21 +00:00
Chris Elliott
e9196d9c63 update to make digitalmars compile/link html sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20334 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-24 21:07:02 +00:00
Chris Elliott
5bfebd013e update to make digitalmars compile/link image sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20333 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-24 21:02:07 +00:00
Robert Roebling
50382578c1 Another attempt to fix the freeze while mouse capturing.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20332 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-24 17:41:10 +00:00
Robert Roebling
6e7d0063bc Upported minor fix for font dialog.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20330 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-24 14:35:29 +00:00
Jouk Jansen
b41f79f59d Committing in .
reinstalled one wxvariant instance which is used in dbgrid.cpp

 Modified Files:
 	wxWindows/src/common/variant.cpp
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20329 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-24 13:51:53 +00:00
Jouk Jansen
96f4ca4201 Committing in .
wizard.cpp contains "deprecated" code

 Modified Files:
 	wxWindows/src/generic/wizard.cpp
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20328 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-24 13:50:25 +00:00
Jouk Jansen
6804a3f719 Committing in .
Updated OpenVMS compile support

 Modified Files:
 	wxWindows/descrip.mms wxWindows/setup.h_vms
 	wxWindows/src/common/descrip.mms
 	wxWindows/src/generic/descrip.mms
 	wxWindows/src/gtk/descrip.mms
 	wxWindows/utils/dialoged/src/descrip.mms
 Added Files:
 	wxWindows/contrib/src/deprecated/descrip.mms
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20327 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-24 13:48:51 +00:00
Chris Elliott
56689e1b3a explicit cast for digital mars to use OLE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20326 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-24 11:15:36 +00:00
Robin Dunn
368a4a4784 Prevent a Gtk-CRITICAL message when Remove()ing a menu from a menubar
that has submenus.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20319 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-23 21:08:42 +00:00
Robin Dunn
1bc54e3257 Fix setting the scrollbar positions (SF Bug #721159)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20318 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-23 21:04:26 +00:00
Chris Elliott
465b213606 digital mars compiler updated - test no longer needed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20316 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-23 15:29:57 +00:00
Robert Roebling
33688b28c3 Typo in mouse event code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20315 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-23 06:37:05 +00:00
Chris Elliott
4ded51f2fa update to make digitalmars compile/link image sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20314 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-22 21:12:30 +00:00
Chris Elliott
0caac3b4a9 update to make digitalmars compile/link image sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20313 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-22 21:02:29 +00:00
Václav Slavík
9e82cf9876 modification to wxSizer handler needed for wxWizard
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20312 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-22 20:26:06 +00:00
Václav Slavík
a84c0558d8 tooltips should be translated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20311 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-22 20:25:58 +00:00
Václav Slavík
e5db28fd7c added wxWizard handler to XRC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20310 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-22 20:25:50 +00:00
Václav Slavík
b867ed682d fixed typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20309 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-21 11:23:02 +00:00
Robin Dunn
9e730a7876 Updated Scintilla to 1.52 (on the trunk this time too)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20296 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-19 20:00:02 +00:00
Chris Elliott
ce8897bbff update to docs now minimal sample compiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20292 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-19 19:49:58 +00:00
Chris Elliott
059b646254 update to make digitalmars link minimal sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20291 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-19 19:42:44 +00:00
Chris Elliott
48bac87b56 update to make digitalmars compile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20290 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-19 19:28:19 +00:00
Chris Elliott
cc972ac67e update to make digitalmars link - I really don't like the extern C declarations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20289 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-19 19:25:28 +00:00
Chris Elliott
4ce1efe123 update to make digitalmars compile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20287 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-19 18:15:17 +00:00
David Elliott
e668651137 Separated the Objective-C to C++ association code into the new header
ObjcAssociate.h.  That leaves ObjcPose.h for its original purpose and
avoids including it from any header files.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20286 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-19 17:51:50 +00:00
David Elliott
fb45bb1fb2 #include "wx/cocoa/ObjcPose.h" from the source in preparation for removing
it from the already included headers


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20285 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-19 17:40:46 +00:00
Gilles Depeyrot
5822d04ada corrected for resource compilation with Apple Developer Tools
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20284 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-19 08:17:23 +00:00
Gilles Depeyrot
475b09e7a7 updated Project Builder minimal sample project
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20283 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-19 08:16:33 +00:00
Gilles Depeyrot
9bd1404d20 removed superfluous casts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20282 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-19 08:15:44 +00:00
Gilles Depeyrot
90771fe589 added extern "C" for include of mach/mach.h to fix link errors with PB
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20281 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-19 08:14:46 +00:00
Gilles Depeyrot
06ea1f023e removed unused variables
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20280 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-19 08:13:29 +00:00
Gilles Depeyrot
692db919db corrected warning (missing const)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20279 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-19 08:12:15 +00:00
Gilles Depeyrot
90b2e44c5b updated CodeWarrior 5.3 project with latest changes (files added and removed)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20278 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-19 08:06:10 +00:00
Gilles Depeyrot
0b93f59c51 updated Project Builder project with latest changes (files added and removed)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20277 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-19 07:58:07 +00:00
Vadim Zeitlin
abd9b10e39 make choice dialog resizeable by default
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20268 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-17 22:23:49 +00:00
Mattia Barbon
632cfe57c5 Reverted my last change, since it's ugly and does not
work anyway.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20266 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-17 20:26:52 +00:00
Mattia Barbon
8fb29449e7 Fixed dist target; added relevant wxX11 files to wxMotif.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20265 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-17 20:23:38 +00:00
Julian Smart
de996ce082 Can switch between clipping code mroe easily
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20264 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-17 20:22:59 +00:00
Julian Smart
ca5020c229 Darkened preview background for Mac (else get stripey background)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20263 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-17 20:18:01 +00:00
Julian Smart
46b24ef914 Have dark colour for preview canvas under Mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20261 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-17 20:04:33 +00:00
Julian Smart
feea0f9569 Don't call MakeModal on the Mac -- it leaves
frames with non-working menubars if there
are multiple top-level frames


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20260 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-17 19:48:02 +00:00
David Webster
4b460879a2 Final update to catch the dropping of prop out of generic.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20258 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-17 18:53:01 +00:00
David Webster
0474c6efc6 Get rid of this file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20253 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-17 16:58:21 +00:00
Julian Smart
c4e98b3311 Disabling code that causes display glitch on Mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20252 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-17 16:17:42 +00:00
Julian Smart
29676ca095 Part of a patch I forgot to commit previously: demonstrating selection
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20251 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-17 16:15:30 +00:00
Julian Smart
e8737b66aa Added some items
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20250 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-17 16:11:52 +00:00
Julian Smart
f77e1e5d0d Use wxLogTrace instead of wxLogDebug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20249 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-17 16:10:29 +00:00
David Webster
6e348b12dc More OS/2 updates reflecting changes in 24 Branch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20248 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-17 15:47:35 +00:00
Julian Smart
9dff851556 Use sizers, not constraints
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20247 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-17 15:37:44 +00:00
Chris Elliott
95bf19daf8 fix build for watcom
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20246 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-17 12:19:45 +00:00
Chris Elliott
fc17ff87a1 rebuild filelist for borland compiler (datacmn changes)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20245 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-17 11:37:36 +00:00
Julian Smart
94dc12383d Removed old files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20244 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-17 09:48:24 +00:00
Václav Slavík
e23279e1a7 fixed memory leak
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20243 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-16 22:33:54 +00:00
Chris Elliott
8174870699 fix for removal of dosyacc.c
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20238 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-16 13:15:09 +00:00
Chris Elliott
3faedeb065 fix for removal of dosyacc.c
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20237 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-16 12:01:14 +00:00
Julian Smart
2dab56e91e Added wxAccessible documentation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20235 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-16 09:40:09 +00:00
Julian Smart
12fddefcbb Removed y_tab.c dependency
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20234 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-16 07:57:56 +00:00
David Webster
4f5c180eba OS/2 updates to catch the port up with the rest of the library.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20226 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-15 21:08:31 +00:00
David Webster
b823f462a1 OS/2 updates for lowercase bool values
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20225 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-15 21:04:36 +00:00
Stefan Csomor
756c27045d added direct HICommand updating
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20224 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-15 19:39:44 +00:00
Vadim Zeitlin
8e7cd32b33 use symbolic constants instead of raw numbers for mouse buttons
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20223 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-15 19:00:14 +00:00
Stefan Csomor
249aad307f Skipping Right_down event if generated context menu event is not handled
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20222 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-15 17:07:27 +00:00
Vadim Zeitlin
753f2cb491 extracted duplicated code from src/*/data.cpp in a common file (forgot to commit before; sorry)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20221 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-14 23:29:09 +00:00
Vadim Zeitlin
eaa6852f39 another update, only 7 untranslated strings left
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20220 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-14 20:17:51 +00:00
David Elliott
68698f0308 When saving the editable state, use the real state (m_editable)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20218 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-14 18:34:06 +00:00
Mattia Barbon
a8680e3e0e Code clanup: removed some useless/unused member
variables/functions from wxWindow; used
wxTranslateMouseEvent instead of duplicating its
functionality.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20217 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-14 17:27:28 +00:00
David Elliott
69dbb7098b Added InitMouseEvent helper method (like wxMSW)
Implemented the following mouse handlers:
mouseDown, mouseDragged, mouseUp, mouseMoved
Added stubs for the following mouse handlers:
mouseEntered, mouseExited, rightMouseDown, rightMouseDragged, rightMouseUp,
otherMouseDown, otherMouseDragged, otherMouseUp


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20216 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-14 03:54:32 +00:00
David Elliott
fe802fc2ed Catch and forward the following mouse related events:
mouseMoved, mouseEntered, mouseExited
mouseDown, mouseDragged, mouseUp
rightMouseDown, rightMouseDragged, rightMouseUp
otherMouseDown, otherMouseDragged, oterMouseUp


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20215 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-14 03:51:59 +00:00
David Elliott
b67d3706d9 Added NSEvent class for wxCocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20214 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-14 03:48:54 +00:00
David Elliott
e5a87141b4 Use (generic) text dialog for wxCocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20213 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-14 01:53:55 +00:00
Michael Bedward
d477aa2bb3 Added -w-inl to CFG section to suppress the annoying messages about event and radiobox functions not being inlined.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20212 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-14 01:21:26 +00:00
Vadim Zeitlin
fa275e8648 support raw access to DDBs as well as DIBs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20211 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-14 01:03:41 +00:00
Vadim Zeitlin
8ffc8f1fb9 added debug checks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20210 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-14 01:03:04 +00:00
Vadim Zeitlin
3692b94818 fixes for Win95 (where GetObject(DIBSECTION) is broken)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20209 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-14 00:59:48 +00:00
Vadim Zeitlin
30ad0a1469 don't crash if an image is not found
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20208 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-14 00:46:59 +00:00
Julian Smart
4455332266 Test for result of searching for wxID_CANCEL button
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20207 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 22:56:09 +00:00
Julian Smart
8d60dc8aa0 Don't use focus if NULL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20205 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 22:38:57 +00:00
Vadim Zeitlin
e340193bb6 removed accidentally left #ifdef WATCOM
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20204 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 22:11:42 +00:00
Vadim Zeitlin
06d0938900 renamed GlobalHandle class to GlobalPtr to avoid conflict with the Win32 function
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20203 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 21:58:59 +00:00
Julian Smart
70ddb200c1 Set wxPendingEvents to NULL after deleting it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20202 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 21:08:39 +00:00
Vadim Zeitlin
7af64aace1 don't crash in UngetRawData() if it is invalid; fixed rounding errors in alpha premultiplying
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20200 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 16:23:40 +00:00
Vadim Zeitlin
878711c01c implemented fallback for AlphaBlend() for the systems not supporting it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20199 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 15:59:49 +00:00
Vadim Zeitlin
cc37ebe090 don't return garbage from GetRawBitmap
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20198 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 15:58:47 +00:00
Vadim Zeitlin
98ea6b7d6a added missing wxBitmap(w, h, dc) ctor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20197 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 15:52:14 +00:00
Vadim Zeitlin
69440cd26c added the list of supported accelerators
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20196 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 15:36:35 +00:00
Vadim Zeitlin
12338247ae better alpha test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20195 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 14:11:01 +00:00
Vadim Zeitlin
106c33bb1d fix alpha premultiplying
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20194 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 14:09:00 +00:00
Mattia Barbon
a968cb805f Removed conflict markers.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20193 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 14:07:51 +00:00
Vadim Zeitlin
13c13ecbbf premultiply the colours by the alpha value
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20192 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 14:02:17 +00:00
Mattia Barbon
e34dcad290 Compilation fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20191 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 14:01:28 +00:00
Mattia Barbon
510bf1ec20 Fix wxMotif build.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20190 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 13:58:01 +00:00
Vadim Zeitlin
e1b998ce2d no changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20189 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 13:55:53 +00:00
Vadim Zeitlin
10b41b53cb added wxBitmap::UseAlpha()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20188 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 13:45:20 +00:00
Vadim Zeitlin
bc9f356d52 added test image for alpha
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20187 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 13:44:35 +00:00
Stefan Csomor
bfe9ffbc8f supported controls on toolbar
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20186 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 11:57:48 +00:00
Stefan Csomor
c2fa4af423 implemented constructor for rect from point and size
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20185 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 11:55:25 +00:00
David Elliott
e67cc398eb Include datacmn.cpp in wxCocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20184 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 06:29:13 +00:00
David Elliott
b79297d243 Removed everything since it's now in datacmn.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20183 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 06:10:03 +00:00
David Elliott
d5ca66298a Implemented Raise()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20182 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 05:40:01 +00:00
Vadim Zeitlin
84a667dc06 fixed unused variable warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20181 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 02:22:52 +00:00
Vadim Zeitlin
376b18eac7 fixes necessary for the default GUI log target to be used in Debug mode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20180 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 02:22:00 +00:00
Vadim Zeitlin
8c9564b392 fixed yet another printf() format warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20179 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 02:11:12 +00:00
Vadim Zeitlin
fba1b53b87 fixed printf() format warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20178 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 02:08:03 +00:00
Vadim Zeitlin
a25d51afbc fixed a printf() format warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20177 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 01:48:17 +00:00
Vadim Zeitlin
f7155274cc fixed a harmless warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20176 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-13 01:26:43 +00:00
Václav Slavík
30a8c81ddb backport wxZipFsHandler fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20175 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 22:30:48 +00:00
Václav Slavík
a42c2eece0 removed outdated docs (fixes bug #698139)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20174 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 22:29:04 +00:00
Václav Slavík
ddaf55663f fixed relative filenames inside ZIP archive
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20173 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 22:28:51 +00:00
Václav Slavík
d0b50ad939 better error message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20172 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 22:28:13 +00:00
Václav Slavík
5571f3d3d7 applied patch to fix tooltips charset
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20171 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 18:40:48 +00:00
Václav Slavík
e624f5ba66 compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20170 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 18:38:30 +00:00
Václav Slavík
1a31de36a4 added LDFLAGS_GL to makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20169 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 18:38:10 +00:00
Václav Slavík
707a378282 compilation fix for gcc
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20168 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 18:37:20 +00:00
Václav Slavík
96c0a5167b added Georgian translation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20167 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 18:37:05 +00:00
Stefan Csomor
732b3a752b redraw fixes for OSX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20166 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 18:05:17 +00:00
Stefan Csomor
2027c6db5b adaption to deprecated files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20165 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 18:03:12 +00:00
Vadim Zeitlin
100cf085fb fixed Moving() documentation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20164 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 13:16:20 +00:00
Vadim Zeitlin
a364b95710 added Ukrainian translation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20163 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 13:15:27 +00:00
David Elliott
7875262d29 DECLARE_WXCOCOA_OBJC_CLASS now declares types as struct objc_object* so that
they are exactly the same type for C++ and Objective-C++ code.  This allows
them to be used as arguments to functions, especially virtuals, because
the C++ name mangling will be the same.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20162 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 04:17:37 +00:00
Vadim Zeitlin
89e3b3e448 fixed syntax error in configure.in; regenerated configure after recent changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20161 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 01:18:57 +00:00
Vadim Zeitlin
ff101af5b8 Unix OpenGL build fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20160 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 01:13:07 +00:00
Vadim Zeitlin
021fde89a6 don't suppose that libs GL and GLU arei n the same directory (bug 699289)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20159 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 01:11:49 +00:00
Vadim Zeitlin
260d684906 trying to fix threads compilation options: use -Ethreads under UnixWare, don't use -pthreads under IRIX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20158 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 01:02:02 +00:00
Vadim Zeitlin
1d2e5548c4 UnixWare compilation fix (explicitly declare pthread_mutexattr_settype)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20157 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 00:53:37 +00:00
Vadim Zeitlin
ef6a2689b4 user dash and container focus patches
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20156 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 00:47:45 +00:00
Vadim Zeitlin
918dc51991 fixes return values of wxSemaphore::TryWait() and WaitTimeout() to behave as documented
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20155 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 00:43:28 +00:00
Vadim Zeitlin
a5e3c24d7b UnixWare compilation fix (include sys/filio.h)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20154 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 00:35:14 +00:00
Vadim Zeitlin
4a8900f257 added UnixWare recognition
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20153 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 00:32:22 +00:00
Vadim Zeitlin
66f2199449 Unixware compilation fix (#undef index)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20152 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 00:22:45 +00:00
Vadim Zeitlin
d26d975463 fixed CheckTransparency() for RGBA images
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20151 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 00:03:16 +00:00
Vadim Zeitlin
7ce4426ae3 2.4 -> 2.5; build in another directory than source one; mention --disable-shared
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20150 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-12 00:02:28 +00:00
Vadim Zeitlin
dca9009bcc unstable doesn't mean it crashes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20149 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-11 23:56:27 +00:00
Václav Slavík
851ccc357b don't forget to backport manifest and wxLocale fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20148 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-11 23:24:05 +00:00
Václav Slavík
5db932052d added WindowsXP manifest directly into application's resources
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20147 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-11 23:22:39 +00:00
Václav Slavík
65dc921d3f don't report setlocale failure if trying to set Unicode-only language
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20146 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-11 23:20:36 +00:00
Robin Dunn
ef4a634b1b Fixed wxMac's wxTextCtrl::SetSelection so that (-1,-1) will select the
entire value like other ports do.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20145 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-11 22:38:56 +00:00
Vadim Zeitlin
4365da58c8 fixed bug with searching in sorted arrays
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20143 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-11 22:05:24 +00:00
Chris Elliott
dc7219d2e1 correct Watcom build instructions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20137 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-11 14:31:24 +00:00
Vadim Zeitlin
6eb37239e0 use on gdk_draw_lines() call instead of multiple gdk_draw_line() ones (patch 717012)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20136 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-11 14:14:23 +00:00
Vadim Zeitlin
e2a5251d01 fixes for user dash handling (patch 717736)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20135 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-11 14:02:32 +00:00
Vadim Zeitlin
3251b83466 containers don't always accept focus (patch 718913)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20134 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-11 13:48:27 +00:00
Julian Smart
bd4a25bc50 Moved wxDateTime::TIME_T_FACTOR into datetime.cpp to
prevent VC++ confusion


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20133 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-11 11:01:39 +00:00
Václav Slavík
66010e8d0d don't use deprecated macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20131 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-10 23:01:42 +00:00
Vadim Zeitlin
bfe835d075 regenerated with tmake after adding datacmn.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20127 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-10 21:08:29 +00:00
Vadim Zeitlin
6a76384f2d extracted duplicated code from src/*/data.cpp in a common file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20126 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-10 20:33:17 +00:00
Vadim Zeitlin
11968fef9c don't use deprecated IntToString function
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20121 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-10 18:14:38 +00:00
Vadim Zeitlin
e12c92c2f7 moved wxFloat/DoubleToStringStr from src/*/data.cpp to src/common/utils.cpp; took all String <-> Numebr functions inside WXWIN_COMPATIBILITY_2_4
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20118 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-10 13:08:46 +00:00
Vadim Zeitlin
b1a28eef7c set krc to wxKILL_OK on success
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20115 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-10 00:14:17 +00:00
Gilles Depeyrot
19bb2f5bbe if we are not in the main thread, output the assert directly and trap since
dialogs cannot be displayed


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20114 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-09 20:30:33 +00:00
Mattia Barbon
1eb1eae717 Compilation fix (missing headers).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20103 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-09 17:07:25 +00:00
Mattia Barbon
f7f78039d2 Add tests for XShape extension API in configure,
and implements wxTLW::SetShape for wxMotif and wxX11
using the aforementioned extension.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20102 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-09 16:58:33 +00:00
Mattia Barbon
aae0472bf3 Use the wxBitmap implementation from wxX11
in wxMotif; solves various bugs related to wxMask
handling (and effectively adds a lot of wxMask
functionality previously missing).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20101 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-09 16:44:27 +00:00
Julian Smart
507db85d59 Include winable.h for NotifyWinEvent.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20095 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-09 15:16:54 +00:00
Vadim Zeitlin
4f4d07644f update from NY
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20094 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-09 14:48:04 +00:00
Michael Bedward
1eb9ddb9f8 Fixed TARGETDEF usage. Now defined in the parent make to use include a DEF file in the build. Is there some better way of doing this ?
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20093 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-09 13:19:40 +00:00
Robin Dunn
6d460f765d Turn off all border styles for the inner window
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20077 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-08 22:24:14 +00:00
Vadim Zeitlin
20e4242f93 yet another versionof Greek translations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20076 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-08 18:51:36 +00:00
Mattia Barbon
c3b3654e9b Compilation fix for !wxUSE_TOOLTIP.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20075 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-08 18:45:38 +00:00
Mattia Barbon
be8a703f96 Removed ".wxr fixes for Unicode" item, since wxr have been
removed from 2.6-to-be, and deprecated in 2.4.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20074 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-08 18:37:30 +00:00
Vadim Zeitlin
59a9a6bcc6 added missing default argument value
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20073 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-08 13:52:31 +00:00
Vadim Zeitlin
2e491df9fa printf() format warning fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20072 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-08 11:28:57 +00:00
Vadim Zeitlin
c9ee09924f wxMac doesn't use wxTaskBarIcon
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20071 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-08 10:53:23 +00:00
Václav Slavík
4eb38db745 backported some things
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20069 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 22:17:13 +00:00
Václav Slavík
cf21abe595 deprecated XMLID and friends macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20067 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 22:15:03 +00:00
Stefan Csomor
643a0828da explicit app modality in SetModal
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20062 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 20:37:30 +00:00
David Elliott
376c2fba79 After delete wxPendingEventsLocker; wxPendingEventsLocker = NULL; so that
the wxEvent code doesn't try to use it while cleaning up.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20060 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 18:06:46 +00:00
Mattia Barbon
a29c6824c2 Add GetDrawable convenience function that returns m_bitmap
if the wxBitmap is monochrome or m_pixmap if the wxBitmap
is polichrome.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20059 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 17:39:00 +00:00
Mattia Barbon
1ca61fa7a7 No sashtest.xbm to be found.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20058 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 17:35:22 +00:00
Mattia Barbon
02a48e3b0a Fix some GCC 3.2 -O2 warnings.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20057 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 17:32:19 +00:00
Mattia Barbon
9ce8d6a2b0 Moved m_visual* wxApp[X11] members used by wxBitmap and
wxColour into a new wxXVisualInfo structure, and moved code
to initialize it to a new src/x11/utilsx.cpp file (utility
functions shared by wxMotif and wxX11).
  Added (currently unused) code in wxMotif to
retrieve wxXVisualInfo; it will be used when wxMotif
is switched to bitmap.cpp from wxX11.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20056 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 17:15:11 +00:00
David Elliott
13fc3db40e Do some sanity checks in DoDrawText to make sure we actually have some glyphs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20055 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 04:04:10 +00:00
David Elliott
ce50c4d1c6 Added stub for wxIcon(const char **xpm)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20054 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 03:38:12 +00:00
David Elliott
2894667fa4 Relocate DeviceToLogical[XY], add stub for LogicalToDevice[XY]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20053 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 03:31:38 +00:00
David Elliott
64440d7734 Added preliminary resource fork support for wxCocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20052 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 03:14:35 +00:00
David Elliott
de6dab5f7c Allow wxUSE_DIRDLG and wxUSE_TREECTRL for wxCocoa (both are generic)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20051 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 03:05:24 +00:00
David Elliott
01f5f03e7f X11-specific code doesn't work so well on wxCocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20050 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 02:57:12 +00:00
David Elliott
8d0eaedd07 Use the generic tree control for wxCocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20049 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 02:49:17 +00:00
David Elliott
b400d50ac6 There is no task bar icon for Cocoa (yet).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20048 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 02:21:10 +00:00
David Elliott
6c342f3ff1 Whoops! Might want the headers too.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20047 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 01:44:11 +00:00
Vadim Zeitlin
e40bef9f54 option for using DirectX in wxDisplay
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20046 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 00:38:06 +00:00
Vadim Zeitlin
06efac1f8d support for optionnally using DirectX for display manipulations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20045 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-07 00:30:18 +00:00
Julian Smart
d515343ca2 Removed redundant fixme comment
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20044 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-06 20:47:59 +00:00
Mattia Barbon
b229c8a911 Remove (now) pointless checks for __WXX11__/__WXMOTIF__ in
src/x11/utils.cpp and src/motif/utils.cpp.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20043 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-06 20:39:45 +00:00
Julian Smart
06cc1fb991 Applied [ 716064 ] Second part of wxFileCtrl & wxDirCtrl patch
by John Labenski


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20042 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-06 19:57:51 +00:00
Vadim Zeitlin
5015e02267 fix bug with not accepting write-only formats in d&d
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20040 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-06 19:40:54 +00:00
Vadim Zeitlin
673e612079 merged 2 overloaded functions into a single membersections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20038 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-06 18:37:06 +00:00
Julian Smart
409bd44e7b More patches done
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20037 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-06 17:59:59 +00:00
Vadim Zeitlin
efa14cf20a added assert to check that notebook page does have notebook as parent; removed duplicated AddPage()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20035 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-06 17:46:48 +00:00
Julian Smart
01562b11f2 Applied some of them
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20024 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-06 15:48:34 +00:00
Julian Smart
edb247200c Reordered functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20018 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-06 15:14:50 +00:00
Julian Smart
5ae8a62ccf Removed backported fix from toback24.txt
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20003 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-06 11:38:43 +00:00
David Elliott
1f6c4d4746 Changed dc.cpp to dc.mm and dcclient.cpp dcclient.mm for wxCocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20001 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-06 00:55:41 +00:00
David Elliott
891d0563f7 Replace dc.cpp with dc.mm and dcclient.cpp with dc.mm
Update app.mm to call wxDC text system startup and cleanup code


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20000 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-06 00:54:38 +00:00
David Elliott
ec4e4a1415 Use the wxStaticBox::GetBordersForSizer method to get border information
on wxCocoa.  Perhaps the other ports should do this?


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19999 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-06 00:51:44 +00:00
David Elliott
2ace5cf632 Added GetBordersForSizer(int *bordertop, int *borderOther)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19998 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-05 23:26:30 +00:00
David Elliott
ddf7346ac0 Commented out most the the wxLogDebug
Basic implementation of Refresh() does not take into account eraseBack or Rect


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19997 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-05 23:23:50 +00:00
David Elliott
c29e274378 Cocoa still uses the generic file dialog (see include/wx/filedlg.h)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19996 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-05 23:16:34 +00:00
David Elliott
82de126c11 Added declarations for NSLayoutManager, NSTextContainer, and NSTextStorage
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19995 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-05 23:06:24 +00:00
Václav Slavík
842f5c94c9 regenerated makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19994 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-05 22:30:39 +00:00
Václav Slavík
fb29dcac01 partially working wxTaskBarIcon for X11
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-05 22:27:47 +00:00
Václav Slavík
3eae0c0b43 added taskbarcmn.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19992 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-05 22:25:36 +00:00
Václav Slavík
4f5583b5c5 removed obsoleted virtuals from docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19991 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-05 22:22:01 +00:00
Václav Slavík
4bc6471261 updates to taskbar sample to use events instead of virtuals and work under Unix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19990 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-05 22:20:52 +00:00
Julian Smart
b78ce094c7 Fix for getting all frames from GIF animation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19989 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-05 18:59:50 +00:00
Mattia Barbon
62ad3cb358 Derive wxBitmap from wxBitmapBase.
Move code from LoadFile/SaveFile/Create* to
bitmap handlers.
  Implemented wxBitmap::GetSubBitmap.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19987 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-05 12:11:05 +00:00
Julian Smart
b71e94da10 Added a const for CW compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19985 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-05 10:38:18 +00:00
Chris Elliott
833e610da7 fix accidental overwrite of Makefile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19983 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-05 10:34:19 +00:00
Julian Smart
a2f9a63688 APplied patch [ 705301 ] Don't send event for wxSplitter::Unsplit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19982 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-05 10:33:10 +00:00
Chris Elliott
ddea7eb614 changes to watcom makefiles for OpenWatcom
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19981 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-05 10:14:07 +00:00
Václav Slavík
6344162a81 removed files with empty stubs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19980 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-04 23:00:08 +00:00
Václav Slavík
f5b1bb5e76 preparation for X11 wxTaskBarIcon version:
1. moved events to common file from MSW specific
2. deprecated virtual functions in favour of event handlers
3. removed taskbar.cpp files from port that don't implement it


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19979 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-04 22:47:58 +00:00
Václav Slavík
6af507f77e preparation for X11 wxTaskBarIcon version:
1. moved events to common file from MSW specific
2. deprecated virtual functions in favour of event handlers
3. removed taskbar.cpp files from port that don't implement it


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-04 22:33:47 +00:00
Robin Dunn
4e6beae5ec Handle checkable items the right way in all cases
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19977 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-04 22:21:38 +00:00
Julian Smart
0a2c03984a Applied [ 714756 ] Clean warnings on build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-04 13:13:46 +00:00
Roger Gammans
a967f0480b * rename maxOnOverflow parameter to CoordToRowOrCol() to clipToMinMax
* ensure CoordToRowOrCol() range is  0 -> nMax if clipOnMinMax is set
                                and -1 -> nMax if clipOnMinMax is not set

 * check on uses of YToRow() / XToCol() and replace with
   calls internalYToRow() / internalXToCol() removing any external
   overflow handling where appropriate.

 * Add tests for overflow to prevent sending 'off grid' label events,
   would be indistinguishable from CornerLabel events.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19972 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-03 21:14:07 +00:00
Robin Dunn
02822c8cdf Correction to my new menu code: handle submenus on menubar menus
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19970 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-03 21:01:52 +00:00
Vadim Zeitlin
6568015373 start of Greek translations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19969 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-03 20:54:58 +00:00
Robin Dunn
a01fe3d6d2 Fixed menu event propogation to be consistent across platforms, and
with the docs.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19967 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-03 18:39:20 +00:00
Julian Smart
91ce04cf9e Fixed OnSetCursor for Mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19966 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-03 18:17:05 +00:00
Julian Smart
e5c4c38b5d Applied patch [ 709618 ] fixes drawing position in wxPrinterDC::DoBlit()
wxPrinterDC::DoBlit() in current CVS is drawing to the
source coords rather than the dest coords. This patch
corrects that.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19965 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-03 13:19:15 +00:00
Julian Smart
23254b138a Applied patch [ 708582 ] wxGenericFileDialog & expose generic wxFileCtrl
By John Labenski (jrl1)

The wxFileCtrl is a nice little widget that when
married with a wxDirCtrl makes for a simple, easy to
use explorer type widget.

include/wx/generic/filedlgg.h, src/generic/filedlg.cpp

Expose wxFileData and wxFileCtrl, rename wxFileDialog
to wxGenericFileDialog, it can be used in MSW now.

wxFileCtrl - added sorting for clicking in the col headers.
let wxGenericFileDialog manage it's own static text.
allow for viewing of root (for showing drives) in MSW
wxFileData - moved enum for wxFileCtrl col's into it.
added IsDrive and use bitmask instead of a slew of
bools for IsDir...

A couple bug fixes for wxFileCtrl for MSW, c:\.. is not
a file and can't be stated, show drives.

Basicly its the same as before, with no change besides
sorting for GTK. For MSW, the wxFileCtrl works in a few
more cases, hopefully all the MGL etc code was
untouched and should still work.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19964 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-03 13:10:08 +00:00
Julian Smart
72c30d6572 Applied patch [ 706329 ] [wxMac] Fixes wxGetLocalTimeMillis
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19963 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-03 13:01:59 +00:00
Julian Smart
715d7d25b3 Applied patch [ 708016 ] Setup0.h updated according wxMSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19962 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-03 12:58:46 +00:00
Julian Smart
5a618a14c6 Applied patch [ 708377 ] Make NET (smapi.cpp) UNICODE compatible
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19961 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-03 10:42:56 +00:00
Julian Smart
333a6456b9 Fixed the wxX11 crash bug on opening a dialog that has a parent,
by only refreshing subwindows that are not top level windows.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19959 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-03 10:20:46 +00:00
Julian Smart
695c21b118 Unicode-enabled the STC sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19958 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-03 09:09:06 +00:00
Vadim Zeitlin
736f28f8d8 corrected description of auto-created wxConfig ownership (patch from bug 706868)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19950 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 23:20:21 +00:00
Vadim Zeitlin
49fca29840 backport wxFileConfig fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19949 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 22:16:59 +00:00
Vadim Zeitlin
128e0251fe fixed problem of deleting an entry added to an initially empty root group
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19948 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 22:16:23 +00:00
Vadim Zeitlin
3908fe9b00 corrected a slightly confusing wxTE_LEFT/CENTRE/RIGHT styles description
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19947 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 21:21:25 +00:00
Mattia Barbon
d03bb63c48 Remove dulicated call to wxBitmap::Init/CleanupStandardHandlers,
which is already called from a module in bmpbase.cpp.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19946 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 20:59:59 +00:00
Mattia Barbon
be05eab690 wxMotif does not have wxBitmapDataObject.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19945 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 20:57:48 +00:00
Mattia Barbon
6799385e8c Partial fix for mono wxMemoryDC not working.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 20:55:33 +00:00
Mattia Barbon
395cb311cf Remove deprecated methods use.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 20:52:47 +00:00
Mattia Barbon
236de6f62a No real change.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 20:50:21 +00:00
Mattia Barbon
59e034c034 Make wxIcon more independent from wxBitmap implementation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19941 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 20:48:57 +00:00
Mattia Barbon
70aac632a1 Some updates for wxMotif documentation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 20:46:36 +00:00
Julian Smart
739e366ac9 Applied patch [ 705212 ] wxTextCtrl::SetSelection() for wxGTK2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 17:55:42 +00:00
Mattia Barbon
2408a0d514 Regenerated configure scripts.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 17:18:40 +00:00
Julian Smart
8dda7c0c48 Applied [ 703017 ] TreeCtrl sample build fails when using generic control
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19937 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 14:40:35 +00:00
Julian Smart
5e7ea8ebb2 Correction to last patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19935 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 14:25:23 +00:00
Julian Smart
3037523a7c Applied patch [ 700313 ] Allow wxUSE_OWNER_DRAWN = 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 14:18:51 +00:00
Julian Smart
873a543b62 Applied [ 700293 ] FL Unicode patches
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19933 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 14:14:13 +00:00
Julian Smart
db657fb29a Removed treectrl.h inclusion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19932 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 13:54:01 +00:00
Julian Smart
6e9b4c7659 Applied patch [ 694561 ] FL Release build DLL include path
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19931 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 11:15:10 +00:00
Julian Smart
083f7497d3 Applied some of patch [ 688466 ] MSVC7 build & bug fixes
by Darren Whobrey


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19930 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 11:10:37 +00:00
Stefan Csomor
baf3431445 better spacing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19929 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 08:32:19 +00:00
Stefan Csomor
aa812de01b setting origin to printable area for wxMac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19928 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-02 08:21:29 +00:00
David Elliott
8ea5271ee7 Implemented wxWindowCocoa::Cocoa_drawRect
Implemented drawRect override in wxPoserNSView
Declared pure virtual wxCocoaNSView::Cocoa_drawRect
Made wxWindowCocoa::Cocoa_FrameChanged protected (unrelated)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19922 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-01 17:59:54 +00:00
David Elliott
edd2522079 Changed defined(__DARWIN__) to (defined(__DARWIN__) && defined(__WXMAC__))
wxGTK running on Darwin certainly can not use the CF process callback
and I don't plan for wxCocoa to use it either.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19921 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-01 17:16:59 +00:00
David Elliott
b0abe9eeec Removed deprecated parser.o from cocoa.t, reran tmake
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19919 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-01 16:44:48 +00:00
David Elliott
a6bc93cc74 Wrap file with #if wxUSE_SPINBTN instead of #if 1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19918 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-04-01 15:50:40 +00:00
Václav Slavík
5c451707f3 XRC's unknown widget container handles removal of the widget now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19909 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-31 22:02:15 +00:00
Mattia Barbon
973ac5bbb2 Regenerated some more makefiles/filelists.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19908 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-31 19:33:06 +00:00
Mattia Barbon
dfa2a1d92b Removed Motif files that only contained stubs
for functionality that is:
1 - not Motif, but rather OS/WM specific:
    wxJoystick, wxWave, wxTaskBarIcon
2 - not provided natively by Motif:
    wxColourDialog, wxFontDialog, wxDirDialog,
    wxMetafile
3 - obsolete: wxTab*
4 - cruft: helpxxxx.h/cpp

  Regenerated configure and some filelist.txt-dependent
files.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19907 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-31 19:23:10 +00:00
Mattia Barbon
e8508ea8a8 Removed a deprecated wxBitmap constructor, and some
more deprecated code. Move XCreateInsensitivePixmap to
bmpbase.cpp (another step towards removing
src/motif/bitmap.cpp).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19906 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-31 18:53:47 +00:00
Mattia Barbon
01772f64db Fix filelist.t to work with the packaged tmake.exe, which
does not include 'lib.pm'.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19905 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-31 18:49:50 +00:00
Julian Smart
df32effb39 Added 'deprecated' files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19904 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-31 16:19:31 +00:00
Julian Smart
3b69115cba More deprecated code updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19903 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-31 14:46:00 +00:00
Julian Smart
965b4f87d9 Removed old classes and functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19902 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-31 14:00:53 +00:00
Julian Smart
170e293d9f Added distrib file for deprecated classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19901 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-31 10:27:41 +00:00
Julian Smart
7c9955d147 More deprecated class mods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19900 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-31 10:24:36 +00:00
Julian Smart
f2638c97a5 Deprecated lib tweaks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19899 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-31 08:09:56 +00:00
Julian Smart
2fc9385a2c Removing deprecated classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19898 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 22:47:33 +00:00
Julian Smart
642067e02a Removed treelay sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19897 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 22:21:37 +00:00
Julian Smart
7cb81afa43 Removed proplist sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19896 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 22:19:25 +00:00
Julian Smart
4b78db237a Removed resource sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19895 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 22:14:53 +00:00
Julian Smart
c6dafd93ca Deprecated library mods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 21:55:34 +00:00
Julian Smart
3e3a8c40c5 Added project file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19893 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 21:27:31 +00:00
Julian Smart
82e20720c9 Deprecated classes manual
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19892 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 21:21:33 +00:00
Julian Smart
f3aa39c7ac Makefile for deprecated samples
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19891 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 19:48:54 +00:00
Julian Smart
4a3bdee6a9 New location for some deprecated files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19890 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 19:47:55 +00:00
Julian Smart
820893d0d4 New location for more samples
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19889 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 19:36:46 +00:00
Mattia Barbon
ed0c2af3ab No real changes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19888 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 19:36:03 +00:00
Julian Smart
07831c160b New location for proplist sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19887 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 19:35:27 +00:00
Mattia Barbon
66f8b9ace2 Moved wxWindow::SetSizeHints implementation to wxTopLevelWindow,
where it belongs, verified that it works for wxDialog, too.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19886 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 19:34:51 +00:00
Mattia Barbon
ccb234b4d0 Inherit LoadFile and SaveFile from wxTextCtrlBase, reduce
flicker caused by SetValue (the text itself still flickers a
bit, but now borders don't).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 19:32:00 +00:00
Mattia Barbon
fdfd5d49eb Removed dependency on wxTabView.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 19:29:14 +00:00
Mattia Barbon
79fb264130 More native look for wxSpinButton.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19883 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 19:23:10 +00:00
Mattia Barbon
973451afc6 Add bmpmotif.cpp to descrip.mms.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19882 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 19:20:39 +00:00
Mattia Barbon
8768548b81 Create dialog with the correct style.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19881 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 19:18:56 +00:00
Mattia Barbon
b1823f8b46 Applied patch [ 702254 ] Life: Fix to page scrolling
from Hugh Gibson.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19879 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 19:14:00 +00:00
Václav Slavík
d003330ce4 attempt to fix platform property problem on MacOSX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19878 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-30 15:56:31 +00:00
Stefan Csomor
31907d0307 unicode and __MACH__ additions for wxMac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19870 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-29 15:50:13 +00:00
Stefan Csomor
1940f66914 switching to as many MSL wchar implementations as possible for wxMac unicode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19869 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-29 15:44:56 +00:00
Stefan Csomor
64407854c1 cursor event support for mac activated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19868 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-29 15:40:46 +00:00
Stefan Csomor
ed4e170a7a mac unicode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19867 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-29 15:39:14 +00:00
Stefan Csomor
3470af1c9a fixed missing Idle events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19866 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-29 15:07:37 +00:00
Vadim Zeitlin
1cbf0cc6d3 start of Japanese translation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19865 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-29 14:43:02 +00:00
Vadim Zeitlin
085c26ac14 updated Japanese translation, minor changes to the code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19864 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-29 14:19:46 +00:00
Julian Smart
4a9dba0e56 Copyright cleanup
Added shaped sample to scripts


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19863 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-29 13:53:55 +00:00
Julian Smart
f0f7bd8a4f Copyright cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19862 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-29 13:48:25 +00:00
Václav Slavík
6a87168b30 fixed bug #708570: Request 'silver' be allowed as a XPM value
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19861 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-29 10:19:32 +00:00
Robin Dunn
3b3ca9beb8 Typo and compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19860 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-28 23:56:19 +00:00
Robin Dunn
dd1eb4e315 Compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19859 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-28 23:35:47 +00:00
Robin Dunn
2a73612989 Added wxTLW::SetShape and implementations for wxGTK, wxMSW and an
empty stub for wxMac.
Added some generic helpers and a new ctor to wxRegion.
Added samples/shaped.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19858 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-28 23:34:06 +00:00
Robin Dunn
1542ea396a Added wxTLW::SetShape and implementations for wxGTK, wxMSW and an
empty stub for wxMac.
Added some generic helpers and a new ctor to wxRegion.
Added samples/shaped.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19857 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-28 23:05:05 +00:00
Stefan Csomor
7728856b75 simplified definition
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19856 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-28 20:57:33 +00:00
Stefan Csomor
69a3ae88fc better mb2wc conversions for mac unicode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19855 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-28 20:55:23 +00:00
Stefan Csomor
2d2ed20f7b mach-o addition
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19854 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-28 19:18:51 +00:00
Vadim Zeitlin
a1e71b1032 warning fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19853 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-28 17:41:02 +00:00
Stefan Csomor
2c1a331259 unicode fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19852 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-28 17:30:20 +00:00
Stefan Csomor
84e7f94cb0 mach targets added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19851 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-28 16:26:15 +00:00
Stefan Csomor
e49079b2ab no message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19850 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-28 15:36:41 +00:00
Vadim Zeitlin
34415ceaac backport wxFileConfig::DeleteEntry fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19849 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-28 15:32:46 +00:00
Vadim Zeitlin
7e0777dabb added test for wxFileConfig::DeleteEntry
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19848 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-28 15:28:57 +00:00
Vadim Zeitlin
3362e80e71 fixed deleting entries at root level
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19847 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-28 15:25:50 +00:00
Stefan Csomor
a2facb9415 bundle icon
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19846 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-28 15:22:08 +00:00
Stefan Csomor
e9a86b3c00 version support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19845 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-28 15:19:47 +00:00
Julian Smart
fe9c9eb022 Removed pointless Salford C++ support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19844 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-28 09:46:09 +00:00
Julian Smart
61bfe4b0ca Use wxDateTime
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19843 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-28 09:15:01 +00:00
Václav Slavík
5175dbbd9f fixed DrawTextFormatted to work in O(n) instead of O(n^2) if the text doesn't fit into the column
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19842 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-27 23:21:47 +00:00
Stefan Csomor
427ff66291 wxMac Unicode support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19841 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-27 20:33:32 +00:00
Stefan Csomor
44c44c82a3 wxMac Unicode support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19840 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-27 20:21:51 +00:00
Mattia Barbon
3dd709d8c3 FIxed wxRadioBox::Get/SetLabel.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19839 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-27 20:17:27 +00:00
Stefan Csomor
c4e41ce37a wxMac Unicode support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19838 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-27 20:14:39 +00:00
Václav Slavík
76806f5906 fixed loading of resource from ZIP files on MacOS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19837 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-27 20:06:20 +00:00
Mattia Barbon
aae91497f6 Removed some old cruft from wxBitmap, moved wxMotif- and
wxControl-specific functionality (GetXXXPixmap) into a separate
class, and fixed the implementation. Adapted wxStaticBitmap,
wxBitmapButton and wxToolBar to the new situation.
  Various fixes to wxToolBar: Realize does not create buttons
multiple times anymore, use the disabled bitmap as the disabled
bitmap, not as the toggled bitmap for toggle buttons (!),
reposition buttons/controls when a tool is removed/deleted.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19836 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-27 19:40:32 +00:00
Mattia Barbon
fc7ca9b347 Made wxMotif Move/SetSize/DoMoveWindow/DoSetSize
behaviour more consistent with other ports. As a side effect
now wxCalendarControl works correctly under wxMotif, too.
  Fixed wxWindow::ScrollWindow drawing artifacts when child
controls are involved.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19835 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-27 19:34:10 +00:00
Vadim Zeitlin
9ec1ed2a7e corrected the test for number of processors under Linux
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19832 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-27 13:00:04 +00:00
Robin Dunn
2b9e4799b9 SWIGged updates for wxMac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19829 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 22:46:58 +00:00
Robin Dunn
3856ee0ba4 SWIGged updates for wxMSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19828 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 22:46:07 +00:00
Robin Dunn
3100de9921 SWIGged updates for wxGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19827 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 22:45:47 +00:00
Mattia Barbon
2187eef5bb Calling a virtual function from a destructor is not good:
rearranged code to avoid it.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19826 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 22:22:55 +00:00
Mattia Barbon
d8d1818419 SetSelection must not send an event. Fixed an off
by one index, and a crash (probably a Motif bug).
  Improved wxSpinButton appearance.
  Fixed some build warnings here and there in the samples,
removed use of deprecated wxList methods in prntdlgg.cpp, fixed
aot-of-range ID in tipdlg.cpp, fixed some errors detected by
valgrind.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19825 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 22:20:59 +00:00
Robin Dunn
6789bce964 Typo fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19824 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 21:58:31 +00:00
Robin Dunn
e0fb15a1c3 wxMac uses wxCursors now too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19823 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 21:57:43 +00:00
Robin Dunn
2d13837901 GetValue is pure virtual
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19822 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 20:49:14 +00:00
Robin Dunn
bf78c81c04 wxImageHistogram needs WXDLLEXPORT
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19818 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 20:43:09 +00:00
David Elliott
8b611f0eb2 Wrap file with #if wxUSE_SLIDER ... #endif
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19817 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 19:59:07 +00:00
David Elliott
8dfc2d9896 Use #if wxUSE_GAUGE instead of #if 1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19816 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 19:56:29 +00:00
Mattia Barbon
ba2fcb0711 Fix wxSocket under wxMotif.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19815 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 18:32:58 +00:00
Mattia Barbon
51d5ec5408 Compilation fix for non-PCH compilers.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19814 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 18:31:33 +00:00
David Elliott
c176a11a0e Changed #if wxUSE_NEW_GRID to #if wxUSE_GRID (there is no more new grid)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19813 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 18:09:28 +00:00
David Elliott
27397d6682 Implement wxExecute with proper callback on Mac OS X
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19812 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 17:53:12 +00:00
David Elliott
c8023fed76 - Added wxAddProcessCallbackForPid function
- Don't create pipeEndProcDetect on Darwin
- Initialize the wxEndProcessData before installing the callback
- Implement wxAddProcessCallbackForPid for Darwin, the code started life
  as an example from ADC and certainly has its fair share of race
  conditions, but with a few hacks it seems to be working okay.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19811 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 17:46:14 +00:00
Julian Smart
9c712743cb Correction to splittree; removed newgrid sample reference from index.htm
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19809 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 14:13:07 +00:00
Vadim Zeitlin
e08a9b55e6 finally this translation uses traditional Chinese, not simplified (renamed old zh_CN)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19808 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 11:13:04 +00:00
Robin Dunn
a95e8d8b8c wxMac does need radiocmn
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19807 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 04:10:06 +00:00
Robin Dunn
9cbf6f6ea3 Tweaks for various diffs from 2.4.0 to current HEAD
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19806 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 01:41:21 +00:00
Robin Dunn
fc0821b650 Fix broken binaries...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19805 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-26 01:26:38 +00:00
Robin Dunn
7e50db3f1d SWIGged updates for wxMSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19804 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-25 21:53:30 +00:00
Robin Dunn
7108497a54 SWIGged updates for wxMac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19801 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-25 20:37:50 +00:00
Julian Smart
1adff2f56f Use virtual functions to help splittree work
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19800 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-25 18:49:34 +00:00
Robin Dunn
26b8693ba5 fixed compile error
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19799 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-25 17:10:57 +00:00
Vadim Zeitlin
446a798ddc renamed Catalan and Chinese translations to the correct names
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19798 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-25 11:47:45 +00:00
Julian Smart
bcd44ac1b0 Removed odbc.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19797 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-25 11:46:29 +00:00
Robin Dunn
230e09add6 Added file for xrc splitter support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19796 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-25 07:06:20 +00:00
Robin Dunn
b67a932778 SWIGged updates for wxGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19795 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-25 07:04:05 +00:00
Robin Dunn
b9ac87bc5c Removed deprecation warnings in OGL and Gizmos
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19794 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-25 06:58:05 +00:00
Robin Dunn
1e4a197e4c Merged wxPython 2.4.x to the 2.5 branch (Finally!!!)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19793 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-25 06:35:27 +00:00
Vadim Zeitlin
9b4e3f352b call wxApp::OnExit() when wxExit() is called and don't do wxLogError from it (replaces patch 709142)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19791 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-25 01:51:11 +00:00
Vadim Zeitlin
f0fe27a041 added Catalan translations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19790 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 23:12:45 +00:00
Vadim Zeitlin
d80f416f62 use StretchDIBits() if we're drawing a DIB and not a DDB in Blit()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19789 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 23:10:41 +00:00
Vadim Zeitlin
2f52b4e15c use wxDIB class instead of duplicating DDB -> DIB conversion code once again (aaaargh, just how many copies of the same code with slightly different bugs in each case can we have??)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19788 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 23:07:53 +00:00
Vadim Zeitlin
cdd732de07 added test for Remove() and Replace() (patch 705051 from Nerijus)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19787 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 23:04:38 +00:00
Vadim Zeitlin
581ee8a9c5 implemented Remove() and Replace() for GTK2 (patch 705051 from Nerijus)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19786 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 23:03:19 +00:00
Vadim Zeitlin
82ac3b0a42 wxDIB::Create(wxBitmap) shouldn't do any conversions if the bitmap is already a DIB section
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19785 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 22:58:50 +00:00
Vadim Zeitlin
9cf743aa7f oops, forgot default value for MemoryHDC ctor parameter
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19784 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 22:48:54 +00:00
Vadim Zeitlin
697b08a89a MemoryHDC can now be used to create DCs compatible with arbitrary DCs and not just the screen
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19781 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 22:32:56 +00:00
Vadim Zeitlin
a8beba7230 fixed converting BI_BITFIELDS bitmaps to DIBs (fixes 589416)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19780 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 22:08:53 +00:00
David Elliott
a6b4ff2e62 Set the m_isShown flag appropriately from Show()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19779 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 21:41:49 +00:00
David Elliott
d449cf47c3 Use m_dummyNSView if necessary to get the superview frame for DoMoveWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19778 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 21:09:51 +00:00
Julian Smart
f40f9976fd Applied patch [ 705663 ] Fix capture mouse bug in wxGrid
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19777 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 21:00:11 +00:00
David Elliott
548dd93d7d Create an NSView in leiu of a radio box
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19776 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 20:55:15 +00:00
David Elliott
981af57ccf Create an NSView in leiu of a real listbox
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19775 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 20:53:59 +00:00
David Elliott
576a15443d Use m_dummyNSView (if it exists) in place of m_cocoaNSView to retrieve the
superview's frame rectangle and this NSView's frame rectangle.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19774 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 20:38:40 +00:00
Vadim Zeitlin
0bcd741653 added wxTextBuffer::Clear() (patch 706188)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19773 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 20:37:27 +00:00
Vadim Zeitlin
5460b9e30b added non-const begin()/end() methods to wxString (patch 696842)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19772 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 20:32:55 +00:00
Vadim Zeitlin
17dd9caaa5 print dialogs ignore user paper settings in non C locale (patch 696835)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19771 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 20:31:24 +00:00
David Elliott
c1f7d193f6 CocoaRemoveFromParent can (and will) be called when !m_cocoaNSView.
However, if there is m_dummyNSView then there must be m_cocoaNSView.
Therefore, moved wxASSERT(m_cocoaNSView) inside if(m_dummyNSView)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19770 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 20:00:22 +00:00
Vadim Zeitlin
2b17e39106 don't unselect all radio buttons if there are 2 consecutive radio groups, just those in the second one, when its first button is pressed (bug 705441)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19769 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 19:54:13 +00:00
David Elliott
d5f229692e Create an NSView (in leiu of a real static line)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19767 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 19:34:48 +00:00
David Elliott
a8c80eb142 Create an NSView (in leiu of a real static bitmap class)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19765 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 19:33:50 +00:00
Vadim Zeitlin
72ad377f13 Unicode compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19764 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 19:33:40 +00:00
Julian Smart
85b0fd7098 Reverted iodbc removal
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19763 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 19:25:03 +00:00
Vadim Zeitlin
925f154dac added a check for allowed id value (bug 690910)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19761 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 19:21:08 +00:00
Vadim Zeitlin
da32743f22 calling SetValue(GetValue()) didn't reset the modified flag (bug 678391)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19760 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 19:00:04 +00:00
Vadim Zeitlin
c5c04fabb0 fix Alt-letter navigation with spin controls (bug 672974)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19759 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 18:55:42 +00:00
Julian Smart
d8103d31f7 Removing newgrid
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19758 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 18:51:36 +00:00
Julian Smart
f7556ff05f Removed old grid code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 18:50:10 +00:00
Vadim Zeitlin
41aebd5d79 backport fix for bug 672894
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19756 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 18:19:34 +00:00
Vadim Zeitlin
0fa939c29a draw multiline labels in owner-drawn buttons correctly (fixes 672894)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19755 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 18:18:05 +00:00
Julian Smart
c5f5e891ec Fix by Milan Babuskov <albis@eunet.yu> in MovePageUp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19754 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 17:21:57 +00:00
David Elliott
acbf95340f - Remove wxTopLevelWindowCocoa from the wxRTTI class hierarchy
- DECLARE_NO_COPY_CLASS(wxTopLevelWindowCocoa);


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19753 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 17:06:28 +00:00
David Elliott
08af0d25f9 !defined(wxUSE_TOOLBAR_NATIVE) changed to !wxUSE_TOOLBAR_NATIVE because the
configure script does define it to 0, not undef it (wxCocoa is using this)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19752 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 16:50:23 +00:00
David Elliott
9b4d9d5638 Enable the choice dialog on wxCocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19751 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 16:07:34 +00:00
Julian Smart
09f6516cda Remove Install
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19750 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 14:19:03 +00:00
Julian Smart
8c9a1303d8 Removing Install
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19749 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 14:15:19 +00:00
Julian Smart
fa7e240226 Removing Install
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19748 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 14:07:30 +00:00
Chris Elliott
4b1f929cc3 fix bug in Borland (bcc32 really hates ?)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19747 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 12:47:41 +00:00
Chris Elliott
4c49b5d83e fix bug in Borland (bcc32 really hates ?)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19746 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-24 08:44:08 +00:00
Vadim Zeitlin
810f173e8d removed wxUSE_IMAGE_LOADING_IN_MSW and wxUSE_RESOURCE_LOADING_IN_MSW settings, they're not used any more
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19745 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 21:36:43 +00:00
Vadim Zeitlin
2b254edf9c added wxDIB::Save() and wxDIB to/from wxBitmap) conversions, use them instead of the old C functions (the latter were removed, there is no old code left any more)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19744 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 21:33:21 +00:00
Julian Smart
26f0e9e2e4 Removed spurious spawnbrowser.h/cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19743 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 20:42:04 +00:00
Vadim Zeitlin
563e3ecb6c use call tmake to invoke tmake
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19742 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 20:38:52 +00:00
Vadim Zeitlin
51a2a728e5 added GlobalHandle
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19741 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 20:36:51 +00:00
Julian Smart
f7292ebeba Removed obsolete ODBC classes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19740 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 20:34:36 +00:00
Chris Elliott
2f8b6a1dcc fix reference to obsolete b32univ file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19739 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 20:26:05 +00:00
Julian Smart
2ab25aca26 Removed obsolete wxDate and wxTime classes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19738 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 20:14:19 +00:00
Julian Smart
621b931778 Klaas Holwerda <kholwerd@xs4all.nl> contrib/src/canvasOBSOLETE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19737 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 19:09:28 +00:00
Julian Smart
6ceef8efe9 Removed obsolete library.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19736 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 19:06:57 +00:00
Julian Smart
ce109c530a Removed gaugemsw.cpp,h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19735 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 18:52:29 +00:00
Julian Smart
6aa855b9ec Removed 16-bit gauge code (Microsoft)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19734 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 18:49:12 +00:00
Julian Smart
767ed8fd8c Removed dibutils
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19733 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 18:35:37 +00:00
Vadim Zeitlin
40c79fab3a use wxCLOSE_BOX for MyImageFrame
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19732 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 18:02:05 +00:00
Vadim Zeitlin
da9df1f51e added copying images to/pasting them from clipboard tests
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19731 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 17:48:42 +00:00
Vadim Zeitlin
22be0335df got rid of more duplicated code for working with DIBs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19730 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 15:51:37 +00:00
Vadim Zeitlin
5cb0f77dfe removed unneeded #include dib.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19729 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 15:46:50 +00:00
Mattia Barbon
3bb70c4026 Add missing header.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19728 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 15:12:41 +00:00
Mattia Barbon
8f4b6405ff wxMotif does not have support for raw bitmaps.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19727 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 15:09:48 +00:00
Mattia Barbon
3c5bd1886a Added missing comma.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19726 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 15:07:48 +00:00
Mattia Barbon
1201b3ef40 Updated TODO and ISSUES.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19725 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 15:06:17 +00:00
Vadim Zeitlin
f2bb16493d removed GetBitmapForDC() and supporting functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 14:27:34 +00:00
Vadim Zeitlin
0b2e45b162 regenerated the makefiles with the latest filelist.txt
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 01:56:46 +00:00
Vadim Zeitlin
474df21877 use wxDIB methods instead of old functions for working with DIBs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19722 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 01:49:19 +00:00
Vadim Zeitlin
7fd328a34d use wxBitmapToHICON/CURSOR()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19721 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 01:48:15 +00:00
Vadim Zeitlin
c11bf84234 added CreateDDB() and CreatePalette()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19720 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 01:46:31 +00:00
Vadim Zeitlin
b0ea5d9603 added CopyFromDIB()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19719 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 01:45:37 +00:00
Vadim Zeitlin
a2f10a1768 removed curico files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19718 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 01:16:20 +00:00
Vadim Zeitlin
42b6a61ef6 Win16 cursor/icon functions are not needed any longer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19717 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-23 00:00:16 +00:00
Vadim Zeitlin
211b54b109 added wxBitmapToHICON/CURSOR helper functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19716 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 23:47:06 +00:00
Vadim Zeitlin
d1bf777402 suppress error messages when loading msimg32.dll
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19714 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 19:13:13 +00:00
Vadim Zeitlin
d35cb50456 update from Janos Vegh
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19713 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 19:12:44 +00:00
Vadim Zeitlin
b3f04dc2b2 test raw bitmap access
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19712 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 19:10:09 +00:00
Vadim Zeitlin
f28e099ec3 added (very) preliminary raw bitmap support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19711 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 19:09:33 +00:00
Vadim Zeitlin
2cf45d6944 modifications for raw bitmap support and for using DIBs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19710 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 19:02:05 +00:00
Vadim Zeitlin
bbc1265c40 create the DIBs in correct (and not down up) line order
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19709 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 19:01:27 +00:00
Vadim Zeitlin
916b0ea345 added (very) preliminary raw bitmap support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19708 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 19:00:48 +00:00
Vadim Zeitlin
60a68e0024 backport Chinese locale fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19707 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 17:43:04 +00:00
Mattia Barbon
4d53042a6a Removed unnecessay code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19706 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 16:12:30 +00:00
Mattia Barbon
93e73c740e Do not derive wxCursor from wxBitmap, plus misc cleanup.
Derive wxGauge from wxGaugeBase, use XmScale for the
implementation if the Motif version supports the
XmTHERMOMETER style.
  Derive wxSlider from wxSliderBase; generate
wxEVT_SCROLL_THUMBRELEASE in addition to wxEVT_SCROLL_THUMBTRACK;
misc cleanup.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19705 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 15:46:22 +00:00
Václav Slavík
13de23f6d8 XRCID lookup now handles standard IDs correctly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19703 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 13:48:29 +00:00
Vadim Zeitlin
55427034af added GetName(), rearranged methods in alphabetic order
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19702 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 13:42:16 +00:00
David Elliott
ac4eaadf80 Use wxBitmapBase in wxCocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19701 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 07:45:38 +00:00
David Elliott
bc85826802 Regenerated by tmake: added all the cocoa source files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19700 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 07:15:48 +00:00
David Elliott
178b5412d1 Added wxCocoa files to build system
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19699 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 07:10:44 +00:00
David Elliott
8029fe033c Use generic MDI for wxCocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19698 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 06:40:47 +00:00
David Elliott
e64df9bcc3 Include wxCocoa specific header
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19697 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 06:18:36 +00:00
David Elliott
0201182bf5 Use generic implementation for wxCocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19696 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 06:13:03 +00:00
David Elliott
51a8edc7e6 Use the generic timer for wxCocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19695 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 06:07:53 +00:00
David Elliott
1a4ebaf865 Use the generic palette for wxCocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19694 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 06:07:11 +00:00
David Elliott
9a7324a6d9 Use the MSW/Mac font encoding info for wxCocoa (just to make wxCocoa compile)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19693 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 06:05:41 +00:00
David Elliott
e0ea95b6f7 Use generic font dialog for wxCocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19692 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 06:03:07 +00:00
David Elliott
f4515f987d - forward declare wxDC for use as a pointer or reference parameter in
wxDCBase methods
- Include wxCocoa specific header


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19691 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 06:00:12 +00:00
David Elliott
fed66a8797 - Modify #if to include wxCocoa as a platform using wxBitmapBase
- Include wxCocoa specific header


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19690 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 05:57:18 +00:00
David Elliott
ab590906ba - Include wxCocoa specific header
- Use the normal UNIX IMPLEMENT_WXWIN_MAIN macro


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19689 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 05:55:53 +00:00
David Elliott
a24aff654f FIXME: Complete stubs or other cruft necessary to make wxCocoa build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19688 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 02:56:04 +00:00
David Elliott
812edc2530 Added more files containing original code and empty stubs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19687 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 02:38:01 +00:00
David Elliott
94c3ff9091 Checked in WXWIN=$(WXDIR) hack as per Vadim's request
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19686 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-22 01:44:49 +00:00
Václav Slavík
27ef58ba02 fixed MSLU link
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19685 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 23:14:26 +00:00
Václav Slavík
8d512476c5 no need to check for 2.3.0 anymore
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19684 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 23:12:29 +00:00
Vadim Zeitlin
ee9768c9e0 (real) compilation fix after previous commit(s)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19679 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 21:04:31 +00:00
Vadim Zeitlin
e38b6ea8d2 (blind) compilation fix after last commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19678 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 20:40:40 +00:00
David Elliott
da0634c140 Added more original works and stubs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19677 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 20:25:09 +00:00
David Elliott
fb896a322a Added original works and stubs to CVS repository
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19676 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 19:51:47 +00:00
David Elliott
43225e09fe Various changes for wxCocoa
- Check for __WXCOCOA__ as an acceptable definition for a GUI
- Where __WXMAC__ is used to mean "running on a mac" check for
  one of __WXMAC__ or __WXCOCOA__
- Add the obligatory __WXCOCOA__ definitions section


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19668 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 17:09:18 +00:00
David Elliott
befdb27f7d Added wxCocoa files.lst. There are not yet any wxCocoa source files.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19667 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 16:44:26 +00:00
David Elliott
71f23c9aa8 Generate src/cocoa/files.lst using the new cocoa.t
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19666 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 16:29:17 +00:00
David Elliott
01ba8b3931 Add code to handle Cocoa, CocoaH, and CocoaR
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19665 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 16:22:40 +00:00
David Elliott
aa2d605997 Added tmake template for wxCocoa, heavily derived from wxMac's mac.t
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19664 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 16:19:22 +00:00
Julian Smart
e835c3693b Copyright correction
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19663 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 15:43:19 +00:00
Julian Smart
aa5973eef4 Copyright correction
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19662 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 15:30:17 +00:00
Julian Smart
a4ab8ed5ff Copyright correction
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19661 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 15:24:24 +00:00
Julian Smart
2e5794713c Copyright corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19660 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 14:36:39 +00:00
Julian Smart
17240438f2 Copyright correction
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19659 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 14:35:05 +00:00
Chris Elliott
db4444f0ce fix memory leak as Dimitri suggested
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19658 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 10:10:16 +00:00
David Elliott
ac0c4cc396 Added support for building wxCocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19655 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 05:13:45 +00:00
David Elliott
0e68a26a43 Added stub COCOA_DIST target with TODO comment
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19654 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 05:02:17 +00:00
David Elliott
39989a8093 Append .mm to .SUFFIXES list
Add .mm.o rule (exact copy of .cxx.o)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19649 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 03:27:39 +00:00
Michael Bedward
00524cfd67 Updated menu Appends to remove ambiguity that BCC complained about
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19648 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 03:23:27 +00:00
David Elliott
d9e2e4c242 Allow headers to be compiled in Objective-C++ mode
Changed id to one of:
winid   Window IDs and event system
itemid  Menu items
toolid  Toolbar items


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19647 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-21 02:58:55 +00:00
Mattia Barbon
6f87d5542d Changed g95.t according to my last changes to makefile.g95,
and regenerated it. Updated changes.txt.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19639 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-20 20:31:43 +00:00
Mattia Barbon
b994671df0 makefile.g95 now adds _cyg or _min suffix to libraries/DLLs, as
per the discussion on wx-dev.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19633 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-20 17:45:38 +00:00
Julian Smart
7ebcb58495 Added more things to remove; added a couple of wxGTK items
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19621 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-19 21:40:05 +00:00
Julian Smart
a125b1b9d5 Removed conflict indicators
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19620 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-19 19:20:44 +00:00
Julian Smart
09a1dffa32 Removed some deprecated usage
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19619 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-19 17:24:06 +00:00
Vadim Zeitlin
9750481f36 fixed bad overflow bug in wxX11 timer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19618 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-19 16:57:30 +00:00
Vadim Zeitlin
92ee0ef908 added simplified chinese translations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19617 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-19 10:55:33 +00:00
Robin Dunn
dd360466a5 Applied a modification of Patch #704995 which changes how the lines
are drawn such that only the visible portions are drawn.  This is
because (I think) if the length of the line is > 32k then on at least
Win9x and GTK 1.2 the line will wrap around to the other end of the
tree ctrl...


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19608 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-19 01:01:14 +00:00
Julian Smart
174046a33c Formatting tidy-up
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19607 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-18 15:26:37 +00:00
Julian Smart
1cfa5d8e39 Some code tidying; removing dibutils.cpp which
doesn't seem to be used any more


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19606 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-18 15:08:21 +00:00
Václav Slavík
0f48e3d518 more LaTeX fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19605 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-17 18:57:50 +00:00
Julian Smart
68fcaeb98e Added list of things to remove
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19604 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-17 17:14:04 +00:00
Vadim Zeitlin
13acdb7d36 some more details
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19603 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-17 16:14:01 +00:00
Julian Smart
6b9aec458f Corrected copyright
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-17 14:00:48 +00:00
Julian Smart
7818a75c16 Corrected copyright information
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19601 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-17 13:41:00 +00:00
Vadim Zeitlin
355f240724 respect Veto()ing the column resize events; added test for this in the sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19600 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-17 13:24:45 +00:00
Julian Smart
6d89ddefa9 Corrected copyright
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19599 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-17 12:27:00 +00:00
Julian Smart
be55ddb10d Corrected copyright message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19598 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-17 12:22:02 +00:00
Julian Smart
1a19e369fb Fixed copyrights, corrected licence spelling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19597 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-17 12:03:24 +00:00
Julian Smart
6aa89a22b8 Fixed copyrights and licence spelling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19596 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-17 11:55:54 +00:00
Julian Smart
55d99c7a77 Fixed copyrights and licence spelling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19595 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-17 11:28:33 +00:00
Julian Smart
e3a1e3e0e5 Fixed copyright and licence spelling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19594 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-17 11:24:30 +00:00
Julian Smart
6c9a19aaba Removed erroneous copyright names and corrected licence spelling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19593 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-17 11:23:28 +00:00
Julian Smart
371a5b4e62 Removed erroneous copyright names and corrected licence spelling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19592 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-17 10:34:04 +00:00
Julian Smart
3f0fac91ab Don't use images for wxNotebook because of crash
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19591 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-17 09:38:55 +00:00
Václav Slavík
0d7fb283bb backport SetFonts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19590 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-16 23:09:51 +00:00
Mattia Barbon
d40708e2fd Fixed (native) wxComboBox::SetSelection and
wxListBox/wxComboBox::GetString.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19589 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-16 20:40:35 +00:00
Václav Slavík
b1ef882100 LaTeX compilation fixes again
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19588 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-16 20:34:07 +00:00
Václav Slavík
4eecf1150d applied patch adding SetFonts to wxHTML printing classes and allowing NULL sizes list
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19587 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-16 20:30:26 +00:00
Václav Slavík
5851504dfc fix wxrc-generated c++ code to work in Unicode mode (patch #704064)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19586 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-16 20:27:15 +00:00
Robert Roebling
cc3da3f8a1 Text attributes for GTK2.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19585 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-16 13:47:47 +00:00
Robert Roebling
e136b74763 Better scrolling to cursor.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19584 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-16 13:28:56 +00:00
Julian Smart
18efb19f9d Added RCS ID
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19583 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-16 13:19:24 +00:00
Julian Smart
94af6953cf Tidied some wording, added configtool
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19582 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-16 13:16:52 +00:00
Stefan Csomor
5e284dd5e8 no message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19581 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-16 10:13:20 +00:00
Mattia Barbon
ea9868e8d2 Derive wxBitmapButton from wxBitmapButtonBase + misc cleanup.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19580 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-16 08:50:21 +00:00
Mattia Barbon
3a73cc5203 Prevent wxChoice from resizing when items are added/deleted. Corrected
DoGetBestSize.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19579 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-16 08:41:04 +00:00
Mattia Barbon
d6379fa35a Add wxRTTI to generic wxDirDialog.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19578 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-14 20:08:45 +00:00
Mattia Barbon
d3a80c922c Remove explicit casts to (const char *), and replace it with .c_str();
use wxConstCast instead of explicit casts to char*.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19577 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-14 20:07:03 +00:00
Chris Elliott
f72199d117 fix build for borland 5.0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19576 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-14 10:47:51 +00:00
Michael Bedward
77fc3492f9 added TARGETDEF to use a def file if one exists
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19575 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-14 09:09:13 +00:00
Vadim Zeitlin
441b8072ee backport wxFontEncoding values fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19574 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-13 22:05:16 +00:00
Robin Dunn
a8f473ac36 Prevent crash in case nothing is selected
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19573 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-12 19:48:45 +00:00
Stefan Csomor
7ed2b47bf5 moved fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19557 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-11 19:52:48 +00:00
Robin Dunn
8aa2cea1d0 The statusbar should start with one field, not zero
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19547 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-11 00:01:03 +00:00
Robin Dunn
271d1110ed more informative error messages
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19546 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-10 23:58:30 +00:00
Robin Dunn
d8c65cf488 If zero time is specified, don't try to sleep when using a timer.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19545 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-10 23:38:17 +00:00
Robin Dunn
fb718549cd Don't clear the HWND until after the UnsubclassWin so the old WndProc
will be restored.  Otherwise we get messages after the wxTextCtrl has
been destroyed.  (Forgot a few last time)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19543 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-10 23:32:18 +00:00
Robin Dunn
f3076f9fae Don't clear the HWND until after the UnsubclassWin so the old WndProc
will be restored.  Otherwise we get messages after the wxTextCtrl has
been destroyed.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19542 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-10 23:28:40 +00:00
Vadim Zeitlin
39d6715fdf backport ParseDate() fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19541 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-10 22:43:45 +00:00
Vadim Zeitlin
62ae2780a8 accept \r as a delimiter when parsing dates (bug 684617)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19540 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-10 22:14:40 +00:00
Mattia Barbon
3e2d47e1a9 Added helper functions for string -> XmString conversion.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19539 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-10 21:40:53 +00:00
Mattia Barbon
a63b009834 Derive wxButton from wxButtonBase.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19538 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-10 21:39:01 +00:00
Mattia Barbon
521196a26a Added configure test for const_cast<>(), and enabled it
for MSVC 5 and 6, and MinGW; use const_cast<>() in
wxConstCast if it is available.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19537 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-10 21:37:28 +00:00
Vadim Zeitlin
79e929e79e fixed a serious bug in Shrink()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19535 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-10 18:11:15 +00:00
Vadim Zeitlin
28cafc44d2 backport a couple of memory leak fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19534 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-10 18:08:59 +00:00
Stefan Csomor
d46342af50 submenu preparation in two methods encapsulated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19533 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-10 15:50:28 +00:00
Stefan Csomor
578dc95029 submenu preparation in two methods encapsulated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-10 11:57:27 +00:00
Vadim Zeitlin
c9570d3076 added gtk/msgdlg.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19530 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-08 14:36:27 +00:00
Mattia Barbon
84fb430b97 Reverted changes to make buttons smaller in wxMotif because they uncover
a bug in wxGTK, and, more importantly, thay will break user code under
Motif which uses sizers and calls wxButton::SetDefault.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19529 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-08 13:47:53 +00:00
Mattia Barbon
0ddf7c0cad Modified vc.t according to last changes to makefile.vc, and regenerated
makefile.vc.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19526 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-07 16:03:15 +00:00
Mattia Barbon
fb5230de74 Removed some superflous #defines already added by plaform.h, simplified a bit
the logic to construct directory and library names; now it should be possible
to build in Unicode mode without changing setup.h; fixed building wxBase with
makefiles.
  Added a new DEBUGINFO parameter. FINAL=hybrid DEBUGINFO=1 is like
FINAL=hybrid but with debug information.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19525 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-07 15:48:41 +00:00
Stefan Csomor
ab89a5b59b show and hide implementation added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19524 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-07 10:25:11 +00:00
Stefan Csomor
e9d804ebea depth for masks added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19523 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-07 10:21:16 +00:00
Stefan Csomor
637988a4f6 change to a tiny minimal value for DoGetBestSize in case of existing entries
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19521 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-06 21:38:12 +00:00
Stefan Csomor
8dd336cba3 added alpha channel support for mask bitmaps
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19520 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-06 21:20:19 +00:00
Mattia Barbon
3ca22d5e92 Fix release build.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19519 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-06 21:07:50 +00:00
Mattia Barbon
10d1f4131d Work around wxNotebook or Motif or wxMotif bug.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19515 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-06 17:52:41 +00:00
Stefan Csomor
0c2d357716 context menu support for mac enabled
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19514 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-06 16:56:06 +00:00
Stefan Csomor
7e0e5fe1e4 value expansion to double
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19513 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-06 16:38:19 +00:00
Stefan Csomor
63d1f74fe9 we now must skip right click events in order to allow for context events to be generated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19512 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-06 16:35:10 +00:00
Stefan Csomor
c4a49e11f7 the msw implementation even shows an ok button if it is not specified, we do the same
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19511 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-06 16:32:14 +00:00
Stefan Csomor
8950f7cc7e added OnMouse which will trigger context menu events, added better DoMenuPopup implementation which also deals correctly with check items, submenus etc.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19510 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-06 16:30:26 +00:00
Stefan Csomor
853f8094df added OnMouse which will trigger context menu events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19509 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-06 16:26:37 +00:00
Mattia Barbon
a87758e451 Fix warning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19500 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-05 20:38:18 +00:00
Mattia Barbon
65ed018215 Document the new __WXMOTIF20__ preprocessor macro.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19499 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-05 20:36:48 +00:00
Mattia Barbon
b19a74b0bc Mentioned the need to set the WXDIR environment variable.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19498 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-05 20:35:46 +00:00
Mattia Barbon
35af98e482 Applied patch [ 696990 ] fix makeg95.env so it can find version.mak
from Derry Bryson.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19496 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-05 20:21:32 +00:00
Mattia Barbon
da494b405d Added new __WXMOTIF20__ macro, which is true if the Motif version
is 2.0 or higher.
  Now Motif 2.0 or better (but not Lesstif) uses XmRenderTable instead
of the deprecated XmFontList. This allows underlined text in controls.
  Miscellaneous cleanup; used wxXmString in some more places.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19495 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-05 20:15:35 +00:00
Václav Slavík
bdb9ccbfd6 backport gtk2 mnemonics patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19494 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-05 18:10:06 +00:00
Václav Slavík
393cbb8ff7 fix compilation for GTK1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19493 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-05 15:58:10 +00:00
Václav Slavík
eaafd2f8b7 added support for GTK2 label mnemonics (patch #689573)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19484 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-04 23:34:52 +00:00
Vadim Zeitlin
53eff2a282 new wxDIB class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19461 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-04 02:15:29 +00:00
Vadim Zeitlin
336b8a4257 don't use GetSelectedInto() in release build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-04 02:14:13 +00:00
Vadim Zeitlin
acf8e3d29e start of alpha transparency support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19459 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-04 02:12:28 +00:00
Vadim Zeitlin
0c543b7a19 don't erase the background to see the transparent images better
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19458 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-04 02:10:27 +00:00
Vadim Zeitlin
9ae2ec95cf added wxDynamicLibrary::Detach()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19457 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-04 01:48:47 +00:00
Vadim Zeitlin
27bb2b7cea added support for reading alpha channel
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19456 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-03 20:39:50 +00:00
Vadim Zeitlin
487659e0fa added alpha channel support to wxImage
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19455 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-03 20:33:40 +00:00
Vadim Zeitlin
c0589c62a6 added some macros to define version strings from version number (instead of having to manually update both)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19454 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-03 19:52:25 +00:00
Vadim Zeitlin
5169844ada added math.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19453 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-03 19:50:21 +00:00
Vadim Zeitlin
ddb4769e7c added wxUSE_DISPLAY
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19452 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-03 19:49:37 +00:00
Stefan Csomor
c8ce283736 sorry previous commit message was wrong, should read
added shrink procedure with proper color averaging, it is triggered from scale in case the old with/height are multiples of the new width/height


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19451 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-03 15:35:52 +00:00
Stefan Csomor
fd9655adba overflow fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19450 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-03 15:30:20 +00:00
Stefan Csomor
534f031251 added shrink procedure with proper color averaging
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19449 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-03 15:25:36 +00:00
Vadim Zeitlin
6627d4dfb7 compilation fix: include wx/platform.h before testing for __WIN32__
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19448 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-03 02:15:55 +00:00
Vadim Zeitlin
652ab15353 fixed spurious assert in FindControl() (fixes patch 696147)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19446 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-03 00:00:52 +00:00
Vadim Zeitlin
7dc85fe2be added wxRect2DDouble == != = operators (patch 684616)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19445 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 23:44:56 +00:00
Vadim Zeitlin
a02afd1452 added wx/math.h (patch 686009)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19444 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 23:42:57 +00:00
Vadim Zeitlin
e49c85af1c added possibility to use several wxFileHistories (patch 685876)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19443 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 23:35:17 +00:00
Vadim Zeitlin
c5ef41d3b4 fixed memory leak (patch 696164)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19442 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 23:24:28 +00:00
Vadim Zeitlin
1265e13d17 added missing include (patch 690352)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19441 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 23:21:53 +00:00
Vadim Zeitlin
2b293fc78f fixed memory leak (patch 685580)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19440 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 23:18:26 +00:00
Stefan Csomor
da804130ba GiveFeedback support, Cursor Extension
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19439 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 22:48:38 +00:00
Stefan Csomor
7541150812 OSX printing fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19438 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 22:47:37 +00:00
Stefan Csomor
42683dfb10 destroy event support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19437 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 22:46:44 +00:00
Stefan Csomor
2a61618831 usleep fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19436 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 22:45:53 +00:00
Stefan Csomor
c5e591789b xpm support, color cursor support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19435 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 22:44:08 +00:00
Stefan Csomor
78e053ec45 xpm support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19434 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 22:38:30 +00:00
Stefan Csomor
30727fae8d fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19433 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 22:37:08 +00:00
Stefan Csomor
5f7a6626aa added copy arrow cursor macos specific
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19432 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 22:35:42 +00:00
Robert Roebling
3352cfffbc Up-ported wxBusyCursor fix and wxCombBov default dialog
action behaviour if enter is hit in it.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19431 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 21:34:32 +00:00
Gilles Depeyrot
653a3ed956 updated source to not use deprecated wxList methods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19428 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 20:22:31 +00:00
Mattia Barbon
483561c568 Refactored wxStaticBox, and changed wxStaticBox and wxRadioBox border
style from sunken to the default Motif style.
  Added some convenience macros for checking Motif/Lesstif version.
  Fixed the bug that caused wxStaticBox size to change when label text
was changed.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19427 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 20:08:45 +00:00
Gilles Depeyrot
a73903480f added missing include file and corrected memory leak due to creation of
never used region (NewRgn)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19426 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 19:57:47 +00:00
Václav Slavík
9ca4dd06de implemented wxCLOSE_BOX under Windows
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19425 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 18:58:58 +00:00
Vadim Zeitlin
84267f0dfc added tests for changing display resolution and going full screen
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19424 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 14:38:03 +00:00
Vadim Zeitlin
e3612e8b54 added wxDisplay files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19423 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 14:31:56 +00:00
Vadim Zeitlin
c6985199b0 define some global wxDisplay-related stuff here (wxArrayVideoModes, wxDefaultVideoMode)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19422 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 14:30:17 +00:00
Vadim Zeitlin
716645d361 maximize the window to the correct display (i.e. the one it is currently on); ShowFullScreen() actually shows the window, too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19421 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 14:24:34 +00:00
Stefan Csomor
4a95c88547 OSX fixes for printing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19420 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 14:23:20 +00:00
Vadim Zeitlin
8585e2b506 implemented video mode support (getting the current one, enumerating, changing)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19419 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 14:17:20 +00:00
Vadim Zeitlin
bfc9081049 significant API changes: wxVideoMode and methods using it added, GetDepth() and IsColour() removed, GetFromWindow() added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19418 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 14:16:29 +00:00
Václav Slavík
af49404386 removed deprecated calls from wxImage example (bug #688438)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19411 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 11:01:09 +00:00
Mattia Barbon
458ca8c1fd Implemented wxButton::DoGetBestSize for wxMotif. Now normal buttons
and default buttons are visually the same size, however, given how
wxMotif draws default buttons, the Widget for a default button is
bigger (8 pixels by default), thus setting default border will
make the Widget grow.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19410 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-02 10:09:25 +00:00
Stefan Csomor
6b9eeef230 applied fix to MkDir for mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-01 21:09:23 +00:00
Mattia Barbon
1119b89942 Do not change background colour for parent widget; set best size to
some arbitrary value if the text control is empty.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19405 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-01 18:05:33 +00:00
Mattia Barbon
866c0d96cb Fix "make install" for wxMotif after recent changes for using X11 files.
Fix "make dist" for all ports (changes in internat sample), and for
wxMotif (for the aforementioned changes).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-01 17:52:27 +00:00
Stefan Csomor
3b43289082 added minor and major description for wxGetOsVersion for wxMac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19403 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-01 17:30:38 +00:00
Stefan Csomor
3211bccf7c wxMac just using Update()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19402 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-01 17:13:57 +00:00
Stefan Csomor
913ff1a703 added wxMac to the branch using Update for refresh
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19401 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-01 16:36:06 +00:00
Robert Roebling
1a44c9258a Added wxComboBox::SetString patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19400 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-01 10:00:29 +00:00
Robert Roebling
461573cc24 Upported combobox changes and another fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19399 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-03-01 09:59:27 +00:00
Julian Smart
e40298d54e Tidied space and tabs in wxMac files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19397 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-28 23:48:13 +00:00
Václav Slavík
7de24929eb 1. added native wxMessageDialog implementation for GTK+2
2. minor formatting changes, so that the changelog has consistent look


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19396 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-28 23:46:59 +00:00
Václav Slavík
cec773c6fc added native wxMessageDialog implementation for GTK+2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19395 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-28 23:46:41 +00:00
Václav Slavík
7f980cffb8 fixed wxScrollBar creation when default size was used
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-28 23:41:00 +00:00
Václav Slavík
c5969a3848 compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19393 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-28 23:39:46 +00:00
Václav Slavík
13a7abf973 added native wxMessageDialog implementation for GTK+2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19392 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-28 23:37:46 +00:00
Julian Smart
d921af5140 Tidied up white space and tabs in wxMac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19391 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-28 23:36:37 +00:00
Julian Smart
072df0b3af Removed unnecessary #ifs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19390 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-28 22:23:25 +00:00
Mattia Barbon
79132cd302 Change wxCLOSE to wxCLOSE_BOX.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19389 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-28 22:09:14 +00:00
Julian Smart
a31a5f8534 Tidied copyright and date for wxMac files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19388 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-28 21:54:04 +00:00
Julian Smart
7532d2928e #ifed wxLog occurrences
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19387 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-28 19:30:22 +00:00
Julian Smart
f81387bd80 Added display sample to distrib file lists
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19385 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-28 18:04:10 +00:00
Vadim Zeitlin
e9b77bccb0 added FromPoint test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19382 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-28 01:48:47 +00:00
Vadim Zeitlin
c32b107789 started writing wxDisplay sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19381 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-28 01:33:55 +00:00
Robin Dunn
402ce75571 Patch from David Falkinder to help building a STC dll.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19372 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-27 21:10:20 +00:00
Vadim Zeitlin
d264d7091c show error message if exec() failed: not pretty but better than nothing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19366 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-27 18:20:38 +00:00
Vadim Zeitlin
3cdf176163 fix bug with timezone calculations when WX_GMTOFF_IN_TM si true
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19365 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-27 13:01:29 +00:00
Vadim Zeitlin
c54322338f fix bug with timezone calculations when WX_GMTOFF_IN_TM si true
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19364 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-27 12:53:03 +00:00
Vadim Zeitlin
647b8e379e wxExecute may only be called from the main thread
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19363 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-27 12:18:07 +00:00
Vadim Zeitlin
9e023db73b updated the sample to show the sizers, not constraints, in the main frame; also demonstrate flex grid sizer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19362 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-27 12:02:22 +00:00
Vadim Zeitlin
e8800dcfa7 added proportion parameter to wxFlexGridSizer::AddGrowableRow/Col()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19361 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-27 11:55:26 +00:00
Vadim Zeitlin
702c420889 added WXK_WINDOWS_XXX key constants
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19360 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-27 11:51:41 +00:00
Vadim Zeitlin
8a09029e0c added wxUSE_DISPLAY
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19356 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-27 10:30:35 +00:00
Stefan Csomor
7854746ec1 fix for SetSize was missing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19354 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-27 10:18:16 +00:00
Václav Slavík
850c6ed46e wxCLOSE->wxCLOSE_BOX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19353 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-27 10:13:26 +00:00
Stefan Csomor
d60de5167e SetValue can add values if not readonly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19352 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-27 10:06:12 +00:00
Vadim Zeitlin
62b4ae0811 fixed wxRegionIterator example
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19351 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-27 00:18:43 +00:00
Václav Slavík
9ef896e152 unified default values for conv arguments
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19350 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-26 23:10:36 +00:00
Václav Slavík
72cd2fcc00 updates to <script> handling backport list
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19349 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-26 23:09:25 +00:00
Václav Slavík
d3c0ce3402 unified default values for conv arguments
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19342 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-26 19:31:44 +00:00
Václav Slavík
07cc7ddca5 compilation fix for optimizing compilers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19341 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-26 19:29:21 +00:00
Václav Slavík
7c6ad433be added wxCLOSE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19339 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-26 19:26:31 +00:00
Václav Slavík
c3d8ee42db added wxCLOSE and fixed wxSYSTEM_MENU on Unix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19338 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-26 19:24:19 +00:00
Václav Slavík
f1a19f1478 added wxCLOSE and unified wxDEFAULT_DIALOG_STYLE definition
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19337 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-26 19:21:47 +00:00
Václav Slavík
eeb029a965 fix patch #693600
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19336 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-26 19:21:02 +00:00
Robin Dunn
9230920176 Changed how the dynamic event tables (used for all Python wx classes,
C++ wx classes typically use static event tables) are searched such
that they behave from a Python perspective more like the static tables
in C++.  Namely that if there are identical event bindings in a base
Python class and a derived Python class that the one in the derived
class will be found first and that if Skip is called that the one in
the base class will still be found instead of skipping directly to the
static stable in the C++ class.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19315 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-25 21:22:44 +00:00
Vadim Zeitlin
a9d3434a3b finally fixed the flicker problem in wxTE_RICH[2] text controls when appending a lot of text to them
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19314 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-25 18:44:20 +00:00
Vadim Zeitlin
07601f5945 don't log erroneous error messages when writing an empty string to a wxTE_RICH2 control
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19313 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-25 16:48:50 +00:00
Vadim Zeitlin
4756503a3d fixed typo in WX_DECLARE_OBJARRAY example
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19312 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-25 16:14:30 +00:00
Vadim Zeitlin
77b0d411e3 fixed typo in he check in SetSizeHints()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19311 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-25 16:12:42 +00:00
Vadim Zeitlin
bad93b357f forward declare wxMenu
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19309 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-25 12:43:06 +00:00
Vadim Zeitlin
5315ebfaed test for the bug with showing a modeless dialog from a modal one in wxGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19308 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-25 12:33:35 +00:00
Stefan Csomor
e549bec483 m_y of generic tree item was only a short, which unnecessarily limits the number of items that can be displayed and handled
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19307 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-25 09:48:30 +00:00
Vadim Zeitlin
34b6a45ab9 centralize version info in one file, include it from all makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19306 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-24 23:20:22 +00:00
Vadim Zeitlin
117395866e do use micro version number in the DLL names -- but in the unstable branch only
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19305 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-24 23:19:21 +00:00
Vadim Zeitlin
817f640621 use jast major.minor, not major.minor.micro, in the DLL names
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19301 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-24 00:33:28 +00:00
Vadim Zeitlin
a6861c1dc8 get the version info directly from wx/version.h instead of hardcoding it here
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19300 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-24 00:26:50 +00:00
Vadim Zeitlin
ca1aac5387 regenerated using the correct versions in/for the DLLs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19299 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-24 00:25:08 +00:00
Václav Slavík
6b8877197f backport CDATA code in wxHTML
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19298 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-23 23:11:23 +00:00
Vadim Zeitlin
10e8e34f71 note warning against using /ox
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19297 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-23 21:59:26 +00:00
Mattia Barbon
e1aae52885 Implemented DoGetBestSize for wxListBox, (native) wxComboBox and
wxTextCtrl, and used it when wxSize(-1, -1) is passed to Create, to set
the initial size.
  Added wxDoChangeFont and wxXmStringToString helper functions, removed
the use of m_stringList in native wxComboBox, removed some duplicated code
in wxWindow.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19296 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-23 20:33:43 +00:00
Vadim Zeitlin
8dcc14725d removed the extra offset in moveto in DrawRotatedText() (why was it there?)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19295 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-23 19:57:45 +00:00
Mattia Barbon
d4d46b56f0 Allow setting default file name in wxMotif wxFileDialog.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19292 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-23 19:24:45 +00:00
Václav Slavík
1da51aafba make wxConvUTF8 available in wchar_t-less mode, too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19291 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-23 19:01:54 +00:00
Václav Slavík
4561e95d96 documentation for wxFileConfig changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19290 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-23 19:01:41 +00:00
Václav Slavík
67de05a11c wxFileConfig in Unicode fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19289 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-23 19:01:29 +00:00
Václav Slavík
8829fa8200 implemented empty handler for <script> tag, so that script code doesn't show in rendered page
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19288 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-23 19:00:08 +00:00
Václav Slavík
7c6cd4a86b fixed parsing of CDATA elements (<script> and <style>) (Bill Nalen)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19287 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-23 18:59:13 +00:00
Vadim Zeitlin
749caeeb38 documented wxGetApp()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19286 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-23 02:03:41 +00:00
Chris Elliott
ec8b106913 update watcom makefile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19285 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-22 15:42:49 +00:00
Mattia Barbon
e74bade6d8 Added Active Accessibility files to filelist.txt, regenerated
wxWindows.dsp.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19278 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-21 21:27:53 +00:00
Robin Dunn
5aab763c09 Only send two EVT_BUTTON events when double clicking a button, not three
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19277 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-21 20:27:56 +00:00
Julian Smart
010ba10dc5 Applied FL patch from Stefan Kowski
"Enclosed there is a patch for the FL library that solves a problem
overwriting the status bar if a bar is expanded.

Cause of this is the calculation of the new window height which may be less
than 0 in some cases. In my test a value of -1 caused the window default
height to be set which was larger than the space available, therefore the
status bar was overwritten."


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19276 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-21 16:02:33 +00:00
Mattia Barbon
0a514d12e8 Regenerated files.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19266 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-20 18:30:06 +00:00
Mattia Barbon
69c4481222 Use some wxX11 files (currently pen.cpp and brush.cpp) in wxMotif.
Add src/x11 to VPATH in configure, and add a new flag to filelist.txt
indicating a file used in wxMotif but not in wxMotif directory.
  Modifed VMS makefiles, too (should be checked by someone with VMS,
though).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19265 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-20 18:20:47 +00:00
Václav Slavík
e7370dac93 fixed wxSYS_DEFAULT_GUI_FONT lookup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19264 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-19 23:17:01 +00:00
Mattia Barbon
729be74dd1 Fix DrawRotatedtext to behave more like wxMSW: take into account
text background colour, and fix some wrong mathematics which caused
incorrect results.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19263 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-19 21:12:00 +00:00
Julian Smart
9dc8c75994 Temporary fix for strange wxDateTime link error with VC++ and wxUSE_ACCESSIBILITY=1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19262 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-19 21:06:52 +00:00
Mattia Barbon
21342bba68 Allow selecting a mono bitmap into a wxMemoryDC.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19261 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-19 21:06:02 +00:00
Václav Slavík
3ebd765df5 fixed Traditional Chinese mapping
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19258 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-19 19:25:47 +00:00
Vadim Zeitlin
2862acdeb7 removed several out of date/wrong sentences; mention wxEvtHandler::Connect()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19257 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-19 18:54:07 +00:00
Julian Smart
2aefc52854 Further tweaks to accessibility code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19256 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-19 16:31:28 +00:00
Vadim Zeitlin
af7b5345ed use -O0 when optimizing is off -- seems to __slightly__ reduce the build times with g++ 3.2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19255 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-19 13:52:11 +00:00
Vadim Zeitlin
e587e144c8 prevent from setting min[WH] > max[WH] because this leads to an infinite loop later on and generally doesnt make sense
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19254 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-19 13:44:32 +00:00
Vadim Zeitlin
3cfda0b764 fixed a typo which was preventing any events from being generated after DeleteAll() call
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19253 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-19 13:15:50 +00:00
Robin Dunn
7de595519a Send the wxWindowDestroyEvent for all ports
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19251 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-19 02:59:36 +00:00
Mattia Barbon
8b49ecd77a Patch [ 688973 ] from William Gallafent: add missing wx/dc.h.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19250 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-18 21:33:43 +00:00
Julian Smart
038a5591e4 Fixed warning, reformatted some code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19249 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-18 15:39:23 +00:00
Julian Smart
d43851f77e Applied patch [ 608866 ] wxGrid: vertical column label text
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19248 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-18 14:25:34 +00:00
Robert Roebling
0878fb4c7d Applied John's patch.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19245 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-18 09:48:55 +00:00
Julian Smart
2cdd094b12 Applied patch [ 681921 ] Stray focus rectangle in static text
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19244 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-18 09:40:30 +00:00
Julian Smart
a8f4cabe1e Applied patch [ 681893 ] Combobox in toolbar
This patch adds controls (i.e. combobox) to toolbars.
It also changes the toolbar sample so the combobox is
actually shown.

Otto Wyss


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19243 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-18 09:38:02 +00:00
Julian Smart
8586126c7b Enhancements to the accessibility sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19242 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-18 09:35:14 +00:00
Julian Smart
c6e2af4570 Some improvements to accessibility behaviour
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19241 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-18 09:33:42 +00:00
Julian Smart
787d22ec24 Applied patch [ 686843 ] File Dialog Wildcard Bug
A bug was introduced in generic/src/filedlgg.cpp
between versions 2.2.9 and 2.4 that causes incomplete
file extensions to be appended to filenames not having
extensions after a user changes the wildcard index in
the filedialog. This patch reverts back to the correct
code.

Bob Downey


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19240 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-18 09:27:23 +00:00
Julian Smart
e6396ed451 Applied patch [ 681262 ] Add EVT_MENU_OPEN support for GTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19238 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-18 09:02:30 +00:00
Julian Smart
e0496eaaa4 Changed back inline/const things
wxTabCtrl must have WS_CHILD window style
small access.cpp tweaks (call QueryInterface)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19235 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-17 12:43:47 +00:00
Julian Smart
ae23a52a16 Added start at accessibility sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19234 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-17 10:15:02 +00:00
Václav Slavík
b1ef887ad8 another compilation fix for over-optimized #includes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19233 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-16 23:08:33 +00:00
Gilles Depeyrot
904a2463aa fix wxDateTime offset for Apple Developer Tools (SourceForge bug # 614010)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19231 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-16 18:19:15 +00:00
Vadim Zeitlin
e38ed919ba inserted casts allowing to have arrays of function pointers -- this is wrong but works on most platforms
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19230 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-16 17:46:05 +00:00
Julian Smart
ed5317e538 Added start at accessibility functionality
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19229 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-16 11:59:49 +00:00
Julian Smart
45a959a33b Added accessibility headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19228 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-16 11:57:24 +00:00
Julian Smart
57b486583d VC++ 6 doesn't seem to like the uninlining thing and
also the wxDateTime::TIME_T_FACTOR must be always defined;
else we get link errors. I don't know why these didn't
turn up before...


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19227 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-15 17:14:19 +00:00
Stefan Csomor
e56aba8dd5 Files from a Drop were only added but the fileslist never cleard
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19225 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-15 08:36:30 +00:00
Mattia Barbon
73d33f1ac6 Setting background colour on listbox parent makes it look ugly, do not
do it.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19224 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-14 20:43:53 +00:00
Mattia Barbon
369da72455 Fix wxEventLoop so it does not sleep 20 msec between events when threads
are anabled. Now the ode should be equivalent to the 2.4 event loop.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19223 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-14 20:41:57 +00:00
Vadim Zeitlin
b1e343f2bb silent gcc warning about missing \n at the end of file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19222 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-14 20:21:00 +00:00
Vadim Zeitlin
22cbd10ea3 compilation fix (missing header)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19221 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-14 20:19:49 +00:00
Chris Elliott
63d6802445 fix for watcom open compiler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19210 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-13 20:57:11 +00:00
Julian Smart
80793cda3e DOc fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19209 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-13 18:28:36 +00:00
Vadim Zeitlin
6faf4b5f59 say that WarpPointer() is not supported under Mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19207 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-13 13:16:58 +00:00
Vadim Zeitlin
41e6092432 marked dbkeyg.h as a wxBase file (fixes 685857)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19206 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-13 11:34:07 +00:00
Jouk Jansen
c18670e45c Committing in .
Roving class reference within the class itself.

 Modified Files:
 	wxWindows/src/univ/combobox.cpp
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19203 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-13 07:21:50 +00:00
Vadim Zeitlin
a08e7186b4 added an assert checking that Resume() is not called unnecessarily
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19202 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-13 00:22:36 +00:00
Chris Elliott
6bc5a86729 first watcom makefile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19201 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-12 22:17:08 +00:00
Chris Elliott
366e20d6fc fix watcom makefile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19200 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-12 21:25:54 +00:00
Chris Elliott
d3abc823be fix watcom makefile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19199 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-12 21:16:56 +00:00
Chris Elliott
d8bb3c9c64 improve watcom makefile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19198 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-12 21:01:20 +00:00
Chris Elliott
9c11ecdbed fix unused vars for watcom
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19197 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-12 20:58:58 +00:00
Václav Slavík
c3d15542d6 compilation fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19196 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-12 20:35:27 +00:00
Mattia Barbon
08e5319b03 Implemented wxToggleButton under Motif.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19195 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-12 18:20:23 +00:00
Vadim Zeitlin
9045ad9dfc added DoSetNativeFontInfo() to avoid virtual function hiding
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19194 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-12 15:42:27 +00:00
Vadim Zeitlin
bf3353768a removed redundant code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19193 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-12 11:42:11 +00:00
Vadim Zeitlin
7899ef9592 fixed typo in SetToolClientData() docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19191 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-11 22:55:40 +00:00
Mattia Barbon
6db2faf3ad Remove another already backported change.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19190 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-11 21:26:10 +00:00
Mattia Barbon
4df410bf5c Remove already backported change.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19188 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-11 21:16:23 +00:00
Mattia Barbon
8e7361ccbc Changes to be backported.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19186 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-11 21:09:05 +00:00
Mattia Barbon
100f92893d Finished native wxComboBox implementation; it still needs some testing.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19182 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-11 17:51:28 +00:00
Julian Smart
b6e2df0b36 Added an item to toback24.txt
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19181 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-11 15:50:59 +00:00
Robert Roebling
6185050104 Minor corrections.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19178 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-11 11:20:45 +00:00
Chris Elliott
1a55595e69 fix contrib makefile for watcom
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19176 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-10 21:55:23 +00:00
Mattia Barbon
fd52ec657f Clearly mark wxGLCanvas as not working under wxX11.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19175 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-10 21:27:24 +00:00
Mattia Barbon
5c0ee4a80a Fix compilation with GCC (at least 2.95.4).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19174 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-10 21:18:32 +00:00
Mattia Barbon
67a26a1a0b Fix compilation after last fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19173 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-10 21:12:55 +00:00
Mattia Barbon
ed39ff57b3 Remove unnecessary header dependencies. Fix resulting compilation
problems for wxMSW, wxGTK, wxMotif, wxX11 and wxMac in default
configuration. Non-default configurations will probably need some more
fixes.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19172 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-10 21:07:36 +00:00
Chris Elliott
d51f2e6587 fix for making libraries
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19171 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-10 20:43:39 +00:00
Stefan Csomor
2ad50cc75b bug fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19170 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-10 19:15:13 +00:00
Vadim Zeitlin
cfef519aaa scrolbar event orientation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19169 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-10 16:16:14 +00:00
Vadim Zeitlin
27e229f55a set orientation for scrolbar events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19168 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-10 16:11:55 +00:00
Robert Roebling
d9e403cc40 Support underscroes in menu item names under GTK2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19167 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-10 10:13:58 +00:00
Vadim Zeitlin
91388efc15 use bigger than default page size to avoid 'library too big' errors
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19166 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-09 22:03:49 +00:00
Vadim Zeitlin
3e43d6143b added missing const
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19165 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-09 21:26:22 +00:00
Vadim Zeitlin
111ee2fdb8 fileconf stuff
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19164 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-09 21:22:47 +00:00
Vadim Zeitlin
bc33be3b05 don't trigger an assert in wxFileConfigGroup::DeleteSubgroupByName() if the group doesn't exist
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19163 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-09 21:17:18 +00:00
Mattia Barbon
2b830c41f7 Do not use stipple when drawing text, use solid foreground/background
colour instead.
  Use XSetTile/FillTiled instead of XSetStipple/FillStippled, otherwise
BadMatch errors occur in wxDC::SetBrush.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19162 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-09 20:21:54 +00:00
Mattia Barbon
b64c979322 Replaced wxDebugMsg with wxLogError.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19161 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-09 17:05:24 +00:00
Stefan Csomor
1c52210086 clipboard extension
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19160 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-09 09:11:43 +00:00
Stefan Csomor
2eefc6d59e crash upon hide fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19159 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-09 09:10:02 +00:00
Stefan Csomor
0e878cfcc6 code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19158 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-09 09:08:09 +00:00
Stefan Csomor
6ef7c8e01e native tooltips
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19157 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-09 09:04:18 +00:00
Stefan Csomor
6dbc7fb4e5 redraw changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19156 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-09 09:01:05 +00:00
Stefan Csomor
81b41c03c6 code changed along msw lines
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19155 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-09 08:56:54 +00:00
Stefan Csomor
07c76470e9 corrected disposal for b/w cursors and creation and disposal of colour cursors
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19154 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-09 08:54:08 +00:00
Stefan Csomor
d1e3f88a08 mask and hotspot corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19153 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-09 08:23:08 +00:00
Stefan Csomor
2a391f8718 clipboard bitmap support extended
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19152 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-09 08:19:28 +00:00
Stefan Csomor
9c3c584918 clipboard
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19151 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-09 08:15:35 +00:00
Chris Elliott
9d1461a451 remove references to 16 bit compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19150 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-08 11:50:09 +00:00
Jouk Jansen
bf91e65285 Committing in .
wxMotif changes for OpenVMS

 Modified Files:
 	wxWindows/src/motif/descrip.mms
 	wxWindows/src/motif/evtloop.cpp
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19148 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-07 07:27:30 +00:00
Vadim Zeitlin
80e297514d corrected several errors when generating project file with all configs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19147 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-07 02:56:49 +00:00
Julian Smart
4fedd384a1 Moved ffile inclusion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19130 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-06 14:07:45 +00:00
Robin Dunn
ca7353de3a Check the image height when calulating the line height. This allows
larger than normal images to be used.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19129 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-06 02:18:51 +00:00
Vadim Zeitlin
e2b87f38d9 allow compilation with wxUSE_DATETIME == 0 (patch 679822)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19128 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-06 00:53:46 +00:00
Vadim Zeitlin
83911a5a4d compilation fix for WXWIN_COMPATIBILITY_2 == 1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19127 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-06 00:51:15 +00:00
Robin Dunn
895066d8c8 Scintilla uses a -1 index to unselect, we need to catch that.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19126 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-05 23:30:36 +00:00
Vadim Zeitlin
debc914bdc fixed typo in the label
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19125 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-05 12:17:18 +00:00
Vadim Zeitlin
4f5a7f7409 HP-UX fixes: use INSTALL_DIR as install doesn't have -d option; fixes for threads compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19121 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-05 00:54:04 +00:00
Stefan Csomor
d8e9da78a0 added hints from QA 1061
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19120 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-04 22:30:58 +00:00
Stefan Csomor
a19f009bce OSX native tooltips
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19119 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-04 22:27:54 +00:00
Stefan Csomor
04f2e99050 carbon event savvy wakeup call
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19118 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-04 22:25:21 +00:00
Mattia Barbon
1845da40f2 Update with recent changes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19117 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-04 21:57:55 +00:00
Mattia Barbon
49bbd59b01 Do not redeclare a struct (w32api 2.2 will have it).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19116 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-04 21:37:58 +00:00
Mattia Barbon
9b1bd0c6e7 Applied patch [ 679397 ] remove GPL code from motif build
from Ian Brown, with some modifications; this patch replaces the (GPL)
Motif ComboBox with an implementation based on the native (for Motif 2.0)
ComboBox. The old ComboBox is still used as a fallback for older Motif
versions. My modifications include some method's implementation and
some workarounds for LessTif.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19114 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-04 21:09:03 +00:00
Vadim Zeitlin
205b0c9c6a try to create smaller executables
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19113 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-04 20:34:43 +00:00
Vadim Zeitlin
9d1e1be463 added wxLocale::FindLanguageInfo()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19112 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-04 16:43:10 +00:00
Vadim Zeitlin
677a9e28b5 fix for warnings when wxUSE_RESOURCE_LOADING_IN_MSW == 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19100 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-04 00:57:47 +00:00
Vadim Zeitlin
f6eff86e7e added Watcom mention
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19099 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-04 00:56:28 +00:00
Vadim Zeitlin
d4c8e4a1d4 corrected the value of EUC_JP
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19098 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-04 00:54:46 +00:00
Václav Slavík
e4d47fbd6f fixes to ShowFullScreen (KDE 3.1)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19097 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-03 23:31:55 +00:00
Václav Slavík
1cff04deb5 fixes to ShowFullScreen (KDE 3.1)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19096 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-03 23:23:05 +00:00
Vadim Zeitlin
a2f26963ba added (woefully incomplete) Japanese translations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19095 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-03 23:09:13 +00:00
Mattia Barbon
ac856b274a More changes to be backported.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19094 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-03 22:45:05 +00:00
Mattia Barbon
bf60426831 Make wxr resources work in Unicode mode.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19093 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-03 22:39:02 +00:00
Mattia Barbon
94311eef78 MSVC 5 does not have BIF_EDITBOX.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19092 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-03 22:35:42 +00:00
Mattia Barbon
00dd3b1897 Do not #include an header where a forward declaration suffixes. Do not
include wx/wx.h directly.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19091 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-03 20:56:40 +00:00
Jouk Jansen
ff7d1dcb82 Committing in .
One #undef for OpenVMS only

 Modified Files:
 	wxWindows/src/gtk/app.cpp
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19089 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-03 12:51:34 +00:00
Vadim Zeitlin
7f88f624d6 changed C++ comments in C comments
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19087 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 22:54:04 +00:00
Vadim Zeitlin
0aa35d1962 fixed First() signatures
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19086 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 22:21:28 +00:00
Mattia Barbon
1092b2a039 Mark for backporting.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19085 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 21:01:54 +00:00
Mattia Barbon
d76240bfe1 Fix client data handling: delete client data for all items when a
wxChoice is deleted, delete client data for an item when that item is
deleted.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19084 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 21:00:06 +00:00
Stefan Neis
ab9f788e31 Some OS/2 specific improvements.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19083 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 20:31:27 +00:00
Vadim Zeitlin
f083414031 compilation fix for wxUSE_RESOURCE_LOADING_IN_MSW == 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19080 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 18:31:23 +00:00
Mattia Barbon
7e1bcfa80e Implemented wxEventLoop for wxMotif, and used it in wxDialog::ShowModal,
wxWindow::DoPopupMenu and for the application main loop.
  Implemented wxWakeUpIdle.
  Fixed crash when a popup menu entry is used to close/destroy the parent
window of the menu.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19078 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 15:48:50 +00:00
Vadim Zeitlin
d894c20113 compilation fix for non-PCH
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19076 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 15:20:35 +00:00
Vadim Zeitlin
766c5e24a5 added Unicode build configurations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19075 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 15:19:11 +00:00
Julian Smart
9cb98d8995 Applied patch [ 678788 ] Dialog command event propagation problem
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19074 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 15:07:57 +00:00
Vadim Zeitlin
01feccc204 the Russian translations were somehow corrupted, fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19073 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 15:02:17 +00:00
Julian Smart
f2b99f6323 Applied patch [ 675376 ] Improves wxStaticBoxSizer
(uses GetCharHeight() instead of guessing).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19072 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 14:58:56 +00:00
Julian Smart
6f7c5199ed Applied patch [ 677730 ] Menus with radio items (wxUniv)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19071 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 14:50:05 +00:00
Julian Smart
e2ca829e7d Applied patch [ 670782 ] Combobox uses popup window width
(wxUniv)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19070 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 14:47:04 +00:00
Julian Smart
61a83c1c50 Applied Patch 664399: wxButton default size should not be adjusted
(wxUniv)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19069 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 14:39:55 +00:00
Vadim Zeitlin
f68c6b523c Unicode compilation fixes after wxFFile change
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19068 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 14:17:41 +00:00
Vadim Zeitlin
c48e9cbb17 unused any more
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19067 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 14:14:08 +00:00
Vadim Zeitlin
017fcf32be allow choosing language from the command line; small cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19066 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 14:09:36 +00:00
Vadim Zeitlin
fb6e5b179a more std iostream + Unicode fixes; copy streams in blocks of 4Kb, not char by char
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19065 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 13:29:50 +00:00
Vadim Zeitlin
90e2cbf780 use wxChar, not char, for the second argument of Open() and also use wxFopen() in the implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19061 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 12:46:33 +00:00
Vadim Zeitlin
9c9c3d7a8f indicate whether this is a selection or a deselection in wxCommandEvent generated by a multiselection wxListBox
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19060 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 03:05:41 +00:00
Vadim Zeitlin
cf41e1a4d5 (blind) fix for compilation in standard iostreams + Unicode mode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19059 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 02:40:17 +00:00
Vadim Zeitlin
eff4ffbf4f big wxCursor cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19058 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 02:06:34 +00:00
Vadim Zeitlin
62a0bb2788 removed wxCURSOR_SIZING (we now use the std one)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19057 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 01:50:07 +00:00
Vadim Zeitlin
cf54972ea2 unsuccessful attempts to create resizable dir dlg without new folder button; added BIF_EDITBOX style; minor code cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19056 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-02 00:38:09 +00:00
Vadim Zeitlin
367f7c4570 what do we need a separate (from m_windowStyle) m_dialogStyle here for? removed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19055 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-01 23:30:53 +00:00
Vadim Zeitlin
f09c8393cb show dir selection dialog both with and without new dir button
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19054 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-01 22:51:07 +00:00
Chris Elliott
922c7dcb6f borland 5.5 on XP dislikes -WE line and dies; earlier systems ignore error
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19052 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-01 21:08:22 +00:00
Vadim Zeitlin
ce9462d21d implemented wxFileSelectorEx() (this fixes docview behaviour when multiple selections are specified in doc template)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19051 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-01 21:04:40 +00:00
Vadim Zeitlin
93fac60414 don't print 2 empty commands after building the program under non-Mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19050 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-01 20:47:19 +00:00
Chris Elliott
11a1face0e fix bcc bug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19049 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-01 19:54:11 +00:00
Gilles Depeyrot
c921fd5994 Only call use uppercase letter if control, alt, or shift is held down,
otherwise lower case accelerators won't work.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19047 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-02-01 13:45:49 +00:00
Vadim Zeitlin
70687b638d silently ignore any X-fields in mime.types
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19043 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-31 23:09:35 +00:00
Vadim Zeitlin
e69a1ea87c compilation fix for HP-UX CC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19042 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-31 22:56:49 +00:00
Robert Roebling
e3cff1fbb7 Uncommented warning that causes crashes while
reading .mime.types.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19041 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-31 21:56:09 +00:00
Stefan Csomor
7f3c339c0d using SelectWindow for Raise Implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19036 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-31 15:52:24 +00:00
Stefan Csomor
597a3d06bf added AppleEvent Handler, somehow the standard event handler does not take care of all of them..
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19035 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-31 15:50:09 +00:00
Robert Roebling
f77cf4e68a Typo.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19034 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-31 14:55:28 +00:00
Robert Roebling
464f1a1da6 Compile fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19033 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-31 14:45:38 +00:00
Robert Roebling
adfb70c30f Removed unnecessary SET_STYLE.. macros.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19032 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-31 10:31:54 +00:00
Robert Roebling
288059b2b9 Corrected GTK2 creation of default font.
Removed ugly SET_STYLE_FONT code.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19031 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-31 10:31:05 +00:00
Robert Roebling
a148cfb644 Printing update for Pango (GTK2 and X11-Unicode).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19030 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-30 23:40:05 +00:00
Václav Slavík
6b5cdfed73 don't indent text body
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19029 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-30 23:10:23 +00:00
Václav Slavík
ce6cea6808 restored #ifndef wxUSE_UNICODE accidentaly removed by my previous commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19028 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-30 19:49:42 +00:00
Robin Dunn
68c124a168 1. Added m_count and maintain its value in InsertItem, RemoveItem
etc. and return it from GetItemCount to save so many calls to
   ListView_GetItemCount.

2. If EVT_LIST_DELETE_ALL_ITEMS was not handled then the
   post-processing code to prevent LVN_DELETEITEM messages was not
   getting executed.  Changed it so the post processing always
   happens.

3. It's possible with some versions of comctl32 that garbage values
   can be passed in nmLV->lParam so don't try to get the internal item
   data pointer from it.  This should close bug# 659939

4. Added FreeAllInternalData from DeleteAllItems, (part of patch
   #672065) and also guard against processing LVN_CHANG* messages
   while freeing the internal data.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19021 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-30 01:53:28 +00:00
Robin Dunn
6edf791ccb Revert last change so the right log message gets put on the file. (I
did the last check in just a wee bit too fast...)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19020 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-30 01:51:04 +00:00
Robin Dunn
cca784632f Fix for export warning when compiling a DLL.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19019 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-30 01:48:11 +00:00
Václav Slavík
e74563e412 added MSLU reference to wxUSE_UNICODE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19017 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-29 23:29:11 +00:00
Stefan Csomor
c5c9378c98 carbon event support completed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19016 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-29 15:23:01 +00:00
Stefan Csomor
ac9b5f9889 bug fix & carbon support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19015 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-29 15:21:58 +00:00
Stefan Csomor
233d603a09 string conversion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19014 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-29 15:07:24 +00:00
Stefan Csomor
2726cac595 carbon modal state
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19013 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-29 15:06:54 +00:00
Stefan Csomor
5fa00d2425 bugfix : text background when using appearance text drawing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19012 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-29 15:06:08 +00:00
Stefan Csomor
4abac0c027 getting rid of wxBuffer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19011 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-29 15:04:37 +00:00
Stefan Csomor
45a0fd3723 adaptions for cleaned up string conversions & carbon events support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19010 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-29 15:04:04 +00:00
Stefan Csomor
95fd868c8f adaptions for cleaned up string conversions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19009 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-29 15:03:43 +00:00
Stefan Csomor
4c200e8d87 moving string conversions at one place
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19008 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-29 15:02:14 +00:00
Stefan Csomor
f352dd54f0 removing path corrections for wxMac, we now want a correct platform string for unzOpen
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19007 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-29 15:00:57 +00:00
Stefan Csomor
cd28bcaded moving all string conversions to private.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19006 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-29 14:59:28 +00:00
Stefan Csomor
88522554f8 moving all string conversions here
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19005 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-29 14:58:01 +00:00
Stefan Csomor
0f5cc041d2 additional mac alias types
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-29 14:56:17 +00:00
Stefan Csomor
4c2300c6a1 getting rid of wxBuffer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19003 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-29 14:55:21 +00:00
Jouk Jansen
701d8d7606 Committing in .
wxIcon creation changed -> MOTIF code had to be changed likewise the GTK
version.

 Modified Files:
 	wxWindows/src/common/resource.cpp
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19002 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-29 11:54:57 +00:00
Jouk Jansen
e004299a08 Committing in .
OpenVMS updates

 Modified Files:
 	wxWindows/setup.h_vms wxWindows/src/common/descrip.mms
 	wxWindows/src/motif/toplevel.cpp
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@19001 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-29 11:52:47 +00:00
David Webster
378ad9574d listctrl update
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18988 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 23:21:51 +00:00
Gilles Depeyrot
57fbe23f68 added definition of TARGET_CARBON when compiling with non generated setup.h
using Project Builder


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18987 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 22:26:30 +00:00
Gilles Depeyrot
82d4311313 moved definition of TARGET_CARBON to generated setup.h when compiling with
Apple Developer Tools


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18986 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 22:23:02 +00:00
Mattia Barbon
1e4786bb37 Regenerate makefiles.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18985 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 21:02:32 +00:00
Stefan Csomor
a3195b73a6 only handling inContent CarbonEvents if we are the active window
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18984 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 16:45:31 +00:00
Stefan Csomor
851b3a889f CarbonEvents Added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18983 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 12:29:55 +00:00
Stefan Csomor
7c15086ca4 Review, Carbon Events support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18982 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 12:27:43 +00:00
Stefan Csomor
01fbf5d755 static box parent warning added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18981 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 12:26:43 +00:00
Stefan Csomor
581bebd192 no new install of event handler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18980 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 08:30:54 +00:00
Stefan Csomor
15b41e900b cleanup, Carbon Events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18979 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 08:27:05 +00:00
Stefan Csomor
64820d33a1 clipping before redraw in the setbackground callback
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 08:25:53 +00:00
Stefan Csomor
1dd85cc3d6 closer clipping
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18977 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 08:24:38 +00:00
Stefan Csomor
0150a5b8b9 mini-patch for better layout under OSX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18976 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 08:23:43 +00:00
Stefan Csomor
2e97b58c63 new menu code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18975 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 08:22:48 +00:00
Stefan Csomor
408ad8789c not neede anymore
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18974 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 08:22:18 +00:00
Stefan Csomor
9145b0c6ce corrected Yes/No
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 07:55:37 +00:00
Stefan Csomor
bf918b97ed wxMenu Review, added Carbon Events and full OSX Support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18972 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 07:55:08 +00:00
Stefan Csomor
cbf8aca6d4 Carbon Events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18971 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 07:01:23 +00:00
Stefan Csomor
b89f23763c formatting
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18970 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 07:00:57 +00:00
Stefan Csomor
f3fb0a0719 wxMenu Review, added Carbon Events and full OSX Support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18969 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 06:54:36 +00:00
Stefan Csomor
339e0cf110 not needed anymore
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18968 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 06:53:15 +00:00
Stefan Csomor
6357cb9d09 added WXEVENTHANDLERREF for Mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18967 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-28 06:49:45 +00:00
Gilles Depeyrot
36825681b5 improved Mac resource creation step in order to allow samples to provide
specific Rez options (used in docview sample)
added separate Mac Finder flag modification step (using SetFile)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18963 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-27 22:18:18 +00:00
Mattia Barbon
ab82ab0704 Remove some redefinition warnings.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18962 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-27 21:41:53 +00:00
Julian Smart
6394c5966c Corrected printing docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18961 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-27 11:27:43 +00:00
Ron Lee
e8d19ddd5f Add SetScrollbars patch, assuming this one really fixes things.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18960 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-27 09:09:19 +00:00
Ron Lee
150c8d89c7 Fixed bug in FlexGridSizer mods that prevented them from ever shrinking.
Reverted the earlier SetScrollbars patch and fixed a bug in GetVirtualSize
that was hopefully the real cause of all the preceding woe.

Added a comment and a kludge for a most unusual bug manifesting in the
scrollsub sample.  If it is resized quickly size events appear to get lost
and the scrollbar is set incorrectly.  Adding an extra call to
AdjustScrollbars masks the problem, though its clearly superfluous since
the FitInside above already calls it.  This seems to be a brand new problem
(on both Gtk and msw) as of some time prior to this patch and it should be
looked into further.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18959 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-27 09:02:58 +00:00
Vadim Zeitlin
dd91da4ed1 added Add/InsertTool() (patch 672032)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18958 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-27 01:13:35 +00:00
Vadim Zeitlin
fccacb2a9d the string 'Goto...' should be translated (patch 674569)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18957 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-27 01:04:57 +00:00
Vadim Zeitlin
2b61c41b71 updated sample evrsion from Greg Chicares
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18956 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-27 00:19:36 +00:00
Vadim Zeitlin
cab8f76eb8 fixed a crash in socket server test and added quit command to the server
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18955 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-27 00:18:44 +00:00
Václav Slavík
eaf498dffe fixed someone's typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18954 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 23:20:42 +00:00
Václav Slavík
903972f999 added wxHtmlWindow::LoadFile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18953 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 23:20:00 +00:00
Václav Slavík
7cb9cf8992 1. added wxHtmlWindow::LoadFile
2. interpret LoadPage's argument as filename if it fails as URL


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18952 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 23:19:46 +00:00
Václav Slavík
2f5b93fb9f added wxSplitterWindow to XRC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18951 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 23:19:04 +00:00
Robert Roebling
e4da1035e4 Now scaling doesn't scale GetTextExtent() anymore. This
make print previewing look fine for now. Next is actually
   printing what you preview :-)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18950 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 21:04:10 +00:00
Václav Slavík
25d599ae91 fixed loading of GNOME2 mime icons (still not working as desired)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18949 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 20:56:31 +00:00
Václav Slavík
805f26b316 use all MIME data sources on Unix, not only mailcap/mime.types
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18948 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 20:54:57 +00:00
Julian Smart
eed1be652a Fixed problem with kill focus event getting sent to control
that is getting the focus.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18947 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 19:04:10 +00:00
Václav Slavík
f2dec5b10d compilation fixes (bug #672413)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 16:16:13 +00:00
Václav Slavík
5eac771d09 eliminate __WIN32__ only code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 16:15:08 +00:00
Vadim Zeitlin
f357c0d42c moved OLE files group under MSW files -- this is more logical
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 14:11:39 +00:00
Vadim Zeitlin
4519ac17a7 corrected the paths for the OLE files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18941 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 14:09:52 +00:00
Vadim Zeitlin
9dd96c0f6d compilation fix after wxSizer::Remove() change
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 14:03:29 +00:00
Robert Roebling
77efa6a8fc Minor changes to printing sample.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 12:41:01 +00:00
Robert Roebling
cfcc393212 Font work.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 12:40:45 +00:00
Robert Roebling
138618acb9 Small speed up to fonts and support for scaling.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18937 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 12:39:51 +00:00
Václav Slavík
e046e5f1e7 compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18936 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 12:36:48 +00:00
Václav Slavík
778262c49b don't forget to backport Robert's GetInternalFont change
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18935 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 12:36:28 +00:00
Gilles Depeyrot
99c2d4f20c added CarbonFrameworkLib to CodeWarrior 5 projects
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 11:24:49 +00:00
Vadim Zeitlin
1558859090 added iosfwrap.h (wrapper for <iosfwd>)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18933 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 00:35:19 +00:00
Vadim Zeitlin
65f19af139 added iosfwrap.h (wrapper for <iosfwd>)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18932 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 00:12:12 +00:00
Vadim Zeitlin
5d76f46282 added support for non flexible (in one direction only) flexible sizers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18931 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-26 00:04:24 +00:00
Vadim Zeitlin
2abb9d2f17 added wxArray::SetCount()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18930 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 23:47:33 +00:00
Vadim Zeitlin
0bbe4e299c documented wxT(), _T(), _()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18929 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 22:49:41 +00:00
Mattia Barbon
5709329c88 Compilation fix for changed wxSizer::Remove() signature.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18928 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 16:44:43 +00:00
Vadim Zeitlin
c781807d89 removed wxICON_IS_BITMAP, it is now always (implicitly) set to 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 13:06:00 +00:00
Vadim Zeitlin
e0d8fb4572 restored int (instea of size_t) in Remove() and Detach(); TRUE/FALSE -> true/false
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18926 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 12:50:32 +00:00
Vadim Zeitlin
d162a7ee7d removed warnings about using the deprecated functions and replaced untyped
wxLists with the type safe equivalents (patch 668204 from Dimitri)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18925 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 12:28:51 +00:00
Vadim Zeitlin
5e3841bf80 fixed typo in library name
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18924 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 12:13:36 +00:00
Vadim Zeitlin
8e41796c6c File/DirExists() are const now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18923 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 12:01:57 +00:00
Gilles Depeyrot
df861444a1 added CarbonFrameworkLib to CodeWarrior 5 projects
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18922 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 11:52:00 +00:00
Gilles Depeyrot
2c74cde0c6 added CarbonFrameworkLib to CodeWarrior 5 projects
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18921 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 11:08:08 +00:00
Ron Lee
04cd30dea2 Update wxList operators, TRUE, FALSE.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18920 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 04:52:21 +00:00
Ron Lee
cdd64cc06c Upated list operators, TRUE, FALSE.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18919 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 04:44:53 +00:00
Ron Lee
8f91dda1b4 Don't use bitmap by default.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18918 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 04:38:01 +00:00
Ron Lee
4f8090e092 Update list operators, s/TRUE/true/ etc.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18917 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 04:35:21 +00:00
Ron Lee
a0f3867a6a Don't default to using bitmap.
Replaced old list operators.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 04:26:33 +00:00
Ron Lee
8ddf18dd0d Updates to packaging from the 2.4.0.2 release.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18915 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 04:20:13 +00:00
Ron Lee
c155898a21 Added missing quantize.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18914 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 04:09:06 +00:00
Vadim Zeitlin
7b4c314952 moved GetRed() in its correct place in alphabetical order
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18912 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 01:09:42 +00:00
Vadim Zeitlin
01802c507c typo fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18911 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-25 01:07:20 +00:00
David Webster
4fd899b671 Support for new native OS/2 tree control with drag-and-drop.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18909 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-24 22:31:41 +00:00
David Webster
c0ae383ac0 Support for new native OS/2 tree control.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18908 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-24 22:26:04 +00:00
Julian Smart
5d9ea849d8 Removed spurious character
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18907 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-24 13:51:56 +00:00
Julian Smart
85b7bb3557 Applied patch [ 673055 ] Text rendering in wxGTK 2.4.0 and GTK2 fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18906 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-24 12:36:04 +00:00
Julian Smart
82e5f91bff Applied patch [ 668155 ] Refresh problem when msgbox is shown
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18904 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-24 12:29:06 +00:00
Julian Smart
c8c5c7f62e Applied wxFileHistory menu separator patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18903 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-24 12:20:51 +00:00
Julian Smart
e910c00040 Only use patch from Otto Wyss on universal, for now.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18901 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-24 12:12:06 +00:00
Julian Smart
95bcc40c74 Applied patch [ 666379 ] CalCtrl doesn't use best sizes for the year combobox
In the calender the size of the combobox for the year
is just defined by a margin from the month combobox to
the left border. While in wxUniv the year control can't
show all 4 digits, in wxMsw it show almost twice as
much.Instead the year should use it's best size and be
left aligned to the calendar. Just in case the month in
any language is longer than it has space in the
calendar it is shortend.This way the year always can
show the 4 digits.

This patch relies on the fact that a combobox has a
good best size implementation. This is not the case
with wxMSW but I don't know why. In wxUniv there is
another patch [634896].


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18900 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-24 12:00:28 +00:00
Julian Smart
53b982112d Applied patch [ 665806 ] Better slider test in widget sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18899 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-24 11:55:29 +00:00
Julian Smart
5cdff2990b Applied patch [ 665088 ] Setup options cleanup (wxUniv)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18898 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-24 11:53:06 +00:00
Julian Smart
6766e5d136 Applied patch [ 621451 ] Fixed version of wxSlider class
Otto Wyss

This patch corrects several bugs in the wxSlider class
for the wxUniversal/MSW port. It affects the files
"slider.h", "slider.cpp", "win32.cpp" and "gtk.cpp"
(and others). The slider should now work as expected. A simple test
program can be downloaded from

"http://dpartialmirror.sourceforge.net/Test/".


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18897 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-24 11:23:52 +00:00
Vadim Zeitlin
350777b68f added and documented wxDirTraverser::OnOpenError
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18895 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-24 00:32:17 +00:00
Vadim Zeitlin
d1be6261e3 mention Watcom makefile for wxBase
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-24 00:31:15 +00:00
Vadim Zeitlin
2f0c19d0a8 minor changes to wxDir test code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18893 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-24 00:07:42 +00:00
Mattia Barbon
182c0f4675 Removed backported changes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18890 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-23 20:38:55 +00:00
Mattia Barbon
9f667cbcb2 Clearly indicate that DialogEd requires wxr to compile.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18888 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-23 20:30:40 +00:00
Václav Slavík
a663cce7f9 removed wxEncodingConverter from docs where wxMBConv should be mentioned instead
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-23 19:49:53 +00:00
David Webster
c4f4cf895c Try this again
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18883 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-23 14:22:05 +00:00
Vadim Zeitlin
06e8e72d84 updated for the latest makewat.env changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18880 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-22 23:03:35 +00:00
Vadim Zeitlin
ae7583b4bf yet more doc fixes to backport
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18879 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-22 21:49:06 +00:00
Vadim Zeitlin
3492e7c804 fixed Update() signature
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18878 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-22 21:46:45 +00:00
Vadim Zeitlin
efa7066d36 use correctly defined LIBPAGESIZE instead of 512 for the page size
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18874 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-22 21:02:34 +00:00
Vadim Zeitlin
8bbbae215c made wxBitmapRefData private (actually, this also fixes some bug so it's not absolutely gratitious, but I already closed the bug not knowing that my cvs checkin was going to timeout and die and don't remember any more what it was...)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18867 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-22 17:43:02 +00:00
Vadim Zeitlin
33a7c3dd0b linking fix for wxUSE_WCHAR_T=0: always provide wxStrtok() unless HAVE_STRTOK_R is defined
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18866 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-22 17:32:43 +00:00
Vadim Zeitlin
545d1e6050 update Watcom section; minor additions to the other ones
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18865 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-22 17:31:04 +00:00
Vadim Zeitlin
a7b4607f4a compilation fixes for OpenWatcom
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18864 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-22 17:19:23 +00:00
Vadim Zeitlin
c9b6238d67 don't always rename the files before compiling with Watcom, this is not needed any longer with OpenWatcom (but still keep the possibility to enable this file renaming for older versions)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18863 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-22 17:15:39 +00:00
Vadim Zeitlin
a0499e2f21 new (for wxBase) or updated and (hopefully() improved Watcom makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18862 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-22 17:13:52 +00:00
Vadim Zeitlin
23d2edff35 fixed an unused parameter warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18861 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-22 17:10:49 +00:00
Vadim Zeitlin
7d2304132b no changes (modeline tweaked)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18860 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-22 17:04:12 +00:00
Vadim Zeitlin
23efb556d9 corrected and expanded
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18859 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-22 16:04:22 +00:00
David Webster
b45bca403a New native OS/2 list control.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18858 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-21 23:46:27 +00:00
David Webster
9794cae1b3 New native OS/2 list control.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18857 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-21 23:35:16 +00:00
David Webster
c220541de4 New native OS/2 list control support.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18856 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-21 23:34:02 +00:00
Václav Slavík
730dfeb496 patch 672127: Adds required check for wxUSE_WXHTML_HELP to chkconf.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18855 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-21 23:28:07 +00:00
Vadim Zeitlin
9e300531e5 compilation fix for the last check in (sorry)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18851 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-21 19:57:34 +00:00
Gilles Depeyrot
f823cacbda corrected wxList::Node declarations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18850 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-21 19:44:23 +00:00
Vadim Zeitlin
7eb833e673 attempt to fix crash in DeleteAllItems()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18849 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-21 18:56:31 +00:00
Julian Smart
e7b6ce1cf9 Updated wxBitmap overview
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18848 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-21 08:58:30 +00:00
Václav Slavík
63a76696df fixed MGL libraries detection code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18836 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-20 23:23:57 +00:00
Mattia Barbon
c3f64df223 Fixed a typo in makefile.vc, updated version numbers in templates
(.DSPs were already up to date).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18835 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-20 21:57:10 +00:00
David Webster
dc259b7926 TRUE not true, FALSE not false
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18834 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-20 21:22:43 +00:00
Václav Slavík
cba5a276e4 added wxART_MISSING_IMAGE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18832 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-20 00:31:28 +00:00
Václav Slavík
e879e020e7 compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18831 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-19 23:32:04 +00:00
Chris Elliott
18f7d0e1db commit missing .rc file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18830 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-19 21:35:06 +00:00
Václav Slavík
82e94f591f updated for new/better way of declaring wxART_xxx constants
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18827 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-19 18:10:47 +00:00
Václav Slavík
214bdb93da use wxART_BROKEN_IMAGE in wxHTML
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18826 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-19 18:10:09 +00:00
Václav Slavík
fd397f9966 use wxART_MISSING_IMAGE in wxHTML
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18825 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-19 18:08:44 +00:00
Vadim Zeitlin
5ff72dc423 added --with-wxdir=DIR option
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18824 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-19 12:04:07 +00:00
Mattia Barbon
db8b7c5061 More changes to be backported.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18823 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-19 10:18:50 +00:00
Mattia Barbon
24dc054793 Patch [669503] Patch to CW7 wxMSW project file
from Igor Mikolic-Torreira


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18822 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-19 10:15:45 +00:00
Mattia Barbon
a203834e6b Patch [669508] Define Win32 symbols for CW in platform.h
from Igor Mikolic-Torreira


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18821 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-19 10:10:54 +00:00
Mattia Barbon
cceb71da44 Patch [665886]: Fix smapi.cpp to support new for loop scoping.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18819 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-19 10:01:52 +00:00
Mattia Barbon
1bc822dfb5 Derive wxBitmap from wxBitmapBase in wxMotif, with the appropriate
changes to wxIcon.
  Fix deprecation warnings and use %p to format WXWidget in debug output
(fixes the 4 non-deprecation warnings).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18818 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-19 09:52:29 +00:00
Ron Lee
2fda214570 We surely don't need two debugging sections,
called one Logging features instead.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18816 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-19 08:20:38 +00:00
Václav Slavík
192ce0bec9 better XRC handler for wxToolBar
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18815 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-18 23:56:36 +00:00
Václav Slavík
432be5aade reformatted for 79 chars width and added wxToolBar docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18814 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-18 23:50:36 +00:00
Václav Slavík
c37ffc1fef updated wxToolBar handler to support new wxToolBar features
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18813 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-18 23:49:28 +00:00
Mattia Barbon
fd304d989b Fix some wxMotif build warnings about deprecated methods.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18811 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-18 13:01:17 +00:00
Vadim Zeitlin
52c71b808f experimental --inplace flag implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18810 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-18 03:09:08 +00:00
Vadim Zeitlin
8d90d2f25f attempts to fix vsnprintf() detection under HP-UX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18809 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-18 02:40:03 +00:00
Vadim Zeitlin
ec0d6da38d attempts to fix vsnprintf() detection under HP-UX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18808 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-18 02:33:13 +00:00
Vadim Zeitlin
677eb52d3f no real changes, just cleanup after merging in Vaclav's changes which were the same as I had done locally (but forgot to commit)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18807 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-18 01:53:08 +00:00
Vadim Zeitlin
1b80ba97f3 fixed resource leak in MemoryHDC (closes bug 670016)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18806 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-18 01:51:05 +00:00
Václav Slavík
cc81d32f2b TRUE/FALSE -> true/false in documentation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18805 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-18 00:16:34 +00:00
Václav Slavík
4aa3178674 why the heck should something that reacts on wxID_CLOSE be called OnQuit?
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18804 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-18 00:03:59 +00:00
Václav Slavík
e7266247d5 added wxFileName::MakeRelative test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18803 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-18 00:03:30 +00:00
Václav Slavík
65d8ef1e73 added --disable-compat24, 22 compatibility is off by default
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18802 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-18 00:02:32 +00:00
Václav Slavík
b4a89d27eb wxLocale::Init bugfix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18801 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-18 00:01:41 +00:00
Václav Slavík
56acdfef2f use wxFileName::MakeAbsolute istead of Normalize
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18800 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-18 00:01:29 +00:00
Václav Slavík
0894707e7c added wxFileName::MakeAbsolute
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18798 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-18 00:01:18 +00:00
Václav Slavík
7f891ef107 no need to have this VMS-only; removed TABs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18797 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-18 00:00:22 +00:00
Robin Dunn
c9c50e2395 wxMac (and maybe others?) get PAGEUP/PAGEDOWN instead of NEXT/PRIOR
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18795 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-17 22:52:50 +00:00
Vadim Zeitlin
4522bb3ecf use wxDynamicLibrary instead of wxPluginManager
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18794 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-17 20:52:39 +00:00
Mattia Barbon
d66dcb6022 Under Cygwin, in platform.h default to wxMSW unless otherwise specified.
Do not #define __WIN95__, __WINDOWS__, __WXMSW__ on the command line for
Cygwin/MinGW (when build with makefiles), since platform.h already does
that for us.
  Always check for __WIN32__, not for WIN32 or _WIN32 (just for
consistency).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18793 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-17 20:01:20 +00:00
Václav Slavík
b78a78f779 (probably) fixed wxLocale::Init with Borland C++
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18792 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-17 19:58:53 +00:00
Stefan Neis
e107213f89 Fixed typo in test for WX_STATVFS_T
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18791 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-17 14:02:25 +00:00
Vadim Zeitlin
b448f30e9c Borland apparently uses for int64 in printf(), not
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18790 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-17 13:27:20 +00:00
Vadim Zeitlin
525582584c check for NULL szLocale in Init()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18789 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-17 12:39:00 +00:00
Vadim Zeitlin
649a48a216 tried to make wxCloseEvent docs more clear too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18788 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-17 11:58:40 +00:00
Vadim Zeitlin
448025b0dc documented UngetWriteBuf overload
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18787 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-17 11:04:58 +00:00
Stefan Csomor
f81127c568 added horizontal scrollbars to listboxes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18786 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-17 10:42:33 +00:00
Stefan Csomor
b9e3bdc539 make sure wxMac fonts are never AntiAliased (measuring problems would occur, because char-widths become fractional then)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18784 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-17 10:29:59 +00:00
Stefan Csomor
9f67b77690 include needed for CFString conversion routines (param default)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18783 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-17 10:27:48 +00:00
Stefan Csomor
ac17f9b104 Get/SetNoAntiAliasing implemented
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18782 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-17 10:24:59 +00:00
Vadim Zeitlin
24174c30e0 tried to make Close() docs more clear
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18781 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-17 01:32:38 +00:00
Ron Lee
dc18c8f1b2 update libpng-dev deps.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18780 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-16 23:55:51 +00:00
Vadim Zeitlin
974d9c98f0 added links to the event docs from the default event processing section
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18779 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-16 22:50:30 +00:00
Mattia Barbon
0ec6fd04eb Remove calls to a couple of deprecated methods, fix wxMotif build with
GCC 3.2, remove deprecated (and unused) fstream.h.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18778 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-16 20:44:47 +00:00
Mattia Barbon
46675b4610 Implement vertical toolbar under Motif.
Notify parent frame when toolbar is moved/resized/added/deleted so that
frame childs can be correctly repositioned.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18777 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-16 20:41:07 +00:00
Julian Smart
b05206c98b Added About menu
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18776 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-16 15:24:13 +00:00
Julian Smart
476d311420 Added Mac icons to helpview
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18775 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-16 15:21:19 +00:00
Julian Smart
2c4c6c0ad0 Added CW project file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18774 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-16 14:31:41 +00:00
Stefan Csomor
c718e0b31c added missing includes for wxMac specific additions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18773 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-16 14:19:14 +00:00
Stefan Csomor
d3d3426196 adapted wxSizer::Remove type to new header
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18772 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-16 14:11:24 +00:00
Vadim Zeitlin
2f82c92009 forgot to include wxControlWithItem docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18771 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-16 13:21:38 +00:00
Vadim Zeitlin
f21fcc9d2e the find dialog is created hidden, as all the other top level windows, but the docs said otherwise
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18770 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-16 13:03:50 +00:00
Vadim Zeitlin
eff41ee7f5 fixed detection of whether we're invoked from the top level configure or not
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18769 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-16 12:58:02 +00:00
Julian Smart
d9b21c9f47 ReDOS-ified project files
Added menubar for wxHTML help viewer on Mac
Added some Mac-specific code for HelpView


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18768 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-16 12:26:09 +00:00
Stefan Csomor
5ab6aab880 preferences menu implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18766 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-16 06:54:47 +00:00
Stefan Csomor
ce72eadb4d renaming because of conflicts with base Create::
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18765 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-16 06:53:32 +00:00
Stefan Csomor
22ab1509cd xml projects for CW 8
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18764 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-16 06:50:42 +00:00
Stefan Csomor
1b6b675be3 additions for __MWERKS__
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18763 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-16 06:47:22 +00:00
Stefan Csomor
513c3efc49 conversion scripts for CW 8 Mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18762 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-16 06:44:49 +00:00
Václav Slavík
4e0862c4fd XRC fixes can be backported
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18758 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-15 23:22:13 +00:00
Václav Slavík
e5db16098c fix object_ref handling in XRC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-15 23:14:27 +00:00
Václav Slavík
317a0d7361 1. made XRC immune against changing CWD
2. fixed object_ref handling


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18756 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-15 23:14:07 +00:00
Ron Lee
dc5e3b9ec5 gah. escape $ in the here block.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18754 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-15 22:50:23 +00:00
Ron Lee
82a649b67c reverted the --inplace addition and instead documented the use of
--prefix and --exec-prefix to do the same thing.  I can't think of
any way to do this right now with one flag without making some
assumption about the users working habits.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18753 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-15 22:44:38 +00:00
Vadim Zeitlin
1fd16ce13c added checks to prevent running sub configure scripts directly (they can only
be executed by the top level configure)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18752 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-15 22:04:32 +00:00
Vadim Zeitlin
89e6bf6d7a updated configure to match configure.in changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18751 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-15 21:30:05 +00:00
Vadim Zeitlin
134ecc85d0 added WXWIN_COMPATIBILITY_2_4
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18750 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-15 21:15:00 +00:00
Julian Smart
d118863525 Applied David's fix for not autoconf-ing on RHL8
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18748 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-15 16:12:12 +00:00
Vadim Zeitlin
cdc1d13baa Maximize(FALSE) change can be backported
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18747 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-15 14:59:28 +00:00
Vadim Zeitlin
a0be434e78 fixed calling Maximize(FALSE) before the window is shown (bug 667665)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18746 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-15 14:58:17 +00:00
Vadim Zeitlin
a3bc6643b7 make uninstall should remove wxwin.m4
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18745 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-15 14:50:36 +00:00
Vadim Zeitlin
8da8907446 corrected Get/SetFrame() parameter/return type
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18744 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-15 14:45:08 +00:00
Vadim Zeitlin
9b67a3fd2e removed OnXXX() methods, added new default event handling section
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18743 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-15 13:27:15 +00:00
Julian Smart
732b838637 Patch for Winlib: struct stat is defined in sys/stat.h, which is not
pulled in by unistd.h on some system.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18742 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-15 08:17:25 +00:00
Vadim Zeitlin
37a0271532 update wxStaticText check in revisions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18740 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-15 00:55:36 +00:00
Vadim Zeitlin
b826684e26 fix for the previous commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18739 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-15 00:54:46 +00:00
Vadim Zeitlin
747798efb8 some mor minor bug fixes which can be backported
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18736 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-14 23:48:19 +00:00
Vadim Zeitlin
6a629e51df fixed wxStaticText best size calculation (closes bug 667324)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18735 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-14 23:47:12 +00:00
Vadim Zeitlin
5553c7cfe0 Start() should resume the stopwatch if it is suspended
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18734 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-14 22:22:27 +00:00
Julian Smart
a006e78bd3 Fixed refresh bug on early versions of MacOS X by
refreshing whole window on (de)activation


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18729 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-14 21:10:32 +00:00
Stefan Csomor
ab83849cea added TARGET_CARBON and __MACH__ info
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18728 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-14 20:34:16 +00:00
Gilles Depeyrot
0211e0d557 clarified some Mac OS related preprocessor defines
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18727 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-14 20:15:44 +00:00
Vadim Zeitlin
0b481c72b6 compilation fix for wxUSE_CONSTRAINTS==0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18726 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-14 19:40:55 +00:00
Mattia Barbon
0cd0d9a5ae #define HAVE_W32API_H for Cygwin/GCC 3.x, too.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-14 18:29:10 +00:00
Julian Smart
2e38557f30 Applied patch [ 667563 ] Wine: compile fix for using glibc/msvcrt
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-14 09:59:31 +00:00
Vadim Zeitlin
333b7dac15 fixed incorrect cast in wxRegKey:GetName()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18722 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-14 09:02:38 +00:00
Jouk Jansen
5a2db5f1df Committing in .
Updates for OpenVMS support

 Modified Files:
 	wxWindows/src/motif/descrip.mms
 	wxWindows/src/unix/utilsx11.cpp
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18721 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-14 07:22:31 +00:00
Gilles Depeyrot
eb22f2a6dc updated source to not use deprecated wxList methods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18720 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-14 07:01:22 +00:00
Vadim Zeitlin
8baeca5b24 mention Solaris 7 compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18717 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-13 23:16:18 +00:00
Vadim Zeitlin
85da04e95b use WX_STATVFS_T instead of trying to guess statvfs() argument
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18716 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-13 21:55:24 +00:00
Vadim Zeitlin
54ab82b3f9 added configure test for WX_STATVFS_T
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18715 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-13 21:54:29 +00:00
Ron Lee
9cbee2ceee Improved const correctness.
Clear wxWindow containing sizer on Remove( index ).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18714 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-13 19:31:37 +00:00
Stefan Csomor
6b57b49ae3 cursor cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18713 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-13 19:19:35 +00:00
Stefan Csomor
c6a071d2d2 cursor functionality expanded
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18712 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-13 19:17:53 +00:00
Stefan Csomor
8165e9b648 additional infos for wxMac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18711 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-13 19:07:08 +00:00
Ron Lee
b1d4dd7add Split this out from other changes to keep things sane..
wxDeprecated KeyCode.
wxDeprecated old wxList compat methods.
Replaced a large number of them in the gtk build already, but there are
still plenty more so feel free to help nuke them as you find them.
s/^I/    / and s/TRUE/true/ etc. a couple of these too.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18707 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-13 05:17:41 +00:00
Václav Slavík
5797172366 added info about ShowFullScreen changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18706 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-12 23:51:52 +00:00
Vadim Zeitlin
64f590eaa1 DeleteAllItems() does send DELETE_ITEM events (closes bug 664281)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18705 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-12 23:34:29 +00:00
Vadim Zeitlin
a40c9444bb compilation fix for wxUSE_RICHEDIT == 0 (closes bug 662252)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18704 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-12 23:24:46 +00:00
Vadim Zeitlin
14347204d3 more docs about compiler constants
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18703 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-12 22:56:05 +00:00
Vadim Zeitlin
a30c309aa8 added wxCHECK_GCC/W32API_VERSION
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18702 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-12 22:55:05 +00:00
Vadim Zeitlin
652703802c OpenWatcom fixes may be backported
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18701 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-12 22:45:49 +00:00
Vadim Zeitlin
4c87eb44c2 OpenWatcom compilation fixes (patch 665959)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18700 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-12 22:40:48 +00:00
Vadim Zeitlin
c5c843e007 compilation fix for wxUniv (patch 664699)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18699 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-12 22:31:16 +00:00
Vadim Zeitlin
b2697d4205 unTABbed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18698 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-12 22:30:51 +00:00
Vadim Zeitlin
29f82345df set wxUSE_WIZARD to 1 by default now that it works (patch 663321)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18697 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-12 22:28:26 +00:00
Vadim Zeitlin
890741df89 removed unneeded (and causing link errors) wxArrayPages from wizard code (patch 663321)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18696 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-12 22:26:31 +00:00
Vadim Zeitlin
e30285abc6 compilation fixes for non default wxUSE_XXX values (patch 662781)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18695 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-12 22:20:46 +00:00
Vadim Zeitlin
12c44eb56d corrected m_commandString type to wxString (patch 661648)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18694 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-12 22:06:31 +00:00
Vadim Zeitlin
7f04165e6f don't call stat() *and* lstat() (as if the file dialog wasn't already slow enough...); minor code cleanup (removed a few #ifdef's, TABs and other crap)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18692 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-12 14:24:32 +00:00
Mattia Barbon
7b507740a8 Remove unneeded dependencies.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18691 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-12 14:09:30 +00:00
Mattia Barbon
4995ca8037 Remove use of deprecated KeyCode accessor.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18690 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-12 13:52:12 +00:00
Mattia Barbon
a43d5db22b Changes to be backported.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18689 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-11 21:02:16 +00:00
Mattia Barbon
77e00fe9da Do not use deprecated functions.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18688 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-11 21:00:50 +00:00
Mattia Barbon
0fccfc51e6 Fix linking problems with MSVC 5.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18687 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-11 20:57:16 +00:00
Mattia Barbon
1c1572053a Fix PCH problems with some versions of CodeWarrior.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18685 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-11 20:55:27 +00:00
Mattia Barbon
a29ee70613 If -1 is used for width/height, use best size.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18684 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-11 15:03:42 +00:00
Mattia Barbon
07157c53d0 Use checkbox if togglebutton not available.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18683 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-11 15:00:26 +00:00
Mattia Barbon
a969055e89 Removed unused, unimplemented and undocumented wxBitmapCheckBox stub.
Minur cleanup in wxCheckBox::Create.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18682 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-11 14:42:38 +00:00
Mattia Barbon
a4e64fb55e Documented wxMotif filedialog limitations WRT wildcard syntax.
Modified filedialog to either extract the wildcard (if only one wildcard
is present) or assert (if more than one is present).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18681 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-11 14:36:25 +00:00
Stefan Csomor
992c81e203 using the new alerts under OSX - no string255 limits anymore
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18680 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-11 11:57:25 +00:00
Stefan Csomor
3d963f8137 added conversion function to CFStringRefs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18679 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-11 11:56:48 +00:00
Stefan Csomor
67e3d9d399 removed commented out snippets
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18678 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-11 11:54:27 +00:00
Ron Lee
094e328c21 Changes resulting from the 2.4.0 release run.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18677 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-11 03:50:44 +00:00
Vadim Zeitlin
82c23bb595 removed TABs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18676 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-10 23:52:17 +00:00
Vadim Zeitlin
1ec5cbf3de removed wxLog::HasPendingMessages() (it can't be made to work correctly with wxLogChain); don't send the messages going to a log file to debug output under MSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18675 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-10 23:47:14 +00:00
Vadim Zeitlin
6dd16e4f26 removed style parameter from MSWCreate(), it is unneeded
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18674 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-10 23:27:17 +00:00
Vadim Zeitlin
29020b9048 use MSWCreateControl() instead of duplicating its code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18673 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-10 23:24:44 +00:00
Vadim Zeitlin
278c927dd9 removed style parameter from MSWCreateToolbar(), it is unneeded
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18672 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-10 23:23:49 +00:00
Vadim Zeitlin
eb199c515b removed CopyObject(), added copy ctor, corrected Dump()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18671 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-10 17:57:45 +00:00
Stefan Csomor
450a5bdd2d corrected type for text document (non standard save handler)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18670 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-10 17:57:05 +00:00
Stefan Csomor
738a6daa71 routing all apple events to the document manager instance if present, fully supporting launch by document double click, print by draging the document onto the printer icon
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18669 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-10 17:56:24 +00:00
Stefan Csomor
72625f830b switching to safe yields, because we got into loops when handling print document apple events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18668 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-10 17:52:54 +00:00
Vadim Zeitlin
106844da7d moved assert for parent window not being a static box to common code where it should catch more cases
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18667 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-10 17:19:57 +00:00
Stefan Csomor
b8afeb4321 added code for respecting the creator & types when saving files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18666 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-10 16:24:01 +00:00
Stefan Csomor
521a2cb154 makefile important for setting the correct creator of the app
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18665 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-10 16:18:08 +00:00
Stefan Csomor
eb017efed9 Register Default Creators under wxMac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18664 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-10 16:13:40 +00:00
Stefan Csomor
1f6189acd0 added custom icons
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18663 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-10 16:12:32 +00:00
Stefan Csomor
e5940192b2 added custom icons
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18662 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-10 14:44:51 +00:00
Stefan Csomor
95d43281c3 no message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18661 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-10 14:44:06 +00:00
Julian Smart
d95861551a Corrected DLL version number
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18660 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-10 13:25:20 +00:00
Julian Smart
c4f48f14f1 Fixed corrupt files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18659 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-10 11:38:51 +00:00
Gilles Depeyrot
f346733b72 library installation base name and wxMac resources file base name
must be identical in order for the resource file to be found


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18647 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-09 20:57:31 +00:00
Gilles Depeyrot
23f0f906a2 removed execcmn from list of files to compile in release target
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18646 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-09 06:44:57 +00:00
Václav Slavík
d1a9c82bd1 fixed ANSI/Unicode incompatibility of the cache (bug 663396)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18645 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-08 19:44:53 +00:00
Vadim Zeitlin
79f306d721 removed unneeded code which was inside #if 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18644 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-08 12:33:11 +00:00
Vadim Zeitlin
381adb7449 #undef LoadBitmap() too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18643 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-08 12:27:28 +00:00
Julian Smart
d11cd571c9 Fixed DSPs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18640 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-08 10:03:54 +00:00
Julian Smart
b1e635598d Applied cvsignore patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18638 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-08 10:01:33 +00:00
Julian Smart
0447ac8e64 Eliminated streams from scoredg.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18636 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-08 09:14:35 +00:00
Vadim Zeitlin
90b1d65f2f define true/false if the compiler doesn't have them
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18630 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-07 22:29:59 +00:00
Mattia Barbon
038305d008 Left/right arrows were swapped.
Fix wxSP_WRAP handling.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18629 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-07 21:41:28 +00:00
Julian Smart
a12df58228 Corrected some typos
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18628 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-07 21:19:13 +00:00
Julian Smart
b4da152ea3 Removed old __WXWINE__ support (obsoleted by new __WINE__ symbol)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18624 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-07 18:11:53 +00:00
Julian Smart
eaa6418668 Removed redundant <search.h> inclusion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18622 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-07 16:49:22 +00:00
Mattia Barbon
3d8704720a Reverted accidental commit.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18621 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-07 15:17:40 +00:00
Mattia Barbon
1d390a62f9 Escape some _.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18620 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-07 15:15:41 +00:00
Václav Slavík
ddbfcced85 removed wxTLW cruft now that all ports have it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18619 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-07 15:03:56 +00:00
Julian Smart
5283098e13 Applied patch [ 662321 ] Port of wxWindows to Wine
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18618 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-07 13:49:08 +00:00
Ron Lee
12a3f2275c Deprecated wxSizer::Remove( wxWindow* ), s/Remove/Detach/ in most places.
Made wxSizer child list typesafe.  I've not added the wxList implicit
conversion kludge yet, let's see who complains first perhaps..

Deprecated wxSizer::{G,S}etOption in favour of {G,S}etProportion in line
with the parameter name change in the docs.

Added {G,S}etSpacer consistent with the accessors for windows/sizers.

Made all wxSizer index parameters size_t -- we support no sensible
interpretation for negative indexes in them.  Hopefully this will
cause no real problems, but code doing (eg. Remove( 0 )) will need
to change to use 0u to resolve the ambiguity with overloaded members.
This is probably a Good Thing though, ymmv.

s/FALSE/false/g ; s/TRUE/true/g ; s/wxASSERT/wxASSERT_MSG/g in sizer.{cpp,h}

Fixed (I hope) the brokenness in wxSizer::Show -- I have no code to test
this yet, so it's a blind change, but spacers should now be hidden correctly
instead of ignored, and it should be properly reversable over multiple
calls now too.

removed pointless private scoping around DECLARE_CLASS macros.

Replace 0's I added previously with NULL -- not like that will end the
email thread either..

Added Add( wxSizerItem * ) & co.  There are probably a couple of other
places we can usefully do something like this too.  Stopped short of
refactoring everything to raise some issues about sizer method recursion
on -dev.

Updated wxSizer docs some more, they are still incomplete but getting
better.

wrapped KeyCode in wxDEPRECATED, converted all (gtk build) instances
to GetKeyCode.  There may be a few left for other ports.

Fixed a couple of other random compile warnings along the way.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18616 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-07 10:22:07 +00:00
Vadim Zeitlin
db50ec5a50 workaround for not appearing vertical scrollbar in wxTE_RICH2 controls
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18613 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-07 01:10:03 +00:00
Vadim Zeitlin
29343d0492 made the #error message less self-contradictory
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18612 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-06 23:13:13 +00:00
Vadim Zeitlin
5e2411ab49 fixed the return type of LoadIcon()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18611 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-06 22:46:53 +00:00
Gilles Depeyrot
b447a1a7bc corrected release target which included some include files in the build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18608 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-06 21:35:07 +00:00
David Webster
2f60dbe2e9 OS/2 updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18607 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-06 21:35:03 +00:00
David Webster
af30429f59 Remove ctl3d32.lib from make.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18606 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-06 21:33:35 +00:00
Julian Smart
9419379a37 Make it build in Unicode mode again
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18605 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-06 21:12:15 +00:00
Mattia Barbon
0de6dfa701 Implemented wxToplevelWindowMotif. (forgot to commit)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18604 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-06 20:54:54 +00:00
Gilles Depeyrot
7563339557 corrected getting FSRef associated with the POSIX path in wxString
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18603 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-06 19:38:18 +00:00
David Webster
0904e5e12a OS/2 patches missing from this version
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-06 17:50:21 +00:00
David Webster
57ff8a875b no message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18601 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-06 17:42:48 +00:00
Mattia Barbon
798a4529fe Implemented wxToplevelWindowMotif.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18600 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-06 16:36:23 +00:00
Mattia Barbon
f58d1d9978 Aparently someone modified templates/filelist.txt without committing.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18599 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-06 16:32:39 +00:00
Gilles Depeyrot
79597b2a4a updated Project Builder project for MoreFilesX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18597 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-06 07:21:05 +00:00
Robert Roebling
bbd006c0ce Removed usage of GetInternalFont() from GTK 2.0. This
also removes any usage of GdkFont. I left the actual
    deprecated method so that the change can be bckported
    without binary incompatible changes.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18596 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-05 22:59:44 +00:00
Robert Roebling
60d85ccb3d Removed usage of GetInternalFont.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18595 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-05 22:57:45 +00:00
Robert Roebling
cba9ef7f73 Minor fix related to wxMiniFrame drawing.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18594 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-05 22:56:57 +00:00
Robert Roebling
ba71852396 Corrected wxMiniFrame for GTK2 and removed its
use of GetInternalFont(). Somehow, the close
    button doesn't appear.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18593 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-05 22:55:38 +00:00
Vadim Zeitlin
8b39c006d8 #undef LoadIcon() too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18592 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-05 22:11:24 +00:00
Stefan Csomor
f1872c18e6 region calculation for windows with borders too small
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18587 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-05 18:25:27 +00:00
Vadim Zeitlin
7379599933 compilation warning fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18586 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-05 16:20:32 +00:00
Václav Slavík
48594fd2cd added my patches to the list of things to backport to 2.4
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18583 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-04 23:51:46 +00:00
Václav Slavík
8166ab4343 added more robust wxTLW::ShowFullScreen implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18582 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-04 23:34:34 +00:00
Julian Smart
ad0e4b6691 Use nicer (swiss) font for default
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18580 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-04 20:53:28 +00:00
Julian Smart
db0834fab8 A script for helping make RPMs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18579 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-04 20:31:11 +00:00
Václav Slavík
7071c92817 gcc has __attribute__((deprecated)) since version 3.1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18577 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-04 13:29:36 +00:00
Julian Smart
17e7431567 Indicated in the source and on initialisation that this is an obsolete sample.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18574 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-04 11:04:39 +00:00
Mattia Barbon
e9e4acc519 Remove #ifdef __WXSTUBS__ from headers.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18573 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-04 09:22:53 +00:00
Robin Dunn
52d6f640e8 With the fix in gtk/font.cpp and switching to an wxplicit wxBOLD, it
should be okay to uncomment the code setting the label font.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18563 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-04 03:59:26 +00:00
Robin Dunn
cd9a673cd7 Ensure that the wxNativeFontInfo internal data is copied when the
wxFontRefData is.  This solves a wxGTK2 problem where the
PangoFontDescription pointer is copied by the default assignment
operator, in a binary compatible way .


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18561 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-04 03:51:13 +00:00
Vadim Zeitlin
6431e33a50 added polish translations from Janusz Piwowarski
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18558 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-04 01:54:14 +00:00
Ron Lee
55804c9363 more thinko tweaks.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18557 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-04 00:12:50 +00:00
Ron Lee
deefd67952 Recommend python-xml for xrced.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18555 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-03 23:47:08 +00:00
Ron Lee
0ecfbbea12 Incorporate changes from 2.4 release.
Bump standards version.
Update overrides for 2.5
Disable generation of gtk-univ package.
Update wx-config manpage.
Add wxPython-tools manpage(s).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18553 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-03 22:51:42 +00:00
Ron Lee
6c99908c51 The exact version it was included doesn't appear to be documented
anywhere, but __attribute__ ((deprecated)) is empirically not
supported by gcc-2.95.4.  Best guess so far is 3.0 or 3.1 so I've
erred on the side of the former for now.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18551 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-03 20:52:10 +00:00
Robin Dunn
f3030ba726 Disable putting selected text in the Primary Selection, since wxGTK is
currenlty clearing the Clipboard when you do this.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18550 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-03 19:03:01 +00:00
Julian Smart
df37f0c65c Added opengl32.lib glu32.lib to OpenGL samples VC++ project files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18548 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-03 18:37:28 +00:00
Julian Smart
2188f34751 Added dialup to filelist.txt and wxUniv.dsp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18546 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-03 18:31:43 +00:00
Julian Smart
d89e39fcdc Added missing wx/frame.h inclusion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18545 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-03 15:24:56 +00:00
Julian Smart
12335fa6aa Clean up memory if have to exit early
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18544 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-03 14:59:07 +00:00
Julian Smart
c5f53eb8cb Added a note about 'make install'
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18543 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-03 14:08:53 +00:00
Julian Smart
c3a6a2bc10 Only enable tooltips on WIN32
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18542 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-03 13:40:43 +00:00
Julian Smart
c8f9a56b7c wxUSE_TOOLTIPs => 1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18540 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-03 12:53:33 +00:00
Stefan Csomor
be0b002a3e made static box only a frame region in all calculations (otherwise the background would not be redrawn in all situations)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18539 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-03 12:29:16 +00:00
Julian Smart
d4e5272b3a Applied patch [ 652336 ] Add tooltip support to wxUniv on Windows
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18537 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-03 12:14:59 +00:00
Julian Smart
df4a528177 Added glcanvas.cpp, tooltip.cpp, taskbar.cpp, wave.cpp to wxUniv/MSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18535 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-03 12:01:01 +00:00
Stefan Csomor
2ac013b1a5 recommit after mac binary lapsus
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18533 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-03 09:59:32 +00:00
Vadim Zeitlin
478d4ab7cf IsStandard() shouldn't return TRUE for formats >= wxDF_PRIVATE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18531 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-03 01:04:16 +00:00
Vadim Zeitlin
3e6562c110 argh, erased one extra line accidentally in the last commit -- restored
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18529 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 23:59:09 +00:00
Vadim Zeitlin
59018c74fe wx(Individual)LayoutConstraints may be copied
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18527 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 23:55:28 +00:00
Vadim Zeitlin
00e7a427a0 compilation fixes after applying DECLARE_NO_COPY_CLASS() patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18526 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 23:46:08 +00:00
Vadim Zeitlin
22f3361e1c use DECLARE_NO_COPY_CLASS() where applicable (patch 633384)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18525 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 23:38:11 +00:00
Vadim Zeitlin
0becd47010 support for using DIBs for wxBitmap implementation (patch 649866)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18524 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 23:28:56 +00:00
Vadim Zeitlin
f178ab7e82 use StretchBlt() if available (part of patch 649866)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18523 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 23:25:17 +00:00
Václav Slavík
c75274f93c added wxDEPRECATED
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18522 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 22:52:47 +00:00
Václav Slavík
b254d1fe03 mark wxImage's wxBitmap functions as deprecated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18520 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 22:49:50 +00:00
Vadim Zeitlin
802df2b744 documented wxDateSpan
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18516 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 22:10:21 +00:00
Vadim Zeitlin
93401be962 added operator==() and !=() for wxDateSpan
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18515 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 22:07:51 +00:00
Vadim Zeitlin
e1e1272f20 implemented support for column label alignment (closes 215870)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18514 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 21:29:21 +00:00
Vadim Zeitlin
9baf5184bd the file containing the list of things which can be backported to 2.4 branch later
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18513 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 21:00:28 +00:00
Vadim Zeitlin
caa20b1e31 added test for wxLIST_FORMAT_CENTRE/RIGHT
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18512 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 21:00:17 +00:00
Vadim Zeitlin
6770762dd3 set wxListItem mask automatically to the correct value when a SetXXX() method is called
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18511 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 20:59:40 +00:00
Vadim Zeitlin
df4ac4c7e9 fixed bug with wxTR_EDIT_LABELS not working with xwTR_MULTIPLE (bug 622089)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18510 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 20:21:41 +00:00
Vadim Zeitlin
d553ceb286 test InsertItems() trying to reproduce the bug 633150 -- but unsuccessfully
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18509 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 19:18:19 +00:00
Vadim Zeitlin
ea8e90b7ce show Univ prefix in wxWindows info dialog
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 18:43:56 +00:00
Vadim Zeitlin
a562f4fbde removed a couple of obsolete functions from wxDialog
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18507 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 18:39:32 +00:00
Stefan Csomor
47710b3b4f attempt to recommit , contained binary data for some reason
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18506 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 18:13:07 +00:00
Stefan Csomor
92629fa47b attempt to recommit , contained binary data for some reason
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18505 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 18:10:38 +00:00
Stefan Csomor
2beae4b5a5 easier angle conversion wx-mac , corrected elliptic arc which sometimes filled in the wrong direction, fixed rotated text under osx (OSX ignored hanging baseline attribute)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18504 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 16:30:53 +00:00
Stefan Csomor
f2d990adc1 corrected generation of all event members (client data) and implemented DoGetBestSize
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18502 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 09:37:52 +00:00
Vadim Zeitlin
047f39deb9 fixed wxMutexLocker ctor signature (patch 660549)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18500 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 01:00:17 +00:00
Vadim Zeitlin
0f66923e84 say that EVT_TEXT_ENTER requires wxTE_PROCESS_ENTER to be set (closes bug 659948)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18499 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 00:45:40 +00:00
Vadim Zeitlin
fa06b433fc fixed wxCaret::SetSize() (closes bug 659209)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18498 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 00:41:47 +00:00
Vadim Zeitlin
cd916794f0 made generic EmulateKeyPress() to work with Delete and BackSpace (closes bug 658409)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18497 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-02 00:07:13 +00:00
Vadim Zeitlin
fdd04d720f typo fix (closes bug 654197)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18496 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-01 23:39:07 +00:00
Vadim Zeitlin
e08bbf3708 added a test for check tbar buttons state
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18495 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-01 23:36:08 +00:00
Vadim Zeitlin
30e0e2518f tried to fix compilation with Watcom 11 (should fix the bug 651492)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18494 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-01 23:18:44 +00:00
Vadim Zeitlin
9112af3fd1 fix for HAVE_EXPLICIT for VC++ 6.0 (closes bug 651314)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18493 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-01 22:58:53 +00:00
Robin Dunn
65ca8c0b79 Changed wxLOG_Max to be a smaller (but still large) value
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18492 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-01 22:50:02 +00:00
Vadim Zeitlin
e2ca995fa3 don't send CHECKLISTBOX_TOGGLE event when Check() is called (closes bug 651140)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18491 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-01 22:41:10 +00:00
Vadim Zeitlin
a8dade3e27 added IsEmpty
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18490 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-01 22:09:41 +00:00
Vadim Zeitlin
3dabb1e51b added check/uncheck/toggle tests
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18489 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-01 22:09:14 +00:00
Vadim Zeitlin
bed5584e2a added wxControlWithItems docs, updated the others to refer to it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18488 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-01 22:08:11 +00:00
Gilles Depeyrot
0c98a14e54 use MoreFilesX instead of MoreFiles when building with Apple Developer Tools
added wxWindows version compatibility information to configuration summary


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18485 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-01 17:59:01 +00:00
Gilles Depeyrot
ec341c7e1f use MoreFilesX instead of MoreFiles when building with Apple Developer Tools
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18484 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-01 17:55:21 +00:00
Gilles Depeyrot
2d4e4f802f use MoreFilesX instead of MoreFiles when building with Apple Developer Tools
improved wxGenericDirCtrl when building with Apple Developer Tools
improved wxDirData to correctly handle hidden directories


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18483 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-01 17:53:02 +00:00
Gilles Depeyrot
15126fa8c2 MoreFilesX 1.0.1: A collection of useful high-level File Manager routines which
use the HFS Plus APIs wherever possible.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18482 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-01 17:20:59 +00:00
Robin Dunn
edc738528a Added wxLog::Get/SetLogLevel
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18475 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-01 05:16:07 +00:00
Robin Dunn
8eb70827f3 Fixed problem of FormatText causing both the formatted and unformatted
text to be displayed


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18466 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-30 22:17:37 +00:00
Gilles Depeyrot
05159a2750 SourceForge patch #654210 to fix naming/numbering shared libs under OS X
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-30 21:20:59 +00:00
Julian Smart
05ac7ac578 Corrected accidental pointer arithmetic in ClientToScreen and vice versa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18464 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-30 20:10:03 +00:00
Václav Slavík
fa2f5d3bc9 fixed encoding handling in ANSI mode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18462 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-30 18:55:33 +00:00
Ron Lee
96fdbb60f1 Ok, so we don't need the extra bool at all, we can just zero the sizer
pointer in wxSizerItem.  :-)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18461 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-30 15:26:47 +00:00
Ron Lee
00976fe56b Add wxSizer::Detach so we can detach child sizers without deletion.
Updated wxSizer docs for this and a couple of other missing/outdated
things.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-30 13:02:15 +00:00
Vadim Zeitlin
41f0b62a32 fixed buffer overrun when reading CCITT group 4 compressed TIFF files (patch 646603)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18459 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-30 01:09:16 +00:00
Vadim Zeitlin
4fa47e5643 compilation warning fixes (patch 651719)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18458 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-30 01:00:49 +00:00
Mattia Barbon
e13f128877 Allow building in unicode mode with just "make -f makefile.g95 UNICODE=1"
without requiring setup.h modifications.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18455 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-29 19:37:10 +00:00
Mattia Barbon
9a718b8623 Small updates:
corrected some URLS, used correct/current capitalisation for MinGW and
Cygwin, plus some minor clarifications.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18454 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-29 19:32:06 +00:00
Julian Smart
916095ba21 Tweaked the wording slightly for VC++ 5 compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18453 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-29 18:46:16 +00:00
Ron Lee
a8853c78ed Oops, don't cut and paste between ports, and do test compile both states
of a macro guard...


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18452 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-29 15:45:35 +00:00
Mattia Barbon
b9ecc16a80 LessTif 0.93 does not hang in wxWindow::ChangeFont as 0.87 did:
enable chainging window font again.
  Set/reset MappedWhenManaged flag when showing/hiding a window, otherwise,
since some common operations (moving, adding items to a listbox, ...) do
a Unmanage-Manage pair, calling Hide and then (for example) SetSize would
show the window again.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18450 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-29 07:59:02 +00:00
Mattia Barbon
17fe68bd23 Small correction: add WINDOWSLDLIBS when linking an executable.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18449 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-29 07:54:16 +00:00
Ron Lee
99006e446e Added wxTreeCtrl::GetItemParent to deprecate GetParent.
Moved GetParent into WX_COMPAT_2_2 and exposed base GetParent in
that case too.

Replaced all lib/sample uses of wxTC::GetParent with GetItemParent.

Updated docs to suit.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18448 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-29 07:48:21 +00:00
Vadim Zeitlin
01a4679360 fixed wxALL_FILES definition in Unicode build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18446 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-29 01:38:49 +00:00
Julian Smart
0222a60b34 Use path separator, not "/"
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18445 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-28 22:58:12 +00:00
Mattia Barbon
2dcb5b11f4 Allow using tmake from places other than the current directory.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18444 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-28 20:49:49 +00:00
Mattia Barbon
f657dbe781 Allow building Win32 DLL with wxGlCanvas using MinGW + configure.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18443 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-28 20:46:30 +00:00
Julian Smart
52ee226853 Updated some scripts
Small corrections to wxScrolledWindow doc


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18442 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-28 18:42:23 +00:00
Julian Smart
f54b065ea7 Fixed compilation by removing stream inclusion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18440 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-28 18:36:25 +00:00
Mattia Barbon
0a3451df8a Updated Svedish translation from Jonas Rydberg.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18438 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-27 22:24:23 +00:00
Mattia Barbon
3880dd5161 Fix Cygwin + makefile.g95 + wxUSE_PROLOGIO=0.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18436 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-27 22:07:46 +00:00
Mattia Barbon
78e376b56f Applied patch [ 652491 ] Update makefiles for mingw
from Greg Chicares, with some small modifications.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18435 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-27 21:58:36 +00:00
Mattia Barbon
17ebae657e Use wxWcslen instead of wcslen.
Work around a compiler bug: with (at least) GCC 2.95.3-5 under Cygwin,
the destructor for the global s_fileInfo is called twice (!). This does
hot happen if a function returning a reference to a static variable is
used.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18434 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-27 21:39:58 +00:00
Robin Dunn
91f580b235 Fix for potential divide by zero error
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18433 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-27 21:16:16 +00:00
Mattia Barbon
762e199741 wxPerl notes for DocView.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18432 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-27 18:30:48 +00:00
Julian Smart
5f133dc1bb Applied patch [ 657501 ] SpinButton wraps 1 too much
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18430 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-27 15:21:34 +00:00
Julian Smart
16990160f6 Applied patch [ 658174 ] Adds wxT() and char->wxChar conversion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18429 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-27 15:15:29 +00:00
Julian Smart
22f2279860 Applied patch [ 658505 ] Updates documentation for wxTimeSpan
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18428 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-27 15:12:38 +00:00
Julian Smart
657c88188f Applied patch [ 657515 ] Widgets sample notebook out of range
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18427 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-27 15:02:48 +00:00
Julian Smart
317246dfcb Applied patch [ 658786 ] Removes unresolved symbols from strconv (wxUniv/MSW)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18426 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-27 14:59:35 +00:00
Julian Smart
f9eee2db81 Applied patch [ 657969 ] Removes #if wxUSE_VALIDATORS code
for wxOS2


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18425 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-27 14:52:14 +00:00
Julian Smart
8251c0d6ac Added a necessary pixel to height if wxTB_NODIVIDER is specified
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18424 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-27 14:40:52 +00:00
Julian Smart
d07ce169a8 Fixed bug [ 657949 ] Segmentation fault in ~wxFileHistory
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18423 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-27 14:25:59 +00:00
Julian Smart
0156594543 Improved SetScrollbars fix using client size and max of window and virtual
sizes


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18422 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-27 14:17:55 +00:00
Václav Slavík
85452d7496 fixed XRCID() lookup of numeric control IDs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18419 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-26 23:36:34 +00:00
Robin Dunn
ba5da12f72 Use WXDLLEXPORT_DATA for wx*NameStr's
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18418 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-26 19:16:49 +00:00
Václav Slavík
4249ec2c52 1) fixed compilation of wxBitmap, wxIcon toplevel nodes
(to be backported into 2.4.1)
2) fixed wxrc when using -o dirname/filename


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18416 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-25 15:23:44 +00:00
Mattia Barbon
99ab3e3f56 Use wxClientDataDictionary for client data.
Factored out common code into wxSizeKeeper.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18415 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-24 18:41:42 +00:00
Mattia Barbon
c13c9657a4 Use wxXmString instead of XmString.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18414 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-24 18:37:10 +00:00
Julian Smart
8a653baab6 Reverted cross-compile patch.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18412 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-24 09:51:45 +00:00
Julian Smart
d0604192a5 Don't pass zero width or height to SetVirtualSize or layout is
messed up.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18405 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-23 23:42:13 +00:00
Vadim Zeitlin
4b4381cb84 minifram.cpp is a low level file under MSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-23 21:29:44 +00:00
Ron Lee
6d407f1953 Typo fix (as reported to Debian bts).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18402 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-23 21:20:54 +00:00
Julian Smart
8d1e36f7e3 Don't send explicit update event if single line
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18400 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-23 13:18:28 +00:00
Julian Smart
c90c201ab3 Applied cross-compile patch from Stephen Crowley
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18399 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-23 13:00:17 +00:00
Julian Smart
441582ddd8 Added *.ani to image sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18398 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-23 11:17:28 +00:00
Mattia Barbon
aff23fcd97 Unicode compilation fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18397 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-22 20:14:18 +00:00
Mattia Barbon
f37c24e078 Unicode compilation fixes.
wxpoem now compiles with default settings (making it compilable with
Unicode is a lost cause).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18396 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-22 19:57:17 +00:00
Julian Smart
a55e5190c7 FL event fix from Hans
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18393 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-22 12:17:57 +00:00
Julian Smart
45747ae371 Applied patch [ 657445 ] Contrib FL lib doesn't build with wxUniv
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18392 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-22 11:03:31 +00:00
Vadim Zeitlin
b74cce40fd handle accel keys for owner drawn menu items (based on the patch 657105)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18389 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-21 15:01:21 +00:00
Vadim Zeitlin
46a5e01e86 use SS_CENTERIMAGE to prevent wxStaticBitmap from stretching its bitmap; also a face lift for control creation code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18388 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-21 14:35:18 +00:00
Vadim Zeitlin
168954a1d1 fixed memory leak (patch 655899)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18387 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-21 14:32:55 +00:00
Vadim Zeitlin
894c8f3ef2 fixed a typo in cygwin make install
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18386 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-21 13:41:02 +00:00
Václav Slavík
5dac8a3b0e fixed 2 encoding handling bugs in XRC/wxrcedit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18384 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-21 13:35:13 +00:00
Václav Slavík
437bd21582 WX_XMLRES_CURRENT_VERSION_STRING wasn't Unicode safe
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18380 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-21 00:21:23 +00:00
Václav Slavík
6267a331cb 1) added wxFrame support to wxrcedit
2) fixes to wxrcedit so that generated files are compatible with new XRC
(both in patch #648659)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18379 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-21 00:20:35 +00:00
Julian Smart
fc9a9b2ab2 Do -> Redo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18370 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-20 11:15:05 +00:00
Julian Smart
d863ed8333 Cleaned up SetMenuStrings, factoring out redo and undo label accessors at the same time
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18369 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-20 10:15:06 +00:00
Vadim Zeitlin
f9becb8622 install the headers under wx/msw/gnuwin32
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18360 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-20 00:23:16 +00:00
Vadim Zeitlin
98e19a5863 fixed SetSelection() (and hence SetInsertionPoint()) behaviour when using richedit 3.0 with wxTE_RICH2 style and the control doesn't have focus
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18359 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-20 00:18:35 +00:00
Julian Smart
c76b1a30fa Fixed a problem with borders being set wrong sometimes on wxMSW, XP, VC++ 7
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18355 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-19 23:13:53 +00:00
Václav Slavík
5f265f87d9 we don't really have to use variable instead of constant...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18354 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-19 22:15:45 +00:00
Julian Smart
e39081afef Don't build IPC version of HelpView on Mac Classic
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18352 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-19 20:02:27 +00:00
Julian Smart
0bc836492e Added missing fldef.h to makefile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18348 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-19 12:21:25 +00:00
Julian Smart
192a9bf10f Apply table border fix to all ports.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18346 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-19 10:24:05 +00:00
Mattia Barbon
643e16ac3b Fix wxSingleChoiceDialog under wxMotif.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18343 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-19 09:56:03 +00:00
Julian Smart
76985f52b2 Fix border for wxGTK too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18342 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-19 09:54:47 +00:00
Ron Lee
8155b6405f Update packaging for 2.5
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18341 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-19 09:16:10 +00:00
Julian Smart
d840aae3ae Reinstated the cell border fix (wxMSW)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18339 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-19 07:47:06 +00:00
Václav Slavík
94bc8b14d4 simpler fix for rendering bug fixed in previous revision
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18335 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-18 23:32:22 +00:00
Julian Smart
75c116ab2c Applied patch [ 649599 ] Fixes bug 610850: Inserting a menu
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18333 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-18 21:23:25 +00:00
Vadim Zeitlin
0cde01aedc removed extra (non existing) Prepend() parameter
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18331 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-18 19:09:18 +00:00
Julian Smart
2f9a4d0e30 Fixed cell visibility test that was causing refresh glitches
in tables (since these were large enough cells to break the
original test)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18329 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-18 18:17:40 +00:00
Václav Slavík
b4eecb7e2f disable version-script on Solaris, it doesn't work
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18327 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-18 13:54:10 +00:00
Julian Smart
b819b854dd Fixed cell paint background refresh bug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18326 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-18 12:53:49 +00:00
Julian Smart
e01893d4ca Added $(EXTRADLLFLAGS) to CFLAGS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18325 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-18 08:33:27 +00:00
Robin Dunn
9e05364039 More unicode fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18319 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-18 06:24:15 +00:00
Vadim Zeitlin
bfedf6212c reset virtual root to NULL in DeleteAllItems()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18314 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-17 23:22:38 +00:00
Julian Smart
968bed8c37 Fixed [ 652512 ] wxPaintDC::FindInCache bug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18313 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-17 23:21:17 +00:00
Julian Smart
cd501207cf Applied patch [ 654877 ] Missing == != methods in wxRect2DInt
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18312 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-17 23:02:24 +00:00
Julian Smart
0fa2e104c5 Partially applied [ 632321 ] XRC object_ref fix
1. Fix object_ref so it at least works, with this I mean
XRC was not even handling the little sample in
tn0014.txt correct.

Hans Van Leemputten (hansvl)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18311 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-17 22:52:48 +00:00
Julian Smart
d1859a1fc1 Added wxUniv project file for dialogs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18308 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-17 22:28:42 +00:00
Julian Smart
ba7fe276d4 Doc corrections
filelist.txt correction and filedlgg.cpp inclusion for wxUniv/MSW


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18307 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-17 22:22:19 +00:00
Robin Dunn
4a69b0600a Added missing #if wxUSE_WAVE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18305 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-17 21:26:21 +00:00
Robin Dunn
18976605f5 Fixed possibility of releasing mouse if the window no longer had it captured
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18304 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-17 20:57:55 +00:00
Vadim Zeitlin
90aaa86507 free argv in Unicode build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18303 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-17 19:52:06 +00:00
Vadim Zeitlin
d47f8a6ec0 unicode compilation fix for wxBase
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18302 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-17 19:49:48 +00:00
Julian Smart
111c1e2c20 Committed Stefan's temporary fix for crashing in Mac Classic.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18298 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-17 17:25:33 +00:00
Julian Smart
fbb2b01c2c Missing semicolon
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18296 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-17 11:51:29 +00:00
Julian Smart
2243113487 Further improvements to MFC sample.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18295 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-17 11:18:09 +00:00
Julian Smart
4cd513abbc MFC sample now works properly; WinMain not defined in wxMSW
if wxUSE_MFC is defined.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18294 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-17 10:52:10 +00:00
Robin Dunn
55b7aaea10 Unicode compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18287 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-17 01:36:47 +00:00
Robin Dunn
5bab6390a9 fixed copy/paste error
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18283 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-16 23:08:31 +00:00
Robin Dunn
fdec65df6d Misc wxSTC fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18280 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-16 22:35:12 +00:00
Robin Dunn
b829bf55a0 Give wxSafeYield an onlyIfNeeded parameter
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18278 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-16 21:58:36 +00:00
Mattia Barbon
8325937efa Last samples/Unicode fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18269 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-16 20:25:28 +00:00
Julian Smart
1bd71df911 Fixed missing checkbox alignment
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18262 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-16 12:34:06 +00:00
Julian Smart
3d2814f3c3 Updated change log
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18261 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-16 11:11:01 +00:00
Julian Smart
5c8756b04c Applied patch [ 651713 ] changes to convertrc
David J. Cooke (davidjcooke)

amendments to convertrc: add support for
CONTROL... syntax for static, edit, combobox,
buttons, but NOT scrollbar; add support for
embedded quotes in stringtable; other minor changes


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18260 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-16 11:03:05 +00:00
Julian Smart
7d1dcec23a Applied [ 652962 ] wxProgressDialog::Show(FALSE) bug
This fixes the problem where the application windows
were not being enabled prior to the progress dialog
being hidden in the situation where wxPD_AUTO_HIDE
was not used or was used but the end count was never
reached. This causes random applications to be
activated and brought to the front on Windows.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18259 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-16 10:57:48 +00:00
Julian Smart
e5d94b6381 Applied part of patch [ 652965 ] Enables toolbar simple in wxUniv
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18258 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-16 10:50:49 +00:00
Julian Smart
ea5ef76f07 Applied patch [ 652894 ] Checklistbox doesn't need owner draw
Updated wxUniv readme about setup[0].h


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18257 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-16 10:45:09 +00:00
Julian Smart
c4c3659cf2 Copy wxUniv setup0.h to setup.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18256 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-16 10:36:17 +00:00
Julian Smart
62e819ee45 Removed redundant wxUniv setup.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18255 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-16 10:29:03 +00:00
Julian Smart
aab49a0b6a Applied patch [ 654023 ] Enables HtmlHelp (native)
Also fixed the bad event table in helpfrm.cpp.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18252 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-16 10:22:08 +00:00
Julian Smart
37d81cc2e2 Applied [ 654253 ] wxGTK: fix to wxGetMousePosition()
wxGetMousePosition() returns -999, -999 when the mouse
pointer is not over a GTK window. This is apparently
because it uses the current window as a handle to get
to the X display. This is not necessary, however;
GDK_DISPLAY() can be used. With
this patch wxGetMousePosition() works regardless of
where on the screen the mouse is.

Jay Berkenbilt (jay_berkenbilt) modified by JACS


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18250 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-16 09:44:35 +00:00
Vadim Zeitlin
d775acfa77 use system zlib under Mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18247 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-15 22:50:42 +00:00
Vadim Zeitlin
34bed6d9ec changed version to 2.5.0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18246 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-15 22:37:56 +00:00
Vadim Zeitlin
7baf4bdbb6 misc gcc compilation warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18245 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-15 22:30:49 +00:00
Vadim Zeitlin
14ac4f3c54 printf() format warning fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18244 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-15 22:25:13 +00:00
Julian Smart
d0200d9eff Added Mac Classic fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18243 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-15 21:56:53 +00:00
Vadim Zeitlin
1383482892 send an extra kill focus event when we're deactivated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18242 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-15 18:17:15 +00:00
Mattia Barbon
600683ca05 Fixed all remaining samples/Unicode compilation errors.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18241 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-15 17:25:36 +00:00
Václav Slavík
ee682a94cb _really_ fixed translation messages
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18240 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-15 12:38:15 +00:00
Mattia Barbon
42ed75321c More samples/Unicode fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18239 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-15 10:23:11 +00:00
Gilles Depeyrot
7cf4f7e21f fix FindMenu broken by implementation of double ampersands in menu and menu
item titles (finding "&File" was no longer working)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18237 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-14 21:44:48 +00:00
Václav Slavík
7e99eddf64 don't translate strings when it doesn't make any sense
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18236 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-14 21:26:22 +00:00
Václav Slavík
a949e8fac2 removed extremely user-unfriendly translations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18235 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-14 21:16:58 +00:00
Václav Slavík
59da340790 updated Czech translation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18234 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-14 21:16:41 +00:00
Václav Slavík
118cc185eb fixed typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18233 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-14 21:16:27 +00:00
Gilles Depeyrot
f6d90fb9ce added commands to search for menus and menu items by label
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18232 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-14 21:12:47 +00:00
Mattia Barbon
ab1ca7b3dd More samples/Unicode fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18230 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-14 18:13:27 +00:00
Mattia Barbon
3996031094 Fixed compilation of some more samples in Unicode mode.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18229 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-14 14:23:10 +00:00
Mattia Barbon
196f463f62 Fixed missing reference to wxTreeCtrlnameStr when linking treectrl sample
by adding #include "wx/treectrl.h" to data.cpp.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18228 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-14 14:16:14 +00:00
Vadim Zeitlin
2c0a4e08a3 fixed VC++ warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18227 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-14 12:18:49 +00:00
Vadim Zeitlin
0441833277 fixed Unicode compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18226 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-14 12:15:03 +00:00
Julian Smart
b657b4c986 Added missing SetOrientation accessor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18225 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-14 09:29:02 +00:00
Václav Slavík
a3671ac092 updated message catalogs from sources
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18222 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-13 23:53:18 +00:00
Václav Slavík
c742a6ae90 removed a forgotten relict of past: xmlbin format extension still used
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18221 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-13 23:50:28 +00:00
Václav Slavík
008a56c968 even more fixes to last-minute wxFileSystem mods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18220 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-13 23:50:15 +00:00
Václav Slavík
7a8b9bd950 fixed wxFilesystem docs bug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18219 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-13 23:50:04 +00:00
Václav Slavík
4d144d07e7 documented FileNameToURL and URLToFileName
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18218 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-13 23:49:19 +00:00
Mattia Barbon
b951c85fec Add WXDLLEXPORT to friend declaration for GCC 3.2.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18211 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-13 21:35:15 +00:00
Mattia Barbon
9f84eccdea Make some of the samples compile in Unicode mode.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18210 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-13 21:33:14 +00:00
Mattia Barbon
c17ba76f38 Unicode compilation fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18209 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-13 21:28:26 +00:00
Chris Elliott
a2638e741d fix visual c bugs for wxUNIVRERSAL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18207 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-13 12:21:19 +00:00
Jouk Jansen
09f8c2a029 Committing in .
Updated OpenVMS compile support

 Modified Files:
 	wxWindows/setup.h_vms
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18206 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-13 07:03:47 +00:00
Chris Elliott
e0d8e433c1 fix for cygwin WXDLLEXPORT bug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18203 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-12 12:06:07 +00:00
Chris Elliott
099d4217df fix for wxUniversal on win32 platforms
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18193 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-11 15:10:23 +00:00
Julian Smart
fbb1226068 Applied patch [ 651287 ] adds missing wxTreeCtrl::GetEditControl
This patch implements a missing member in the generic
version of the wxTreeCtrl. The GetEditControl member is
currently not implemented in the generic tree control
used by wxGTK. This patch implements the feature by

1. adding a pointer to the wxTextTreeControl as a
member (m_textCtrl) of the wxGenericTreeCtrl class
2. making sure pointer was initialized to 0
3. using the member variable instead of the stack
variable in the wxGenericTreeCtrl::Edit member
4. making sure the new wxGenericTreeCtrl class
member is set to 0 when the control is set up for
deletion in Finish by calling a new protected member
(ResetTextControl) of the wxGenericTreeCtrl class.

These modification were discussed on the wx-dev list
under the "wxGTK - wxTreeCtrl::GetEditControl status?"
subject.

I have tested, but I certainly welcome comments and
further testing.

Pete Stieber


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18192 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-11 09:08:46 +00:00
Julian Smart
03d1ae1799 Applied patch [ 651649 ] Scrollbar not updated without resizing
I always wondered why the scrollbar of the listbox or
the log window (textctrl) never showed a thumb in the
control sample while the combobox does. The
AdjustScrollbars gets called through a size event and
this happens before the listbox (textctrl) can set the
values for the scrollbar. So always an empty scrollbar
is shown. This patch calls AdjustScrollbars at the end
of SetScrollbars in scrlwing.cpp.

I'm not sure if this is the best fix but it works
nicely. I've only tested it with wxUniv but it should
be okay in any generic case.

(applied for __WXUNIVERSAL__ only for now -- JACS)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18183 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-10 21:50:11 +00:00
Julian Smart
f0e1c34310 Applied patch [ 651383 ] Removes 3 warnings when building w/ CW6
Dimitri Schoolwerth


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18182 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-10 21:44:08 +00:00
Julian Smart
dda4f6c089 Applied patch [ 651640 ] Toolbar sizing fix
This patch fixes the problem discussed on wx-dev
mailing list. (Message title "wxUniversal: How is the
parent notified when a child changes its size")

In short:
- This patch makes sure the toolbar notifies the parent of
any size change, this will give the parent the opportunity
to resize the frame client size and to make sure the
toolbar is in the right place.

Hans Van Leemputten


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18181 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-10 21:41:31 +00:00
Mattia Barbon
5e66eee143 "cd utils; make" should not try to compile dialoged unless
wxUSE_RESOURCES=yes.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18180 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-10 21:30:28 +00:00
Mattia Barbon
9ec5e01204 Remove unused g295.t; g95.t works with any GCC from 2.95.2 to 3.2.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18179 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-10 21:25:54 +00:00
Julian Smart
66525ca43b Applied another Marco patch (5)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18178 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-10 17:02:37 +00:00
Julian Smart
0a9f0ef7d0 FromString should not fail on wxMac if facename empty.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18177 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-10 16:10:02 +00:00
Vadim Zeitlin
84023968e5 corrected wxCommandProcessor ctor docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18176 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-10 14:09:38 +00:00
Julian Smart
368c9c6d84 Applied some of patch [ 650957 ] wxWinCE diff-0.0.4
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18175 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-10 12:13:25 +00:00
Julian Smart
c8c29c490b Ignore DOS drive spec in GetRightLocation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18174 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-10 09:48:00 +00:00
Vadim Zeitlin
07243717e2 tried to clean strdup() mess: we now have wxStrdup[AW] which should be always available
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18172 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-10 00:43:28 +00:00
Julian Smart
2a5d3f5738 Fixed the beggar good and proper
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18171 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 21:45:36 +00:00
Václav Slavík
f3d3a0e751 forgot to add wxHtmlHelpController::AddBook(wxFileName) to the headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18170 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 21:05:56 +00:00
Václav Slavík
1de1d24e96 removed XPM handler from wxImage's standard handlers, let's see if it does any harm
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18169 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 21:03:25 +00:00
Julian Smart
9d683b445c Removed duplicate art handler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18167 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 18:27:10 +00:00
Mattia Barbon
2d6c58d653 The size_type typedef must be public.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18166 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 18:08:12 +00:00
Mattia Barbon
27635a90c7 Only build HelpGen in wxBase, since it will #error (this will maybe fix
some tinderboxes...).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18165 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 18:06:31 +00:00
Vadim Zeitlin
d7f6918abd removed garbage pixels from the icon
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18163 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 16:43:57 +00:00
Vadim Zeitlin
7e1525b2e7 fixed warning about unused var
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18162 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 16:42:27 +00:00
Vadim Zeitlin
7bb8798ce7 fixed annoying beep when pressing space/return in the tree
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18161 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 16:41:04 +00:00
Julian Smart
dba06cd016 Convert filename to URL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18160 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 15:52:29 +00:00
Julian Smart
8ad944dcbc Should only add // under MSW -- not on Unix, not on Mac.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18159 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 15:42:10 +00:00
Chris Elliott
969096ef37 fix bug with treectrl sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18158 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 15:26:28 +00:00
Julian Smart
76c451b8c1 Added horse3.ani
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18156 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 15:10:14 +00:00
Julian Smart
43b8a532e0 Ifdefed m_server
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18154 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 14:44:06 +00:00
Julian Smart
3434b611aa Reverted the _n__ fix for now.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18153 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 14:35:09 +00:00
Julian Smart
1e702ab351 The wxMAKE_UNIQUE_ASSERT_NAME fix for VC++ does not work for MetroWerks CW.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18152 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 14:20:06 +00:00
Julian Smart
678b263756 Applied patch [ 632115 ] Fixed internationalization on tooltips
wxMac's wxTooltip assumed that text was always PC encoded,
and always converted the string using
wxMacMakeMacStringFromPC(). This worked fine for English
characters, but multi-byte encoded languages such as Japanese
(SJIS) because garbled. I've added a check for
"wxApp::s_macDefaultEncodingIsPC" before performing the
conversion similar to other controls.

Nilesh Agarwalla


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18150 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 11:22:43 +00:00
Julian Smart
73145b0ed1 Applied patches by Scott Pleiter:
[ 643866 ] small wxGrid API changes

adds GetValue to the gridcelleditors to facilitate
querying values from the editors, also changes several
methods to virtuals to simplify inheritance.

[ 643867 ] wxGrid cell LNF & behaviour patch

Enables the grid to render its cells grey when the grid
control is disabled. Also fixes several problems when
making the gridcelleditors visible. Improves the layout
of multi-line row/column labels. Changes the CellEditor
show from a MOUSE_DOWN to a MOUSE_UP, this
stops the editor starting when creating a selection
beginging in the currently selected cell.

[ 643868 ] wxGrid rendering tweaks, improves look.

Draw the row/column using system colours. Change the
default wxGrid settings to have a more neutral starting
point - grey lines, non-bold label font, black/white
selection etc.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18148 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 11:14:04 +00:00
Julian Smart
552a0ebdb2 Small WinCE mods from Marco
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18147 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 11:01:50 +00:00
Julian Smart
247ef58d1a Added script to convert project files to DOS format.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18146 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 10:57:30 +00:00
Julian Smart
9c136858af Applied patch [ 649284 ] Fix wxODBC to work with MySQL 2.x
The current sample/db fails to build indexes with
MyODBC v2.50.39

This is due to two problems:

(1) wxDb::ModifyColumn() created a SQL statement that
was not correctly formed for MySQL. This problem
caused wxDbTable::CreateIndex() to fail to set the
columns that are going to indexes to be NOT NULL. I
fixed this by added a special case for MySQL.

(2) When creating an Index on a VARCHAR column,
MySQL requires a key length to be specified.
wxDbTable::CreateIndex() current does not do this. I
fixed this problem by adding code to do this.

The attached patch file patches dbtable.cpp and db.cpp
on the 2.5 branch.

gor Mikolic-Torreira


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18145 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 10:50:14 +00:00
Julian Smart
df41317113 Applied patch [ 649590 ] fixes bug 611264: wxFileDialog entry
In bug 611264 I reported that typing a filename into a
multiple selection file dialog failed. The file
returned was "..".

I discovered that this was because the previous
directory folder came up automatically selected when
the dialog was created. Then, I discovered a related
bug. If any file or folder was selected, then that was
the file which was returned regardless of what was
typed in.

To fix the problem I added an EVT_TEXT handler which
deselects everything that is selected when the user
types. The handler does not deselect anything unless
the user actually types something.

This patch implements the fix.

John Skiff


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18144 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 10:44:13 +00:00
Julian Smart
84cff96585 Applied patch [ 642174 ] Stop TOOL_WINDOWS stealing focus
When frames with the wxFRAME_TOOL_WINDOW
style ( i.e. a floating toolbar frame) is shown it is
activated, taking focus from the main application
window. This patch stops frames with the
wxFRAME_TOOL_WINDOW from being activated when
shown.

Scott Pleiter


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18143 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 10:31:17 +00:00
Julian Smart
48aa18c000 Applied patch [ 650078 ] Add better checking to wxComboBox
This patch adds extra checks, checks to see and report
if the provided item index is valid.

An other thing:
- IMHO wxComboBox::GetSelection() was wrong, I
corrected this (now it behaves the same as wxMSW,
don't know about wxGTK and others...).

Hans Van Leemputten (hansvl)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18142 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 10:26:21 +00:00
Julian Smart
635eb8bcc4 Applied patch [ 648042 ] Erase background error
When erasing the background with a transparent
background the logical origin of the provided DC is (re)
set, but not restored to the old value. Restoring the old
value is needed because the DC is/can be shared with
the real draw code...

This patch solves problems like mentioned in bug report
#635217 and problems like controls (like radio controls
etc) that disappear when moving the mouse over them or
clicking on them...

Hans Van Leemputten


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18141 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 10:20:44 +00:00
Julian Smart
2a2a71e326 Applied patch [ 642172 ] Fix menu accelerators in ownerdrw
Fixed bug when updating menu text to inform the
ownerdrw code of the new menu accelerator attached to
the menu item.
Improved the layout of the owenerdrw menu ownerdrw to
correctly account for menu accelerators, submenu
arrows etc.

Scott Pleiter

(Note from JACS: I've also changed the sample to show the Quit item
correctly aligned; it needs to have the font set before wxWin knows
it's an ownerdrawn item.)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18140 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 10:15:00 +00:00
Julian Smart
1d30a0a132 Applied patch [ 642162 ] restore wxWizard wxEVT_WIZARD_FINISHED
Restore the wxWizard wxEVT_WIZARD_FINISHED
event, which was sent when the FINISHED button was
pressed and the wizard was finished. When the
wxWizard is modal this event is not needed. However,
when the wizard is non-modal this is the only way to
determine that the wizard has finished.

Scott Pleiter


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18136 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 09:46:16 +00:00
Julian Smart
7a0363dd04 Applied patch [ 642157 ] [MSW] HMENU resource leak from wxMenuBar
Latest CVS - When a wxMenuBar is detached
from a frame and deleted the HMENU resource leaks.
This patch fixes the leak.

Scott Pleiter


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18128 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 09:29:00 +00:00
Julian Smart
fc7c8ae9c3 Applied [ 639060 ] Individual bar floating in contrib/fl
In the current contrib/fl implementation, all control bars
in the frame layout either float or they don't. I added
code to allow the bar floating to be determined on a bar-
by-bar basis. That is, this patch enables some control
bars to float while keeping others locked.

Kevin Yochum


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18127 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 09:21:23 +00:00
Julian Smart
5c6bd4a957 Added missing AddBook
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18126 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 09:15:22 +00:00
Julian Smart
77416abdc5 Applied patch [ 638561 ] Allow SetFont(wxNullFont) in wxGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18125 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 09:14:39 +00:00
Vadim Zeitlin
ce788ad93a fixed Get/SetString() prototypes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18124 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 00:14:51 +00:00
Vadim Zeitlin
ecb7e58c24 fixed a typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18123 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 00:06:20 +00:00
Vadim Zeitlin
8def689d42 replaced wxItem_Xxx with wxITEM_XXX as they should be
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18122 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-09 00:05:29 +00:00
Julian Smart
1b489359c4 Applied patch [ 637982 ] wxComboBox needs margin
wxComboBox doesn't have a margin between the text and
the dropdown button when the default size is used.
Since wxTextctrl currently returns a rather long minmal
size, this error is only visible if a long text (around
20 chars) is used. This patch introduces a margin
(analog wxSpinctrl).

Otto Wyss


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18120 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-08 21:43:43 +00:00
Václav Slavík
11d667e7eb use AddBook(wxFileName)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18119 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-08 20:30:56 +00:00
Václav Slavík
fcf77487ed added wxHtmlHelpController::AddBook(wxFileName)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18118 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-08 20:30:42 +00:00
Václav Slavík
cc37ecaf2d fixed tex2rtf error
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18117 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-08 20:30:02 +00:00
Václav Slavík
9548c49a6a modifications to URL<->filename conversion: take wxFileName, rename
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18116 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-08 20:28:12 +00:00
Mattia Barbon
ec75d791f0 Refactored & cleaned up wxChoice & wxComboBox code, fixed client data
handling, implemented wxControlWIthItems' methods correctly, fixed a
couple of other bugs.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18115 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-08 18:48:05 +00:00
Mattia Barbon
21b273736b Added wxClientDataDictionary, used (in wxMotif ATM) to maintain the
association between wxControlWithItems' items and their client data.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18114 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-08 18:43:45 +00:00
Mattia Barbon
5fd588d229 Replaced int with size_t where appropriate, added WXDLLEXPORT, corrected
a bug in RemoveAt.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18113 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-08 18:38:46 +00:00
Robert Roebling
df135f2b4d Catching dclick event from a spinbutton or spin control
crashes GTK 1.2 sooner or later. Just disable this
    event for now. Should also be in 2.4, actually.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18112 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-08 18:02:30 +00:00
Roger Gammans
cdbecb3946 Documentation for wxDbGrid from patch 638274
Updates with the aim of improving readability.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18111 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-08 16:10:50 +00:00
Roger Gammans
f24badde9a new member functio of wxDbColInfo to allow two step creation , to be
descibed in the docs.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18110 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-08 16:04:36 +00:00
Václav Slavík
69a8b5b457 Fixed EVT_TREE_SEL_CHANGED and _CHANGING under MSLU (patch 631815)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18108 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-08 13:23:03 +00:00
Václav Slavík
e77d4369de XRC assigns ID to wxStaticBox created by including wxStaticBoxSizer (did what patch 632470 was supposed to do)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18106 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-08 13:22:00 +00:00
Václav Slavík
3acd4349a5 Unicode compilation fixes for treectrl sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18104 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-08 13:21:33 +00:00
Václav Slavík
64e9f56b80 fixed Vadim's removal of XPM handler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18103 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-08 13:20:49 +00:00
Vadim Zeitlin
39bc7d8020 don't add XPM handler in wxInitAllImageHandlers() because it had been already edited in wxImage::nitStandardHandlers()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18102 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-08 00:57:53 +00:00
Vadim Zeitlin
53c9228ead always declare wxAppInitializerFunction() as returning wxApp, whether we use gcc or not
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18101 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-07 23:58:13 +00:00
Julian Smart
3ddcf967d6 Committed vcw files also
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18100 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-07 16:08:47 +00:00
Julian Smart
6d613d8d4a Converted wxBase also
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18099 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-07 16:05:40 +00:00
Robert Roebling
0e0126c220 Various compile fixes for WinCE.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18098 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-07 15:41:13 +00:00
Stefan Neis
694f2f3cc7 Version number changes.
Added information on how to circumvent make's problems with auto-generated
        .d files.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18097 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-07 15:37:00 +00:00
Julian Smart
1b6f93fcfe Corrected line endings, deps now relative
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18096 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-07 15:31:02 +00:00
Robert Roebling
2e8e834c0a Added simplistic makefile/project files for wxWinCE.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18094 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-07 12:38:11 +00:00
Robert Roebling
158b668823 Platform define for wxWinCE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18093 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-07 12:36:03 +00:00
Julian Smart
7912e6332f Correction to path/URL code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18092 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-07 09:18:44 +00:00
Vadim Zeitlin
dac7d53a83 added semicolons after HASH_MAP macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18090 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-07 02:28:02 +00:00
Vadim Zeitlin
d86939c4c9 removed trailing semicolons at the end of HASH_MAP macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18088 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-07 01:30:47 +00:00
Vadim Zeitlin
5d3f766d26 test that libpng version is > 0.90
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18087 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-07 01:26:21 +00:00
Vadim Zeitlin
136d4499d5 minor visual corrections to renderers (patch 649847)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18086 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-07 01:07:35 +00:00
Vadim Zeitlin
e622dd68c2 fix for wxGetEnv() under Win16 (!) (bug 645368)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18085 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-07 00:58:11 +00:00
Vadim Zeitlin
859e25d4ad suppress warnings when compiling libtiff
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18084 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-07 00:43:48 +00:00
Vadim Zeitlin
3993765614 added trivial test for wxTextInputStream
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18083 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-07 00:31:56 +00:00
Vadim Zeitlin
d2ec53ea4a fix (?) for small menu item bitmaps (bug 635438)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18082 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-07 00:05:03 +00:00
Vadim Zeitlin
6eccc0c485 fixed 3 infinite loops -- the person who tested this code must have had a lot of patience (bug 645761)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18080 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 23:55:55 +00:00
Vadim Zeitlin
de628f984b fixed bug in wxSemaphore::WaitTimeout() which was calling the wrong wxCondition::Wait() (bug 642226 and patch 648859)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18079 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 23:47:34 +00:00
Vadim Zeitlin
2c62b3c3a1 corrected a too eager error message (patch 648599)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18078 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 23:42:16 +00:00
Vadim Zeitlin
285013b384 avoid flicker when doing SetItem() in non report mode (slightly extended patch 647970)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18077 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 23:40:11 +00:00
Vadim Zeitlin
c1eb1102aa generate spinctrl event when the button was clicked (slightly modified patch 648013)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18076 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 23:36:01 +00:00
Vadim Zeitlin
801a492c49 Append() returns int, not void
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18075 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 23:27:29 +00:00
Vadim Zeitlin
38c1f6f765 tell to open .dsw file, not .dsp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18074 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 23:24:57 +00:00
Julian Smart
409e38cd65 Applied fix for VC++ 7 which treats __LINE__ slightly differently, apparently.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18073 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 22:49:58 +00:00
Vadim Zeitlin
adb45366da compilation fix for wxUSE_INTL == 0 (patch 646466)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18071 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 21:23:36 +00:00
Vadim Zeitlin
815b393a5a fixed mem leak when using non default theme; change the art provider automatically when the theme is changed (patch 646463)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18070 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 21:07:24 +00:00
Vadim Zeitlin
61ecf6d34f fix typo in drawing slider ticks; added assert to check for it (slightly modified patch 646256)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18069 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 21:02:50 +00:00
Vadim Zeitlin
f7a201b94e better check of parameter in Delete() (2nd part of patch 646145)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18068 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 20:59:06 +00:00
Vadim Zeitlin
d00b880a79 don't leak client data (1st part of patch 646145)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18067 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 20:57:56 +00:00
Julian Smart
9b798c66c7 Removed apparently erroneous manipulation of filename/URL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18066 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 20:12:48 +00:00
Vadim Zeitlin
513e0cea96 fixed return type of GetEditControl(); updated its description
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18065 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 17:08:00 +00:00
Stefan Neis
85045dd09e Updated to more OS/2 friendly version.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18064 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 16:59:38 +00:00
Stefan Neis
42b7406da2 Changed GSocket_Select to use unix code for wxBase, previous code wasn't
detecting loss of connection.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18063 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 16:57:30 +00:00
Julian Smart
1257f68432 Added note about opening .dsp files in VC++ .NET
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18061 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 14:16:27 +00:00
Robert Roebling
4a6ea63e87 Another attempt to get make win-dist to work with WinCE.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18060 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 11:50:18 +00:00
Robert Roebling
36d3844cbb Updated Makefile for WinCE (make win-dist)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18059 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 11:25:51 +00:00
Stefan Csomor
0ba344c712 print session additions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18058 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-06 08:07:53 +00:00
Julian Smart
1a4fe894fe Added Marco's first WinCE files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18057 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-05 21:18:30 +00:00
Julian Smart
42280e48f2 Further version changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18055 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-05 12:14:53 +00:00
Vadim Zeitlin
5db9e0e80d unabbreviated i18n
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18054 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-05 12:04:51 +00:00
Julian Smart
8473839e3a Added artwork for the emulator, for future reference
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18052 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-05 11:54:50 +00:00
Julian Smart
c31752dadf Updated version
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18051 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-05 11:08:08 +00:00
Julian Smart
1353f87837 Makefile.in: remove CVS dirs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18050 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-05 10:27:42 +00:00
Julian Smart
088117622c Checked for stream validity in wxImage::GetImageCount.
use horse3.ani in image sample.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18049 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-05 10:19:00 +00:00
Vadim Zeitlin
d643b80eb9 detect and don't use old zlib version
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18046 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-05 02:07:05 +00:00
Vadim Zeitlin
589c71635a allow TABbing into multiline text controls even if they're not editable
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18044 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-05 01:05:59 +00:00
Vadim Zeitlin
b6b2d787e3 compilation fix after recent patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18042 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-04 23:15:10 +00:00
Vadim Zeitlin
2b5f62a0b2 merged 2.4 branch into the trunk
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18040 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-12-04 14:11:26 +00:00
Vadim Zeitlin
59a944cb63 added test for env var expansion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-11-28 13:34:28 +00:00
Vadim Zeitlin
4c51b68810 compilation fix in !WXWIN_COMPATIBILITY_2_2 mode; set TEST_ALL to 1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17992 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-11-28 13:29:22 +00:00
Vadim Zeitlin
01cb1c2617 added ctor taking wxFontFlags
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17669 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-11-02 23:58:52 +00:00
David Webster
7bfbbc0efb Fixups in jpeg lib for multiplely defined symbolsa under VisualAge for OS/2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17495 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-10-11 16:01:49 +00:00
David Webster
376ef4a1f4 Weekly OS/2 updtaes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17494 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-10-11 15:59:35 +00:00
David Webster
13053f649b os2 update to rc file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17493 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-10-11 15:56:35 +00:00
David Webster
841346f01f removed ctl3d32.lib
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17491 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-10-11 13:44:31 +00:00
Roman Rolinsky
d21441bd9b just a test if CVS access works
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17452 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-10-04 07:19:19 +00:00
Stefan Neis
ef4d6ce8e4 Fixed some typos that occured in applying patch 606235.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17299 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-09-20 15:08:03 +00:00
Jouk Jansen
1507adbb8c Committing in .
Updated OpenVMS configuration

 Modified Files:
 	wxWindows/setup.h_vms
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17272 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-09-19 06:17:39 +00:00
Julian Smart
942e06785c Added scripts to make a minimal wxMSW distribution
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17218 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-09-16 19:20:38 +00:00
Julian Smart
4a28b9b81c Updated date
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17217 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-09-16 16:03:59 +00:00
David Webster
243116066d nativedlg and some interface changes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17216 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-09-16 04:56:00 +00:00
David Webster
923b48fc63 virtual function hiding problem
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17215 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-09-16 04:54:25 +00:00
David Webster
c09245191c OS/2 fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@17214 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2002-09-16 04:53:42 +00:00
3738 changed files with 1047774 additions and 869293 deletions

2
include/.cvsignore Normal file
View File

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

2
include/wx/.cvsignore Normal file
View File

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

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

@@ -0,0 +1,136 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/accel.h
// Purpose: wxAcceleratorEntry and wxAcceleratorTable classes
// Author: Julian Smart, Robert Roebling, Vadim Zeitlin
// Modified by:
// Created: 31.05.01 (extracted from other files)
// RCS-ID: $Id$
// Copyright: (c) wxWindows team
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_ACCEL_H_BASE_
#define _WX_ACCEL_H_BASE_
#include "wx/defs.h"
#if wxUSE_ACCEL
#include "wx/object.h"
class WXDLLEXPORT wxAcceleratorTable;
class WXDLLEXPORT wxMenuItem;
class WXDLLEXPORT wxKeyEvent;
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
// wxAcceleratorEntry flags
enum
{
wxACCEL_NORMAL = 0x0000, // no modifiers
wxACCEL_ALT = 0x0001, // hold Alt key down
wxACCEL_CTRL = 0x0002, // hold Ctrl key down
wxACCEL_SHIFT = 0x0004 // hold Shift key down
};
// ----------------------------------------------------------------------------
// an entry in wxAcceleratorTable corresponds to one accelerator
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxAcceleratorEntry
{
public:
wxAcceleratorEntry(int flags = 0, int keyCode = 0, int cmd = 0,
wxMenuItem *item = NULL)
: m_flags(flags)
, m_keyCode(keyCode)
, m_command(cmd)
, m_item(item)
{ }
wxAcceleratorEntry(const wxAcceleratorEntry& entry)
: m_flags(entry.m_flags)
, m_keyCode(entry.m_keyCode)
, m_command(entry.m_command)
, m_item(entry.m_item)
{ }
wxAcceleratorEntry& operator=(const wxAcceleratorEntry& entry)
{
Set(entry.m_flags, entry.m_keyCode, entry.m_command, entry.m_item);
return *this;
}
void Set(int flags, int keyCode, int cmd, wxMenuItem *item = NULL)
{
m_flags = flags;
m_keyCode = keyCode;
m_command = cmd;
m_item = item;
}
void SetMenuItem(wxMenuItem *item) { m_item = item; }
int GetFlags() const { return m_flags; }
int GetKeyCode() const { return m_keyCode; }
int GetCommand() const { return m_command; }
wxMenuItem *GetMenuItem() const { return m_item; }
bool operator==(const wxAcceleratorEntry& entry) const
{
return m_flags == entry.m_flags &&
m_keyCode == entry.m_keyCode &&
m_command == entry.m_command &&
m_item == entry.m_item;
}
bool operator!=(const wxAcceleratorEntry& entry) const
{ return !(*this == entry); }
#if defined(__WXMOTIF__)
// Implementation use only
bool MatchesEvent(const wxKeyEvent& event) const;
#endif
private:
int m_flags; // combination of wxACCEL_XXX constants
int m_keyCode; // ASCII or virtual keycode
int m_command; // Command id to generate
// the menu item this entry corresponds to, may be NULL
wxMenuItem *m_item;
// for compatibility with old code, use accessors now!
friend class WXDLLEXPORT wxMenu;
};
// ----------------------------------------------------------------------------
// include wxAcceleratorTable class declaration, it is only used by the library
// and so doesn't have any published user visible interface
// ----------------------------------------------------------------------------
#if defined(__WXUNIVERSAL__)
#include "wx/generic/accel.h"
#elif 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(__WXMAC__)
#include "wx/mac/accel.h"
#elif defined(__WXCOCOA__)
#include "wx/generic/accel.h"
#elif defined(__WXPM__)
#include "wx/os2/accel.h"
#endif
WXDLLEXPORT_DATA(extern wxAcceleratorTable) wxNullAcceleratorTable;
#endif // wxUSE_ACCEL
#endif
// _WX_ACCEL_H_BASE_

386
include/wx/access.h Normal file
View File

@@ -0,0 +1,386 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/access.h
// Purpose: Accessibility classes
// Author: Julian Smart
// Modified by:
// Created: 2003-02-12
// RCS-ID: $Id$
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_ACCESSBASE_H_
#define _WX_ACCESSBASE_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "accessbase.h"
#endif
// ----------------------------------------------------------------------------
// headers we have to include here
// ----------------------------------------------------------------------------
#include "wx/variant.h"
typedef enum
{
wxACC_FAIL,
wxACC_FALSE,
wxACC_OK,
wxACC_NOT_IMPLEMENTED,
wxACC_NOT_SUPPORTED
} wxAccStatus;
// Child ids are integer identifiers from 1 up.
// So zero represents 'this' object.
#define wxACC_SELF 0
// Navigation constants
typedef enum
{
wxNAVDIR_DOWN,
wxNAVDIR_FIRSTCHILD,
wxNAVDIR_LASTCHILD,
wxNAVDIR_LEFT,
wxNAVDIR_NEXT,
wxNAVDIR_PREVIOUS,
wxNAVDIR_RIGHT,
wxNAVDIR_UP
} wxNavDir;
// Role constants
typedef enum {
wxROLE_NONE,
wxROLE_SYSTEM_ALERT,
wxROLE_SYSTEM_ANIMATION,
wxROLE_SYSTEM_APPLICATION,
wxROLE_SYSTEM_BORDER,
wxROLE_SYSTEM_BUTTONDROPDOWN,
wxROLE_SYSTEM_BUTTONDROPDOWNGRID,
wxROLE_SYSTEM_BUTTONMENU,
wxROLE_SYSTEM_CARET,
wxROLE_SYSTEM_CELL,
wxROLE_SYSTEM_CHARACTER,
wxROLE_SYSTEM_CHART,
wxROLE_SYSTEM_CHECKBUTTON,
wxROLE_SYSTEM_CLIENT,
wxROLE_SYSTEM_CLOCK,
wxROLE_SYSTEM_COLUMN,
wxROLE_SYSTEM_COLUMNHEADER,
wxROLE_SYSTEM_COMBOBOX,
wxROLE_SYSTEM_CURSOR,
wxROLE_SYSTEM_DIAGRAM,
wxROLE_SYSTEM_DIAL,
wxROLE_SYSTEM_DIALOG,
wxROLE_SYSTEM_DOCUMENT,
wxROLE_SYSTEM_DROPLIST,
wxROLE_SYSTEM_EQUATION,
wxROLE_SYSTEM_GRAPHIC,
wxROLE_SYSTEM_GRIP,
wxROLE_SYSTEM_GROUPING,
wxROLE_SYSTEM_HELPBALLOON,
wxROLE_SYSTEM_HOTKEYFIELD,
wxROLE_SYSTEM_INDICATOR,
wxROLE_SYSTEM_LINK,
wxROLE_SYSTEM_LIST,
wxROLE_SYSTEM_LISTITEM,
wxROLE_SYSTEM_MENUBAR,
wxROLE_SYSTEM_MENUITEM,
wxROLE_SYSTEM_MENUPOPUP,
wxROLE_SYSTEM_OUTLINE,
wxROLE_SYSTEM_OUTLINEITEM,
wxROLE_SYSTEM_PAGETAB,
wxROLE_SYSTEM_PAGETABLIST,
wxROLE_SYSTEM_PANE,
wxROLE_SYSTEM_PROGRESSBAR,
wxROLE_SYSTEM_PROPERTYPAGE,
wxROLE_SYSTEM_PUSHBUTTON,
wxROLE_SYSTEM_RADIOBUTTON,
wxROLE_SYSTEM_ROW,
wxROLE_SYSTEM_ROWHEADER,
wxROLE_SYSTEM_SCROLLBAR,
wxROLE_SYSTEM_SEPARATOR,
wxROLE_SYSTEM_SLIDER,
wxROLE_SYSTEM_SOUND,
wxROLE_SYSTEM_SPINBUTTON,
wxROLE_SYSTEM_STATICTEXT,
wxROLE_SYSTEM_STATUSBAR,
wxROLE_SYSTEM_TABLE,
wxROLE_SYSTEM_TEXT,
wxROLE_SYSTEM_TITLEBAR,
wxROLE_SYSTEM_TOOLBAR,
wxROLE_SYSTEM_TOOLTIP,
wxROLE_SYSTEM_WHITESPACE,
wxROLE_SYSTEM_WINDOW
} wxAccRole;
// Object types
typedef enum {
wxOBJID_WINDOW = 0x00000000,
wxOBJID_SYSMENU = 0xFFFFFFFF,
wxOBJID_TITLEBAR = 0xFFFFFFFE,
wxOBJID_MENU = 0xFFFFFFFD,
wxOBJID_CLIENT = 0xFFFFFFFC,
wxOBJID_VSCROLL = 0xFFFFFFFB,
wxOBJID_HSCROLL = 0xFFFFFFFA,
wxOBJID_SIZEGRIP = 0xFFFFFFF9,
wxOBJID_CARET = 0xFFFFFFF8,
wxOBJID_CURSOR = 0xFFFFFFF7,
wxOBJID_ALERT = 0xFFFFFFF6,
wxOBJID_SOUND = 0xFFFFFFF5
} wxAccObject;
// Accessible states
#define wxACC_STATE_SYSTEM_ALERT_HIGH 0x00000001
#define wxACC_STATE_SYSTEM_ALERT_MEDIUM 0x00000002
#define wxACC_STATE_SYSTEM_ALERT_LOW 0x00000004
#define wxACC_STATE_SYSTEM_ANIMATED 0x00000008
#define wxACC_STATE_SYSTEM_BUSY 0x00000010
#define wxACC_STATE_SYSTEM_CHECKED 0x00000020
#define wxACC_STATE_SYSTEM_COLLAPSED 0x00000040
#define wxACC_STATE_SYSTEM_DEFAULT 0x00000080
#define wxACC_STATE_SYSTEM_EXPANDED 0x00000100
#define wxACC_STATE_SYSTEM_EXTSELECTABLE 0x00000200
#define wxACC_STATE_SYSTEM_FLOATING 0x00000400
#define wxACC_STATE_SYSTEM_FOCUSABLE 0x00000800
#define wxACC_STATE_SYSTEM_FOCUSED 0x00001000
#define wxACC_STATE_SYSTEM_HOTTRACKED 0x00002000
#define wxACC_STATE_SYSTEM_INVISIBLE 0x00004000
#define wxACC_STATE_SYSTEM_MARQUEED 0x00008000
#define wxACC_STATE_SYSTEM_MIXED 0x00010000
#define wxACC_STATE_SYSTEM_MULTISELECTABLE 0x00020000
#define wxACC_STATE_SYSTEM_OFFSCREEN 0x00040000
#define wxACC_STATE_SYSTEM_PRESSED 0x00080000
#define wxACC_STATE_SYSTEM_PROTECTED 0x00100000
#define wxACC_STATE_SYSTEM_READONLY 0x00200000
#define wxACC_STATE_SYSTEM_SELECTABLE 0x00400000
#define wxACC_STATE_SYSTEM_SELECTED 0x00800000
#define wxACC_STATE_SYSTEM_SELFVOICING 0x01000000
#define wxACC_STATE_SYSTEM_UNAVAILABLE 0x02000000
// Selection flag
typedef enum
{
wxACC_SEL_NONE = 0,
wxACC_SEL_TAKEFOCUS = 1,
wxACC_SEL_TAKESELECTION = 2,
wxACC_SEL_EXTENDSELECTION = 4,
wxACC_SEL_ADDSELECTION = 8,
wxACC_SEL_REMOVESELECTION = 16
} wxAccSelectionFlags;
// Accessibility event identifiers
#define wxACC_EVENT_SYSTEM_SOUND 0x0001
#define wxACC_EVENT_SYSTEM_ALERT 0x0002
#define wxACC_EVENT_SYSTEM_FOREGROUND 0x0003
#define wxACC_EVENT_SYSTEM_MENUSTART 0x0004
#define wxACC_EVENT_SYSTEM_MENUEND 0x0005
#define wxACC_EVENT_SYSTEM_MENUPOPUPSTART 0x0006
#define wxACC_EVENT_SYSTEM_MENUPOPUPEND 0x0007
#define wxACC_EVENT_SYSTEM_CAPTURESTART 0x0008
#define wxACC_EVENT_SYSTEM_CAPTUREEND 0x0009
#define wxACC_EVENT_SYSTEM_MOVESIZESTART 0x000A
#define wxACC_EVENT_SYSTEM_MOVESIZEEND 0x000B
#define wxACC_EVENT_SYSTEM_CONTEXTHELPSTART 0x000C
#define wxACC_EVENT_SYSTEM_CONTEXTHELPEND 0x000D
#define wxACC_EVENT_SYSTEM_DRAGDROPSTART 0x000E
#define wxACC_EVENT_SYSTEM_DRAGDROPEND 0x000F
#define wxACC_EVENT_SYSTEM_DIALOGSTART 0x0010
#define wxACC_EVENT_SYSTEM_DIALOGEND 0x0011
#define wxACC_EVENT_SYSTEM_SCROLLINGSTART 0x0012
#define wxACC_EVENT_SYSTEM_SCROLLINGEND 0x0013
#define wxACC_EVENT_SYSTEM_SWITCHSTART 0x0014
#define wxACC_EVENT_SYSTEM_SWITCHEND 0x0015
#define wxACC_EVENT_SYSTEM_MINIMIZESTART 0x0016
#define wxACC_EVENT_SYSTEM_MINIMIZEEND 0x0017
#define wxACC_EVENT_OBJECT_CREATE 0x8000
#define wxACC_EVENT_OBJECT_DESTROY 0x8001
#define wxACC_EVENT_OBJECT_SHOW 0x8002
#define wxACC_EVENT_OBJECT_HIDE 0x8003
#define wxACC_EVENT_OBJECT_REORDER 0x8004
#define wxACC_EVENT_OBJECT_FOCUS 0x8005
#define wxACC_EVENT_OBJECT_SELECTION 0x8006
#define wxACC_EVENT_OBJECT_SELECTIONADD 0x8007
#define wxACC_EVENT_OBJECT_SELECTIONREMOVE 0x8008
#define wxACC_EVENT_OBJECT_SELECTIONWITHIN 0x8009
#define wxACC_EVENT_OBJECT_STATECHANGE 0x800A
#define wxACC_EVENT_OBJECT_LOCATIONCHANGE 0x800B
#define wxACC_EVENT_OBJECT_NAMECHANGE 0x800C
#define wxACC_EVENT_OBJECT_DESCRIPTIONCHANGE 0x800D
#define wxACC_EVENT_OBJECT_VALUECHANGE 0x800E
#define wxACC_EVENT_OBJECT_PARENTCHANGE 0x800F
#define wxACC_EVENT_OBJECT_HELPCHANGE 0x8010
#define wxACC_EVENT_OBJECT_DEFACTIONCHANGE 0x8011
#define wxACC_EVENT_OBJECT_ACCELERATORCHANGE 0x8012
// ----------------------------------------------------------------------------
// wxAccessible
// All functions return an indication of success, failure, or not implemented.
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxAccessible;
class WXDLLEXPORT wxWindow;
class WXDLLEXPORT wxPoint;
class WXDLLEXPORT wxRect;
class WXDLLEXPORT wxAccessibleBase : public wxObject
{
DECLARE_NO_COPY_CLASS(wxAccessibleBase)
public:
wxAccessibleBase(wxWindow* win): m_window(win) {};
virtual ~wxAccessibleBase() {};
// Overridables
// Can return either a child object, or an integer
// representing the child element, starting from 1.
// pt is in screen coordinates.
virtual wxAccStatus HitTest(const wxPoint& WXUNUSED(pt), int* WXUNUSED(childId), wxAccessible** WXUNUSED(childObject))
{ return wxACC_NOT_IMPLEMENTED; }
// Returns the rectangle for this object (id = 0) or a child element (id > 0).
// rect is in screen coordinates.
virtual wxAccStatus GetLocation(wxRect& WXUNUSED(rect), int WXUNUSED(elementId))
{ return wxACC_NOT_IMPLEMENTED; }
// Navigates from fromId to toId/toObject.
virtual wxAccStatus Navigate(wxNavDir WXUNUSED(navDir), int WXUNUSED(fromId),
int* WXUNUSED(toId), wxAccessible** WXUNUSED(toObject))
{ return wxACC_NOT_IMPLEMENTED; }
// Gets the name of the specified object.
virtual wxAccStatus GetName(int WXUNUSED(childId), wxString* WXUNUSED(name))
{ return wxACC_NOT_IMPLEMENTED; }
// Gets the number of children.
virtual wxAccStatus GetChildCount(int* WXUNUSED(childCount))
{ return wxACC_NOT_IMPLEMENTED; }
// Gets the specified child (starting from 1).
// If *child is NULL and return value is wxACC_OK,
// this means that the child is a simple element and
// not an accessible object.
virtual wxAccStatus GetChild(int WXUNUSED(childId), wxAccessible** WXUNUSED(child))
{ return wxACC_NOT_IMPLEMENTED; }
// Gets the parent, or NULL.
virtual wxAccStatus GetParent(wxAccessible** WXUNUSED(parent))
{ return wxACC_NOT_IMPLEMENTED; }
// Performs the default action. childId is 0 (the action for this object)
// or > 0 (the action for a child).
// Return wxACC_NOT_SUPPORTED if there is no default action for this
// window (e.g. an edit control).
virtual wxAccStatus DoDefaultAction(int WXUNUSED(childId))
{ return wxACC_NOT_IMPLEMENTED; }
// Gets the default action for this object (0) or > 0 (the action for a child).
// Return wxACC_OK even if there is no action. actionName is the action, or the empty
// string if there is no action.
// The retrieved string describes the action that is performed on an object,
// not what the object does as a result. For example, a toolbar button that prints
// a document has a default action of "Press" rather than "Prints the current document."
virtual wxAccStatus GetDefaultAction(int WXUNUSED(childId), wxString* WXUNUSED(actionName))
{ return wxACC_NOT_IMPLEMENTED; }
// Returns the description for this object or a child.
virtual wxAccStatus GetDescription(int WXUNUSED(childId), wxString* WXUNUSED(description))
{ return wxACC_NOT_IMPLEMENTED; }
// Returns help text for this object or a child, similar to tooltip text.
virtual wxAccStatus GetHelpText(int WXUNUSED(childId), wxString* WXUNUSED(helpText))
{ return wxACC_NOT_IMPLEMENTED; }
// Returns the keyboard shortcut for this object or child.
// Return e.g. ALT+K
virtual wxAccStatus GetKeyboardShortcut(int WXUNUSED(childId), wxString* WXUNUSED(shortcut))
{ return wxACC_NOT_IMPLEMENTED; }
// Returns a role constant.
virtual wxAccStatus GetRole(int WXUNUSED(childId), wxAccRole* WXUNUSED(role))
{ return wxACC_NOT_IMPLEMENTED; }
// Returns a state constant.
virtual wxAccStatus GetState(int WXUNUSED(childId), long* WXUNUSED(state))
{ return wxACC_NOT_IMPLEMENTED; }
// Returns a localized string representing the value for the object
// or child.
virtual wxAccStatus GetValue(int WXUNUSED(childId), wxString* WXUNUSED(strValue))
{ return wxACC_NOT_IMPLEMENTED; }
// Selects the object or child.
virtual wxAccStatus Select(int WXUNUSED(childId), wxAccSelectionFlags WXUNUSED(selectFlags))
{ return wxACC_NOT_IMPLEMENTED; }
// Gets the window with the keyboard focus.
// If childId is 0 and child is NULL, no object in
// this subhierarchy has the focus.
// If this object has the focus, child should be 'this'.
virtual wxAccStatus GetFocus(int* WXUNUSED(childId), wxAccessible** WXUNUSED(child))
{ return wxACC_NOT_IMPLEMENTED; }
// Gets a variant representing the selected children
// of this object.
// Acceptable values:
// - a null variant (IsNull() returns TRUE)
// - a list variant (GetType() == wxT("list"))
// - an integer representing the selected child element,
// or 0 if this object is selected (GetType() == wxT("long"))
// - a "void*" pointer to a wxAccessible child object
virtual wxAccStatus GetSelections(wxVariant* WXUNUSED(selections))
{ return wxACC_NOT_IMPLEMENTED; }
// Accessors
// Returns the window associated with this object.
wxWindow* GetWindow() { return m_window; }
// Sets the window associated with this object.
void SetWindow(wxWindow* window) { m_window = window; }
// Operations
// Each platform's implementation must define this
// static void NotifyEvent(int eventType, wxWindow* window, wxAccObject objectType,
// int objectId);
private:
// Data members
wxWindow* m_window;
};
// ----------------------------------------------------------------------------
// now include the declaration of the real class
// ----------------------------------------------------------------------------
#if defined(__WXMSW__)
#include "wx/msw/ole/access.h"
#elif defined(__WXMOTIF__)
#include "wx/generic/access.h"
#elif defined(__WXMGL__)
#include "wx/generic/access.h"
#elif defined(__WXGTK__)
#include "wx/generic/access.h"
#elif defined(__WXX11__)
#include "wx/generic/access.h"
#elif defined(__WXMAC__)
#include "wx/generic/access.h"
#elif defined(__WXPM__)
#include "wx/generic/access.h"
#endif
#endif
// _WX_ACCESSBASE_H_

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

@@ -0,0 +1,634 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/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
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_APP_H_BASE_
#define _WX_APP_H_BASE_
// ----------------------------------------------------------------------------
// 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
#include "wx/build.h"
class WXDLLEXPORT wxApp;
class WXDLLEXPORT wxAppTraits;
class WXDLLEXPORT wxCmdLineParser;
class WXDLLEXPORT wxLog;
class WXDLLEXPORT wxMessageOutput;
// ----------------------------------------------------------------------------
// typedefs
// ----------------------------------------------------------------------------
// the type of the function used to create a wxApp object on program start up
typedef wxApp* (*wxAppInitializerFunction)();
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
enum
{
wxPRINT_WINDOWS = 1,
wxPRINT_POSTSCRIPT = 2
};
// ----------------------------------------------------------------------------
// support for framebuffer ports
// ----------------------------------------------------------------------------
#if wxUSE_GUI
// VS: Fullscreen/framebuffer application needs to choose display mode prior
// to wxWindows initialization. This class holds information about display
// mode. It is used by wxApp::Set/GetDisplayMode.
class WXDLLEXPORT wxDisplayModeInfo
{
public:
wxDisplayModeInfo() : m_ok(FALSE) {}
wxDisplayModeInfo(unsigned width, unsigned height, unsigned depth)
: m_width(width), m_height(height), m_depth(depth), m_ok(TRUE) {}
unsigned GetWidth() const { return m_width; }
unsigned GetHeight() const { return m_height; }
unsigned GetDepth() const { return m_depth; }
bool IsOk() const { return m_ok; }
private:
unsigned m_width, m_height, m_depth;
bool m_ok;
};
#endif // wxUSE_GUI
// ----------------------------------------------------------------------------
// wxAppConsole: wxApp for non-GUI applications
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxAppConsole : public wxEvtHandler
{
public:
// ctor and dtor
wxAppConsole();
virtual ~wxAppConsole();
// the virtual functions which may/must be overridden in the derived class
// -----------------------------------------------------------------------
// Called before OnRun(), this is a good place to do initialization -- if
// anything fails, return false from here to prevent the program from
// continuing. The command line is normally parsed here, call the base
// class OnInit() to do it.
virtual bool OnInit();
// This is the replacement for the normal main(): all program work should
// be done here. When OnRun() returns, the programs starts shutting down.
virtual int OnRun() = 0;
// This is only called if OnInit() returned true so it's a good place to do
// any cleanup matching the initializations done there.
virtual int OnExit();
// 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.
virtual void OnFatalException() { }
// Called from wxExit() function, should terminate the application a.s.a.p.
virtual void Exit();
// 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
{
return m_appName.empty() ? m_className : 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; }
// cmd line parsing stuff
// ----------------------
// all of these methods may be overridden in the derived class to
// customize the command line parsing (by default only a few standard
// options are handled)
//
// you also need to call wxApp::OnInit() from YourApp::OnInit() for all
// this to work
#if wxUSE_CMDLINE_PARSER
// this one is called from OnInit() to add all supported options
// to the given parser
virtual void OnInitCmdLine(wxCmdLineParser& parser);
// called after successfully parsing the command line, return TRUE
// to continue and FALSE to exit
virtual bool OnCmdLineParsed(wxCmdLineParser& parser);
// called if "--help" option was specified, return TRUE to continue
// and FALSE to exit
virtual bool OnCmdLineHelp(wxCmdLineParser& parser);
// called if incorrect command line options were given, return
// FALSE to abort and TRUE to continue
virtual bool OnCmdLineError(wxCmdLineParser& parser);
#endif // wxUSE_CMDLINE_PARSER
// miscellaneous customization functions
// -------------------------------------
// create the app traits object to which we delegate for everything which
// either should be configurable by the user (then he can change the
// default behaviour simply by overriding CreateTraits() and returning his
// own traits object) or which is GUI/console dependent as then wxAppTraits
// allows us to abstract the differences behind the common fa<66>ade
wxAppTraits *GetTraits();
// the functions below shouldn't be used now that we have wxAppTraits
#if WXWIN_COMPATIBILITY_2_4
#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();
#endif // wxUSE_LOG
// similar to CreateLogTarget() but for the global wxMessageOutput
// object
virtual wxMessageOutput *CreateMessageOutput();
#endif // WXWIN_COMPATIBILITY_2_4
// event processing functions
// --------------------------
// this method allows to filter all the events processed by the program, so
// you should try to return quickly from it to avoid slowing down the
// program to the crawl
//
// return value should be -1 to continue with the normal event processing,
// or TRUE or FALSE to stop further processing and pretend that the event
// had been already processed or won't be processed at all, respectively
virtual int FilterEvent(wxEvent& event);
// process all events in the wxPendingEvents list -- it is necessary to
// call this function to process posted events. This happens during each
// event loop iteration in GUI mode but if there is no main loop, it may be
// also called directly.
virtual void ProcessPendingEvents();
// doesn't do anything in this class, just a hook for GUI wxApp
virtual bool Yield(bool WXUNUSED(onlyIfNeeded) = false) { return true; }
// make sure that idle events are sent again
virtual void WakeUpIdle() { }
// debugging support
// -----------------
// this function is called when an assert failure occurs, the base class
// version does the normal processing (i.e. shows the usual assert failure
// dialog box)
//
// the arguments are the place where the assert occured, the text of the
// assert itself and the user-specified message
#ifdef __WXDEBUG__
virtual void OnAssert(const wxChar *file,
int line,
const wxChar *cond,
const wxChar *msg);
#endif // __WXDEBUG__
// check that the wxBuildOptions object (constructed in the application
// itself, usually the one from IMPLEMENT_APP() macro) matches the build
// options of the library and abort if it doesn't
static bool CheckBuildOptions(const wxBuildOptions& buildOptions);
// implementation only from now on
// -------------------------------
// helpers for dynamic wxApp construction
static void SetInitializerFunction(wxAppInitializerFunction fn)
{ ms_appInitFn = fn; }
static wxAppInitializerFunction GetInitializerFunction()
{ return ms_appInitFn; }
// command line arguments (public for backwards compatibility)
int argc;
wxChar **argv;
protected:
// the function which creates the traits object when GetTraits() needs it
// for the first time
virtual wxAppTraits *CreateTraits();
// function used for dynamic wxApp creation
static wxAppInitializerFunction ms_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
// the class defining the application behaviour, NULL initially and created
// by GetTraits() when first needed
wxAppTraits *m_traits;
// the application object is a singleton anyhow, there is no sense in
// copying it
DECLARE_NO_COPY_CLASS(wxAppConsole)
};
// ----------------------------------------------------------------------------
// wxAppBase: the common part of wxApp implementations for all platforms
// ----------------------------------------------------------------------------
#if wxUSE_GUI
class WXDLLEXPORT wxAppBase : public wxAppConsole
{
public:
wxAppBase();
virtual ~wxAppBase();
// the virtual functions which may/must be overridden in the derived class
// -----------------------------------------------------------------------
// 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();
// 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.
virtual int OnRun();
// exit the main loop thus terminating the application
virtual void Exit();
// the worker functions - usually not used directly by the user code
// -----------------------------------------------------------------
// 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;
// process all currently pending events right now
//
// it is an error to call Yield() recursively unless the value of
// onlyIfNeeded is TRUE
//
// WARNING: this function is dangerous as it can lead to unexpected
// reentrancies (i.e. when called from an event handler it
// may result in calling the same event handler again), use
// with _extreme_ care or, better, don't use at all!
virtual bool Yield(bool onlyIfNeeded = FALSE) = 0;
// this virtual function is called in the GUI mode when the application
// becomes idle and normally just sends wxIdleEvent to all interested
// parties
//
// it should return TRUE if more idle events are needed, FALSE if not
virtual bool ProcessIdle() = 0;
// top level window functions
// --------------------------
// return TRUE if our app has focus
virtual bool IsActive() const { return m_isActive; }
// 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)
virtual 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 disable this behaviour
// (with SetExitOnFrameDelete(FALSE)), you'll have to call
// ExitMainLoop() explicitly from somewhere.
void SetExitOnFrameDelete(bool flag)
{ m_exitOnFrameDelete = flag ? Yes : No; }
bool GetExitOnFrameDelete() const
{ return m_exitOnFrameDelete == Yes; }
// display mode, visual, printing mode, ...
// ------------------------------------------------------------------------
// Get display mode that is used use. This is only used in framebuffer
// wxWin ports (such as wxMGL).
virtual wxDisplayModeInfo GetDisplayMode() const { return wxDisplayModeInfo(); }
// Set display mode to use. This is only used in framebuffer wxWin
// ports (such as wxMGL). This method should be called from
// wxApp::OnInitGui
virtual bool SetDisplayMode(const wxDisplayModeInfo& WXUNUSED(info)) { return TRUE; }
// set use of best visual flag (see below)
void SetUseBestVisual( bool flag ) { m_useBestVisual = flag; }
bool GetUseBestVisual() const { return m_useBestVisual; }
// 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; }
// miscellaneous other stuff
// ------------------------------------------------------------------------
// called by toolkit-specific code to set the app status: active (we have
// focus) or not and also the last window which had focus before we were
// deactivated
virtual void SetActive(bool isActive, wxWindow *lastFocus);
protected:
// override base class method to use GUI traits
virtual wxAppTraits *CreateTraits();
// the main top level window (may be NULL)
wxWindow *m_topWindow;
// if Yes, exit the main loop when the last top level window is deleted, if
// No don't do it and if Later -- only do it once we reach our OnRun()
//
// the explanation for using this strange scheme is given in appcmn.cpp
enum
{
Later = -1,
No,
Yes
} m_exitOnFrameDelete;
// TRUE if the apps whats to use the best visual on systems where
// more than one are available (Sun, SGI, XFree86 4.0 ?)
bool m_useBestVisual;
// does any of our windows has focus?
bool m_isActive;
DECLARE_NO_COPY_CLASS(wxAppBase)
};
#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(__WXMGL__)
#include "wx/mgl/app.h"
#elif defined(__WXGTK__)
#include "wx/gtk/app.h"
#elif defined(__WXX11__)
#include "wx/x11/app.h"
#elif defined(__WXMAC__)
#include "wx/mac/app.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/app.h"
#elif defined(__WXPM__)
#include "wx/os2/app.h"
#endif
#else // !GUI
// can't use typedef because wxApp forward declared as a class
class WXDLLEXPORT wxApp : public wxAppConsole
{
};
#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
// ------------------------------------------------------
// Force an exit from main loop
extern void WXDLLEXPORT wxExit();
// Yield to other apps/messages
extern bool WXDLLEXPORT wxYield();
// Yield to other apps/messages
extern void WXDLLEXPORT wxWakeUpIdle();
// console applications may avoid using DECLARE_APP and IMPLEMENT_APP macros
// and call these functions instead at the program startup and termination
// -------------------------------------------------------------------------
#if !wxUSE_GUI
// 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();
// create an object of this class on stack to initialize/cleanup thel ibrary
// automatically
class WXDLLEXPORT wxInitializer
{
public:
// initialize the library
wxInitializer() { m_ok = wxInitialize(); }
// has the initialization been successful? (explicit test)
bool IsOk() const { return m_ok; }
// has the initialization been successful? (implicit test)
operator bool() const { return m_ok; }
// dtor only does clean up if we initialized the library properly
~wxInitializer() { if ( m_ok ) wxUninitialize(); }
private:
bool m_ok;
};
#endif // !wxUSE_GUI
// ----------------------------------------------------------------------------
// 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 !wxUSE_GUI || defined(__WXMOTIF__) || defined(__WXGTK__) || defined(__WXPM__) || defined(__WXMGL__) || defined(__WXCOCOA__)
#define IMPLEMENT_WXWIN_MAIN \
extern int wxEntry( int argc, char **argv ); \
int main(int argc, char **argv) { return wxEntry(argc, argv); }
#elif defined(__WXMAC__)
// wxMac seems to have a specific wxEntry prototype
#define IMPLEMENT_WXWIN_MAIN \
extern int wxEntry( int argc, char **argv, bool enterLoop = TRUE ); \
int main(int argc, char **argv) { return wxEntry(argc, argv); }
#elif defined(__WXMSW__) && defined(WXUSINGDLL)
// NT defines APIENTRY, 3.x not
#if !defined(WXAPIENTRY)
#define WXAPIENTRY WXFAR wxSTDCALL
#endif
#include <windows.h>
#include "wx/msw/winundef.h"
#define IMPLEMENT_WXWIN_MAIN \
extern "C" 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
#ifdef __WXUNIVERSAL__
#include "wx/univ/theme.h"
#define IMPLEMENT_WX_THEME_SUPPORT \
WX_USE_THEME(win32); \
WX_USE_THEME(gtk);
#else
#define IMPLEMENT_WX_THEME_SUPPORT
#endif
// Use this macro if you want to define your own main() or WinMain() function
// and call wxEntry() from there.
#define IMPLEMENT_APP_NO_MAIN(appname) \
wxApp *wxCreateApp() \
{ \
wxApp::CheckBuildOptions(wxBuildOptions()); \
return new appname; \
} \
wxAppInitializer wxTheAppInitializer((wxAppInitializerFunction) wxCreateApp); \
appname& wxGetApp() { return *(appname *)wxTheApp; }
// Same as IMPLEMENT_APP() normally but doesn't include themes support in
// wxUniversal builds
#define IMPLEMENT_APP_NO_THEMES(appname) \
IMPLEMENT_APP_NO_MAIN(appname) \
IMPLEMENT_WXWIN_MAIN
// 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) \
IMPLEMENT_APP_NO_THEMES(appname) \
IMPLEMENT_WX_THEME_SUPPORT
// this macro can be used multiple times and just allows you to use wxGetApp()
// function
#define DECLARE_APP(appname) extern appname& wxGetApp();
#endif
// _WX_APP_H_BASE_

183
include/wx/apptrait.h Normal file
View File

@@ -0,0 +1,183 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/apptrait.h
// Purpose: declaration of wxAppTraits and derived classes
// Author: Vadim Zeitlin
// Modified by:
// Created: 19.06.2003
// RCS-ID: $Id$
// Copyright: (c) 2003 Vadim Zeitlin <vadim@wxwindows.org>
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_APPTRAIT_H_
#define _WX_APPTRAIT_H_
class WXDLLEXPORT wxAppTraits;
#if wxUSE_FONTMAP
class WXDLLEXPORT wxFontMapper;
#endif // wxUSE_FONTMAP
class WXDLLEXPORT wxLog;
class WXDLLEXPORT wxMessageOutput;
// ----------------------------------------------------------------------------
// wxAppTraits: this class defines various configurable aspects of wxApp
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxAppTraitsBase
{
public:
// wxAppTraits is an ABC, but we also provide 2 standard implementations of
// it, one for the console apps and the other for the GUI ones
static wxAppTraits *CreateConsole();
#if wxUSE_GUI
static wxAppTraits *CreateGUI();
#endif // wxUSE_GUI
// hooks for creating the global objects, may be overridden by the user
// ------------------------------------------------------------------------
#if wxUSE_LOG
// create the default log target
virtual wxLog *CreateLogTarget() = 0;
#endif // wxUSE_LOG
// create the global object used for printing out messages
virtual wxMessageOutput *CreateMessageOutput() = 0;
#if wxUSE_FONTMAP
// create the global font mapper object used for encodings/charset mapping
virtual wxFontMapper *CreateFontMapper() = 0;
#endif // wxUSE_FONTMAP
// functions abstracting differences between GUI and console modes
// ------------------------------------------------------------------------
#ifdef __WXDEBUG__
// show the assert dialog with the specified message in GUI or just print
// the string to stderr in console mode
//
// base class version has an implementation (in spite of being pure
// virtual) in base/appbase.cpp which can be called as last resort.
//
// return true to suppress subsequent asserts, false to continue as before
virtual bool ShowAssertDialog(const wxString& msg) = 0;
#endif // __WXDEBUG__
// return true if fprintf(stderr) goes somewhere, false otherwise
virtual bool HasStderr() = 0;
// managing "pending delete" list: in GUI mode we can't immediately delete
// some objects because there may be unprocessed events for them and so we
// only do it during the next idle loop iteration while this is, of course,
// unnecessary in wxBase, so we have a few functions to abstract these
// operations
// add the object to the pending delete list in GUI, delete it immediately
// in wxBase
virtual void ScheduleForDestroy(wxObject *object) = 0;
// remove this object from the pending delete list in GUI, do nothing in
// wxBase
virtual void RemoveFromPendingDelete(wxObject *object) = 0;
// other miscellaneous helpers
// ---------------------------
// wxGetOsVersion() behaves differently in GUI and non-GUI builds under
// Unix: in the former case it returns the information about the toolkit
// and in the latter -- about the OS, so we need to virtualize it
virtual int GetOSVersion(int *verMaj, int *verMin) = 0;
};
// ----------------------------------------------------------------------------
// include the platform-specific version of the class
// ----------------------------------------------------------------------------
#if defined(__WXMSW__)
#include "wx/msw/apptbase.h"
#elif defined(__UNIX__)
#include "wx/unix/apptbase.h"
#else // no platform-specific methods to add to wxAppTraits
typedef
// wxAppTraits must be a class because it was forward declared as class
class WXDLLEXPORT wxAppTraits : public wxAppTraitsBase
{
};
#endif // platform
// ============================================================================
// standard traits for console and GUI applications
// ============================================================================
// ----------------------------------------------------------------------------
// wxConsoleAppTraitsBase: wxAppTraits implementation for the console apps
// ----------------------------------------------------------------------------
class wxConsoleAppTraitsBase : public wxAppTraits
{
public:
#if wxUSE_LOG
virtual wxLog *CreateLogTarget();
#endif // wxUSE_LOG
virtual wxMessageOutput *CreateMessageOutput();
#if wxUSE_FONTMAP
virtual wxFontMapper *CreateFontMapper();
#endif // wxUSE_FONTMAP
#ifdef __WXDEBUG__
virtual bool ShowAssertDialog(const wxString& msg);
#endif // __WXDEBUG__
virtual bool HasStderr();
virtual void ScheduleForDestroy(wxObject *object);
virtual void RemoveFromPendingDelete(wxObject *object);
};
// ----------------------------------------------------------------------------
// wxGUIAppTraitsBase: wxAppTraits implementation for the GUI apps
// ----------------------------------------------------------------------------
#if wxUSE_GUI
class wxGUIAppTraitsBase : public wxAppTraits
{
public:
#if wxUSE_LOG
virtual wxLog *CreateLogTarget();
#endif // wxUSE_LOG
virtual wxMessageOutput *CreateMessageOutput();
#if wxUSE_FONTMAP
virtual wxFontMapper *CreateFontMapper();
#endif // wxUSE_FONTMAP
#ifdef __WXDEBUG__
virtual bool ShowAssertDialog(const wxString& msg);
#endif // __WXDEBUG__
virtual bool HasStderr();
virtual void ScheduleForDestroy(wxObject *object);
virtual void RemoveFromPendingDelete(wxObject *object);
};
#endif // wxUSE_GUI
// ----------------------------------------------------------------------------
// include the platform-specific version of the classes above
// ----------------------------------------------------------------------------
#if defined(__WXMSW__)
#include "wx/msw/apptrait.h"
#elif defined(__UNIX__)
#include "wx/unix/apptrait.h"
#else // no platform-specific methods to add to wxAppTraits
#if wxUSE_GUI
typedef wxGUIAppTraitsBase wxGUIAppTraits;
#endif // wxUSE_GUI
typedef wxConsoleAppTraitsBase wxConsoleAppTraits;
#endif // platform
#endif // _WX_APPTRAIT_H_

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

@@ -0,0 +1,120 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/arrimpl.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 ") wxT(#x) wxT("::RemoveAt()")
// 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) : wxArrayPtrVoid() \
{ \
DoCopy(src); \
} \
\
void name::DoEmpty() \
{ \
for ( size_t ui = 0; ui < Count(); ui++ ) \
delete (T*)wxBaseArrayPtrVoid::Item(ui); \
} \
\
void name::RemoveAt(size_t uiIndex, size_t nRemove) \
{ \
wxCHECK_RET( uiIndex < Count(), _WX_ERROR_REMOVE2(name) ); \
\
for (size_t i = 0; i < nRemove; i++ ) \
delete (T*)wxBaseArrayPtrVoid::Item(uiIndex + i); \
\
wxBaseArrayPtrVoid::RemoveAt(uiIndex, nRemove); \
} \
\
void name::Add(const T& item, size_t nInsert) \
{ \
if (nInsert == 0) \
return; \
T* pItem = new T(item); \
size_t nOldSize = GetCount(); \
if ( pItem != NULL ) \
wxBaseArrayPtrVoid::Add(pItem, nInsert); \
for (size_t i = 1; i < nInsert; i++) \
wxBaseArrayPtrVoid::Item(nOldSize + i) = new T(item); \
} \
\
void name::Insert(const T& item, size_t uiIndex, size_t nInsert) \
{ \
if (nInsert == 0) \
return; \
T* pItem = new T(item); \
if ( pItem != NULL ) \
wxBaseArrayPtrVoid::Insert(pItem, uiIndex, nInsert); \
for (size_t i = 1; i < nInsert; i++) \
wxBaseArrayPtrVoid::Item(uiIndex + i) = new T(item); \
} \
\
int name::Index(const T& Item, bool bFromEnd) const \
{ \
if ( bFromEnd ) { \
if ( Count() > 0 ) { \
size_t ui = Count() - 1; \
do { \
if ( (T*)wxBaseArrayPtrVoid::Item(ui) == &Item ) \
return ui; \
ui--; \
} \
while ( ui != 0 ); \
} \
} \
else { \
for( size_t ui = 0; ui < Count(); ui++ ) { \
if( (T*)wxBaseArrayPtrVoid::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(_wxObjArray##name, name)

142
include/wx/artprov.h Normal file
View File

@@ -0,0 +1,142 @@
/////////////////////////////////////////////////////////////////////////////
// Name: artprov.h
// Purpose: wxArtProvider class
// Author: Vaclav Slavik
// Modified by:
// Created: 18/03/2002
// RCS-ID: $Id$
// Copyright: (c) Vaclav Slavik
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_ARTPROV_H_
#define _WX_ARTPROV_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "artprov.h"
#endif
#include "wx/string.h"
#include "wx/bitmap.h"
#include "wx/icon.h"
class WXDLLEXPORT wxArtProvidersList;
class WXDLLEXPORT wxArtProviderCache;
class wxArtProviderModule;
// ----------------------------------------------------------------------------
// Types
// ----------------------------------------------------------------------------
typedef wxString wxArtClient;
typedef wxString wxArtID;
#define wxART_MAKE_CLIENT_ID_FROM_STR(id) (wxString(id)+_T("_C"))
#define wxART_MAKE_CLIENT_ID(id) _T(#id) _T("_C")
#define wxART_MAKE_ART_ID_FROM_STR(id) (id)
#define wxART_MAKE_ART_ID(id) _T(#id)
// ----------------------------------------------------------------------------
// Art clients
// ----------------------------------------------------------------------------
#define wxART_TOOLBAR wxART_MAKE_CLIENT_ID(wxART_TOOLBAR)
#define wxART_MENU wxART_MAKE_CLIENT_ID(wxART_MENU)
#define wxART_FRAME_ICON wxART_MAKE_CLIENT_ID(wxART_FRAME_ICON)
#define wxART_CMN_DIALOG wxART_MAKE_CLIENT_ID(wxART_CMN_DIALOG)
#define wxART_HELP_BROWSER wxART_MAKE_CLIENT_ID(wxART_HELP_BROWSER)
#define wxART_MESSAGE_BOX wxART_MAKE_CLIENT_ID(wxART_MESSAGE_BOX)
#define wxART_OTHER wxART_MAKE_CLIENT_ID(wxART_OTHER)
// ----------------------------------------------------------------------------
// Art IDs
// ----------------------------------------------------------------------------
#define wxART_ADD_BOOKMARK wxART_MAKE_ART_ID(wxART_ADD_BOOKMARK)
#define wxART_DEL_BOOKMARK wxART_MAKE_ART_ID(wxART_DEL_BOOKMARK)
#define wxART_HELP_SIDE_PANEL wxART_MAKE_ART_ID(wxART_HELP_SIDE_PANEL)
#define wxART_HELP_SETTINGS wxART_MAKE_ART_ID(wxART_HELP_SETTINGS)
#define wxART_HELP_BOOK wxART_MAKE_ART_ID(wxART_HELP_BOOK)
#define wxART_HELP_FOLDER wxART_MAKE_ART_ID(wxART_HELP_FOLDER)
#define wxART_HELP_PAGE wxART_MAKE_ART_ID(wxART_HELP_PAGE)
#define wxART_GO_BACK wxART_MAKE_ART_ID(wxART_GO_BACK)
#define wxART_GO_FORWARD wxART_MAKE_ART_ID(wxART_GO_FORWARD)
#define wxART_GO_UP wxART_MAKE_ART_ID(wxART_GO_UP)
#define wxART_GO_DOWN wxART_MAKE_ART_ID(wxART_GO_DOWN)
#define wxART_GO_TO_PARENT wxART_MAKE_ART_ID(wxART_GO_TO_PARENT)
#define wxART_GO_HOME wxART_MAKE_ART_ID(wxART_GO_HOME)
#define wxART_FILE_OPEN wxART_MAKE_ART_ID(wxART_FILE_OPEN)
#define wxART_PRINT wxART_MAKE_ART_ID(wxART_PRINT)
#define wxART_HELP wxART_MAKE_ART_ID(wxART_HELP)
#define wxART_TIP wxART_MAKE_ART_ID(wxART_TIP)
#define wxART_REPORT_VIEW wxART_MAKE_ART_ID(wxART_REPORT_VIEW)
#define wxART_LIST_VIEW wxART_MAKE_ART_ID(wxART_LIST_VIEW)
#define wxART_NEW_DIR wxART_MAKE_ART_ID(wxART_NEW_DIR)
#define wxART_FOLDER wxART_MAKE_ART_ID(wxART_FOLDER)
#define wxART_GO_DIR_UP wxART_MAKE_ART_ID(wxART_GO_DIR_UP)
#define wxART_EXECUTABLE_FILE wxART_MAKE_ART_ID(wxART_EXECUTABLE_FILE)
#define wxART_NORMAL_FILE wxART_MAKE_ART_ID(wxART_NORMAL_FILE)
#define wxART_TICK_MARK wxART_MAKE_ART_ID(wxART_TICK_MARK)
#define wxART_CROSS_MARK wxART_MAKE_ART_ID(wxART_CROSS_MARK)
#define wxART_ERROR wxART_MAKE_ART_ID(wxART_ERROR)
#define wxART_QUESTION wxART_MAKE_ART_ID(wxART_QUESTION)
#define wxART_WARNING wxART_MAKE_ART_ID(wxART_WARNING)
#define wxART_INFORMATION wxART_MAKE_ART_ID(wxART_INFORMATION)
#define wxART_MISSING_IMAGE wxART_MAKE_ART_ID(wxART_MISSING_IMAGE)
// ----------------------------------------------------------------------------
// wxArtProvider class
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxArtProvider : public wxObject
{
public:
// Add new provider to the top of providers stack.
static void PushProvider(wxArtProvider *provider);
// Remove latest added provider and delete it.
static bool PopProvider();
// Remove provider. The provider must have been added previously!
// The provider is _not_ deleted.
static bool RemoveProvider(wxArtProvider *provider);
// Query the providers for bitmap with given ID and return it. Return
// wxNullBitmap if no provider provides it.
static wxBitmap GetBitmap(const wxArtID& id,
const wxArtClient& client = wxART_OTHER,
const wxSize& size = wxDefaultSize);
// Query the providers for icon with given ID and return it. Return
// wxNullIcon if no provider provides it.
static wxIcon GetIcon(const wxArtID& id,
const wxArtClient& client = wxART_OTHER,
const wxSize& size = wxDefaultSize);
protected:
friend class wxArtProviderModule;
// Initializes default provider
static void InitStdProvider();
// Destroy caches & all providers
static void CleanUpProviders();
// Derived classes must override this method to create requested
// art resource. This method is called only once per instance's
// lifetime for each requested wxArtID.
virtual wxBitmap CreateBitmap(const wxArtID& WXUNUSED(id),
const wxArtClient& WXUNUSED(client),
const wxSize& WXUNUSED(size)) = 0;
private:
// list of providers:
static wxArtProvidersList *sm_providers;
// art resources cache (so that CreateXXX is not called that often):
static wxArtProviderCache *sm_cache;
DECLARE_ABSTRACT_CLASS(wxArtProvider)
};
#endif // _WX_ARTPROV_H_

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

@@ -0,0 +1,181 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/bitmap.h
// Purpose: wxBitmap class interface
// Author: Vaclav Slavik
// Modified by:
// Created: 22.04.01
// RCS-ID: $Id$
// Copyright: (c) wxWindows team
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_BITMAP_H_BASE_
#define _WX_BITMAP_H_BASE_
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "bitmapbase.h"
#endif
#include "wx/defs.h"
#include "wx/object.h"
#include "wx/string.h"
#include "wx/gdiobj.h"
#include "wx/gdicmn.h" // for wxBitmapType
class WXDLLEXPORT wxBitmap;
class WXDLLEXPORT wxBitmapHandler;
class WXDLLEXPORT wxImage;
class WXDLLEXPORT wxMask;
class WXDLLEXPORT wxPalette;
#if defined(__WXMGL__) || defined(__WXMAC__) || defined(__WXCOCOA__) || defined(__WXMOTIF__) || defined(__WXX11__)
// Only used by some ports
// FIXME -- make all ports (but MSW which uses wxGDIImage) use these base classes
// ----------------------------------------------------------------------------
// wxBitmapHandler: class which knows how to create/load/save bitmaps in
// different formats
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxBitmapHandlerBase : public wxObject
{
public:
wxBitmapHandlerBase()
: m_name()
, m_extension()
, m_type(wxBITMAP_TYPE_INVALID)
{ }
virtual ~wxBitmapHandlerBase() { }
virtual bool Create(wxBitmap *bitmap, void *data, long flags,
int width, int height, int depth = 1) = 0;
virtual bool LoadFile(wxBitmap *bitmap, const wxString& name, long flags,
int desiredWidth, int desiredHeight) = 0;
virtual bool SaveFile(const wxBitmap *bitmap, const wxString& name,
int type, const wxPalette *palette = NULL) = 0;
void SetName(const wxString& name) { m_name = name; }
void SetExtension(const wxString& ext) { m_extension = ext; }
void SetType(wxBitmapType type) { m_type = type; }
wxString GetName() const { return m_name; }
wxString GetExtension() const { return m_extension; }
wxBitmapType GetType() const { return m_type; }
protected:
wxString m_name;
wxString m_extension;
wxBitmapType m_type;
DECLARE_ABSTRACT_CLASS(wxBitmapHandlerBase)
};
class WXDLLEXPORT wxBitmapBase : public wxGDIObject
{
public:
wxBitmapBase() : wxGDIObject() {}
virtual ~wxBitmapBase() {}
/*
Derived class must implement these:
wxBitmap();
wxBitmap(int width, int height, int depth = -1);
wxBitmap(const char bits[], int width, int height, int depth = 1);
wxBitmap(const char **bits);
wxBitmap(char **bits);
wxBitmap(const wxBitmap& bmp);
wxBitmap(const wxString &filename, wxBitmapType type = wxBITMAP_TYPE_XPM);
wxBitmap(const wxImage& image, int depth = -1);
wxBitmap& operator = (const wxBitmap& bmp);
bool operator == (const wxBitmap& bmp) const;
bool operator != (const wxBitmap& bmp) const;
bool Create(int width, int height, int depth = -1);
static void InitStandardHandlers();
*/
virtual bool Ok() const = 0;
virtual int GetHeight() const = 0;
virtual int GetWidth() const = 0;
virtual int GetDepth() const = 0;
virtual wxImage ConvertToImage() const = 0;
virtual wxMask *GetMask() const = 0;
virtual void SetMask(wxMask *mask) = 0;
virtual wxBitmap GetSubBitmap(const wxRect& rect) const = 0;
virtual bool SaveFile(const wxString &name, wxBitmapType type,
const wxPalette *palette = (wxPalette *)NULL) const = 0;
virtual bool LoadFile(const wxString &name, wxBitmapType type) = 0;
/*
If raw bitmap access is supported (see wx/rawbmp.h), the following
methods should be implemented:
virtual bool GetRawData(wxRawBitmapData *data) = 0;
virtual void UngetRawData(wxRawBitmapData *data) = 0;
*/
#if wxUSE_PALETTE
virtual wxPalette *GetPalette() const = 0;
virtual void SetPalette(const wxPalette& palette) = 0;
#endif // wxUSE_PALETTE
// copies the contents and mask of the given (colour) icon to the bitmap
virtual bool CopyFromIcon(const wxIcon& icon) = 0;
// implementation:
virtual void SetHeight(int height) = 0;
virtual void SetWidth(int width) = 0;
virtual void SetDepth(int depth) = 0;
// Format handling
static inline wxList& GetHandlers() { return sm_handlers; }
static void AddHandler(wxBitmapHandlerBase *handler);
static void InsertHandler(wxBitmapHandlerBase *handler);
static bool RemoveHandler(const wxString& name);
static wxBitmapHandler *FindHandler(const wxString& name);
static wxBitmapHandler *FindHandler(const wxString& extension, wxBitmapType bitmapType);
static wxBitmapHandler *FindHandler(wxBitmapType bitmapType);
//static void InitStandardHandlers();
// (wxBitmap must implement this one)
static void CleanUpHandlers();
protected:
static wxList sm_handlers;
DECLARE_ABSTRACT_CLASS(wxBitmapBase)
};
#endif
#if defined(__WXMSW__)
#include "wx/msw/bitmap.h"
#elif defined(__WXMOTIF__)
#include "wx/x11/bitmap.h"
#elif defined(__WXGTK__)
#include "wx/gtk/bitmap.h"
#elif defined(__WXX11__)
#include "wx/x11/bitmap.h"
#elif defined(__WXMGL__)
#include "wx/mgl/bitmap.h"
#elif defined(__WXMAC__)
#include "wx/mac/bitmap.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/bitmap.h"
#elif defined(__WXPM__)
#include "wx/os2/bitmap.h"
#endif
#endif
// _WX_BITMAP_H_BASE_

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

@@ -0,0 +1,99 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/bmpbutton.h
// Purpose: wxBitmapButton class interface
// Author: Vadim Zeitlin
// Modified by:
// Created: 25.08.00
// RCS-ID: $Id$
// Copyright: (c) 2000 Vadim Zeitlin
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_BMPBUTTON_H_BASE_
#define _WX_BMPBUTTON_H_BASE_
#if wxUSE_BMPBUTTON
#include "wx/bitmap.h"
#include "wx/button.h"
WXDLLEXPORT_DATA(extern const wxChar*) wxButtonNameStr;
// ----------------------------------------------------------------------------
// wxBitmapButton: a button which shows bitmaps instead of the usual string.
// It has different bitmaps for different states (focused/disabled/pressed)
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxBitmapButtonBase : public wxButton
{
public:
wxBitmapButtonBase()
: m_bmpNormal(), m_bmpSelected(), m_bmpFocus(), m_bmpDisabled()
, m_marginX(0), m_marginY(0)
{ }
// set the bitmaps
void SetBitmapLabel(const wxBitmap& bitmap)
{ m_bmpNormal = bitmap; OnSetBitmap(); }
void SetBitmapSelected(const wxBitmap& sel)
{ m_bmpSelected = sel; OnSetBitmap(); };
void SetBitmapFocus(const wxBitmap& focus)
{ m_bmpFocus = focus; OnSetBitmap(); };
void SetBitmapDisabled(const wxBitmap& disabled)
{ m_bmpDisabled = disabled; OnSetBitmap(); };
void SetLabel(const wxBitmap& bitmap)
{ SetBitmapLabel(bitmap); }
// retrieve the bitmaps
const wxBitmap& GetBitmapLabel() const { return m_bmpNormal; }
const wxBitmap& GetBitmapSelected() const { return m_bmpSelected; }
const wxBitmap& GetBitmapFocus() const { return m_bmpFocus; }
const wxBitmap& GetBitmapDisabled() const { return m_bmpDisabled; }
wxBitmap& GetBitmapLabel() { return m_bmpNormal; }
wxBitmap& GetBitmapSelected() { return m_bmpSelected; }
wxBitmap& GetBitmapFocus() { return m_bmpFocus; }
wxBitmap& GetBitmapDisabled() { return m_bmpDisabled; }
// set/get the margins around the button
virtual void SetMargins(int x, int y) { m_marginX = x; m_marginY = y; }
int GetMarginX() const { return m_marginX; }
int GetMarginY() const { return m_marginY; }
protected:
// function called when any of the bitmaps changes
virtual void OnSetBitmap() { }
// the bitmaps for various states
wxBitmap m_bmpNormal,
m_bmpSelected,
m_bmpFocus,
m_bmpDisabled;
// the margins around the bitmap
int m_marginX,
m_marginY;
private:
// Prevent Virtual function hiding warnings
void SetLabel(const wxString& rsLabel)
{ wxWindowBase::SetLabel(rsLabel); }
};
#if defined(__WXUNIVERSAL__)
#include "wx/univ/bmpbuttn.h"
#elif 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(__WXMAC__)
#include "wx/mac/bmpbuttn.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/bmpbuttn.h"
#elif defined(__WXPM__)
#include "wx/os2/bmpbuttn.h"
#endif
#endif // wxUSE_BMPBUTTON
#endif // _WX_BMPBUTTON_H_BASE_

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

@@ -0,0 +1,23 @@
#ifndef _WX_BRUSH_H_BASE_
#define _WX_BRUSH_H_BASE_
#if defined(__WXMSW__)
#include "wx/msw/brush.h"
#elif defined(__WXMOTIF__)
#include "wx/x11/brush.h"
#elif defined(__WXGTK__)
#include "wx/gtk/brush.h"
#elif defined(__WXX11__)
#include "wx/x11/brush.h"
#elif defined(__WXMGL__)
#include "wx/mgl/brush.h"
#elif defined(__WXMAC__)
#include "wx/mac/brush.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/brush.h"
#elif defined(__WXPM__)
#include "wx/os2/brush.h"
#endif
#endif
// _WX_BRUSH_H_BASE_

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

@@ -0,0 +1,272 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/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 licence
///////////////////////////////////////////////////////////////////////////////
// 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"
// ----------------------------------------------------------------------------
// Special classes for (wide) character strings: they use malloc/free instead
// of new/delete
// ----------------------------------------------------------------------------
#define DEFINE_BUFFER(classname, chartype, strdupfunc) \
class classname \
{ \
public: \
classname(const chartype *str) \
: m_str(str ? strdupfunc(str) : NULL) \
{ \
} \
\
classname(size_t len) \
: m_str((chartype *)malloc((len + 1)*sizeof(chartype))) \
{ \
m_str[len] = (chartype)0; \
} \
\
/* no need to check for NULL, free() does it */ \
~classname() { free(m_str); } \
\
/* \
WARNING: \
\
the copy ctor and assignment operators change the passed in object \
even although it is declared as "const", so: \
\
a) it shouldn't be really const \
b) you shouldn't use it afterwards (or know that it was reset) \
\
This is very ugly but is unfortunately needed to make the normal use\
of classname buffer objects possible and is very similar to what \
std::auto_ptr<> does (as if it were an excuse...) \
*/ \
\
/* \
because of the remark above, release() is declared const even if it \
isn't really const \
*/ \
chartype *release() const \
{ \
chartype *p = m_str; \
((classname *)this)->m_str = NULL; \
return p; \
} \
\
classname(const classname& src) \
: m_str(src.release()) \
{ \
} \
\
classname& operator=(const chartype *str) \
{ \
free(m_str); \
m_str = str ? strdupfunc(str) : NULL; \
return *this; \
} \
\
classname& operator=(const classname& src) \
{ \
free(m_str); \
m_str = src.release(); \
\
return *this; \
} \
\
chartype *data() { return m_str; } \
const chartype *data() const { return m_str; } \
operator const chartype *() const { return m_str; } \
chartype operator[](size_t n) const { return m_str[n]; } \
\
private: \
chartype *m_str; \
}
DEFINE_BUFFER(wxCharBuffer, char, wxStrdupA);
#if wxUSE_WCHAR_T
DEFINE_BUFFER(wxWCharBuffer, wchar_t, wxStrdupW);
#endif // wxUSE_WCHAR_T
#undef DEFINE_BUFFER
#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
// ----------------------------------------------------------------------------
// A class for holding growable data buffers (not necessarily strings)
// ----------------------------------------------------------------------------
// This class manages the actual data buffer pointer and is ref-counted.
class wxMemoryBufferData
{
public:
// the initial size and also the size added by ResizeIfNeeded()
enum { BLOCK_SIZE = 1024 };
friend class wxMemoryBuffer;
// everyting is private as it can only be used by wxMemoryBuffer
private:
wxMemoryBufferData(size_t size = wxMemoryBufferData::BLOCK_SIZE)
: m_data(size ? malloc(size) : NULL), m_size(size), m_len(0), m_ref(0)
{
}
~wxMemoryBufferData() { free(m_data); }
void ResizeIfNeeded(size_t newSize)
{
if (newSize > m_size)
{
void *dataOld = m_data;
m_data = realloc(m_data, newSize + wxMemoryBufferData::BLOCK_SIZE);
if ( !m_data )
{
free(dataOld);
}
m_size = newSize + wxMemoryBufferData::BLOCK_SIZE;
}
}
void IncRef() { m_ref += 1; }
void DecRef()
{
m_ref -= 1;
if (m_ref == 0) // are there no more references?
delete this;
}
// the buffer containing the data
void *m_data;
// the size of the buffer
size_t m_size;
// the amount of data currently in the buffer
size_t m_len;
// the reference count
size_t m_ref;
DECLARE_NO_COPY_CLASS(wxMemoryBufferData)
};
class wxMemoryBuffer
{
public:
// ctor and dtor
wxMemoryBuffer(size_t size = wxMemoryBufferData::BLOCK_SIZE)
{
m_bufdata = new wxMemoryBufferData(size);
m_bufdata->IncRef();
}
~wxMemoryBuffer() { m_bufdata->DecRef(); }
// copy and assignment
wxMemoryBuffer(const wxMemoryBuffer& src)
: m_bufdata(src.m_bufdata)
{
m_bufdata->IncRef();
}
wxMemoryBuffer& operator=(const wxMemoryBuffer& src)
{
m_bufdata->DecRef();
m_bufdata = src.m_bufdata;
m_bufdata->IncRef();
return *this;
}
// Accessors
void *GetData() const { return m_bufdata->m_data; }
size_t GetBufSize() const { return m_bufdata->m_size; }
size_t GetDataLen() const { return m_bufdata->m_len; }
void SetBufSize(size_t size) { m_bufdata->ResizeIfNeeded(size); }
void SetDataLen(size_t len)
{
wxASSERT(len <= m_bufdata->m_size);
m_bufdata->m_len = len;
}
// Ensure the buffer is big enough and return a pointer to it
void *GetWriteBuf(size_t sizeNeeded)
{
m_bufdata->ResizeIfNeeded(sizeNeeded);
return m_bufdata->m_data;
}
// Update the length after the write
void UngetWriteBuf(size_t sizeUsed) { SetDataLen(sizeUsed); }
// Like the above, but appends to the buffer
void *GetAppendBuf(size_t sizeNeeded)
{
m_bufdata->ResizeIfNeeded(m_bufdata->m_len + sizeNeeded);
return (char*)m_bufdata->m_data + m_bufdata->m_len;
}
// Update the length after the append
void UngetAppendBuf(size_t sizeUsed)
{
SetDataLen(m_bufdata->m_len + sizeUsed);
}
// Other ways to append to the buffer
void AppendByte(char data)
{
wxCHECK_RET( m_bufdata->m_data, _T("invalid wxMemoryBuffer") );
m_bufdata->ResizeIfNeeded(m_bufdata->m_len + 1);
*(((char*)m_bufdata->m_data) + m_bufdata->m_len) = data;
m_bufdata->m_len += 1;
}
void AppendData(void* data, size_t len)
{
memcpy(GetAppendBuf(len), data, len);
UngetAppendBuf(len);
}
operator const char *() const { return (const char*)GetData(); }
private:
wxMemoryBufferData* m_bufdata;
};
// ----------------------------------------------------------------------------
// template class for any kind of data
// ----------------------------------------------------------------------------
// TODO
#endif // _WX_BUFFER_H

57
include/wx/build.h Normal file
View File

@@ -0,0 +1,57 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/build.h
// Purpose: wxBuildOptions class declaration
// Author: Vadim Zeitlin
// Modified by:
// Created: 07.05.02
// RCS-ID: $Id$
// Copyright: (c) 2002 Vadim Zeitlin <vadim@wxwindows.org>
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_BUILD_H_
#define _WX_BUILD_H_
#include "wx/version.h"
class WXDLLEXPORT wxAppConsole;
// ----------------------------------------------------------------------------
// wxBuildOptions
// ----------------------------------------------------------------------------
class wxBuildOptions
{
public:
// the ctor must be inline to get the compilation settings of the code
// which included this header
wxBuildOptions()
{
// debug/release
#ifdef __WXDEBUG__
m_isDebug = TRUE;
#else
m_isDebug = FALSE;
#endif
// version: we don't test the micro version as hopefully changes
// between 2 micro versions don't result in fatal compatibility
// problems
m_verMaj = wxMAJOR_VERSION;
m_verMin = wxMINOR_VERSION;
}
private:
// the version
int m_verMaj,
m_verMin;
// compiled with __WXDEBUG__?
bool m_isDebug;
// actually only CheckBuildOptions() should be our friend but well...
friend class wxAppConsole;
};
#endif // _WX_BUILD_H_

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

@@ -0,0 +1,56 @@
/////////////////////////////////////////////////////////////////////////////
// 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__
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "busyinfo.h"
#endif
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#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, wxWindow *parent = NULL);
virtual ~wxBusyInfo();
private:
wxInfoFrame *m_InfoFrame;
DECLARE_NO_COPY_CLASS(wxBusyInfo)
};
#endif
#endif

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

@@ -0,0 +1,82 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/button.h
// Purpose: wxButtonBase class
// Author: Vadim Zetlin
// Modified by:
// Created: 15.08.00
// RCS-ID: $Id$
// Copyright: (c) Vadim Zetlin
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_BUTTON_H_BASE_
#define _WX_BUTTON_H_BASE_
#if wxUSE_BUTTON
// ----------------------------------------------------------------------------
// wxButton flags
// ----------------------------------------------------------------------------
// These two flags are obsolete
#define wxBU_NOAUTODRAW 0x0000
#define wxBU_AUTODRAW 0x0004
// These flags affect label alignment
#define wxBU_LEFT 0x0040
#define wxBU_TOP 0x0080
#define wxBU_RIGHT 0x0100
#define wxBU_BOTTOM 0x0200
// by default, the buttons will be created with some (system dependent)
// minimal size to make them look nicer, giving this style will make them as
// small as possible
#define wxBU_EXACTFIT 0x0001
#include "wx/control.h"
class WXDLLEXPORT wxBitmap;
WXDLLEXPORT_DATA(extern const wxChar*) wxButtonNameStr;
// ----------------------------------------------------------------------------
// wxButton: a push button
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxButtonBase : public wxControl
{
public:
// show the image in the button in addition to the label
virtual void SetImageLabel(const wxBitmap& WXUNUSED(bitmap)) { }
// set the margins around the image
virtual void SetImageMargins(wxCoord WXUNUSED(x), wxCoord WXUNUSED(y)) { }
// this wxButton method is called when the button becomes the default one
// on its panel
virtual void SetDefault() { }
// returns the default button size for this platform
static wxSize GetDefaultSize();
};
#if defined(__WXUNIVERSAL__)
#include "wx/univ/button.h"
#elif 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(__WXMAC__)
#include "wx/mac/button.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/button.h"
#elif defined(__WXPM__)
#include "wx/os2/button.h"
#endif
#endif // wxUSE_BUTTON
#endif
// _WX_BUTTON_H_BASE_

216
include/wx/calctrl.h Normal file
View File

@@ -0,0 +1,216 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/calctrl.h
// Purpose: date-picker control
// Author: Vadim Zeitlin
// Modified by:
// Created: 29.12.99
// RCS-ID: $Id$
// Copyright: (c) 1999 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
/*
TODO
1. implement multiple selections for date ranges
2. background bitmap for the calendar?
*/
#ifndef _WX_CALCTRL_H_
#define _WX_CALCTRL_H_
#include "wx/defs.h"
#if wxUSE_CALENDARCTRL
#include "wx/datetime.h"
#include "wx/colour.h"
#include "wx/font.h"
// ----------------------------------------------------------------------------
// wxCalendarCtrl flags
// ----------------------------------------------------------------------------
enum
{
// show Sunday as the first day of the week (default)
wxCAL_SUNDAY_FIRST = 0x0000,
// show Monder as the first day of the week
wxCAL_MONDAY_FIRST = 0x0001,
// highlight holidays
wxCAL_SHOW_HOLIDAYS = 0x0002,
// disable the year change control, show only the month change one
wxCAL_NO_YEAR_CHANGE = 0x0004,
// don't allow changing neither month nor year (implies
// wxCAL_NO_YEAR_CHANGE)
wxCAL_NO_MONTH_CHANGE = 0x000c,
// use MS-style month-selection instead of combo-spin combination
wxCAL_SEQUENTIAL_MONTH_SELECTION = 0x0010,
// show the neighbouring weeks in the previous and next month
wxCAL_SHOW_SURROUNDING_WEEKS = 0x0020
};
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
// return values for the HitTest() method
enum wxCalendarHitTestResult
{
wxCAL_HITTEST_NOWHERE, // outside of anything
wxCAL_HITTEST_HEADER, // on the header (weekdays)
wxCAL_HITTEST_DAY, // on a day in the calendar
wxCAL_HITTEST_INCMONTH,
wxCAL_HITTEST_DECMONTH,
wxCAL_HITTEST_SURROUNDING_WEEK
};
// border types for a date
enum wxCalendarDateBorder
{
wxCAL_BORDER_NONE, // no border (default)
wxCAL_BORDER_SQUARE, // a rectangular border
wxCAL_BORDER_ROUND // a round border
};
// ----------------------------------------------------------------------------
// wxCalendarDateAttr: custom attributes for a calendar date
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxCalendarDateAttr
{
#if !defined(__VISAGECPP__)
protected:
// This has to be before the use of Init(), for MSVC++ 1.5
// But dorks up Visualage!
void Init(wxCalendarDateBorder border = wxCAL_BORDER_NONE)
{
m_border = border;
m_holiday = FALSE;
}
#endif
public:
// ctors
wxCalendarDateAttr() { Init(); }
wxCalendarDateAttr(const wxColour& colText,
const wxColour& colBack = wxNullColour,
const wxColour& colBorder = wxNullColour,
const wxFont& font = wxNullFont,
wxCalendarDateBorder border = wxCAL_BORDER_NONE)
: m_colText(colText), m_colBack(colBack),
m_colBorder(colBorder), m_font(font)
{
Init(border);
}
wxCalendarDateAttr(wxCalendarDateBorder border,
const wxColour& colBorder = wxNullColour)
: m_colBorder(colBorder)
{
Init(border);
}
// setters
void SetTextColour(const wxColour& colText) { m_colText = colText; }
void SetBackgroundColour(const wxColour& colBack) { m_colBack = colBack; }
void SetBorderColour(const wxColour& col) { m_colBorder = col; }
void SetFont(const wxFont& font) { m_font = font; }
void SetBorder(wxCalendarDateBorder border) { m_border = border; }
void SetHoliday(bool holiday) { m_holiday = holiday; }
// accessors
bool HasTextColour() const { return m_colText.Ok(); }
bool HasBackgroundColour() const { return m_colBack.Ok(); }
bool HasBorderColour() const { return m_colBorder.Ok(); }
bool HasFont() const { return m_font.Ok(); }
bool HasBorder() const { return m_border != wxCAL_BORDER_NONE; }
bool IsHoliday() const { return m_holiday; }
const wxColour& GetTextColour() const { return m_colText; }
const wxColour& GetBackgroundColour() const { return m_colBack; }
const wxColour& GetBorderColour() const { return m_colBorder; }
const wxFont& GetFont() const { return m_font; }
wxCalendarDateBorder GetBorder() const { return m_border; }
#if defined(__VISAGECPP__)
protected:
// This has to be here for VisualAge
void Init(wxCalendarDateBorder border = wxCAL_BORDER_NONE)
{
m_border = border;
m_holiday = FALSE;
}
#endif
private:
wxColour m_colText,
m_colBack,
m_colBorder;
wxFont m_font;
wxCalendarDateBorder m_border;
bool m_holiday;
};
// ----------------------------------------------------------------------------
// wxCalendarCtrl events
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxCalendarCtrl;
class WXDLLEXPORT wxCalendarEvent : public wxCommandEvent
{
friend class wxCalendarCtrl;
public:
wxCalendarEvent() { Init(); }
wxCalendarEvent(wxCalendarCtrl *cal, wxEventType type);
const wxDateTime& GetDate() const { return m_date; }
wxDateTime::WeekDay GetWeekDay() const { return m_wday; }
protected:
void Init();
private:
wxDateTime m_date;
wxDateTime::WeekDay m_wday;
DECLARE_DYNAMIC_CLASS(wxCalendarEvent)
};
// ----------------------------------------------------------------------------
// wxCalendarCtrl
// ----------------------------------------------------------------------------
// so far we only have a generic version, so keep it simple
#include "wx/generic/calctrl.h"
// ----------------------------------------------------------------------------
// calendar event types and macros for handling them
// ----------------------------------------------------------------------------
BEGIN_DECLARE_EVENT_TYPES()
DECLARE_EVENT_TYPE(wxEVT_CALENDAR_SEL_CHANGED, 950)
DECLARE_EVENT_TYPE(wxEVT_CALENDAR_DAY_CHANGED, 951)
DECLARE_EVENT_TYPE(wxEVT_CALENDAR_MONTH_CHANGED, 952)
DECLARE_EVENT_TYPE(wxEVT_CALENDAR_YEAR_CHANGED, 953)
DECLARE_EVENT_TYPE(wxEVT_CALENDAR_DOUBLECLICKED, 954)
DECLARE_EVENT_TYPE(wxEVT_CALENDAR_WEEKDAY_CLICKED, 955)
END_DECLARE_EVENT_TYPES()
typedef void (wxEvtHandler::*wxCalendarEventFunction)(wxCalendarEvent&);
#define EVT_CALENDAR(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_CALENDAR_DOUBLECLICKED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxCalendarEventFunction) & fn, (wxObject *) NULL),
#define EVT_CALENDAR_SEL_CHANGED(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_CALENDAR_SEL_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxCalendarEventFunction) & fn, (wxObject *) NULL),
#define EVT_CALENDAR_DAY(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_CALENDAR_DAY_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxCalendarEventFunction) & fn, (wxObject *) NULL),
#define EVT_CALENDAR_MONTH(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_CALENDAR_MONTH_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxCalendarEventFunction) & fn, (wxObject *) NULL),
#define EVT_CALENDAR_YEAR(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_CALENDAR_YEAR_CHANGED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxCalendarEventFunction) & fn, (wxObject *) NULL),
#define EVT_CALENDAR_WEEKDAY_CLICKED(id, fn) DECLARE_EVENT_TABLE_ENTRY(wxEVT_CALENDAR_WEEKDAY_CLICKED, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxCommandEventFunction) (wxCalendarEventFunction) & fn, (wxObject *) NULL),
#endif // wxUSE_CALENDARCTRL
#endif // _WX_CALCTRL_H_

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

@@ -0,0 +1,234 @@
///////////////////////////////////////////////////////////////////////////////
// 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_
#include "wx/defs.h"
#if wxUSE_CARET
#if defined(__GNUG__) && !defined(__APPLE__)
#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; }
// change the size of the caret
void SetSize(int width, int height) {
m_width = width;
m_height = height;
DoSize();
}
void SetSize(const wxSize& size) { SetSize(size.x, size.y); }
// 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;
virtual void DoSize() { }
// 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
// ----------------------------------------------------------------------------
// wxCaretSuspend: a simple class which hides the caret in its ctor and
// restores it in the dtor, this should be used when drawing on the screen to
// avoid overdrawing the caret
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxCaretSuspend
{
public:
wxCaretSuspend(wxWindow *win)
{
m_caret = win->GetCaret();
if ( m_caret )
m_caret->Hide();
}
~wxCaretSuspend()
{
if ( m_caret )
m_caret->Show();
}
private:
wxCaret *m_caret;
DECLARE_NO_COPY_CLASS(wxCaretSuspend)
};
#endif // wxUSE_CARET
#endif // _WX_CARET_H_BASE_

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

@@ -0,0 +1,54 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/checkbox.h
// Purpose: wxCheckBox class interface
// Author: Vadim Zeitlin
// Modified by:
// Created: 07.09.00
// RCS-ID: $Id$
// Copyright: (c) wxWindows team
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_CHECKBOX_H_BASE_
#define _WX_CHECKBOX_H_BASE_
#if wxUSE_CHECKBOX
#include "wx/control.h"
WXDLLEXPORT_DATA(extern const wxChar*) wxCheckBoxNameStr;
// ----------------------------------------------------------------------------
// wxCheckBox: a control which shows a label and a box which may be checked
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxCheckBoxBase : public wxControl
{
public:
// set/get the checked status of the listbox
virtual void SetValue(bool value) = 0;
virtual bool GetValue() const = 0;
bool IsChecked() const { return GetValue(); }
};
#if defined(__WXUNIVERSAL__)
#include "wx/univ/checkbox.h"
#elif 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(__WXMAC__)
#include "wx/mac/checkbox.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/checkbox.h"
#elif defined(__WXPM__)
#include "wx/os2/checkbox.h"
#endif
#endif // wxUSE_CHECKBOX
#endif
// _WX_CHECKBOX_H_BASE_

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

@@ -0,0 +1,50 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/checklst.h
// Purpose: wxCheckListBox class interface
// Author: Vadim Zeitlin
// Modified by:
// Created: 12.09.00
// RCS-ID: $Id$
// Copyright: (c) Vadim Zeitlin
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_CHECKLST_H_BASE_
#define _WX_CHECKLST_H_BASE_
#if wxUSE_CHECKLISTBOX
#include "wx/listbox.h"
// ----------------------------------------------------------------------------
// wxCheckListBox: a listbox whose items may be checked
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxCheckListBoxBase : public wxListBox
{
public:
// check list box specific methods
virtual bool IsChecked(size_t item) const = 0;
virtual void Check(size_t item, bool check = TRUE) = 0;
};
#if defined(__WXUNIVERSAL__)
#include "wx/univ/checklst.h"
#elif 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(__WXMAC__)
#include "wx/mac/checklst.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/checklst.h"
#elif defined(__WXPM__)
#include "wx/os2/checklst.h"
#endif
#endif // wxUSE_CHECKLISTBOX
#endif
// _WX_CHECKLST_H_BASE_

1269
include/wx/chkconf.h Normal file

File diff suppressed because it is too large Load Diff

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_

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

@@ -0,0 +1,82 @@
/////////////////////////////////////////////////////////////////////////////
// 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
// ----------------------------------------------------------------------------
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "choicebase.h"
#endif
#if wxUSE_CHOICE
#include "wx/ctrlsub.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 wxControlWithItems
{
public:
// all generic methods are in wxControlWithItems
virtual ~wxChoiceBase();
// single selection logic
virtual void SetSelection(int n) = 0;
virtual bool SetStringSelection(const wxString& s);
// don't override this
virtual void Select(int n) { SetSelection(n); }
// set/get the number of columns in the control (as they're not supported on
// most platforms, they do nothing by default)
virtual void SetColumns(int WXUNUSED(n) = 1 ) { }
virtual int GetColumns() const { return 1 ; }
// emulate selecting the item event.GetInt()
void Command(wxCommandEvent& event);
};
// ----------------------------------------------------------------------------
// include the platform-dependent class definition
// ----------------------------------------------------------------------------
#if defined(__WXUNIVERSAL__)
#include "wx/univ/choice.h"
#elif 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(__WXMAC__)
#include "wx/mac/choice.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/choice.h"
#elif defined(__WXPM__)
#include "wx/os2/choice.h"
#endif
#endif // wxUSE_CHOICE
#endif
// _WX_CHOICE_H_BASE_

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

@@ -0,0 +1,142 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/clipbrd.h
// Purpose: wxClipboad class and clipboard functions
// Author: Vadim Zeitlin
// Modified by:
// Created: 19.10.99
// RCS-ID: $Id$
// Copyright: (c) wxWindows Team
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_CLIPBRD_H_BASE_
#define _WX_CLIPBRD_H_BASE_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "clipboardbase.h"
#endif
#include "wx/defs.h"
#if wxUSE_CLIPBOARD
#include "wx/object.h"
#include "wx/wxchar.h"
class WXDLLEXPORT wxDataFormat;
class WXDLLEXPORT wxDataObject;
// ----------------------------------------------------------------------------
// wxClipboard represents the system clipboard. Normally, you should use
// wxTheClipboard which is a global pointer to the (unique) clipboard.
//
// Clipboard can be used to copy data to/paste data from. It works together
// with wxDataObject.
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxClipboardBase : public wxObject
{
public:
wxClipboardBase();
// open the clipboard before Add/SetData() and GetData()
virtual bool Open() = 0;
// close the clipboard after Add/SetData() and GetData()
virtual void Close() = 0;
// query whether the clipboard is opened
virtual bool IsOpened() const = 0;
// add to the clipboard data
//
// NB: the clipboard owns the pointer and will delete it, so data must be
// allocated on the heap
virtual bool AddData( wxDataObject *data ) = 0;
// set the clipboard data, this is the same as Clear() followed by
// AddData()
virtual bool SetData( wxDataObject *data ) = 0;
// ask if data in correct format is available
virtual bool IsSupported( const wxDataFormat& format ) = 0;
// fill data with data on the clipboard (if available)
virtual bool GetData( wxDataObject& data ) = 0;
// clears wxTheClipboard and the system's clipboard if possible
virtual void Clear() = 0;
// flushes the clipboard: this means that the data which is currently on
// clipboard will stay available even after the application exits (possibly
// eating memory), otherwise the clipboard will be emptied on exit
virtual bool Flush() { return FALSE; }
// X11 has two clipboards which get selected by this call. Empty on MSW.
virtual void UsePrimarySelection( bool WXUNUSED(primary) = FALSE ) { }
};
// ----------------------------------------------------------------------------
// include platform-specific class declaration
// ----------------------------------------------------------------------------
#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(__WXX11__)
#include "wx/x11/clipbrd.h"
#elif defined(__WXMGL__)
#include "wx/mgl/clipbrd.h"
#elif defined(__WXMAC__)
#include "wx/mac/clipbrd.h"
#elif defined(__WXPM__)
#include "wx/os2/clipbrd.h"
#endif
// ----------------------------------------------------------------------------
// globals
// ----------------------------------------------------------------------------
// The global clipboard object
WXDLLEXPORT_DATA(extern wxClipboard *) wxTheClipboard;
// ----------------------------------------------------------------------------
// helpful class for opening the clipboard and automatically closing it
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxClipboardLocker
{
public:
wxClipboardLocker(wxClipboard *clipboard = (wxClipboard *)NULL)
{
m_clipboard = clipboard ? clipboard : wxTheClipboard;
if ( m_clipboard )
{
m_clipboard->Open();
}
}
bool operator!() const { return !m_clipboard->IsOpened(); }
~wxClipboardLocker()
{
if ( m_clipboard )
{
m_clipboard->Close();
}
}
private:
wxClipboard *m_clipboard;
DECLARE_NO_COPY_CLASS(wxClipboardLocker)
};
#endif // wxUSE_CLIPBOARD
#endif // _WX_CLIPBRD_H_BASE_

209
include/wx/clntdata.h Normal file
View File

@@ -0,0 +1,209 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/clntdata.h
// Purpose: A mixin class for holding a wxClientData or void pointer
// Author: Robin Dunn
// Modified by:
// Created: 9-Oct-2001
// RCS-ID: $Id$
// Copyright: (c) wxWindows team
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_CLNTDATAH__
#define _WX_CLNTDATAH__
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "clntdata.h"
#endif
#include "wx/defs.h"
#include "wx/string.h"
// ----------------------------------------------------------------------------
// what kind of client data do we have?
enum wxClientDataType
{
wxClientData_None, // we don't know yet because we don't have it at all
wxClientData_Object, // our client data is typed and we own it
wxClientData_Void // client data is untyped and we don't own it
};
class WXDLLEXPORT wxClientData
{
public:
wxClientData() { }
virtual ~wxClientData() { }
};
class WXDLLEXPORT wxStringClientData : public wxClientData
{
public:
wxStringClientData() : m_data() { }
wxStringClientData( const wxString &data ) : m_data(data) { }
void SetData( const wxString &data ) { m_data = data; }
const wxString& GetData() const { return m_data; }
private:
wxString m_data;
};
// This class is a mixin that provides storage and management of "client
// data." The client data stored can either be a pointer to a wxClientData
// object in which case it is managed by the container (i.e. it will delete
// the data when it's destroyed) or an untyped pointer which won't be deleted
// by the container - but not both of them
//
// NOTE: This functionality is currently duplicated in wxEvtHandler in order
// to avoid having more than one vtable in that class hierarchy.
class WXDLLEXPORT wxClientDataContainer
{
public:
wxClientDataContainer();
virtual ~wxClientDataContainer();
void SetClientObject( wxClientData *data ) { DoSetClientObject(data); }
wxClientData *GetClientObject() const { return DoGetClientObject(); }
void SetClientData( void *data ) { DoSetClientData(data); }
void *GetClientData() const { return DoGetClientData(); }
protected:
// The user data: either an object which will be deleted by the container
// when it's deleted or some raw pointer which we do nothing with. Only
// one type of data can be used with the given window, i.e. you cannot set
// the void data and then associate the container with wxClientData or vice
// versa.
union
{
wxClientData *m_clientObject;
void *m_clientData;
};
// client data accessors
virtual void DoSetClientObject( wxClientData *data );
virtual wxClientData *DoGetClientObject() const;
virtual void DoSetClientData( void *data );
virtual void *DoGetClientData() const;
// what kind of data do we have?
wxClientDataType m_clientDataType;
};
// not Motif-specific, but currently used only under Motif
#ifdef __WXMOTIF__
#include <wx/vector.h>
struct WXDLLEXPORT wxClientDataDictionaryPair
{
wxClientDataDictionaryPair( size_t idx ) : index( idx ), data( 0 ) { }
size_t index;
wxClientData* data;
};
WX_DECLARE_VECTOR(wxClientDataDictionaryPair,wxClientDataDictionaryPairVector);
// this class is used internally to maintain the association between items
// of (some subclasses of) wxControlWithItems and their client data
// NOTE: this class does not keep track of whether it contains
// wxClientData or void*. The client must ensure that
// it does not contain a mix of the two, and that
// DestroyData is called if it contains wxClientData
class WXDLLEXPORT wxClientDataDictionary
{
public:
wxClientDataDictionary() {};
// deletes all the data
void DestroyData()
{
for( size_t i = 0, end = m_vec.size(); i != end; ++i )
delete m_vec[i].data;
m_vec.clear();
}
// if data for the given index is not present, add it,
// if it is present, delete the old data and replace it with
// the new one
void Set( size_t index, wxClientData* data, bool doDelete )
{
size_t ptr = Find( index );
if( !data )
{
if( ptr == m_vec.size() ) return;
if( doDelete )
delete m_vec[ptr].data;
m_vec.erase( ptr );
}
else
{
if( ptr == m_vec.size() )
{
m_vec.push_back( wxClientDataDictionaryPair( index ) );
ptr = m_vec.size() - 1;
}
if( doDelete )
delete m_vec[ptr].data;
m_vec[ptr].data = data;
}
}
// get the data associated with the given index,
// return 0 if not found
wxClientData* Get( size_t index ) const
{
size_t it = Find( index );
if( it == m_vec.size() ) return 0;
return (wxClientData*)m_vec[it].data; // const cast
}
// delete the data associated with the given index
// it also decreases by one the indices of all the elements
// with an index greater than the given index
void Delete( size_t index, bool doDelete )
{
size_t todel = m_vec.size();
for( size_t i = 0, end = m_vec.size(); i != end; ++i )
{
if( m_vec[i].index == index )
todel = i;
else if( m_vec[i].index > index )
--(m_vec[i].index);
}
if( todel != m_vec.size() )
{
if( doDelete )
delete m_vec[todel].data;
m_vec.erase( todel );
}
}
private:
// returns MyVec.size() if not found
size_t Find( size_t index ) const
{
for( size_t i = 0, end = m_vec.size(); i != end; ++i )
{
if( m_vec[i].index == index )
return i;
}
return m_vec.size();
}
wxClientDataDictionaryPairVector m_vec;
};
#endif // __WXMOTIF__
// ----------------------------------------------------------------------------
#endif

231
include/wx/cmdline.h Normal file
View File

@@ -0,0 +1,231 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/cmdline.h
// Purpose: wxCmdLineParser and related classes for parsing the command
// line options
// Author: Vadim Zeitlin
// Modified by:
// Created: 04.01.00
// RCS-ID: $Id$
// Copyright: (c) 2000 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_CMDLINE_H_
#define _WX_CMDLINE_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "cmdline.h"
#endif
#include "wx/defs.h"
#include "wx/string.h"
#if wxUSE_CMDLINE_PARSER
class WXDLLEXPORT wxDateTime;
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
// by default, options are optional (sic) and each call to AddParam() allows
// one more parameter - this may be changed by giving non-default flags to it
enum
{
wxCMD_LINE_OPTION_MANDATORY = 0x01, // this option must be given
wxCMD_LINE_PARAM_OPTIONAL = 0x02, // the parameter may be omitted
wxCMD_LINE_PARAM_MULTIPLE = 0x04, // the parameter may be repeated
wxCMD_LINE_OPTION_HELP = 0x08, // this option is a help request
wxCMD_LINE_NEEDS_SEPARATOR = 0x10 // must have sep before the value
};
// an option value or parameter may be a string (the most common case), a
// number or a date
enum wxCmdLineParamType
{
wxCMD_LINE_VAL_STRING, // should be 0 (default)
wxCMD_LINE_VAL_NUMBER,
wxCMD_LINE_VAL_DATE,
wxCMD_LINE_VAL_NONE
};
// for constructing the cmd line description using Init()
enum wxCmdLineEntryType
{
wxCMD_LINE_SWITCH,
wxCMD_LINE_OPTION,
wxCMD_LINE_PARAM,
wxCMD_LINE_NONE // to terminate the list
};
// ----------------------------------------------------------------------------
// wxCmdLineEntryDesc is a description of one command line
// switch/option/parameter
// ----------------------------------------------------------------------------
struct wxCmdLineEntryDesc
{
wxCmdLineEntryType kind;
const wxChar *shortName;
const wxChar *longName;
const wxChar *description;
wxCmdLineParamType type;
int flags;
};
// ----------------------------------------------------------------------------
// wxCmdLineParser is a class for parsing command line.
//
// It has the following features:
//
// 1. distinguishes options, switches and parameters; allows option grouping
// 2. allows both short and long options
// 3. automatically generates the usage message from the cmd line description
// 4. does type checks on the options values (number, date, ...)
//
// To use it you should:
//
// 1. construct it giving it the cmd line to parse and optionally its desc
// 2. construct the cmd line description using AddXXX() if not done in (1)
// 3. call Parse()
// 4. use GetXXX() to retrieve the parsed info
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxCmdLineParser
{
public:
// ctors and initializers
// ----------------------
// default ctor or ctor giving the cmd line in either Unix or Win form
wxCmdLineParser() { Init(); }
wxCmdLineParser(int argc, wxChar **argv) { Init(); SetCmdLine(argc, argv); }
wxCmdLineParser(const wxString& cmdline) { Init(); SetCmdLine(cmdline); }
// the same as above, but also gives the cmd line description - otherwise,
// use AddXXX() later
wxCmdLineParser(const wxCmdLineEntryDesc *desc)
{ Init(); SetDesc(desc); }
wxCmdLineParser(const wxCmdLineEntryDesc *desc, int argc, wxChar **argv)
{ Init(); SetCmdLine(argc, argv); SetDesc(desc); }
wxCmdLineParser(const wxCmdLineEntryDesc *desc, const wxString& cmdline)
{ Init(); SetCmdLine(cmdline); SetDesc(desc); }
// set cmd line to parse after using one of the ctors which don't do it
void SetCmdLine(int argc, wxChar **argv);
void SetCmdLine(const wxString& cmdline);
// not virtual, don't use this class polymorphically
~wxCmdLineParser();
// set different parser options
// ----------------------------
// by default, '-' is switch char under Unix, '-' or '/' under Win:
// switchChars contains all characters with which an option or switch may
// start
void SetSwitchChars(const wxString& switchChars);
// long options are not POSIX-compliant, this option allows to disable them
void EnableLongOptions(bool enable = TRUE);
void DisableLongOptions() { EnableLongOptions(FALSE); }
bool AreLongOptionsEnabled();
// extra text may be shown by Usage() method if set by this function
void SetLogo(const wxString& logo);
// construct the cmd line description
// ----------------------------------
// take the cmd line description from the wxCMD_LINE_NONE terminated table
void SetDesc(const wxCmdLineEntryDesc *desc);
// a switch: i.e. an option without value
void AddSwitch(const wxString& name, const wxString& lng = wxEmptyString,
const wxString& desc = wxEmptyString,
int flags = 0);
// an option taking a value of the given type
void AddOption(const wxString& name, const wxString& lng = wxEmptyString,
const wxString& desc = wxEmptyString,
wxCmdLineParamType type = wxCMD_LINE_VAL_STRING,
int flags = 0);
// a parameter
void AddParam(const wxString& desc = wxEmptyString,
wxCmdLineParamType type = wxCMD_LINE_VAL_STRING,
int flags = 0);
// actions
// -------
// parse the command line, return 0 if ok, -1 if "-h" or "--help" option
// was encountered and the help message was given or a positive value if a
// syntax error occured
//
// if showUsage is true, Usage() is called in case of syntax error or if
// help was requested
int Parse(bool showUsage = TRUE);
// give the usage message describing all program options
void Usage();
// get the command line arguments
// ------------------------------
// returns TRUE if the given switch was found
bool Found(const wxString& name) const;
// returns TRUE if an option taking a string value was found and stores the
// value in the provided pointer
bool Found(const wxString& name, wxString *value) const;
// returns TRUE if an option taking an integer value was found and stores
// the value in the provided pointer
bool Found(const wxString& name, long *value) const;
#if wxUSE_DATETIME
// returns TRUE if an option taking a date value was found and stores the
// value in the provided pointer
bool Found(const wxString& name, wxDateTime *value) const;
#endif // wxUSE_DATETIME
// gets the number of parameters found
size_t GetParamCount() const;
// gets the value of Nth parameter (as string only for now)
wxString GetParam(size_t n = 0u) const;
// Resets switches and options
void Reset();
// break down the command line in arguments
static wxArrayString ConvertStringToArgs(const wxChar *cmdline);
private:
// get usage string
wxString GetUsageString();
// common part of all ctors
void Init();
struct wxCmdLineParserData *m_data;
DECLARE_NO_COPY_CLASS(wxCmdLineParser)
};
#else // !wxUSE_CMDLINE_PARSER
// this function is always available (even if !wxUSE_CMDLINE_PARSER) because it
// is used by wxWin itself under Windows
class WXDLLEXPORT wxCmdLineParser
{
public:
static wxArrayString ConvertStringToArgs(const wxChar *cmdline);
};
#endif // wxUSE_CMDLINE_PARSER/!wxUSE_CMDLINE_PARSER
#endif // _WX_CMDLINE_H_

131
include/wx/cmdproc.h Normal file
View File

@@ -0,0 +1,131 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/cmdproc.h
// Purpose: undo/redo capable command processing framework
// Author: Julian Smart (extracted from docview.h by VZ)
// Modified by:
// Created: 05.11.00
// RCS-ID: $Id$
// Copyright: (c) wxWindows team
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_CMDPROC_H_
#define _WX_CMDPROC_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "cmdproc.h"
#endif
#include "wx/object.h"
#include "wx/list.h"
class WXDLLEXPORT wxMenu;
// ----------------------------------------------------------------------------
// wxCommand: a single command capable of performing itself
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxCommand : public wxObject
{
public:
wxCommand(bool canUndoIt = FALSE, const wxString& name = wxT(""));
~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;
private:
DECLARE_CLASS(wxCommand)
};
// ----------------------------------------------------------------------------
// wxCommandProcessor: wxCommand manager
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxCommandProcessor : public wxObject
{
public:
// if max number of commands is -1, it is unlimited
wxCommandProcessor(int maxCommands = -1);
virtual ~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);
// just store the command without executing it
virtual void Store(wxCommand *command);
virtual bool Undo();
virtual bool Redo();
virtual bool CanUndo() const;
virtual bool CanRedo() const;
// Initialises the current command and menu strings.
virtual void Initialize();
// Sets the Undo/Redo menu strings for the current menu.
virtual void SetMenuStrings();
// Gets the current Undo menu label.
wxString GetUndoMenuLabel() const;
// Gets the current Undo menu label.
wxString GetRedoMenuLabel() const;
#if wxUSE_MENUS
// Call this to manage an edit menu.
void SetEditMenu(wxMenu *menu) { m_commandEditMenu = menu; }
wxMenu *GetEditMenu() const { return m_commandEditMenu; }
#endif // wxUSE_MENUS
// command list access
wxList& GetCommands() const { return (wxList&) m_commands; }
wxCommand *GetCurrentCommand() const
{
return (wxCommand *)(m_currentCommand ? m_currentCommand->GetData() : NULL);
}
int GetMaxCommands() const { return m_maxNoCommands; }
virtual void ClearCommands();
// By default, the accelerators are "\tCtrl+Z" and "\tCtrl+Y"
const wxString& GetUndoAccelerator() const { return m_undoAccelerator; }
const wxString& GetRedoAccelerator() const { return m_redoAccelerator; }
void SetUndoAccelerator(const wxString& accel) { m_undoAccelerator = accel; }
void SetRedoAccelerator(const wxString& accel) { m_redoAccelerator = accel; }
protected:
// for further flexibility, command processor doesn't call wxCommand::Do()
// and Undo() directly but uses these functions which can be overridden in
// the derived class
virtual bool DoCommand(wxCommand& cmd);
virtual bool UndoCommand(wxCommand& cmd);
int m_maxNoCommands;
wxList m_commands;
wxNode* m_currentCommand;
#if wxUSE_MENUS
wxMenu* m_commandEditMenu;
#endif // wxUSE_MENUS
wxString m_undoAccelerator;
wxString m_redoAccelerator;
private:
DECLARE_DYNAMIC_CLASS(wxCommandProcessor)
DECLARE_NO_COPY_CLASS(wxCommandProcessor)
};
#endif // _WX_CMDPROC_H_

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

@@ -0,0 +1,455 @@
/////////////////////////////////////////////////////////////////////////////
// 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_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "cmndata.h"
#endif
#include "wx/window.h"
#include "wx/font.h"
#include "wx/colour.h"
#include "wx/gdicmn.h"
class WXDLLEXPORT wxColourData: public wxObject
{
public:
wxColourData();
wxColourData(const wxColourData& data);
~wxColourData();
void SetChooseFull(bool flag) { m_chooseFull = flag; }
bool GetChooseFull() const { return m_chooseFull; }
void SetColour(const wxColour& colour) { m_dataColour = colour; }
const wxColour& GetColour() const { return m_dataColour; }
wxColour& GetColour() { return m_dataColour; }
// Array of 16 custom colours
void SetCustomColour(int i, const wxColour& colour);
wxColour GetCustomColour(int i);
void operator=(const wxColourData& data);
public:
wxColour m_dataColour;
wxColour m_custColours[16];
bool m_chooseFull;
private:
DECLARE_DYNAMIC_CLASS(wxColourData)
};
class WXDLLEXPORT wxFontData: public wxObject
{
public:
wxFontData();
~wxFontData();
wxFontData(const wxFontData& data)
: wxObject()
, m_fontColour(data.m_fontColour)
, m_showHelp(data.m_showHelp)
, m_allowSymbols(data.m_allowSymbols)
, m_enableEffects(data.m_enableEffects)
, m_initialFont(data.m_initialFont)
, m_chosenFont(data.m_chosenFont)
, m_minSize(data.m_minSize)
, m_maxSize(data.m_maxSize)
, m_encoding(data.m_encoding)
, m_encodingInfo(data.m_encodingInfo)
{
}
wxFontData& operator=(const wxFontData& data)
{
wxObject::operator=(data);
m_fontColour = data.m_fontColour;
m_showHelp = data.m_showHelp;
m_allowSymbols = data.m_allowSymbols;
m_enableEffects = data.m_enableEffects;
m_initialFont = data.m_initialFont;
m_chosenFont = data.m_chosenFont;
m_minSize = data.m_minSize;
m_maxSize = data.m_maxSize;
m_encoding = data.m_encoding;
m_encodingInfo = data.m_encodingInfo;
return *this;
}
void SetAllowSymbols(bool flag) { m_allowSymbols = flag; }
bool GetAllowSymbols() const { return m_allowSymbols; }
void SetColour(const wxColour& colour) { m_fontColour = colour; }
wxColour &GetColour() { return m_fontColour; }
void SetShowHelp(bool flag) { m_showHelp = flag; }
bool GetShowHelp() const { return m_showHelp; }
void EnableEffects(bool flag) { m_enableEffects = flag; }
bool GetEnableEffects() const { return m_enableEffects; }
void SetInitialFont(const wxFont& font) { m_initialFont = font; }
wxFont GetInitialFont() const { return m_initialFont; }
void SetChosenFont(const wxFont& font) { m_chosenFont = font; }
wxFont GetChosenFont() const { return m_chosenFont; }
void SetRange(int minRange, int maxRange) { m_minSize = minRange; m_maxSize = maxRange; }
// encoding info is split into 2 parts: the logical wxWin encoding
// (wxFontEncoding) and a structure containing the native parameters for
// it (wxNativeEncodingInfo)
wxFontEncoding GetEncoding() const { return m_encoding; }
void SetEncoding(wxFontEncoding encoding) { m_encoding = encoding; }
wxNativeEncodingInfo& EncodingInfo() { return m_encodingInfo; }
public:
wxColour m_fontColour;
bool m_showHelp;
bool m_allowSymbols;
bool m_enableEffects;
wxFont m_initialFont;
wxFont m_chosenFont;
int m_minSize;
int m_maxSize;
private:
wxFontEncoding m_encoding;
wxNativeEncodingInfo m_encodingInfo;
private:
DECLARE_DYNAMIC_CLASS(wxFontData)
};
#if wxUSE_PRINTING_ARCHITECTURE
/*
* wxPrintData
* Encapsulates printer information (not printer dialog information)
*/
#ifdef __WXMAC__
class wxNativePrintData ;
#endif
class WXDLLEXPORT wxPrintData: public wxObject
{
public:
wxPrintData();
wxPrintData(const wxPrintData& printData);
~wxPrintData();
int GetNoCopies() const { return m_printNoCopies; };
bool GetCollate() const { return m_printCollate; };
int GetOrientation() const { return m_printOrientation; };
// Is this data OK for showing the print dialog?
bool Ok() const ;
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);
#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; }
void* GetNativeDataDevNames() const { return m_devNames; }
void SetNativeDataDevNames(void* data) { m_devNames = data; }
#elif defined(__WXMAC__)
void ConvertToNative();
void ConvertFromNative();
#endif
public:
#if defined(__WXMSW__)
void* m_devMode;
void* m_devNames;
#elif defined(__WXMAC__)
wxNativePrintData* m_nativePrintData ;
#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;
private:
DECLARE_DYNAMIC_CLASS(wxPrintData)
};
/*
* 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
{
public:
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; };
// Is this data OK for showing the print dialog?
bool Ok() const { return m_printData.Ok() ; }
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; }
#elif defined(__WXMAC__)
void ConvertToNative();
void ConvertFromNative();
#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;
private:
DECLARE_DYNAMIC_CLASS(wxPrintDialogData)
};
/*
* This is the data used (and returned) by the wxPageSetupDialog.
*/
// Compatibility with old name
#define wxPageSetupData wxPageSetupDialogData
class WXDLLEXPORT wxPageSetupDialogData: public wxObject
{
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; };
// Is this data OK for showing the page setup dialog?
bool Ok() const { return m_printData.Ok() ; }
// 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; }
#elif defined(__WXMAC__)
void ConvertToNative();
void ConvertFromNative();
#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();
wxPageSetupDialogData& operator=(const wxPageSetupData& data);
wxPageSetupDialogData& 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;
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;
private:
DECLARE_DYNAMIC_CLASS(wxPageSetupDialogData)
};
#endif // wxUSE_PRINTING_ARCHITECTURE
#endif
// _WX_CMNDATA_H_BASE_

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

@@ -0,0 +1,36 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/colrdlgg.h
// Purpose: wxColourDialog
// Author: Vadim Zeitiln
// Modified by:
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c) wxWindows team
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_COLORDLG_H_BASE_
#define _WX_COLORDLG_H_BASE_
#if wxUSE_COLOURDLG
#if defined(__WXMSW__) && !defined(__WXUNIVERSAL__)
#include "wx/msw/colordlg.h"
#elif defined(__WXMAC__) && !defined(__WXUNIVERSAL__)
#include "wx/mac/colordlg.h"
#else
#include "wx/generic/colrdlgg.h"
#define wxColourDialog wxGenericColourDialog
#define sm_classwxColourDialog sm_classwxGenericColourDialog
#endif
// get the colour from user and return it
wxColour WXDLLEXPORT
wxGetColourFromUser(wxWindow *parent = (wxWindow *)NULL,
const wxColour& colInit = wxNullColour);
#endif // wxUSE_COLOURDLG
#endif
// _WX_COLORDLG_H_BASE_

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

@@ -0,0 +1,25 @@
#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(__WXMGL__)
#include "wx/mgl/colour.h"
#elif defined(__WXX11__)
#include "wx/x11/colour.h"
#elif defined(__WXMAC__)
#include "wx/mac/colour.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/colour.h"
#elif defined(__WXPM__)
#include "wx/os2/colour.h"
#endif
#define wxColor wxColour
#endif
// _WX_COLOUR_H_BASE_

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

@@ -0,0 +1,71 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/combobox.h
// Purpose: wxComboBox declaration
// Author: Vadim Zeitlin
// Modified by:
// Created: 24.12.00
// RCS-ID: $Id$
// Copyright: (c) 1996-2000 wxWindows team
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_COMBOBOX_H_BASE_
#define _WX_COMBOBOX_H_BASE_
#include "wx/defs.h"
#if wxUSE_COMBOBOX
WXDLLEXPORT_DATA(extern const wxChar*) wxComboBoxNameStr;
// ----------------------------------------------------------------------------
// wxComboBoxBase: this interface defines the methods wxComboBox must implement
// ----------------------------------------------------------------------------
#include "wx/ctrlsub.h"
class WXDLLEXPORT wxComboBoxBase : public wxItemContainer
{
public:
// wxTextCtrl-like methods wxComboBox must implement
virtual wxString GetValue() const = 0;
virtual void SetValue(const wxString& value) = 0;
virtual void Copy() = 0;
virtual void Cut() = 0;
virtual void Paste() = 0;
virtual void SetInsertionPoint(long pos) = 0;
virtual long GetInsertionPoint() const = 0;
virtual long GetLastPosition() const = 0;
virtual void Replace(long from, long to, const wxString& value) = 0;
virtual void SetSelection(long from, long to) = 0;
virtual void SetEditable(bool editable) = 0;
virtual void SetInsertionPointEnd()
{ SetInsertionPoint(GetLastPosition()); }
virtual void Remove(long from, long to)
{ Replace(from, to, wxEmptyString); }
};
// ----------------------------------------------------------------------------
// include the platform-dependent header defining the real class
// ----------------------------------------------------------------------------
#if defined(__WXUNIVERSAL__)
#include "wx/univ/combobox.h"
#elif 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(__WXMAC__)
#include "wx/mac/combobox.h"
#elif defined(__WXPM__)
#include "wx/os2/combobox.h"
#endif
#endif // wxUSE_COMBOBOX
#endif
// _WX_COMBOBOX_H_BASE_

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

@@ -0,0 +1,351 @@
///////////////////////////////////////////////////////////////////////////////
// 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 licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_CONFBASE_H_
#define _WX_CONFBASE_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "confbase.h"
#endif
#include "wx/defs.h"
#include "wx/string.h"
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
/// shall we be case sensitive in parsing variable names?
#ifndef wxCONFIG_CASE_SENSITIVE
#define wxCONFIG_CASE_SENSITIVE 0
#endif
/// separates group and entry names (probably shouldn't be changed)
#ifndef wxCONFIG_PATH_SEPARATOR
#define wxCONFIG_PATH_SEPARATOR _T('/')
#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 _T('!')
#endif
#if wxUSE_CONFIG
#include "wx/string.h"
/// should we use registry instead of configuration files under Windows?
// (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 wxUSE_CONFIG_NATIVE
#define wxUSE_CONFIG_NATIVE 1
#endif
// Style flags for constructor style parameter
enum
{
wxCONFIG_USE_LOCAL_FILE = 1,
wxCONFIG_USE_GLOBAL_FILE = 2,
wxCONFIG_USE_RELATIVE_PATH = 4,
wxCONFIG_USE_NO_ESCAPE_CHARACTERS = 8
};
// ----------------------------------------------------------------------------
// 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(bool createOnDemand = TRUE)
{ if ( createOnDemand && (!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 wxUSE_CONFIG_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
bool Read(const wxString& key, wxString *pStr) const;
bool Read(const wxString& key, wxString *pStr, const wxString& defVal) const;
// read a number (long)
bool Read(const wxString& key, long *pl) const;
bool Read(const wxString& key, long *pl, long defVal) const;
// read an int
bool Read(const wxString& key, int *pi) const;
bool Read(const wxString& key, int *pi, int defVal) const;
// read a double
bool Read(const wxString& key, double* val) const;
bool Read(const wxString& key, double* val, double defVal) const;
// read a bool
bool Read(const wxString& key, bool* val) const;
bool Read(const wxString& key, bool* val, bool defVal) const;
// convenience functions returning directly the value (we don't have them for
// int/double/bool as there would be ambiguities with the long one then)
wxString Read(const wxString& key,
const wxString& defVal = wxEmptyString) const
{ wxString s; (void)Read(key, &s, defVal); return s; }
long Read(const wxString& key, long defVal) const
{ long l; (void)Read(key, &l, defVal); return l; }
// write the value (return true on success)
bool Write(const wxString& key, const wxString& value)
{ return DoWriteString(key, value); }
bool Write(const wxString& key, long value)
{ return DoWriteLong(key, value); }
bool Write(const wxString& key, int value)
{ return DoWriteInt(key, value); }
bool Write(const wxString& key, double value)
{ return DoWriteDouble(key, value); }
bool Write(const wxString& key, bool value)
{ return DoWriteBool(key, value); }
// we have to provide a separate version for C strings as otherwise they
// would be converted to bool and not to wxString as expected!
bool Write(const wxString& key, const wxChar *value)
{ return Write(key, wxString(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; }
// Used wxIniConfig to set members in constructor
void SetAppName(const wxString& appName) { m_appName = appName; }
void SetVendorName(const wxString& vendorName) { m_vendorName = vendorName; }
void SetStyle(long style) { m_style = style; }
long GetStyle() const { return m_style; }
protected:
static bool IsImmutable(const wxString& key)
{ return !key.IsEmpty() && key[0] == wxCONFIG_IMMUTABLE_PREFIX; }
// do read/write the values of different types
virtual bool DoReadString(const wxString& key, wxString *pStr) const = 0;
virtual bool DoReadLong(const wxString& key, long *pl) const = 0;
virtual bool DoReadInt(const wxString& key, int *pi) const;
virtual bool DoReadDouble(const wxString& key, double* val) const;
virtual bool DoReadBool(const wxString& key, bool* val) const;
virtual bool DoWriteString(const wxString& key, const wxString& value) = 0;
virtual bool DoWriteLong(const wxString& key, long value) = 0;
virtual bool DoWriteInt(const wxString& key, int value);
virtual bool DoWriteDouble(const wxString& key, double value);
virtual bool DoWriteBool(const wxString& key, bool value);
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?
DECLARE_NO_COPY_CLASS(wxConfigPathChanger)
};
// ----------------------------------------------------------------------------
// the native wxConfigBase implementation
// ----------------------------------------------------------------------------
// under Windows we prefer to use the native implementation
#if defined(__WXMSW__) && wxUSE_CONFIG_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
/*
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.
*/
WXDLLEXPORT wxString wxExpandEnvVars(const wxString &sz);
/*
Split path into parts removing '..' in progress
*/
WXDLLEXPORT 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__) && wxUSE_CONFIG_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_

178
include/wx/containr.h Normal file
View File

@@ -0,0 +1,178 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/containr.h
// Purpose: wxControlContainer class declration: a "mix-in" class which
// implements the TAB navigation between the controls
// Author: Vadim Zeitlin
// Modified by:
// Created: 06.08.01
// RCS-ID: $Id$
// Copyright: (c) 2001 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_CONTAINR_H_
#define _WX_CONTAINR_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "containr.h"
#endif
class WXDLLEXPORT wxFocusEvent;
class WXDLLEXPORT wxNavigationKeyEvent;
class WXDLLEXPORT wxWindow;
class WXDLLEXPORT wxWindowBase;
/*
Implementation note: wxControlContainer is not a real mix-in but rather
a class meant to be agregated with (and not inherited from). Although
logically it should be a mix-in, doing it like this has no advantage from
the point of view of the existing code but does have some problems (we'd
need to play tricks with event handlers which may be difficult to do
safely). The price we pay for this simplicity is the ugly macros below.
*/
// ----------------------------------------------------------------------------
// wxControlContainer
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxControlContainer
{
public:
// ctors and such
wxControlContainer(wxWindow *winParent = NULL);
void SetContainerWindow(wxWindow *winParent) { m_winParent = winParent; }
// default item access: we have a permanent default item which is the one
// set by the user code but we may also have a temporary default item which
// would be chosen if the user pressed "Enter" now but the default action
// reverts to the "permanent" default as soon as this temporary default
// item lsoes focus
// get the default item, temporary or permanent
wxWindow *GetDefaultItem() const
{ return m_winTmpDefault ? m_winTmpDefault : m_winDefault; }
// set the permanent default item, return its old value
wxWindow *SetDefaultItem(wxWindow *win)
{ wxWindow *winOld = m_winDefault; m_winDefault = win; return winOld; }
// set a temporary default item, SetTmpDefaultItem(NULL) should be called
// soon after a call to SetTmpDefaultItem(window)
void SetTmpDefaultItem(wxWindow *win) { m_winTmpDefault = win; }
// the methods to be called from the window event handlers
void HandleOnNavigationKey(wxNavigationKeyEvent& event);
void HandleOnFocus(wxFocusEvent& event);
void HandleOnWindowDestroy(wxWindowBase *child);
// should be called from SetFocus(), returns FALSE if we did nothing with
// the focus and the default processing should take place
bool DoSetFocus();
// can our child get the focus?
bool AcceptsFocus() const;
// called from OnChildFocus() handler, i.e. when one of our (grand)
// children gets the focus
void SetLastFocus(wxWindow *win);
protected:
// set the focus to the child which had it the last time
bool SetFocusToChild();
// the parent window we manage the children for
wxWindow *m_winParent;
// the child which had the focus last time this panel was activated
wxWindow *m_winLastFocused;
// a default window (usually a button) or NULL
wxWindow *m_winDefault;
// a temporary override of m_winDefault, use the latter if NULL
wxWindow *m_winTmpDefault;
DECLARE_NO_COPY_CLASS(wxControlContainer)
};
// this function is for wxWindows internal use only
extern bool wxSetFocusToChild(wxWindow *win, wxWindow **child);
// ----------------------------------------------------------------------------
// macros which may be used by the classes wishing to implement TAB navigation
// among their children
// ----------------------------------------------------------------------------
// declare the methods to be forwarded
#define WX_DECLARE_CONTROL_CONTAINER() \
public: \
void OnNavigationKey(wxNavigationKeyEvent& event); \
void OnFocus(wxFocusEvent& event); \
virtual void OnChildFocus(wxChildFocusEvent& event); \
virtual void SetFocus(); \
virtual void RemoveChild(wxWindowBase *child); \
virtual wxWindow *GetDefaultItem() const; \
virtual wxWindow *SetDefaultItem(wxWindow *child); \
virtual void SetTmpDefaultItem(wxWindow *win); \
virtual bool AcceptsFocus() const; \
\
protected: \
wxControlContainer m_container
// implement the event table entries for wxControlContainer
#define WX_EVENT_TABLE_CONTROL_CONTAINER(classname) \
EVT_SET_FOCUS(classname::OnFocus) \
EVT_CHILD_FOCUS(classname::OnChildFocus) \
EVT_NAVIGATION_KEY(classname::OnNavigationKey)
// implement the methods forwarding to the wxControlContainer
#define WX_DELEGATE_TO_CONTROL_CONTAINER(classname) \
wxWindow *classname::SetDefaultItem(wxWindow *child) \
{ \
return m_container.SetDefaultItem(child); \
} \
\
void classname::SetTmpDefaultItem(wxWindow *child) \
{ \
m_container.SetTmpDefaultItem(child); \
} \
\
wxWindow *classname::GetDefaultItem() const \
{ \
return m_container.GetDefaultItem(); \
} \
\
void classname::OnNavigationKey( wxNavigationKeyEvent& event ) \
{ \
m_container.HandleOnNavigationKey(event); \
} \
\
void classname::RemoveChild(wxWindowBase *child) \
{ \
m_container.HandleOnWindowDestroy(child); \
\
wxWindow::RemoveChild(child); \
} \
\
void classname::SetFocus() \
{ \
if ( !m_container.DoSetFocus() ) \
wxWindow::SetFocus(); \
} \
\
void classname::OnChildFocus(wxChildFocusEvent& event) \
{ \
m_container.SetLastFocus(event.GetWindow()); \
} \
\
void classname::OnFocus(wxFocusEvent& event) \
{ \
m_container.HandleOnFocus(event); \
} \
bool classname::AcceptsFocus() const \
{ \
return m_container.AcceptsFocus(); \
}
#endif // _WX_CONTAINR_H_

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

@@ -0,0 +1,94 @@
/////////////////////////////////////////////////////////////////////////////
// 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 licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_CONTROL_H_BASE_
#define _WX_CONTROL_H_BASE_
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "controlbase.h"
#endif
#if wxUSE_CONTROLS
#include "wx/window.h" // base class
WXDLLEXPORT_DATA(extern const wxChar*) wxControlNameStr;
// ----------------------------------------------------------------------------
// wxControl is the base class for all controls
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxControlBase : public wxWindow
{
public:
virtual ~wxControlBase();
// Create() function adds the validator parameter
bool Create(wxWindow *parent, wxWindowID id,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = 0,
const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxControlNameStr);
// simulates the event of given type (i.e. wxButton::Command() is just as
// if the button was clicked)
virtual void Command(wxCommandEvent &event);
// get the control alignment (left/right/centre, top/bottom/centre)
int GetAlignment() const { return m_windowStyle & wxALIGN_MASK; }
protected:
// creates the control (calls wxWindowBase::CreateBase inside) 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();
// initialize the common fields of wxCommandEvent
void InitCommandEvent(wxCommandEvent& event) const;
};
// ----------------------------------------------------------------------------
// include platform-dependent wxControl declarations
// ----------------------------------------------------------------------------
#if defined(__WXUNIVERSAL__)
#include "wx/univ/control.h"
#elif 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(__WXMAC__)
#include "wx/mac/control.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/control.h"
#elif defined(__WXPM__)
#include "wx/os2/control.h"
#endif
#endif // wxUSE_CONTROLS
#endif
// _WX_CONTROL_H_BASE_

193
include/wx/cshelp.h Normal file
View File

@@ -0,0 +1,193 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/cshelp.h
// Purpose: Context-sensitive help support classes
// Author: Julian Smart, Vadim Zeitlin
// Modified by:
// Created: 08/09/2000
// RCS-ID: $Id$
// Copyright: (c) 2000 Julian Smart, Vadim Zeitlin
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_CSHELPH__
#define _WX_CSHELPH__
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "cshelp.h"
#endif
#include "wx/defs.h"
#if wxUSE_HELP
#include "wx/help.h"
#if wxUSE_BMPBUTTON
#include "wx/bmpbuttn.h"
#endif
// ----------------------------------------------------------------------------
// classes used to implement context help UI
// ----------------------------------------------------------------------------
/*
* wxContextHelp
* Invokes context-sensitive help. When the user
* clicks on a window, a wxEVT_HELP event will be sent to that
* window for the application to display help for.
*/
class WXDLLEXPORT wxContextHelp : public wxObject
{
public:
wxContextHelp(wxWindow* win = NULL, bool beginHelp = TRUE);
virtual ~wxContextHelp();
bool BeginContextHelp(wxWindow* win);
bool EndContextHelp();
bool EventLoop();
bool DispatchEvent(wxWindow* win, const wxPoint& pt);
void SetStatus(bool status) { m_status = status; }
protected:
bool m_inHelp;
bool m_status; // TRUE if the user left-clicked
private:
DECLARE_DYNAMIC_CLASS(wxContextHelp)
};
#if wxUSE_BMPBUTTON
/*
* wxContextHelpButton
* You can add this to your dialogs (especially on non-Windows platforms)
* to put the application into context help mode.
*/
class WXDLLEXPORT wxContextHelpButton : public wxBitmapButton
{
public:
wxContextHelpButton(wxWindow* parent,
wxWindowID id = wxID_CONTEXT_HELP,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxBU_AUTODRAW);
void OnContextHelp(wxCommandEvent& event);
private:
DECLARE_CLASS(wxContextHelpButton)
DECLARE_EVENT_TABLE()
};
#endif
// ----------------------------------------------------------------------------
// classes used to implement context help support
// ----------------------------------------------------------------------------
// wxHelpProvider is an abstract class used by the program implementing context help to
// show the help text (or whatever: it may be HTML page or anything else) for
// the given window.
//
// The current help provider must be explicitly set by the application using
// wxHelpProvider::Set().
class WXDLLEXPORT wxHelpProvider
{
public:
// get/set the current (application-global) help provider (Set() returns
// the previous one)
static wxHelpProvider *Set(wxHelpProvider *helpProvider)
{
wxHelpProvider *helpProviderOld = ms_helpProvider;
ms_helpProvider = helpProvider;
return helpProviderOld;
}
// unlike some other class, the help provider is not created on demand,
// this must be explicitly done by the application
static wxHelpProvider *Get() { return ms_helpProvider; }
// get the help string (whose interpretation is help provider dependent
// except that empty string always means that no help is associated with
// the window) for this window
virtual wxString GetHelp(const wxWindowBase *window) = 0;
// do show help for the given window (uses GetHelp() internally if
// applicable), return TRUE if it was done or FALSE if no help available
// for this window
virtual bool ShowHelp(wxWindowBase *window) = 0;
// associate the text with the given window or id: although all help
// providers have these functions to allow making wxWindow::SetHelpText()
// work, not all of them implement them
virtual void AddHelp(wxWindowBase *window, const wxString& text);
// this version associates the given text with all window with this id
// (may be used to set the same help string for all [Cancel] buttons in
// the application, for example)
virtual void AddHelp(wxWindowID id, const wxString& text);
// removes the association
virtual void RemoveHelp(wxWindowBase* window);
// virtual dtor for any base class
virtual ~wxHelpProvider();
private:
static wxHelpProvider *ms_helpProvider;
};
// wxSimpleHelpProvider is an implementation of wxHelpProvider which supports
// only plain text help strings and shows the string associated with the
// control (if any) in a tooltip
class WXDLLEXPORT wxSimpleHelpProvider : public wxHelpProvider
{
public:
// implement wxHelpProvider methods
virtual wxString GetHelp(const wxWindowBase *window);
virtual bool ShowHelp(wxWindowBase *window);
virtual void AddHelp(wxWindowBase *window, const wxString& text);
virtual void AddHelp(wxWindowID id, const wxString& text);
virtual void RemoveHelp(wxWindowBase* window);
protected:
// we use 2 hashes for storing the help strings associated with windows
// and the ids
wxStringHashTable m_hashWindows,
m_hashIds;
};
// wxHelpControllerHelpProvider is an implementation of wxHelpProvider which supports
// both context identifiers and plain text help strings. If the help text is an integer,
// it is passed to wxHelpController::DisplayContextPopup. Otherwise, it shows the string
// in a tooltip as per wxSimpleHelpProvider.
class WXDLLEXPORT wxHelpControllerHelpProvider : public wxSimpleHelpProvider
{
public:
// Note that it doesn't own the help controller. The help controller
// should be deleted separately.
wxHelpControllerHelpProvider(wxHelpControllerBase* hc = (wxHelpControllerBase*) NULL);
// implement wxHelpProvider methods
virtual bool ShowHelp(wxWindowBase *window);
// Other accessors
void SetHelpController(wxHelpControllerBase* hc) { m_helpController = hc; }
wxHelpControllerBase* GetHelpController() const { return m_helpController; }
protected:
wxHelpControllerBase* m_helpController;
DECLARE_NO_COPY_CLASS(wxHelpControllerHelpProvider)
};
// Convenience function for turning context id into wxString
WXDLLEXPORT wxString wxContextId(int id);
#endif // wxUSE_HELP
#endif // _WX_CSHELPH__

169
include/wx/ctrlsub.h Normal file
View File

@@ -0,0 +1,169 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/ctrlsub.h (read: "wxConTRoL with SUBitems")
// Purpose: wxControlWithItems interface
// Author: Vadim Zeitlin
// Modified by:
// Created: 22.10.99
// RCS-ID: $Id$
// Copyright: (c) wxWindows team
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_CTRLSUB_H_BASE_
#define _WX_CTRLSUB_H_BASE_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "controlwithitems.h"
#endif
#if wxUSE_CONTROLS
#include "wx/control.h" // base class
// ----------------------------------------------------------------------------
// wxItemContainer defines an interface which is implemented by all controls
// which have string subitems each of which may be selected.
//
// Examples: wxListBox, wxCheckListBox, wxChoice and wxComboBox (which
// implements an extended interface deriving from this one)
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxItemContainer
{
public:
wxItemContainer() { m_clientDataItemsType = wxClientData_None; }
virtual ~wxItemContainer();
// adding items
// ------------
int Append(const wxString& item)
{ return DoAppend(item); }
int Append(const wxString& item, void *clientData)
{ int n = DoAppend(item); SetClientData(n, clientData); return n; }
int Append(const wxString& item, wxClientData *clientData)
{ int n = DoAppend(item); SetClientObject(n, clientData); return n; }
// append several items at once to the control
void Append(const wxArrayString& strings);
int Insert(const wxString& item, int pos)
{ return DoInsert(item, pos); }
int Insert(const wxString& item, int pos, void *clientData);
int Insert(const wxString& item, int pos, wxClientData *clientData);
// deleting items
// --------------
virtual void Clear() = 0;
virtual void Delete(int n) = 0;
// accessing strings
// -----------------
virtual int GetCount() const = 0;
bool IsEmpty() const { return GetCount() == 0; }
virtual wxString GetString(int n) const = 0;
virtual void SetString(int n, const wxString& s) = 0;
virtual int FindString(const wxString& s) const = 0;
// selection
// ---------
virtual void Select(int n) = 0;
virtual int GetSelection() const = 0;
wxString GetStringSelection() const;
// misc
// ----
// client data stuff
void SetClientData(int n, void* clientData);
void* GetClientData(int n) const;
void SetClientObject(int n, wxClientData* clientData);
wxClientData* GetClientObject(int n) const;
bool HasClientObjectData() const
{ return m_clientDataItemsType == wxClientData_Object; }
bool HasClientUntypedData() const
{ return m_clientDataItemsType == wxClientData_Void; }
#if WXWIN_COMPATIBILITY_2_2
// compatibility - these functions are deprecated, use the new ones
// instead
int Number() const { return GetCount(); }
#endif // WXWIN_COMPATIBILITY_2_2
protected:
virtual int DoAppend(const wxString& item) = 0;
virtual int DoInsert(const wxString& item, int pos) = 0;
virtual void DoSetItemClientData(int n, void* clientData) = 0;
virtual void* DoGetItemClientData(int n) const = 0;
virtual void DoSetItemClientObject(int n, wxClientData* clientData) = 0;
virtual wxClientData* DoGetItemClientObject(int n) const = 0;
// the type of the client data for the items
wxClientDataType m_clientDataItemsType;
};
class WXDLLEXPORT wxControlWithItems : public wxControl, public wxItemContainer
{
public:
wxControlWithItems() { }
virtual ~wxControlWithItems();
// we have to redefine these functions here to avoid ambiguities in classes
// deriving from us which would arise otherwise because both base classses
// have the methods with the same names - hopefully, a smart compiler can
// optimize away these simple inline wrappers so we don't suffer much from
// this
void SetClientData(void *data)
{
wxControl::SetClientData(data);
}
void *GetClientData() const
{
return wxControl::GetClientData();
}
void SetClientObject(wxClientData *data)
{
wxControl::SetClientObject(data);
}
wxClientData *GetClientObject() const
{
return wxControl::GetClientObject();
}
void SetClientData(int n, void* clientData)
{
wxItemContainer::SetClientData(n, clientData);
}
void* GetClientData(int n) const
{
return wxItemContainer::GetClientData(n);
}
void SetClientObject(int n, wxClientData* clientData)
{
wxItemContainer::SetClientObject(n, clientData);
}
wxClientData* GetClientObject(int n) const
{
return wxItemContainer::GetClientObject(n);
}
};
#endif // wxUSE_CONTROLS
#endif // _WX_CTRLSUB_H_BASE_

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

@@ -0,0 +1,60 @@
#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(__WXX11__)
#include "wx/x11/cursor.h"
#elif defined(__WXMGL__)
#include "wx/mgl/cursor.h"
#elif defined(__WXMAC__)
#include "wx/mac/cursor.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/cursor.h"
#elif defined(__WXPM__)
#include "wx/os2/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.
Actually that is not (any longer) quite true.. currently it is
only used in wxGTK Dialog::ShowModal() and now uses static
wxBusyCursor methods that are only implemented for wxGTK so far.
The BusyCursor handling code should probably be implemented in
common code somewhere instead of the separate implementations we
currently have. Also the name BusyCursorSuspender is a little
misleading since it doesn't actually suspend the BusyCursor, just
masks one that is already showing.
If another call to wxBeginBusyCursor is made while this is active
the Busy Cursor will again be shown. But at least now it doesn't
interfere with the state of wxIsBusy() -- RL
*/
class wxBusyCursorSuspender
{
public:
wxBusyCursorSuspender()
{
if( wxIsBusy() )
{
wxSetCursor( wxBusyCursor::GetStoredCursor() );
}
}
~wxBusyCursorSuspender()
{
if( wxIsBusy() )
{
wxSetCursor( wxBusyCursor::GetBusyCursor() );
}
}
};
#endif
// _WX_CURSOR_H_BASE_

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

@@ -0,0 +1,486 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/dataobj.h
// Purpose: common data object classes
// Author: Vadim Zeitlin, Robert Roebling
// Modified by:
// Created: 26.05.99
// RCS-ID: $Id$
// Copyright: (c) wxWindows Team
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DATAOBJ_H_BASE_
#define _WX_DATAOBJ_H_BASE_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "dataobjbase.h"
#endif
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------
#include "wx/defs.h"
#if wxUSE_DATAOBJ
#include "wx/string.h"
#include "wx/bitmap.h"
#include "wx/list.h"
// ============================================================================
/*
Generic data transfer related classes. The class hierarchy is as follows:
- wxDataObject-
/ \
/ \
wxDataObjectSimple wxDataObjectComposite
/ | \
/ | \
wxTextDataObject | wxBitmapDataObject
|
wxCustomDataObject
*/
// ============================================================================
// ----------------------------------------------------------------------------
// wxDataFormat class is declared in platform-specific headers: it represents
// a format for data which may be either one of the standard ones (text,
// bitmap, ...) or a custom one which is then identified by a unique string.
// ----------------------------------------------------------------------------
/* the class interface looks like this (pseudo code):
class wxDataFormat
{
public:
typedef <integral type> NativeFormat;
wxDataFormat(NativeFormat format = wxDF_INVALID);
wxDataFormat(const wxChar *format);
wxDataFormat& operator=(NativeFormat format);
wxDataFormat& operator=(const wxDataFormat& format);
bool operator==(NativeFormat format) const;
bool operator!=(NativeFormat format) const;
void SetType(NativeFormat format);
NativeFormat GetType() const;
wxString GetId() const;
void SetId(const wxChar *format);
};
*/
#if defined(__WXMSW__)
#include "wx/msw/ole/dataform.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/dataform.h"
#elif defined(__WXGTK__)
#include "wx/gtk/dataform.h"
#elif defined(__WXX11__)
#include "wx/x11/dataform.h"
#elif defined(__WXMAC__)
#include "wx/mac/dataform.h"
#elif defined(__WXPM__)
#include "wx/os2/dataform.h"
#endif
// the value for default argument to some functions (corresponds to
// wxDF_INVALID)
extern WXDLLEXPORT const wxDataFormat& wxFormatInvalid;
// ----------------------------------------------------------------------------
// wxDataObject represents a piece of data which knows which formats it
// supports and knows how to render itself in each of them - GetDataHere(),
// and how to restore data from the buffer (SetData()).
//
// Although this class may be used directly (i.e. custom classes may be
// derived from it), in many cases it might be simpler to use either
// wxDataObjectSimple or wxDataObjectComposite classes.
//
// A data object may be "read only", i.e. support only GetData() functions or
// "read-write", i.e. support both GetData() and SetData() (in principle, it
// might be "write only" too, but this is rare). Moreover, it doesn't have to
// support the same formats in Get() and Set() directions: for example, a data
// object containing JPEG image might accept BMPs in GetData() because JPEG
// image may be easily transformed into BMP but not in SetData(). Accordingly,
// all methods dealing with formats take an additional "direction" argument
// which is either SET or GET and which tells the function if the format needs
// to be supported by SetData() or GetDataHere().
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxDataObjectBase
{
public:
enum Direction
{
Get = 0x01, // format is supported by GetDataHere()
Set = 0x02, // format is supported by SetData()
Both = 0x03 // format is supported by both (unused currently)
};
// this class is polymorphic, hence it needs a virtual dtor
virtual ~wxDataObjectBase();
// get the best suited format for rendering our data
virtual wxDataFormat GetPreferredFormat(Direction dir = Get) const = 0;
// get the number of formats we support
virtual size_t GetFormatCount(Direction dir = Get) const = 0;
// return all formats in the provided array (of size GetFormatCount())
virtual void GetAllFormats(wxDataFormat *formats,
Direction dir = Get) const = 0;
// get the (total) size of data for the given format
virtual size_t GetDataSize(const wxDataFormat& format) const = 0;
// copy raw data (in the specified format) to the provided buffer, return
// TRUE if data copied successfully, FALSE otherwise
virtual bool GetDataHere(const wxDataFormat& format, void *buf) const = 0;
// get data from the buffer of specified length (in the given format),
// return TRUE if the data was read successfully, FALSE otherwise
virtual bool SetData(const wxDataFormat& WXUNUSED(format),
size_t WXUNUSED(len), const void * WXUNUSED(buf))
{
return FALSE;
}
// returns TRUE if this format is supported
bool IsSupported(const wxDataFormat& format, Direction dir = Get) const;
};
// ----------------------------------------------------------------------------
// include the platform-specific declarations of wxDataObject
// ----------------------------------------------------------------------------
#if defined(__WXMSW__)
#include "wx/msw/ole/dataobj.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/dataobj.h"
#elif defined(__WXX11__)
#include "wx/x11/dataobj.h"
#elif defined(__WXGTK__)
#include "wx/gtk/dataobj.h"
#elif defined(__WXMAC__)
#include "wx/mac/dataobj.h"
#elif defined(__WXPM__)
#include "wx/os2/dataobj.h"
#endif
// ----------------------------------------------------------------------------
// wxDataObjectSimple is a wxDataObject which only supports one format (in
// both Get and Set directions, but you may return FALSE from GetDataHere() or
// SetData() if one of them is not supported). This is the simplest possible
// wxDataObject implementation.
//
// This is still an "abstract base class" (although it doesn't have any pure
// virtual functions), to use it you should derive from it and implement
// GetDataSize(), GetDataHere() and SetData() functions because the base class
// versions don't do anything - they just return "not implemented".
//
// This class should be used when you provide data in only one format (no
// conversion to/from other formats), either a standard or a custom one.
// Otherwise, you should use wxDataObjectComposite or wxDataObject directly.
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxDataObjectSimple : public wxDataObject
{
public:
// ctor takes the format we support, but it can also be set later with
// SetFormat()
wxDataObjectSimple(const wxDataFormat& format = wxFormatInvalid)
: m_format(format)
{
}
// get/set the format we support
const wxDataFormat& GetFormat() const { return m_format; }
void SetFormat(const wxDataFormat& format) { m_format = format; }
// virtual functions to override in derived class (the base class versions
// just return "not implemented")
// -----------------------------------------------------------------------
// get the size of our data
virtual size_t GetDataSize() const
{ return 0; }
// copy our data to the buffer
virtual bool GetDataHere(void *WXUNUSED(buf)) const
{ return FALSE; }
// copy data from buffer to our data
virtual bool SetData(size_t WXUNUSED(len), const void *WXUNUSED(buf))
{ return FALSE; }
// implement base class pure virtuals
// ----------------------------------
virtual wxDataFormat GetPreferredFormat(wxDataObjectBase::Direction WXUNUSED(dir) = Get) const
{ return m_format; }
virtual size_t GetFormatCount(wxDataObjectBase::Direction WXUNUSED(dir) = Get) const
{ return 1; }
virtual void GetAllFormats(wxDataFormat *formats,
wxDataObjectBase::Direction WXUNUSED(dir) = Get) const
{ *formats = m_format; }
virtual size_t GetDataSize(const wxDataFormat& WXUNUSED(format)) const
{ return GetDataSize(); }
virtual bool GetDataHere(const wxDataFormat& WXUNUSED(format),
void *buf) const
{ return GetDataHere(buf); }
virtual bool SetData(const wxDataFormat& WXUNUSED(format),
size_t len, const void *buf)
{ return SetData(len, buf); }
private:
// the one and only format we support
wxDataFormat m_format;
};
// ----------------------------------------------------------------------------
// wxDataObjectComposite is the simplest way to implement wxDataObject
// supporting multiple formats. It contains several wxDataObjectSimple and
// supports all formats supported by any of them.
//
// This class shouldn't be (normally) derived from, but may be used directly.
// If you need more flexibility than what it provides, you should probably use
// wxDataObject directly.
// ----------------------------------------------------------------------------
WX_DECLARE_EXPORTED_LIST(wxDataObjectSimple, wxSimpleDataObjectList);
class WXDLLEXPORT wxDataObjectComposite : public wxDataObject
{
public:
// ctor
wxDataObjectComposite();
// add data object (it will be deleted by wxDataObjectComposite, hence it
// must be allocated on the heap) whose format will become the preferred
// one if preferred == TRUE
void Add(wxDataObjectSimple *dataObject, bool preferred = FALSE);
// implement base class pure virtuals
// ----------------------------------
virtual wxDataFormat GetPreferredFormat(wxDataObjectBase::Direction dir = Get) const;
virtual size_t GetFormatCount(wxDataObjectBase::Direction dir = Get) const;
virtual void GetAllFormats(wxDataFormat *formats, wxDataObjectBase::Direction dir = Get) const;
virtual size_t GetDataSize(const wxDataFormat& format) const;
virtual bool GetDataHere(const wxDataFormat& format, void *buf) const;
virtual bool SetData(const wxDataFormat& format, size_t len, const void *buf);
protected:
// returns the pointer to the object which supports this format or NULL
wxDataObjectSimple *GetObject(const wxDataFormat& format) const;
#if defined(__WXMSW__)
virtual const void* GetSizeFromBuffer( const void* buffer, size_t* size,
const wxDataFormat& format );
virtual void* SetSizeInBuffer( void* buffer, size_t size,
const wxDataFormat& format );
virtual size_t GetBufferOffset( const wxDataFormat& format );
#endif
private:
// the list of all (simple) data objects whose formats we support
wxSimpleDataObjectList m_dataObjects;
// the index of the preferred one (0 initially, so by default the first
// one is the preferred)
size_t m_preferred;
};
// ============================================================================
// Standard implementations of wxDataObjectSimple which can be used directly
// (i.e. without having to derive from them) for standard data type transfers.
//
// Note that although all of them can work with provided data, you can also
// override their virtual GetXXX() functions to only provide data on demand.
// ============================================================================
// ----------------------------------------------------------------------------
// wxTextDataObject contains text data
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxTextDataObject : public wxDataObjectSimple
{
public:
// ctor: you can specify the text here or in SetText(), or override
// GetText()
wxTextDataObject(const wxString& text = wxEmptyString)
: wxDataObjectSimple(wxUSE_UNICODE?wxDF_UNICODETEXT:wxDF_TEXT),
m_text(text)
{
}
// virtual functions which you may override if you want to provide text on
// demand only - otherwise, the trivial default versions will be used
virtual size_t GetTextLength() const { return m_text.Len() + 1; }
virtual wxString GetText() const { return m_text; }
virtual void SetText(const wxString& text) { m_text = text; }
// implement base class pure virtuals
// ----------------------------------
virtual size_t GetDataSize() const;
virtual bool GetDataHere(void *buf) const;
virtual bool SetData(size_t len, const void *buf);
private:
wxString m_text;
// virtual function hiding supression
size_t GetDataSize(const wxDataFormat& format) const
{ return(wxDataObjectSimple::GetDataSize(format)); }
bool GetDataHere(const wxDataFormat& format, void *pBuf) const
{ return(wxDataObjectSimple::GetDataHere(format, pBuf)); }
bool SetData(const wxDataFormat& format, size_t nLen, const void* pBuf)
{ return(wxDataObjectSimple::SetData(format, nLen, pBuf)); }
};
// ----------------------------------------------------------------------------
// wxBitmapDataObject contains a bitmap
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxBitmapDataObjectBase : public wxDataObjectSimple
{
public:
// ctor: you can specify the bitmap here or in SetBitmap(), or override
// GetBitmap()
wxBitmapDataObjectBase(const wxBitmap& bitmap = wxNullBitmap)
: wxDataObjectSimple(wxDF_BITMAP), m_bitmap(bitmap)
{
}
// virtual functions which you may override if you want to provide data on
// demand only - otherwise, the trivial default versions will be used
virtual wxBitmap GetBitmap() const { return m_bitmap; }
virtual void SetBitmap(const wxBitmap& bitmap) { m_bitmap = bitmap; }
protected:
wxBitmap m_bitmap;
};
// ----------------------------------------------------------------------------
// wxFileDataObject contains a list of filenames
//
// NB: notice that this is a "write only" object, it can only be filled with
// data from drag and drop operation.
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxFileDataObjectBase : public wxDataObjectSimple
{
public:
// ctor: use AddFile() later to fill the array
wxFileDataObjectBase() : wxDataObjectSimple(wxDF_FILENAME) { }
// get a reference to our array
const wxArrayString& GetFilenames() const { return m_filenames; }
// the Get() functions do nothing for us
virtual size_t GetDataSize() const { return 0; }
virtual bool GetDataHere(void *WXUNUSED(buf)) const { return FALSE; }
protected:
wxArrayString m_filenames;
private:
// Virtual function hiding supression
size_t GetDataSize(const wxDataFormat& format) const
{ return(wxDataObjectSimple::GetDataSize(format)); }
bool GetDataHere(const wxDataFormat& format, void* pBuf) const
{ return(wxDataObjectSimple::GetDataHere(format, pBuf)); }
};
// ----------------------------------------------------------------------------
// wxCustomDataObject contains arbitrary untyped user data.
//
// It is understood that this data can be copied bitwise.
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxCustomDataObject : public wxDataObjectSimple
{
public:
// if you don't specify the format in the ctor, you can still use
// SetFormat() later
wxCustomDataObject(const wxDataFormat& format = wxFormatInvalid);
// the dtor calls Free()
virtual ~wxCustomDataObject();
// you can call SetData() to set m_data: it will make a copy of the data
// you pass - or you can use TakeData() which won't copy anything, but
// will take ownership of data (i.e. will call Free() on it later)
void TakeData(size_t size, void *data);
// this function is called to allocate "size" bytes of memory from
// SetData(). The default version uses operator new[].
virtual void *Alloc(size_t size);
// this function is called when the data is freed, you may override it to
// anything you want (or may be nothing at all). The default version calls
// operator delete[] on m_data
virtual void Free();
// get data: you may override these functions if you wish to provide data
// only when it's requested
virtual size_t GetSize() const { return m_size; }
virtual void *GetData() const { return m_data; }
// implement base class pure virtuals
// ----------------------------------
virtual size_t GetDataSize() const;
virtual bool GetDataHere(void *buf) const;
virtual bool SetData(size_t size, const void *buf);
private:
size_t m_size;
void *m_data;
// virtual function hiding supression
size_t GetDataSize(const wxDataFormat& format) const
{ return(wxDataObjectSimple::GetDataSize(format)); }
bool GetDataHere(const wxDataFormat& format, void* pBuf) const
{ return(wxDataObjectSimple::GetDataHere(format, pBuf)); }
bool SetData(const wxDataFormat& format, size_t nLen, const void* pBuf)
{ return(wxDataObjectSimple::SetData(format, nLen, pBuf)); }
DECLARE_NO_COPY_CLASS(wxCustomDataObject)
};
// ----------------------------------------------------------------------------
// include platform-specific declarations of wxXXXBase classes
// ----------------------------------------------------------------------------
#if defined(__WXMSW__)
#include "wx/msw/ole/dataobj2.h"
// wxURLDataObject defined in msw/ole/dataobj2.h
#else // !__WXMSW__
#if defined(__WXGTK__)
#include "wx/gtk/dataobj2.h"
#elif defined(__WXX11__)
#include "wx/x11/dataobj2.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/dataobj2.h"
#elif defined(__WXMAC__)
#include "wx/mac/dataobj2.h"
#elif defined(__WXPM__)
#include "wx/os2/dataobj2.h"
#endif
// wxURLDataObject is simply wxTextDataObject with a different name
class WXDLLEXPORT wxURLDataObject : public wxTextDataObject
{
public:
wxString GetURL() const { return GetText(); }
void SetURL(const wxString& url) { SetText(url); }
};
#endif // __WXMSW__/!__WXMSW__
#endif // wxUSE_DATAOBJ
#endif // _WX_DATAOBJ_H_BASE_

1625
include/wx/datetime.h Normal file

File diff suppressed because it is too large Load Diff

547
include/wx/datetime.inl Normal file
View File

@@ -0,0 +1,547 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/datetime.inl
// Purpose: definition of inline functions of wxDateTime and related
// classes declared in datetime.h
// Author: Vadim Zeitlin
// Remarks: having the inline functions here allows us to minimize the
// dependencies (and hence the rebuild time) in debug builds.
// Modified by:
// Created: 30.11.99
// RCS-ID: $Id$
// Copyright: (c) 1999 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
#ifndef INCLUDED_FROM_WX_DATETIME_H
#error "This file is only included by wx/datetime.h, don't include it manually!"
#endif
// ----------------------------------------------------------------------------
// private macros
// ----------------------------------------------------------------------------
#define MILLISECONDS_PER_DAY 86400000l
// some broken compilers (HP-UX CC) refuse to compile the "normal" version, but
// using a temp variable always might prevent other compilers from optimising
// it away - hence use of this ugly macro
#ifndef __HPUX__
#define MODIFY_AND_RETURN(op) return wxDateTime(*this).op
#else
#define MODIFY_AND_RETURN(op) wxDateTime dt(*this); dt.op; return dt
#endif
// ----------------------------------------------------------------------------
// wxDateTime construction
// ----------------------------------------------------------------------------
inline bool wxDateTime::IsInStdRange() const
{
return m_time >= 0l && (m_time / TIME_T_FACTOR) < LONG_MAX;
}
/* static */
inline wxDateTime wxDateTime::Now()
{
return wxDateTime(*GetTmNow());
}
/* static */
inline wxDateTime wxDateTime::Today()
{
struct tm *time = GetTmNow();
time->tm_hour = 0;
time->tm_min = 0;
time->tm_sec = 0;
return wxDateTime(*time);
}
#if (!(defined(__VISAGECPP__) && __IBMCPP__ >= 400))
inline wxDateTime& wxDateTime::Set(time_t timet)
{
// assign first to avoid long multiplication overflow!
m_time = timet - WX_TIME_BASE_OFFSET ;
m_time *= TIME_T_FACTOR;
return *this;
}
#endif
inline wxDateTime& wxDateTime::SetToCurrent()
{
*this = Now();
return *this;
}
#if (!(defined(__VISAGECPP__) && __IBMCPP__ >= 400))
inline wxDateTime::wxDateTime(time_t timet)
{
Set(timet);
}
#endif
inline wxDateTime::wxDateTime(const struct tm& tm)
{
Set(tm);
}
inline wxDateTime::wxDateTime(const Tm& tm)
{
Set(tm);
}
inline wxDateTime::wxDateTime(double jdn)
{
Set(jdn);
}
inline wxDateTime& wxDateTime::Set(const Tm& tm)
{
wxASSERT_MSG( tm.IsValid(), _T("invalid broken down date/time") );
return Set(tm.mday, (Month)tm.mon, tm.year, tm.hour, tm.min, tm.sec);
}
inline wxDateTime::wxDateTime(wxDateTime_t hour,
wxDateTime_t minute,
wxDateTime_t second,
wxDateTime_t millisec)
{
Set(hour, minute, second, millisec);
}
inline wxDateTime::wxDateTime(wxDateTime_t day,
Month month,
int year,
wxDateTime_t hour,
wxDateTime_t minute,
wxDateTime_t second,
wxDateTime_t millisec)
{
Set(day, month, year, hour, minute, second, millisec);
}
// ----------------------------------------------------------------------------
// wxDateTime accessors
// ----------------------------------------------------------------------------
inline wxLongLong wxDateTime::GetValue() const
{
wxASSERT_MSG( IsValid(), _T("invalid wxDateTime"));
return m_time;
}
inline time_t wxDateTime::GetTicks() const
{
wxASSERT_MSG( IsValid(), _T("invalid wxDateTime"));
if ( !IsInStdRange() )
{
return (time_t)-1;
}
return (time_t)((m_time / (long)TIME_T_FACTOR).GetLo())+WX_TIME_BASE_OFFSET ;
}
inline bool wxDateTime::SetToLastWeekDay(WeekDay weekday,
Month month,
int year)
{
return SetToWeekDay(weekday, -1, month, year);
}
inline wxDateTime wxDateTime::GetWeekDayInSameWeek(WeekDay weekday,
WeekFlags flags) const
{
MODIFY_AND_RETURN( SetToWeekDayInSameWeek(weekday) );
}
inline wxDateTime wxDateTime::GetNextWeekDay(WeekDay weekday) const
{
MODIFY_AND_RETURN( SetToNextWeekDay(weekday) );
}
inline wxDateTime wxDateTime::GetPrevWeekDay(WeekDay weekday) const
{
MODIFY_AND_RETURN( SetToPrevWeekDay(weekday) );
}
inline wxDateTime wxDateTime::GetWeekDay(WeekDay weekday,
int n,
Month month,
int year) const
{
wxDateTime dt(*this);
return dt.SetToWeekDay(weekday, n, month, year) ? dt : wxInvalidDateTime;
}
inline wxDateTime wxDateTime::GetLastWeekDay(WeekDay weekday,
Month month,
int year)
{
wxDateTime dt(*this);
return dt.SetToLastWeekDay(weekday, month, year) ? dt : wxInvalidDateTime;
}
inline wxDateTime wxDateTime::GetWeek(wxDateTime_t numWeek,
WeekDay weekday,
WeekFlags flags) const
{
wxDateTime dt(*this);
return dt.SetToTheWeek(numWeek, weekday, flags) ? dt : wxInvalidDateTime;
}
inline wxDateTime wxDateTime::GetLastMonthDay(Month month, int year) const
{
MODIFY_AND_RETURN( SetToLastMonthDay(month, year) );
}
inline wxDateTime wxDateTime::GetYearDay(wxDateTime_t yday) const
{
MODIFY_AND_RETURN( SetToYearDay(yday) );
}
// ----------------------------------------------------------------------------
// wxDateTime comparison
// ----------------------------------------------------------------------------
inline bool wxDateTime::IsEqualTo(const wxDateTime& datetime) const
{
wxASSERT_MSG( IsValid() && datetime.IsValid(), _T("invalid wxDateTime"));
return m_time == datetime.m_time;
}
inline bool wxDateTime::IsEarlierThan(const wxDateTime& datetime) const
{
wxASSERT_MSG( IsValid() && datetime.IsValid(), _T("invalid wxDateTime"));
return m_time < datetime.m_time;
}
inline bool wxDateTime::IsLaterThan(const wxDateTime& datetime) const
{
wxASSERT_MSG( IsValid() && datetime.IsValid(), _T("invalid wxDateTime"));
return m_time > datetime.m_time;
}
inline bool wxDateTime::IsStrictlyBetween(const wxDateTime& t1,
const wxDateTime& t2) const
{
// no need for assert, will be checked by the functions we call
return IsLaterThan(t1) && IsEarlierThan(t2);
}
inline bool wxDateTime::IsBetween(const wxDateTime& t1,
const wxDateTime& t2) const
{
// no need for assert, will be checked by the functions we call
return IsEqualTo(t1) || IsEqualTo(t2) || IsStrictlyBetween(t1, t2);
}
inline bool wxDateTime::IsSameDate(const wxDateTime& dt) const
{
Tm tm1 = GetTm(),
tm2 = dt.GetTm();
return tm1.year == tm2.year &&
tm1.mon == tm2.mon &&
tm1.mday == tm2.mday;
}
inline bool wxDateTime::IsSameTime(const wxDateTime& dt) const
{
// notice that we can't do something like this:
//
// m_time % MILLISECONDS_PER_DAY == dt.m_time % MILLISECONDS_PER_DAY
//
// because we have also to deal with (possibly) different DST settings!
Tm tm1 = GetTm(),
tm2 = dt.GetTm();
return tm1.hour == tm2.hour &&
tm1.min == tm2.min &&
tm1.sec == tm2.sec &&
tm1.msec == tm2.msec;
}
inline bool wxDateTime::IsEqualUpTo(const wxDateTime& dt,
const wxTimeSpan& ts) const
{
return IsBetween(dt.Subtract(ts), dt.Add(ts));
}
// ----------------------------------------------------------------------------
// wxDateTime arithmetics
// ----------------------------------------------------------------------------
inline wxDateTime wxDateTime::Add(const wxTimeSpan& diff) const
{
wxASSERT_MSG( IsValid(), _T("invalid wxDateTime"));
return wxDateTime(m_time + diff.GetValue());
}
inline wxDateTime& wxDateTime::Add(const wxTimeSpan& diff)
{
wxASSERT_MSG( IsValid(), _T("invalid wxDateTime"));
m_time += diff.GetValue();
return *this;
}
inline wxDateTime& wxDateTime::operator+=(const wxTimeSpan& diff)
{
return Add(diff);
}
inline wxDateTime wxDateTime::Subtract(const wxTimeSpan& diff) const
{
wxASSERT_MSG( IsValid(), _T("invalid wxDateTime"));
return wxDateTime(m_time - diff.GetValue());
}
inline wxDateTime& wxDateTime::Subtract(const wxTimeSpan& diff)
{
wxASSERT_MSG( IsValid(), _T("invalid wxDateTime"));
m_time -= diff.GetValue();
return *this;
}
inline wxDateTime& wxDateTime::operator-=(const wxTimeSpan& diff)
{
return Subtract(diff);
}
inline wxTimeSpan wxDateTime::Subtract(const wxDateTime& datetime) const
{
wxASSERT_MSG( IsValid() && datetime.IsValid(), _T("invalid wxDateTime"));
return wxTimeSpan(GetValue() - datetime.GetValue());
}
inline wxDateTime wxDateTime::Add(const wxDateSpan& diff) const
{
return wxDateTime(*this).Add(diff);
}
inline wxDateTime& wxDateTime::Subtract(const wxDateSpan& diff)
{
return Add(diff.Negate());
}
inline wxDateTime wxDateTime::Subtract(const wxDateSpan& diff) const
{
return wxDateTime(*this).Subtract(diff);
}
inline wxDateTime& wxDateTime::operator-=(const wxDateSpan& diff)
{
return Subtract(diff);
}
inline wxDateTime& wxDateTime::operator+=(const wxDateSpan& diff)
{
return Add(diff);
}
// ----------------------------------------------------------------------------
// wxDateTime and timezones
// ----------------------------------------------------------------------------
inline wxDateTime wxDateTime::ToTimezone(const wxDateTime::TimeZone& tz,
bool noDST) const
{
MODIFY_AND_RETURN( MakeTimezone(tz, noDST) );
}
// ----------------------------------------------------------------------------
// wxTimeSpan construction
// ----------------------------------------------------------------------------
inline wxTimeSpan::wxTimeSpan(long hours,
long minutes,
long seconds,
long milliseconds)
{
// assign first to avoid precision loss
m_diff = hours;
m_diff *= 60l;
m_diff += minutes;
m_diff *= 60l;
m_diff += seconds;
m_diff *= 1000l;
m_diff += milliseconds;
}
// ----------------------------------------------------------------------------
// wxTimeSpan accessors
// ----------------------------------------------------------------------------
inline wxLongLong wxTimeSpan::GetSeconds() const
{
return m_diff / 1000l;
}
inline int wxTimeSpan::GetMinutes() const
{
return (GetSeconds() / 60l).GetLo();
}
inline int wxTimeSpan::GetHours() const
{
return GetMinutes() / 60;
}
inline int wxTimeSpan::GetDays() const
{
return GetHours() / 24;
}
inline int wxTimeSpan::GetWeeks() const
{
return GetDays() / 7;
}
// ----------------------------------------------------------------------------
// wxTimeSpan arithmetics
// ----------------------------------------------------------------------------
inline wxTimeSpan wxTimeSpan::Add(const wxTimeSpan& diff) const
{
return wxTimeSpan(m_diff + diff.GetValue());
}
inline wxTimeSpan& wxTimeSpan::Add(const wxTimeSpan& diff)
{
m_diff += diff.GetValue();
return *this;
}
inline wxTimeSpan wxTimeSpan::Subtract(const wxTimeSpan& diff) const
{
return wxTimeSpan(m_diff - diff.GetValue());
}
inline wxTimeSpan& wxTimeSpan::Subtract(const wxTimeSpan& diff)
{
m_diff -= diff.GetValue();
return *this;
}
inline wxTimeSpan& wxTimeSpan::Multiply(int n)
{
m_diff *= (long)n;
return *this;
}
inline wxTimeSpan wxTimeSpan::Multiply(int n) const
{
return wxTimeSpan(m_diff * (long)n);
}
inline wxTimeSpan wxTimeSpan::Abs() const
{
return wxTimeSpan(GetValue().Abs());
}
inline bool wxTimeSpan::IsEqualTo(const wxTimeSpan& ts) const
{
return GetValue() == ts.GetValue();
}
inline bool wxTimeSpan::IsLongerThan(const wxTimeSpan& ts) const
{
return GetValue().Abs() > ts.GetValue().Abs();
}
// ----------------------------------------------------------------------------
// wxDateSpan
// ----------------------------------------------------------------------------
inline wxDateSpan& wxDateSpan::operator+=(const wxDateSpan& other)
{
m_years += other.m_years;
m_months += other.m_months;
m_weeks += other.m_weeks;
m_days += other.m_days;
return *this;
}
inline wxDateSpan& wxDateSpan::Add(const wxDateSpan& other)
{
return *this += other;
}
inline wxDateSpan wxDateSpan::Add(const wxDateSpan& other) const
{
wxDateSpan ds(*this);
ds.Add(other);
return ds;
}
inline wxDateSpan& wxDateSpan::Multiply(int factor)
{
m_years *= factor;
m_months *= factor;
m_weeks *= factor;
m_days *= factor;
return *this;
}
inline wxDateSpan wxDateSpan::Multiply(int factor) const
{
wxDateSpan ds(*this);
ds.Multiply(factor);
return ds;
}
inline wxDateSpan wxDateSpan::Negate() const
{
return wxDateSpan(-m_years, -m_months, -m_weeks, -m_days);
}
inline wxDateSpan& wxDateSpan::Neg()
{
m_years = -m_years;
m_months = -m_months;
m_weeks = -m_weeks;
m_days = -m_days;
return *this;
}
inline wxDateSpan& wxDateSpan::operator-=(const wxDateSpan& other)
{
return *this += other.Negate();
}
inline wxDateSpan& wxDateSpan::Subtract(const wxDateSpan& other)
{
return *this -= other;
}
inline wxDateSpan wxDateSpan::Subtract(const wxDateSpan& other) const
{
wxDateSpan ds(*this);
ds.Subtract(other);
return ds;
}
#undef MILLISECONDS_PER_DAY
#undef MODIFY_AND_RETURN

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

@@ -0,0 +1,114 @@
/////////////////////////////////////////////////////////////////////////////
// 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 licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DATSTREAM_H_
#define _WX_DATSTREAM_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "datstrm.h"
#endif
#include "wx/stream.h"
#include "wx/longlong.h"
#include "wx/strconv.h"
#if wxUSE_STREAMS
class WXDLLEXPORT wxDataInputStream
{
public:
#if wxUSE_UNICODE
wxDataInputStream(wxInputStream& s, wxMBConv& conv = wxConvUTF8);
#else
wxDataInputStream(wxInputStream& s);
#endif
~wxDataInputStream();
bool IsOk() { return m_input->IsOk(); }
wxUint64 Read64();
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>>(wxUint64& 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;
#if wxUSE_UNICODE
wxMBConv& m_conv;
#endif
DECLARE_NO_COPY_CLASS(wxDataInputStream)
};
class WXDLLEXPORT wxDataOutputStream
{
public:
#if wxUSE_UNICODE
wxDataOutputStream(wxOutputStream& s, wxMBConv& conv = wxConvUTF8);
#else
wxDataOutputStream(wxOutputStream& s);
#endif
~wxDataOutputStream();
bool IsOk() { return m_output->IsOk(); }
void Write64(wxUint64 i);
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<<(const 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<<(wxUint64 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;
#if wxUSE_UNICODE
wxMBConv& m_conv;
#endif
DECLARE_NO_COPY_CLASS(wxDataOutputStream)
};
#endif
// wxUSE_STREAMS
#endif
// _WX_DATSTREAM_H_

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

@@ -0,0 +1,776 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/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: George Tasker
// Bart Jourquin
// Mark Johnson, wxWindows@mj10777.de
// 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.
//
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DB_H_
#define _WX_DB_H_
// BJO 20000503: introduce new GetColumns members which are more database independant and
// return columns in the order they were created
#define OLD_GETCOLUMNS 1
#define EXPERIMENTAL_WXDB_FUNCTIONS 1
#include "wx/version.h"
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "db.h"
#endif
#include "wx/setup.h"
#include "wx/defs.h"
#include "wx/string.h"
#ifdef __VISUALC__
// we need to include standard Windows headers but we can't include
// <windows.h> directly when using MFC because it includes it itself in a
// different manner
#if wxUSE_MFC
#include <afxwin.h>
#else // !wxUSE_MFC
#ifndef STRICT
#define STRICT 1
#endif
#include <windows.h>
#include "wx/msw/winundef.h"
#endif // wxUSE_MFC/!wxUSE_MFC
// If you use the wxDbCreateDataSource() function with MSW/VC6,
// you cannot use the iODBC headers, you must use the VC headers,
// plus the odbcinst.h header - gt Nov 2 2000
//
// Must add "odbccp32.lib" in \wx2\wxWindows\src\makevc.env to the WINLIBS= line
//
#include "sql.h"
#include "sqlext.h"
#include "odbcinst.h"
#else
// Use the ones from the library
extern "C" {
#include <sql.h>
#include <sqlext.h>
}
#endif
typedef float SFLOAT;
typedef double SDOUBLE;
typedef unsigned int UINT;
#define ULONG UDWORD
#ifndef wxODBC_FWD_ONLY_CURSORS
#define wxODBC_FWD_ONLY_CURSORS 1
#endif
enum enumDummy {enumDum1};
#ifndef SQL_C_BOOLEAN
#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(int) == 2 ? SQL_C_USHORT : SQL_C_ULONG)
#endif
#ifndef SQL_C_ENUM
#define SQL_C_ENUM (sizeof(enumDummy) == 2 ? SQL_C_USHORT : SQL_C_ULONG)
#endif
#ifndef SQL_C_BLOB
#ifdef SQL_LONGVARBINARY
#define SQL_C_BLOB SQL_LONGVARBINARY
#elif SQL_VARBINARY
#define SQL_C_BLOB SQL_VARBINARY
#endif
#endif
/*
#ifndef TRUE
#define TRUE true
#endif
#ifndef FALSE
#define FALSE false
#endif
*/
const int wxDB_PATH_MAX = 254;
WXDLLEXPORT_DATA(extern wxChar const *) SQL_LOG_FILENAME;
WXDLLEXPORT_DATA(extern wxChar const *) SQL_CATALOG_FILENAME;
// Database Globals
const int DB_TYPE_NAME_LEN = 40;
const int DB_MAX_STATEMENT_LEN = 4096;
const int DB_MAX_WHERE_CLAUSE_LEN = 2048;
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_DATA_TYPE_BLOB = 5;
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 wxODBC_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'
};
#ifndef MAXNAME
#define MAXNAME 31
#endif
#ifndef SQL_MAX_AUTHSTR_LEN
// There does not seem to be a standard for this, so I am
// defaulting to the value that MS uses
#define SQL_MAX_AUTHSTR_LEN MAXNAME
#endif
class WXDLLEXPORT wxDbConnectInf
{
private:
bool freeHenvOnDestroy;
public:
HENV Henv;
wxChar Dsn[SQL_MAX_DSN_LENGTH+1]; // Data Source Name
wxChar Uid[SQL_MAX_USER_NAME_LEN+1]; // User ID
wxChar AuthStr[SQL_MAX_AUTHSTR_LEN+1]; // Authorization string (password)
wxString Description; // Not sure what the max length is
wxString FileType; // Not sure what the max length is
// Optionals needed for some databases like dBase
wxString DefaultDir; // Directory that db file resides in
public:
wxDbConnectInf();
wxDbConnectInf(HENV henv, const wxString &dsn, const wxString &userID=wxEmptyString,
const wxString &password=wxEmptyString, const wxString &defaultDir=wxEmptyString,
const wxString &description=wxEmptyString, const wxString &fileType=wxEmptyString);
~wxDbConnectInf();
bool Initialize();
bool AllocHenv();
void FreeHenv();
// Accessors
const HENV &GetHenv() { return Henv; };
const wxChar *GetDsn() { return Dsn; };
const wxChar *GetUid() { return Uid; };
const wxChar *GetUserID() { return Uid; };
const wxChar *GetAuthStr() { return AuthStr; };
const wxChar *GetPassword() { return AuthStr; };
const wxChar *GetDescription() { return Description; };
const wxChar *GetFileType() { return FileType; };
const wxChar *GetDefaultDir() { return DefaultDir; };
void SetHenv(const HENV henv) { Henv = henv; };
void SetDsn(const wxString &dsn);
void SetUserID(const wxString &userID);
void SetUid(const wxString &uid) { SetUserID(uid); };
void SetPassword(const wxString &password);
void SetAuthStr(const wxString &authstr) { SetPassword(authstr); };
void SetDescription(const wxString &desc) { Description = desc; };
void SetFileType(const wxString &fileType) { FileType = fileType; };
void SetDefaultDir(const wxString &defDir) { DefaultDir = defDir; };
}; // class wxDbConnectInf
struct WXDLLEXPORT wxDbSqlTypeInfo
{
wxString TypeName;
SWORD FsqlType;
long Precision;
short CaseSensitive;
// short MinimumScale;
short MaximumScale;
};
class WXDLLEXPORT wxDbColFor
{
public:
wxString s_Field; // Formated String for Output
wxString s_Format[7]; // Formated Objects - TIMESTAMP has the biggest (7)
wxString s_Amount[7]; // Formated Objects - amount of things that can be formatted
int i_Amount[7]; // Formated Objects - TT MM YYYY HH MM SS m
int i_Nation; // 0 = timestamp , 1=EU, 2=UK, 3=International, 4=US
int i_dbDataType; // conversion of the 'sqlDataType' to the generic data type used by these classes
SWORD i_sqlDataType;
wxDbColFor();
~wxDbColFor();
void Initialize();
int Format(int Nation, int dbDataType, SWORD sqlDataType, short columnSize, short decimalDigits);
};
class WXDLLEXPORT wxDbColInf
{
public:
wxChar catalog[128+1];
wxChar schema[128+1];
wxChar tableName[DB_MAX_TABLE_NAME_LEN+1];
wxChar colName[DB_MAX_COLUMN_NAME_LEN+1];
SWORD sqlDataType;
wxChar typeName[128+1];
SWORD columnSize;
SWORD bufferLength;
short decimalDigits;
short numPrecRadix;
short nullable;
wxChar remarks[254+1];
int dbDataType; // conversion of the 'sqlDataType' to the generic data type used by these classes
// mj10777.19991224 : new
int PkCol; // Primary key column 0=No; 1= First Key, 2 = Second Key etc.
wxChar PkTableName[DB_MAX_TABLE_NAME_LEN+1]; // Tables that use this PKey as a FKey
int FkCol; // Foreign key column 0=No; 1= First Key, 2 = Second Key etc.
wxChar FkTableName[DB_MAX_TABLE_NAME_LEN+1]; // Foreign key table name
wxDbColFor *pColFor; // How should this columns be formatted
wxDbColInf();
~wxDbColInf();
bool Initialize();
};
class WXDLLEXPORT wxDbTableInf // Description of a Table
{
public:
wxChar tableName[DB_MAX_TABLE_NAME_LEN+1];
wxChar tableType[254+1]; // "TABLE" or "SYSTEM TABLE" etc.
wxChar tableRemarks[254+1];
UWORD numCols; // How many Columns does this Table have: GetColumnCount(..);
wxDbColInf *pColInf; // pColInf = NULL ; User can later call GetColumns(..);
wxDbTableInf();
~wxDbTableInf();
bool Initialize();
};
class WXDLLEXPORT wxDbInf // Description of a Database
{
public:
wxChar catalog[128+1];
wxChar schema[128+1];
int numTables; // How many tables does this database have
wxDbTableInf *pTableInf; // pTableInf = new wxDbTableInf[numTables];
wxDbInf();
~wxDbInf();
bool Initialize();
};
enum wxDbSqlLogState
{
sqlLogOFF,
sqlLogON
};
// These are the databases currently tested and working with these classes
// See the comments in wxDb::Dbms() for exceptions/issues with
// each of these database engines
enum wxDBMS
{
dbmsUNIDENTIFIED,
dbmsORACLE,
dbmsSYBASE_ASA, // Adaptive Server Anywhere
dbmsSYBASE_ASE, // Adaptive Server Enterprise
dbmsMS_SQL_SERVER,
dbmsMY_SQL,
dbmsPOSTGRES,
dbmsACCESS,
dbmsDBASE,
dbmsINFORMIX,
dbmsVIRTUOSO,
dbmsDB2,
dbmsINTERBASE,
dbmsPERVASIVE_SQL,
dbmsXBASE_SEQUITER
};
// 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.
WXDLLEXPORT_DATA(extern wxChar) DBerrorList[DB_MAX_ERROR_HISTORY][DB_MAX_ERROR_MSG_LEN];
class WXDLLEXPORT wxDb
{
private:
bool dbIsOpen;
bool dbIsCached; // Was connection created by caching functions
wxString dsn; // Data source name
wxString uid; // User ID
wxString authStr; // Authorization string (password)
FILE *fpSqlLog; // Sql Log file pointer
wxDbSqlLogState sqlLogState; // On or Off
bool fwdOnlyCursors;
wxDBMS dbmsType; // Type of datasource - i.e. Oracle, dBase, SQLServer, etc
// Private member functions
bool getDbInfo(void);
bool getDataTypeInfo(SWORD fSqlType, wxDbSqlTypeInfo &structSQLTypeInfo);
bool setConnectionOptions(void);
void logError(const wxString &errMsg, const wxString &SQLState);
const wxChar *convertUserID(const wxChar *userID, wxString &UserID);
void initialize();
#if !wxODBC_BACKWARD_COMPATABILITY
// ODBC handles
HENV henv; // ODBC Environment handle
HDBC hdbc; // ODBC DB Connection handle
HSTMT hstmt; // ODBC Statement handle
//Error reporting mode
bool silent;
// Number of Ctable objects connected to this db object. FOR INTERNAL USE ONLY!!!
unsigned int nTables;
// Information about logical data types VARCHAR, INTEGER, FLOAT and DATE.
//
// This information is obtained from the ODBC driver by use of the
// SQLGetTypeInfo() function. The key piece of information is the
// type name the data source uses for each logical data type.
// e.g. VARCHAR; Oracle calls it VARCHAR2.
wxDbSqlTypeInfo typeInfVarchar;
wxDbSqlTypeInfo typeInfInteger;
wxDbSqlTypeInfo typeInfFloat;
wxDbSqlTypeInfo typeInfDate;
wxDbSqlTypeInfo typeInfBlob;
#endif
public:
void setCached(bool cached) { dbIsCached = cached; }; // This function must only be called by wxDbGetConnection() and wxDbCloseConnections!!!
bool IsCached() { return dbIsCached; };
bool GetDataTypeInfo(SWORD fSqlType, wxDbSqlTypeInfo &structSQLTypeInfo)
{ return getDataTypeInfo(fSqlType, structSQLTypeInfo); }
#if wxODBC_BACKWARD_COMPATABILITY
// ODBC handles
HENV henv; // ODBC Environment handle
HDBC hdbc; // ODBC DB Connection handle
HSTMT hstmt; // ODBC Statement handle
//Error reporting mode
bool silent;
// Number of Ctable objects connected to this db object. FOR INTERNAL USE ONLY!!!
unsigned int nTables;
#endif
// The following structure contains database information gathered from the
// datasource when the datasource is first opened.
struct
{
wxChar dbmsName[40]; // Name of the dbms product
wxChar dbmsVer[64]; // Version # of the dbms product
wxChar driverName[40]; // Driver name
wxChar odbcVer[60]; // ODBC version of the driver
wxChar drvMgrOdbcVer[60]; // ODBC version of the driver manager
wxChar driverVer[60]; // Driver version
wxChar serverName[80]; // Server Name, typically a connect string
wxChar databaseName[128]; // Database filename
wxChar outerJoins[2]; // Indicates whether the data source supports outer joins
wxChar procedureSupport[2]; // Indicates whether the data source supports stored procedures
wxChar accessibleTables[2]; // Indicates whether the data source only reports accessible tables in SQLTables.
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
wxChar 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 Error Inf.
SWORD cbErrorMsg;
int DB_STATUS;
wxChar errorList[DB_MAX_ERROR_HISTORY][DB_MAX_ERROR_MSG_LEN];
wxChar errorMsg[SQL_MAX_MESSAGE_LENGTH];
SDWORD nativeError;
wxChar sqlState[20];
#if wxODBC_BACKWARD_COMPATABILITY
// Information about logical data types VARCHAR, INTEGER, FLOAT and DATE.
//
// This information is obtained from the ODBC driver by use of the
// SQLGetTypeInfo() function. The key piece of information is the
// type name the data source uses for each logical data type.
// e.g. VARCHAR; Oracle calls it VARCHAR2.
wxDbSqlTypeInfo typeInfVarchar;
wxDbSqlTypeInfo typeInfInteger;
wxDbSqlTypeInfo typeInfFloat;
wxDbSqlTypeInfo typeInfDate;
wxDbSqlTypeInfo typeInfBlob;
#endif
// Public member functions
wxDb(const HENV &aHenv, bool FwdOnlyCursors=(bool)wxODBC_FWD_ONLY_CURSORS);
~wxDb();
// Data Source Name, User ID, Password and whether open should fail on data type not supported
bool Open(const wxString &Dsn, const wxString &Uid, const wxString &AuthStr, bool failOnDataTypeUnsupported=TRUE);
bool Open(wxDbConnectInf *dbConnectInf);
bool Open(wxDb *copyDb); // pointer to a wxDb whose connection info should be copied rather than re-queried
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(const wxString &viewName, const wxString &colList, const wxString &pSqlStmt, bool attemptDrop=TRUE);
bool DropView(const wxString &viewName);
bool ExecSql(const wxString &pSqlStmt);
bool GetNext(void);
bool GetData(UWORD colNo, SWORD cType, PTR pData, SDWORD maxLen, SDWORD FAR *cbReturned);
bool Grant(int privileges, const wxString &tableName, const wxString &userList = wxT("PUBLIC"));
int TranslateSqlState(const wxString &SQLState);
wxDbInf *GetCatalog(const wxChar *userID=NULL);
bool Catalog(const wxChar *userID=NULL, const wxString &fileName=SQL_CATALOG_FILENAME);
int GetKeyFields(const wxString &tableName, wxDbColInf* colInf, UWORD noCols);
wxDbColInf *GetColumns(wxChar *tableName[], const wxChar *userID=NULL);
wxDbColInf *GetColumns(const wxString &tableName, UWORD *numCols, const wxChar *userID=NULL);
int GetColumnCount(const wxString &tableName, const wxChar *userID=NULL);
const wxChar *GetDatabaseName(void) {return dbInf.dbmsName;}
const wxString &GetDataSource(void) {return dsn;}
const wxString &GetDatasourceName(void){return dsn;}
const wxString &GetUsername(void) {return uid;}
const wxString &GetPassword(void) {return authStr;}
bool IsOpen(void) {return dbIsOpen;}
HENV GetHENV(void) {return henv;}
HDBC GetHDBC(void) {return hdbc;}
HSTMT GetHSTMT(void) {return hstmt;}
int GetTableCount() {return nTables;} // number of tables using this connection
wxDbSqlTypeInfo GetTypeInfVarchar() {return typeInfVarchar;}
wxDbSqlTypeInfo GetTypeInfInteger() {return typeInfInteger;}
wxDbSqlTypeInfo GetTypeInfFloat() {return typeInfFloat;}
wxDbSqlTypeInfo GetTypeInfDate() {return typeInfDate;}
wxDbSqlTypeInfo GetTypeInfBlob() {return typeInfBlob;}
// tableName can refer to a table, view, alias or synonym
bool TableExists(const wxString &tableName, const wxChar *userID=NULL,
const wxString &tablePath=wxEmptyString);
bool TablePrivileges(const wxString &tableName, const wxString &priv,
const wxChar *userID=NULL, const wxChar *schema=NULL,
const wxString &path=wxEmptyString);
// These two functions return the table name or column name in a form ready
// for use in SQL statements. For example, if the datasource allows spaces
// in the table name or column name, the returned string will have the
// correct enclosing marks around the name to allow it to be properly
// included in a SQL statement
const wxString SQLTableName(const wxChar *tableName);
const wxString SQLColumnName(const wxChar *colName);
void LogError(const wxString &errMsg, const wxString &SQLState = wxEmptyString)
{ logError(errMsg, SQLState); }
void SetDebugErrorMessages(bool state) { silent = !state; }
bool SetSqlLogging(wxDbSqlLogState state, const wxString &filename = SQL_LOG_FILENAME,
bool append = FALSE);
bool WriteSqlLog(const wxString &logMsg);
wxDBMS Dbms(void);
bool ModifyColumn(const wxString &tableName, const wxString &columnName,
int dataType, ULONG columnLength=0,
const wxString &optionalParam=wxEmptyString);
bool FwdOnlyCursors(void) {return fwdOnlyCursors;}
// These two functions are provided strictly for use by wxDbTable.
// DO NOT USE THESE FUNCTIONS, OR MEMORY LEAKS MAY OCCUR
void incrementTableCount() { nTables++; return; }
void decrementTableCount() { nTables--; return; }
}; // 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 wxDbList
{
wxDbList *PtrPrev; // Pointer to previous item in the list
wxString Dsn; // Data Source Name
wxString Uid; // User ID
wxString AuthStr; // Authorization string (password)
wxDb *PtrDb; // Pointer to the wxDb object
bool Free; // Is item free or in use?
wxDbList *PtrNext; // Pointer to next item in the list
};
#ifdef __WXDEBUG__
#include "wx/object.h"
class wxTablesInUse : public wxObject
{
public:
const wxChar *tableName;
ULONG tableID;
class wxDb *pDb;
}; // wxTablesInUse
#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 *wxDbGetConnection(wxDbConnectInf *pDbConfig, bool FwdOnlyCursors=(bool)wxODBC_FWD_ONLY_CURSORS);
bool WXDLLEXPORT wxDbFreeConnection(wxDb *pDb);
void WXDLLEXPORT wxDbCloseConnections(void);
int WXDLLEXPORT wxDbConnectionsInUse(void);
// Writes a message to the wxLog window (stdout usually) when an internal error
// situation occurs. This function only works in DEBUG builds
const wxChar* WXDLLEXPORT wxDbLogExtendedErrorMsg(const wxChar *userText,
wxDb *pDb,
const wxChar *ErrFile,
int ErrLine);
// This function sets the sql log state for all open wxDb objects
bool WXDLLEXPORT wxDbSqlLog(wxDbSqlLogState state, const wxString &filename = SQL_LOG_FILENAME);
#if 0
// MSW/VC6 ONLY!!! Experimental
int WXDLLEXPORT wxDbCreateDataSource(const wxString &driverName, const wxString &dsn, const wxString &description=wxEmptyString,
bool sysDSN=FALSE, const wxString &defDir=wxEmptyString, wxWindow *parent=NULL);
#endif
// 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 wxDbGetDataSource(HENV henv, wxChar *Dsn, SWORD DsnMax, wxChar *DsDesc,
SWORD DsDescMax, UWORD direction = SQL_FETCH_NEXT);
// Change this to 0 to remove use of all deprecated functions
#if wxODBC_BACKWARD_COMPATABILITY
//#################################################################################
//############### DEPRECATED functions for backward compatability #################
//#################################################################################
// Backward compability structures/classes. This will eventually go away
const int DB_PATH_MAX = wxDB_PATH_MAX;
typedef wxDb wxDB;
typedef wxDbTableInf wxTableInf;
typedef wxDbColInf wxColInf;
typedef wxDbColInf CcolInf;
typedef wxDbColFor wxColFor;
typedef wxDbSqlTypeInfo SqlTypeInfo;
typedef wxDbSqlTypeInfo wxSqlTypeInfo;
typedef enum wxDbSqlLogState sqlLog;
typedef enum wxDbSqlLogState wxSqlLogState;
typedef enum wxDBMS dbms;
typedef enum wxDBMS DBMS;
typedef wxODBC_ERRORS ODBC_ERRORS;
typedef wxDbConnectInf DbStuff;
typedef wxDbList DbList;
#ifdef __WXDEBUG__
typedef wxTablesInUse CstructTablesInUse;
#endif
// Deprecated function names that are replaced by the function names listed above
wxDB WXDLLEXPORT *GetDbConnection(DbStuff *pDbStuff, bool FwdOnlyCursors=(bool)wxODBC_FWD_ONLY_CURSORS);
bool WXDLLEXPORT FreeDbConnection(wxDB *pDb);
void WXDLLEXPORT CloseDbConnections(void);
int WXDLLEXPORT NumberDbConnectionsInUse(void);
bool SqlLog(sqlLog state, const wxChar *filename = SQL_LOG_FILENAME);
bool WXDLLEXPORT GetDataSource(HENV henv, char *Dsn, SWORD DsnMax, char *DsDesc, SWORD DsDescMax,
UWORD direction = SQL_FETCH_NEXT);
#endif // Deprecated structures/classes/functions
#endif // _WX_DB_H_

181
include/wx/dbgrid.h Normal file
View File

@@ -0,0 +1,181 @@
///////////////////////////////////////////////////////////////////////////////
// Name: dbgrid.h
// Purpose: Displays a wxDbTable in a wxGrid.
// Author: Roger Gammans, Paul Gammans
// Modified by:
// Created:
// RCS-ID: $Id$
// Copyright: (c) 1999 The Computer Surgery (roger@computer-surgery.co.uk)
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
// Branched From : dbgrid.h,v 1.19 2001/03/28 11:16:01
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_GENERIC_DBGRID_H_
#define _WX_GENERIC_DBGRID_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "dbgrid.h"
#endif
#if wxUSE_ODBC
#if wxUSE_GRID
#include "wx/log.h"
#include "wx/dbtable.h"
#include "wx/dynarray.h"
#include "wx/grid.h"
#include "wx/dbkeyg.h"
#define wxGRID_VALUE_DBAUTO _T("dbauto")
WX_DECLARE_EXPORTED_OBJARRAY(GenericKey,keyarray);
static const int wxUSE_QUERY = -1;
class WXDLLEXPORT wxDbGridColInfoBase
{
public:
//Default ctor
wxDbGridColInfoBase() { }
wxDbGridColInfoBase(int colNo,
wxString type, wxString title) :
DbCol(colNo),
wxtypename(type),
Title(title)
{ }
//Copy Ctor
wxDbGridColInfoBase(const wxDbGridColInfoBase& ref)
{
DbCol = ref.DbCol;
wxtypename = ref.wxtypename;
Title = ref.Title;
}
//Empty destructor for member obj's
~wxDbGridColInfoBase() {}
int DbCol;
wxString wxtypename;
wxString Title;
};
class WXDLLEXPORT wxDbGridColInfo
{
public:
wxDbGridColInfo(int colNo,
wxString type,
wxString title,
wxDbGridColInfo *next) :
m_data(colNo,type,title)
{
m_next=next;
}
//Empty List
~wxDbGridColInfo() { delete m_next; }
//Recurse to find length.
int Length() { return (m_next ? m_next->Length() +1 : 1); }
// Adds a new column info (2 step creation)
void AddColInfo (int colNo,
wxString type,
wxString title)
{
GetLast()->m_next = new wxDbGridColInfo (colNo, type, title, NULL);
}
// Searches last
wxDbGridColInfo *GetLast() { return (m_next ? m_next->GetLast() : this); }
protected:
wxDbGridColInfoBase m_data;
wxDbGridColInfo *m_next;
friend class wxDbGridTableBase;
};
class WXDLLEXPORT wxDbGridCellAttrProvider : public wxGridCellAttrProvider
{
public:
wxDbGridCellAttrProvider();
wxDbGridCellAttrProvider(wxDbTable *tab, wxDbGridColInfoBase* ColInfo);
virtual ~wxDbGridCellAttrProvider();
virtual wxGridCellAttr *GetAttr(int row, int col,
wxGridCellAttr::wxAttrKind kind) const;
virtual void AssignDbTable(wxDbTable *tab);
private:
wxDbTable *m_data;
wxDbGridColInfoBase *m_ColInfo;
};
class WXDLLEXPORT wxDbGridTableBase : public wxGridTableBase
{
public:
wxDbGridTableBase(wxDbTable *tab, wxDbGridColInfo *ColInfo,
int count = wxUSE_QUERY, bool takeOwnership = TRUE);
~wxDbGridTableBase();
virtual int GetNumberRows()
{
wxLogDebug(" GetNumberRows() = %i",m_rowtotal);
return m_rowtotal;
}
virtual int GetNumberCols()
{
wxLogDebug(" GetNumberCols() = %i",m_nocols);
return m_nocols;
}
virtual bool IsEmptyCell(int row, int col) ;
virtual wxString GetValue(int row, int col) ;
virtual void SetValue(int row, int col, const wxString& value);
virtual bool CanHaveAttributes();
virtual wxString GetTypeName(int row, int col);
virtual bool CanGetValueAs(int row, int col, const wxString& typeName);
virtual bool CanSetValueAs(int row, int col, const wxString& typeName);
virtual long GetValueAsLong(int row, int col);
virtual double GetValueAsDouble(int row, int col);
virtual bool GetValueAsBool(int row, int col);
virtual void SetValueAsLong(int row, int col, long value);
virtual void SetValueAsDouble(int row, int col, double value);
virtual void SetValueAsBool(int row, int col, bool value);
virtual void *GetValueAsCustom(int row, int col, const wxString& typeName);
virtual void SetValueAsCustom(int row, int col, const wxString& typeName, void* value);
virtual wxString GetColLabelValue(int col);
virtual bool AssignDbTable(wxDbTable *tab, int count = wxUSE_QUERY, bool takeOwnership=TRUE);
virtual void ValidateRow(int row);
virtual bool UpdateRow(int row) const
{
if (m_row != row)
return TRUE;
else
return Writeback();
}
private:
//Operates on the current row
bool Writeback() const;
typedef wxGridTableBase inherited;
keyarray m_keys;
wxDbTable *m_data;
bool m_dbowner;
int m_rowtotal;
int m_nocols;
int m_row;
wxDbGridColInfoBase *m_ColInfo;
bool m_rowmodified;
};
#endif // #if wxUSE_GRID
#endif // #if wxUSE_ODBC
#endif // _WX_GENERIC_DBGRID_H_

41
include/wx/dbkeyg.h Normal file
View File

@@ -0,0 +1,41 @@
///////////////////////////////////////////////////////////////////////////////
// Name: dbkeyg.h
// Purpose: Generic key support for wxDbTable
// Author: Roger Gammans
// Modified by:
// Created:
// RCS-ID: $Id$
// Copyright: (c) 1999 The Computer Surgery (roger@computer-surgery.co.uk)
// Licence: wxWindows licence
//
// NOTE : There is no CPP file to go along with this
//
///////////////////////////////////////////////////////////////////////////////
// Branched From : gkey.h,v 1.3 2001/06/01 10:31:41
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DBGKEY_H_
#define _WX_DBGKEY_H_
class GenericKey
{
public:
GenericKey(void *blk, size_t sz) { clone(blk,sz); }
GenericKey(const GenericKey &ref) { clone(ref.m_data,ref.m_sz); }
~GenericKey() { free(m_data); }
void *GetBlk(void) const { return m_data; }
private:
void clone(void *blk, size_t sz)
{
m_data = malloc(sz);
memcpy(m_data,blk,sz);
m_sz = sz;
}
void *m_data;
size_t m_sz;
};
#endif // _WX_DBGKEY_H_

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

@@ -0,0 +1,379 @@
///////////////////////////////////////////////////////////////////////////////
// Name: dbtable.h
// Purpose: Declaration of the wxDbTable class.
// Author: Doug Card
// Modified by: George Tasker
// Bart Jourquin
// Mark Johnson
// 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
#include "wx/version.h"
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "dbtable.h"
#endif
#include "wx/db.h"
#include "wx/variant.h"
#include "wx/dbkeyg.h"
const int wxDB_ROWID_LEN = 24; // 18 is the max, 24 is in case it gets larger
const int wxDB_DEFAULT_CURSOR = 0;
const bool wxDB_QUERY_ONLY = TRUE;
const bool wxDB_DISABLE_VIEW = TRUE;
// Used to indicate end of a variable length list of
// column numbers passed to member functions
const int wxDB_NO_MORE_COLUMN_NUMBERS = -1;
// The following class is used to define a column of a table.
// The wxDbTable constructor will dynamically allocate as many of
// these as there are columns in the table. The class derived
// from wxDbTable must initialize these column definitions in it's
// constructor. These column definitions provide inf. to the
// wxDbTable 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 wxDbColDef
{
public:
wxChar ColName[DB_MAX_COLUMN_NAME_LEN+1]; // Column Name
int DbDataType; // Logical Data Type; e.g. DB_DATA_TYPE_INTEGER
SWORD 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
wxDbColDef();
bool Initialize();
}; // wxDbColDef
class WXDLLEXPORT wxDbColDataPtr
{
public:
void *PtrDataObj;
int SzDataObj;
SWORD SqlCtype;
}; // wxDbColDataPtr
// This structure is used when creating secondary indexes.
class WXDLLEXPORT wxDbIdxDef
{
public:
wxChar ColName[DB_MAX_COLUMN_NAME_LEN+1];
bool Ascending;
}; // wxDbIdxDef
class WXDLLEXPORT wxDbTable
{
private:
ULONG tableID; // Used for debugging. This can help to match up mismatched constructors/destructors
// Private member variables
UDWORD cursorType;
bool insertable;
// Private member functions
bool initialize(wxDb *pwxDb, const wxString &tblName, const UWORD numColumns,
const wxString &qryTblName, bool qryOnly, const wxString &tblPath);
void cleanup();
bool bindParams(bool forUpdate); // called by the other 'bind' functions
bool bindInsertParams(void);
bool bindUpdateParams(void);
bool bindCols(HSTMT cursor);
bool getRec(UWORD fetchType);
bool execDelete(const wxString &pSqlStmt);
bool execUpdate(const wxString &pSqlStmt);
bool query(int queryType, bool forUpdate, bool distinct, const wxString &pSqlStmt=wxEmptyString);
#if !wxODBC_BACKWARD_COMPATABILITY
// these were public
// Where, Order By and From clauses
wxString where; // Standard SQL where clause, minus the word WHERE
wxString orderBy; // Standard SQL order by clause, minus the ORDER BY
wxString from; // Allows for joins in a wxDbTable::Query(). Format: ",tbl,tbl..."
// 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)
// Flags
bool selectForUpdate;
// Pointer to the database object this table belongs to
wxDb *pDb;
// Table Inf.
wxString tablePath; // needed for dBase tables
wxString tableName; // Table name
wxString queryTableName; // Query Table Name
UWORD noCols; // # of columns in the table
bool queryOnly; // Query Only, no inserts, updates or deletes
// Column Definitions
wxDbColDef *colDefs; // Array of wxDbColDef structures
#endif
public:
#if wxODBC_BACKWARD_COMPATABILITY
// 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 wxDbTable::Query(). Format: ",tbl,tbl..."
// 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)
// Flags
bool selectForUpdate;
// Pointer to the database object this table belongs to
wxDb *pDb;
// Table Inf.
char tablePath[wxDB_PATH_MAX]; // needed for dBase tables
char tableName[DB_MAX_TABLE_NAME_LEN+1]; // Table name
char queryTableName[DB_MAX_TABLE_NAME_LEN+1]; // Query Table Name
UWORD noCols; // # of columns in the table
bool queryOnly; // Query Only, no inserts, updates or deletes
// Column Definitions
wxDbColDef *colDefs; // Array of wxDbColDef structures
#endif
// Public member functions
wxDbTable(wxDb *pwxDb, const wxString &tblName, const UWORD numColumns,
const wxString &qryTblName="", bool qryOnly = !wxDB_QUERY_ONLY,
const wxString &tblPath="");
// DEPRECATED
wxDbTable(wxDb *pwxDb, const wxString &tblName, const UWORD numColumns,
const wxChar *qryTblName="", bool qryOnly = !wxDB_QUERY_ONLY,
const wxString &tblPath="");
virtual ~wxDbTable();
bool Open(bool checkPrivileges=FALSE, bool checkTableExists=TRUE);
bool CreateTable(bool attemptDrop=TRUE);
bool DropTable(void);
bool CreateIndex(const wxString &idxName, bool unique, UWORD noIdxCols,
wxDbIdxDef *pIdxDefs, bool attemptDrop=TRUE);
bool DropIndex(const wxString &idxName);
// Accessors
// The member variables returned by these accessors are all
// set when the wxDbTable instance is created and cannot be
// changed, hence there is no corresponding SetXxxx function
wxDb *GetDb() { return pDb; }
const wxString &GetTableName() { return tableName; }
const wxString &GetQueryTableName() { return queryTableName; }
const wxString &GetTablePath() { return tablePath; }
UWORD GetNumberOfColumns() { return noCols; } // number of "defined" columns for this wxDbTable instance
const wxString &GetFromClause() { return from; }
const wxString &GetOrderByClause() { return orderBy; }
const wxString &GetWhereClause() { return where; }
bool IsQueryOnly() { return queryOnly; }
#if wxODBC_BACKWARD_COMPATABILITY
void SetFromClause(const char *From) { from = (char *)From; }
void SetOrderByClause(const char *OrderBy) { orderBy = (char *)OrderBy; }
void SetWhereClause(const char *Where) { where = (char *)Where; }
#else
void SetFromClause(const wxString &From) { from = From; }
void SetOrderByClause(const wxString &OrderBy) { orderBy = OrderBy; }
bool SetOrderByColNums(UWORD first, ...);
void SetWhereClause(const wxString &Where) { where = Where; }
void From(const wxString &From) { from = From; }
void OrderBy(const wxString &OrderBy) { orderBy = OrderBy; }
void Where(const wxString &Where) { where = Where; }
const wxString &Where() { return where; }
const wxString &OrderBy() { return orderBy; }
const wxString &From() { return from; }
#endif
int Insert(void);
bool Update(void);
bool Update(const wxString &pSqlStmt);
bool UpdateWhere(const wxString &pWhereClause);
bool Delete(void);
bool DeleteWhere(const wxString &pWhereClause);
bool DeleteMatching(void);
virtual bool Query(bool forUpdate = FALSE, bool distinct = FALSE);
bool QueryBySqlStmt(const wxString &pSqlStmt);
bool QueryMatching(bool forUpdate = FALSE, bool distinct = FALSE);
bool QueryOnKeyFields(bool forUpdate = FALSE, bool distinct = FALSE);
bool Refresh(void);
bool GetNext(void) { return(getRec(SQL_FETCH_NEXT)); }
bool operator++(int) { return(getRec(SQL_FETCH_NEXT)); }
/***** These four functions only work with wxDb instances that are defined *****
***** as not being FwdOnlyCursors *****/
bool GetPrev(void);
bool operator--(int);
bool GetFirst(void);
bool GetLast(void);
bool IsCursorClosedOnCommit(void);
UWORD GetRowNum(void);
void BuildSelectStmt(wxString &pSqlStmt, int typeOfSelect, bool distinct);
void BuildSelectStmt(wxChar *pSqlStmt, int typeOfSelect, bool distinct);
void BuildDeleteStmt(wxString &pSqlStmt, int typeOfDel, const wxString &pWhereClause="");
void BuildDeleteStmt(wxChar *pSqlStmt, int typeOfDel, const wxString &pWhereClause="");
void BuildUpdateStmt(wxString &pSqlStmt, int typeOfUpd, const wxString &pWhereClause="");
void BuildUpdateStmt(wxChar *pSqlStmt, int typeOfUpd, const wxString &pWhereClause="");
void BuildWhereClause(wxString &pWhereClause, int typeOfWhere, const wxString &qualTableName="", bool useLikeComparison=FALSE);
void BuildWhereClause(wxChar *pWhereClause, int typeOfWhere, const wxString &qualTableName="", bool useLikeComparison=FALSE);
#if wxODBC_BACKWARD_COMPATABILITY
// The following member functions are deprecated. You should use the BuildXxxxxStmt functions (above)
void GetSelectStmt(char *pSqlStmt, int typeOfSelect, bool distinct)
{ BuildSelectStmt(pSqlStmt,typeOfSelect,distinct); }
void GetDeleteStmt(char *pSqlStmt, int typeOfDel, const char *pWhereClause = NULL)
{ BuildDeleteStmt(pSqlStmt,typeOfDel,pWhereClause); }
void GetUpdateStmt(char *pSqlStmt, int typeOfUpd, const char *pWhereClause = NULL)
{ BuildUpdateStmt(pSqlStmt,typeOfUpd,pWhereClause); }
void GetWhereClause(char *pWhereClause, int typeOfWhere,
const char *qualTableName = NULL, bool useLikeComparison=FALSE)
{ BuildWhereClause(pWhereClause,typeOfWhere,qualTableName,useLikeComparison); }
#endif
bool CanSelectForUpdate(void);
bool CanUpdByROWID(void);
void ClearMemberVar(UWORD colNo, bool setToNull=FALSE);
void ClearMemberVars(bool setToNull=FALSE);
bool SetQueryTimeout(UDWORD nSeconds);
wxDbColDef *GetColDefs() { return colDefs; }
void SetColDefs(UWORD index, const wxString &fieldName, int dataType,
void *pData, SWORD cType,
int size, bool keyField = FALSE, bool upd = TRUE,
bool insAllow = TRUE, bool derivedCol = FALSE);
wxDbColDataPtr *SetColDefs(wxDbColInf *colInfs, UWORD numCols);
bool CloseCursor(HSTMT cursor);
bool DeleteCursor(HSTMT *hstmtDel);
void SetCursor(HSTMT *hstmtActivate = (void **) wxDB_DEFAULT_CURSOR);
HSTMT GetCursor(void) { return(hstmt); }
HSTMT *GetNewCursor(bool setCursor = FALSE, bool bindColumns = TRUE);
#if wxODBC_BACKWARD_COMPATABILITY
// The following member function is deprecated. You should use the GetNewCursor
HSTMT *NewCursor(bool setCursor = FALSE, bool bindColumns = TRUE) { return GetNewCursor(setCursor,bindColumns); }
#endif
ULONG Count(const wxString &args="*");
int DB_STATUS(void) { return(pDb->DB_STATUS); }
bool IsColNull(UWORD colNo) const;
bool SetColNull(UWORD colNo, bool set=TRUE);
bool SetColNull(const wxString &colName, bool set=TRUE);
#if wxODBC_BACKWARD_COMPATABILITY
// The following member functions are deprecated. You should use the SetColNull()
bool SetNull(int colNo, bool set=TRUE) { return (SetNull(colNo,set)); }
bool SetNull(const char *colName, bool set=TRUE) { return (SetNull(colName,set)); }
#endif
#ifdef __WXDEBUG__
ULONG GetTableID() { return tableID; }
#endif
//TODO: Need to Document
typedef enum { WX_ROW_MODE_QUERY , WX_ROW_MODE_INDIVIDUAL } rowmode_t;
virtual void SetRowMode(const rowmode_t rowmode);
virtual wxVariant GetCol(const int colNo) const ;
virtual void SetCol(const int colNo, const wxVariant value);
virtual GenericKey GetKey(void);
virtual void SetKey(const GenericKey &key);
private:
HSTMT *m_hstmtGridQuery;
rowmode_t m_rowmode;
size_t m_keysize;
// typedef enum {unmodified=0, UpdatePending, InsertPending } recStatus;
// recStatus get_ModifiedStatus() { return m_recstatus; }
// void modify() {
// if (m_recstatus==unmodified)
// m_recstatus=UpdatePending;
// }
// protected:
// void insertify() {m_recstatus=InsertPending; }
// void unmodify() {m_recstatus=unmodified; }
// recStatus m_recstatus;
//TODO: Need to Document
}; // wxDbTable
// Change this to 0 to remove use of all deprecated functions
#if wxODBC_BACKWARD_COMPATABILITY
//#################################################################################
//############### DEPRECATED functions for backward compatability #################
//#################################################################################
// Backward compability. These will eventually go away
typedef wxDbTable wxTable;
typedef wxDbIdxDef wxIdxDef;
typedef wxDbIdxDef CidxDef;
typedef wxDbColDef wxColDef;
typedef wxDbColDef CcolDef;
typedef wxDbColDataPtr wxColDataPtr;
typedef wxDbColDataPtr CcolDataPtr;
const int ROWID = wxDB_ROWID_LEN;
const int DEFAULT_CURSOR = wxDB_DEFAULT_CURSOR;
const bool QUERY_ONLY = wxDB_QUERY_ONLY;
const bool DISABLE_VIEW = wxDB_DISABLE_VIEW;
#endif
#endif

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

@@ -0,0 +1,815 @@
/////////////////////////////////////////////////////////////////////////////
// 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_
#if defined(__GNUG__) && !defined(__APPLE__)
#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
class WXDLLEXPORT wxDC;
class WXDLLEXPORT wxDCBase;
class WXDLLEXPORT wxDrawObject
{
public:
wxDrawObject()
: m_isBBoxValid(FALSE)
, m_minX(0), m_minY(0), m_maxX(0), m_maxY(0)
{ }
virtual ~wxDrawObject() { }
virtual void Draw(wxDCBase&) const { }
virtual void CalcBoundingBox(wxCoord x, wxCoord y)
{
if ( m_isBBoxValid )
{
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;
}
else
{
m_isBBoxValid = TRUE;
m_minX = x;
m_minY = y;
m_maxX = x;
m_maxY = y;
}
}
void ResetBoundingBox()
{
m_isBBoxValid = FALSE;
m_minX = m_maxX = m_minY = m_maxY = 0;
}
// Get the final bounding box of the PostScript or Metafile picture.
wxCoord MinX() const { return m_minX; }
wxCoord MaxX() const { return m_maxX; }
wxCoord MinY() const { return m_minY; }
wxCoord MaxY() const { return m_maxY; }
//to define the type of object for derived objects
virtual int GetType()=0;
protected:
//for boundingbox calculation
bool m_isBBoxValid:1;
//for boundingbox calculation
wxCoord m_minX, m_minY, m_maxX, m_maxY;
};
// ---------------------------------------------------------------------------
// global variables
// ---------------------------------------------------------------------------
WXDLLEXPORT_DATA(extern int) wxPageNumber;
// ---------------------------------------------------------------------------
// wxDC is the device context - object on which any drawing is done
// ---------------------------------------------------------------------------
class WXDLLEXPORT wxDCBase : public wxObject
{
public:
wxDCBase()
: m_colour(wxColourDisplay())
, m_ok(TRUE)
, m_clipping(FALSE)
, m_isInteractive(0)
, m_isBBoxValid(FALSE)
, m_logicalOriginX(0), m_logicalOriginY(0)
, m_deviceOriginX(0), m_deviceOriginY(0)
, m_logicalScaleX(1.0), m_logicalScaleY(1.0)
, m_userScaleX(1.0), m_userScaleY(1.0)
, m_scaleX(1.0), m_scaleY(1.0)
, m_signX(1), m_signY(1)
, m_minX(0), m_minY(0), m_maxX(0), m_maxY(0)
, m_clipX1(0), m_clipY1(0), m_clipX2(0), m_clipY2(0)
, m_logicalFunction(wxCOPY)
, m_backgroundMode(wxTRANSPARENT)
, m_mappingMode(wxMM_TEXT)
, m_pen()
, m_brush()
, m_backgroundBrush(*wxTRANSPARENT_BRUSH)
, m_textForegroundColour(*wxBLACK)
, m_textBackgroundColour(*wxWHITE)
, m_font()
#if wxUSE_PALETTE
, m_palette()
, m_hasCustomPalette(FALSE)
#endif // wxUSE_PALETTE
{
ResetBoundingBox();
}
~wxDCBase() { }
virtual void BeginDrawing() { }
virtual void EndDrawing() { }
// graphic primitives
// ------------------
virtual void DrawObject(wxDrawObject* drawobject)
{
drawobject->Draw(*this);
CalcBoundingBox(drawobject->MinX(),drawobject->MinY());
CalcBoundingBox(drawobject->MaxX(),drawobject->MaxY());
}
bool FloodFill(wxCoord x, wxCoord y, const wxColour& col,
int style = wxFLOOD_SURFACE)
{ return DoFloodFill(x, y, col, style); }
bool FloodFill(const wxPoint& pt, const wxColour& col,
int style = wxFLOOD_SURFACE)
{ return DoFloodFill(pt.x, pt.y, col, style); }
bool GetPixel(wxCoord x, wxCoord 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(wxCoord x1, wxCoord y1, wxCoord x2, wxCoord 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(wxCoord x, wxCoord y)
{ DoCrossHair(x, y); }
void CrossHair(const wxPoint& pt)
{ DoCrossHair(pt.x, pt.y); }
void DrawArc(wxCoord x1, wxCoord y1, wxCoord x2, wxCoord y2,
wxCoord xc, wxCoord 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 DrawCheckMark(wxCoord x, wxCoord y,
wxCoord width, wxCoord height)
{ DoDrawCheckMark(x, y, width, height); }
void DrawCheckMark(const wxRect& rect)
{ DoDrawCheckMark(rect.x, rect.y, rect.width, rect.height); }
void DrawEllipticArc(wxCoord x, wxCoord y, wxCoord w, wxCoord 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(wxCoord x, wxCoord y)
{ DoDrawPoint(x, y); }
void DrawPoint(const wxPoint& pt)
{ DoDrawPoint(pt.x, pt.y); }
void DrawLines(int n, wxPoint points[],
wxCoord xoffset = 0, wxCoord yoffset = 0)
{ DoDrawLines(n, points, xoffset, yoffset); }
void DrawLines(const wxList *list,
wxCoord xoffset = 0, wxCoord yoffset = 0);
void DrawPolygon(int n, wxPoint points[],
wxCoord xoffset = 0, wxCoord yoffset = 0,
int fillStyle = wxODDEVEN_RULE)
{ DoDrawPolygon(n, points, xoffset, yoffset, fillStyle); }
void DrawPolygon(const wxList *list,
wxCoord xoffset = 0, wxCoord yoffset = 0,
int fillStyle = wxODDEVEN_RULE);
void DrawRectangle(wxCoord x, wxCoord y, wxCoord width, wxCoord 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(wxCoord x, wxCoord y, wxCoord width, wxCoord 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(wxCoord x, wxCoord y, wxCoord radius)
{ DoDrawEllipse(x - radius, y - radius, 2*radius, 2*radius); }
void DrawCircle(const wxPoint& pt, wxCoord radius)
{ DrawCircle(pt.x, pt.y, radius); }
void DrawEllipse(wxCoord x, wxCoord y, wxCoord width, wxCoord 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, wxCoord x, wxCoord y)
{ DoDrawIcon(icon, x, y); }
void DrawIcon(const wxIcon& icon, const wxPoint& pt)
{ DoDrawIcon(icon, pt.x, pt.y); }
void DrawBitmap(const wxBitmap &bmp, wxCoord x, wxCoord 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, wxCoord x, wxCoord y)
{ DoDrawText(text, x, y); }
void DrawText(const wxString& text, const wxPoint& pt)
{ DoDrawText(text, pt.x, pt.y); }
void DrawRotatedText(const wxString& text, wxCoord x, wxCoord y, double angle)
{ DoDrawRotatedText(text, x, y, angle); }
void DrawRotatedText(const wxString& text, const wxPoint& pt, double angle)
{ DoDrawRotatedText(text, pt.x, pt.y, angle); }
// this version puts both optional bitmap and the text into the given
// rectangle and aligns is as specified by alignment parameter; it also
// will emphasize the character with the given index if it is != -1 and
// return the bounding rectangle if required
virtual void DrawLabel(const wxString& text,
const wxBitmap& image,
const wxRect& rect,
int alignment = wxALIGN_LEFT | wxALIGN_TOP,
int indexAccel = -1,
wxRect *rectBounding = NULL);
void DrawLabel(const wxString& text, const wxRect& rect,
int alignment = wxALIGN_LEFT | wxALIGN_TOP,
int indexAccel = -1)
{ DrawLabel(text, wxNullBitmap, rect, alignment, indexAccel); }
bool Blit(wxCoord xdest, wxCoord ydest, wxCoord width, wxCoord height,
wxDC *source, wxCoord xsrc, wxCoord ysrc,
int rop = wxCOPY, bool useMask = FALSE, wxCoord xsrcMask = -1, wxCoord ysrcMask = -1)
{
return DoBlit(xdest, ydest, width, height,
source, xsrc, ysrc, rop, useMask, xsrcMask, ysrcMask);
}
bool Blit(const wxPoint& destPt, const wxSize& sz,
wxDC *source, const wxPoint& srcPt,
int rop = wxCOPY, bool useMask = FALSE, const wxPoint& srcPtMask = wxPoint(-1, -1))
{
return DoBlit(destPt.x, destPt.y, sz.x, sz.y,
source, srcPt.x, srcPt.y, rop, useMask, srcPtMask.x, srcPtMask.y);
}
#if wxUSE_SPLINES
// TODO: this API needs fixing (wxPointList, why (!const) "wxList *"?)
void DrawSpline(wxCoord x1, wxCoord y1,
wxCoord x2, wxCoord y2,
wxCoord x3, wxCoord 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;
#if wxUSE_PALETTE
virtual void SetPalette(const wxPalette& palette) = 0;
#endif // wxUSE_PALETTE
// clipping region
// ---------------
void SetClippingRegion(wxCoord x, wxCoord y, wxCoord width, wxCoord 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(wxCoord *x, wxCoord *y, wxCoord *w, wxCoord *h) const
{ DoGetClippingBox(x, y, w, h); }
void GetClippingBox(wxRect& rect) const
{
#if 1
DoGetClippingBox(&rect.x, &rect.y, &rect.width, &rect.height);
#else
// Necessary to use intermediate variables for 16-bit compilation
// REMOVE ME if the above is OK for all current platforms
wxCoord x, y, w, h;
DoGetClippingBox(&x, &y, &w, &h);
rect.x = x; rect.y = y; rect.width = w; rect.height = h;
#endif
}
// text extent
// -----------
virtual wxCoord GetCharHeight() const = 0;
virtual wxCoord GetCharWidth() const = 0;
// only works for single line strings
void GetTextExtent(const wxString& string,
wxCoord *x, wxCoord *y,
wxCoord *descent = NULL,
wxCoord *externalLeading = NULL,
wxFont *theFont = NULL) const
{ DoGetTextExtent(string, x, y, descent, externalLeading, theFont); }
// works for single as well as multi-line strings
virtual void GetMultiLineTextExtent(const wxString& text,
wxCoord *width,
wxCoord *height,
wxCoord *heightLine = NULL,
wxFont *font = NULL);
// 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.
wxCoord DeviceToLogicalX(wxCoord x) const;
wxCoord DeviceToLogicalY(wxCoord y) const;
wxCoord DeviceToLogicalXRel(wxCoord x) const;
wxCoord DeviceToLogicalYRel(wxCoord y) const;
wxCoord LogicalToDeviceX(wxCoord x) const;
wxCoord LogicalToDeviceY(wxCoord y) const;
wxCoord LogicalToDeviceXRel(wxCoord x) const;
wxCoord LogicalToDeviceYRel(wxCoord 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...
int GetBackgroundMode() const { return m_backgroundMode; }
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(wxCoord *x, wxCoord *y) const
{ DoGetLogicalOrigin(x, y); }
wxPoint GetLogicalOrigin() const
{ wxCoord x, y; DoGetLogicalOrigin(&x, &y); return wxPoint(x, y); }
virtual void SetLogicalOrigin(wxCoord x, wxCoord y) = 0;
void GetDeviceOrigin(wxCoord *x, wxCoord *y) const
{ DoGetDeviceOrigin(x, y); }
wxPoint GetDeviceOrigin() const
{ wxCoord x, y; DoGetDeviceOrigin(&x, &y); return wxPoint(x, y); }
virtual void SetDeviceOrigin(wxCoord x, wxCoord 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(wxCoord x, wxCoord y)
{
if ( m_isBBoxValid )
{
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;
}
else
{
m_isBBoxValid = TRUE;
m_minX = x;
m_minY = y;
m_maxX = x;
m_maxY = y;
}
}
void ResetBoundingBox()
{
m_isBBoxValid = FALSE;
m_minX = m_maxX = m_minY = m_maxY = 0;
}
// Get the final bounding box of the PostScript or Metafile picture.
wxCoord MinX() const { return m_minX; }
wxCoord MaxX() const { return m_maxX; }
wxCoord MinY() const { return m_minY; }
wxCoord MaxY() const { return m_maxY; }
// misc old functions
// ------------------
// for compatibility with the old code when wxCoord was long everywhere
#ifndef __WIN16__
void GetTextExtent(const wxString& string,
long *x, long *y,
long *descent = NULL,
long *externalLeading = NULL,
wxFont *theFont = NULL) const
{
wxCoord x2, y2, descent2, externalLeading2;
DoGetTextExtent(string, &x2, &y2,
&descent2, &externalLeading2,
theFont);
if ( x )
*x = x2;
if ( y )
*y = y2;
if ( descent )
*descent = descent2;
if ( externalLeading )
*externalLeading = externalLeading2;
}
void GetLogicalOrigin(long *x, long *y) const
{
wxCoord x2, y2;
DoGetLogicalOrigin(&x2, &y2);
if ( x )
*x = x2;
if ( y )
*y = y2;
}
void GetDeviceOrigin(long *x, long *y) const
{
wxCoord x2, y2;
DoGetDeviceOrigin(&x2, &y2);
if ( x )
*x = x2;
if ( y )
*y = y2;
}
void GetClippingBox(long *x, long *y, long *w, long *h) const
{
wxCoord xx,yy,ww,hh;
DoGetClippingBox(&xx, &yy, &ww, &hh);
if (x) *x = xx;
if (y) *y = yy;
if (w) *w = ww;
if (h) *h = hh;
}
#endif // !Win16
#if WXWIN_COMPATIBILITY
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 { int 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 bool DoFloodFill(wxCoord x, wxCoord y, const wxColour& col,
int style = wxFLOOD_SURFACE) = 0;
virtual bool DoGetPixel(wxCoord x, wxCoord y, wxColour *col) const = 0;
virtual void DoDrawPoint(wxCoord x, wxCoord y) = 0;
virtual void DoDrawLine(wxCoord x1, wxCoord y1, wxCoord x2, wxCoord y2) = 0;
virtual void DoDrawArc(wxCoord x1, wxCoord y1,
wxCoord x2, wxCoord y2,
wxCoord xc, wxCoord yc) = 0;
virtual void DoDrawCheckMark(wxCoord x, wxCoord y,
wxCoord width, wxCoord height);
virtual void DoDrawEllipticArc(wxCoord x, wxCoord y, wxCoord w, wxCoord h,
double sa, double ea) = 0;
virtual void DoDrawRectangle(wxCoord x, wxCoord y, wxCoord width, wxCoord height) = 0;
virtual void DoDrawRoundedRectangle(wxCoord x, wxCoord y,
wxCoord width, wxCoord height,
double radius) = 0;
virtual void DoDrawEllipse(wxCoord x, wxCoord y,
wxCoord width, wxCoord height) = 0;
virtual void DoCrossHair(wxCoord x, wxCoord y) = 0;
virtual void DoDrawIcon(const wxIcon& icon, wxCoord x, wxCoord y) = 0;
virtual void DoDrawBitmap(const wxBitmap &bmp, wxCoord x, wxCoord y,
bool useMask = FALSE) = 0;
virtual void DoDrawText(const wxString& text, wxCoord x, wxCoord y) = 0;
virtual void DoDrawRotatedText(const wxString& text,
wxCoord x, wxCoord y, double angle) = 0;
virtual bool DoBlit(wxCoord xdest, wxCoord ydest,
wxCoord width, wxCoord height,
wxDC *source, wxCoord xsrc, wxCoord ysrc,
int rop = wxCOPY, bool useMask = FALSE, wxCoord xsrcMask = -1, wxCoord ysrcMask = -1) = 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[],
wxCoord xoffset, wxCoord yoffset) = 0;
virtual void DoDrawPolygon(int n, wxPoint points[],
wxCoord xoffset, wxCoord yoffset,
int fillStyle = wxODDEVEN_RULE) = 0;
virtual void DoSetClippingRegionAsRegion(const wxRegion& region) = 0;
virtual void DoSetClippingRegion(wxCoord x, wxCoord y,
wxCoord width, wxCoord height) = 0;
// FIXME are these functions really different?
virtual void DoGetClippingRegion(wxCoord *x, wxCoord *y,
wxCoord *w, wxCoord *h)
{ DoGetClippingBox(x, y, w, h); }
virtual void DoGetClippingBox(wxCoord *x, wxCoord *y,
wxCoord *w, wxCoord *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(wxCoord *x, wxCoord *y) const
{
if ( x ) *x = m_logicalOriginX;
if ( y ) *y = m_logicalOriginY;
}
virtual void DoGetDeviceOrigin(wxCoord *x, wxCoord *y) const
{
if ( x ) *x = m_deviceOriginX;
if ( y ) *y = m_deviceOriginY;
}
virtual void DoGetTextExtent(const wxString& string,
wxCoord *x, wxCoord *y,
wxCoord *descent = NULL,
wxCoord *externalLeading = NULL,
wxFont *theFont = NULL) const = 0;
#if wxUSE_SPLINES
virtual void DoDrawSpline(wxList *points);
#endif
protected:
// flags
bool m_colour:1;
bool m_ok:1;
bool m_clipping:1;
bool m_isInteractive:1;
bool m_isBBoxValid:1;
// coordinate system variables
// TODO short descriptions of what exactly they are would be nice...
wxCoord m_logicalOriginX, m_logicalOriginY;
wxCoord 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
wxCoord m_minX, m_minY, m_maxX, m_maxY;
wxCoord 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;
#if wxUSE_PALETTE
wxPalette m_palette;
bool m_hasCustomPalette;
#endif // wxUSE_PALETTE
private:
DECLARE_NO_COPY_CLASS(wxDCBase)
DECLARE_ABSTRACT_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(__WXX11__)
#include "wx/x11/dc.h"
#elif defined(__WXMGL__)
#include "wx/mgl/dc.h"
#elif defined(__WXMAC__)
#include "wx/mac/dc.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/dc.h"
#elif defined(__WXPM__)
#include "wx/os2/dc.h"
#endif
// ----------------------------------------------------------------------------
// helper class: you can use it to temporarily change the DC text colour and
// restore it automatically when the object goes out of scope
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxDCTextColourChanger
{
public:
wxDCTextColourChanger(wxDC& dc) : m_dc(dc), m_colFgOld() { }
~wxDCTextColourChanger()
{
if ( m_colFgOld.Ok() )
m_dc.SetTextForeground(m_colFgOld);
}
void Set(const wxColour& col)
{
if ( !m_colFgOld.Ok() )
m_colFgOld = m_dc.GetTextForeground();
m_dc.SetTextForeground(col);
}
private:
wxDC& m_dc;
wxColour m_colFgOld;
};
// ----------------------------------------------------------------------------
// another small helper class: sets the clipping region in its ctor and
// destroys it in the dtor
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxDCClipper
{
public:
wxDCClipper(wxDC& dc, const wxRect& r) : m_dc(dc)
{ dc.SetClippingRegion(r.x, r.y, r.width, r.height); }
wxDCClipper(wxDC& dc, wxCoord x, wxCoord y, wxCoord w, wxCoord h) : m_dc(dc)
{ dc.SetClippingRegion(x, y, w, h); }
~wxDCClipper() { m_dc.DestroyClippingRegion(); }
private:
wxDC& m_dc;
};
#endif
// _WX_DC_H_BASE_

104
include/wx/dcbuffer.h Normal file
View File

@@ -0,0 +1,104 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/dcbuffer.h
// Purpose: wxBufferedDC class
// Author: Ron Lee <ron@debian.org>
// Modified by:
// Created: 16/03/02
// RCS-ID: $Id$
// Copyright: (c) Ron Lee
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DCBUFFER_H_
#define _WX_DCBUFFER_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "dcbuffer.h"
#endif
#include "wx/dcmemory.h"
// ==============================================================
// Double buffering helper.
// --------------------------------------------------------------
class WXDLLEXPORT wxBufferedDC : public wxMemoryDC
{
private:
// Without the existence of a wxNullDC, this must be
// a pointer, else it could probably be a reference.
wxDC *m_dc;
wxBitmap m_buffer;
public:
// Default ctor, must subsequently call Init for
// two stage construction.
wxBufferedDC()
: m_dc( 0 )
{}
// Construct a wxBufferedDC using a user supplied buffer.
wxBufferedDC( wxDC *dc, const wxBitmap &buffer );
// Construct a wxBufferedDC with an internal buffer of 'area'
// (where area is usually something like the size of the window
// being buffered)
wxBufferedDC( wxDC *dc, const wxSize &area );
// default copy ctor ok.
// The usually desired action in the dtor is to blit the buffer.
~wxBufferedDC();
// These reimplement the actions of the ctors for
// two stage creation, but are not used by the ctors
// themselves to save a few cpu cycles.
void Init( wxDC *dc, const wxBitmap &bitmap );
void Init( wxDC *dc, const wxSize &area );
// Blits the buffer to the dc, and detaches the dc from
// the buffer. Usually called in the dtor or by the dtor
// of derived classes if the BufferedDC must blit before
// the derived class (which may own the dc it's blitting
// to) is destroyed.
void UnMask();
DECLARE_NO_COPY_CLASS(wxBufferedDC)
};
// ==============================================================
// Double buffered PaintDC.
// --------------------------------------------------------------
// Creates a double buffered wxPaintDC, optionally allowing the
// user to specify their own buffer to use.
class WXDLLEXPORT wxBufferedPaintDC : public wxBufferedDC
{
private:
wxPaintDC m_paintdc;
public:
wxBufferedPaintDC( wxWindow *window, const wxBitmap &buffer = wxNullBitmap );
// default copy ctor ok.
~wxBufferedPaintDC();
};
#endif // _WX_DCBUFFER_H_

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

@@ -0,0 +1,23 @@
#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(__WXX11__)
#include "wx/x11/dcclient.h"
#elif defined(__WXMGL__)
#include "wx/mgl/dcclient.h"
#elif defined(__WXMAC__)
#include "wx/mac/dcclient.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/dcclient.h"
#elif defined(__WXPM__)
#include "wx/os2/dcclient.h"
#endif
#endif
// _WX_DCCLIENT_H_BASE_

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

@@ -0,0 +1,23 @@
#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(__WXX11__)
#include "wx/x11/dcmemory.h"
#elif defined(__WXMGL__)
#include "wx/mgl/dcmemory.h"
#elif defined(__WXMAC__)
#include "wx/mac/dcmemory.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/dcmemory.h"
#elif defined(__WXPM__)
#include "wx/os2/dcmemory.h"
#endif
#endif
// _WX_DCMEMORY_H_BASE_

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

@@ -0,0 +1,15 @@
#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
#if defined(__WXMAC__)
#include "wx/mac/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

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

@@ -0,0 +1,23 @@
#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(__WXX11__)
#include "wx/x11/dcscreen.h"
#elif defined(__WXMGL__)
#include "wx/mgl/dcscreen.h"
#elif defined(__WXMAC__)
#include "wx/mac/dcscreen.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/dcscreen.h"
#elif defined(__WXPM__)
#include "wx/os2/dcscreen.h"
#endif
#endif
// _WX_DCSCREEN_H_BASE_

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

@@ -0,0 +1,28 @@
#ifndef _WX_DDE_H_BASE_
#define _WX_DDE_H_BASE_
#include "wx/list.h"
class wxDDEClient;
class wxDDEServer;
class wxDDEConnection;
WX_DECLARE_EXPORTED_LIST(wxDDEClient, wxDDEClientList);
WX_DECLARE_EXPORTED_LIST(wxDDEServer, wxDDEServerList);
WX_DECLARE_EXPORTED_LIST(wxDDEConnection, wxDDEConnectionList);
#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(__WXMAC__)
#include "wx/mac/dde.h"
#elif defined(__WXPM__)
#include "wx/os2/dde.h"
#endif
#endif
// _WX_DDE_H_BASE_

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

@@ -0,0 +1,236 @@
/////////////////////////////////////////////////////////////////////////////
// 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 licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DEBUG_H_
#define _WX_DEBUG_H_
#ifndef __WXWINCE__
#include <assert.h>
#endif
#include <limits.h> // for CHAR_BIT used below
#include "wx/wxchar.h" // for __TFILE__ and wxChar
// ----------------------------------------------------------------------------
// Defines controlling the debugging macros
// ----------------------------------------------------------------------------
// if _DEBUG is defined (MS VC++ and others use it in debug builds), define
// __WXDEBUG__ too
#ifdef _DEBUG
#ifndef __WXDEBUG__
#define __WXDEBUG__
#endif // !__WXDEBUG__
#endif // _DEBUG
// if NDEBUG is defined (<assert.h> uses it), undef __WXDEBUG__ and WXDEBUG
#ifdef NDEBUG
#undef __WXDEBUG__
#undef WXDEBUG
#endif // NDEBUG
// if __WXDEBUG__ is defined, make sure that WXDEBUG is defined and >= 1
#ifdef __WXDEBUG__
#if !defined(WXDEBUG) || !WXDEBUG
#undef WXDEBUG
#define WXDEBUG 1
#endif // !WXDEBUG
#endif // __WXDEBUG__
// ----------------------------------------------------------------------------
// 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.
//
// Warning: if you don't like advice on programming style, don't read
// further! ;-)
//
// Extensive use of these macros is recommended! Remember that ASSERTs are
// disabled in final build (without __WXDEBUG__ defined), 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.
// ----------------------------------------------------------------------------
// Macros which are completely disabled in 'release' mode
//
// NB: these functions are implemented in src/common/appcmn.cpp
#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)
parameters:
szFile and nLine - file name and line number of the ASSERT
szMsg - optional message explaining the reason
*/
extern void WXDLLEXPORT wxOnAssert(const wxChar *szFile,
int nLine,
const wxChar *szCond,
const wxChar *szMsg = NULL);
// call this function to break into the debugger unconditionally (assuming
// the program is running under debugger, of course)
extern void WXDLLEXPORT wxTrap();
// helper function used to implement wxASSERT and wxASSERT_MSG
//
// note using "int" and not "bool" for cond to avoid VC++ warnings about
// implicit conversions when doing "wxAssert( pointer )" and also use of
// "!!cond" below to ensure that everything is converted to int
extern void WXDLLEXPORT wxAssert(int cond,
const wxChar *szFile,
int nLine,
const wxChar *szCond,
const wxChar *szMsg = NULL) ;
// generic assert macro
#define wxASSERT(cond) wxAssert(!!(cond), __TFILE__, __LINE__, _T(#cond))
// assert with additional message explaining it's cause
#define wxASSERT_MSG(cond, msg) \
wxAssert(!!(cond), __TFILE__, __LINE__, _T(#cond), msg)
// an assert helper used to avoid warning when testing constant expressions,
// i.e. wxASSERT( sizeof(int) == 4 ) can generate a compiler warning about
// expression being always true, but not using
// wxASSERT( wxAssertIsEqual(sizeof(int), 4) )
//
// NB: this is made obsolete by wxCOMPILE_TIME_ASSERT() and shouldn't be
// used any longer
extern bool WXDLLEXPORT wxAssertIsEqual(int x, int y);
#else
#define wxTrap()
// 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__
// Use of wxFalse instead of FALSE suppresses compiler warnings about testing
// constant expression
WXDLLEXPORT_DATA(extern const bool) wxFalse;
#define wxAssertFailure wxFalse
// special form of assert: always triggers it (in debug mode)
#define wxFAIL wxASSERT(wxAssertFailure)
// FAIL with some message
#define wxFAIL_MSG(msg) wxASSERT_MSG(wxAssertFailure, msg)
// NB: the following 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!!") )
*/
// 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; }
// ----------------------------------------------------------------------------
// Compile time asserts
//
// Unlike the normal assert and related macros above which are checked during
// the program tun-time the macros below will result in a compilation error if
// the condition they check is false. This is usually used to check the
// expressions containing sizeof()s which cannot be tested with the
// preprocessor. If you can use the #if's, do use them as you can give a more
// detailed error message then.
// ----------------------------------------------------------------------------
/*
How this works (you don't have to understand it to be able to use the
macros): we rely on the fact that it is invalid to define a named bit field
in a struct of width 0. All the rest are just the hacks to minimize the
possibility of the compiler warnings when compiling this macro: in
particular, this is why we define a struct and not an object (which would
result in a warning about unused variable) and a named struct (otherwise we'd
get a warning about an unnamed struct not used to define an object!).
The _n__ part is to stop VC++ 7 being confused since it encloses __LINE++ in
parentheses. Unfortunately this does not work with other compilers, so
we will only enable it when we know the _precise_ symbols to test for.
*/
#define wxMAKE_ASSERT_NAME_HELPER(line) wxAssert_ ## line
#define wxMAKE_ASSERT_NAME(line) wxMAKE_ASSERT_NAME_HELPER(line)
#if 0
#define wxMAKE_UNIQUE_ASSERT_NAME wxMAKE_ASSERT_NAME(_n___ ## __LINE__)
#else
#define wxMAKE_UNIQUE_ASSERT_NAME wxMAKE_ASSERT_NAME(__LINE__)
#endif
#define wxMAKE_UNIQUE_ASSERT_NAME2(text) wxMAKE_ASSERT_NAME(text)
/*
The second argument of this macro must be a valid C++ identifier and not a
string. I.e. you should use it like this:
wxCOMPILE_TIME_ASSERT( sizeof(int) >= 2, YourIntsAreTooSmall );
It may be used both within a function and in the global scope.
*/
#define wxCOMPILE_TIME_ASSERT(expr, msg) \
struct wxMAKE_UNIQUE_ASSERT_NAME { unsigned int msg: expr; }
#define wxCOMPILE_TIME_ASSERT2(expr, msg, text) \
struct wxMAKE_UNIQUE_ASSERT_NAME2(text) { unsigned int msg: expr; }
// helpers for wxCOMPILE_TIME_ASSERT below, for private use only
#define wxMAKE_BITSIZE_MSG(type, size) type ## SmallerThan ## size ## Bits
// a special case of compile time assert: check that the size of the given type
// is at least the given number of bits
#define wxASSERT_MIN_BITSIZE(type, size) \
wxCOMPILE_TIME_ASSERT(sizeof(type) * CHAR_BIT >= size, \
wxMAKE_BITSIZE_MSG(type, size))
// ----------------------------------------------------------------------------
// other miscellaneous debugger-related functions
// ----------------------------------------------------------------------------
// return true if we're running under debugger
//
// currently this only really works under Mac in CodeWarrior builds, it always
// returns false otherwise
#ifdef __WXMAC__
extern bool WXDLLEXPORT wxIsDebuggerRunning();
#else // !Mac
inline bool WXDLLEXPORT wxIsDebuggerRunning() { return false; }
#endif // Mac/!Mac
#endif // _WX_DEBUG_H_

2253
include/wx/defs.h Normal file

File diff suppressed because it is too large Load Diff

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

@@ -0,0 +1,77 @@
/////////////////////////////////////////////////////////////////////////////
// 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_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "dialogbase.h"
#endif
#include "wx/defs.h"
#include "wx/containr.h"
#include "wx/toplevel.h"
WXDLLEXPORT_DATA(extern const wxChar*) wxDialogNameStr;
class WXDLLEXPORT wxDialogBase : public wxTopLevelWindow
{
public:
wxDialogBase() { Init(); }
virtual ~wxDialogBase() { }
void Init();
// 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; }
#if wxUSE_STATTEXT // && wxUSE_TEXTCTRL
// splits text up at newlines and places the
// lines into a vertical wxBoxSizer
wxSizer *CreateTextSizer( const wxString &message );
#endif // wxUSE_STATTEXT // && wxUSE_TEXTCTRL
#if wxUSE_BUTTON
// places buttons into a horizontal wxBoxSizer
wxSizer *CreateButtonSizer( long flags );
#endif // wxUSE_BUTTON
protected:
// the return code from modal dialog
int m_returnCode;
DECLARE_EVENT_TABLE()
WX_DECLARE_CONTROL_CONTAINER();
};
#if defined(__WXUNIVERSAL__) && !defined(__WXMICROWIN__)
#include "wx/univ/dialog.h"
#else
#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(__WXMAC__)
#include "wx/mac/dialog.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/dialog.h"
#elif defined(__WXPM__)
#include "wx/os2/dialog.h"
#endif
#endif
#endif
// _WX_DIALOG_H_BASE_

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

@@ -0,0 +1,201 @@
/////////////////////////////////////////////////////////////////////////////
// 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_DIALUP_H
#define _WX_DIALUP_H
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "dialup.h"
#endif
#if wxUSE_DIALUP_MANAGER
#include "wx/event.h"
// ----------------------------------------------------------------------------
// misc
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxArrayString;
WXDLLEXPORT_DATA(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;
};
// ----------------------------------------------------------------------------
// wxDialUpManager events
// ----------------------------------------------------------------------------
BEGIN_DECLARE_EVENT_TYPES()
DECLARE_EVENT_TYPE(wxEVT_DIALUP_CONNECTED, 450)
DECLARE_EVENT_TYPE(wxEVT_DIALUP_DISCONNECTED, 451)
END_DECLARE_EVENT_TYPES()
// 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; }
// implement the base class pure virtual
virtual wxEvent *Clone() const { return new wxDialUpEvent(*this); }
};
// the type of dialup event handler function
typedef void (wxEvtHandler::*wxDialUpEventFunction)(wxDialUpEvent&);
// macros to catch dialup events
#define EVT_DIALUP_CONNECTED(func) \
DECLARE_EVENT_TABLE_ENTRY( wxEVT_DIALUP_CONNECTED, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxDialUpEventFunction) & func, NULL),
#define EVT_DIALUP_DISCONNECTED(func) \
DECLARE_EVENT_TABLE_ENTRY( wxEVT_DIALUP_DISCONNECTED, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxDialUpEventFunction) & func, NULL),
#endif // wxUSE_DIALUP_MANAGER
#endif // _WX_DIALUP_H

151
include/wx/dir.h Normal file
View File

@@ -0,0 +1,151 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/dir.h
// Purpose: wxDir is a class for enumerating the files in a directory
// Author: Vadim Zeitlin
// Modified by:
// Created: 08.12.99
// RCS-ID: $Id$
// Copyright: (c) 1999 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DIR_H_
#define _WX_DIR_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "dir.h"
#endif
#ifndef WX_PRECOMP
#include "wx/string.h"
#endif
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
// these flags define what kind of filenames is included in the list of files
// enumerated by GetFirst/GetNext
enum
{
wxDIR_FILES = 0x0001, // include files
wxDIR_DIRS = 0x0002, // include directories
wxDIR_HIDDEN = 0x0004, // include hidden files
wxDIR_DOTDOT = 0x0008, // include '.' and '..'
// by default, enumerate everything except '.' and '..'
wxDIR_DEFAULT = wxDIR_FILES | wxDIR_DIRS | wxDIR_HIDDEN
};
// these constants are possible return value of wxDirTraverser::OnDir()
enum wxDirTraverseResult
{
wxDIR_IGNORE = -1, // ignore this directory but continue with others
wxDIR_STOP, // stop traversing
wxDIR_CONTINUE // continue into this directory
};
// ----------------------------------------------------------------------------
// wxDirTraverser: helper class for wxDir::Traverse()
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxDirTraverser
{
public:
// called for each file found by wxDir::Traverse()
//
// return wxDIR_STOP or wxDIR_CONTINUE from here (wxDIR_IGNORE doesn't
// make sense)
virtual wxDirTraverseResult OnFile(const wxString& filename) = 0;
// called for each directory found by wxDir::Traverse()
//
// return one of the enum elements defined above
virtual wxDirTraverseResult OnDir(const wxString& dirname) = 0;
// called for each directory which we couldn't open during our traversal
// of the directory tyree
//
// this method can also return either wxDIR_STOP, wxDIR_IGNORE or
// wxDIR_CONTINUE but the latter is treated specially: it means to retry
// opening the directory and so may lead to infinite loop if it is
// returned unconditionally, be careful with this!
//
// the base class version always returns wxDIR_IGNORE
virtual wxDirTraverseResult OnOpenError(const wxString& dirname);
};
// ----------------------------------------------------------------------------
// wxDir: portable equivalent of {open/read/close}dir functions
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxDirData;
class WXDLLEXPORT wxDir
{
public:
// test for existence of a directory with the given name
static bool Exists(const wxString& dir);
// ctors
// -----
// default, use Open()
wxDir() { m_data = NULL; }
// opens the directory for enumeration, use IsOpened() to test success
wxDir(const wxString& dir);
// dtor cleans up the associated ressources
~wxDir();
// open the directory for enumerating
bool Open(const wxString& dir);
// returns TRUE if the directory was successfully opened
bool IsOpened() const;
// get the full name of the directory (without '/' at the end)
wxString GetName() const;
// file enumeration routines
// -------------------------
// start enumerating all files matching filespec (or all files if it is
// empty) and flags, return TRUE on success
bool GetFirst(wxString *filename,
const wxString& filespec = wxEmptyString,
int flags = wxDIR_DEFAULT) const;
// get next file in the enumeration started with GetFirst()
bool GetNext(wxString *filename) const;
// return true if this directory has any files in it
bool HasFiles(const wxString& spec = wxEmptyString);
// return true if this directory has any subdirectories
bool HasSubDirs(const wxString& spec = wxEmptyString);
// enumerate all files in this directory and its subdirectories
//
// return the number of files found
size_t Traverse(wxDirTraverser& sink,
const wxString& filespec = wxEmptyString,
int flags = wxDIR_DEFAULT) const;
// simplest version of Traverse(): get the names of all files under this
// directory into filenames array, return the number of files
static size_t GetAllFiles(const wxString& dirname,
wxArrayString *files,
const wxString& filespec = wxEmptyString,
int flags = wxDIR_DEFAULT);
private:
friend class WXDLLEXPORT wxDirData;
wxDirData *m_data;
DECLARE_NO_COPY_CLASS(wxDir)
};
#endif // _WX_DIR_H_

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

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

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

@@ -0,0 +1,87 @@
#ifndef _WX_DIRDLG_H_BASE_
#define _WX_DIRDLG_H_BASE_
#if wxUSE_DIRDLG
#include "wx/dialog.h"
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
WXDLLEXPORT_DATA(extern const wxChar*) wxDirDialogNameStr;
WXDLLEXPORT_DATA(extern const wxChar*) wxDirDialogDefaultFolderStr;
WXDLLEXPORT_DATA(extern const wxChar*) wxDirSelectorPromptStr;
WXDLLEXPORT_DATA(extern const wxChar*) wxEmptyString;
#define wxDD_DEFAULT_STYLE \
(wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER | wxDD_NEW_DIR_BUTTON)
/*
The interface (TODO: make the other classes really derive from it!) is
something like this:
class WXDLLEXPORT wxDirDialogBase : public wxDialog
{
public:
wxDirDialogBase(wxWindow *parent,
const wxString& title = wxFileSelectorPromptStr,
const wxString& defaultPath = wxEmptyString,
long style = wxDD_DEFAULT_STYLE,
const wxPoint& pos = wxDefaultPosition,
const wxSize& sz = wxDefaultSize,
const wxString& name = _T("dirdialog"));
void SetMessage(const wxString& message);
void SetPath(const wxString& path);
void SetStyle(long style);
wxString GetMessage() const;
wxString GetPath() const;
long GetStyle() const;
};
*/
#if defined(__WXMSW__)
#if defined(__WIN16__) || (defined(__GNUWIN32__) && !wxUSE_NORLANDER_HEADERS) || defined(__SALFORDC__) || !wxUSE_OLE
#include "wx/generic/dirdlgg.h"
#define wxDirDialog wxGenericDirDialog
#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(__WXX11__)
#include "wx/generic/dirdlgg.h"
#elif defined(__WXMGL__)
#include "wx/generic/dirdlgg.h"
#elif defined(__WXMAC__)
#include "wx/mac/dirdlg.h"
#elif defined(__WXCOCOA__)
#include "wx/generic/dirdlgg.h"
#elif defined(__WXPM__)
#include "wx/generic/dirdlgg.h"
#endif
#if !defined(__WXMSW__) && !defined(__WXMAC__)
#define wxDirDialog wxGenericDirDialog
#endif
// ----------------------------------------------------------------------------
// common ::wxDirSelector() function
// ----------------------------------------------------------------------------
WXDLLEXPORT wxString
wxDirSelector(const wxString& message = wxDirSelectorPromptStr,
const wxString& defaultPath = wxEmptyString,
long style = wxDD_DEFAULT_STYLE,
const wxPoint& pos = wxDefaultPosition,
wxWindow *parent = NULL);
#endif // wxUSE_DIRDLG
#endif
// _WX_DIRDLG_H_BASE_

164
include/wx/display.h Normal file
View File

@@ -0,0 +1,164 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/display.h
// Purpose: wxDisplay class
// Author: Royce Mitchell III
// Modified by: Vadim Zeitlin (resolution changes, display modes, ...)
// Created: 06/21/02
// RCS-ID: $Id$
// Copyright: (c) 2002-2003 wxWindows team
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DISPLAY_H_BASE_
#define _WX_DISPLAY_H_BASE_
#if wxUSE_DISPLAY
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "displaybase.h"
#endif
#include "wx/dynarray.h"
class WXDLLEXPORT wxWindow;
// ----------------------------------------------------------------------------
// wxVideoMode: contains video mode parameters for a display
// ----------------------------------------------------------------------------
struct WXDLLEXPORT wxVideoMode
{
wxVideoMode(int width = 0, int height = 0, int depth = 0, int freq = 0)
{
w = width;
h = height;
bpp = depth;
refresh = freq;
}
// default copy ctor and assignment operator are ok
bool operator==(const wxVideoMode& m) const
{
return w == m.w && h == m.h && bpp == m.bpp && refresh == m.refresh;
}
bool operator!=(const wxVideoMode& mode) const
{
return !operator==(mode);
}
// returns true if this mode matches the other one in the sense that all
// non zero fields of the other mode have the same value in this one
// (except for refresh which is allowed to have a greater value)
bool Matches(const wxVideoMode& other) const
{
return (!other.w || w == other.w) &&
(!other.h || h == other.h) &&
(!other.bpp || bpp == other.bpp) &&
(!other.refresh || refresh >= other.refresh);
}
// the screen size in pixels (e.g. 640*480), 0 means unspecified
int w, h;
// bits per pixel (e.g. 32), 1 is monochrome and 0 means unspecified/known
int bpp;
// refresh frequency in Hz, 0 means unspecified/unknown
int refresh;
};
WX_DECLARE_EXPORTED_OBJARRAY(wxVideoMode, wxArrayVideoModes);
// default, uninitialized, video mode object
WXDLLEXPORT_DATA(extern const wxVideoMode) wxDefaultVideoMode;
// ----------------------------------------------------------------------------
// wxDisplayBase: represents a display/monitor attached to the system
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxDisplayBase
{
public:
// initialize the object containing all information about the given
// display
//
// the displays are numbered from 0 to GetCount() - 1, 0 is always the
// primary display and the only one which is always supported
wxDisplayBase(size_t index = 0);
// return the number of available displays, valid parameters to
// wxDisplay ctor are from 0 up to this number
static size_t GetCount();
// find the display where the given point lies, return wxNOT_FOUND if
// it doesn't belong to any display
static int GetFromPoint(const wxPoint& pt);
// find the display where the given window lies, return wxNOT_FOUND if it
// is not shown at all
static int GetFromWindow(wxWindow *window);
// return true if the object was initialized successfully
virtual bool IsOk() const { return true; }
// get the display size
virtual wxRect GetGeometry() const = 0;
// name may be empty
virtual wxString GetName() const = 0;
// display 0 is always the primary display
bool IsPrimary() const { return m_index == 0; }
// enumerate all video modes supported by this display matching the given
// one (in the sense of wxVideoMode::Match())
//
// as any mode matches the default value of the argument and there is
// always at least one video mode supported by display, the returned array
// is only empty for the default value of the argument if this function is
// not supported at all on this platform
virtual wxArrayVideoModes
GetModes(const wxVideoMode& mode = wxDefaultVideoMode) const = 0;
// get current video mode
virtual wxVideoMode GetCurrentMode() const = 0;
// change current mode, return true if succeeded, false otherwise
//
// for the default value of the argument restores the video mode to default
virtual bool ChangeMode(const wxVideoMode& mode = wxDefaultVideoMode) = 0;
// restore the default video mode (just a more readable synonym)
void ResetMode() { (void)ChangeMode(); }
// virtual dtor as for any base class
virtual ~wxDisplayBase() { }
protected:
// the index of this display (0 is always the primary one)
size_t m_index;
DECLARE_NO_COPY_CLASS(wxDisplayBase);
};
#if defined(__WXMSW__)
#include "wx/msw/display.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/display.h"
#elif defined(__WXGTK__)
#include "wx/unix/displayx11.h"
#elif defined(__WXMAC__)
#include "wx/mac/display.h"
#elif defined(__WXPM__)
#include "wx/os2/display.h"
#endif
#endif // wxUSE_DISPLAY
#endif // _WX_DISPLAY_H_BASE_

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

@@ -0,0 +1,251 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/dnd.h
// Purpose: Drag and drop classes declarations
// Author: Vadim Zeitlin, Robert Roebling
// Modified by:
// Created: 26.05.99
// RCS-ID: $Id$
// Copyright: (c) wxWindows Team
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DND_H_BASE_
#define _WX_DND_H_BASE_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "dndbase.h"
#endif
#include "wx/defs.h"
#if wxUSE_DRAG_AND_DROP
#include "wx/dataobj.h"
#include "wx/cursor.h"
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
// flags for wxDropSource::DoDragDrop()
//
// NB: wxDrag_CopyOnly must be 0 (== FALSE) and wxDrag_AllowMove must be 1
// (== TRUE) for compatibility with the old DoDragDrop(bool) method!
enum
{
wxDrag_CopyOnly = 0, // allow only copying
wxDrag_AllowMove = 1, // allow moving (copying is always allowed)
wxDrag_DefaultMove = 3 // the default operation is move, not copy
};
// result of wxDropSource::DoDragDrop() call
enum wxDragResult
{
wxDragError, // error prevented the d&d operation from completing
wxDragNone, // drag target didn't accept the data
wxDragCopy, // the data was successfully copied
wxDragMove, // the data was successfully moved (MSW only)
wxDragLink, // operation is a drag-link
wxDragCancel // the operation was cancelled by user (not an error)
};
inline WXDLLEXPORT bool wxIsDragResultOk(wxDragResult res)
{
return res == wxDragCopy || res == wxDragMove || res == wxDragLink;
}
// ----------------------------------------------------------------------------
// wxDropSource is the object you need to create (and call DoDragDrop on it)
// to initiate a drag-and-drop operation
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxDropSourceBase
{
public:
wxDropSourceBase(const wxCursor &cursorCopy = wxNullCursor,
const wxCursor &cursorMove = wxNullCursor,
const wxCursor &cursorStop = wxNullCursor)
: m_cursorCopy(cursorCopy),
m_cursorMove(cursorMove),
m_cursorStop(cursorStop)
{ m_data = (wxDataObject *)NULL; }
virtual ~wxDropSourceBase() { }
// set the data which is transfered by drag and drop
void SetData(wxDataObject& data)
{ m_data = &data; }
wxDataObject *GetDataObject()
{ return m_data; }
// set the icon corresponding to given drag result
void SetCursor(wxDragResult res, const wxCursor& cursor)
{
if ( res == wxDragCopy )
m_cursorCopy = cursor;
else if ( res == wxDragMove )
m_cursorMove = cursor;
else
m_cursorStop = cursor;
}
// start drag action, see enum wxDragResult for return value description
//
// if flags contains wxDrag_AllowMove, moving (and only copying) data is
// allowed, if it contains wxDrag_DefaultMove (which includes the previous
// flag), it is even the default operation
virtual wxDragResult DoDragDrop(int flags = wxDrag_CopyOnly) = 0;
// override to give feedback depending on the current operation result
// "effect" and return TRUE if you did something, FALSE to let the library
// give the default feedback
virtual bool GiveFeedback(wxDragResult WXUNUSED(effect)) { return FALSE; }
protected:
const wxCursor& GetCursor(wxDragResult res) const
{
if ( res == wxDragCopy )
return m_cursorCopy;
else if ( res == wxDragMove )
return m_cursorMove;
else
return m_cursorStop;
}
// the data we're dragging
wxDataObject *m_data;
// the cursors to use for feedback
wxCursor m_cursorCopy,
m_cursorMove,
m_cursorStop;
DECLARE_NO_COPY_CLASS(wxDropSourceBase)
};
// ----------------------------------------------------------------------------
// wxDropTarget should be associated with a window if it wants to be able to
// receive data via drag and drop.
//
// To use this class, you should derive from wxDropTarget and implement
// OnData() pure virtual method. You may also wish to override OnDrop() if you
// want to accept the data only inside some region of the window (this may
// avoid having to copy the data to this application which happens only when
// OnData() is called)
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxDropTargetBase
{
public:
// ctor takes a pointer to heap-allocated wxDataObject which will be owned
// by wxDropTarget and deleted by it automatically. If you don't give it
// here, you can use SetDataObject() later.
wxDropTargetBase(wxDataObject *dataObject = (wxDataObject*)NULL)
{ m_dataObject = dataObject; }
// dtor deletes our data object
virtual ~wxDropTargetBase()
{ delete m_dataObject; }
// get/set the associated wxDataObject
wxDataObject *GetDataObject() const
{ return m_dataObject; }
void SetDataObject(wxDataObject *dataObject)
{ if (m_dataObject) delete m_dataObject;
m_dataObject = dataObject; }
// these functions are called when data is moved over position (x, y) and
// may return either wxDragCopy, wxDragMove or wxDragNone depending on
// what would happen if the data were dropped here.
//
// the last parameter is what would happen by default and is determined by
// the platform-specific logic (for example, under Windows it's wxDragCopy
// if Ctrl key is pressed and wxDragMove otherwise) except that it will
// always be wxDragNone if the carried data is in an unsupported format.
// called when the mouse enters the window (only once until OnLeave())
virtual wxDragResult OnEnter(wxCoord x, wxCoord y, wxDragResult def)
{ return OnDragOver(x, y, def); }
// called when the mouse moves in the window - shouldn't take long to
// execute or otherwise mouse movement would be too slow
virtual wxDragResult OnDragOver(wxCoord WXUNUSED(x), wxCoord WXUNUSED(y),
wxDragResult def)
{ return def; }
// called when mouse leaves the window: might be used to remove the
// feedback which was given in OnEnter()
virtual void OnLeave() { }
// this function is called when data is dropped at position (x, y) - if it
// returns TRUE, OnData() will be called immediately afterwards which will
// allow to retrieve the data dropped.
virtual bool OnDrop(wxCoord x, wxCoord y) = 0;
// called after OnDrop() returns TRUE: you will usually just call
// GetData() from here and, probably, also refresh something to update the
// new data and, finally, return the code indicating how did the operation
// complete (returning default value in case of success and wxDragError on
// failure is usually ok)
virtual wxDragResult OnData(wxCoord x, wxCoord y, wxDragResult def) = 0;
// may be called *only* from inside OnData() and will fill m_dataObject
// with the data from the drop source if it returns TRUE
virtual bool GetData() = 0;
protected:
wxDataObject *m_dataObject;
DECLARE_NO_COPY_CLASS(wxDropTargetBase)
};
// ----------------------------------------------------------------------------
// include platform dependent class declarations
// ----------------------------------------------------------------------------
#if defined(__WXMSW__)
#include "wx/msw/ole/dropsrc.h"
#include "wx/msw/ole/droptgt.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/dnd.h"
#elif defined(__WXX11__)
#include "wx/x11/dnd.h"
#elif defined(__WXGTK__)
#include "wx/gtk/dnd.h"
#elif defined(__WXMAC__)
#include "wx/mac/dnd.h"
#elif defined(__WXPM__)
#include "wx/os2/dnd.h"
#endif
// ----------------------------------------------------------------------------
// standard wxDropTarget implementations (implemented in common/dobjcmn.cpp)
// ----------------------------------------------------------------------------
// A simple wxDropTarget derived class for text data: you only need to
// override OnDropText() to get something working
class WXDLLEXPORT wxTextDropTarget : public wxDropTarget
{
public:
wxTextDropTarget();
virtual bool OnDropText(wxCoord x, wxCoord y, const wxString& text) = 0;
virtual wxDragResult OnData(wxCoord x, wxCoord y, wxDragResult def);
};
// A drop target which accepts files (dragged from File Manager or Explorer)
class WXDLLEXPORT wxFileDropTarget : public wxDropTarget
{
public:
wxFileDropTarget();
// parameters are the number of files and the array of file names
virtual bool OnDropFiles(wxCoord x, wxCoord y,
const wxArrayString& filenames) = 0;
virtual wxDragResult OnData(wxCoord x, wxCoord y, wxDragResult def);
};
#endif // wxUSE_DRAG_AND_DROP
#endif // _WX_DND_H_BASE_

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

@@ -0,0 +1,93 @@
/////////////////////////////////////////////////////////////////////////////
// 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_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "docmdi.h"
#endif
#include "wx/defs.h"
#if wxUSE_MDI_ARCHITECTURE
#include "wx/docview.h"
#include "wx/mdi.h"
/*
* Use this instead of wxMDIParentFrame
*/
class WXDLLEXPORT wxDocMDIParentFrame: public wxMDIParentFrame
{
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 = wxT("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;
private:
DECLARE_CLASS(wxDocMDIParentFrame)
DECLARE_EVENT_TABLE()
DECLARE_NO_COPY_CLASS(wxDocMDIParentFrame)
};
/*
* Use this instead of wxMDIChildFrame
*/
class WXDLLEXPORT wxDocMDIChildFrame: public wxMDIChildFrame
{
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 = wxT("frame"));
~wxDocMDIChildFrame();
// 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() 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; }
bool Destroy() { m_childView = (wxView *)NULL; return wxMDIChildFrame::Destroy(); }
protected:
wxDocument* m_childDocument;
wxView* m_childView;
private:
DECLARE_EVENT_TABLE()
DECLARE_CLASS(wxDocMDIChildFrame)
DECLARE_NO_COPY_CLASS(wxDocMDIChildFrame)
};
#endif
// wxUSE_MDI_ARCHITECTURE
#endif
// _WX_DOCMDI_H_

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

@@ -0,0 +1,614 @@
/////////////////////////////////////////////////////////////////////////////
// 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__
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "docview.h"
#endif
#include "wx/defs.h"
#if wxUSE_DOC_VIEW_ARCHITECTURE
#include "wx/list.h"
#include "wx/cmndata.h"
#include "wx/string.h"
#include "wx/frame.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 wxCommandProcessor;
class WXDLLEXPORT wxFileHistory;
class WXDLLEXPORT wxConfigBase;
#if wxUSE_STD_IOSTREAM
#include "wx/iosfwrap.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
{
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 wxSTD ostream& SaveObject(wxSTD ostream& stream);
virtual wxSTD istream& LoadObject(wxSTD istream& stream);
#else
virtual wxOutputStream& SaveObject(wxOutputStream& stream);
virtual wxInputStream& LoadObject(wxInputStream& 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);
virtual void NotifyClosing();
// 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;
private:
DECLARE_ABSTRACT_CLASS(wxDocument)
DECLARE_NO_COPY_CLASS(wxDocument)
};
class WXDLLEXPORT wxView: public wxEvtHandler
{
public:
// wxView(wxDocument *doc = (wxDocument *) NULL);
wxView();
~wxView();
wxDocument *GetDocument() const { return m_viewDocument; }
virtual void SetDocument(wxDocument *doc);
wxString GetViewName() const { return m_viewTypeName; }
void SetViewName(const wxString& name) { m_viewTypeName = name; };
wxWindow *GetFrame() const { return m_viewFrame ; }
void SetFrame(wxWindow *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 OnClosingDocument() {};
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;
wxWindow* m_viewFrame;
private:
DECLARE_ABSTRACT_CLASS(wxView)
DECLARE_NO_COPY_CLASS(wxView)
};
// Represents user interface (and other) properties of documents and views
class WXDLLEXPORT wxDocTemplate: public wxObject
{
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;
private:
DECLARE_CLASS(wxDocTemplate)
DECLARE_NO_COPY_CLASS(wxDocTemplate)
};
// One object of this class may be created in an application, to manage all
// the templates and documents.
class WXDLLEXPORT wxDocManager: public wxEvtHandler
{
public:
wxDocManager(long flags = wxDEFAULT_DOCMAN_FLAGS, bool initialize = TRUE);
~wxDocManager();
virtual bool Initialize();
// Handlers for common user commands
void OnFileClose(wxCommandEvent& event);
void OnFileCloseAll(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);
// Handlers for UI update commands
void OnUpdateFileOpen(wxUpdateUIEvent& event);
void OnUpdateFileClose(wxUpdateUIEvent& event);
void OnUpdateFileRevert(wxUpdateUIEvent& event);
void OnUpdateFileNew(wxUpdateUIEvent& event);
void OnUpdateFileSave(wxUpdateUIEvent& event);
void OnUpdateFileSaveAs(wxUpdateUIEvent& event);
void OnUpdateUndo(wxUpdateUIEvent& event);
void OnUpdateRedo(wxUpdateUIEvent& event);
void OnUpdatePrint(wxUpdateUIEvent& event);
void OnUpdatePrintSetup(wxUpdateUIEvent& event);
void OnUpdatePreview(wxUpdateUIEvent& event);
// Extend event processing to search the view's event table
virtual bool ProcessEvent(wxEvent& event);
// called when file format detection didn't work, can be overridden to do
// something in this case
virtual void OnOpenFileFailure() { }
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, bool sort = FALSE);
virtual wxDocTemplate *SelectViewType(wxDocTemplate **templates,
int noTemplates, bool sort = FALSE);
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);
// closes all currently open documents
bool CloseDocuments(bool force = TRUE);
// closes the specified document
bool CloseDocument(wxDocument* doc, bool force = FALSE);
// 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;
wxList& GetDocuments() { return m_docs; }
wxList& GetTemplates() { return m_templates; }
// Make a default document name
virtual bool MakeDefaultName(wxString& buf);
// Make a frame title (override this to do something different)
virtual wxString MakeFrameTitle(wxDocument* doc);
virtual wxFileHistory *OnCreateFileHistory();
virtual wxFileHistory *GetFileHistory() const { return m_fileHistory; }
// File history management
virtual void AddFileToHistory(const wxString& file);
virtual void RemoveFileFromHistory(size_t i);
virtual size_t GetHistoryFilesCount() const;
virtual wxString GetHistoryFile(size_t 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);
wxString GetLastDirectory() const { return m_lastDirectory; }
void SetLastDirectory(const wxString& dir) { m_lastDirectory = dir; }
// Get the current document manager
static wxDocManager* GetDocumentManager() { return sm_docManager; }
// deprecated, use GetHistoryFilesCount() instead
wxDEPRECATED( size_t GetNoHistoryFiles() const );
protected:
long m_flags;
int m_defaultDocumentNameCounter;
int m_maxDocsOpen;
wxList m_docs;
wxList m_templates;
wxView* m_currentView;
wxFileHistory* m_fileHistory;
wxString m_lastDirectory;
static wxDocManager* sm_docManager;
DECLARE_EVENT_TABLE()
DECLARE_DYNAMIC_CLASS(wxDocManager)
DECLARE_NO_COPY_CLASS(wxDocManager)
};
inline size_t wxDocManager::GetNoHistoryFiles() const
{
return GetHistoryFilesCount();
}
// ----------------------------------------------------------------------------
// A default child frame
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxDocChildFrame : public wxFrame
{
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 = wxT("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; }
bool Destroy() { m_childView = (wxView *)NULL; return wxFrame::Destroy(); }
protected:
wxDocument* m_childDocument;
wxView* m_childView;
private:
DECLARE_CLASS(wxDocChildFrame)
DECLARE_EVENT_TABLE()
DECLARE_NO_COPY_CLASS(wxDocChildFrame)
};
// ----------------------------------------------------------------------------
// A default parent frame
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxDocParentFrame : public wxFrame
{
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 = wxT("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;
private:
DECLARE_CLASS(wxDocParentFrame)
DECLARE_EVENT_TABLE()
DECLARE_NO_COPY_CLASS(wxDocParentFrame)
};
// ----------------------------------------------------------------------------
// Provide simple default printing facilities
// ----------------------------------------------------------------------------
#if wxUSE_PRINTING_ARCHITECTURE
class WXDLLEXPORT wxDocPrintout : public wxPrintout
{
public:
wxDocPrintout(wxView *view = (wxView *) NULL, const wxString& title = wxT("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;
private:
DECLARE_DYNAMIC_CLASS(wxDocPrintout)
DECLARE_NO_COPY_CLASS(wxDocPrintout)
};
#endif // wxUSE_PRINTING_ARCHITECTURE
// ----------------------------------------------------------------------------
// File history management
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxFileHistory : public wxObject
{
public:
wxFileHistory(size_t maxFiles = 9, wxWindowID idBase = wxID_FILE1);
~wxFileHistory();
// Operations
virtual void AddFileToHistory(const wxString& file);
virtual void RemoveFileFromHistory(size_t 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(size_t i) const;
virtual size_t GetCount() const { return m_fileHistoryN; }
const wxList& GetMenus() const { return m_fileMenus; }
// deprecated, use GetCount() instead
wxDEPRECATED( size_t GetNoHistoryFiles() const );
protected:
// Last n files
wxChar** m_fileHistory;
// Number of files saved
size_t m_fileHistoryN;
// Menus to maintain (may need several for an MDI app)
wxList m_fileMenus;
// Max files to maintain
size_t m_fileMaxFiles;
private:
// The ID of the first history menu item (Doesn't have to be wxID_FILE1)
wxWindowID m_idBase;
DECLARE_DYNAMIC_CLASS(wxFileHistory)
DECLARE_NO_COPY_CLASS(wxFileHistory)
};
inline size_t wxFileHistory::GetNoHistoryFiles() const
{
return m_fileHistoryN;
}
#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, wxSTD ostream& stream);
bool WXDLLEXPORT wxTransferStreamToFile(wxSTD istream& stream, const wxString& filename);
#else
// For compatibility with existing file formats:
// converts from/to a stream to/from a temporary file.
bool WXDLLEXPORT wxTransferFileToStream(const wxString& filename, wxOutputStream& stream);
bool WXDLLEXPORT wxTransferStreamToFile(wxInputStream& stream, const wxString& filename);
#endif // wxUSE_STD_IOSTREAM
#endif // wxUSE_DOC_VIEW_ARCHITECTURE
#endif // _WX_DOCH__

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

@@ -0,0 +1,49 @@
#ifndef _WX_DRAGIMAG_H_BASE_
#define _WX_DRAGIMAG_H_BASE_
#if wxUSE_DRAGIMAGE
class WXDLLEXPORT wxRect;
class WXDLLEXPORT wxMemoryDC;
class WXDLLEXPORT wxDC;
#if defined(__WXMSW__)
#if defined(__WIN16__) || defined(__WXUNIVERSAL__)
#include "wx/generic/dragimgg.h"
#define wxDragImage wxGenericDragImage
#define sm_classwxDragImage sm_classwxGenericDragImage
#else
#include "wx/msw/dragimag.h"
#endif
#elif defined(__WXMOTIF__)
#include "wx/generic/dragimgg.h"
#define wxDragImage wxGenericDragImage
#define sm_classwxDragImage sm_classwxGenericDragImage
#elif defined(__WXGTK__)
#include "wx/generic/dragimgg.h"
#define wxDragImage wxGenericDragImage
#define sm_classwxDragImage sm_classwxGenericDragImage
#elif defined(__WXX11__)
#include "wx/generic/dragimgg.h"
#define wxDragImage wxGenericDragImage
#define sm_classwxDragImage sm_classwxGenericDragImage
#elif defined(__WXMAC__)
#include "wx/generic/dragimgg.h"
#define wxDragImage wxGenericDragImage
#define sm_classwxDragImage sm_classwxGenericDragImage
#elif defined(__WXPM__)
#include "wx/generic/dragimgg.h"
#define wxDragImage wxGenericDragImage
#define sm_classwxDragImage sm_classwxGenericDragImage
#endif
#endif // wxUSE_DRAGIMAGE
#endif
// _WX_DRAGIMAG_H_BASE_

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

@@ -0,0 +1,628 @@
///////////////////////////////////////////////////////////////////////////////
// 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 licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _DYNARRAY_H
#define _DYNARRAY_H
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "dynarray.h"
#endif
#include "wx/defs.h"
/*
This header defines the dynamic arrays and object arrays (i.e. arrays which
own their elements). Dynamic means that the arrays grow automatically as
needed.
These macros are ugly (especially if you look in the sources ;-), but they
allow us to define "template" classes without actually using templates and so
this works with all compilers (and may be also much faster to compile even
with a compiler which does support templates). The arrays defined with these
macros are type-safe.
Range checking is performed in debug build for both arrays and objarrays but
not in release build - so using an invalid index will just lead to a crash
then.
Note about memory usage: arrays never shrink automatically (although you may
use Shrink() function explicitly), they only grow, so loading 10 millions in
an array only to delete them 2 lines below might be a bad idea if the array
object is not going to be destroyed soon. However, as it does free memory
when destroyed, it is ok if the array is a local variable.
*/
// ----------------------------------------------------------------------------
// 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.
It must return negative value, 0 or positive value if the first item is
less than, equal to or greater than the second one.
*/
extern "C"
{
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
// virtual table), even dtor is *not* 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)
// ----------------------------------------------------------------------------
#define _WX_DECLARE_BASEARRAY(T, name, classexp) \
classexp name \
{ \
public: \
name(); \
name(const name& array); \
name& operator=(const name& src); \
~name(); \
\
void Empty() { m_nCount = 0; } \
void Clear(); \
void Alloc(size_t uiSize); \
void Shrink(); \
\
size_t GetCount() const { return m_nCount; } \
void SetCount(size_t n, T defval = T(0)); \
bool IsEmpty() const { return m_nCount == 0; } \
size_t Count() const { return m_nCount; } \
\
typedef T base_type; \
\
protected: \
T& Item(size_t uiIndex) const \
{ wxASSERT( uiIndex < m_nCount ); return m_pItems[uiIndex]; } \
T& operator[](size_t uiIndex) const { return Item(uiIndex); } \
\
int Index(T lItem, bool bFromEnd = FALSE) const; \
int Index(T lItem, CMPFUNC fnCompare) const; \
size_t IndexForInsert(T lItem, CMPFUNC fnCompare) const; \
void Add(T lItem, size_t nInsert = 1); \
void Add(T lItem, CMPFUNC fnCompare); \
void Insert(T lItem, size_t uiIndex, size_t nInsert = 1); \
void Remove(T lItem); \
void RemoveAt(size_t uiIndex, size_t nRemove = 1); \
\
void Sort(CMPFUNC fnCompare); \
\
private: \
void Grow(size_t nIncrement = 0); \
bool Realloc(size_t nSize); \
\
size_t m_nSize, \
m_nCount; \
\
T *m_pItems; \
}
// ============================================================================
// The private helper macros containing the core of the array classes
// ============================================================================
// Implementation notes:
//
// JACS: Salford C++ doesn't like 'var->operator=' syntax, as in:
// { ((wxBaseArray *)this)->operator=((const wxBaseArray&)src);
// so using a temporary variable instead.
//
// The classes need a (even trivial) ~name() to link under Mac X
//
// _WX_ERROR_REMOVE is needed to resolve the name conflict between the wxT()
// macro and T typedef: we can't use wxT() inside WX_DEFINE_ARRAY!
#define _WX_ERROR_REMOVE wxT("removing inexisting element in wxArray::Remove")
// ----------------------------------------------------------------------------
// _WX_DEFINE_TYPEARRAY: array for simple types
// ----------------------------------------------------------------------------
#define _WX_DEFINE_TYPEARRAY(T, name, base, classexp) \
wxCOMPILE_TIME_ASSERT2(sizeof(T) <= sizeof(base::base_type), \
TypeTooBigToBeStoredIn##base, \
name); \
typedef int (CMPFUNC_CONV *CMPFUNC##T)(T *pItem1, T *pItem2); \
classexp name : public base \
{ \
public: \
name() { } \
~name() { } \
\
name& operator=(const name& src) \
{ base* temp = (base*) this; \
(*temp) = ((const base&)src); \
return *this; } \
\
T& operator[](size_t uiIndex) const \
{ return (T&)(base::Item(uiIndex)); } \
T& Item(size_t uiIndex) const \
{ return (T&)(base::Item(uiIndex)); } \
T& Last() const \
{ return (T&)(base::Item(Count() - 1)); } \
\
int Index(T Item, bool bFromEnd = FALSE) const \
{ return base::Index((base_type)Item, bFromEnd); } \
\
void Add(T Item, size_t nInsert = 1) \
{ base::Add((base_type)Item, nInsert); } \
void Insert(T Item, size_t uiIndex, size_t nInsert = 1) \
{ base::Insert((base_type)Item, uiIndex, nInsert) ; } \
\
void RemoveAt(size_t uiIndex, size_t nRemove = 1) \
{ base::RemoveAt(uiIndex, nRemove); } \
void Remove(T Item) \
{ int iIndex = Index(Item); \
wxCHECK2_MSG( iIndex != wxNOT_FOUND, return, \
_WX_ERROR_REMOVE); \
base::RemoveAt((size_t)iIndex); } \
\
void Sort(CMPFUNC##T fCmp) { base::Sort((CMPFUNC)fCmp); } \
}
// ----------------------------------------------------------------------------
// _WX_DEFINE_SORTED_TYPEARRAY: sorted array for simple data types
// cannot handle types with size greater than pointer because of sorting
// ----------------------------------------------------------------------------
#define _WX_DEFINE_SORTED_TYPEARRAY(T, name, base, defcomp, classexp) \
wxCOMPILE_TIME_ASSERT2(sizeof(T) <= sizeof(void *), \
TypeTooBigToBeStoredInSorted##base, \
name); \
typedef int (CMPFUNC_CONV *SCMPFUNC##T)(T pItem1, T pItem2); \
classexp name : public base \
{ \
public: \
name(SCMPFUNC##T fn defcomp) { m_fnCompare = fn; } \
\
name& operator=(const name& src) \
{ base* temp = (base*) this; \
(*temp) = ((const base&)src); \
m_fnCompare = src.m_fnCompare; \
return *this; } \
\
T& operator[](size_t uiIndex) const \
{ return (T&)(base::Item(uiIndex)); } \
T& Item(size_t uiIndex) const \
{ return (T&)(base::Item(uiIndex)); } \
T& Last() const \
{ return (T&)(base::Item(Count() - 1)); } \
\
int Index(T Item) const \
{ return base::Index(Item, (CMPFUNC)m_fnCompare); } \
\
size_t IndexForInsert(T Item) const \
{ return base::IndexForInsert(Item, (CMPFUNC)m_fnCompare); } \
\
void AddAt(T item, size_t index) \
{ base::Insert(item, index); } \
\
void Add(T Item) \
{ base::Add(Item, (CMPFUNC)m_fnCompare); } \
\
void RemoveAt(size_t uiIndex, size_t nRemove = 1) \
{ base::RemoveAt(uiIndex, nRemove); } \
void Remove(T Item) \
{ int iIndex = Index(Item); \
wxCHECK2_MSG( iIndex != wxNOT_FOUND, return, \
_WX_ERROR_REMOVE ); \
base::RemoveAt((size_t)iIndex); } \
\
private: \
SCMPFUNC##T m_fnCompare; \
}
// ----------------------------------------------------------------------------
// _WX_DECLARE_OBJARRAY: an array for pointers to type T with owning semantics
// ----------------------------------------------------------------------------
#define _WX_DECLARE_OBJARRAY(T, name, base, classexp) \
typedef int (CMPFUNC_CONV *CMPFUNC##T)(T **pItem1, T **pItem2); \
classexp name : public base \
{ \
typedef int (CMPFUNC_CONV *CMPFUNC##base)(void **pItem1, void **pItem2); \
public: \
name() { } \
name(const name& src); \
name& operator=(const name& src); \
\
~name(); \
\
T& operator[](size_t uiIndex) const \
{ return *(T*)base::Item(uiIndex); } \
T& Item(size_t uiIndex) const \
{ return *(T*)base::Item(uiIndex); } \
T& Last() const \
{ return *(T*)(base::Item(Count() - 1)); } \
\
int Index(const T& Item, bool bFromEnd = FALSE) const; \
\
void Add(const T& Item, size_t nInsert = 1); \
void Add(const T* pItem) \
{ base::Add((T*)pItem); } \
\
void Insert(const T& Item, size_t uiIndex, size_t nInsert = 1); \
void Insert(const T* pItem, size_t uiIndex) \
{ base::Insert((T*)pItem, uiIndex); } \
\
void Empty() { DoEmpty(); base::Empty(); } \
void Clear() { DoEmpty(); base::Clear(); } \
\
T* Detach(size_t uiIndex) \
{ T* p = (T*)base::Item(uiIndex); \
base::RemoveAt(uiIndex); return p; } \
void RemoveAt(size_t uiIndex, size_t nRemove = 1); \
\
void Sort(CMPFUNC##T fCmp) { base::Sort((CMPFUNC##base)fCmp); } \
\
private: \
void DoEmpty(); \
void DoCopy(const name& src); \
}
// ============================================================================
// The public macros for declaration and definition of the dynamic arrays
// ============================================================================
// Please note that for each macro WX_FOO_ARRAY we also have
// WX_FOO_EXPORTED_ARRAY and WX_FOO_USER_EXPORTED_ARRAY which are exactly the
// same except that they use an additional __declspec(dllexport) or equivalent
// under Windows if needed.
//
// The first (just EXPORTED) macros do it if wxWindows was compiled as a DLL
// and so must be used used inside the library. The second kind (USER_EXPORTED)
// allow the user code to do it when it wants. This is needed if you have a dll
// that wants to export a wxArray daubed with your own import/export goo.
//
// Finally, you can define the macro below as something special to modify the
// arrays defined by a simple WX_FOO_ARRAY as well. By default is is empty.
#define wxARRAY_DEFAULT_EXPORT
// ----------------------------------------------------------------------------
// WX_DECLARE_BASEARRAY(T, name) declare an array class named "name" containing
// the elements of type T
// ----------------------------------------------------------------------------
#define WX_DECLARE_BASEARRAY(T, name) \
WX_DECLARE_USER_EXPORTED_BASEARRAY(T, name, wxARRAY_DEFAULT_EXPORT)
#define WX_DECLARE_EXPORTED_BASEARRAY(T, name) \
WX_DECLARE_USER_EXPORTED_BASEARRAY(T, name, WXDLLEXPORT)
#define WX_DECLARE_USER_EXPORTED_BASEARRAY(T, name, expmode) \
typedef T _wxArray##name; \
_WX_DECLARE_BASEARRAY(_wxArray##name, name, class expmode)
// ----------------------------------------------------------------------------
// WX_DEFINE_TYPEARRAY(T, name, base) define an array class named "name" deriving
// from class "base" containing the elements of type T
//
// Note that the class defined has only inline function and doesn't take any
// space at all so there is no size penalty for defining multiple array classes
// ----------------------------------------------------------------------------
#define WX_DEFINE_TYPEARRAY(T, name, base) \
WX_DEFINE_USER_EXPORTED_TYPEARRAY(T, name, base, wxARRAY_DEFAULT_EXPORT)
#define WX_DEFINE_EXPORTED_TYPEARRAY(T, name, base) \
WX_DEFINE_USER_EXPORTED_TYPEARRAY(T, name, base, WXDLLEXPORT)
#define WX_DEFINE_USER_EXPORTED_TYPEARRAY(T, name, base, expmode) \
typedef T _wxArray##name; \
_WX_DEFINE_TYPEARRAY(_wxArray##name, name, base, class expmode)
// ----------------------------------------------------------------------------
// WX_DEFINE_SORTED_TYPEARRAY: 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.
// 5) there is no Insert() method because you can't insert an item into the
// given position in a sorted array but there is IndexForInsert()/AddAt()
// pair which may be used to optimize a common operation of "insert only if
// not found"
//
// Note that you have to specify the comparison function when creating the
// objects of this array type. If, as in 99% of cases, the comparison function
// is the same for all objects of a class, WX_DEFINE_SORTED_TYPEARRAY_CMP below
// is more convenient.
//
// Summary: use this class when the speed of Index() function is important, use
// the normal arrays otherwise.
// ----------------------------------------------------------------------------
#define wxARRAY_EMPTY_CMP
#define WX_DEFINE_SORTED_TYPEARRAY(T, name, base) \
WX_DEFINE_SORTED_USER_EXPORTED_TYPEARRAY(T, name, base, \
wxARRAY_DEFAULT_EXPORT)
#define WX_DEFINE_SORTED_EXPORTED_TYPEARRAY(T, name, base) \
WX_DEFINE_SORTED_USER_EXPORTED_TYPEARRAY(T, name, base, WXDLLEXPORT)
#define WX_DEFINE_SORTED_USER_EXPORTED_TYPEARRAY(T, name, base, expmode) \
typedef T _wxArray##name; \
_WX_DEFINE_SORTED_TYPEARRAY(_wxArray##name, name, base, \
wxARRAY_EMPTY_CMP, class expmode)
// ----------------------------------------------------------------------------
// WX_DEFINE_SORTED_TYPEARRAY_CMP: exactly the same as above but the comparison
// function is provided by this macro and the objects of this class have a
// default constructor which just uses it.
//
// The arguments are: the element type, the comparison function and the array
// name
//
// NB: this is, of course, how WX_DEFINE_SORTED_TYPEARRAY() should have worked
// from the very beginning - unfortunately I didn't think about this earlier
// ----------------------------------------------------------------------------
#define WX_DEFINE_SORTED_TYPEARRAY_CMP(T, cmpfunc, name, base) \
WX_DEFINE_SORTED_USER_EXPORTED_TYPEARRAY_CMP(T, cmpfunc, name, base, \
wxARRAY_DEFAULT_EXPORT)
#define WX_DEFINE_SORTED_EXPORTED_TYPEARRAY_CMP(T, cmpfunc, name, base) \
WX_DEFINE_SORTED_USER_EXPORTED_TYPEARRAY_CMP(T, cmpfunc, name, base, \
WXDLLEXPORT)
#define WX_DEFINE_SORTED_USER_EXPORTED_TYPEARRAY_CMP(T, cmpfunc, name, base, \
expmode) \
typedef T _wxArray##name; \
_WX_DEFINE_SORTED_TYPEARRAY(_wxArray##name, name, base, = cmpfunc, \
class expmode)
// ----------------------------------------------------------------------------
// WX_DECLARE_OBJARRAY(T, name): this macro generates a new array class
// named "name" which owns the objects of type T 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.
//
// Don't use this for simple types such as "int" or "long"!
//
// Note on Add/Insert functions:
// 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
// 2) function(T&) will create a copy of the object and work with it
//
// Also:
// 1) Remove() will delete the object after removing it from the array
// 2) Detach() just removes the object from the array (returning pointer to it)
//
// NB1: Base type T should have an accessible copy ctor if Add(T&) is used
// NB2: Never ever cast a array to it's base type: as dtor is not virtual
// and so you risk having at least the memory leaks and probably worse
//
// Some functions of this class are not inline, so it takes some space to
// define new class from this template even if you don't use it - which is not
// the case for the simple (non-object) array classes
//
// To use an objarray class you must
// #include "dynarray.h"
// WX_DECLARE_OBJARRAY(element_type, list_class_name)
// #include "arrimpl.cpp"
// WX_DEFINE_OBJARRAY(list_class_name) // name must be the same as above!
//
// This is necessary because at the moment of DEFINE_OBJARRAY class parsing the
// 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.
// ----------------------------------------------------------------------------
#define WX_DECLARE_OBJARRAY(T, name) \
WX_DECLARE_USER_EXPORTED_OBJARRAY(T, name, wxARRAY_DEFAULT_EXPORT)
#define WX_DECLARE_EXPORTED_OBJARRAY(T, name) \
WX_DECLARE_USER_EXPORTED_OBJARRAY(T, name, WXDLLEXPORT)
#define WX_DECLARE_USER_EXPORTED_OBJARRAY(T, name, expmode) \
typedef T _wxObjArray##name; \
_WX_DECLARE_OBJARRAY(_wxObjArray##name, name, wxArrayPtrVoid, class expmode)
// WX_DEFINE_OBJARRAY is going to be redefined when arrimpl.cpp is included,
// try to provoke a human-understandable error if it used incorrectly.
//
// there is no real need for 3 different macros in the DEFINE case but do it
// anyhow for consistency
#define WX_DEFINE_OBJARRAY(name) DidYouIncludeArrimplCpp
#define WX_DEFINE_EXPORTED_OBJARRAY(name) WX_DEFINE_OBJARRAY(name)
#define WX_DEFINE_USER_EXPORTED_OBJARRAY(name) WX_DEFINE_OBJARRAY(name)
// ----------------------------------------------------------------------------
// Some commonly used predefined base arrays
// ----------------------------------------------------------------------------
WX_DECLARE_EXPORTED_BASEARRAY(const void *, wxBaseArrayPtrVoid);
WX_DECLARE_EXPORTED_BASEARRAY(short, wxBaseArrayShort);
WX_DECLARE_EXPORTED_BASEARRAY(int, wxBaseArrayInt);
WX_DECLARE_EXPORTED_BASEARRAY(long, wxBaseArrayLong);
WX_DECLARE_EXPORTED_BASEARRAY(double, wxBaseArrayDouble);
// ----------------------------------------------------------------------------
// Convenience macros to define arrays from base arrays
// ----------------------------------------------------------------------------
#define WX_DEFINE_ARRAY(T, name) \
WX_DEFINE_TYPEARRAY(T, name, wxBaseArrayPtrVoid)
#define WX_DEFINE_EXPORTED_ARRAY(T, name) \
WX_DEFINE_EXPORTED_TYPEARRAY(T, name, wxBaseArrayPtrVoid)
#define WX_DEFINE_USER_EXPORTED_ARRAY(T, name, expmode) \
WX_DEFINE_USER_EXPORTED_TYPEARRAY(T, name, wxBaseArrayPtrVoid, expmode)
#define WX_DEFINE_ARRAY_SHORT(T, name) \
WX_DEFINE_TYPEARRAY(T, name, wxBaseArrayShort)
#define WX_DEFINE_EXPORTED_ARRAY_SHORT(T, name) \
WX_DEFINE_EXPORTED_TYPEARRAY(T, name, wxBaseArrayShort)
#define WX_DEFINE_USER_EXPORTED_ARRAY_SHORT(T, name, expmode) \
WX_DEFINE_USER_EXPORTED_TYPEARRAY(T, name, wxBaseArrayShort, expmode)
#define WX_DEFINE_ARRAY_INT(T, name) \
WX_DEFINE_TYPEARRAY(T, name, wxBaseArrayInt)
#define WX_DEFINE_EXPORTED_ARRAY_INT(T, name) \
WX_DEFINE_EXPORTED_TYPEARRAY(T, name, wxBaseArrayInt)
#define WX_DEFINE_USER_EXPORTED_ARRAY_INT(T, name, expmode) \
WX_DEFINE_USER_EXPORTED_TYPEARRAY(T, name, wxBaseArrayInt, expmode)
#define WX_DEFINE_ARRAY_LONG(T, name) \
WX_DEFINE_TYPEARRAY(T, name, wxBaseArrayLong)
#define WX_DEFINE_EXPORTED_ARRAY_LONG(T, name) \
WX_DEFINE_EXPORTED_TYPEARRAY(T, name, wxBaseArrayLong)
#define WX_DEFINE_USER_EXPORTED_ARRAY_LONG(T, name, expmode) \
WX_DEFINE_USER_EXPORTED_TYPEARRAY(T, name, wxBaseArrayLong, expmode)
#define WX_DEFINE_ARRAY_DOUBLE(T, name) \
WX_DEFINE_TYPEARRAY(T, name, wxBaseArrayDouble)
#define WX_DEFINE_EXPORTED_ARRAY_DOUBLE(T, name) \
WX_DEFINE_EXPORTED_TYPEARRAY(T, name, wxBaseArrayDouble)
#define WX_DEFINE_USER_EXPORTED_ARRAY_DOUBLE(T, name, expmode) \
WX_DEFINE_USER_EXPORTED_TYPEARRAY(T, name, wxBaseArrayDouble, expmode)
// ----------------------------------------------------------------------------
// Convenience macros to define sorted arrays from base arrays
// ----------------------------------------------------------------------------
#define WX_DEFINE_SORTED_ARRAY(T, name) \
WX_DEFINE_SORTED_TYPEARRAY(T, name, wxBaseArrayPtrVoid)
#define WX_DEFINE_SORTED_EXPORTED_ARRAY(T, name) \
WX_DEFINE_SORTED_EXPORTED_TYPEARRAY(T, name, wxBaseArrayPtrVoid)
#define WX_DEFINE_SORTED_USER_EXPORTED_ARRAY(T, name, expmode) \
WX_DEFINE_SORTED_USER_EXPORTED_TYPEARRAY(T, name, wxBaseArrayPtrVoid, expmode)
#define WX_DEFINE_SORTED_ARRAY_SHORT(T, name) \
WX_DEFINE_SORTED_TYPEARRAY(T, name, wxBaseArrayShort)
#define WX_DEFINE_SORTED_EXPORTED_ARRAY_SHORT(T, name) \
WX_DEFINE_SORTED_EXPORTED_TYPEARRAY(T, name, wxBaseArrayShort)
#define WX_DEFINE_SORTED_USER_EXPORTED_ARRAY_SHORT(T, name, expmode) \
WX_DEFINE_SORTED_USER_EXPORTED_TYPEARRAY(T, name, wxBaseArrayShort, expmode)
#define WX_DEFINE_SORTED_ARRAY_INT(T, name) \
WX_DEFINE_SORTED_TYPEARRAY(T, name, wxBaseArrayInt)
#define WX_DEFINE_SORTED_EXPORTED_ARRAY_INT(T, name) \
WX_DEFINE_SORTED_EXPORTED_TYPEARRAY(T, name, wxBaseArrayInt)
#define WX_DEFINE_SORTED_USER_EXPORTED_ARRAY_INT(T, name, expmode) \
WX_DEFINE_SORTED_USER_EXPORTED_TYPEARRAY(T, name, wxBaseArrayInt, expmode)
#define WX_DEFINE_SORTED_ARRAY_LONG(T, name) \
WX_DEFINE_SORTED_TYPEARRAY(T, name, wxBaseArrayLong)
#define WX_DEFINE_SORTED_EXPORTED_ARRAY_LONG(T, name) \
WX_DEFINE_SORTED_EXPORTED_TYPEARRAY(T, name, wxBaseArrayLong)
#define WX_DEFINE_SORTED_USER_EXPORTED_ARRAY_LONG(T, name, expmode) \
WX_DEFINE_SORTED_USER_EXPORTED_TYPEARRAY(T, name, wxBaseArrayLong, expmode)
// ----------------------------------------------------------------------------
// Convenience macros to define sorted arrays from base arrays
// ----------------------------------------------------------------------------
#define WX_DEFINE_SORTED_ARRAY_CMP(T, cmpfunc, name) \
WX_DEFINE_SORTED_TYPEARRAY_CMP(T, cmpfunc, name, wxBaseArrayPtrVoid)
#define WX_DEFINE_SORTED_EXPORTED_ARRAY_CMP(T, cmpfunc, name) \
WX_DEFINE_SORTED_EXPORTED_TYPEARRAY_CMP(T, cmpfunc, name, wxBaseArrayPtrVoid)
#define WX_DEFINE_SORTED_USER_EXPORTED_ARRAY_CMP(T, cmpfunc, \
name, expmode) \
WX_DEFINE_SORTED_USER_EXPORTED_TYPEARRAY_CMP(T, cmpfunc, name, \
wxBaseArrayPtrVoid, expmode)
#define WX_DEFINE_SORTED_ARRAY_CMP_SHORT(T, cmpfunc, name) \
WX_DEFINE_SORTED_TYPEARRAY_CMP(T, cmpfunc, name, wxBaseArrayShort)
#define WX_DEFINE_SORTED_EXPORTED_ARRAY_CMP_SHORT(T, cmpfunc, name) \
WX_DEFINE_SORTED_EXPORTED_TYPEARRAY_CMP(T, cmpfunc, name, wxBaseArrayShort)
#define WX_DEFINE_SORTED_USER_EXPORTED_ARRAY_CMP_SHORT(T, cmpfunc, \
name, expmode) \
WX_DEFINE_SORTED_USER_EXPORTED_TYPEARRAY_CMP(T, cmpfunc, name, \
wxBaseArrayShort, expmode)
#define WX_DEFINE_SORTED_ARRAY_CMP_INT(T, cmpfunc, name) \
WX_DEFINE_SORTED_TYPEARRAY_CMP(T, cmpfunc, name, wxBaseArrayInt)
#define WX_DEFINE_SORTED_EXPORTED_ARRAY_CMP_INT(T, cmpfunc, name) \
WX_DEFINE_SORTED_EXPORTED_TYPEARRAY_CMP(T, cmpfunc, name, wxBaseArrayInt)
#define WX_DEFINE_SORTED_USER_EXPORTED_ARRAY_CMP_INT(T, cmpfunc, \
name, expmode) \
WX_DEFINE_SORTED_USER_EXPORTED_TYPEARRAY_CMP(T, cmpfunc, name, \
wxBaseArrayInt, expmode)
#define WX_DEFINE_SORTED_ARRAY_CMP_LONG(T, cmpfunc, name) \
WX_DEFINE_SORTED_TYPEARRAY_CMP(T, cmpfunc, name, wxBaseArrayLong)
#define WX_DEFINE_SORTED_EXPORTED_ARRAY_CMP_LONG(T, cmpfunc, name) \
WX_DEFINE_SORTED_EXPORTED_TYPEARRAY_CMP(T, cmpfunc, name, wxBaseArrayLong)
#define WX_DEFINE_SORTED_USER_EXPORTED_ARRAY_CMP_LONG(T, cmpfunc, \
name, expmode) \
WX_DEFINE_SORTED_USER_EXPORTED_TYPEARRAY_CMP(T, cmpfunc, name, \
wxBaseArrayLong, expmode)
// ----------------------------------------------------------------------------
// Some commonly used predefined arrays
// ----------------------------------------------------------------------------
WX_DEFINE_EXPORTED_ARRAY_SHORT (short, wxArrayShort);
WX_DEFINE_EXPORTED_ARRAY_INT (int, wxArrayInt);
WX_DEFINE_EXPORTED_ARRAY_LONG (long, wxArrayLong);
WX_DEFINE_EXPORTED_ARRAY (void *, wxArrayPtrVoid);
// -----------------------------------------------------------------------------
// convenience macros
// -----------------------------------------------------------------------------
// append all element of one array to another one
#define WX_APPEND_ARRAY(array, other) \
{ \
size_t count = (other).Count(); \
for ( size_t n = 0; n < count; n++ ) \
{ \
(array).Add((other)[n]); \
} \
}
// 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

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

@@ -0,0 +1,246 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/dynlib.h
// Purpose: Dynamic library loading classes
// Author: Guilhem Lavaux, Vadim Zeitlin, Vaclav Slavik
// Modified by:
// Created: 20/07/98
// RCS-ID: $Id$
// Copyright: (c) 1998 Guilhem Lavaux
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DYNLIB_H__
#define _WX_DYNLIB_H__
#if defined(__GNUG__) && !defined(__APPLE__)
# pragma interface "dynlib.h"
#endif
#include "wx/setup.h"
#if wxUSE_DYNAMIC_LOADER
#include "wx/dynload.h" // Use the new (version of) wxDynamicLibrary instead
#elif 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
// Note: WXPM/EMX has to be tested first, since we want to use
// native version, even if configure detected presence of DLOPEN.
#if defined(__WXPM__) || defined(__EMX__)
# define INCL_DOS
# include <os2.h>
typedef HMODULE wxDllType;
#elif 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> // needed to get HMODULE
typedef HMODULE wxDllType;
#elif defined(__DARWIN__)
typedef void *wxDllType;
#elif defined(__WXMAC__)
typedef void *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: low level DLL functions, use wxDynamicLibrary in your code
// ----------------------------------------------------------------------------
/*
wxDllLoader is a class providing an interface similar to unix's dlopen().
It is used by wxDynamicLibrary wxLibrary 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 WXDLLEXPORT wxDllLoader
{
public:
/*
This function loads the shared library libname into memory.
libname may be either the full path to the file or just the filename in
which case the library is searched for in all standard locations
(use GetDllExt() to construct the filename)
if success pointer is not NULL, it will be filled with TRUE if everything
went ok and FALSE otherwise
*/
static wxDllType LoadLibrary(const wxString& libname, bool *success = 0);
/*
This function unloads the shared library previously loaded with
LoadLibrary
*/
static void UnloadLibrary(wxDllType dll);
/*
This function returns a valid handle for the main program
itself or NULL if back linking is not supported by the current platform
(e.g. Win32).
*/
static wxDllType GetProgramHandle();
/*
This function resolves a symbol in a loaded DLL, such as a
variable or function name.
dllHandle Handle of the DLL, as returned by LoadDll().
name Name of the symbol.
Returns the pointer to the symbol or NULL on error.
*/
static void *GetSymbol(wxDllType dllHandle,
const wxString &name,
bool *success = NULL);
// return the standard DLL extension (with leading dot) for this platform
static const wxString &GetDllExt() { return ms_dllext; }
private:
// forbid construction of objects
wxDllLoader();
static const wxString ms_dllext;
};
// ----------------------------------------------------------------------------
// wxDynamicLibrary - friendly interface to wxDllLoader
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxDynamicLibrary
{
public:
// ctors
wxDynamicLibrary() { m_library = 0; }
wxDynamicLibrary(const wxString& name) { Load(name); }
// return TRUE if the library was loaded successfully
bool IsLoaded() const { return m_library != 0; }
operator bool() const { return IsLoaded(); }
// load the library with the given name (full or not), return TRUE on
// success
bool Load(const wxString& name)
{
m_library = wxDllLoader::LoadLibrary(name);
return IsLoaded();
}
// unload the library, also done automatically in dtor
void Unload()
{
if ( IsLoaded() )
wxDllLoader::UnloadLibrary(m_library);
}
// load a symbol from the library, return NULL if an error occured or
// symbol wasn't found
void *GetSymbol(const wxString& name) const
{
wxCHECK_MSG( IsLoaded(), NULL,
_T("can't load symbol from unloaded library") );
return wxDllLoader::GetSymbol(m_library, name);
}
// unload the library
//
// NB: dtor is not virtual, don't derive from this class
~wxDynamicLibrary() { Unload(); }
private:
// the handle to DLL or NULL
wxDllType m_library;
// no copy ctor/assignment operators (or we'd try to unload the library
// twice)
DECLARE_NO_COPY_CLASS(wxDynamicLibrary)
};
// ----------------------------------------------------------------------------
// wxLibrary
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxLibrary : public wxObject
{
public:
wxLibrary(wxDllType handle);
virtual ~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;
public:
wxHashTable classTable;
};
// ----------------------------------------------------------------------------
// wxLibraries
// ----------------------------------------------------------------------------
class WXDLLEXPORT 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 WXDLLEXPORT_DATA(wxLibraries) wxTheLibraries;
// ----------------------------------------------------------------------------
// Interesting defines
// ----------------------------------------------------------------------------
#define WXDLL_ENTRY_FUNCTION() \
extern "C" WXEXPORT const wxClassInfo *wxGetClassFirst(); \
const wxClassInfo *wxGetClassFirst() { \
return wxClassInfo::GetFirst(); \
}
#endif // wxUSE_DYNLIB_CLASS
#endif // _WX_DYNLIB_H__

332
include/wx/dynload.h Normal file
View File

@@ -0,0 +1,332 @@
/////////////////////////////////////////////////////////////////////////////
// Name: dynload.h
// Purpose: Dynamic loading framework
// Author: Ron Lee, David Falkinder, Vadim Zeitlin and a cast of 1000's
// (derived in part from dynlib.cpp (c) 1998 Guilhem Lavaux)
// Modified by:
// Created: 03/12/01
// RCS-ID: $Id$
// Copyright: (c) 2001 Ron Lee <ron@debian.org>
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DYNAMICLOADER_H__
#define _WX_DYNAMICLOADER_H__
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "dynload.h"
#endif
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------
#include "wx/defs.h"
#if wxUSE_DYNAMIC_LOADER
#include "wx/hashmap.h"
#include "wx/module.h"
// FIXME: can this go in private.h or something too??
#if defined(__WXPM__) || defined(__EMX__)
#define INCL_DOS
#include <os2.h>
#endif
#ifdef __WXMSW__
#include "wx/msw/private.h"
#endif
class WXDLLEXPORT wxPluginLibrary;
WX_DECLARE_EXPORTED_STRING_HASH_MAP(wxPluginLibrary *, wxDLManifest);
typedef wxDLManifest wxDLImports;
// ----------------------------------------------------------------------------
// conditional compilation
// ----------------------------------------------------------------------------
// Note: WXPM/EMX has to be tested first, since we want to use
// native version, even if configure detected presence of DLOPEN.
#if defined(__WXPM__) || defined(__EMX__) || defined(__WINDOWS__)
typedef HMODULE wxDllType;
#elif defined(HAVE_DLOPEN)
#include <dlfcn.h>
typedef void *wxDllType;
#elif defined(HAVE_SHL_LOAD)
#include <dl.h>
typedef shl_t wxDllType;
#elif defined(__DARWIN__)
typedef void *wxDllType;
#elif defined(__WXMAC__)
typedef CFragConnectionID wxDllType;
#else
#error "Dynamic Loading classes can't be compiled on this platform, sorry."
#endif
// ---------------------------------------------------------------------------
// wxDynamicLibrary
// ---------------------------------------------------------------------------
//FIXME: This class isn't really common at all, it should be moved
// into platform dependent files.
// NOTE: this class is (deliberately) not virtual, do not attempt
// to use it polymorphically.
enum wxDLFlags
{
wxDL_LAZY = 0x00000001, // resolve undefined symbols at first use
wxDL_NOW = 0x00000002, // resolve undefined symbols on load
wxDL_GLOBAL = 0x00000004, // export extern symbols to subsequently
// loaded libs.
wxDL_VERBATIM = 0x00000008, // Attempt to load the supplied library
// name without appending the usual dll
// filename extension.
wxDL_NOSHARE = 0x00000010, // load new DLL, don't reuse already loaded
// FIXME: why? (VZ)
#ifdef __osf__
wxDL_DEFAULT = wxDL_LAZY
#else
wxDL_DEFAULT = wxDL_LAZY | wxDL_GLOBAL
#endif
};
class WXDLLEXPORT wxDynamicLibrary
{
public:
// return a valid handle for the main program itself or NULL if
// back linking is not supported by the current platform (e.g. Win32)
static wxDllType GetProgramHandle();
// return the platform standard DLL extension (with leading dot)
static const wxChar *GetDllExt() { return ms_dllext; }
wxDynamicLibrary() : m_handle(0) {}
wxDynamicLibrary(wxString libname, int flags = wxDL_DEFAULT)
: m_handle(0)
{
Load(libname, flags);
}
~wxDynamicLibrary() { Unload(); }
// return TRUE if the library was loaded successfully
bool IsLoaded() const { return m_handle != 0; }
// load the library with the given name
// (full or not), return TRUE on success
bool Load(wxString libname, int flags = wxDL_DEFAULT);
// detach the library object from its handle, i.e. prevent the object
// from unloading the library in its dtor -- the caller is now
// responsible for doing this
wxDllType Detach() { wxDllType h = m_handle; m_handle = 0; return h; }
// unload the library, also done automatically in dtor
void Unload();
// Return the raw handle from dlopen and friends.
wxDllType GetLibHandle() const { return m_handle; }
// resolve a symbol in a loaded DLL, such as a variable or function
// name. 'name' is the (possibly mangled) name of the symbol.
// (use extern "C" to export unmangled names)
//
// Since it is perfectly valid for the returned symbol to actually be
// NULL, that is not always indication of an error. Pass and test the
// parameter 'success' for a true indication of success or failure to
// load the symbol.
//
// Returns a pointer to the symbol on success, or NULL if an error
// occurred or the symbol wasn't found.
void *GetSymbol(const wxString& name, bool *success = 0) const;
#if WXWIN_COMPATIBILITY_2_2
operator bool() const { return IsLoaded(); }
#endif
protected:
// Platform specific shared lib suffix.
static const wxChar *ms_dllext;
// the handle to DLL or NULL
wxDllType m_handle;
// no copy ctor/assignment operators
// or we'd try to unload the library twice
DECLARE_NO_COPY_CLASS(wxDynamicLibrary)
};
// ---------------------------------------------------------------------------
// wxPluginLibrary
// ---------------------------------------------------------------------------
// NOTE: Do not attempt to use a base class pointer to this class.
// wxDL is not virtual and we deliberately hide some of it's
// methods here.
//
// Unless you know exacty why you need to, you probably shouldn't
// instantiate this class directly anyway, use wxPluginManager
// instead.
class WXDLLEXPORT wxPluginLibrary : public wxDynamicLibrary
{
public:
static wxDLImports* ms_classes; // Static hash of all imported classes.
wxPluginLibrary( const wxString &libname, int flags = wxDL_DEFAULT );
~wxPluginLibrary();
wxPluginLibrary *RefLib();
bool UnrefLib();
// These two are called by the PluginSentinel on (PLUGGABLE) object
// creation/destruction. There is usually no reason for the user to
// call them directly. We have to separate this from the link count,
// since the two are not interchangeable.
// FIXME: for even better debugging PluginSentinel should register
// the name of the class created too, then we can state
// exactly which object was not destroyed which may be
// difficult to find otherwise. Also this code should
// probably only be active in DEBUG mode, but let's just
// get it right first.
void RefObj() { ++m_objcount; }
void UnrefObj()
{
wxASSERT_MSG( m_objcount > 0, _T("Too many objects deleted??") );
--m_objcount;
}
// Override/hide some base class methods
bool IsLoaded() const { return m_linkcount > 0; }
void Unload() { UnrefLib(); }
private:
wxClassInfo *m_before; // sm_first before loading this lib
wxClassInfo *m_after; // ..and after.
size_t m_linkcount; // Ref count of library link calls
size_t m_objcount; // ..and (pluggable) object instantiations.
wxModuleList m_wxmodules; // any wxModules that we initialised.
void UpdateClassInfo(); // Update the wxClassInfo table
void RestoreClassInfo(); // Restore the original wxClassInfo state.
void RegisterModules(); // Init any wxModules in the lib.
void UnregisterModules(); // Cleanup any wxModules we installed.
DECLARE_NO_COPY_CLASS(wxPluginLibrary)
};
class WXDLLEXPORT wxPluginManager
{
public:
// Static accessors.
static wxPluginLibrary *LoadLibrary( const wxString &libname,
int flags = wxDL_DEFAULT );
static bool UnloadLibrary(const wxString &libname);
// This is used by wxDllLoader. It's wrapped in the compatibility
// macro because it's of arguable use outside of that.
#if WXWIN_COMPATIBILITY_2_2
static wxPluginLibrary *GetObjectFromHandle(wxDllType handle);
#endif
// Instance methods.
wxPluginManager() : m_entry(NULL) {};
wxPluginManager(const wxString &libname, int flags = wxDL_DEFAULT)
{
Load(libname, flags);
}
~wxPluginManager() { Unload(); }
bool Load(const wxString &libname, int flags = wxDL_DEFAULT);
void Unload();
bool IsLoaded() const { return m_entry && m_entry->IsLoaded(); }
void *GetSymbol(const wxString &symbol, bool *success = 0)
{
return m_entry->GetSymbol( symbol, success );
}
static void CreateManifest() { ms_manifest = new wxDLManifest(wxKEY_STRING); }
static void ClearManifest() { delete ms_manifest; ms_manifest = NULL; }
private:
// return the pointer to the entry for the library with given name in
// ms_manifest or NULL if none
static wxPluginLibrary *FindByName(const wxString& name)
{
const wxDLManifest::iterator i = ms_manifest->find(name);
return i == ms_manifest->end() ? NULL : i->second;
}
static wxDLManifest* ms_manifest; // Static hash of loaded libs.
wxPluginLibrary* m_entry; // Cache our entry in the manifest.
// We could allow this class to be copied if we really
// wanted to, but not without modification.
DECLARE_NO_COPY_CLASS(wxPluginManager)
};
// ---------------------------------------------------------------------------
// wxDllLoader
// ---------------------------------------------------------------------------
// Cross platform wrapper for dlopen and friends.
// There are no instances of this class, it simply
// serves as a namespace for its static member functions.
#if WXWIN_COMPATIBILITY_2_2
class WXDLLEXPORT wxDllLoader
{
public:
static wxDllType LoadLibrary(const wxString& name, bool *success = NULL);
static void UnloadLibrary(wxDllType dll);
static wxDllType GetProgramHandle() { return wxDynamicLibrary::GetProgramHandle(); }
static void *GetSymbol(wxDllType dllHandle, const wxString &name, bool *success = 0);
static wxString GetDllExt() { return wxDynamicLibrary::GetDllExt(); }
private:
wxDllLoader(); // forbid construction of objects
};
#endif
#endif // wxUSE_DYNAMIC_LOADER
#endif // _WX_DYNAMICLOADER_H__

75
include/wx/effects.h Normal file
View File

@@ -0,0 +1,75 @@
/////////////////////////////////////////////////////////////////////////////
// Name: effects.h
// Purpose: wxEffects class
// Draws 3D effects.
// Author: Julian Smart et al
// Modified by:
// Created: 25/4/2000
// RCS-ID: $Id$
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "effects.h"
#endif
#ifndef _WX_EFFECTS_H_
#define _WX_EFFECTS_H_
/*
* wxEffects: various 3D effects
*/
class WXDLLEXPORT wxEffects: public wxObject
{
DECLARE_CLASS(wxEffects)
public:
// Assume system colours
wxEffects() ;
// Going from lightest to darkest
wxEffects(const wxColour& highlightColour, const wxColour& lightShadow,
const wxColour& faceColour, const wxColour& mediumShadow,
const wxColour& darkShadow) ;
// Accessors
wxColour GetHighlightColour() const { return m_highlightColour; }
wxColour GetLightShadow() const { return m_lightShadow; }
wxColour GetFaceColour() const { return m_faceColour; }
wxColour GetMediumShadow() const { return m_mediumShadow; }
wxColour GetDarkShadow() const { return m_darkShadow; }
void SetHighlightColour(const wxColour& c) { m_highlightColour = c; }
void SetLightShadow(const wxColour& c) { m_lightShadow = c; }
void SetFaceColour(const wxColour& c) { m_faceColour = c; }
void SetMediumShadow(const wxColour& c) { m_mediumShadow = c; }
void SetDarkShadow(const wxColour& c) { m_darkShadow = c; }
void Set(const wxColour& highlightColour, const wxColour& lightShadow,
const wxColour& faceColour, const wxColour& mediumShadow,
const wxColour& darkShadow)
{
SetHighlightColour(highlightColour);
SetLightShadow(lightShadow);
SetFaceColour(faceColour);
SetMediumShadow(mediumShadow);
SetDarkShadow(darkShadow);
}
// Draw a sunken edge
void DrawSunkenEdge(wxDC& dc, const wxRect& rect, int borderSize = 1);
// Tile a bitmap
bool TileBitmap(const wxRect& rect, wxDC& dc, wxBitmap& bitmap);
protected:
wxColour m_highlightColour; // Usually white
wxColour m_lightShadow; // Usually light grey
wxColour m_faceColour; // Usually grey
wxColour m_mediumShadow; // Usually dark grey
wxColour m_darkShadow; // Usually black
};
#endif

156
include/wx/encconv.h Normal file
View File

@@ -0,0 +1,156 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/encconv.h
// Purpose: wxEncodingConverter class for converting between different
// font encodings
// Author: Vaclav Slavik
// Copyright: (c) 1999 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_ENCCONV_H_
#define _WX_ENCCONV_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "encconv.h"
#endif
#include "wx/defs.h"
#if wxUSE_FONTMAP
#include "wx/object.h"
#include "wx/fontenc.h"
#include "wx/dynarray.h"
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
enum
{
wxCONVERT_STRICT,
wxCONVERT_SUBSTITUTE
};
enum
{
wxPLATFORM_CURRENT = -1,
wxPLATFORM_UNIX = 0,
wxPLATFORM_WINDOWS,
wxPLATFORM_OS2,
wxPLATFORM_MAC
};
// ----------------------------------------------------------------------------
// types
// ----------------------------------------------------------------------------
WX_DEFINE_ARRAY_INT(wxFontEncoding, wxFontEncodingArray);
//--------------------------------------------------------------------------------
// wxEncodingConverter
// This class is capable of converting strings between any two
// 8bit encodings/charsets. It can also convert from/to Unicode
//--------------------------------------------------------------------------------
class WXDLLEXPORT wxEncodingConverter : public wxObject
{
public:
wxEncodingConverter();
~wxEncodingConverter() { if (m_Table) delete[] m_Table; }
// Initialize conversion. Both output or input encoding may
// be wxFONTENCODING_UNICODE, but only if wxUSE_WCHAR_T is set to 1.
//
// All subsequent calls to Convert() will interpret it's argument
// as a string in input_enc encoding and will output string in
// output_enc encoding.
//
// You must call this method before calling Convert. You may call
// it more than once in order to switch to another conversion
//
// Method affects behaviour of Convert() in case input character
// cannot be converted because it does not exist in output encoding:
// wxCONVERT_STRICT --
// follow behaviour of GNU Recode - just copy unconvertable
// characters to output and don't change them (it's integer
// value will stay the same)
// wxCONVERT_SUBSTITUTE --
// try some (lossy) substitutions - e.g. replace
// unconvertable latin capitals with acute by ordinary
// capitals, replace en-dash or em-dash by '-' etc.
// both modes gurantee that output string will have same length
// as input string
//
// Returns FALSE if given conversion is impossible, TRUE otherwise
// (conversion may be impossible either if you try to convert
// to Unicode with non-Unicode build of wxWindows or if input
// or output encoding is not supported.)
bool Init(wxFontEncoding input_enc, wxFontEncoding output_enc, int method = wxCONVERT_STRICT);
// Convert input string according to settings passed to Init.
// Note that you must call Init before using Convert!
void Convert(const char* input, char* output);
void Convert(char* str) { Convert(str, str); }
wxString Convert(const wxString& input);
#if wxUSE_WCHAR_T
void Convert(const char* input, wchar_t* output);
void Convert(const wchar_t* input, char* output);
void Convert(const wchar_t* input, wchar_t* output);
void Convert(wchar_t* str) { Convert(str, str); }
#endif
// Return equivalent(s) for given font that are used
// under given platform. wxPLATFORM_CURRENT means the plaform
// this binary was compiled for
//
// Examples:
// current platform enc returned value
// -----------------------------------------------------
// unix CP1250 {ISO8859_2}
// unix ISO8859_2 {}
// windows ISO8859_2 {CP1250}
//
// Equivalence is defined in terms of convertibility:
// 2 encodings are equivalent if you can convert text between
// then without loosing information (it may - and will - happen
// that you loose special chars like quotation marks or em-dashes
// but you shouldn't loose any diacritics and language-specific
// characters when converting between equivalent encodings).
//
// Convert() method is not limited to converting between
// equivalent encodings, it can convert between arbitrary
// two encodings!
//
// Remember that this function does _NOT_ check for presence of
// fonts in system. It only tells you what are most suitable
// encodings. (It usually returns only one encoding)
//
// Note that argument enc itself may be present in returned array!
// (so that you can -- as a side effect -- detect whether the
// encoding is native for this platform or not)
static wxFontEncodingArray GetPlatformEquivalents(wxFontEncoding enc, int platform = wxPLATFORM_CURRENT);
// Similar to GetPlatformEquivalent, but this one will return ALL
// equivalent encodings, regardless the platform, including itself.
static wxFontEncodingArray GetAllEquivalents(wxFontEncoding enc);
private:
#if wxUSE_WCHAR_T
wchar_t *m_Table;
#else
char *m_Table;
#endif
bool m_UnicodeInput, m_UnicodeOutput;
bool m_JustCopy;
DECLARE_NO_COPY_CLASS(wxEncodingConverter)
};
#endif // wxUSE_FONTMAP
#endif // _WX_ENCCONV_H_

2492
include/wx/event.h Normal file

File diff suppressed because it is too large Load Diff

62
include/wx/evtloop.h Normal file
View File

@@ -0,0 +1,62 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/evtloop.h
// Purpose: declares wxEventLoop class
// Author: Vadim Zeitlin
// Modified by:
// Created: 01.06.01
// RCS-ID: $Id$
// Copyright: (c) 2001 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_EVTLOOP_H_
#define _WX_EVTLOOP_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "evtloop.h"
#endif
// ----------------------------------------------------------------------------
// wxEventLoop: a GUI event loop
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxEventLoop
{
public:
// ctor
wxEventLoop() { m_impl = NULL; }
// dtor
virtual ~wxEventLoop();
// start the event loop, return the exit code when it is finished
virtual int Run();
// exit from the loop with the given exit code
virtual void Exit(int rc = 0);
// return TRUE if any events are available
virtual bool Pending() const;
// dispatch a single event, return FALSE if we should exit from the loop
virtual bool Dispatch();
// is the event loop running now?
virtual bool IsRunning() const;
// return currently active (running) event loop, may be NULL
static wxEventLoop *GetActive() { return ms_activeLoop; }
// set currently active (running) event loop
static void SetActive(wxEventLoop* loop) { ms_activeLoop = loop; }
protected:
// the pointer to the port specific implementation class
class WXDLLEXPORT wxEventLoopImpl *m_impl;
// the pointer to currently active loop
static wxEventLoop *ms_activeLoop;
DECLARE_NO_COPY_CLASS(wxEventLoop)
};
#endif // _WX_EVTLOOP_H_

222
include/wx/fdrepdlg.h Normal file
View File

@@ -0,0 +1,222 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/fdrepdlg.h
// Purpose: wxFindReplaceDialog class
// Author: Markus Greither and Vadim Zeitlin
// Modified by:
// Created: 23/03/2001
// RCS-ID:
// Copyright: (c) Markus Greither
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FINDREPLACEDLG_H_
#define _WX_FINDREPLACEDLG_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "fdrepdlg.h"
#endif
#include "wx/defs.h"
#if wxUSE_FINDREPLDLG
#include "wx/dialog.h"
class WXDLLEXPORT wxFindDialogEvent;
class WXDLLEXPORT wxFindReplaceDialog;
class WXDLLEXPORT wxFindReplaceData;
class WXDLLEXPORT wxFindReplaceDialogImpl;
// ----------------------------------------------------------------------------
// Flags for wxFindReplaceData.Flags
// ----------------------------------------------------------------------------
// flages used by wxFindDialogEvent::GetFlags()
enum wxFindReplaceFlags
{
// downward search/replace selected (otherwise - upwards)
wxFR_DOWN = 1,
// whole word search/replace selected
wxFR_WHOLEWORD = 2,
// case sensitive search/replace selected (otherwise - case insensitive)
wxFR_MATCHCASE = 4
};
// these flags can be specified in wxFindReplaceDialog ctor or Create()
enum wxFindReplaceDialogStyles
{
// replace dialog (otherwise find dialog)
wxFR_REPLACEDIALOG = 1,
// don't allow changing the search direction
wxFR_NOUPDOWN = 2,
// don't allow case sensitive searching
wxFR_NOMATCHCASE = 4,
// don't allow whole word searching
wxFR_NOWHOLEWORD = 8
};
// ----------------------------------------------------------------------------
// wxFindReplaceData: holds Setup Data/Feedback Data for wxFindReplaceDialog
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxFindReplaceData : public wxObject
{
public:
wxFindReplaceData() { Init(); }
wxFindReplaceData(wxUint32 flags) { Init(); SetFlags(flags); }
// accessors
const wxString& GetFindString() { return m_FindWhat; }
const wxString& GetReplaceString() { return m_ReplaceWith; }
int GetFlags() const { return m_Flags; }
// setters: may only be called before showing the dialog, no effect later
void SetFlags(wxUint32 flags) { m_Flags = flags; }
void SetFindString(const wxString& str) { m_FindWhat = str; }
void SetReplaceString(const wxString& str) { m_ReplaceWith = str; }
protected:
void Init();
private:
wxUint32 m_Flags;
wxString m_FindWhat,
m_ReplaceWith;
friend class wxFindReplaceDialogBase;
};
// ----------------------------------------------------------------------------
// wxFindReplaceDialogBase
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxFindReplaceDialogBase : public wxDialog
{
public:
// ctors and such
wxFindReplaceDialogBase() { m_FindReplaceData = NULL; }
wxFindReplaceDialogBase(wxWindow * WXUNUSED(parent),
wxFindReplaceData *data,
const wxString& WXUNUSED(title),
int WXUNUSED(style) = 0)
{
m_FindReplaceData = data;
}
virtual ~wxFindReplaceDialogBase();
// find dialog data access
const wxFindReplaceData *GetData() const { return m_FindReplaceData; }
void SetData(wxFindReplaceData *data) { m_FindReplaceData = data; }
// implementation only, don't use
void Send(wxFindDialogEvent& event);
protected:
wxFindReplaceData *m_FindReplaceData;
// the last string we searched for
wxString m_lastSearch;
DECLARE_NO_COPY_CLASS(wxFindReplaceDialogBase)
};
// include wxFindReplaceDialog declaration
#if defined(__WXMSW__) && !defined(__WXUNIVERSAL__)
#include "wx/msw/fdrepdlg.h"
#else
#define wxGenericFindReplaceDialog wxFindReplaceDialog
#define sm_classwxGenericFindReplaceDialog sm_classwxFindReplaceDialog
#include "wx/generic/fdrepdlg.h"
#endif
// ----------------------------------------------------------------------------
// wxFindReplaceDialog events
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxFindDialogEvent : public wxCommandEvent
{
public:
wxFindDialogEvent(wxEventType commandType = wxEVT_NULL, int id = 0)
: wxCommandEvent(commandType, id) { }
int GetFlags() const { return GetInt(); }
wxString GetFindString() const { return GetString(); }
const wxString& GetReplaceString() const { return m_strReplace; }
wxFindReplaceDialog *GetDialog() const
{ return wxStaticCast(GetEventObject(), wxFindReplaceDialog); }
// implementation only
void SetFlags(int flags) { SetInt(flags); }
void SetFindString(const wxString& str) { SetString(str); }
void SetReplaceString(const wxString& str) { m_strReplace = str; }
private:
wxString m_strReplace;
DECLARE_DYNAMIC_CLASS(wxFindDialogEvent)
};
BEGIN_DECLARE_EVENT_TYPES()
DECLARE_EVENT_TYPE(wxEVT_COMMAND_FIND, 510)
DECLARE_EVENT_TYPE(wxEVT_COMMAND_FIND_NEXT, 511)
DECLARE_EVENT_TYPE(wxEVT_COMMAND_FIND_REPLACE, 512)
DECLARE_EVENT_TYPE(wxEVT_COMMAND_FIND_REPLACE_ALL, 513)
DECLARE_EVENT_TYPE(wxEVT_COMMAND_FIND_CLOSE, 514)
END_DECLARE_EVENT_TYPES()
typedef void (wxEvtHandler::*wxFindDialogEventFunction)(wxFindDialogEvent&);
#define EVT_FIND(id, fn) \
DECLARE_EVENT_TABLE_ENTRY( \
wxEVT_COMMAND_FIND, id, -1, \
(wxObjectEventFunction)(wxEventFunction)(wxFindDialogEventFunction) \
& fn, \
(wxObject *) NULL \
),
#define EVT_FIND_NEXT(id, fn) \
DECLARE_EVENT_TABLE_ENTRY( \
wxEVT_COMMAND_FIND_NEXT, id, -1, \
(wxObjectEventFunction)(wxEventFunction)(wxFindDialogEventFunction) \
& fn, \
(wxObject *) NULL \
),
#define EVT_FIND_REPLACE(id, fn) \
DECLARE_EVENT_TABLE_ENTRY( \
wxEVT_COMMAND_FIND_REPLACE, id, -1, \
(wxObjectEventFunction)(wxEventFunction)(wxFindDialogEventFunction) \
& fn, \
(wxObject *) NULL \
),
#define EVT_FIND_REPLACE_ALL(id, fn) \
DECLARE_EVENT_TABLE_ENTRY( \
wxEVT_COMMAND_FIND_REPLACE_ALL, id, -1, \
(wxObjectEventFunction)(wxEventFunction)(wxFindDialogEventFunction) \
& fn, \
(wxObject *) NULL \
),
#define EVT_FIND_CLOSE(id, fn) \
DECLARE_EVENT_TABLE_ENTRY( \
wxEVT_COMMAND_FIND_CLOSE, id, -1, \
(wxObjectEventFunction)(wxEventFunction)(wxFindDialogEventFunction) \
& fn, \
(wxObject *) NULL \
),
#endif // wxUSE_FINDREPLDLG
#endif
// _WX_FDREPDLG_H

39
include/wx/features.h Normal file
View File

@@ -0,0 +1,39 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/features.h
// Purpose: test macros for the features which might be available in some
// wxWindows ports but not others
// Author: Vadim Zeitlin
// Modified by:
// Created: 18.03.02
// RCS-ID: $Id$
// Copyright: (c) 2002 Vadim Zeitlin <vadim@wxwindows.org>
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FEATURES_H_
#define _WX_FEATURES_H_
// radio menu items are currently only implemented in wxGTK and wxMSW
#if defined(__WXGTK__) || defined(__WXMSW__)
#define wxHAS_RADIO_MENU_ITEMS
#else
#undef wxHAS_RADIO_MENU_ITEMS
#endif
// the raw keyboard codes are generated under wxGTK and wxMSW only
#if defined(__WXGTK__) || defined(__WXMSW__)
#define wxHAS_RAW_KEY_CODES
#else
#undef wxHAS_RAW_KEY_CODES
#endif
// taskbar is only implemented in wxMSW and X11 ports
#if defined(__WXMSW__) || \
defined(__WXGTK__) || defined(__WXMOTIF__) || defined(__WXX11__)
#define wxHAS_TASK_BAR_ICON
#else
#undef wxHAS_TASK_BAR_ICON
#endif
#endif // _WX_FEATURES_H_

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

@@ -0,0 +1,117 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/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 licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FFILE_H_
#define _WX_FFILE_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "ffile.h"
#endif
#include "wx/defs.h" // for wxUSE_FFILE
#if wxUSE_FFILE
#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 wxChar *mode = _T("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 wxChar *mode = _T("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, wxMBConv& conv = wxConvUTF8)
{
const wxWX2MBbuf buf = s.mb_str(conv);
size_t size = strlen(buf);
return Write((const char *)buf, 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_FFILE
#endif // _WX_FFILE_H_

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

@@ -0,0 +1,192 @@
/////////////////////////////////////////////////////////////////////////////
// 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 licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FILEH__
#define _WX_FILEH__
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "file.h"
#endif
#ifndef WX_PRECOMP
#include "wx/string.h"
#include "wx/filefn.h"
#include "wx/strconv.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, write_excl };
// 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, wxMBConv& conv = wxConvUTF8)
{
const wxWX2MBbuf buf = s.mb_str(conv);
size_t size = strlen(buf);
return Write((const char *) buf, 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, wxMBConv& conv = wxConvUTF8)
{ return m_file.Write(str, conv); }
// 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__

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

@@ -0,0 +1,226 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/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 licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _FILECONF_H
#define _FILECONF_H
#if defined(__GNUG__) && !defined(__APPLE__)
#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 WXDLLEXPORT wxFileConfigGroup;
class WXDLLEXPORT wxFileConfigEntry;
class WXDLLEXPORT wxFileConfigLineList;
class WXDLLEXPORT wxInputStream;
class WXDLLEXPORT 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 = wxT(""),
const wxString& vendorName = wxT(""),
const wxString& localFilename = wxT(""),
const wxString& globalFilename = wxT(""),
long style = wxCONFIG_USE_LOCAL_FILE,
wxMBConv& conv = wxConvUTF8);
#if wxUSE_STREAMS
// ctor that takes an input stream.
wxFileConfig(wxInputStream &inStream,
wxMBConv& conv = wxConvUTF8);
#endif // wxUSE_STREAMS
// dtor will save unsaved data
virtual ~wxFileConfig();
// under Unix, set the umask to be used for the file creation, do nothing
// under other systems
#ifdef __UNIX__
void SetUmask(int mode) { m_umask = mode; }
#else // !__UNIX__
void SetUmask(int WXUNUSED(mode)) { }
#endif // __UNIX__/!__UNIX__
// 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 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 = TRUE);
virtual bool DeleteGroup(const wxString& szKey);
virtual bool DeleteAll();
public:
// functions to work with this list
wxFileConfigLineList *LineListAppend(const wxString& str);
wxFileConfigLineList *LineListInsert(const wxString& str,
wxFileConfigLineList *pLine); // NULL => Prepend()
void LineListRemove(wxFileConfigLineList *pLine);
bool LineListIsEmpty();
protected:
virtual bool DoReadString(const wxString& key, wxString *pStr) const;
virtual bool DoReadLong(const wxString& key, long *pl) const;
virtual bool DoWriteString(const wxString& key, const wxString& szValue);
virtual bool DoWriteLong(const wxString& key, long lValue);
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(wxTextBuffer& buffer, bool bLocal);
// the same as SetPath("/")
void SetRootPath();
// member variables
// ----------------
wxFileConfigLineList *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)
wxFileConfigGroup *m_pRootGroup, // the top (unnamed) group
*m_pCurrentGroup; // the current group
wxMBConv &m_conv;
#ifdef __UNIX__
int m_umask; // the umask to use for file creation
#endif // __UNIX__
DECLARE_NO_COPY_CLASS(wxFileConfig)
};
#endif
// wxUSE_CONFIG
#endif
//_FILECONF_H

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

@@ -0,0 +1,111 @@
/////////////////////////////////////////////////////////////////////////////
// Name: filedlg.h
// Purpose: wxFileDialog base header
// Author: Robert Roebling
// Modified by:
// Created: 8/17/99
// Copyright: (c) Robert Roebling
// RCS-ID:
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FILEDLG_H_BASE_
#define _WX_FILEDLG_H_BASE_
#if wxUSE_FILEDLG
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "filedlg.h"
#endif
//----------------------------------------------------------------------------
// wxFileDialog data and generic functions
//----------------------------------------------------------------------------
enum
{
wxOPEN = 0x0001,
wxSAVE = 0x0002,
wxOVERWRITE_PROMPT = 0x0004,
wxHIDE_READONLY = 0x0008,
wxFILE_MUST_EXIST = 0x0010,
wxMULTIPLE = 0x0020,
wxCHANGE_DIR = 0x0040
};
WXDLLEXPORT_DATA(extern const wxChar*) wxFileSelectorPromptStr;
WXDLLEXPORT_DATA(extern const wxChar*) wxFileSelectorDefaultWildcardStr;
// Parses the filterStr, returning the number of filters.
// Returns 0 if none or if there's a problem, they arrays will contain an equal
// number of items found before the error.
// filterStr is in the form:
// "All files (*.*)|*.*|Image Files (*.jpeg *.png)|*.jpg;*.png"
extern int wxParseFileFilter(const wxString& filterStr,
wxArrayString& descriptions,
wxArrayString& filters);
//----------------------------------------------------------------------------
// wxFileDialog convenience functions
//----------------------------------------------------------------------------
// 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);
#if defined (__WXUNIVERSAL__)
#include "wx/generic/filedlgg.h"
#elif 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(__WXX11__)
#include "wx/generic/filedlgg.h"
#elif defined(__WXMGL__)
#include "wx/generic/filedlgg.h"
#elif defined(__WXMAC__)
#include "wx/mac/filedlg.h"
#elif defined(__WXCOCOA__)
#include "wx/generic/filedlgg.h"
#elif defined(__WXPM__)
#include "wx/os2/filedlg.h"
#endif
#endif // wxUSE_FILEDLG
#endif // _WX_FILEDLG_H_BASE_

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

@@ -0,0 +1,386 @@
/////////////////////////////////////////////////////////////////////////////
// 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 licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _FILEFN_H_
#define _FILEFN_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "filefn.h"
#endif
#include "wx/list.h"
#ifndef __WXWINCE__
#include <time.h>
#endif
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
#ifdef __WXWINCE__
typedef long off_t;
#else
// define off_t
#if !defined(__WXMAC__) || defined(__UNIX__) || defined(__MACH__)
#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(__SYMANTEC__)
typedef long off_t;
#elif defined(__MWERKS__) && !defined(__INTEL__) && !defined(__MACH__)
typedef long off_t;
#endif
#endif
#if defined(__VISAGECPP__) && __IBMCPP__ >= 400
//
// VisualAge C++ V4.0 cannot have any external linkage const decs
// in headers included by more than one primary source
//
extern const off_t wxInvalidOffset;
#else
const off_t wxInvalidOffset = (off_t)-1;
#endif
enum wxSeekMode
{
wxFromStart,
wxFromCurrent,
wxFromEnd
};
WXDLLEXPORT_DATA(extern const wxChar*) wxEmptyString;
// ----------------------------------------------------------------------------
// declare our versions of low level file functions: some compilers prepend
// underscores to the usual names, some also have Unicode versions of them
// ----------------------------------------------------------------------------
// Microsoft compiler loves underscores, feed them to it
#if defined( __VISUALC__ ) \
|| ( defined(__MINGW32__) && !defined(__WINE__) && wxCHECK_W32API_VERSION( 0, 5 ) ) \
|| ( defined(__MWERKS__) && defined(__WXMSW__) )
// functions
#ifdef __BORLANDC__
#define _tell tell
#endif
#define wxClose _close
#define wxRead _read
#define wxWrite _write
#define wxLseek _lseek
#define wxFsync _commit
#define wxEof _eof
#define wxTell _tell
#if wxUSE_UNICODE
#if wxUSE_UNICODE_MSLU
#define wxOpen wxMSLU__wopen
#define wxAccess wxMSLU__waccess
#define wxMkDir wxMSLU__wmkdir
#define wxRmDir wxMSLU__wrmdir
#define wxStat wxMSLU__wstat
#else
#define wxOpen _wopen
#define wxAccess _waccess
#define wxMkDir _wmkdir
#define wxRmDir _wrmdir
#define wxStat _wstat
#endif
#else // !wxUSE_UNICODE
#ifdef __BORLANDC__
#define wxOpen open
#else
#define wxOpen _open
#endif
#define wxAccess _access
#define wxMkDir _mkdir
#define wxRmDir _rmdir
#define wxStat _stat
#endif
// types
#define wxStructStat struct _stat
// constants (unless already defined by the user code)
#if !defined(O_RDONLY) && !defined(__BORLANDC__)
#define O_RDONLY _O_RDONLY
#define O_WRONLY _O_WRONLY
#define O_RDWR _O_RDWR
#define O_EXCL _O_EXCL
#define O_CREAT _O_CREAT
#define O_BINARY _O_BINARY
#endif
#ifndef __BORLANDC__
#define S_IFMT _S_IFMT
#define S_IFDIR _S_IFDIR
#define S_IFREG _S_IFREG
#endif // O_RDONLY
#else
// functions
#define wxClose close
#define wxRead read
#define wxWrite write
#define wxLseek lseek
#define wxFsync commit
#define wxEof eof
#define wxMkDir mkdir
#define wxRmDir rmdir
#define wxTell(fd) lseek(fd, 0, SEEK_CUR)
#define wxStructStat struct stat
#if wxUSE_UNICODE
# define wxNEED_WX_UNISTD_H
#if defined(__MWERKS__) && defined(macintosh)
#include <sys/stat.h>
#endif
WXDLLEXPORT int wxStat( const wxChar *file_name, wxStructStat *buf );
WXDLLEXPORT int wxAccess( const wxChar *pathname, int mode );
WXDLLEXPORT int wxOpen( const wxChar *pathname, int flags, mode_t mode );
#else
#define wxOpen open
#define wxStat stat
#define wxAccess access
#endif
#endif // VC++
// ----------------------------------------------------------------------------
// functions
// ----------------------------------------------------------------------------
WXDLLEXPORT bool wxFileExists(const wxString& filename);
// does the path exist? (may have or not '/' or '\\' at the end)
WXDLLEXPORT bool wxPathExists(const wxChar *pszPathName);
WXDLLEXPORT bool wxIsAbsolutePath(const wxString& filename);
// Get filename
WXDLLEXPORT wxChar* wxFileNameFromPath(wxChar *path);
WXDLLEXPORT wxString wxFileNameFromPath(const wxString& path);
// Get directory
WXDLLEXPORT wxString wxPathOnly(const wxString& path);
// wxString version
WXDLLEXPORT wxString wxRealPath(const wxString& path);
WXDLLEXPORT void wxDos2UnixFilename(wxChar *s);
WXDLLEXPORT void wxUnix2DosFilename(wxChar *s);
// Strip the extension, in situ
WXDLLEXPORT void wxStripExtension(wxChar *buffer);
WXDLLEXPORT void wxStripExtension(wxString& buffer);
// Get a temporary filename
WXDLLEXPORT wxChar* wxGetTempFileName(const wxString& prefix, wxChar *buf = (wxChar *) NULL);
WXDLLEXPORT bool wxGetTempFileName(const wxString& prefix, wxString& buf);
// Expand file name (~/ and ${OPENWINHOME}/ stuff)
WXDLLEXPORT wxChar* wxExpandPath(wxChar *dest, const wxChar *path);
WXDLLEXPORT bool wxExpandPath(wxString& 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,
bool overwrite = TRUE);
// 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);
// compatibility defines, don't use in new code
#define wxDirExists wxPathExists
#if WXWIN_COMPATIBILITY_2
#define FileExists wxFileExists
#define DirExists wxDirExists
#define IsAbsolutePath wxIsAbsolutePath
#define FileNameFromPath wxFileNameFromPath
#define PathOnly wxPathOnly
#define Dos2UnixFilename wxDos2UnixFilename
#define Unix2DosFilename wxUnix2DosFilename
#endif
// ----------------------------------------------------------------------------
// separators in file names
// ----------------------------------------------------------------------------
// between file name and extension
#define wxFILE_SEP_EXT wxT('.')
// between drive/volume name and the path
#define wxFILE_SEP_DSK wxT(':')
// between the path components
#define wxFILE_SEP_PATH_DOS wxT('\\')
#define wxFILE_SEP_PATH_UNIX wxT('/')
#define wxFILE_SEP_PATH_MAC wxT(':')
#define wxFILE_SEP_PATH_VMS wxT('.') // VMS also uses '[' and ']'
// separator in the path list (as in PATH environment variable)
// there is no PATH variable in Classic Mac OS so just use the
// semicolon (it must be different from the file name separator)
// NB: these are strings and not characters on purpose!
#define wxPATH_SEP_DOS wxT(";")
#define wxPATH_SEP_UNIX wxT(":")
#define wxPATH_SEP_MAC wxT(";")
// platform independent versions
#if defined(__UNIX__) && !defined(__CYGWIN__)
#define wxFILE_SEP_PATH wxFILE_SEP_PATH_UNIX
#define wxPATH_SEP wxPATH_SEP_UNIX
#elif defined(__MAC__)
#define wxFILE_SEP_PATH wxFILE_SEP_PATH_MAC
#define wxPATH_SEP wxPATH_SEP_MAC
#elif defined(__CYGWIN__) // Cygwin
#define wxFILE_SEP_PATH wxFILE_SEP_PATH_DOS
#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)
#if defined(__UNIX__) && !defined(__DARWIN__)
#define wxARE_FILENAMES_CASE_SENSITIVE TRUE
#else // Windows, Mac OS and OS/2
#define wxARE_FILENAMES_CASE_SENSITIVE FALSE
#endif // Unix/Windows
// is the char a path separator?
inline bool wxIsPathSeparator(wxChar c)
{
// under DOS/Windows we should understand both Unix and DOS file separators
#if defined(__UNIX__) || defined(__MAC__)
return c == wxFILE_SEP_PATH;
#else
return c == wxFILE_SEP_PATH_DOS || c == wxFILE_SEP_PATH_UNIX;
#endif
}
// 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();
// Get file modification time
WXDLLEXPORT time_t wxFileModificationTime(const wxString& filename);
// ----------------------------------------------------------------------------
// 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_

427
include/wx/filename.h Normal file
View File

@@ -0,0 +1,427 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/filename.h
// Purpose: wxFileName - encapsulates a file path
// Author: Robert Roebling, Vadim Zeitlin
// Modified by:
// Created: 28.12.00
// RCS-ID: $Id$
// Copyright: (c) 2000 Robert Roebling
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FILENAME_H_
#define _WX_FILENAME_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "filename.h"
#endif
#ifndef WX_PRECOMP
#include "wx/string.h"
#endif
/*
TODO:
1. support for drives under Windows
2. more file operations:
a) chmod()
b) [acm]time() - get and set
c) file size
d) file permissions with readable accessors for most common bits
such as IsReadable() &c
e) rename()?
3. SameFileAs() function to compare inodes under Unix
*/
// ridiculously enough, this will replace DirExists with wxDirExists etc
#include "wx/filefn.h"
#include "wx/datetime.h"
class WXDLLEXPORT wxFile;
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
// the various values for the path format: this mainly affects the path
// separator but also whether or not the path has the drive part (as under
// Windows)
enum wxPathFormat
{
wxPATH_NATIVE = 0, // the path format for the current platform
wxPATH_UNIX,
wxPATH_MAC,
wxPATH_DOS,
wxPATH_VMS,
wxPATH_BEOS = wxPATH_UNIX,
wxPATH_WIN = wxPATH_DOS,
wxPATH_OS2 = wxPATH_DOS
};
// the kind of normalization to do with the file name: these values can be
// or'd together to perform several operations at once
enum wxPathNormalize
{
wxPATH_NORM_ENV_VARS = 0x0001, // replace env vars with their values
wxPATH_NORM_DOTS = 0x0002, // squeeze all .. and . and prepend cwd
wxPATH_NORM_TILDE = 0x0004, // Unix only: replace ~ and ~user
wxPATH_NORM_CASE = 0x0008, // if case insensitive => tolower
wxPATH_NORM_ABSOLUTE = 0x0010, // make the path absolute
wxPATH_NORM_LONG = 0x0020, // make the path the long form
wxPATH_NORM_ALL = 0x003f
};
// what exactly should GetPath() return?
enum
{
wxPATH_GET_VOLUME = 0x0001, // include the volume if applicable
wxPATH_GET_SEPARATOR = 0x0002 // terminate the path with the separator
};
// MkDir flags
enum
{
wxPATH_MKDIR_FULL = 0x0001 // create directories recursively
};
// ----------------------------------------------------------------------------
// wxFileName: encapsulates a file path
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxFileName
{
public:
// constructors and assignment
// the usual stuff
wxFileName() { Clear(); }
wxFileName( const wxFileName &filepath ) { Assign(filepath); }
// from a full filename: if it terminates with a '/', a directory path
// is contructed (the name will be empty), otherwise a file name and
// extension are extracted from it
wxFileName( const wxString& fullpath, wxPathFormat format = wxPATH_NATIVE )
{ Assign( fullpath, format ); }
// from a directory name and a file name
wxFileName(const wxString& path,
const wxString& name,
wxPathFormat format = wxPATH_NATIVE)
{ Assign(path, name, format); }
// from a volume, directory name, file base name and extension
wxFileName(const wxString& volume,
const wxString& path,
const wxString& name,
const wxString& ext,
wxPathFormat format = wxPATH_NATIVE)
{ Assign(volume, path, name, ext, format); }
// from a directory name, file base name and extension
wxFileName(const wxString& path,
const wxString& name,
const wxString& ext,
wxPathFormat format = wxPATH_NATIVE)
{ Assign(path, name, ext, format); }
// the same for delayed initialization
void Assign(const wxFileName& filepath);
void Assign(const wxString& fullpath,
wxPathFormat format = wxPATH_NATIVE);
void Assign(const wxString& volume,
const wxString& path,
const wxString& name,
const wxString& ext,
wxPathFormat format = wxPATH_NATIVE);
void Assign(const wxString& path,
const wxString& name,
wxPathFormat format = wxPATH_NATIVE);
void Assign(const wxString& path,
const wxString& name,
const wxString& ext,
wxPathFormat format = wxPATH_NATIVE)
{
// empty volume
Assign(_T(""), path, name, ext, format);
}
void AssignDir(const wxString& dir, wxPathFormat format = wxPATH_NATIVE);
// assorted assignment operators
wxFileName& operator=(const wxFileName& filename)
{ Assign(filename); return *this; }
wxFileName& operator=(const wxString& filename)
{ Assign(filename); return *this; }
// reset all components to default, uninitialized state
void Clear();
// static pseudo constructors
static wxFileName FileName(const wxString& file);
static wxFileName DirName(const wxString& dir);
// file tests
// is the filename valid at all?
bool IsOk() const { return !m_dirs.IsEmpty() || !m_name.IsEmpty(); }
// does the file with this name exists?
bool FileExists() const;
static bool FileExists( const wxString &file );
// does the directory with this name exists?
bool DirExists() const;
static bool DirExists( const wxString &dir );
// VZ: also need: IsDirWritable(), IsFileExecutable() &c (TODO)
// time functions
#if wxUSE_DATETIME
// set the file last access/mod and creation times
// (any of the pointers may be NULL)
bool SetTimes(const wxDateTime *dtAccess,
const wxDateTime *dtMod,
const wxDateTime *dtCreate);
// set the access and modification times to the current moment
bool Touch();
// return the last access, last modification and create times
// (any of the pointers may be NULL)
bool GetTimes(wxDateTime *dtAccess,
wxDateTime *dtMod,
wxDateTime *dtCreate) const;
// convenience wrapper: get just the last mod time of the file
wxDateTime GetModificationTime() const
{
wxDateTime dtMod;
(void)GetTimes(NULL, &dtMod, NULL);
return dtMod;
}
#endif // wxUSE_DATETIME
#ifdef __WXMAC__
bool MacSetTypeAndCreator( wxUint32 type , wxUint32 creator ) ;
bool MacGetTypeAndCreator( wxUint32 *type , wxUint32 *creator ) ;
// gets the 'common' type and creator for a certain extension
static bool MacFindDefaultTypeAndCreator( const wxString& ext , wxUint32 *type , wxUint32 *creator ) ;
// registers application defined extensions and their default type and creator
static void MacRegisterDefaultTypeAndCreator( const wxString& ext , wxUint32 type , wxUint32 creator ) ;
// looks up the appropriate type and creator from the registration and then sets
bool MacSetDefaultTypeAndCreator() ;
#endif
// various file/dir operations
// retrieve the value of the current working directory
void AssignCwd(const wxString& volume = wxEmptyString);
static wxString GetCwd(const wxString& volume = wxEmptyString);
// change the current working directory
bool SetCwd();
static bool SetCwd( const wxString &cwd );
// get the value of user home (Unix only mainly)
void AssignHomeDir();
static wxString GetHomeDir();
// get a temp file name starting with the specified prefix and open the
// file passed to us using this name for writing (atomically if
// possible)
void AssignTempFileName(const wxString& prefix, wxFile *fileTemp = NULL);
static wxString CreateTempFileName(const wxString& prefix,
wxFile *fileTemp = NULL);
// directory creation and removal.
// if full is TRUE, will try to make each directory in the path.
bool Mkdir( int perm = 0777, int flags = 0);
static bool Mkdir( const wxString &dir, int perm = 0777, int flags = 0 );
bool Rmdir();
static bool Rmdir( const wxString &dir );
// operations on the path
// normalize the path: with the default flags value, the path will be
// made absolute, without any ".." and "." and all environment
// variables will be expanded in it
//
// this may be done using another (than current) value of cwd
bool Normalize(int flags = wxPATH_NORM_ALL,
const wxString& cwd = wxEmptyString,
wxPathFormat format = wxPATH_NATIVE);
// get a path path relative to the given base directory, i.e. opposite
// of Normalize
//
// pass an empty string to get a path relative to the working directory
//
// returns TRUE if the file name was modified, FALSE if we failed to do
// anything with it (happens when the file is on a different volume,
// for example)
bool MakeRelativeTo(const wxString& pathBase = _T(""),
wxPathFormat format = wxPATH_NATIVE);
// make the path absolute
//
// this may be done using another (than current) value of cwd
bool MakeAbsolute(const wxString& cwd = wxEmptyString,
wxPathFormat format = wxPATH_NATIVE)
{ return Normalize(wxPATH_NORM_DOTS | wxPATH_NORM_ABSOLUTE |
wxPATH_NORM_TILDE, cwd, format); }
// Comparison
// compares with the rules of the given platforms format
bool SameAs(const wxFileName& filepath,
wxPathFormat format = wxPATH_NATIVE) const;
// compare with another filename object
bool operator==(const wxFileName& filename) const
{ return SameAs(filename); }
bool operator!=(const wxFileName& filename) const
{ return !SameAs(filename); }
// compare with a filename string interpreted as a native file name
bool operator==(const wxString& filename) const
{ return SameAs(wxFileName(filename)); }
bool operator!=(const wxString& filename) const
{ return !SameAs(wxFileName(filename)); }
// are the file names of this type cases sensitive?
static bool IsCaseSensitive( wxPathFormat format = wxPATH_NATIVE );
// is this filename absolute?
bool IsAbsolute(wxPathFormat format = wxPATH_NATIVE) const;
// is this filename relative?
bool IsRelative(wxPathFormat format = wxPATH_NATIVE) const
{ return !IsAbsolute(format); }
// Information about path format
// get the string separating the volume from the path for this format,
// return an empty string if this format doesn't support the notion of
// volumes at all
static wxString GetVolumeSeparator(wxPathFormat format = wxPATH_NATIVE);
// get the string of path separators for this format
static wxString GetPathSeparators(wxPathFormat format = wxPATH_NATIVE);
// get the canonical path separator for this format
static wxChar GetPathSeparator(wxPathFormat format = wxPATH_NATIVE)
{ return GetPathSeparators(format)[0u]; }
// is the char a path separator for this format?
static bool IsPathSeparator(wxChar ch, wxPathFormat format = wxPATH_NATIVE);
// Dir accessors
void AppendDir( const wxString &dir );
void PrependDir( const wxString &dir );
void InsertDir( int before, const wxString &dir );
void RemoveDir( int pos );
size_t GetDirCount() const { return m_dirs.GetCount(); }
// Other accessors
void SetExt( const wxString &ext ) { m_ext = ext; }
wxString GetExt() const { return m_ext; }
bool HasExt() const { return !m_ext.empty(); }
void SetName( const wxString &name ) { m_name = name; }
wxString GetName() const { return m_name; }
bool HasName() const { return !m_name.empty(); }
void SetVolume( const wxString &volume ) { m_volume = volume; }
wxString GetVolume() const { return m_volume; }
bool HasVolume() const { return !m_volume.empty(); }
// full name is the file name + extension (but without the path)
void SetFullName(const wxString& fullname);
wxString GetFullName() const;
const wxArrayString& GetDirs() const { return m_dirs; }
// flags are combination of wxPATH_GET_XXX flags
wxString GetPath(int flags = 0, wxPathFormat format = wxPATH_NATIVE) const;
// Replace current path with this one
void SetPath( const wxString &path, wxPathFormat format = wxPATH_NATIVE );
// Construct full path with name and ext
wxString GetFullPath( wxPathFormat format = wxPATH_NATIVE ) const;
// Return the short form of the path (returns identity on non-Windows platforms)
wxString GetShortPath() const;
// Return the long form of the path (returns identity on non-Windows platforms)
wxString GetLongPath() const;
// Is this a file or directory (not necessarily an existing one)
bool IsDir() const { return m_name.empty() && m_ext.empty(); }
// various helpers
// get the canonical path format for this platform
static wxPathFormat GetFormat( wxPathFormat format = wxPATH_NATIVE );
// split a fullpath into the volume, path, (base) name and extension
// (all of the pointers can be NULL)
static void SplitPath(const wxString& fullpath,
wxString *volume,
wxString *path,
wxString *name,
wxString *ext,
wxPathFormat format = wxPATH_NATIVE);
// compatibility version
static void SplitPath(const wxString& fullpath,
wxString *path,
wxString *name,
wxString *ext,
wxPathFormat format = wxPATH_NATIVE);
// deprecated methods, don't use any more
// --------------------------------------
#ifndef __DIGITALMARS__
wxString GetPath( bool withSep, wxPathFormat format = wxPATH_NATIVE ) const
{ return GetPath(withSep ? wxPATH_GET_SEPARATOR : 0, format); }
#endif
wxString GetPathWithSep(wxPathFormat format = wxPATH_NATIVE ) const
{ return GetPath(wxPATH_GET_SEPARATOR, format); }
private:
// the drive/volume/device specification (always empty for Unix)
wxString m_volume;
// the path components of the file
wxArrayString m_dirs;
// the file name and extension (empty for directories)
wxString m_name,
m_ext;
// when m_dirs is empty it may mean either that we have no path at all or
// that our path is '/', i.e. the root directory
//
// we use m_relative to distinguish between these two cases, it will be
// TRUE in the former and FALSE in the latter
//
// NB: the path is not absolute just because m_relative is FALSE, it still
// needs the drive (i.e. volume) in some formats (Windows)
bool m_relative;
};
#endif // _WX_FILENAME_H_

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

@@ -0,0 +1,268 @@
/////////////////////////////////////////////////////////////////////////////
// Name: filesys.h
// Purpose: class for opening files - virtual file system
// Author: Vaclav Slavik
// Copyright: (c) 1999 Vaclav Slavik
// RCS-ID: $Id$
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __FILESYS_H__
#define __FILESYS_H__
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "filesys.h"
#endif
#include "wx/setup.h"
#if !wxUSE_STREAMS
#error You cannot compile virtual file systems without wxUSE_STREAMS
#endif
#if wxUSE_HTML && !wxUSE_FILESYSTEM
#error You cannot compile wxHTML without virtual file systems
#endif
#if wxUSE_FILESYSTEM
#include "wx/stream.h"
#include "wx/url.h"
#include "wx/datetime.h"
#include "wx/filename.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
{
public:
wxFSFile(wxInputStream *stream, const wxString& loc,
const wxString& mimetype, const wxString& anchor
#if wxUSE_DATETIME
, wxDateTime modif
#endif // wxUSE_DATETIME
)
{
m_Stream = stream;
m_Location = loc;
m_MimeType = mimetype; m_MimeType.MakeLower();
m_Anchor = anchor;
#if wxUSE_DATETIME
m_Modif = modif;
#endif // wxUSE_DATETIME
}
virtual ~wxFSFile() { if (m_Stream) delete m_Stream; }
// returns stream. This doesn't _create_ stream, it only returns
// pointer to it.
wxInputStream *GetStream() const {return m_Stream;}
// returns file's mime type
const wxString& GetMimeType() const {return m_MimeType;}
// returns the original location (aka filename) of the file
const wxString& GetLocation() const {return m_Location;}
const wxString& GetAnchor() const {return m_Anchor;}
#if wxUSE_DATETIME
wxDateTime GetModificationTime() const {return m_Modif;}
#endif // wxUSE_DATETIME
private:
wxInputStream *m_Stream;
wxString m_Location;
wxString m_MimeType;
wxString m_Anchor;
#if wxUSE_DATETIME
wxDateTime m_Modif;
#endif // wxUSE_DATETIME
DECLARE_ABSTRACT_CLASS(wxFSFile)
DECLARE_NO_COPY_CLASS(wxFSFile)
};
//--------------------------------------------------------------------------------
// 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
{
public:
wxFileSystemHandler() : wxObject() {}
// returns TRUE if this handler is able to open given location
virtual bool CanOpen(const wxString& location) = 0;
// opens given file and returns pointer to input stream.
// Returns NULL if opening failed.
// The location is always absolute path.
virtual wxFSFile* OpenFile(wxFileSystem& fs, const wxString& location) = 0;
// Finds first/next file that matches spec wildcard. flags can be wxDIR for restricting
// the query to directories or wxFILE for files only or 0 for either.
// Returns filename or empty string if no more matching file exists
virtual wxString FindFirst(const wxString& spec, int flags = 0);
virtual wxString FindNext();
protected:
// 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 GetProtocol(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 GetLeftLocation(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 GetAnchor(const wxString& location) const;
// returns right part of address:
// {it returns "/README.txt" for "file:subdir/archive.tar.gz#tar:/README.txt"}
wxString GetRightLocation(const wxString& location) const;
// Returns MIME type of the file - w/o need to open it
// (default behaviour is that it returns type based on extension)
wxString GetMimeTypeFromExt(const wxString& location);
DECLARE_ABSTRACT_CLASS(wxFileSystemHandler)
};
//--------------------------------------------------------------------------------
// wxFileSystem
// This class provides simple interface for opening various
// kinds of files (HTPP, FTP, local, tar.gz etc..)
//--------------------------------------------------------------------------------
class WXDLLEXPORT wxFileSystem : public wxObject
{
public:
wxFileSystem() : wxObject() {m_Path = m_LastName = wxEmptyString; m_Handlers.DeleteContents(TRUE); m_FindFileHandler = NULL;}
// 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/")
void ChangePathTo(const wxString& location, bool is_dir = FALSE);
wxString GetPath() const {return m_Path;}
// 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.
wxFSFile* OpenFile(const wxString& location);
// Finds first/next file that matches spec wildcard. flags can be wxDIR for restricting
// the query to directories or wxFILE for files only or 0 for either.
// Returns filename or empty string if no more matching file exists
wxString FindFirst(const wxString& spec, int flags = 0);
wxString FindNext();
// Adds FS handler.
// In fact, this class is only front-end to the FS hanlers :-)
static void AddHandler(wxFileSystemHandler *handler);
// remove all items from the m_Handlers list
static void CleanUpHandlers();
// Returns the native path for a file URL
static wxFileName URLToFileName(const wxString& url);
// Returns the file URL for a native path
static wxString FileNameToURL(const wxFileName& filename);
protected:
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
wxFileSystemHandler *m_FindFileHandler;
// handler that succeed in FindFirst query
DECLARE_DYNAMIC_CLASS(wxFileSystem)
DECLARE_NO_COPY_CLASS(wxFileSystem)
};
/*
'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!
*/
class WXDLLEXPORT wxLocalFSHandler : public wxFileSystemHandler
{
public:
virtual bool CanOpen(const wxString& location);
virtual wxFSFile* OpenFile(wxFileSystem& fs, const wxString& location);
virtual wxString FindFirst(const wxString& spec, int flags = 0);
virtual wxString FindNext();
// wxLocalFSHandler will prefix all filenames with 'root' before accessing
// files on disk. This effectively makes 'root' the top-level directory
// and prevents access to files outside this directory.
// (This is similar to Unix command 'chroot'.)
static void Chroot(const wxString& root) { ms_root = root; }
protected:
static wxString ms_root;
};
#endif
// wxUSE_FILESYSTEM
#endif
// __FILESYS_H__

74
include/wx/fmappriv.h Normal file
View File

@@ -0,0 +1,74 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/fmappriv.h
// Purpose: private wxFontMapper stuff, not to be used by the library users
// Author: Vadim Zeitlin
// Modified by:
// Created: 21.06.2003 (extracted from common/fontmap.cpp)
// RCS-ID: $Id$
// Copyright: (c) 1999-2003 Vadim Zeitlin <vadim@wxwindows.org>
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FMAPPRIV_H_
#define _WX_FMAPPRIV_H_
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
// a special pseudo encoding which means "don't ask me about this charset
// any more" -- we need it to avoid driving the user crazy with asking him
// time after time about the same charset which he [presumably] doesn't
// have the fonts for
enum { wxFONTENCODING_UNKNOWN = -2 };
// the config paths we use
#if wxUSE_CONFIG
#define FONTMAPPER_ROOT_PATH wxT("/wxWindows/FontMapper")
#define FONTMAPPER_CHARSET_PATH wxT("Charsets")
#define FONTMAPPER_CHARSET_ALIAS_PATH wxT("Aliases")
#endif // wxUSE_CONFIG
// ----------------------------------------------------------------------------
// wxFontMapperPathChanger: change the config path during our lifetime
// ----------------------------------------------------------------------------
#if wxUSE_CONFIG
class wxFontMapperPathChanger
{
public:
wxFontMapperPathChanger(wxFontMapperBase *fontMapper, const wxString& path)
{
m_fontMapper = fontMapper;
m_ok = m_fontMapper->ChangePath(path, &m_pathOld);
}
bool IsOk() const { return m_ok; }
~wxFontMapperPathChanger()
{
if ( IsOk() )
m_fontMapper->RestorePath(m_pathOld);
}
private:
// the fontmapper object we're working with
wxFontMapperBase *m_fontMapper;
// the old path to be restored if m_ok
wxString m_pathOld;
// have we changed the path successfully?
bool m_ok;
DECLARE_NO_COPY_CLASS(wxFontMapperPathChanger)
};
#endif // wxUSE_CONFIG
#endif // _WX_FMAPPRIV_H_

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

@@ -0,0 +1,237 @@
/////////////////////////////////////////////////////////////////////////////
// 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 licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FONT_H_BASE_
#define _WX_FONT_H_BASE_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "fontbase.h"
#endif
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------
#include "wx/defs.h" // for wxDEFAULT &c
#include "wx/fontenc.h" // the font encoding constants
#include "wx/gdiobj.h" // the base class
// ----------------------------------------------------------------------------
// forward declarations
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxFontData;
class WXDLLEXPORT wxFontBase;
class WXDLLEXPORT wxFont;
// ----------------------------------------------------------------------------
// font constants
// ----------------------------------------------------------------------------
// standard font families: these may be used only for the font creation, it
// doesn't make sense to query an existing font for its font family as,
// especially if the font had been created from a native font description, it
// may be unknown
enum wxFontFamily
{
wxFONTFAMILY_DEFAULT = wxDEFAULT,
wxFONTFAMILY_DECORATIVE = wxDECORATIVE,
wxFONTFAMILY_ROMAN = wxROMAN,
wxFONTFAMILY_SCRIPT = wxSCRIPT,
wxFONTFAMILY_SWISS = wxSWISS,
wxFONTFAMILY_MODERN = wxMODERN,
wxFONTFAMILY_TELETYPE = wxTELETYPE,
wxFONTFAMILY_MAX,
wxFONTFAMILY_UNKNOWN = wxFONTFAMILY_MAX
};
// 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
};
// the font flag bits for the new font ctor accepting one combined flags word
enum
{
// no special flags: font with default weight/slant/anti-aliasing
wxFONTFLAG_DEFAULT = 0,
// slant flags (default: no slant)
wxFONTFLAG_ITALIC = 1 << 0,
wxFONTFLAG_SLANT = 1 << 1,
// weight flags (default: medium)
wxFONTFLAG_LIGHT = 1 << 2,
wxFONTFLAG_BOLD = 1 << 3,
// anti-aliasing flag: force on or off (default: the current system default)
wxFONTFLAG_ANTIALIASED = 1 << 4,
wxFONTFLAG_NOT_ANTIALIASED = 1 << 5,
// underlined/strikethrough flags (default: no lines)
wxFONTFLAG_UNDERLINED = 1 << 6,
wxFONTFLAG_STRIKETHROUGH = 1 << 7,
// the mask of all currently used flags
wxFONTFLAG_MASK = wxFONTFLAG_ITALIC |
wxFONTFLAG_SLANT |
wxFONTFLAG_LIGHT |
wxFONTFLAG_BOLD |
wxFONTFLAG_ANTIALIASED |
wxFONTFLAG_NOT_ANTIALIASED |
wxFONTFLAG_UNDERLINED |
wxFONTFLAG_STRIKETHROUGH
};
// ----------------------------------------------------------------------------
// wxFontBase represents a font object
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxFontRefData;
struct WXDLLEXPORT wxNativeFontInfo;
class WXDLLEXPORT wxFontBase : public wxGDIObject
{
public:
// creator function
virtual ~wxFontBase();
// from the font components
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, ...
// from the font components but using the font flags instead of separate
// parameters for each flag
static wxFont *New(int pointSize,
wxFontFamily family,
int flags = wxFONTFLAG_DEFAULT,
const wxString& face = wxEmptyString,
wxFontEncoding encoding = wxFONTENCODING_DEFAULT);
// from the (opaque) native font description object
static wxFont *New(const wxNativeFontInfo& nativeFontDesc);
// from the string representation of wxNativeFontInfo
static wxFont *New(const wxString& strNativeFontDesc);
// 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;
virtual wxNativeFontInfo *GetNativeFontInfo() const;
virtual bool IsFixedWidth() const;
wxString GetNativeFontInfoDesc() const;
wxString GetNativeFontInfoUserDesc() const;
// 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;
void SetNativeFontInfo(const wxNativeFontInfo& info)
{ DoSetNativeFontInfo(info); }
void SetNativeFontInfo(const wxString& info);
void SetNativeFontInfoUserDesc(const wxString& info);
// 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;
// Unofficial API, don't use
virtual void SetNoAntiAliasing( bool WXUNUSED(no) = TRUE ) { }
virtual bool GetNoAntiAliasing() { return FALSE; }
// the default encoding is used for creating all fonts with default
// encoding parameter
static wxFontEncoding GetDefaultEncoding() { return ms_encodingDefault; }
static void SetDefaultEncoding(wxFontEncoding encoding);
protected:
// get the internal data
wxFontRefData *GetFontData() const
{ return (wxFontRefData *)m_refData; }
// the function called by both overloads of SetNativeFontInfo()
virtual void DoSetNativeFontInfo(const wxNativeFontInfo& info);
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(__WXX11__)
#include "wx/x11/font.h"
#elif defined(__WXMGL__)
#include "wx/mgl/font.h"
#elif defined(__WXMAC__)
#include "wx/mac/font.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/font.h"
#elif defined(__WXPM__)
#include "wx/os2/font.h"
#endif
// ----------------------------------------------------------------------------
// macros
// ----------------------------------------------------------------------------
#define M_FONTDATA GetFontData()
#endif
// _WX_FONT_H_BASE_

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

@@ -0,0 +1,91 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/fontdlg.h
// Purpose: common interface for different wxFontDialog classes
// Author: Vadim Zeitlin
// Modified by:
// Created: 12.05.02
// RCS-ID: $Id$
// Copyright: (c) 1997-2002 wxWindows team
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FONTDLG_H_BASE_
#define _WX_FONTDLG_H_BASE_
#include "wx/defs.h" // for wxUSE_FONTDLG
#if wxUSE_FONTDLG
#include "wx/dialog.h" // the base class
#include "wx/cmndata.h" // wxFontData
// ----------------------------------------------------------------------------
// wxFontDialog interface
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxFontDialogBase : public wxDialog
{
public:
// create the font dialog
wxFontDialogBase() { }
wxFontDialogBase(wxWindow *parent) { m_parent = parent; }
wxFontDialogBase(wxWindow *parent, const wxFontData& data)
{ m_parent = parent; InitFontData(&data); }
bool Create(wxWindow *parent)
{ return DoCreate(parent); }
bool Create(wxWindow *parent, const wxFontData& data)
{ InitFontData(&data); return Create(parent); }
virtual ~wxFontDialogBase();
// retrieve the font data
const wxFontData& GetFontData() const { return m_fontData; }
wxFontData& GetFontData() { return m_fontData; }
// deprecated interface, for compatibility only, don't use
wxFontDialogBase(wxWindow *parent, const wxFontData *data)
{ m_parent = parent; InitFontData(data); }
bool Create(wxWindow *parent, const wxFontData *data)
{ InitFontData(data); return Create(parent); }
protected:
virtual bool DoCreate(wxWindow *parent) { m_parent = parent; return TRUE; }
void InitFontData(const wxFontData *data = NULL)
{ if ( data ) m_fontData = *data; }
wxFontData m_fontData;
};
// ----------------------------------------------------------------------------
// platform-specific wxFontDialog implementation
// ----------------------------------------------------------------------------
#if defined(__WXUNIVERSAL__) || defined(__WXMOTIF__) || defined(__WXMAC__) || defined(__WXCOCOA__)
#include "wx/generic/fontdlgg.h"
#define wxFontDialog wxGenericFontDialog
#define sm_classwxFontDialog sm_classwxGenericFontDialog
#elif defined(__WXMSW__)
#include "wx/msw/fontdlg.h"
#elif defined(__WXGTK__)
#include "wx/gtk/fontdlg.h"
#elif defined(__WXPM__)
#include "wx/os2/fontdlg.h"
#endif
// ----------------------------------------------------------------------------
// global public functions
// ----------------------------------------------------------------------------
// get the font from user and return it, returns wxNullFont if the dialog was
// cancelled
wxFont WXDLLEXPORT
wxGetFontFromUser(wxWindow *parent = (wxWindow *)NULL,
const wxFont& fontInit = wxNullFont);
#endif // wxUSE_FONTDLG
#endif
// _WX_FONTDLG_H_BASE_

142
include/wx/fontenc.h Normal file
View File

@@ -0,0 +1,142 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/fontenc.h
// Purpose: wxFontEncoding constants
// Author: Vadim Zeitlin
// Modified by:
// Created: 29.03.00
// RCS-ID: $Id$
// Copyright: (c) Vadim Zeitlin
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FONTENC_H_
#define _WX_FONTENC_H_
#include "wx/string.h"
// 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 (old) (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, // Baltic (Latin7)
wxFONTENCODING_ISO8859_14, // Latin8
wxFONTENCODING_ISO8859_15, // Latin9 (a.k.a. Latin0, includes euro)
wxFONTENCODING_ISO8859_MAX,
// 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_CP874, // WinThai
wxFONTENCODING_CP932, // Japanese (shift-JIS)
wxFONTENCODING_CP936, // Chinese simplified (GB)
wxFONTENCODING_CP949, // Korean (Hangul charset)
wxFONTENCODING_CP950, // Chinese (traditional - Big5)
wxFONTENCODING_CP1250, // WinLatin2
wxFONTENCODING_CP1251, // WinCyrillic
wxFONTENCODING_CP1252, // WinLatin1
wxFONTENCODING_CP1253, // WinGreek (8859-7)
wxFONTENCODING_CP1254, // WinTurkish
wxFONTENCODING_CP1255, // WinHebrew
wxFONTENCODING_CP1256, // WinArabic
wxFONTENCODING_CP1257, // WinBaltic (same as Latin 7)
wxFONTENCODING_CP12_MAX,
wxFONTENCODING_UTF7, // UTF-7 Unicode encoding
wxFONTENCODING_UTF8, // UTF-8 Unicode encoding
// Far Eastern encodings
// Chinese
wxFONTENCODING_GB2312 = wxFONTENCODING_CP936, // Simplified Chinese
wxFONTENCODING_BIG5 = wxFONTENCODING_CP950, // Traditional Chinese
// Japanese (see http://zsigri.tripod.com/fontboard/cjk/jis.html)
wxFONTENCODING_SHIFT_JIS = wxFONTENCODING_CP932, // Shift JIS
wxFONTENCODING_EUC_JP = wxFONTENCODING_UTF8 + 1, // Extended Unix Codepage
// for Japanese
wxFONTENCODING_UNICODE, // Unicode (for wxEncodingConverter only)
wxFONTENCODING_MAX
};
// ----------------------------------------------------------------------------
// types
// ----------------------------------------------------------------------------
#if wxUSE_GUI
// This private structure specifies all the parameters needed to create a font
// with the given encoding on this platform.
//
// Under X, it contains the last 2 elements of the font specifications
// (registry and encoding).
//
// Under Windows, it contains a number which is one of predefined CHARSET_XXX
// values.
//
// Under all platforms it also contains a facename string which should be
// used, if not empty, to create fonts in this encoding (this is the only way
// to create a font of non-standard encoding (like KOI8) under Windows - the
// facename specifies the encoding then)
struct WXDLLEXPORT wxNativeEncodingInfo
{
wxString facename; // may be empty meaning "any"
wxFontEncoding encoding; // so that we know what this struct represents
#if defined(__WXMSW__) || defined(__WXPM__) || defined(__WXMAC__) || defined(__WXCOCOA__) // FIXME: __WXCOCOA__
wxNativeEncodingInfo()
: facename()
, encoding(wxFONTENCODING_SYSTEM)
, charset(0) /* ANSI_CHARSET */
{ }
int charset;
#elif defined(_WX_X_FONTLIKE)
wxString xregistry,
xencoding;
#elif defined(__WXGTK20__)
// No way to specify this in Pango as this
// seems to be handled internally.
#elif defined(__WXMGL__)
int mglEncoding;
#else
#error "Unsupported toolkit"
#endif
// this struct is saved in config by wxFontMapper, so it should know to
// serialise itself (implemented in platform-specific code)
bool FromString(const wxString& s);
wxString ToString() const;
};
#endif // wxUSE_GUI
#endif // _WX_FONTENC_H_

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

@@ -0,0 +1,91 @@
/////////////////////////////////////////////////////////////////////////////
// Name: fontenum.h
// Purpose: wxFontEnumerator class for getting available fonts
// Author: Julian Smart, Vadim Zeitlin
// Modified by: extended to enumerate more than just font facenames and works
// not only on Windows now (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_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "fontenum.h"
#endif
#include "wx/fontenc.h"
// ----------------------------------------------------------------------------
// wxFontEnumerator enumerates all available fonts on the system or only the
// fonts with given attributes
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxFontEnumerator
{
public:
wxFontEnumerator() : m_Facenames(NULL), m_Encodings(NULL) { }
// start enumerating font facenames (either all of them or those which
// support the given encoding) - will result in OnFacename() being
// called for each available facename (until they are exhausted or
// OnFacename returns FALSE)
virtual bool EnumerateFacenames
(
wxFontEncoding encoding = wxFONTENCODING_SYSTEM, // all
bool fixedWidthOnly = FALSE
);
// enumerate the different encodings either for given font facename or for
// all facenames - will result in OnFontEncoding() being called for each
// available (facename, encoding) couple
virtual bool EnumerateEncodings(const wxString& facename = 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 EnumerateFacenames
virtual bool OnFacename(const wxString& facename)
{
if (m_Facenames == NULL) m_Facenames = new wxArrayString;
m_Facenames -> Add(facename);
return TRUE;
}
// called by EnumerateEncodings
virtual bool OnFontEncoding(const wxString& WXUNUSED(facename),
const wxString& encoding)
{
if (m_Encodings == NULL) m_Encodings = new wxArrayString;
m_Encodings -> Add(encoding);
return TRUE;
}
// convenience function that returns array of facenames. Cannot be called
// before EnumerateFacenames.
wxArrayString *GetFacenames()
{ return m_Facenames; }
// convenience function that returns array of encodings.
// Cannot be called before EnumerateEncodings.
wxArrayString *GetEncodings()
{ return m_Encodings; }
// virtual dtor for the base class
virtual ~wxFontEnumerator()
{
if (m_Facenames) delete m_Facenames;
if (m_Encodings) delete m_Encodings;
}
private:
wxArrayString *m_Facenames, *m_Encodings;
DECLARE_NO_COPY_CLASS(wxFontEnumerator)
};
#endif // _WX_FONTENUM_H_

267
include/wx/fontmap.h Normal file
View File

@@ -0,0 +1,267 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/fontmap.h
// Purpose: wxFontMapper class
// Author: Vadim Zeitlin
// Modified by:
// Created: 04.11.99
// RCS-ID: $Id$
// Copyright: (c) Vadim Zeitlin
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FONTMAPPER_H_
#define _WX_FONTMAPPER_H_
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------
#if wxUSE_FONTMAP
#include "wx/fontenc.h" // for wxFontEncoding
#if wxUSE_GUI
#include "wx/fontutil.h" // for wxNativeEncodingInfo
#endif // wxUSE_GUI
#if wxUSE_CONFIG
class WXDLLEXPORT wxConfigBase;
#endif // wxUSE_CONFIG
class WXDLLEXPORT wxFontMapper;
#if wxUSE_GUI
class WXDLLEXPORT wxWindow;
#endif // wxUSE_GUI
// ============================================================================
// wxFontMapper manages user-definable correspondence between wxWindows font
// encodings and the fonts present on the machine.
//
// This is a singleton class, font mapper objects can only be accessed using
// wxFontMapper::Get().
// ============================================================================
// ----------------------------------------------------------------------------
// wxFontMapperBase: this is a non-interactive class which just uses its built
// in knowledge of the encodings equivalence
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxFontMapperBase
{
public:
// constructtor and such
// ---------------------
// default ctor
wxFontMapperBase();
// virtual dtor for any base class
virtual ~wxFontMapperBase();
// return instance of the wxFontMapper singleton
static wxFontMapper *Get();
// set the sigleton to 'mapper' instance and return previous one
static wxFontMapper *Set(wxFontMapper *mapper);
// translates charset strings to encoding
// --------------------------------------
// returns the encoding for the given charset (in the form of RFC 2046) or
// wxFONTENCODING_SYSTEM if couldn't decode it
//
// interactive parameter is ignored in the base class, we behave as if it
// were always false
virtual wxFontEncoding CharsetToEncoding(const wxString& charset,
bool interactive = true);
// information about supported encodings
// -------------------------------------
// get the number of font encodings we know about
static size_t GetSupportedEncodingsCount();
// get the n-th supported encoding
static wxFontEncoding GetEncoding(size_t n);
// return internal string identifier for the encoding (see also
// GetEncodingDescription())
static wxString GetEncodingName(wxFontEncoding encoding);
// return user-readable string describing the given encoding
//
// NB: hard-coded now, but might change later (read it from config?)
static wxString GetEncodingDescription(wxFontEncoding encoding);
// functions which allow to configure the config object used: by default,
// the global one (from wxConfigBase::Get() will be used) and the default
// root path for the config settings is the string returned by
// GetDefaultConfigPath()
// ----------------------------------------------------------------------
#if wxUSE_CONFIG
// set the config object to use (may be NULL to use default)
void SetConfig(wxConfigBase *config) { m_config = config; }
// set the root config path to use (should be an absolute path)
void SetConfigPath(const wxString& prefix);
// return default config path
static const wxChar *GetDefaultConfigPath();
#endif // wxUSE_CONFIG
protected:
#if wxUSE_CONFIG
// get the config object we're using -- if it wasn't set explicitly, this
// function will use wxConfig::Get() to get the global one
wxConfigBase *GetConfig();
// gets the root path for our settings -- if it wasn't set explicitly, use
// GetDefaultConfigPath()
const wxString& GetConfigPath();
// change to the given (relative) path in the config, return true if ok
// (then GetConfig() will return something !NULL), false if no config
// object
//
// caller should provide a pointer to the string variable which should be
// later passed to RestorePath()
bool ChangePath(const wxString& pathNew, wxString *pathOld);
// restore the config path after use
void RestorePath(const wxString& pathOld);
// config object and path (in it) to use
wxConfigBase *m_config;
bool m_configIsDummy;
wxString m_configRootPath;
#endif // wxUSE_CONFIG
private:
// the global fontmapper object or NULL
static wxFontMapper *sm_instance;
friend class wxFontMapperPathChanger;
DECLARE_NO_COPY_CLASS(wxFontMapperBase)
};
// ----------------------------------------------------------------------------
// wxFontMapper: interactive extension of wxFontMapperBase
//
// The default implementations of all functions will ask the user if they are
// not capable of finding the answer themselves and store the answer in a
// config file (configurable via SetConfigXXX functions). This behaviour may
// be disabled by giving the value of false to "interactive" parameter.
// However, the functions will always consult the config file to allow the
// user-defined values override the default logic and there is no way to
// disable this -- which shouldn't be ever needed because if "interactive" was
// never true, the config file is never created anyhow.
// ----------------------------------------------------------------------------
#if wxUSE_GUI
class WXDLLEXPORT wxFontMapper : public wxFontMapperBase
{
public:
// default ctor
wxFontMapper();
// virtual dtor for a base class
virtual ~wxFontMapper();
// working with the encodings
// --------------------------
// returns the encoding for the given charset (in the form of RFC 2046) or
// wxFONTENCODING_SYSTEM if couldn't decode it
virtual wxFontEncoding CharsetToEncoding(const wxString& charset,
bool interactive = true);
// find an alternative for the given encoding (which is supposed to not be
// available on this system). If successful, return true and fill info
// structure with the parameters required to create the font, otherwise
// return false
virtual bool GetAltForEncoding(wxFontEncoding encoding,
wxNativeEncodingInfo *info,
const wxString& facename = wxEmptyString,
bool interactive = true);
// version better suitable for 'public' use. Returns wxFontEcoding
// that can be used it wxFont ctor
bool GetAltForEncoding(wxFontEncoding encoding,
wxFontEncoding *alt_encoding,
const wxString& facename = wxEmptyString,
bool interactive = true);
// checks whether given encoding is available in given face or not.
// If no facename is given,
virtual bool IsEncodingAvailable(wxFontEncoding encoding,
const wxString& facename = wxEmptyString);
// configure the appearance of the dialogs we may popup
// ----------------------------------------------------
// the parent window for modal dialogs
void SetDialogParent(wxWindow *parent) { m_windowParent = parent; }
// the title for the dialogs (note that default is quite reasonable)
void SetDialogTitle(const wxString& title) { m_titleDialog = title; }
protected:
// GetAltForEncoding() helper: tests for the existence of the given
// encoding and saves the result in config if ok - this results in the
// following (desired) behaviour: when an unknown/unavailable encoding is
// requested for the first time, the user is asked about a replacement,
// but if he doesn't choose any and the default logic finds one, it will
// be saved in the config so that the user won't be asked about it any
// more
bool TestAltEncoding(const wxString& configEntry,
wxFontEncoding encReplacement,
wxNativeEncodingInfo *info);
// the title for our dialogs
wxString m_titleDialog;
// the parent window for our dialogs
wxWindow *m_windowParent;
private:
DECLARE_NO_COPY_CLASS(wxFontMapper)
};
#else // !wxUSE_GUI
class WXDLLEXPORT wxFontMapper : public wxFontMapperBase
{
};
#endif // wxUSE_GUI/!wxUSE_GUI
// ----------------------------------------------------------------------------
// global variables
// ----------------------------------------------------------------------------
// the default font mapper for wxWindows programs do NOT use! This is for
// backward compatibility, use wxFontMapper::Get() instead
#define wxTheFontMapper (wxFontMapper::Get())
#else // !wxUSE_FONTMAP
#if wxUSE_GUI
// wxEncodingToCodepage (utils.cpp) needs wxGetNativeFontEncoding
#include "wx/fontutil.h"
#endif
#endif // wxUSE_FONTMAP/!wxUSE_FONTMAP
#endif // _WX_FONTMAPPER_H_

199
include/wx/fontutil.h Normal file
View File

@@ -0,0 +1,199 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/fontutil.h
// Purpose: font-related helper functions
// Author: Vadim Zeitlin
// Modified by:
// Created: 05.11.99
// RCS-ID: $Id$
// Copyright: (c) wxWindows team
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
// General note: this header is private to wxWindows and is not supposed to be
// included by user code. The functions declared here are implemented in
// msw/fontutil.cpp for Windows, unix/fontutil.cpp for GTK/Motif &c.
#ifndef _WX_FONTUTIL_H_
#define _WX_FONTUTIL_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "fontutil.h"
#endif
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------
#include "wx/font.h" // for wxFont and wxFontEncoding
#if defined(__WXMSW__)
#include <windows.h>
#include "wx/msw/winundef.h"
#endif
#if defined(_WX_X_FONTLIKE)
// the symbolic names for the XLFD fields (with examples for their value)
//
// NB: we suppose that the font always starts with the empty token (font name
// registry field) as we never use nor generate it anyhow
enum wxXLFDField
{
wxXLFD_FOUNDRY, // adobe
wxXLFD_FAMILY, // courier, times, ...
wxXLFD_WEIGHT, // black, bold, demibold, medium, regular, light
wxXLFD_SLANT, // r/i/o (roman/italique/oblique)
wxXLFD_SETWIDTH, // condensed, expanded, ...
wxXLFD_ADDSTYLE, // whatever - usually nothing
wxXLFD_PIXELSIZE, // size in pixels
wxXLFD_POINTSIZE, // size in points
wxXLFD_RESX, // 72, 75, 100, ...
wxXLFD_RESY,
wxXLFD_SPACING, // m/p/c (monospaced/proportional/character cell)
wxXLFD_AVGWIDTH, // average width in 1/10 pixels
wxXLFD_REGISTRY, // iso8859, rawin, koi8, ...
wxXLFD_ENCODING, // 1, r, r, ...
wxXLFD_MAX
};
#endif // _WX_X_FONTLIKE
// ----------------------------------------------------------------------------
// types
// ----------------------------------------------------------------------------
// wxNativeFontInfo is platform-specific font representation: this struct
// should be considered as opaque font description only used by the native
// functions, the user code can only get the objects of this type from
// somewhere and pass it somewhere else (possibly save them somewhere using
// ToString() and restore them using FromString())
//
// NB: it is a POD currently for max efficiency but if it continues to grow
// further it might make sense to make it a real class with virtual methods
struct WXDLLEXPORT wxNativeFontInfo
{
#if wxUSE_PANGO
PangoFontDescription *description;
#elif defined(_WX_X_FONTLIKE)
// the members can't be accessed directly as we only parse the
// xFontName on demand
private:
// the components of the XLFD
wxString fontElements[wxXLFD_MAX];
// the full XLFD
wxString xFontName;
// true until SetXFontName() is called
bool m_isDefault;
// return true if we have already initialized fontElements
inline bool HasElements() const;
public:
// init the elements from an XLFD, return TRUE if ok
bool FromXFontName(const wxString& xFontName);
// return false if we were never initialized with a valid XLFD
bool IsDefault() const { return m_isDefault; }
// return the XLFD (using the fontElements if necessary)
wxString GetXFontName() const;
// get the given XFLD component
wxString GetXFontComponent(wxXLFDField field) const;
// change the font component
void SetXFontComponent(wxXLFDField field, const wxString& value);
// set the XFLD
void SetXFontName(const wxString& xFontName);
#elif defined(__WXMSW__)
LOGFONT lf;
#elif defined(__WXPM__)
// OS/2 native structures that define a font
FATTRS fa;
FONTMETRICS fm;
FACENAMEDESC fn;
#else // other platforms
//
// This is a generic implementation that should work on all ports
// without specific support by the port.
//
#define wxNO_NATIVE_FONTINFO
int pointSize;
wxFontFamily family;
wxFontStyle style;
wxFontWeight weight;
bool underlined;
wxString faceName;
wxFontEncoding encoding;
#endif // platforms
// default ctor (default copy ctor is ok)
wxNativeFontInfo() { Init(); }
// reset to the default state
void Init();
// accessors and modifiers for the font elements
int GetPointSize() const;
wxFontStyle GetStyle() const;
wxFontWeight GetWeight() const;
bool GetUnderlined() const;
wxString GetFaceName() const;
wxFontFamily GetFamily() const;
wxFontEncoding GetEncoding() const;
void SetPointSize(int pointsize);
void SetStyle(wxFontStyle style);
void SetWeight(wxFontWeight weight);
void SetUnderlined(bool underlined);
void SetFaceName(wxString facename);
void SetFamily(wxFontFamily family);
void SetEncoding(wxFontEncoding encoding);
// it is important to be able to serialize wxNativeFontInfo objects to be
// able to store them (in config file, for example)
bool FromString(const wxString& s);
wxString ToString() const;
// we also want to present the native font descriptions to the user in some
// human-readable form (it is not platform independent neither, but can
// hopefully be understood by the user)
bool FromUserString(const wxString& s);
wxString ToUserString() const;
};
// ----------------------------------------------------------------------------
// font-related functions (common)
// ----------------------------------------------------------------------------
// translate a wxFontEncoding into native encoding parameter (defined above),
// returning TRUE if an (exact) macth could be found, FALSE otherwise (without
// attempting any substitutions)
extern bool wxGetNativeFontEncoding(wxFontEncoding encoding,
wxNativeEncodingInfo *info);
// test for the existence of the font described by this facename/encoding,
// return TRUE if such font(s) exist, FALSE otherwise
extern bool wxTestFontEncoding(const wxNativeEncodingInfo& info);
// ----------------------------------------------------------------------------
// font-related functions (X and GTK)
// ----------------------------------------------------------------------------
#ifdef _WX_X_FONTLIKE
#include "wx/unix/fontutil.h"
#endif // X || GDK
// ----------------------------------------------------------------------------
// font-related functions (MGL)
// ----------------------------------------------------------------------------
#ifdef __WXMGL__
#include "wx/mgl/fontutil.h"
#endif // __WXMGL__
#endif // _WX_FONTUTIL_H_

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

@@ -0,0 +1,241 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/frame.h
// Purpose: wxFrame class interface
// Author: Vadim Zeitlin
// Modified by:
// Created: 15.11.99
// RCS-ID: $Id$
// Copyright: (c) wxWindows team
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FRAME_H_BASE_
#define _WX_FRAME_H_BASE_
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "framebase.h"
#endif
#include "wx/toplevel.h" // the base class
// the default names for various classs
WXDLLEXPORT_DATA(extern const wxChar*) wxFrameNameStr;
WXDLLEXPORT_DATA(extern const wxChar*) wxStatusLineNameStr;
WXDLLEXPORT_DATA(extern const wxChar*) wxToolBarNameStr;
class WXDLLEXPORT wxFrame;
class WXDLLEXPORT wxMenuBar;
class WXDLLEXPORT wxStatusBar;
class WXDLLEXPORT wxToolBar;
// ----------------------------------------------------------------------------
// wxFrame is a top-level window with optional menubar, statusbar and toolbar
//
// For each of *bars, a frame may have several of them, but only one is
// managed by the frame, i.e. resized/moved when the frame is and whose size
// is accounted for in client size calculations - all others should be taken
// care of manually. The CreateXXXBar() functions create this, main, XXXBar,
// but the actual creation is done in OnCreateXXXBar() functions which may be
// overridden to create custom objects instead of standard ones when
// CreateXXXBar() is called.
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxFrameBase : public wxTopLevelWindow
{
public:
// construction
wxFrameBase();
virtual ~wxFrameBase();
wxFrame *New(wxWindow *parent,
wxWindowID winid,
const wxString& title,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxDEFAULT_FRAME_STYLE,
const wxString& name = wxFrameNameStr);
// frame state
// -----------
// get the origin of the client area (which may be different from (0, 0)
// if the frame has a toolbar) in client coordinates
virtual wxPoint GetClientAreaOrigin() const;
// sends a size event to the window using its current size -- this has an
// effect of refreshing the window layout
//
// currently it is only implemented under MSW but is declared here to make
// it possible to call it in portable code without using #ifdef's
virtual void SendSizeEvent() { }
// menu bar functions
// ------------------
#if wxUSE_MENUS
virtual void SetMenuBar(wxMenuBar *menubar);
virtual wxMenuBar *GetMenuBar() const { return m_frameMenuBar; }
#endif // wxUSE_MENUS
#ifdef WXWIN_COMPATIBILITY_2_2
// call this to simulate a menu command
bool Command(int winid) { return ProcessCommand(winid); }
#endif // WXWIN_COMPATIBILITY_2_2
// process menu command: returns TRUE if processed
bool ProcessCommand(int winid);
// status bar functions
// --------------------
#if wxUSE_STATUSBAR
// create the main status bar by calling OnCreateStatusBar()
virtual wxStatusBar* CreateStatusBar(int number = 1,
long style = wxST_SIZEGRIP,
wxWindowID winid = 0,
const wxString& name =
wxStatusLineNameStr);
// return a new status bar
virtual wxStatusBar *OnCreateStatusBar(int number,
long style,
wxWindowID winid,
const wxString& name);
// get the main status bar
virtual wxStatusBar *GetStatusBar() const { return m_frameStatusBar; }
// sets the main status bar
void SetStatusBar(wxStatusBar *statBar) { m_frameStatusBar = statBar; }
// forward these to status bar
virtual void SetStatusText(const wxString &text, int number = 0);
virtual void SetStatusWidths(int n, const int widths_field[]);
void PushStatusText(const wxString &text, int number = 0);
void PopStatusText(int number = 0);
// set the status bar pane the help will be shown in
void SetStatusBarPane(int n) { m_statusBarPane = n; }
int GetStatusBarPane() const { return m_statusBarPane; }
#endif // wxUSE_STATUSBAR
// toolbar functions
// -----------------
#if wxUSE_TOOLBAR
// create main toolbar bycalling OnCreateToolBar()
virtual wxToolBar* CreateToolBar(long style = wxNO_BORDER|wxTB_HORIZONTAL,
wxWindowID winid = -1,
const wxString& name = wxToolBarNameStr);
// return a new toolbar
virtual wxToolBar *OnCreateToolBar(long style,
wxWindowID winid,
const wxString& name );
// get/set the main toolbar
virtual wxToolBar *GetToolBar() const { return m_frameToolBar; }
virtual void SetToolBar(wxToolBar *toolbar) { m_frameToolBar = toolbar; }
#endif // wxUSE_TOOLBAR
// implementation only from now on
// -------------------------------
// event handlers
void OnIdle(wxIdleEvent& event);
void OnMenuHighlight(wxMenuEvent& event);
#if wxUSE_MENUS
// send wxUpdateUIEvents for all menu items (called from OnIdle())
void DoMenuUpdates();
void DoMenuUpdates(wxMenu* menu, wxWindow* focusWin);
#endif // wxUSE_MENUS
// if there is no real wxTopLevelWindow on this platform we have to define
// some wxTopLevelWindowBase pure virtual functions here to avoid breaking
// old ports (wxMotif) which don't define them in wxFrame
#ifndef wxTopLevelWindowNative
virtual bool ShowFullScreen(bool WXUNUSED(show),
long WXUNUSED(style) = wxFULLSCREEN_ALL)
{ return FALSE; }
virtual bool IsFullScreen() const
{ return FALSE; }
#endif // no wxTopLevelWindowNative
// show help text (typically in the statusbar); show is FALSE
// if you are hiding the help, TRUE otherwise
virtual void DoGiveHelp(const wxString& text, bool show);
protected:
// the frame main menu/status/tool bars
// ------------------------------------
// this (non virtual!) function should be called from dtor to delete the
// main menubar, statusbar and toolbar (if any)
void DeleteAllBars();
// test whether this window makes part of the frame
virtual bool IsOneOfBars(const wxWindow *win) const;
#if wxUSE_MENUS
// override to update menu bar position when the frame size changes
virtual void PositionMenuBar() { }
// override to do something special when the menu bar is being removed
// from the frame
virtual void DetachMenuBar();
// override to do something special when the menu bar is attached to the
// frame
virtual void AttachMenuBar(wxMenuBar *menubar);
wxMenuBar *m_frameMenuBar;
#endif // wxUSE_MENUS
#if wxUSE_STATUSBAR
// override to update status bar position (or anything else) when
// something changes
virtual void PositionStatusBar() { }
// show the help string for this menu item in the given status bar: the
// status bar pointer can be NULL; return TRUE if help was shown
bool ShowMenuHelp(wxStatusBar *statbar, int helpid);
wxStatusBar *m_frameStatusBar;
#endif // wxUSE_STATUSBAR
int m_statusBarPane;
#if wxUSE_TOOLBAR
// override to update status bar position (or anything else) when
// something changes
virtual void PositionToolBar() { }
wxToolBar *m_frameToolBar;
#endif // wxUSE_TOOLBAR
DECLARE_EVENT_TABLE()
DECLARE_NO_COPY_CLASS(wxFrameBase)
};
// include the real class declaration
#if defined(__WXUNIVERSAL__) // && !defined(__WXMICROWIN__)
#include "wx/univ/frame.h"
#else // !__WXUNIVERSAL__
#if defined(__WXMSW__)
#include "wx/msw/frame.h"
#elif defined(__WXGTK__)
#include "wx/gtk/frame.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/frame.h"
#elif defined(__WXMAC__)
#include "wx/mac/frame.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/frame.h"
#elif defined(__WXPM__)
#include "wx/os2/frame.h"
#endif
#endif
#endif
// _WX_FRAME_H_BASE_

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

@@ -0,0 +1,57 @@
/////////////////////////////////////////////////////////////////////////////
// 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)
*/
#ifndef _WX_FS_INET_H_
#define _WX_FS_INET_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "fs_inet.h"
#endif
#include "wx/defs.h"
#if wxUSE_FILESYSTEM && wxUSE_FS_INET && wxUSE_STREAMS && wxUSE_SOCKETS
#ifndef WXPRECOMP
#include "wx/hash.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_FILESYSTEM && wxUSE_FS_INET && wxUSE_STREAMS && wxUSE_SOCKETS
#endif // _WX_FS_INET_H_

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

@@ -0,0 +1,72 @@
/////////////////////////////////////////////////////////////////////////////
// Name: fs_mem.h
// Purpose: in-memory file system
// Author: Vaclav Slavik
// Copyright: (c) 2000 Vaclav Slavik
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FS_MEM_H_
#define _WX_FS_MEM_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "fs_mem.h"
#endif
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#if wxUSE_FILESYSTEM
#include "wx/filesys.h"
class WXDLLEXPORT wxBitmap;
class WXDLLEXPORT wxImage;
//--------------------------------------------------------------------------------
// wxMemoryFSHandler
//--------------------------------------------------------------------------------
class WXDLLEXPORT wxMemoryFSHandlerBase : public wxFileSystemHandler
{
public:
wxMemoryFSHandlerBase();
~wxMemoryFSHandlerBase();
// Add file to list of files stored in memory. Stored data (bitmap, text or
// raw data) will be copied into private memory stream and available under
// name "memory:" + filename
static void AddFile(const wxString& filename, const wxString& textdata);
static void AddFile(const wxString& filename, const void *binarydata, size_t size);
// Remove file from memory FS and free occupied memory
static void RemoveFile(const wxString& filename);
virtual bool CanOpen(const wxString& location);
virtual wxFSFile* OpenFile(wxFileSystem& fs, const wxString& location);
virtual wxString FindFirst(const wxString& spec, int flags = 0);
virtual wxString FindNext();
protected:
static bool CheckHash(const wxString& filename);
static wxHashTable *m_Hash;
};
class wxMemoryFSHandler : public wxMemoryFSHandlerBase
{
public:
#if wxUSE_GUI
#if wxUSE_IMAGE
static void AddFile(const wxString& filename, wxImage& image, long type);
#endif // wxUSE_IMAGE
static void AddFile(const wxString& filename, const wxBitmap& bitmap, long type);
#endif // wxUSE_GUI
};
#endif // wxUSE_FILESYSTEM
#endif // _WX_FS_MEM_H_

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

@@ -0,0 +1,60 @@
/////////////////////////////////////////////////////////////////////////////
// Name: fs_zip.h
// Purpose: ZIP file system
// Author: Vaclav Slavik
// Copyright: (c) 1999 Vaclav Slavik
// CVS-ID: $Id$
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FS_ZIP_H_
#define _WX_FS_ZIP_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "fs_zip.h"
#endif
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#if wxUSE_FILESYSTEM && wxUSE_FS_ZIP && wxUSE_STREAMS
#include "wx/filesys.h"
class WXDLLEXPORT wxHashTableLong;
//--------------------------------------------------------------------------------
// wxZipFSHandler
//--------------------------------------------------------------------------------
class WXDLLEXPORT wxZipFSHandler : public wxFileSystemHandler
{
public:
wxZipFSHandler();
virtual bool CanOpen(const wxString& location);
virtual wxFSFile* OpenFile(wxFileSystem& fs, const wxString& location);
virtual wxString FindFirst(const wxString& spec, int flags = 0);
virtual wxString FindNext();
~wxZipFSHandler();
private:
// these vars are used by FindFirst/Next:
void *m_Archive;
wxString m_Pattern, m_BaseDir, m_ZipFile;
bool m_AllowDirs, m_AllowFiles;
wxHashTableLong *m_DirsFound;
wxString DoFind();
DECLARE_NO_COPY_CLASS(wxZipFSHandler)
};
#endif
// wxUSE_FILESYSTEM && wxUSE_FS_ZIP && wxUSE_STREAMS
#endif // _WX_FS_ZIP_H_

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

@@ -0,0 +1,95 @@
///////////////////////////////////////////////////////////////////////////////
// Name: wx/gauge.h
// Purpose: wxGauge interface
// Author: Vadim Zeitlin
// Modified by:
// Created: 20.02.01
// RCS-ID: $Id$
// Copyright: (c) 1996-2001 wxWindows team
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#ifndef _WX_GAUGE_H_BASE_
#define _WX_GAUGE_H_BASE_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "gaugebase.h"
#endif
#include "wx/defs.h"
#if wxUSE_GAUGE
#include "wx/control.h"
WXDLLEXPORT_DATA(extern const wxChar*) wxGaugeNameStr;
// ----------------------------------------------------------------------------
// wxGauge: a progress bar
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxGaugeBase : public wxControl
{
public:
virtual ~wxGaugeBase();
bool Create(wxWindow *parent,
wxWindowID id,
int range,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxGA_HORIZONTAL,
const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxGaugeNameStr);
// set/get the control range
virtual void SetRange(int range);
virtual int GetRange() const;
// position
virtual void SetValue(int pos);
virtual int GetValue() const;
// appearance params (not implemented for most ports)
virtual void SetShadowWidth(int w);
virtual int GetShadowWidth() const;
virtual void SetBezelFace(int w);
virtual int GetBezelFace() const;
// overriden base class virtuals
virtual bool AcceptsFocus() const { return FALSE; }
protected:
// the max position
int m_rangeMax;
// the current position
int m_gaugePos;
};
#if defined(__WXUNIVERSAL__)
#include "wx/univ/gauge.h"
#elif defined(__WXMSW__)
#ifdef __WIN95__
#include "wx/msw/gauge95.h"
#define wxGauge wxGauge95
#define sm_classwxGauge sm_classwxGauge95
#else // !__WIN95__
// Gauge no longer supported on 16-bit Windows
#endif
#elif defined(__WXMOTIF__)
#include "wx/motif/gauge.h"
#elif defined(__WXGTK__)
#include "wx/gtk/gauge.h"
#elif defined(__WXMAC__)
#include "wx/mac/gauge.h"
#elif defined(__WXPM__)
#include "wx/os2/gauge.h"
#endif
#endif // wxUSE_GAUGE
#endif
// _WX_GAUGE_H_BASE_

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

@@ -0,0 +1,566 @@
/////////////////////////////////////////////////////////////////////////////
// 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
// ---------------------------------------------------------------------------
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "gdicmn.h"
#endif
#include "wx/setup.h"
#include "wx/list.h"
#include "wx/string.h"
#include "wx/fontenc.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 wxBitmapType
{
wxBITMAP_TYPE_INVALID, // should be == 0 for compatibility!
wxBITMAP_TYPE_BMP,
wxBITMAP_TYPE_BMP_RESOURCE,
wxBITMAP_TYPE_RESOURCE = wxBITMAP_TYPE_BMP_RESOURCE,
wxBITMAP_TYPE_ICO,
wxBITMAP_TYPE_ICO_RESOURCE,
wxBITMAP_TYPE_CUR,
wxBITMAP_TYPE_CUR_RESOURCE,
wxBITMAP_TYPE_XBM,
wxBITMAP_TYPE_XBM_DATA,
wxBITMAP_TYPE_XPM,
wxBITMAP_TYPE_XPM_DATA,
wxBITMAP_TYPE_TIF,
wxBITMAP_TYPE_TIF_RESOURCE,
wxBITMAP_TYPE_GIF,
wxBITMAP_TYPE_GIF_RESOURCE,
wxBITMAP_TYPE_PNG,
wxBITMAP_TYPE_PNG_RESOURCE,
wxBITMAP_TYPE_JPEG,
wxBITMAP_TYPE_JPEG_RESOURCE,
wxBITMAP_TYPE_PNM,
wxBITMAP_TYPE_PNM_RESOURCE,
wxBITMAP_TYPE_PCX,
wxBITMAP_TYPE_PCX_RESOURCE,
wxBITMAP_TYPE_PICT,
wxBITMAP_TYPE_PICT_RESOURCE,
wxBITMAP_TYPE_ICON,
wxBITMAP_TYPE_ICON_RESOURCE,
wxBITMAP_TYPE_ANI,
wxBITMAP_TYPE_IFF,
wxBITMAP_TYPE_MACCURSOR,
wxBITMAP_TYPE_MACCURSOR_RESOURCE,
wxBITMAP_TYPE_ANY = 50
};
// Standard cursors
enum wxStockCursor
{
wxCURSOR_NONE, // should be 0
wxCURSOR_ARROW,
wxCURSOR_RIGHT_ARROW,
wxCURSOR_BULLSEYE,
wxCURSOR_CHAR,
wxCURSOR_CROSS,
wxCURSOR_HAND,
wxCURSOR_IBEAM,
wxCURSOR_LEFT_BUTTON,
wxCURSOR_MAGNIFIER,
wxCURSOR_MIDDLE_BUTTON,
wxCURSOR_NO_ENTRY,
wxCURSOR_PAINT_BRUSH,
wxCURSOR_PENCIL,
wxCURSOR_POINT_LEFT,
wxCURSOR_POINT_RIGHT,
wxCURSOR_QUESTION_ARROW,
wxCURSOR_RIGHT_BUTTON,
wxCURSOR_SIZENESW,
wxCURSOR_SIZENS,
wxCURSOR_SIZENWSE,
wxCURSOR_SIZEWE,
wxCURSOR_SIZING,
wxCURSOR_SPRAYCAN,
wxCURSOR_WAIT,
wxCURSOR_WATCH,
wxCURSOR_BLANK,
#ifdef __WXGTK__
wxCURSOR_DEFAULT, // standard X11 cursor
#endif
#ifdef __WXMAC__
wxCURSOR_COPY_ARROW , // MacOS Theme Plus arrow
#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_ARROWWAIT,
wxCURSOR_MAX
};
#ifndef __WXGTK__
#define wxCURSOR_DEFAULT wxCURSOR_ARROW
#endif
// ---------------------------------------------------------------------------
// 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(wxT(#X))
#elif defined(__WXPM__)
// Load from a resource
#define wxICON(X) wxIcon(wxT(#X))
#elif defined(__WXMGL__)
// Initialize from an included XPM
#define wxICON(X) wxIcon( (const char**) X##_xpm )
#elif defined(__WXGTK__)
// Initialize from an included XPM
#define wxICON(X) wxIcon( (const char**) X##_xpm )
#elif defined(__WXMAC__)
// 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 )
#elif defined(__WXX11__)
// Initialize from an included XPM
#define wxICON(X) wxIcon( X##_xpm )
#else
// This will usually mean something on any platform
#define wxICON(X) wxIcon(wxT(#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(wxT(#name), wxBITMAP_TYPE_RESOURCE)
#elif defined(__WXGTK__) || defined(__WXMOTIF__) || defined(__WXX11__) || defined(__WXMAC__) || defined(__WXMGL__)
// Initialize from an included XPM
#define wxBITMAP(name) wxBitmap( (const char**) name##_xpm )
#else // other platforms
#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.
int x, y;
// constructors
wxSize() : x(0), y(0) { }
wxSize(int xx, int yy) : x(xx), y(yy) { }
// no copy ctor or assignment operator - the defaults are ok
bool operator==(const wxSize& sz) const { return x == sz.x && y == sz.y; }
bool operator!=(const wxSize& sz) const { return x != sz.x || y != sz.y; }
// 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(int xx, int yy) { x = xx; y = yy; }
void SetWidth(int w) { x = w; }
void SetHeight(int h) { y = h; }
int GetWidth() const { return x; }
int GetHeight() const { return y; }
// compatibility
int GetX() const { return x; }
int GetY() const { return y; }
};
// ---------------------------------------------------------------------------
// Point classes: with real or integer coordinates
// ---------------------------------------------------------------------------
class WXDLLEXPORT wxRealPoint
{
public:
double x;
double y;
wxRealPoint() : x(0.0), y(0.0) { }
wxRealPoint(double xx, double yy) : x(xx), y(yy) { }
wxRealPoint operator+(const wxRealPoint& pt) const { return wxRealPoint(x + pt.x, y + pt.y); }
wxRealPoint operator-(const wxRealPoint& pt) const { return wxRealPoint(x - pt.x, y - pt.y); }
bool operator==(const wxRealPoint& pt) const { return x == pt.x && y == pt.y; }
bool operator!=(const wxRealPoint& pt) const { return x != pt.x || y != pt.y; }
};
class WXDLLEXPORT wxPoint
{
public:
int x, y;
wxPoint() : x(0), y(0) { }
wxPoint(int xx, int 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) const { return wxPoint(x + p.x, y + p.y); }
wxPoint operator-(const wxPoint& p) const { return wxPoint(x - p.x, y - p.y); }
wxPoint& operator+=(const wxPoint& p) { x += p.x; y += p.y; return *this; }
wxPoint& operator-=(const wxPoint& p) { x -= p.x; y -= p.y; return *this; }
};
#if WXWIN_COMPATIBILITY
#define wxIntPoint wxPoint
#define wxRectangle wxRect
#endif // WXWIN_COMPATIBILITY
// ---------------------------------------------------------------------------
// wxRect
// ---------------------------------------------------------------------------
class WXDLLEXPORT wxRect
{
public:
wxRect()
: x(0), y(0), width(0), height(0)
{ }
wxRect(int xx, int yy, int ww, int hh)
: x(xx), y(yy), width(ww), height(hh)
{ }
wxRect(const wxPoint& topLeft, const wxPoint& bottomRight);
wxRect(const wxPoint& pos, const wxSize& size);
// default copy ctor and assignment operators ok
int GetX() const { return x; }
void SetX(int xx) { x = xx; }
int GetY() const { return y; }
void SetY(int yy) { y = yy; }
int GetWidth() const { return width; }
void SetWidth(int w) { width = w; }
int GetHeight() const { return height; }
void SetHeight(int h) { height = h; }
wxPoint GetPosition() const { return wxPoint(x, y); }
void SetPosition( const wxPoint &p ) { x = p.x; y = p.y; }
wxSize GetSize() const { return wxSize(width, height); }
void SetSize( const wxSize &s ) { width = s.GetWidth(); height = s.GetHeight(); }
int GetLeft() const { return x; }
int GetTop() const { return y; }
int GetBottom() const { return y + height - 1; }
int GetRight() const { return x + width - 1; }
void SetLeft(int left) { x = left; }
void SetRight(int right) { width = right - x + 1; }
void SetTop(int top) { y = top; }
void SetBottom(int bottom) { height = bottom - y + 1; }
// operations with rect
wxRect& Inflate(wxCoord dx, wxCoord dy);
wxRect& Inflate(wxCoord d) { return Inflate(d, d); }
wxRect Inflate(wxCoord dx, wxCoord dy) const
{
wxRect r = *this;
r.Inflate(dx, dy);
return r;
}
wxRect& Deflate(wxCoord dx, wxCoord dy) { return Inflate(-dx, -dy); }
wxRect& Deflate(wxCoord d) { return Inflate(-d); }
wxRect Deflate(wxCoord dx, wxCoord dy) const
{
wxRect r = *this;
r.Deflate(dx, dy);
return r;
}
void Offset(wxCoord dx, wxCoord dy) { x += dx; y += dy; }
void Offset(const wxPoint& pt) { Offset(pt.x, pt.y); }
wxRect& Intersect(const wxRect& rect);
wxRect Intersect(const wxRect& rect) const
{
wxRect r = *this;
r.Intersect(rect);
return r;
}
wxRect operator+(const wxRect& rect) const;
wxRect& operator+=(const wxRect& rect);
// compare rectangles
bool operator==(const wxRect& rect) const;
bool operator!=(const wxRect& rect) const { return !(*this == rect); }
// return TRUE if the point is (not strcitly) inside the rect
bool Inside(int x, int y) const;
bool Inside(const wxPoint& pt) const { return Inside(pt.x, pt.y); }
// return TRUE if the rectangles have a non empty intersection
bool Intersects(const wxRect& rect) const;
public:
int x, y, width, height;
};
// ---------------------------------------------------------------------------
// Management of pens, brushes and fonts
// ---------------------------------------------------------------------------
typedef wxInt8 wxDash;
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,
wxFontEncoding encoding = wxFONTENCODING_DEFAULT);
};
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();
#ifdef __WXPM__
// PM keeps its own type of colour table
long* m_palTable;
size_t m_nSize;
#endif
};
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 display size
extern void WXDLLEXPORT wxDisplaySize(int *width, int *height);
extern wxSize WXDLLEXPORT wxGetDisplaySize();
extern void WXDLLEXPORT wxDisplaySizeMM(int *width, int *height);
extern wxSize WXDLLEXPORT wxGetDisplaySizeMM();
// Get position and size of the display workarea
extern void WXDLLEXPORT wxClientDisplayRect(int *x, int *y, int *width, int *height);
extern wxRect WXDLLEXPORT wxGetClientDisplayRect();
// set global cursor
extern void WXDLLEXPORT wxSetCursor(const wxCursor& cursor);
#endif
// _WX_GDICMNH__

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

@@ -0,0 +1,23 @@
#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(__WXX11__)
#include "wx/x11/gdiobj.h"
#elif defined(__WXMGL__)
#include "wx/mgl/gdiobj.h"
#elif defined(__WXMAC__)
#include "wx/mac/gdiobj.h"
#elif defined(__WXCOCOA__)
#include "wx/cocoa/gdiobj.h"
#elif defined(__WXPM__)
#include "wx/os2/gdiobj.h"
#endif
#endif
// _WX_GDIOBJ_H_BASE_

View File

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

View File

@@ -0,0 +1,64 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/generic/accel.h
// Purpose: wxAcceleratorTable class
// Author: Robert Roebling
// RCS-ID: $Id$
// Copyright: (c) Robert Roebling
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_GENERIC_ACCEL_H_
#define _WX_GENERIC_ACCEL_H_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "accel.h"
#endif
class WXDLLEXPORT wxKeyEvent;
// ----------------------------------------------------------------------------
// wxAcceleratorTable
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxAcceleratorTable : public wxObject
{
public:
wxAcceleratorTable();
wxAcceleratorTable(int n, const wxAcceleratorEntry entries[]);
virtual ~wxAcceleratorTable();
wxAcceleratorTable(const wxAcceleratorTable& accel)
: wxObject()
{ Ref(accel); }
wxAcceleratorTable& operator=(const wxAcceleratorTable& accel)
{ if ( m_refData != accel.m_refData ) Ref(accel); return *this; }
bool operator==(const wxAcceleratorTable& accel) const
{ return m_refData == accel.m_refData; } // FIXME: this is wrong (VZ)
bool operator!=(const wxAcceleratorTable& accel) const
{ return !(*this == accel); }
bool Ok() const;
void Add(const wxAcceleratorEntry& entry);
void Remove(const wxAcceleratorEntry& entry);
// implementation
// --------------
wxMenuItem *GetMenuItem(const wxKeyEvent& event) const;
int GetCommand(const wxKeyEvent& event) const;
const wxAcceleratorEntry *GetEntry(const wxKeyEvent& event) const;
protected:
// ref counting code
virtual wxObjectRefData *CreateRefData() const;
virtual wxObjectRefData *CloneRefData(const wxObjectRefData *data) const;
private:
DECLARE_DYNAMIC_CLASS(wxAcceleratorTable)
};
#endif // _WX_GENERIC_ACCEL_H_

View File

@@ -0,0 +1,308 @@
///////////////////////////////////////////////////////////////////////////////
// Name: generic/calctrl.h
// Purpose: generic implementation of date-picker control
// Author: Vadim Zeitlin
// Modified by:
// Created: 29.12.99
// RCS-ID: $Id$
// Copyright: (c) 1999 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "calctrl.h"
#endif
#ifndef _WX_GENERIC_CALCTRL_H
#define _WX_GENERIC_CALCTRL_H
#include "wx/control.h" // the base class
#include "wx/dcclient.h" // for wxPaintDC
class WXDLLEXPORT wxComboBox;
class WXDLLEXPORT wxStaticText;
class WXDLLEXPORT wxSpinCtrl;
#define wxCalendarNameStr _T("CalendarCtrl")
// ----------------------------------------------------------------------------
// wxCalendarCtrl: a control allowing the user to pick a date interactively
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxCalendarCtrl : public wxControl
{
friend class wxMonthComboBox;
friend class wxYearSpinCtrl;
public:
// construction
wxCalendarCtrl() { Init(); }
wxCalendarCtrl(wxWindow *parent,
wxWindowID id,
const wxDateTime& date = wxDefaultDateTime,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxCAL_SHOW_HOLIDAYS | wxWANTS_CHARS,
const wxString& name = wxCalendarNameStr);
bool Create(wxWindow *parent,
wxWindowID id,
const wxDateTime& date = wxDefaultDateTime,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxCAL_SHOW_HOLIDAYS | wxWANTS_CHARS,
const wxString& name = wxCalendarNameStr);
virtual ~wxCalendarCtrl();
virtual bool Destroy();
// set/get the current date
// ------------------------
bool SetDate(const wxDateTime& date); // we need to be able to control if the event should be sent in SetDateAndNotify(...)
const wxDateTime& GetDate() const { return m_date; }
// set/get the range in which selection can occur
// ---------------------------------------------
bool SetLowerDateLimit(const wxDateTime& date = wxDefaultDateTime);
const wxDateTime& GetLowerDateLimit() const { return m_lowdate; }
bool SetUpperDateLimit(const wxDateTime& date = wxDefaultDateTime);
const wxDateTime& GetUpperDateLimit() const { return m_highdate; }
bool SetDateRange(const wxDateTime& lowerdate = wxDefaultDateTime, const wxDateTime& upperdate = wxDefaultDateTime);
// calendar mode
// -------------
// some calendar styles can't be changed after the control creation by
// just using SetWindowStyle() and Refresh() and the functions below
// should be used instead for them
// corresponds to wxCAL_NO_YEAR_CHANGE bit
void EnableYearChange(bool enable = TRUE);
// corresponds to wxCAL_NO_MONTH_CHANGE bit
void EnableMonthChange(bool enable = TRUE);
// corresponds to wxCAL_SHOW_HOLIDAYS bit
void EnableHolidayDisplay(bool display = TRUE);
// customization
// -------------
// header colours are used for painting the weekdays at the top
void SetHeaderColours(const wxColour& colFg, const wxColour& colBg)
{
m_colHeaderFg = colFg;
m_colHeaderBg = colBg;
}
const wxColour& GetHeaderColourFg() const { return m_colHeaderFg; }
const wxColour& GetHeaderColourBg() const { return m_colHeaderBg; }
// highlight colour is used for the currently selected date
void SetHighlightColours(const wxColour& colFg, const wxColour& colBg)
{
m_colHighlightFg = colFg;
m_colHighlightBg = colBg;
}
const wxColour& GetHighlightColourFg() const { return m_colHighlightFg; }
const wxColour& GetHighlightColourBg() const { return m_colHighlightBg; }
// holiday colour is used for the holidays (if style & wxCAL_SHOW_HOLIDAYS)
void SetHolidayColours(const wxColour& colFg, const wxColour& colBg)
{
m_colHolidayFg = colFg;
m_colHolidayBg = colBg;
}
const wxColour& GetHolidayColourFg() const { return m_colHolidayFg; }
const wxColour& GetHolidayColourBg() const { return m_colHolidayBg; }
// an item without custom attributes is drawn with the default colours and
// font and without border, setting custom attributes allows to modify this
//
// the day parameter should be in 1..31 range, for days 29, 30, 31 the
// corresponding attribute is just unused if there is no such day in the
// current month
wxCalendarDateAttr *GetAttr(size_t day) const
{
wxCHECK_MSG( day > 0 && day < 32, NULL, _T("invalid day") );
return m_attrs[day - 1];
}
void SetAttr(size_t day, wxCalendarDateAttr *attr)
{
wxCHECK_RET( day > 0 && day < 32, _T("invalid day") );
delete m_attrs[day - 1];
m_attrs[day - 1] = attr;
}
void SetHoliday(size_t day);
void ResetAttr(size_t day) { SetAttr(day, (wxCalendarDateAttr *)NULL); }
// returns one of wxCAL_HITTEST_XXX constants and fills either date or wd
// with the corresponding value (none for NOWHERE, the date for DAY and wd
// for HEADER)
wxCalendarHitTestResult HitTest(const wxPoint& pos,
wxDateTime *date = NULL,
wxDateTime::WeekDay *wd = NULL);
// implementation only from now on
// -------------------------------
// forward these functions to all subcontrols
virtual bool Enable(bool enable = TRUE);
virtual bool Show(bool show = TRUE);
private:
// common part of all ctors
void Init();
// event handlers
void OnPaint(wxPaintEvent& event);
void OnClick(wxMouseEvent& event);
void OnDClick(wxMouseEvent& event);
void OnChar(wxKeyEvent& event);
void OnMonthChange(wxCommandEvent& event);
void OnYearChange(wxCommandEvent& event);
// override some base class virtuals
virtual wxSize DoGetBestSize() const;
virtual void DoGetPosition(int *x, int *y) const;
virtual void DoGetSize(int *width, int *height) const;
virtual void DoSetSize(int x, int y, int width, int height, int sizeFlags);
virtual void DoMoveWindow(int x, int y, int width, int height);
// (re)calc m_widthCol and m_heightRow
void RecalcGeometry();
// set the date and send the notification
void SetDateAndNotify(const wxDateTime& date);
// get the week (row, in range 1..6) for the given date
size_t GetWeek(const wxDateTime& date) const;
// get the date from which we start drawing days
wxDateTime GetStartDate() const;
// is this date shown?
bool IsDateShown(const wxDateTime& date) const;
// is this date in the given range?
bool IsDateInRange(const wxDateTime& date) const;
// range helpers
bool ChangeYear(wxDateTime* target) const;
bool ChangeMonth(wxDateTime* target) const;
// redraw the given date
void RefreshDate(const wxDateTime& date);
// change the date inside the same month/year
void ChangeDay(const wxDateTime& date);
// set the attributes for the holidays if needed
void SetHolidayAttrs();
// reset all holidays
void ResetHolidayAttrs();
// generate the given calendar event(s)
void GenerateEvent(wxEventType type)
{
wxCalendarEvent event(this, type);
(void)GetEventHandler()->ProcessEvent(event);
}
void GenerateEvents(wxEventType type1, wxEventType type2)
{
GenerateEvent(type1);
GenerateEvent(type2);
}
// do we allow changing the month/year?
bool AllowMonthChange() const
{
return (GetWindowStyle() & wxCAL_NO_MONTH_CHANGE)
!= wxCAL_NO_MONTH_CHANGE;
}
bool AllowYearChange() const
{
return !(GetWindowStyle() & wxCAL_NO_YEAR_CHANGE);
}
// show the correct controls
void ShowCurrentControls();
// get the currently shown control for month/year
wxControl *GetMonthControl() const;
wxControl *GetYearControl() const;
// OnPaint helper-methods
// Highlight the [fromdate : todate] range using pen and brush
void HighlightRange(wxPaintDC* dc, const wxDateTime& fromdate, const wxDateTime& todate, wxPen* pen, wxBrush* brush);
// Get the "coordinates" for the date relative to the month currently displayed.
// using (day, week): upper left coord is (1, 1), lower right coord is (7, 6)
// if the date isn't visible (-1, -1) is put in (day, week) and false is returned
bool GetDateCoord(const wxDateTime& date, int *day, int *week) const;
// Set the flag for SetDate(): otherwise it would overwrite the year
// typed in by the user
void SetUserChangedYear() { m_userChangedYear = TRUE; }
// the subcontrols
wxStaticText *m_staticMonth;
wxComboBox *m_comboMonth;
wxStaticText *m_staticYear;
wxSpinCtrl *m_spinYear;
// the current selection
wxDateTime m_date;
// the date-range
wxDateTime m_lowdate;
wxDateTime m_highdate;
// default attributes
wxColour m_colHighlightFg,
m_colHighlightBg,
m_colHolidayFg,
m_colHolidayBg,
m_colHeaderFg,
m_colHeaderBg;
// the attributes for each of the month days
wxCalendarDateAttr *m_attrs[31];
// the width and height of one column/row in the calendar
wxCoord m_widthCol,
m_heightRow,
m_rowOffset;
wxRect m_leftArrowRect,
m_rightArrowRect;
// the week day names
wxString m_weekdays[7];
// TRUE if SetDate() is being called as the result of changing the year in
// the year control
bool m_userChangedYear;
DECLARE_DYNAMIC_CLASS(wxCalendarCtrl)
DECLARE_EVENT_TABLE()
DECLARE_NO_COPY_CLASS(wxCalendarCtrl)
};
#endif // _WX_GENERIC_CALCTRL_H

View File

@@ -0,0 +1,87 @@
///////////////////////////////////////////////////////////////////////////////
// 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_
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "caret.h"
#endif
#include "wx/timer.h"
class wxCaret;
class WXDLLEXPORT 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
// --------------
// called by wxWindow (not using the event tables)
virtual void OnSetFocus();
virtual void OnKillFocus();
// called by wxCaretTimer
void OnTimer();
protected:
virtual void DoShow();
virtual void DoHide();
virtual void DoMove();
// blink the caret once
void Blink();
// refresh the caret
void Refresh();
// draw the caret on the given DC
void DoDraw(wxDC *dc);
private:
// GTK specific initialization
void InitGeneric();
// the bitmap holding the part of window hidden by the caret when it was
// at (m_xOld, m_yOld)
wxBitmap m_bmpUnderCaret;
int m_xOld,
m_yOld;
wxCaretTimer m_timer;
bool m_blinkedOut, // TRUE => caret hidden right now
m_hasFocus; // TRUE => our window has focus
};
#endif // _WX_CARET_H_

View File

@@ -0,0 +1,313 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/generic/choicdgg.h
// Purpose: Generic choice dialogs
// Author: Julian Smart
// Modified by: 03.11.00: VZ to add wxArrayString and multiple sel functions
// Created: 01/02/97
// RCS-ID: $Id$
// Copyright: (c) wxWindows team
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __CHOICEDLGH_G__
#define __CHOICEDLGH_G__
#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "choicdgg.h"
#endif
#include "wx/dynarray.h"
#include "wx/dialog.h"
class WXDLLEXPORT wxListBox;
// ----------------------------------------------------------------------------
// some (ugly...) constants
// ----------------------------------------------------------------------------
#define wxCHOICE_HEIGHT 150
#define wxCHOICE_WIDTH 200
#define wxCHOICEDLG_STYLE \
(wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER | wxOK | wxCANCEL | wxCENTRE)
// ----------------------------------------------------------------------------
// wxAnyChoiceDialog: a base class for dialogs containing a listbox
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxAnyChoiceDialog : public wxDialog
{
public:
wxAnyChoiceDialog() { }
wxAnyChoiceDialog(wxWindow *parent,
const wxString& message,
const wxString& caption,
int n, const wxString *choices,
long styleDlg = wxCHOICEDLG_STYLE,
const wxPoint& pos = wxDefaultPosition,
long styleLbox = wxLB_ALWAYS_SB)
{
(void)Create(parent, message, caption, n, choices,
styleDlg, pos, styleLbox);
}
bool Create(wxWindow *parent,
const wxString& message,
const wxString& caption,
int n, const wxString *choices,
long styleDlg = wxCHOICEDLG_STYLE,
const wxPoint& pos = wxDefaultPosition,
long styleLbox = wxLB_ALWAYS_SB);
protected:
wxListBox *m_listbox;
DECLARE_NO_COPY_CLASS(wxAnyChoiceDialog)
};
// ----------------------------------------------------------------------------
// wxSingleChoiceDialog: a dialog with single selection listbox
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxSingleChoiceDialog : public wxAnyChoiceDialog
{
public:
wxSingleChoiceDialog()
{
m_selection = -1;
}
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);
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);
void SetSelection(int sel);
int GetSelection() const { return m_selection; }
wxString GetStringSelection() const { return m_stringSelection; }
// 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);
// old, deprecated methods
#if WXWIN_COMPATIBILITY_2
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,
const wxStringList& choices,
char **clientData = (char **)NULL,
long style = wxCHOICEDLG_STYLE,
const wxPoint& pos = wxDefaultPosition);
#endif // WXWIN_COMPATIBILITY_2
protected:
int m_selection;
wxString m_stringSelection;
private:
DECLARE_DYNAMIC_CLASS(wxSingleChoiceDialog)
DECLARE_EVENT_TABLE()
};
// ----------------------------------------------------------------------------
// wxMultiChoiceDialog: a dialog with multi selection listbox
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxMultiChoiceDialog : public wxAnyChoiceDialog
{
public:
wxMultiChoiceDialog() { }
wxMultiChoiceDialog(wxWindow *parent,
const wxString& message,
const wxString& caption,
int n,
const wxString *choices,
long style = wxCHOICEDLG_STYLE,
const wxPoint& pos = wxDefaultPosition)
{
(void)Create(parent, message, caption, n, choices, style, pos);
}
bool Create(wxWindow *parent,
const wxString& message,
const wxString& caption,
int n,
const wxString *choices,
long style = wxCHOICEDLG_STYLE,
const wxPoint& pos = wxDefaultPosition);
void SetSelections(const wxArrayInt& selections);
wxArrayInt GetSelections() const { return m_selections; }
// implementation from now on
virtual bool TransferDataFromWindow();
protected:
wxArrayInt m_selections;
private:
DECLARE_DYNAMIC_CLASS(wxMultiChoiceDialog)
};
// ----------------------------------------------------------------------------
// wrapper functions which can be used to get selection(s) from the user
// ----------------------------------------------------------------------------
// get the user selection as a string
WXDLLEXPORT wxString wxGetSingleChoice(const wxString& message,
const wxString& caption,
const wxArrayString& 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, const wxString *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,
const wxArrayString& 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, const wxString *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 or NULL if cancelled
WXDLLEXPORT void* wxGetSingleChoiceData(const wxString& message,
const wxString& caption,
const wxArrayString& choices,
void **client_data,
wxWindow *parent = (wxWindow *) NULL,
int x = -1, int y = -1,
bool centre = TRUE,
int width = wxCHOICE_WIDTH,
int height = wxCHOICE_HEIGHT);
WXDLLEXPORT void* wxGetSingleChoiceData(const wxString& message,
const wxString& caption,
int n, const wxString *choices,
void **client_data,
wxWindow *parent = (wxWindow *) NULL,
int x = -1, int y = -1,
bool centre = TRUE,
int width = wxCHOICE_WIDTH,
int height = wxCHOICE_HEIGHT);
// fill the array with the indices of the chosen items, it will be empty
// if no items were selected or Cancel was pressed - return the number of
// selections
WXDLLEXPORT size_t wxGetMultipleChoices(wxArrayInt& selections,
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 size_t wxGetMultipleChoices(wxArrayInt& selections,
const wxString& message,
const wxString& caption,
const wxArrayString& choices,
wxWindow *parent = (wxWindow *) NULL,
int x = -1,
int y = -1,
bool centre = TRUE,
int width = wxCHOICE_WIDTH,
int height = wxCHOICE_HEIGHT);
// ----------------------------------------------------------------------------
// these methods are for backwards compatibility only, not documented and
// deprecated
// ----------------------------------------------------------------------------
#if WXWIN_COMPATIBILITY_2
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);
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);
WXDLLEXPORT void* wxGetSingleChoiceData(const wxString& message,
const wxString& caption,
int n, wxChar **choices,
void **client_data,
wxWindow *parent = (wxWindow *) NULL,
int x = -1, int y = -1,
bool centre = TRUE,
int width = wxCHOICE_WIDTH,
int height = wxCHOICE_HEIGHT);
#endif // WXWIN_COMPATIBILITY_2
#endif // __CHOICEDLGH_G__

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