Compare commits

...

378 Commits

Author SHA1 Message Date
Bryan Petty
0acf57d2cf This commit was manufactured by cvs2svn to create tag 'wxPy-2-1-5'.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/tags/wxPy-2-1-5@3935 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-12 03:04:38 +00:00
Robin Dunn
07cb3fd3d1 distrib tweaks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-12 03:04:38 +00:00
Robin Dunn
60a15c9b7b more intelligent build for gtk
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3933 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-10-12 03:04:13 +00:00
Robert Roebling
d5a07b9ec9 Various distrib things,
Applied patches for HP-UX compilation,
  Corrected (?) vetoing of tree expansion,
  Raised version.h to 2.1.10


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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

Some other tweaks and fixes


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


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


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


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


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


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


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


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


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


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

	a couple minor tweaks

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


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

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


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


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


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


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


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

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

Replaced wxUSE_LIBGIF with wxUSE_GIF everywhere


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


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


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


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


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


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


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3556 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
1999-09-02 08:23:23 +00:00
962 changed files with 130263 additions and 41713 deletions

View File

@@ -3,6 +3,7 @@ bin
.gdb_history
Test
config.cache
configarg.cache
config.status
system.list
linux.system.cache
@@ -17,6 +18,7 @@ linux-gnu.system.cache
*.ncb
*.pro
*.opt
*.d
Release
Debug
ReleaseDLL

View File

@@ -35,7 +35,25 @@ and its make.exe).
-> Set your path so that it includes the directory
where your compiler and tools reside
b-2) Using Mingw32 with gcc-2.95 and Anders Norlander's
Win32 headers
Using the newer gcc-2.95/Noralander header combination
will allow you to compile more of the MSW code, such
as OLE and Drag-n-Drop.
Instructions are similar to those for Regular Mingw32 except
->Get the compiler from
ftp://ftp.xraylith.wisc.edu/pub/khan/gnu-win32/mingw32/gcc-2.95/
->patch the gcc headers with info in wxWin\Mingw32-gcc295.patches.
PLEASE APPLY THESE PATCHES BY HAND! There are apparently a few
different versions of the headers floating around.
->copy wxWin\src\makeg295.env to wxWin\src\makeg95.env
c) Build instructions
-> Assumming that you installed the wxWindows sources
@@ -44,7 +62,7 @@ c) Build instructions
to c:\wxWin\include\wx\msw\setup.h
-> Edit c:\wxWin\include\wx\msw\setup.h so that
most features are enabled (i.e. defined to 1) with
#define wxUSE_ODBC 0
#define wxUSE_ODBC 0
#define wxUSE_SOCKETS 0
#define wxUSE_HTML 1
#define wxUSE_THREADS 1
@@ -58,9 +76,13 @@ c) Build instructions
and iostreams ares disabled with
#define wxUSE_STD_IOSTREAM 0
note: ODBC and SOCKETS can be 1 for gcc-2.95
-> type: cd c:\wxWin\src\msw
-> type: make -f makefile.g95 (if using GNU tools)
or type: make -f makefile.vc (if using MS VC++)
-> type: make -f makefile.g95 (if using GNU tools)
or type: make -f makefile.g295 (if using Mingw32/gcc-2.95)
or type: make -f makefile.vc (if using MS VC++)
II) Unix ports

View File

@@ -1,5 +1,5 @@
#
# This file was automatically generated by tmake at 15:02, 1999/08/29
# This file was automatically generated by tmake at 09:29, 1999/10/11
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE UNX.T!
#
@@ -44,8 +44,9 @@ VP6 = @top_srcdir@/src/html
VP7 = @top_srcdir@/src/png
VP8 = @top_srcdir@/src/jpeg
VP9 = @top_srcdir@/src/zlib
VP10 = @top_srcdir@/src/iodbc
VPATH = $(VP1):$(VP2):$(VP3):$(VP4):$(VP5):$(VP6):$(VP7):$(VP8):$(VP9)
VPATH = $(VP1):$(VP2):$(VP3):$(VP4):$(VP5):$(VP6):$(VP7):$(VP8):$(VP9):$(VP10)
top_srcdir = @top_srcdir@
prefix = @prefix@
@@ -125,6 +126,43 @@ DISTDIR = ./_dist_dir/wx$(TOOLKIT)
############################## Files ##################################
BASE_HEADERS = \
app.h \
date.h \
debug.h \
defs.h \
dynarray.h \
dynlib.h \
event.h \
ffile.h \
file.h \
fileconf.h \
hash.h \
intl.h \
list.h \
log.h \
longlong.h \
mimetype.h \
module.h \
object.h \
process.h \
setup.h \
strconv.h \
stream.h \
string.h \
textfile.h \
thread.h \
time.h \
timer.h \
tokenzr.h \
txtstrm.h \
utils.h \
variant.h \
version.h \
wx.h \
wxchar.h \
wxprec.h
WX_HEADERS = \
accel.h \
app.h \
@@ -526,7 +564,7 @@ GENERIC_HEADERS = \
generic/dirdlgg.h \
generic/filedlgg.h \
generic/fontdlgg.h \
generic/gridg.h \
generic/grid.h \
generic/helpext.h \
generic/helphtml.h \
generic/helpwxht.h \
@@ -555,17 +593,19 @@ PROTOCOL_HEADERS = \
protocol/protocol.h
HTML_HEADERS = \
html/forcelink.h \
html/forcelnk.h \
html/helpctrl.h \
html/helpdata.h \
html/helpfrm.h \
html/htmlcell.h \
html/htmldefs.h \
html/htmlfilter.h \
html/htmlhelp.h \
html/htmlparser.h \
html/htmlfilt.h \
html/htmlpars.h \
html/htmltag.h \
html/htmlwin.h \
html/htmlwinparser.h \
html/mod_templ.h \
html/version.h
html/m_templ.h \
html/version.h \
html/winpars.h
GTK_GENERICOBJS = \
busyinfo.o \
@@ -575,12 +615,13 @@ GTK_GENERICOBJS = \
dcpsg.o \
dirdlgg.o \
filedlgg.o \
gridg.o \
grid.o \
helphtml.o \
helpwxht.o \
imaglist.o \
laywin.o \
listctrl.o \
logg.o \
msgdlgg.o \
numdlgg.o \
panelg.o \
@@ -607,12 +648,13 @@ GTK_GENERICDEPS = \
dcpsg.d \
dirdlgg.d \
filedlgg.d \
gridg.d \
grid.d \
helphtml.d \
helpwxht.d \
imaglist.d \
laywin.d \
listctrl.d \
logg.d \
msgdlgg.d \
numdlgg.d \
panelg.d \
@@ -652,6 +694,7 @@ GTK_COMMONOBJS = \
fileconf.o \
filefn.o \
filesys.o \
fontcmn.o \
framecmn.o \
fs_inet.o \
fs_zip.o \
@@ -661,6 +704,7 @@ GTK_COMMONOBJS = \
hash.o \
helpbase.o \
http.o \
imagall.o \
imagbmp.o \
image.o \
imaggif.o \
@@ -688,6 +732,7 @@ GTK_COMMONOBJS = \
sckfile.o \
sckipc.o \
sckstrm.o \
serbase.o \
sizer.o \
socket.o \
strconv.o \
@@ -736,6 +781,7 @@ GTK_COMMONDEPS = \
fileconf.d \
filefn.d \
filesys.d \
fontcmn.d \
framecmn.d \
fs_inet.d \
fs_zip.d \
@@ -745,6 +791,7 @@ GTK_COMMONDEPS = \
hash.d \
helpbase.d \
http.d \
imagall.d \
imagbmp.d \
image.d \
imaggif.d \
@@ -772,6 +819,7 @@ GTK_COMMONDEPS = \
sckfile.d \
sckipc.d \
sckstrm.d \
serbase.d \
sizer.d \
socket.d \
strconv.d \
@@ -844,6 +892,7 @@ GTK_GUIOBJS = \
settings.o \
slider.o \
spinbutt.o \
spinctrl.o \
statbmp.o \
statbox.o \
statline.o \
@@ -903,6 +952,7 @@ GTK_GUIDEPS = \
settings.d \
slider.d \
spinbutt.d \
spinctrl.d \
statbmp.d \
statbox.d \
statline.d \
@@ -925,13 +975,14 @@ MOTIF_GENERICOBJS = \
dcpsg.o \
dirdlgg.o \
fontdlgg.o \
gridg.o \
grid.o \
helphtml.o \
helpwxht.o \
helpxlp.o \
imaglist.o \
laywin.o \
listctrl.o \
logg.o \
msgdlgg.o \
notebook.o \
numdlgg.o \
@@ -945,6 +996,7 @@ MOTIF_GENERICOBJS = \
sashwin.o \
scrolwin.o \
splitter.o \
statline.o \
statusbr.o \
tabg.o \
textdlgg.o \
@@ -960,13 +1012,14 @@ MOTIF_GENERICDEPS = \
dcpsg.d \
dirdlgg.d \
fontdlgg.d \
gridg.d \
grid.d \
helphtml.d \
helpwxht.d \
helpxlp.d \
imaglist.d \
laywin.d \
listctrl.d \
logg.d \
msgdlgg.d \
notebook.d \
numdlgg.d \
@@ -980,6 +1033,7 @@ MOTIF_GENERICDEPS = \
sashwin.d \
scrolwin.d \
splitter.d \
statline.d \
statusbr.d \
tabg.d \
textdlgg.d \
@@ -1010,6 +1064,7 @@ MOTIF_COMMONOBJS = \
fileconf.o \
filefn.o \
filesys.o \
fontcmn.o \
framecmn.o \
fs_inet.o \
fs_zip.o \
@@ -1019,6 +1074,7 @@ MOTIF_COMMONOBJS = \
hash.o \
helpbase.o \
http.o \
imagall.o \
imagbmp.o \
image.o \
imaggif.o \
@@ -1047,6 +1103,7 @@ MOTIF_COMMONOBJS = \
sckfile.o \
sckipc.o \
sckstrm.o \
serbase.o \
sizer.o \
socket.o \
strconv.o \
@@ -1097,6 +1154,7 @@ MOTIF_COMMONDEPS = \
fileconf.d \
filefn.d \
filesys.d \
fontcmn.d \
framecmn.d \
fs_inet.d \
fs_zip.d \
@@ -1106,6 +1164,7 @@ MOTIF_COMMONDEPS = \
hash.d \
helpbase.d \
http.d \
imagall.d \
imagbmp.d \
image.d \
imaggif.d \
@@ -1134,6 +1193,7 @@ MOTIF_COMMONDEPS = \
sckfile.d \
sckipc.d \
sckstrm.d \
serbase.d \
sizer.d \
socket.d \
strconv.d \
@@ -1170,6 +1230,7 @@ MOTIF_GUIOBJS = \
brush.o \
button.o \
checkbox.o \
checklst.o \
choice.o \
clipbrd.o \
colour.o \
@@ -1185,6 +1246,7 @@ MOTIF_GUIOBJS = \
dialog.o \
filedlg.o \
font.o \
fontenum.o \
frame.o \
gauge.o \
gdiobj.o \
@@ -1205,6 +1267,7 @@ MOTIF_GUIOBJS = \
scrolbar.o \
settings.o \
slider.o \
spinbutt.o \
statbmp.o \
statbox.o \
stattext.o \
@@ -1223,6 +1286,7 @@ MOTIF_GUIDEPS = \
brush.d \
button.d \
checkbox.d \
checklst.d \
choice.d \
clipbrd.d \
colour.d \
@@ -1238,6 +1302,7 @@ MOTIF_GUIDEPS = \
dialog.d \
filedlg.d \
font.d \
fontenum.d \
frame.d \
gauge.d \
gdiobj.d \
@@ -1258,6 +1323,7 @@ MOTIF_GUIDEPS = \
scrolbar.d \
settings.d \
slider.d \
spinbutt.d \
statbmp.d \
statbox.d \
stattext.d \
@@ -1271,8 +1337,9 @@ MSW_GENERICOBJS = \
busyinfo.o \
choicdgg.o \
dirdlgg.o \
gridg.o \
grid.o \
laywin.o \
logg.o \
numdlgg.o \
panelg.o \
progdlgg.o \
@@ -1292,8 +1359,9 @@ MSW_GENERICDEPS = \
busyinfo.d \
choicdgg.d \
dirdlgg.d \
gridg.d \
grid.d \
laywin.d \
logg.d \
numdlgg.d \
panelg.d \
progdlgg.d \
@@ -1332,6 +1400,7 @@ MSW_COMMONOBJS = \
fileconf.o \
filefn.o \
filesys.o \
fontcmn.o \
framecmn.o \
fs_inet.o \
fs_zip.o \
@@ -1341,6 +1410,7 @@ MSW_COMMONOBJS = \
hash.o \
helpbase.o \
http.o \
imagall.o \
imagbmp.o \
image.o \
imaggif.o \
@@ -1359,6 +1429,7 @@ MSW_COMMONOBJS = \
mstream.o \
object.o \
objstrm.o \
odbc.o \
paper.o \
prntbase.o \
process.o \
@@ -1368,12 +1439,14 @@ MSW_COMMONOBJS = \
sckfile.o \
sckipc.o \
sckstrm.o \
serbase.o \
sizer.o \
socket.o \
strconv.o \
stream.o \
string.o \
tbarbase.o \
tbarsmpl.o \
textcmn.o \
textfile.o \
time.o \
@@ -1417,6 +1490,7 @@ MSW_COMMONDEPS = \
fileconf.d \
filefn.d \
filesys.d \
fontcmn.d \
framecmn.d \
fs_inet.d \
fs_zip.d \
@@ -1426,6 +1500,7 @@ MSW_COMMONDEPS = \
hash.d \
helpbase.d \
http.d \
imagall.d \
imagbmp.d \
image.d \
imaggif.d \
@@ -1444,6 +1519,7 @@ MSW_COMMONDEPS = \
mstream.d \
object.d \
objstrm.d \
odbc.d \
paper.d \
prntbase.d \
process.d \
@@ -1453,12 +1529,14 @@ MSW_COMMONDEPS = \
sckfile.d \
sckipc.d \
sckstrm.d \
serbase.d \
sizer.d \
socket.d \
strconv.d \
stream.d \
string.d \
tbarbase.d \
tbarsmpl.d \
textcmn.d \
textfile.d \
time.d \
@@ -1514,6 +1592,7 @@ MSW_GUIOBJS = \
frame.o \
gauge95.o \
gdiobj.o \
gsocket.o \
helpwin.o \
icon.o \
imaglist.o \
@@ -1599,6 +1678,7 @@ MSW_GUIDEPS = \
frame.d \
gauge95.d \
gdiobj.d \
gsocket.d \
helpwin.d \
icon.d \
imaglist.d \
@@ -1649,50 +1729,122 @@ MSW_GUIDEPS = \
window.d \
xpmhand.d
BASE_OBJS = \
config.o \
date.o \
dynarray.o \
dynlib.o \
event.o \
extended.o \
ffile.o \
file.o \
fileconf.o \
filefn.o \
filesys.o \
hash.o \
init.o \
intl.o \
list.o \
log.o \
mimetype.o \
module.o \
object.o \
process.o \
strconv.o \
stream.o \
string.o \
textfile.o \
time.o \
timercmn.o \
tokenzr.o \
txtstrm.o \
utilscmn.o \
variant.o \
wxchar.o \
utilsunx.o
BASE_DEPS = \
config.d \
date.d \
dynarray.d \
dynlib.d \
event.d \
extended.d \
ffile.d \
file.d \
fileconf.d \
filefn.d \
filesys.d \
hash.d \
init.d \
intl.d \
list.d \
log.d \
mimetype.d \
module.d \
object.d \
process.d \
strconv.d \
stream.d \
string.d \
textfile.d \
time.d \
timercmn.d \
tokenzr.d \
txtstrm.d \
utilscmn.d \
variant.d \
wxchar.d \
utilsunx.d
HTMLOBJS = \
helpctrl.o \
helpdata.o \
helpfrm.o \
htmlcell.o \
htmlfilter.o \
htmlhelp.o \
htmlhelp_io.o \
htmlparser.o \
htmlfilt.o \
htmlpars.o \
htmltag.o \
htmlwin.o \
htmlwinparser.o \
mod_fonts.o \
mod_hline.o \
mod_image.o \
mod_layout.o \
mod_links.o \
mod_list.o \
mod_pre.o \
mod_tables.o \
search.o
m_fonts.o \
m_hline.o \
m_image.o \
m_layout.o \
m_links.o \
m_list.o \
m_pre.o \
m_tables.o \
search.o \
winpars.o
HTMLDEPS = \
helpctrl.d \
helpdata.d \
helpfrm.d \
htmlcell.d \
htmlfilter.d \
htmlhelp.d \
htmlhelp_io.d \
htmlparser.d \
htmlfilt.d \
htmlpars.d \
htmltag.d \
htmlwin.d \
htmlwinparser.d \
mod_fonts.d \
mod_hline.d \
mod_image.d \
mod_layout.d \
mod_links.d \
mod_list.d \
mod_pre.d \
mod_tables.d \
search.d
m_fonts.d \
m_hline.d \
m_image.d \
m_layout.d \
m_links.d \
m_list.d \
m_pre.d \
m_tables.d \
search.d \
winpars.d
UNIXOBJS = \
UNIX_OBJS = \
dialup.o \
gsocket.o \
threadpsx.o \
utilsunx.o
UNIXDEPS = \
UNIX_DEPS = \
dialup.d \
gsocket.d \
threadpsx.d \
utilsunx.d
@@ -1779,16 +1931,40 @@ JPEGOBJS = \
jquant2.o \
jdmerge.o
IODBCOBJS = \
catalog.o \
connect.o \
dlf.o \
dlproc.o \
execute.o \
fetch.o \
hdbc.o \
henv.o \
herr.o \
hstmt.o \
info.o \
itrace.o \
misc.o \
prepare.o \
result.o
OBJECTS = $(@GUIOBJS@) $(@COMMONOBJS@) $(@GENERICOBJS@) $(@UNIXOBJS@) $(HTMLOBJS) \
$(JPEGOBJS) $(PNGOBJS) $(ZLIBOBJS)
GUIOBJS = @GUIOBJS@
GUIDEPS = @GUIDEPS@
GUIHEADERS = @GUIHEADERS@
COMMONOBJS = @COMMONOBJS@
COMMONDEPS = @COMMONDEPS@
GENERICOBJS = @GENERICOBJS@
GENERICDEPS = @GENERICDEPS@
UNIXOBJS = @UNIXOBJS@
UNIXDEPS = @UNIXDEPS@
DEPFILES = $(@GUIDEPS@) $(@COMMONDEPS@) $(@GENERICDEPS@) $(UNIXDEPS) $(HTMLDEPS)
OBJECTS = @ALL_OBJECTS@ $(IODBCOBJS)
HEADERS = $(@GUIHEADERS@) $(HTML_HEADERS) $(UNIX_HEADERS) $(PROTOCOL_HEADERS) \
$(GENERIC_HEADERS) $(WX_HEADERS)
DEPFILES = @ALL_DEPFILES@
all: $(OBJECTS) @WX_TARGET_LIBRARY@ @WX_CREATE_LINKS@
HEADERS = @ALL_HEADERS@
all: @WX_ALL@
@WX_LIBRARY_NAME_STATIC@: $(OBJECTS)
@$(INSTALL) -d ./lib
@@ -1799,7 +1975,7 @@ all: $(OBJECTS) @WX_TARGET_LIBRARY@ @WX_CREATE_LINKS@
@$(INSTALL) -d ./lib
$(SHARED_LD) ./lib/$@ $(OBJECTS) $(EXTRALIBS)
CREATE_LINKS: ./lib/@WX_TARGET_LIBRARY@
CREATE_LINKS: @WX_LIBRARY_NAME_SHARED@
@$(RM) ./lib/@WX_LIBRARY_LINK1@
@$(RM) ./lib/@WX_LIBRARY_LINK2@
@$(RM) ./lib/@WX_LIBRARY_LINK3@
@@ -1807,13 +1983,13 @@ CREATE_LINKS: ./lib/@WX_TARGET_LIBRARY@
$(LN_S) @WX_TARGET_LIBRARY@ ./lib/@WX_LIBRARY_LINK2@
$(LN_S) @WX_TARGET_LIBRARY@ ./lib/@WX_LIBRARY_LINK3@
CREATE_INSTALLED_LINKS: $(libdir)/@WX_TARGET_LIBRARY@
CREATE_INSTALLED_LINKS: $(libdir)/@WX_LIBRARY_NAME_SHARED@
$(RM) $(libdir)/@WX_LIBRARY_LINK1@
$(RM) $(libdir)/@WX_LIBRARY_LINK2@
$(RM) $(libdir)/@WX_LIBRARY_LINK3@
$(LN_S) @WX_TARGET_LIBRARY@ $(libdir)/@WX_LIBRARY_LINK1@
$(LN_S) @WX_TARGET_LIBRARY@ $(libdir)/@WX_LIBRARY_LINK2@
$(LN_S) @WX_TARGET_LIBRARY@ $(libdir)/@WX_LIBRARY_LINK3@
$(LN_S) @WX_LIBRARY_NAME_SHARED@ $(libdir)/@WX_LIBRARY_LINK1@
$(LN_S) @WX_LIBRARY_NAME_SHARED@ $(libdir)/@WX_LIBRARY_LINK2@
$(LN_S) @WX_LIBRARY_NAME_SHARED@ $(libdir)/@WX_LIBRARY_LINK3@
$(OBJECTS): $(WXDIR)/include/wx/defs.h $(WXDIR)/include/wx/object.h $(WXDIR)/include/wx/setup.h
@@ -1890,7 +2066,7 @@ write_message:
@echo " Read the wxWindows Licence on licencing conditions."
@echo " "
install: preinstall @WX_CREATE_INSTALLED_LINKS@ write_message
install: preinstall @WX_ALL_INSTALLED@ write_message
uninstall:
@echo " "
@@ -2156,6 +2332,10 @@ SAMPLES_DIST:
cp $(SAMPDIR)/minimal/Makefile.in $(DISTDIR)/samples/minimal
cp $(SAMPDIR)/minimal/*.cpp $(DISTDIR)/samples/minimal
cp $(SAMPDIR)/minimal/*.xpm $(DISTDIR)/samples/minimal
mkdir $(DISTDIR)/samples/newgrid
cp $(SAMPDIR)/newgrid/Makefile.in $(DISTDIR)/samples/newgrid
cp $(SAMPDIR)/newgrid/*.cpp $(DISTDIR)/samples/newgrid
cp $(SAMPDIR)/newgrid/*.h $(DISTDIR)/samples/newgrid
mkdir $(DISTDIR)/samples/notebook
cp $(SAMPDIR)/notebook/Makefile.in $(DISTDIR)/samples/notebook
cp $(SAMPDIR)/notebook/*.cpp $(DISTDIR)/samples/notebook

118
Mingw32-gcc295.patches Normal file
View File

@@ -0,0 +1,118 @@
*** \gcc-inc\basetyps.h Sat Jul 31 16:48:36 1999
--- basetyps.h Fri Aug 06 11:14:36 1999
***************
*** 74,91 ****
--- 74,97 ----
STDMETHOD(Clone)(IENUM_THIS_(I) I**) PURE; \
}
#define DECLARE_ENUMERATOR(T) DECLARE_ENUMERATOR_(IEnum##T,T)
+ #ifndef GUID_DEFINED
+ #define GUID_DEFINED
typedef struct _GUID
{
unsigned long Data1;
unsigned short Data2;
unsigned short Data3;
unsigned char Data4[8];
} GUID;
+ #endif /* GUID_DEFINED */
typedef GUID *REFGUID;
typedef GUID *LPGUID;
+ #ifndef UUID_DEFINED
+ #define UUID_DEFINED
typedef GUID UUID;
+ #endif /* UUID_DEFINED */
typedef GUID IID;
typedef GUID CLSID;
typedef CLSID *LPCLSID;
typedef IID *LPIID;
*** \gcc-inc\oaidl.h Sat Jul 31 16:48:42 1999
--- oaidl.h Fri Aug 06 13:18:48 1999
***************
*** 39,44 ****
--- 39,53 ----
#define IMPLTYPEFLAG_FRESTRICTED 4
#define IMPLTYPEFLAG_FDEFAULTVTABLE 8
+ #define DISPID_UNKNOWN ( -1 )
+ #define DISPID_VALUE ( 0 )
+ #define DISPID_PROPERTYPUT ( -3 )
+ #define DISPID_NEWENUM ( -4 )
+ #define DISPID_EVALUATE ( -5 )
+ #define DISPID_CONSTRUCTOR ( -6 )
+ #define DISPID_DESTRUCTOR ( -7 )
+ #define DISPID_COLLECT ( -8 )
+
typedef interface ITypeLib *LPTYPELIB;
typedef interface ICreateTypeInfo *LPCREATETYPEINFO;
typedef interface ICreateTypeInfo2 *LPCREATETYPEINFO2;
***************
*** 49,54 ****
--- 58,73 ----
typedef interface IDispatch *LPDISPATCH;
typedef interface ICreateErrorInfo *LPCREATEERRORINFO;
+ extern "C" const IID IID_ITypeLib;
+ extern "C" const IID IID_ICreateTypeInfo;
+ extern "C" const IID IID_ICreateTypeInfo2;
+ extern "C" const IID IID_ICreateTypeLib;
+ extern "C" const IID IID_ICreateTypeLib2;
+ extern "C" const IID IID_ITypeInfo;
+ extern "C" const IID IID_IErrorInfo;
+ extern "C" const IID IID_IDispatch;
+ extern "C" const IID IID_ICreateErrorInfo;
+
typedef enum tagSYSKIND {
SYS_WIN16,SYS_WIN32,SYS_MAC
} SYSKIND;
***************
*** 375,382 ****
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetTypeInfoCount)(THIS_ UINT*) PURE;
STDMETHOD(GetTypeInfo)(THIS_ UINT,LCID,LPTYPEINFO*) PURE;
! STDMETHOD(GetIDsOfNames)(THIS_ REFIID,LPOLESTR*,UINT,LCID,DISPID)
PURE;
! STDMETHOD(Invoked)(THIS_
DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*) PURE;
};
#ifdef __cplusplus
--- 394,401 ----
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetTypeInfoCount)(THIS_ UINT*) PURE;
STDMETHOD(GetTypeInfo)(THIS_ UINT,LCID,LPTYPEINFO*) PURE;
! STDMETHOD(GetIDsOfNames)(THIS_ REFIID,LPOLESTR*,UINT,LCID,DISPID*)
PURE;
! STDMETHOD(Invoke)(THIS_
DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*) PURE;
};
#ifdef __cplusplus
*** \gcc-inc\objidl.h Sat Jul 31 16:48:42 1999
--- objidl.h Fri Aug 06 11:00:19 1999
***************
*** 627,633 ****
STDMETHOD(QueryGetData)(THIS_ FORMATETC*) PURE;
STDMETHOD(GetCanonicalFormatEtc)(THIS_ FORMATETC*,FORMATETC*) PURE;
STDMETHOD(SetData)(THIS_ FORMATETC*,STGMEDIUM*,BOOL) PURE;
! STDMETHOD(EnumFormatEtc)(THIS_ DWORD,IEnumFORMATETC*) PURE;
STDMETHOD(DAdvise)(THIS_ FORMATETC*,DWORD,IAdviseSink*,PDWORD) PURE;
STDMETHOD(DUnadvise)(THIS_ DWORD) PURE;
STDMETHOD(EnumDAdvise)(THIS_ IEnumSTATDATA**);
--- 627,633 ----
STDMETHOD(QueryGetData)(THIS_ FORMATETC*) PURE;
STDMETHOD(GetCanonicalFormatEtc)(THIS_ FORMATETC*,FORMATETC*) PURE;
STDMETHOD(SetData)(THIS_ FORMATETC*,STGMEDIUM*,BOOL) PURE;
! STDMETHOD(EnumFormatEtc)(THIS_ DWORD,IEnumFORMATETC**) PURE;
STDMETHOD(DAdvise)(THIS_ FORMATETC*,DWORD,IAdviseSink*,PDWORD) PURE;
STDMETHOD(DUnadvise)(THIS_ DWORD) PURE;
STDMETHOD(EnumDAdvise)(THIS_ IEnumSTATDATA**);

2256
configure vendored

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -20,6 +20,12 @@ makefile.unx.in
distrib/msw/*.rsp
distrib/msw/*.bat
distrib/msw/tardist
distrib/msw/tmake/*.t
distrib/msw/tmake/Makefile
distrib/msw/tmake/filelist.txt
distrib/msw/tmake/makeall.bat
distrib/msw/tmake/makeall.sh
distrib/msw/tmake/wxwin.pro
distrib/gtk/*
locale/*.po
@@ -37,6 +43,7 @@ docs/bugs.txt
docs/*.htm
docs/html/*.htm
docs/html/*.gif
docs/html/*.png
src/*.inc
src/mkdir
@@ -66,6 +73,7 @@ src/html/*.h
src/html/bitmaps/*.xpm
src/unix/*.cpp
src/unix/*.c
src/png/*.c
src/png/*.h
@@ -97,6 +105,7 @@ include/wx/protocol/*.h
include/wx/wx_setup.vms
include/wx/common/*.h
include/wx/generic/*.h
include/wx/generic/*.xpm
include/wx/unix/*.h
include/wx/html/*.h
include/wx/html/msw/*.bmp

View File

@@ -1,3 +1,4 @@
utils/glcanvas/Makefile.in
utils/glcanvas/docs/*.*
utils/glcanvas/win/*.cpp
utils/glcanvas/win/*.h

View File

@@ -1,3 +1,5 @@
configure
distrib/gtk/copy_src
distrib/gtk/README.txt
distrib/gtk/Setup
@@ -8,6 +10,7 @@ docs/gtk/COPYING.LIB
docs/gtk/makewxgtk
include/wx/gtk/*.h
include/wx/gtk/*.xpm
include/install-sh
include/wx/install-sh

View File

@@ -1,3 +1,4 @@
Makefile.in
src/Makefile
locale/Makefile
samples/Makefile.in

View File

@@ -5,7 +5,6 @@ docs/wine/COPYING.LIB
distrib/msw/*.rsp
distrib/msw/*.bat
distrib/msw/tmake/*.t
tools/gettext/xgettext.exe
tools/gettext/msgfmt.exe
@@ -52,6 +51,7 @@ src/msw/*.lst
src/msw/*.def
src/msw/*.inc
src/msw/winestub.c
src/msw/gsocket.c
src/msw/ctl3d/*.*
src/msw/ctl3d/msvc/*.*

View File

@@ -1,3 +1,4 @@
utils/ogl/Makefile.in
utils/ogl/Makefile
utils/ogl/src/*.cpp

View File

@@ -13,6 +13,7 @@ all: $(MSW_MAKEFILES_DIR)/makefile.vc \
$(MSW_MAKEFILES_DIR)/makefile.sc \
$(MSW_MAKEFILES_DIR)/makefile.wat \
$(MSW_MAKEFILES_DIR)/makefile.g95 \
$(MSW_MAKEFILES_DIR)/makefile.g295 \
$(WXDIR)/Makefile.in
$(MSW_MAKEFILES_DIR)/makefile.vc: filelist.txt wxwin.pro
@@ -36,5 +37,8 @@ $(MSW_MAKEFILES_DIR)/makefile.wat: filelist.txt wxwin.pro
$(MSW_MAKEFILES_DIR)/makefile.g95: filelist.txt wxwin.pro
$(TMAKE) -t g95 wxwin.pro -o $@
$(MSW_MAKEFILES_DIR)/makefile.g295: filelist.txt wxwin.pro g295.t
$(TMAKE) -t g295 wxwin.pro -o $@
$(WXDIR)/Makefile.in: filelist.txt wxwin.pro
$(TMAKE) -t unx wxwin.pro -o $@

View File

@@ -38,6 +38,8 @@
next;
}
$isCFile = $file =~ /\.c$/;
my $isOleObj = $wxMSW{$file} =~ /\bO\b/;
$file =~ s/cp?p?$/obj/;
my $obj = "\$(MSWDIR)\\" . $file . " ";
@@ -47,7 +49,7 @@
#! remember that this file is in ole subdir
$project{"WXOLEOBJS"} .= $obj;
}
$project{"WXCOBJS"} .= $obj if $isCFile;
}
#$}
@@ -201,7 +203,8 @@ $(COMMDIR)\lex_yy.c: $(COMMDIR)\doslex.c
foreach (@objs) {
$text .= $_ . ": ";
if ( $project{"WXOLEOBJS"} =~ /\Q$_/ ) { s/MSWDIR/OLEDIR/; }
s/obj$/\$(SRCSUFF)/;
$suffix = $project{"WXCOBJS"} =~ /\Q$_/ ? "c" : '$(SRCSUFF)';
s/obj$/$suffix/;
$text .= $_ . "\n\n";
}
#$}
@@ -334,7 +337,10 @@ cleanall: clean
MFTYPE=b32
makefile.$(MFTYPE) : $(WXWIN)\distrib\msw\tmake\filelist.txt $(WXWIN)\distrib\msw\tmake\$(MFTYPE).t
# Can't use this or we'll have to distribute all tmake files with wxWindows
# makefile.$(MFTYPE) : $(WXWIN)\distrib\msw\tmake\filelist.txt $(WXWIN)\distrib\msw\tmake\$(MFTYPE).t
self:
cd $(WXWIN)\distrib\msw\tmake
tmake -t $(MFTYPE) wxwin.pro -o makefile.$(MFTYPE)
copy makefile.$(MFTYPE) $(WXWIN)\src\msw

View File

@@ -42,8 +42,11 @@
#! don't take files not appropriate for 16-bit Windows
next if $wxMSW{$file} =~ /\b(32|O)\b/;
$isCFile = $file =~ /\.c$/;
$file =~ s/cp?p?$/obj/;
$project{"WXMSWOBJS"} .= "\$(MSWDIR)\\" . $file . " "
$obj = "\$(MSWDIR)\\" . $file . " ";
$project{"WXMSWOBJS"} .= $obj;
$project{"WXCOBJS"} .= $obj if $isCFile;
}
#$}
@@ -162,7 +165,8 @@ $(COMMDIR)\lex_yy.c: $(COMMDIR)\doslex.c
my @objs = split;
foreach (@objs) {
$text .= $_ . ": ";
s/obj/\$(SRCSUFF)/;
$suffix = $project{"WXCOBJS"} =~ /\Q$_/ ? "c" : '$(SRCSUFF)';
s/obj/$suffix/;
$text .= $_ . "\n\n";
}
#$}
@@ -302,7 +306,10 @@ cleanall: clean
MFTYPE=bcc
makefile.$(MFTYPE) : $(WXWIN)\distrib\msw\tmake\filelist.txt $(WXWIN)\distrib\msw\tmake\$(MFTYPE).t
# Can't use this or we'll have to distribute all tmake files with wxWindows
#makefile.$(MFTYPE) : $(WXWIN)\distrib\msw\tmake\filelist.txt $(WXWIN)\distrib\msw\tmake\$(MFTYPE).t
self:
cd $(WXWIN)\distrib\msw\tmake
tmake -t $(MFTYPE) wxwin.pro -o makefile.$(MFTYPE)
copy makefile.$(MFTYPE) $(WXWIN)\src\msw

View File

@@ -15,7 +15,7 @@
#! now transform these hashes into $project tags
foreach $file (sort keys %wxGeneric) {
if ( $wxGeneric{$file} =~ /\b(PS|G|U)\b/ ) {
#! this file for some reason was compiled for VC++ 1.52
#! this file for some reason wasn't compiled for VC++ 1.52
next unless $file =~ /^prntdlgg\./;
}
@@ -27,8 +27,11 @@
#! socket files don't compile under Win16 currently
next if $wxCommon{$file} =~ /\b(32|S)\b/;
$isCFile = $file =~ /\.c$/;
$file =~ s/cp?p?$/obj/;
$project{"WXCOMMONOBJS"} .= "\$(COMMDIR)\\" . $file . " "
$obj = "\$(COMMDIR)\\" . $file . " ";
$project{"WXCOMMONOBJS"} .= $obj;
$project{"WXCOBJS"} .= $obj if $isCFile;
}
foreach $file (sort keys %wxMSW) {
@@ -177,11 +180,20 @@ $(CPPFLAGS) /YcWX/WXPREC.H /c /Tp $*.$(SRCSUFF)
$_ = $project{"WXMSWOBJS"} . $project{"WXCOMMONOBJS"} . $project{"WXGENERICOBJS"};
my @objs = split;
foreach (@objs) {
s:\\:/:;
$text .= $_ . ': $*.$(SRCSUFF)' . "\n" .
' cl @<<' . "\n" .
'$(CPPFLAGS) /Fo$@ /c /Tp $*.$(SRCSUFF)' . "\n" .
"<<\n\n";
if ( $project{"WXCOBJS"} =~ /\Q$_/ ) {
s:\\:/:;
$text .= $_ . ': $*.c' . "\n" .
' cl @<<' . "\n" .
'$(CPPFLAGS2) /Fo$@ /c /Tc $*.c' . "\n" .
"<<\n\n";
}
else {
s:\\:/:;
$text .= $_ . ': $*.$(SRCSUFF)' . "\n" .
' cl @<<' . "\n" .
'$(CPPFLAGS) /Fo$@ /c /Tp $*.$(SRCSUFF)' . "\n" .
"<<\n\n";
}
}
#$}

View File

@@ -28,6 +28,8 @@
# compiler, &c)
#
# Known flags:
# B makes part of the base library too
# BO only for the base library
# 16 a generic file implementing Win32 control for Win16
# 32 only can be compiled under Win32
# PS PostScript related file, normally not compiled under Windows
@@ -37,10 +39,11 @@
# S Socket file (currently doesn't compile under Win16 nor with GNU)
# R Not required for the GTK port
# X Not required for the Motif port
#
# WX Base header
# GTK GTK header
# GTK GTK header
# MSW MSW header
# MAC Mac header
# MAC Mac header
# MOT Motif header
# PM OS/2 header
# GEN Generic header
@@ -59,13 +62,14 @@ dcpsg.cpp G U
dirdlgg.cpp G 16
fontdlgg.cpp G G,R
filedlgg.cpp G U,X
gridg.cpp G
grid.cpp G
helphtml.cpp G G
helpwxht.cpp G G
helpxlp.cpp G G,R
imaglist.cpp G 16
laywin.cpp G
listctrl.cpp G 16
logg.cpp G
msgdlgg.cpp G G
notebook.cpp G 16,R
panelg.cpp G
@@ -78,6 +82,7 @@ proplist.cpp G
sashwin.cpp G
scrolwin.cpp G
splitter.cpp G
statline.cpp G U,R
statusbr.cpp G
tabg.cpp G R
numdlgg.cpp G
@@ -88,9 +93,9 @@ wizard.cpp G
choiccmn.cpp C R
cmndata.cpp C
config.cpp C
config.cpp C B
ctrlcmn.cpp C R
date.cpp C
date.cpp C B
datstrm.cpp C
db.cpp C
dbtable.cpp C
@@ -98,75 +103,79 @@ dcbase.cpp C
dlgcmn.cpp C
docmdi.cpp C
docview.cpp C
dynarray.cpp C
dynlib.cpp C
event.cpp C
extended.c C
ffile.cpp C
file.cpp C
fileconf.cpp C
filefn.cpp C
filesys.cpp C
dynarray.cpp C B
dynlib.cpp C B
event.cpp C B
extended.c C B
ffile.cpp C B
file.cpp C B
fileconf.cpp C B
filefn.cpp C B
filesys.cpp C B
fontcmn.cpp C
framecmn.cpp C
fs_inet.cpp C
fs_zip.cpp C
ftp.cpp C S
gdicmn.cpp C
gifdecod.cpp C
hash.cpp C
hash.cpp C B
helpbase.cpp C
http.cpp C S
imagbmp.cpp C
image.cpp C
imagall.cpp C
imaggif.cpp C
imagjpeg.cpp C
imagpcx.cpp C
imagpng.cpp C
imagpnm.cpp C
intl.cpp C
imagjpeg.cpp C 32
imagpcx.cpp C 32
imagpng.cpp C 32
imagpnm.cpp C 32
init.cpp C B,BO
intl.cpp C B
ipcbase.cpp C
layout.cpp C
list.cpp C
log.cpp C
list.cpp C B
log.cpp C B
memory.cpp C
mimetype.cpp C 32
module.cpp C
mimetype.cpp C 32,B
module.cpp C B
mstream.cpp C
object.cpp C
object.cpp C B
objstrm.cpp C
odbc.cpp C R
paper.cpp C
prntbase.cpp C
process.cpp C 32
process.cpp C 32,B
protocol.cpp C S
resource.cpp C
sckaddr.cpp C S
sckfile.cpp C S
sckipc.cpp C S
sckstrm.cpp C S
serbase.cpp C
sizer.cpp C
socket.cpp C S
stream.cpp C
strconv.cpp C
string.cpp C
stream.cpp C B
strconv.cpp C B
string.cpp C B
tbarbase.cpp C
tbarsmpl.cpp C 16
tbarsmpl.cpp C
textcmn.cpp C
textfile.cpp C
time.cpp C
timercmn.cpp C
tokenzr.cpp C
txtstrm.cpp C
textfile.cpp C B
time.cpp C B
timercmn.cpp C B
tokenzr.cpp C B
txtstrm.cpp C B
unzip.c C
url.cpp C S
utilscmn.cpp C
utilscmn.cpp C B
valgen.cpp C
validate.cpp C
valtext.cpp C
variant.cpp C
variant.cpp C B
wfstream.cpp C
wincmn.cpp C
wxchar.cpp C
wxchar.cpp C B
wxexpr.cpp C
zipstrm.cpp C
zstream.cpp C
@@ -232,7 +241,7 @@ ownerdrw.cpp M
palette.cpp M
pen.cpp M
penwin.cpp M
pnghand.cpp M
pnghand.cpp M 32
printdlg.cpp M
printwin.cpp M
radiobox.cpp M
@@ -265,9 +274,11 @@ uuid.cpp M O
wave.cpp M
window.cpp M
xpmhand.cpp M
gsocket.c M S
dialup.cpp U
threadpsx.cpp U
utilsunx.cpp U
utilsunx.cpp U B
gsocket.c U
gsockgtk.c R
@@ -299,7 +310,6 @@ fontdlg.cpp R
frame.cpp R
gauge.cpp R
gdiobj.cpp R
gsockgtk.c R
icon.cpp R
listbox.cpp R
main.cpp R
@@ -316,6 +326,7 @@ scrolbar.cpp R
settings.cpp R
slider.cpp R
spinbutt.cpp R
spinctrl.cpp R
statbmp.cpp R
statbox.cpp R
statline.cpp R
@@ -329,7 +340,7 @@ utilsres.cpp R
wave.cpp R
window.cpp R
gsockmot.cpp X
gsockmot.c X S
accel.cpp X
app.cpp X
bitmap.cpp X
@@ -337,6 +348,7 @@ bmpbuttn.cpp X
brush.cpp X
button.cpp X
checkbox.cpp X
checklst.cpp X
choice.cpp X
clipbrd.cpp X
colour.cpp X
@@ -352,6 +364,7 @@ dcscreen.cpp X
dialog.cpp X
filedlg.cpp X
font.cpp X
fontenum.cpp X
frame.cpp X
gauge.cpp X
gdiobj.cpp X
@@ -371,6 +384,7 @@ region.cpp X
scrolbar.cpp X
settings.cpp X
slider.cpp X
spinbutt.cpp X
statbmp.cpp X
statbox.cpp X
stattext.cpp X
@@ -380,28 +394,29 @@ timer.cpp X
utils.cpp X
window.cpp X
helpdata.cpp H
helpfrm.cpp H
helpctrl.cpp H
htmlcell.cpp H
htmlfilter.cpp H
htmlhelp.cpp H
htmlhelp_io.cpp H
htmlparser.cpp H
htmlfilt.cpp H
htmlpars.cpp H
htmltag.cpp H
htmlwin.cpp H
htmlwinparser.cpp H
mod_fonts.cpp H
mod_hline.cpp H
mod_image.cpp H
mod_layout.cpp H
mod_links.cpp H
mod_list.cpp H
mod_pre.cpp H
mod_tables.cpp H
winpars.cpp H
m_fonts.cpp H
m_hline.cpp H
m_image.cpp H
m_layout.cpp H
m_links.cpp H
m_list.cpp H
m_pre.cpp H
m_tables.cpp H
search.cpp H
arrimpl.cpp W
listimpl.cpp W
accel.h W
app.h W
app.h W B
bitmap.h W
bmpbuttn.h W
brush.h W
@@ -423,7 +438,7 @@ config.h W
control.h W
cursor.h W
dataobj.h W
date.h W
date.h W B
datstrm.h W
db.h W
dbtable.h W
@@ -434,21 +449,21 @@ dcprint.h W
dcps.h W
dcscreen.h W
dde.h W
debug.h W
defs.h W
debug.h W B
defs.h W B
dialog.h W
dirdlg.h W
dnd.h W
docmdi.h W
docview.h W
dragimag.h W
dynarray.h W
dynlib.h W
event.h W
dynarray.h W B
dynlib.h W B
event.h W B
expr.h W
ffile.h W
file.h W
fileconf.h W
ffile.h W B
file.h W B
fileconf.h W B
filedlg.h W
filefn.h W
filesys.h W
@@ -463,7 +478,7 @@ gdiobj.h W
gifdecod.h W
grid.h W
gsocket.h W
hash.h W
hash.h W B
help.h W
helpbase.h W
helphtml.h W
@@ -472,30 +487,30 @@ helpxlp.h W
icon.h W
image.h W
imaglist.h W
intl.h W
intl.h W B
ioswrap.h W
ipcbase.h W
joystick.h W
layout.h W
laywin.h W
list.h W
list.h W B
listbox.h W
listctrl.h W
log.h W
longlong.h W
log.h W B
longlong.h W B
matrix.h W
mdi.h W
memory.h W
menu.h W
menuitem.h W
metafile.h W
mimetype.h W
mimetype.h W B
minifram.h W
module.h W
module.h W B
msgdlg.h W
mstream.h W
notebook.h W
object.h W
object.h W B
objstrm.h W
odbc.h W
ownerdrw.h W
@@ -507,7 +522,7 @@ pnghand.h W
print.h W
printdlg.h W
prntbase.h W
process.h W
process.h W B
progdlg.h W
prop.h W
propform.h W
@@ -524,7 +539,7 @@ scrolbar.h W
scrolwin.h W
serbase.h W
settings.h W
setup.h W
setup.h W B
sizer.h W
slider.h W
socket.h W
@@ -535,9 +550,9 @@ statbox.h W
statline.h W
stattext.h W
statusbr.h W
strconv.h W
stream.h W
string.h W
strconv.h W B
stream.h W B
string.h W B
tab.h W
tabctrl.h W
taskbar.h W
@@ -547,35 +562,35 @@ tbarmsw.h W
tbarsmpl.h W
textctrl.h W
textdlg.h W
textfile.h W
txtstrm.h W
thread.h W
time.h W
timer.h W
textfile.h W B
txtstrm.h W B
thread.h W B
time.h W B
timer.h W B
tipdlg.h W
tokenzr.h W
tokenzr.h W B
toolbar.h W
tooltip.h W
treectrl.h W
types.h W
url.h W
utils.h W
utils.h W B
valgen.h W
validate.h W
valtext.h W
variant.h W
version.h W
variant.h W B
version.h W B
wave.h W
wfstream.h W
window.h W
wx.h W
wx.h W B
wx_cw.h W
wx_cw_cm.h W
wx_cw_d.h W
wxchar.h W
wxchar.h W B
wxexpr.h W
wxhtml.h W
wxprec.h W
wxprec.h W B
xpmhand.h W
zipstrm.h W
zstream.h W
@@ -816,16 +831,18 @@ ftp.h P
http.h P
protocol.h P
forcelink.h L
forcelnk.h L
helpdata.h L
helpfrm.h L
helpctrl.h L
htmlcell.h L
htmldefs.h L
htmlfilter.h L
htmlhelp.h L
htmlparser.h L
htmlfilt.h L
htmlpars.h L
htmltag.h L
htmlwin.h L
htmlwinparser.h L
mod_templ.h L
winpars.h L
m_templ.h L
version.h L
caret.h N
@@ -835,7 +852,7 @@ dcpsg.h N
dirdlgg.h N
fontdlgg.h N
filedlgg.h N
gridg.h N
grid.h N
helpext.h N
helpwxht.h N
helphtml.h N

263
distrib/msw/tmake/g295.t Normal file
View File

@@ -0,0 +1,263 @@
#!#############################################################################
#! File: g295.t
#! Purpose: tmake template file from which makefile.g295 is generated by running
#! tmake -t g295 wxwin.pro -o makefile.g295
#! Author: Vadim Zeitlin, Robert Roebling, Julian Smart
#! Created: 14.07.99
#! Version: $Id$
#!#############################################################################
#${
#! include the code which parses filelist.txt file and initializes
#! %wxCommon, %wxGeneric and %wxMSW hashes.
IncludeTemplate("filelist.t");
#! now transform these hashes into $project tags
foreach $file (sort keys %wxGeneric) {
#! native wxDirDlg can't be compiled due to GnuWin32/OLE limitations,
#! so take the generic version
if ( $wxGeneric{$file} =~ /\b(PS|G|U|16)\b/ ) {
next;
}
$file =~ s/cp?p?$/\$(OBJSUFF)/;
$project{"WXGENERICOBJS"} .= '$(GENDIR)/' . $file . " "
}
foreach $file (sort keys %wxCommon) {
next if $wxCommon{$file} =~ /\b(16)\b/;
$file =~ s/cp?p?$/\$(OBJSUFF)/;
$project{"WXCOMMONOBJS"} .= '$(COMMDIR)/' . $file . " "
}
foreach $file (sort keys %wxMSW) {
#! Mingw32 doesn't have the OLE headers and has some troubles with
#! socket code
next if $wxMSW{$file} =~ /\b(16)\b/;
$project{"WXMSWOBJS"} .= '$(MSWDIR)/';
$project{"WXMSWOBJS"} .= 'ole/' if $wxMSW{$file} =~ /\bO\b/;
$file =~ s/cp?p?$/\$(OBJSUFF)/;
$project{"WXMSWOBJS"} .= $file . " "
}
foreach $file (sort keys %wxHTML) {
$file =~ s/cp?p?$/\$(OBJSUFF)/;
$project{"WXHTMLOBJS"} .= '$(HTMLDIR)/' . $file . " "
}
#$}
# This file was automatically generated by tmake at #$ Now()
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE G295.T!
#
# File: makefile.g295
# Author: Julian Smart, Robert Roebling, Vadim Zeitlin
# Created: 1993
# Updated: 1999
# Copyright:(c) 1993, AIAI, University of Edinburgh,
# Copyright:(c) 1999, Vadim Zeitlin
# Copyright:(c) 1999, Robert Roebling
#
# Makefile for libwx.a
# Replace this with your own path if necessary
WXDIR = ../..
# All common compiler flags and options are now in
# this central makefile.
include $(WXDIR)/src/makeg95.env
# Subordinate library possibilities
EXTRAOBJS=
GENDIR = $(WXDIR)/src/generic
COMMDIR = $(WXDIR)/src/common
HTMLDIR = $(WXDIR)/src/html
XPMDIR = $(WXDIR)/src/xpm
PNGDIR = $(WXDIR)/src/png
JPEGDIR = $(WXDIR)/src/jpeg
ZLIBDIR = $(WXDIR)/src/zlib
OLEDIR = $(WXDIR)/src/msw/ole
MSWDIR = $(WXDIR)/src/msw
DOCDIR = $(WXDIR)\docs
GENERICOBJS = \
#$ ExpandList("WXGENERICOBJS");
COMMONOBJS = \
$(COMMDIR)/y_tab.$(OBJSUFF) \
#$ ExpandList("WXCOMMONOBJS");
HTMLOBJS = \
#$ ExpandList("WXHTMLOBJS");
MSWOBJS = \
#$ ExpandList("WXMSWOBJS");
ZLIBOBJS = \
$(ZLIBDIR)/adler32.$(OBJSUFF) \
$(ZLIBDIR)/compress.$(OBJSUFF) \
$(ZLIBDIR)/crc32.$(OBJSUFF) \
$(ZLIBDIR)/gzio.$(OBJSUFF) \
$(ZLIBDIR)/uncompr.$(OBJSUFF) \
$(ZLIBDIR)/deflate.$(OBJSUFF) \
$(ZLIBDIR)/trees.$(OBJSUFF) \
$(ZLIBDIR)/zutil.$(OBJSUFF) \
$(ZLIBDIR)/inflate.$(OBJSUFF) \
$(ZLIBDIR)/infblock.$(OBJSUFF) \
$(ZLIBDIR)/inftrees.$(OBJSUFF) \
$(ZLIBDIR)/infcodes.$(OBJSUFF) \
$(ZLIBDIR)/infutil.$(OBJSUFF) \
$(ZLIBDIR)/inffast.$(OBJSUFF)
PNGOBJS = \
$(PNGDIR)/png.$(OBJSUFF) \
$(PNGDIR)/pngread.$(OBJSUFF) \
$(PNGDIR)/pngrtran.$(OBJSUFF) \
$(PNGDIR)/pngrutil.$(OBJSUFF) \
$(PNGDIR)/pngpread.$(OBJSUFF) \
$(PNGDIR)/pngtrans.$(OBJSUFF) \
$(PNGDIR)/pngwrite.$(OBJSUFF) \
$(PNGDIR)/pngwtran.$(OBJSUFF) \
$(PNGDIR)/pngwutil.$(OBJSUFF) \
$(PNGDIR)/pngerror.$(OBJSUFF) \
$(PNGDIR)/pngmem.$(OBJSUFF) \
$(PNGDIR)/pngwio.$(OBJSUFF) \
$(PNGDIR)/pngrio.$(OBJSUFF) \
$(PNGDIR)/pngget.$(OBJSUFF) \
$(PNGDIR)/pngset.$(OBJSUFF)
JPEGOBJS = \
$(JPEGDIR)/jcomapi.$(OBJSUFF) \
$(JPEGDIR)/jutils.$(OBJSUFF) \
$(JPEGDIR)/jerror.$(OBJSUFF) \
$(JPEGDIR)/jmemmgr.$(OBJSUFF) \
$(JPEGDIR)/jmemnobs.$(OBJSUFF) \
$(JPEGDIR)/jcapimin.$(OBJSUFF) \
$(JPEGDIR)/jcapistd.$(OBJSUFF) \
$(JPEGDIR)/jctrans.$(OBJSUFF) \
$(JPEGDIR)/jcparam.$(OBJSUFF) \
$(JPEGDIR)/jdatadst.$(OBJSUFF) \
$(JPEGDIR)/jcinit.$(OBJSUFF) \
$(JPEGDIR)/jcmaster.$(OBJSUFF) \
$(JPEGDIR)/jcmarker.$(OBJSUFF) \
$(JPEGDIR)/jcmainct.$(OBJSUFF) \
$(JPEGDIR)/jcprepct.$(OBJSUFF) \
$(JPEGDIR)/jccoefct.$(OBJSUFF) \
$(JPEGDIR)/jccolor.$(OBJSUFF) \
$(JPEGDIR)/jcsample.$(OBJSUFF) \
$(JPEGDIR)/jchuff.$(OBJSUFF) \
$(JPEGDIR)/jcphuff.$(OBJSUFF) \
$(JPEGDIR)/jcdctmgr.$(OBJSUFF) \
$(JPEGDIR)/jfdctfst.$(OBJSUFF) \
$(JPEGDIR)/jfdctflt.$(OBJSUFF) \
$(JPEGDIR)/jfdctint.$(OBJSUFF) \
$(JPEGDIR)/jdapimin.$(OBJSUFF) \
$(JPEGDIR)/jdapistd.$(OBJSUFF) \
$(JPEGDIR)/jdtrans.$(OBJSUFF) \
$(JPEGDIR)/jdatasrc.$(OBJSUFF) \
$(JPEGDIR)/jdmaster.$(OBJSUFF) \
$(JPEGDIR)/jdinput.$(OBJSUFF) \
$(JPEGDIR)/jdmarker.$(OBJSUFF) \
$(JPEGDIR)/jdhuff.$(OBJSUFF) \
$(JPEGDIR)/jdphuff.$(OBJSUFF) \
$(JPEGDIR)/jdmainct.$(OBJSUFF) \
$(JPEGDIR)/jdcoefct.$(OBJSUFF) \
$(JPEGDIR)/jdpostct.$(OBJSUFF) \
$(JPEGDIR)/jddctmgr.$(OBJSUFF) \
$(JPEGDIR)/jidctfst.$(OBJSUFF) \
$(JPEGDIR)/jidctflt.$(OBJSUFF) \
$(JPEGDIR)/jidctint.$(OBJSUFF) \
$(JPEGDIR)/jidctred.$(OBJSUFF) \
$(JPEGDIR)/jdsample.$(OBJSUFF) \
$(JPEGDIR)/jdcolor.$(OBJSUFF) \
$(JPEGDIR)/jquant1.$(OBJSUFF) \
$(JPEGDIR)/jquant2.$(OBJSUFF) \
$(JPEGDIR)/jdmerge.$(OBJSUFF)
XPMOBJECTS = $(XPMDIR)/crbuffri.o\
$(XPMDIR)/crdatfri.o\
$(XPMDIR)/create.o $(XPMDIR)/crifrbuf.o\
$(XPMDIR)/crifrdat.o\
$(XPMDIR)/data.o\
$(XPMDIR)/hashtab.o $(XPMDIR)/misc.o\
$(XPMDIR)/parse.o $(XPMDIR)/rdftodat.o\
$(XPMDIR)/rdftoi.o\
$(XPMDIR)/rgb.o $(XPMDIR)/scan.o\
$(XPMDIR)/simx.o $(XPMDIR)/wrffrdat.o\
$(XPMDIR)/wrffrp.o $(XPMDIR)/wrffri.o
OBJECTS = $(MSWOBJS) $(COMMONOBJS) $(GENERICOBJS) $(HTMLOBJS) \
$(JPEGOBJS) $(PNGOBJS) $(ZLIBOBJS) # $(XPMOBJECTS)
all: $(OBJECTS) $(WXLIB)
$(WXLIB): $(OBJECTS) $(EXTRAOBJS)
ar $(AROPTIONS) $@ $(EXTRAOBJS) $(OBJECTS)
$(RANLIB) $@
$(OBJECTS): $(WXINC)/wx/defs.h $(WXINC)/wx/object.h $(WXINC)/wx/setup.h
$(COMMDIR)/y_tab.$(OBJSUFF): $(COMMDIR)/y_tab.c $(COMMDIR)/lex_yy.c
$(CCLEX) -c $(CPPFLAGS) -DUSE_DEFINE -DYY_USE_PROTOS -o $@ $(COMMDIR)/y_tab.c
$(COMMDIR)/y_tab.c: $(COMMDIR)/dosyacc.c
copy ..\common\dosyacc.c ..\common\y_tab.c
$(COMMDIR)/lex_yy.c: $(COMMDIR)/doslex.c
copy ..\common\doslex.c ..\common\lex_yy.c
# Replace lex with flex if you run into compilation
# problems with lex_yy.c. See also note about LEX_SCANNER
# above.
# $(COMMDIR)/lex_yy.c: $(COMMDIR)/lexer.l
# $(LEX) -L -o$(COMMDIR)/lex_yy.c $(COMMDIR)/lexer.l
#
# Try one of these if the above line doesn't work.
# Alternative syntax (1)
# $(LEX) -t -L $(COMMDIR)/lexer.l > $(COMMDIR)/lex_yy.c
# Alternative syntax (2)
# $(LEX) -L -o$(COMMDIR)/lex_yy.c $(COMMDIR)/lexer.l
#
# sed -e "s/BUFSIZ/5000/g" < lex.yy.c | \
# sed -e "s/yyoutput(c)/void yyoutput(c)/g" | \
# sed -e "s/YYLMAX 200/YYLMAX 5000/g" > lex_yy.c
# rm -f lex.yy.c
#
# Replace yacc with bison if you run into compilation
# problems with y_tab.c.
#
# $(COMMDIR)/y_tab.c: $(COMMDIR)/parser.y
# $(YACC) -o $(COMMDIR)/y_tab.c $(COMMDIR)/parser.y
#
# If you use e.g. gcc on Unix, uncomment these lines
# and comment out the above.
#
# $(COMMDIR)/y_tab.c: $(COMMDIR)/parser.y
# $(YACC) $(COMMDIR)/parser.y
# mv y.tab.c $(COMMDIR)/y_tab.c
clean:
-erase *.o
-erase *.bak
-erase core
-erase ..\common\y_tab.c
-erase ..\common\lex_yy.c
-erase ..\common\*.o
-erase ..\common\*.bak
-erase ..\generic\*.o
-erase ..\generic\*.bak
-erase ..\html\*.o
-erase ..\png\*.o
-erase ..\png\*.bak
-erase ..\zlib\*.o
-erase ..\zlib\*.bak
-erase ..\jpeg\*.o
-erase ..\..\lib\libwx.a
cleanall: clean

View File

@@ -51,36 +51,32 @@
#! Common
foreach $file (sort keys %wxCommon) {
next if $wxCommon{$file} =~ /\bR\b/;
($fileobj = $file) =~ s/cp?p?$/\o/;
($filedep = $file) =~ s/cp?p?$/\d/;
$file2 = $file;
$file =~ s/cp?p?$/\o/;
$file2 =~ s/cp?p?$/\d/;
$project{"WXGTK_COMMONOBJS"} .= $file . " ";
$project{"WXGTK_COMMONDEPS"} .= $file2 . " "
}
#! 'B' flag means that the file makes part of wxBase too
if ( $wxCommon{$file} =~ /\bB\b/ ) {
$project{"BASE_OBJS"} .= $fileobj . " ";
$project{"BASE_DEPS"} .= $filedep . " ";
}
foreach $file (sort keys %wxCommon) {
next if $wxCommon{$file} =~ /\bX\b/;
#! if it's the wxBase-only file, nothing more to do with it
next if $wxCommon{$file} =~ /\bBO\b/;
$file2 = $file;
$file =~ s/cp?p?$/\o/;
$file2 =~ s/cp?p?$/\d/;
$project{"WXMOTIF_COMMONOBJS"} .= $file . " ";
$project{"WXMOTIF_COMMONDEPS"} .= $file2 . " "
}
if ( $wxCommon{$file} !~ /\bR\b/ ) { #! unless not for GTK
$project{"WXGTK_COMMONOBJS"} .= $fileobj . " ";
$project{"WXGTK_COMMONDEPS"} .= $filedep . " "
}
if ( $wxCommon{$file} !~ /\bX\b/ ) { #! unless not for Motif
$project{"WXMOTIF_COMMONOBJS"} .= $fileobj . " ";
$project{"WXMOTIF_COMMONDEPS"} .= $filedep . " "
}
foreach $file (sort keys %wxCommon) {
next if $wxCommon{$file} =~ /\b(16)\b/;
#! needs extra files (sql*.h) so not compiled by default.
next if $file =~ /^odbc\./;
$file2 = $file;
$file =~ s/cp?p?$/\o/;
$file2 =~ s/cp?p?$/\d/;
$project{"WXMSW_COMMONOBJS"} .= $file . " ";
$project{"WXMSW_COMMONDEPS"} .= $file2 . " "
#! ODBC needs extra files (sql*.h) so not compiled by default.
if ( (file !~ /^odbc\./) && ($wxCommon{$file} !~ /\b(16)\b/) ) {
$project{"WXMSW_COMMONOBJS"} .= $fileobj . " ";
$project{"WXMSW_COMMONDEPS"} .= $filedep . " "
}
}
#! GUI
@@ -127,17 +123,24 @@
}
foreach $file (sort keys %wxUNIX) {
$file2 = $file;
$file =~ s/cp?p?$/\o/;
$file2 =~ s/cp?p?$/\d/;
$project{"WXUNIXOBJS"} .= $file . " ";
$project{"WXUNIXDEPS"} .= $file2 . " "
($fileobj = $file) =~ s/cp?p?$/\o/;
($filedep = $file) =~ s/cp?p?$/\d/;
#! 'B' flag means that the file makes part of wxBase too
if ( $wxUNIX{$file} =~ /\bB\b/ ) {
$project{"BASE_OBJS"} .= $fileobj . " ";
$project{"BASE_DEPS"} .= $filedep . " "
}
$project{"WXUNIX_OBJS"} .= $fileobj . " ";
$project{"WXUNIX_DEPS"} .= $filedep . " "
}
#! headers
foreach $file (sort keys %wxWXINCLUDE) {
$project{"WX_HEADERS"} .= $file . " "
$project{"WX_HEADERS"} .= $file . " ";
$project{"BASE_HEADERS"} .= $file . " " if $wxWXINCLUDE{$file} =~ /\bB\b/;
}
foreach $file (sort keys %wxGENERICINCLUDE) {
@@ -214,8 +217,9 @@ VP6 = @top_srcdir@/src/html
VP7 = @top_srcdir@/src/png
VP8 = @top_srcdir@/src/jpeg
VP9 = @top_srcdir@/src/zlib
VP10 = @top_srcdir@/src/iodbc
VPATH = $(VP1):$(VP2):$(VP3):$(VP4):$(VP5):$(VP6):$(VP7):$(VP8):$(VP9)
VPATH = $(VP1):$(VP2):$(VP3):$(VP4):$(VP5):$(VP6):$(VP7):$(VP8):$(VP9):$(VP10)
top_srcdir = @top_srcdir@
prefix = @prefix@
@@ -295,6 +299,9 @@ DISTDIR = ./_dist_dir/wx$(TOOLKIT)
############################## Files ##################################
BASE_HEADERS = \
#$ ExpandList("BASE_HEADERS");
WX_HEADERS = \
#$ ExpandList("WX_HEADERS");
@@ -381,17 +388,23 @@ MSW_GUIOBJS = \
MSW_GUIDEPS = \
#$ ExpandList("WXMSW_GUIDEPS");
BASE_OBJS = \
#$ ExpandList("BASE_OBJS");
BASE_DEPS = \
#$ ExpandList("BASE_DEPS");
HTMLOBJS = \
#$ ExpandList("WXHTMLOBJS");
HTMLDEPS = \
#$ ExpandList("WXHTMLDEPS");
UNIXOBJS = \
#$ ExpandList("WXUNIXOBJS");
UNIX_OBJS = \
#$ ExpandList("WXUNIX_OBJS");
UNIXDEPS = \
#$ ExpandList("WXUNIXDEPS");
UNIX_DEPS = \
#$ ExpandList("WXUNIX_DEPS");
ZLIBOBJS = \
adler32.o \
@@ -475,16 +488,40 @@ JPEGOBJS = \
jquant2.o \
jdmerge.o
IODBCOBJS = \
catalog.o \
connect.o \
dlf.o \
dlproc.o \
execute.o \
fetch.o \
hdbc.o \
henv.o \
herr.o \
hstmt.o \
info.o \
itrace.o \
misc.o \
prepare.o \
result.o
OBJECTS = $(@GUIOBJS@) $(@COMMONOBJS@) $(@GENERICOBJS@) $(@UNIXOBJS@) $(HTMLOBJS) \
$(JPEGOBJS) $(PNGOBJS) $(ZLIBOBJS)
GUIOBJS = @GUIOBJS@
GUIDEPS = @GUIDEPS@
GUIHEADERS = @GUIHEADERS@
COMMONOBJS = @COMMONOBJS@
COMMONDEPS = @COMMONDEPS@
GENERICOBJS = @GENERICOBJS@
GENERICDEPS = @GENERICDEPS@
UNIXOBJS = @UNIXOBJS@
UNIXDEPS = @UNIXDEPS@
DEPFILES = $(@GUIDEPS@) $(@COMMONDEPS@) $(@GENERICDEPS@) $(UNIXDEPS) $(HTMLDEPS)
OBJECTS = @ALL_OBJECTS@ $(IODBCOBJS)
HEADERS = $(@GUIHEADERS@) $(HTML_HEADERS) $(UNIX_HEADERS) $(PROTOCOL_HEADERS) \
$(GENERIC_HEADERS) $(WX_HEADERS)
DEPFILES = @ALL_DEPFILES@
all: $(OBJECTS) @WX_TARGET_LIBRARY@ @WX_CREATE_LINKS@
HEADERS = @ALL_HEADERS@
all: @WX_ALL@
@WX_LIBRARY_NAME_STATIC@: $(OBJECTS)
@$(INSTALL) -d ./lib
@@ -495,7 +532,7 @@ all: $(OBJECTS) @WX_TARGET_LIBRARY@ @WX_CREATE_LINKS@
@$(INSTALL) -d ./lib
$(SHARED_LD) ./lib/$@ $(OBJECTS) $(EXTRALIBS)
CREATE_LINKS: ./lib/@WX_TARGET_LIBRARY@
CREATE_LINKS: @WX_LIBRARY_NAME_SHARED@
@$(RM) ./lib/@WX_LIBRARY_LINK1@
@$(RM) ./lib/@WX_LIBRARY_LINK2@
@$(RM) ./lib/@WX_LIBRARY_LINK3@
@@ -503,13 +540,13 @@ CREATE_LINKS: ./lib/@WX_TARGET_LIBRARY@
$(LN_S) @WX_TARGET_LIBRARY@ ./lib/@WX_LIBRARY_LINK2@
$(LN_S) @WX_TARGET_LIBRARY@ ./lib/@WX_LIBRARY_LINK3@
CREATE_INSTALLED_LINKS: $(libdir)/@WX_TARGET_LIBRARY@
CREATE_INSTALLED_LINKS: $(libdir)/@WX_LIBRARY_NAME_SHARED@
$(RM) $(libdir)/@WX_LIBRARY_LINK1@
$(RM) $(libdir)/@WX_LIBRARY_LINK2@
$(RM) $(libdir)/@WX_LIBRARY_LINK3@
$(LN_S) @WX_TARGET_LIBRARY@ $(libdir)/@WX_LIBRARY_LINK1@
$(LN_S) @WX_TARGET_LIBRARY@ $(libdir)/@WX_LIBRARY_LINK2@
$(LN_S) @WX_TARGET_LIBRARY@ $(libdir)/@WX_LIBRARY_LINK3@
$(LN_S) @WX_LIBRARY_NAME_SHARED@ $(libdir)/@WX_LIBRARY_LINK1@
$(LN_S) @WX_LIBRARY_NAME_SHARED@ $(libdir)/@WX_LIBRARY_LINK2@
$(LN_S) @WX_LIBRARY_NAME_SHARED@ $(libdir)/@WX_LIBRARY_LINK3@
$(OBJECTS): $(WXDIR)/include/wx/defs.h $(WXDIR)/include/wx/object.h $(WXDIR)/include/wx/setup.h
@@ -586,7 +623,7 @@ write_message:
@echo " Read the wxWindows Licence on licencing conditions."
@echo " "
install: preinstall @WX_CREATE_INSTALLED_LINKS@ write_message
install: preinstall @WX_ALL_INSTALLED@ write_message
uninstall:
@echo " "
@@ -852,6 +889,10 @@ SAMPLES_DIST:
cp $(SAMPDIR)/minimal/Makefile.in $(DISTDIR)/samples/minimal
cp $(SAMPDIR)/minimal/*.cpp $(DISTDIR)/samples/minimal
cp $(SAMPDIR)/minimal/*.xpm $(DISTDIR)/samples/minimal
mkdir $(DISTDIR)/samples/newgrid
cp $(SAMPDIR)/newgrid/Makefile.in $(DISTDIR)/samples/newgrid
cp $(SAMPDIR)/newgrid/*.cpp $(DISTDIR)/samples/newgrid
cp $(SAMPDIR)/newgrid/*.h $(DISTDIR)/samples/newgrid
mkdir $(DISTDIR)/samples/notebook
cp $(SAMPDIR)/notebook/Makefile.in $(DISTDIR)/samples/notebook
cp $(SAMPDIR)/notebook/*.cpp $(DISTDIR)/samples/notebook

View File

@@ -41,6 +41,14 @@
$file =~ s/cp?p?$/obj/;
$project{"WXMSWOBJS"} .= '$D\\' . $file . " ";
}
foreach $file (sort keys %wxHTML) {
next if $wxHTML{$file} =~ /\b16\b/;
$file =~ s/cp?p?$/obj/;
$project{"WXHTMLOBJS"} .= "..\\html\\\$D\\" . $file . " "
}
#$}
# This file was automatically generated by tmake at #$ Now()
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE VC.T!
@@ -112,6 +120,11 @@ $(CPPFLAGS2) /Fo$@ /c /Tc $<
$(CPPFLAGS) /Fo$@ /c /Tp $<
<<
{..\msw}.c{..\msw\$D}.obj:
cl @<<
$(CPPFLAGS2) /Fo$@ /c /Tc $<
<<
{..\msw\ole}.cpp{..\msw\ole\$D}.obj:
cl @<<
$(CPPFLAGS) /Fo$@ /c /Tp $<
@@ -134,28 +147,12 @@ COMMONOBJS = \
MSWOBJS = #$ ExpandList("WXMSWOBJS");
HTMLOBJS = \
..\html\$D\htmlcell.obj \
..\html\$D\htmlfilter.obj \
..\html\$D\htmlhelp.obj \
..\html\$D\htmlhelp_io.obj \
..\html\$D\htmlparser.obj \
..\html\$D\htmltag.obj \
..\html\$D\htmlwin.obj \
..\html\$D\htmlwinparser.obj \
..\html\$D\mod_fonts.obj \
..\html\$D\mod_hline.obj \
..\html\$D\mod_image.obj \
..\html\$D\mod_layout.obj \
..\html\$D\mod_links.obj \
..\html\$D\mod_list.obj \
..\html\$D\mod_pre.obj \
..\html\$D\mod_tables.obj \
..\html\$D\search.obj
HTMLOBJS = #$ ExpandList("WXHTMLOBJS");
# Add $(NONESSENTIALOBJS) if wanting generic dialogs, PostScript etc.
# Add $(HTMLOBJS) if wanting wxHTML classes
OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS)
OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) $(HTMLOBJS)
# Normal, static library
all: dirs $(DUMMYOBJ) $(OBJECTS) $(PERIPH_TARGET) png zlib xpm jpeg $(LIBTARGET)
@@ -240,7 +237,7 @@ $(WXDIR)\lib\$(WXLIBNAME).lib: $(DUMMYOBJ) $(OBJECTS)
<<
# Update the dynamic link library
$(WXDIR)\lib\$(WXLIBNAME).dll: $(DUMMYOBJ) $(OBJECTS) $(WXDIR)\lib\$(WXLIBNAME).lib
$(WXDIR)\lib\$(WXLIBNAME).dll: $(DUMMYOBJ) $(OBJECTS)
$(link) @<<
$(LINKFLAGS)
-out:$(WXDIR)\lib\$(WXLIBNAME).dll
@@ -293,7 +290,7 @@ $(CPPFLAGS2) /c $(COMMDIR)\unzip.c /Fo$@
png:
cd $(WXDIR)\src\png
nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL)
nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) CRTFLAG=$(CRTFLAG)
cd $(WXDIR)\src\msw
clean_png:
@@ -303,7 +300,7 @@ clean_png:
zlib:
cd $(WXDIR)\src\zlib
nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL)
nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) CRTFLAG=$(CRTFLAG)
cd $(WXDIR)\src\msw
clean_zlib:
@@ -313,7 +310,7 @@ clean_zlib:
jpeg:
cd $(WXDIR)\src\jpeg
nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) all
nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) CRTFLAG=$(CRTFLAG) all
cd $(WXDIR)\src\msw
clean_jpeg:
@@ -323,7 +320,7 @@ clean_jpeg:
xpm:
cd $(WXDIR)\src\xpm
nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL)
nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) CRTFLAG=$(CRTFLAG)
cd $(WXDIR)\src\msw
clean_xpm:

View File

@@ -19,6 +19,7 @@
foreach $file (sort keys %wxCommon) {
next if $wxCommon{$file} =~ /\b16\b/;
next if $wxCommon{$file} =~ /\bBO\b/;
my $tag = $file =~ /\.c$/ ? "WXCSRCS" : "WXCOMMONSRCS";
$project{$tag} .= $file . " "
@@ -27,9 +28,16 @@
foreach $file (sort keys %wxMSW) {
next if $wxMSW{$file} =~ /\b16\b/;
my $tag = $wxMSW{$file} =~ /\bO\b/ ? "WXOLESRCS" : "WXMSWSRCS";
my $tag;
if ( $wxMSW{$file} =~ /\bO\b/ ) { $tag = "WXOLESRCS" }
else { $tag = $file =~ /\.c$/ ? "WXMSWCSRCS" : "WXMSWSRCS" }
$project{$tag} .= $file . " "
}
foreach $file (sort keys %wxHTML) {
next if $wxHTML{$file} =~ /\b16\b/;
$project{"WXHTMLSRCS"} .= $file . " "
}
#$}
# Microsoft Developer Studio Project File - Name="wxWindows" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
@@ -125,6 +133,8 @@ SOURCE=.\src\msw\dummy.cpp
#$ ExpandGlue("WXGENERICSRCS", "# Begin Source File\n\nSOURCE=.\\src\\generic\\", "\n# End Source File\n# Begin Source File\n\nSOURCE=.\\src\\generic\\", "\n# End Source File\n");
#$ ExpandGlue("WXCOMMONSRCS", "# Begin Source File\n\nSOURCE=.\\src\\common\\", "\n# End Source File\n# Begin Source File\n\nSOURCE=.\\src\\common\\", "\n# End Source File\n");
#$ ExpandGlue("WXCSRCS", "# Begin Source File\n\nSOURCE=.\\src\\common\\", "\n# SUBTRACT CPP /YX /Yc /Yu\n# End Source File\n# Begin Source File\n\nSOURCE=.\\src\\common\\", "\n# SUBTRACT CPP /YX /Yc /Yu\n# End Source File\n");
#$ ExpandGlue("WXMSWCSRCS", "# Begin Source File\n\nSOURCE=.\\src\\msw\\", "\n# SUBTRACT CPP /YX /Yc /Yu\n# End Source File\n# Begin Source File\n\nSOURCE=.\\src\\common\\", "\n# SUBTRACT CPP /YX /Yc /Yu\n# End Source File\n");
#$ ExpandGlue("WXHTMLSRCS", "# Begin Source File\n\nSOURCE=.\\src\\html\\", "\n# End Source File\n# Begin Source File\n\nSOURCE=.\\src\\html\\", "\n# End Source File\n");
# Begin Source File

View File

@@ -5,6 +5,9 @@ src/wxvc6.dsw
src/wxvc_dll.dsp
src/wxvc_dll.dsw
src/jpeg/jpeg.dsp
src/jpeg/jpeg.dsw
samples/checklst/ChecklstVC.dsp
samples/checklst/ChecklstVC.dsw

View File

@@ -17,6 +17,8 @@ General:
- Fixed day_of_week bug (Peter Stadel).
- Added Inside(), SetLeft/Right/Top/Bottom, +, += to wxRect.
- Added wxHTML, an HTML library and widget.
- Added ZIP input stream.
2.1.0, b4, May 9th 1999
-----------------------

View File

@@ -1,4 +1,78 @@
25th October '99: My birthday, wxWindows 2.1.10 released
Enlightment has struck the majority of the developers and
they have chosen ti use the Linux kernel numbering scheme
for wxWindows from now on. This means that the next stable
release will be called wxWindows 2.2.X, development snapshots
will be called 2.1.X.
A lot of discussion has been wasted on how to maintain a
once released stable version will be maintained. It was
almost universally agreed that only a commercial entity
will have the motivation ($$$) to do that - so far there
is no wxWindows Inc.
Support for GTK 1.0 has been dropped.
Many build fixes for various platforms have been applied,
try again, poor HP-UX and *BSD users, but don't reckon
with immediate success.
My total rewrite of the wxWindows underlying GTK widget
has turned scrolling including subwindows from barely
functional to pretty and fast.
wxSocket and Co. have been improved up to the point of
calling it a rewrite. It works on wxMSW now too and
seems pretty stable, but testing is still welcome.
The ODBC classes contributed by Remstar Inc. have been
overhauled (incl the sample) and have been tested with
all relevant SQL databases (even DBase). For that reason
I have reawakened the iODBC code from wxGTK 2.0 so you
can now use wxODBC from wxMSW and wxGTK.
Several printing things fixed.
HTML widget and its wxWindows' help system based upon
it have been reorganized and improved for easier use
from Python and C++.
wxSpinCtrl added. Like a wxSpinButton and a wxTextCtrl.
Changed the beaviour of the popular new wxFileDialog to
not forget the once typed file name when changing the
directory.
Implemented the wxSIMPLE_BORDER flag (simple black line
without shadow affect).
Michael is writing a complete rewrite of the antiquated
wxGrid. This is still work-in-progress and might not make
it into wxWindows 2.2, we'll see. Help would be welcome
to make that happen.
Made wxMenu code lose less memory, also added wxMenu::Delete().
Added code to send wxActivateEvent to MDI windows.
Vadim added configure things to compile wxWindows without any
GUI library. This is probably work in progress. He'll also add
a wxFontEnumerator class and has enhanced wxFont to make use
of char-encodings.
wxSlider, wxWindow, wxScrollBar now emit the correct events
for scrolling (like page up, line up etc) instead of just
"thumb-track" as before.
Corrected bug in Reparent() code.
A handler to read PCX file (in most variants) has been added.
A number of problems with compressed and socket streams have
been solved.
28th August '99: Ninth wxGTK 2.1 snapshot released
As the old makefile system didn't work, I trashed it and wrote

213
docs/html/roadmap.htm Normal file
View File

@@ -0,0 +1,213 @@
<HTML>
<HEAD>
<TITLE>wxWindows Roadmap</TITLE>
</HEAD>
<BODY>
<a name="top"></a>
<font face="Arial, Lucida Sans, Helvetica">
<table width=100% border=4 cellpadding=5 cellspacing=0>
<tr>
<td bgcolor="#660000">
<font size=+1 face="Arial, Lucida Sans, Helvetica" color="#FFFFFF">
wxWindows Roadmap
</font>
</td>
</tr>
</table>
<P>
<CENTER>
<a href="#schedule">Schedule</a> | <a href="#todo">To-Do List</a>
</CENTER>
<P>
This page represents current thinking about where wxWindows is going in the near,
medium and long-term. It also serves as a schedule for new releases so
that both developers and users can know what to expect when, at least approximately.<P>
Note (1): as the wxWindows effort is voluntary, these are not hard-and-fast deadlines:
but we will endeavour to follow them as closely as possible.<P>
Note (2): the releases described are for wxGTK, wxMSW and wxMotif ports. wxMac currently follows
its own development path but is due to merge with the main code base in November/December.
Also, minor snapshot releases for specific platforms may be
available at dates convenient to the developers.<P>
<CENTER>
<HR> <FONT SIZE=+2><I><B><a name="schedule">Schedule</a></B></I></FONT> <HR>
</CENTER>
<P>
<H4>Release 2.0.?</H4>
<ul>
<li>Release date: October 3rd, 1999
<li>This beta is intended to be the last stable snapshot before wxWindows
is split into base and GUI libraries.
<li>New wxGrid in beta.
<li>wxWizard (beta)
<li>wxDialUpManager and wxPhoneDialer (beta)
<li>wxFontEnumerator (beta)
<li>Preliminary support for different encodings
<li>wxPostEvent function
</ul>
<P>
<H2>Release 2.1</H2>
<ul>
<li>Release date: November 7th, 1999
<li>Splits wxWindows into base and GUI libraries. Most, but not all makefiles
are expected to support this: for the rest, the makefiles will build a valid
combined base/GUI library for GUI applications only.
<li>New wxGrid.
<li>wxSocket working.
<li>Full support for fonts in different encodings
<li>Tested multithreading support (wxThread)
<li>wxHTML printing (possibly).
<li>Better i18n support (i.e. more translations)
<li>Animation classes (possibly, low priority).
<li>PCX writing capability (possibly, low priority).
<li>wxImage handlers in separate .h and .cpp files.
<li>Rewritten timer.cpp, possible wxChrono class.
<li>Bug tracking system in place.
</ul>
<P>
<H4>Release 2.1.1</H4>
<ul>
<li>Release date: January 9th, 2000
<li>Miscellaneous fixes and small enhancements.
</ul>
<P>
<H4>Release 2.1.2</H4>
<ul>
<li>Release date: March 5th, 2000
<li>Miscellaneous fixes and small enhancements.
<li>wxDateTime class in beta.
</ul>
<P>
<H4>Release 2.1.3</H4>
<ul>
<li>Release date: May 7th, 2000
<li>Unicode compilation starting to work in wxGTK and wxMSW.
</ul>
<P>
<H2>Release 2.2</H2>
<ul>
<li>Release date: c. July 2nd, 2000
<li>Unicode compilation working in wxGTK and wxMSW.
<li>wxDateTime class.
<li>Regular expressions support.
</ul>
<P>
<H2>Release 2.3</H2>
<ul>
<li>Release date: unknown
<li>WinCE port available.
</ul>
<P>
<CENTER>
<HR> <FONT SIZE=+2><I><B><a name="todo">To-Do List</a></B></I></FONT> <HR>
</CENTER>
<P>
Developers: please feel free to add to these, and delete them when they are done.
<P>
<B><I>General</I></B><P>
<ul>
<li>wxHTML printing. When finished, this will allow an application to generate
printed reports with very little effort.
<li>wxSocket.
<li>Split library into several, for base (classes and functions usable by console and GUI
applications), console (classes and functions usable by console application only)
and GUI (classes and functions usable by GUI application only).
<li>Extend and unify drag and drop handling (e.g. we need to specify multiple drop targets
that can handle multiple formats).
<li>Expand the number of controls that can be specified in a WXR file;
add constraint specification to WXR syntax and Dialog Editor; add multilanguage support to WXR.
May be we'd better change the format completely and replace WXR with XML
(providing conversion utility for old files)?
<li>Rewrite Dialog Editor.
<li>Modem-oriented classes: wxDialUpManager for dialing up the ISP and
determining if there is a connection to Internet on the machine and
wxPhoneDialer for dialing arbitrary phone numbers and otherwise communicating
with the modem.
<li>PCX writing code.
<li>GIF animation code.
<li>Tidying of timer code, addition of wxChrono class.
<li>Debug wxPostScriptDC further.
<li>wxDateTime class.
<li>Expansion of wxHTML to support further tags, and frames.
<li>MGL port (see Backroom/Future Ports page).
<li>Rotated text support.
<li>FreeType support.
<li>Support for 'skins', perhaps using a set of alternative control and window classes
written generically in wxWindows.
<li>Serial and parallel port support.
<li>Modem and telephony support.
<li>Book, tutorial.
<li>More examples.
</ul>
<P>
<B><I>wxMSW</I></B><P>
<ul>
<li>Windows CE port.
<li>Cure bug whereby in a panel within another panel, all buttons become
default buttons (heavy black border).
<li>Write a RC->WXR converter.
</ul>
<P>
<B><I>wxGTK</I></B><P>
<ul>
<li>GNOME/KDE integration libraries.
</ul>
<P>
<B><I>wxMotif</I></B><P>
<ul>
<li>Fix menu accelerators
<li>Fix refresh problems
<li>Allow wxSystemSettings to be configurable, perhaps via a control
panel application.
</ul>
</BODY>
</HTML>

View File

@@ -34,7 +34,7 @@ variety of platforms. The second part details the wxWindows code organization an
its goal it to make wxWindows as uniform as possible without imposing too
many restrictions on the programmer.
<P>
Acknowledgements: This guide is partly based on <A
Acknowledgements: This guide is partly based on <A
HREF=http://www.mozilla.org/docs/tplist/catBuild/portable-cpp.html target=_top>
C++ portability guide</A> by David Williams.
@@ -50,6 +50,7 @@ C++ portability guide</A> by David Williams.
<LI><A HREF="#no_stl">Don't use STL</A></LI>
<LI><A HREF="#no_fordecl">Don't declare variables inside <TT>for()</TT></A></LI>
<LI><A HREF="#no_nestedclasses">Don't use nested classes</A></LI>
<LI><A HREF="#no_ternarywithobjects">Use ternary operator ?: carefully</A></LI>
</OL>
<BR>
<LI>General recommendations</LI>
@@ -100,14 +101,15 @@ C++ portability guide</A> by David Williams.
<LI><A HREF="#indentation">Indent your code with 4 spaces (no tabs!)</A></LI>
<LI><A HREF="#class_decl">Order of parts in a class declarations</A></LI>
</OL>
<BR>
<LI>More about naming conventions</LI>
<OL>
<LI><A HREF="#wx_prefix">Use wx or WX prefix for all public symbols</A></LI>
<LI><A HREF="#wxdllexport">Use WXDLLEXPORT with all classes/functions in
<LI><A HREF="#wxdllexport">Use WXDLLEXPORT with all classes/functions in
wxMSW/common code</A></LI>
<LI><A HREF="#set_get">Use Set/Get prefixes for accessors</A></LI>
<LI><A HREF="#constants">wxNAMING_CONSTANTS</A></LI>
</OL>
<BR>
@@ -123,7 +125,7 @@ C++ portability guide</A> by David Williams.
<H3>General C++ Rules</H3>
<UL>
<LI>New or not widely supported C++ features</LI>
<P>The usage of all features in this section is not recommended for one reason: they appeared in C++ relatively recently and are not yet
supported by all compilers. Moreover, when they're supported, there are
differences between different vendor's implementations. It's understandable that
@@ -133,7 +135,7 @@ of your favourite C++ abilities are indicated.
<P>Just to suppress any doubts that there are compilers which don't support
these new features, you can think about Win16 (a.k.a. Win 3.1) compilers,
<I>none</I> of which supports <I>any</I> feature from the list below.
<OL>
<P><LI><A NAME="no_templates"></A><B>Don't use C++ templates</B></LI><P>
Besides the reasons mentioned above, template usage also makes the
@@ -145,7 +147,7 @@ most commonly, polymorphic containers (in the sense that they can contain object
any type without compromising C++ type system, i.e. using <TT>void *</TT>
is out of question). wxWindows provides <A HREF="TODO">dynamic
arrays and lists</A> which are sufficient in 99% of cases - please don't hesitate
to use them. Lack of template is not a reason to use static arrays or
to use them. Lack of template is not a reason to use static arrays or
type-less (passing by <TT>void *</TT>) containers.
<P><LI><A NAME="no_exceptions"></A><B>Don't use C++ exceptions</B></LI><P>
@@ -180,10 +182,10 @@ might help here:<P>
void ReadAddressBookFile(const wxString& strName)
{
wxFile file;
if ( !file.Open(strFile) )
return;
...process it...
}
</PRE>
@@ -193,19 +195,19 @@ void ReadAddressBookFile(const wxString& strName)
bool ReadAddressBookFile(const wxString& strName)
{
wxFile file;
if ( !file.Open(strFile) ) {
// wxFile logged an error because file couldn't be opened which
// contains the system error code, however it doesn't know what
// this file is for and an error message "can't open $GLCW.ADB"
// can be quite confusing for the user. Here we say what we mean.
wxLogError("Can't read address book from '%s'!",
wxLogError("Can't read address book from '%s'!",
strName.c_str());
return false;
}
...process it...
return true;
}
</PRE>
@@ -217,22 +219,22 @@ bool ReadAddressBookFile(const wxString& strName)
bool ReadAddressBookFile(const wxString& strName)
{
wxFile file;
// start a block inside which all log messages are suppressed
{
wxLogNull noLog;
if ( !file.Open(strFile) )
return false;
}
...process it...
return true;
}
</PRE></LI>
</UL>
</OL>
<P><LI><A NAME="no_rtti"></A><B>Don't use RTTI</B></LI><P>
RTTI stands for Run-Time Type Information and there is probably no other
reason not to use it except the portability issue and the fact that it adds
@@ -240,7 +242,7 @@ reason not to use it except the portability issue and the fact that it adds
in the implementations I'm aware of).
<P><U>Workaround</U>: use wxWindows RTTI system which allows you to do almost
everything which the new C++ RTTI, except that, of course, you have to use
macros instead of the (horrible looking, BTW) <TT>dynamic_cast</TT>.
macros instead of the (horrible looking, BTW) <TT>dynamic_cast</TT>.
<P><LI><A NAME="no_namespaces"></A><B>Don't use namespaces</B></LI><P>
This topic is subject to change with time, however for the moment all wxWindows
@@ -312,17 +314,17 @@ you can try the following:
private:
class PrivateLibClass *m_pObject;
};
// in the .cpp file
class PrivateLibClass { ... };
PublicLibClass::PublicLibClass()
{
m_pObject = new PrivateLibClass;
...
}
PublicLibClass::~PublicLibClass()
{
delete m_pObject;
@@ -331,20 +333,39 @@ you can try the following:
<P>A nice side effect is that you don't need to recompile all the files
including the header if you change the PrivateLibClass declaration (it's
an example of a more general interface/implementation separation idea).
<P><LI><A NAME="no_ternarywithobjects"></A><B>Use ternary operator ?: carefully</B></LI><P>
The ternary operator <TT>?:</TT> shouldn't be used with objects (i.e. if any
of its operands are objects) because some compilers (notable Borland C++) fail
to compile such code.
<P><U>Workaround</U>: use <TT>if/else</TT> instead.
<PRE>
wxString s1, s2;
// Borland C++ won't compile the line below
wxString s = s1.Len() < s2.Len() ? s1 : s2;
// but any C++ compiler will compile this
wxString s;
if ( s1.Len() < s2.Len() )
s = s1;
else
s = s2;
</PRE>
</OL>
<BR>
<LI>General recommendations</B></LI><P>
While the recommendations in the previous section may not apply to you if you're
only working with perfect compilers which implement the very newest directives of
C++ standard, this section contains compiler- (and language-) independent advice
C++ standard, this section contains compiler- (and language-) independent advice
which <B>must</B> be followed if you wish to write correct, i.e. working, programs. It
also contains some C/C++ specific remarks in the end which are less
also contains some C/C++ specific remarks in the end which are less
important.
<OL>
<P><LI><A NAME="no_globals"></A><B>No global variables with constructors</B></LI><P>
In C++, the constructors of global variables are called before the
<TT>main()</TT> function (or <TT>WinMain()</TT> or any other program entry point)
<TT>main()</TT> function (or <TT>WinMain()</TT> or any other program entry point)
starts executing. Thus, there is no possibility to initialize <I>anything</I>
before the constructor call. The order of construction is largely
implementation-defined, meaning that there is no guarantee that one global
@@ -423,7 +444,7 @@ sizes are different. A small table illustrates it quite well:
Although close to the heart of many C programmers (I plead guilty), code like
classical <TT>if ( (c = getchar()) != EOF )</TT> is bad because it prevents you
from enabling "assignment in conditional expression" warning (see also
<A HREF="#no_warnings">above</A>) warning which is helpful to detect common
<A HREF="#no_warnings">above</A>) which is helpful to detect common
mistypes like <TT>if ( x = 2 )</TT> instead of <TT>if ( x == 2 )</TT>.
<P><LI><A NAME="no_comment_code"></A><B>Use <TT>#if 0</TT> rather than comments to temporarily
@@ -495,10 +516,10 @@ like files without terminating new-line. Such files also give a warning message
when loaded to vim (the Unix programmer's editor of choice :-)), so please think
about terminating the last line.
</OL>
<BR>
<LI>Style choices</B></LI><P>
All wxWindows specific style guidelines are specified in the next
All wxWindows specific style guidelines are specified in the next
section, here are the choices which are not completely arbitrary,
but have some deeper and not wxWindows-specific meaning.
@@ -518,9 +539,9 @@ following code fragment is:
void Foo::Bar(int x_)
{
...
x = x_;
...
}
</PRE>
@@ -591,7 +612,7 @@ However, the <TT>const</TT> keyword is confusing here, adds nothing to the code
and even cannot be removed if <TT>Foo()</TT> is virtual and overridden (because
the names are mangled differently). So, <I>for arguments passed by value</I>
you shouldn't use <TT>const</TT>.
<P>Of course, it doesn't apply to functions such as
<P>Of course, it doesn't apply to functions such as
<TT>void PrintMessage(const char *text)</TT> where <TT>const</TT> is mandatory.
</OL>
</UL>
@@ -607,7 +628,7 @@ The wxWindows files for each supported platform have their own subdirectories
in "include" and "src". So, for example, there is "src/msw", "include/gtk"
etc. There are also two special subdirectories called "common" and
"generic". The common subdirectory contains the files which are platform
independent (wxObject, wxString, ...) and the generic one the generic
independent (wxObject, wxString, ...) and the generic one the generic
implementations of GUI widgets, i.e. those which use only other wxWindows
classes to implement them. For the platforms where the given functionality
cannot be implemented natively, the generic implementation is used and the native
@@ -712,12 +733,12 @@ usage 'public domain' (the copyright holder does not assert the copyright).<P>
<P><LI><A NAME="indentation"></LI><B>Indent your code with 4 spaces (no tabs!)</B>
<P><LI><A NAME="class_decl"></LI><B>Order of parts in a class declarations</B><P>
</OL>
<P><LI>More about naming conventions</LI><P>
<OL>
<P><LI><A NAME="wx_prefix"></LI><B>Use wx or WX prefix for all public symbols</B>.
wx should be used for functions and classes, WX for macros.
<P><LI><A NAME="wxdllexport"</LI><B>Use WXDLLEXPORT with all classes/functions in
<P><LI><A NAME="wxdllexport"</LI><B>Use WXDLLEXPORT with all classes/functions in
wxMSW/common code</B>
The title says it all - every public (in the sense that it is not internal to
the library) function or class should have WXDLLEXPORT macro in its
@@ -734,14 +755,33 @@ keyword ordering for exporting data.
<P>There also several other places where you should take care of shared
library case: all IMPLEMENT_xxx macros which are usually used in the
corresponding .cpp files must be taken inside
corresponding .cpp files must be taken inside
"<TT>&#35;if !USE_SHARED_LIBRARY</TT>" and in the <TT>&#35;if USE_SHARED_LIBRARY</TT>
case you should put them inside <TT>common/cmndata.cpp</TT> file.
<P><LI><A NAME="set_get"></LI><B>Use Set/Get prefixes for accessors</B><P>
There is a convention in wxWindows to prefix the accessors (i.e. any simple, in
general, inline function which does nothing else except changing or returning
There is a convention in wxWindows to prefix the accessors (i.e. any simple, in
general, inline function which does nothing else except changing or returning
the value of a member variable) with either <TT>Set</TT> or <TT>Get</TT>.
<P><LI><A NAME="constants"></LI><B>wxNAMING_CONSTANTS</B><P>
The constants in wxWindows code should be defined using <TT>enum</TT> C++
keyword (and not with <TT>#define</TT> or <TT>static const int</TT>). They
should be declared in the global scope (and not inside class declaration) and
their names should start with a <TT>wx</TT> prefix. Finally, the constants
should be in all capital letters (except the first 2) to make it easier to
distinguish them from the variables with underscores separating the words.
<P>For example, file-related constants should be declared like this:
<pre>
enum
{
wxFILEOPEN_READ,
wxFILEOPEN_WRITE,
wxFILEOPEN_READWRITE
};
</pre>
</OL>
<P><LI>Miscellaneous</LI><P>
@@ -751,7 +791,7 @@ It's really a trivial piece of advice, but remember that using forward declarati
instead of including the header of corresponding class is better because not
only does it minimize the compile time, it also simplifies the dependencies
between different source files.
<P>On a related subject, in general, you should try not to include other
<P>On a related subject, in general, you should try not to include other
headers from a header file.
<P><LI><A NAME="debug_macros"></LI><B>Use debugging macros</B><P>
@@ -764,7 +804,7 @@ stubs for not (yet) implemented functions which silently return incorrect
values - otherwise, a person using a not implemented function has no idea that
it is, in fact, not implemented.
<P>As all debugging macros only do something useful if the symbol
<TT>__DEBUG__</TT> is defined, you should compile your programs in debug mode to profit
<TT>__WXDEBUG__</TT> is defined, you should compile your programs in debug mode to profit
from them.
</OL>
</UL>

View File

@@ -137,6 +137,10 @@ Loads the accelerator table from a Windows resource (Windows only).
\docparam{resource}{Name of a Windows accelerator.}
\pythonnote{The wxPython constructor accepts a list of
wxAcceleratorEntry objects, or 3-tuples consisting of flags, keyCode,
and cmd values like you would construct wxAcceleratorEntry objects with.}
\membersection{wxAcceleratorTable::\destruct{wxAcceleratorTable}}
\func{}{\destruct{wxAcceleratorTable}}{\void}

View File

@@ -16,8 +16,8 @@ the buttons shall be centred as the width of the dialog changes.
It is the unique feature of a box sizer, that it can grow in both directions (height and
width) but can distribute its growth in the main direction (horizontal for a row) {\it unevenly}
among its children. In our example case, the vertical sizer is supposed to propagate all its
height changes to only the text area, not to the button area. This is determined by the
{\it option} parameter when adding a window (or another sizer) to a sizer. It is interpreted
height changes to only the text area, not to the button area. This is determined by the {\it option} parameter
when adding a window (or another sizer) to a sizer. It is interpreted
as a weight factor, i.e. it can be zero, indicating that the window may not be resized
at all, or above zero. If several windows have a value above zero, the value is interpreted
relative to the sum of all weight factors of the sizer, so when adding two windows with
@@ -77,11 +77,9 @@ MyDialog::MyDialog(wxFrame *parent, wxWindowID id, const wxString &title ) :
topsizer->Fit( this ); // set size to minimum size as calculated by the sizer
topsizer->SetSizeHints( this ); // set size hints to honour mininum size
}
\end{verbatim}
\wxheading{Derived from}
\helpref{wxSizer}{wxsizer}

View File

@@ -418,6 +418,9 @@ Gets the current pen (see \helpref{wxDC::SetPen}{wxdcsetpen}).
Sets {\it colour} to the colour at the specified location. Windows only; an X implementation
is being worked on. Not available for wxPostScriptDC or wxMetafileDC.
\pythonnote{For wxPython the wxColour value is returned and is not
required as a parameter.}
\membersection{wxDC::GetSize}\label{wxdcgetsize}
\func{void}{GetSize}{\param{long *}{width}, \param{long *}{height}}

View File

@@ -118,9 +118,9 @@ Gets the pointer to the next handler in the chain.
\wxheading{See also}
\helpref{wxEvtHandler::SetNextHandler}{wxevthandlersetnexthandler},\rtfsp
\helpref{wxEvtHandler::GetPreviousHandler}{wxevthandlergetprevioushandler},\rtfsp
\helpref{wxEvtHandler::SetPreviousHandler}{wxevthandlersetprevioushandler},\rtfsp
\helpref{wxEvtHandler::SetNextHandler}{wxevthandlersetnexthandler},\rtfsp
\helpref{wxWindow::PushEventHandler}{wxwindowpusheventhandler},\rtfsp
\helpref{wxWindow::PopEventHandler}{wxwindowpopeventhandler}
@@ -132,9 +132,9 @@ Gets the pointer to the previous handler in the chain.
\wxheading{See also}
\helpref{wxEvtHandler::GetPreviousHandler}{wxevthandlergetprevioushandler},\rtfsp
\helpref{wxEvtHandler::SetPreviousHandler}{wxevthandlersetprevioushandler},\rtfsp
\helpref{wxEvtHandler::SetPreviousHandler}{wxevthandlersetprevioushandler},\rtfsp
\helpref{wxEvtHandler::GetNextHandler}{wxevthandlergetnexthandler},\rtfsp
\helpref{wxEvtHandler::SetNextHandler}{wxevthandlersetnexthandler},\rtfsp
\helpref{wxWindow::PushEventHandler}{wxwindowpusheventhandler},\rtfsp
\helpref{wxWindow::PopEventHandler}{wxwindowpopeventhandler}

View File

@@ -41,7 +41,8 @@ wxSWISS\_FONT}
Default constructor.
\func{}{wxFont}{\param{int}{ pointSize}, \param{int}{ family}, \param{int}{ style}, \param{int}{ weight},
\param{const bool}{ underline = FALSE}, \param{const wxString\& }{faceName = ""}}
\param{const bool}{ underline = FALSE}, \param{const wxString\& }{faceName = ""},
\param{wxFontEncoding }{encoding = wxFONTENCODING\_DEFAULT}}
Creates a font object.
@@ -70,6 +71,22 @@ Creates a font object.
\docparam{faceName}{An optional string specifying the actual typeface to be used. If the empty string,
a default typeface will chosen based on the family.}
\docparam{encoding}{An encoding which may be one of
\twocolwidtha{5cm}
\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf wxFONTENCODING\_SYSTEM}}{Default system encoding.}
\twocolitem{{\bf wxFONTENCODING\_DEFAULT}}{Default application encoding: this
is the encoding set by calls to
\helpref{SetDefaultEncoding}{wxfontsetdefaultencoding} and which may beset to,
say, KOI8 to create all fonts by default with KOI8 encoding. Initially, the
default application encoding is the same as default system encoding.}
\twocolitem{{\bf wxFONTENCODING\_ISO8859\_1...15}}{ISO8859 encodings.}
\twocolitem{{\bf wxFONTENCODING\_KOI8}}{The standard russian encoding for Internet.}
\twocolitem{{\bf wxFONTENCODING\_CP1250...1252}}{Windows encodings similar to ISO8859 (but not identical).}
\end{twocollist}
If the specified encoding isn't available, no font is created.
}
\wxheading{Remarks}
If the desired font does not exist, the closest match will be chosen.

View File

@@ -31,7 +31,8 @@ slashes.
\func{bool}{wxFileExists}{\param{const wxString\& }{filename}}
Returns TRUE if the file exists.
Returns TRUE if the file exists. It also returns TRUE if the file is
a directory.
\membersection{::wxFileNameFromPath}
@@ -80,6 +81,17 @@ See \helpref{wxFindFirstFile}{wxfindfirstfile} for an example.
Returns the Windows directory under Windows; on other platforms returns the empty string.
\membersection{::wxInitAllImageHandlers}\label{wxinitallimagehandlers}
\func{void}{wxInitAllImageHandlers}{\void}
Adds some common image format handlers, which, depending on wxWindows
configuration, can be handlers for BMP (loading) (always installed), GIF
(loading and saving), PCX (loading and saving), PNM (loading and saving as raw
rgb), PNG (loading and saving), JPEG (loading and saving), file formats.
See also: \helpref{wxImage}{wximage} \helpref{wxImageHandler}{wximagehandler}
\membersection{::wxIsAbsolutePath}
\func{bool}{wxIsAbsolutePath}{\param{const wxString\& }{filename}}
@@ -1917,6 +1929,23 @@ base classes.
<wx/object.h>
\membersection{wxBITMAP}\label{wxbitmap}
\func{}{wxBITMAP}{bitmapName}
This macro loads a bitmap from either application resources (on the platforms
for which they exist, i.e. Windows and OS2) or from an XPM file. It allows to
avoid using {\tt #ifdef}s when creating bitmaps.
\wxheading{See also}
\helpref{Bitmaps and icons overview}{wxbitmapoverview},
\helpref{wxICON}{wxicon}
\wxheading{Include files}
<wx/gdicmn.h>
\membersection{WXDEBUG\_NEW}\label{debugnew}
\func{}{WXDEBUG\_NEW}{arg}
@@ -1964,6 +1993,23 @@ Example:
\helpref{RTTI overview}{runtimeclassoverview}
\membersection{wxICON}\label{wxicon}
\func{}{wxICON}{iconName}
This macro loads an icon from either application resources (on the platforms
for which they exist, i.e. Windows and OS2) or from an XPM file. It allows to
avoid using {\tt #ifdef}s when creating icons.
\wxheading{See also}
\helpref{Bitmaps and icons overview}{wxbitmapoverview},
\helpref{wxBITMAP}{wxbitmap}
\wxheading{Include files}
<wx/gdicmn.h>
\membersection{WXTRACE}\label{trace}
\wxheading{Include files}

View File

@@ -21,6 +21,7 @@ wxDC::DrawBitmap.
\wxheading{See also}
\helpref{wxBitmap}{wxbitmap}
\helpref{wxInitAllImageHandlers}{wxinitallimagehandlers}
\latexignore{\rtfignore{\wxheading{Members}}}
@@ -278,15 +279,16 @@ Returns TRUE if there is a mask active, FALSE otherwise.
\func{static void}{InitStandardHandlers}{\void}
Adds the standard image format handlers, which, depending on wxWindows
configuration, can be handlers for Windows BMP (loading), PNG
(loading and saving) and JPEG (loading and saving) file formats.
Internal use only. Adds standard image format handlers. It only install BMP
for the time being, which is use by wxBitmap.
This function is called by wxWindows on startup.
This function is called by wxWindows on startup, and shouldn't be called by
the user.
\wxheading{See also}
\helpref{wxImageHandler}{wximagehandler}
\helpref{wxInitAllImageHandlers}{wxinitallimagehandlers}
\membersection{wxImage::InsertHandler}
@@ -303,11 +305,13 @@ of a given handler class in an application session.}
\membersection{wxImage::LoadFile}\label{wximageloadfile}
\func{bool}{LoadFile}{\param{const wxString\&}{ name}, \param{long}{ type}}
\func{bool}{LoadFile}{\param{const wxString\&}{ name}, \param{long}{ type = wxBITMAP\_TYPE\_ANY}}
\func{bool}{LoadFile}{\param{const wxString\&}{ name}, \param{const wxString\&}{ mimetype}}
Loads an image from a file.
Loads an image from a file. If no handler type is provided, the library will
try to use wxBITMAP\_TYPE\_BMP or all known handlers previously installed
through a call to \helpref{wxImage::InitAllHandlers}{wximageinitallhandlers}.
\func{bool}{LoadFile}{\param{wxInputStream\&}{ stream}, \param{long}{ type}}
@@ -328,8 +332,11 @@ The meaning of {\it stream} data is determined by the {\it type} parameter.}
\twocolwidtha{5cm}%
\begin{twocollist}
\twocolitem{{\bf wxBITMAP\_TYPE\_BMP}}{Load a Windows image file.}
\twocolitem{{\bf wxBITMAP\_TYPE\_PNG}}{Load a PNG image file.}
\twocolitem{{\bf wxBITMAP\_TYPE\_GIF}}{Load a GIF image file.}
\twocolitem{{\bf wxBITMAP\_TYPE\_JPEG}}{Load a JPEG image file.}
\twocolitem{{\bf wxBITMAP\_TYPE\_PCX}}{Load a PCX image file.}
\twocolitem{{\bf wxBITMAP\_TYPE\_PNG}}{Load a PNG image file.}
\twocolitem{{\bf wxBITMAP\_TYPE\_PNM}}{Load a PNM image file.}
\end{twocollist}
The validity of these flags depends on the platform and wxWindows configuration.}
@@ -587,6 +594,7 @@ created by IJG.)
\wxheading{See also}
\helpref{wxImage}{wximage}
\helpref{wxInitAllImageHandlers}{wxinitallimagehandlers}
\latexignore{\rtfignore{\wxheading{Members}}}

View File

@@ -7,7 +7,8 @@ is selected, the previous selection is removed) or multiple selection
(clicking an item toggles the item on or off independently of other
selections).
List box elements are numbered from zero.
List box elements are numbered from zero. Their number is limited in
some platforms (e.g. ca. 2000 on GTK).
A listbox callback gets an event wxEVT\_COMMAND\_LISTBOX\_SELECT for single clicks, and
wxEVT\_COMMAND\_LISTBOX\_DOUBLE\_CLICKED for double clicks.
@@ -282,6 +283,9 @@ Insert the given number of strings before the specified position.
\docparam{pos}{Position before which to insert the items: for example, if {\it pos} is 0 the items
will be inserted in the beginning of the listbox}
\pythonnote{The first two parameters are collapsed into a single
parameter for wxPython, which is a list of strings.}
\membersection{wxListBox::Number}\label{wxlistboxnumber}
\constfunc{int}{Number}{\void}

View File

@@ -163,7 +163,7 @@ EVT\_LIST\_BEGIN\_LABEL\_EDIT event which can be vetoed so that no
text control will appear for in-place editing.
If the user changed the label (i.e. s/he does not press ESC or leave
the text control without changes, a EVT\_LIST\_END\_LABEL\_EDIT event
the text control without changes, a EVT\_LIST\_END\_LABEL\_EDIT event
will be sent which can be vetoed as well.
\membersection{wxListCtrl::EnsureVisible}\label{wxlistctrlensurevisible}
@@ -246,8 +246,8 @@ Returns the specified image list. {\it which} may be one of:
Gets information about the item. See \helpref{wxListCtrl::SetItem}{wxlistctrlsetitem} for more
information.
\pythonnote{The wxPython version of this method takes a parameter
representing the item ID, and returns the wxListItem object.
\pythonnote{The wxPython version of this method takes an integer parameter
for the item ID, and returns the wxListItem object.
}
\membersection{wxListCtrl::GetItemData}\label{wxlistctrlgetitemdata}
@@ -376,6 +376,10 @@ giving details in {\it flags}. {\it flags} will be a combination of the followin
wxLIST\_HITTEST\_ONITEMSTATEICON.}
\end{twocollist}
\pythonnote{A tuple of values is returned in the wxPython version of
thsi method. The first value is the item id and the second is the
flags value mentioned above.}
\membersection{wxListCtrl::InsertColumn}\label{wxlistctrlinsertcolumn}
\func{long}{InsertColumn}{\param{long }{col}, \param{wxListItem\& }{info}}

View File

@@ -52,6 +52,7 @@ empty, {\it HasPendingMessages()} is also provided which allows to explicitly
verify it.
\helpref{Flush}{wxlogflush}\\
\helpref{FlushActive}{wxlogflushactive}\\
\helpref{HasPendingMessages}{haspendingmessages}
\membersection{Customization}\label{wxlogcustomization}
@@ -142,6 +143,16 @@ currently. (Almost) for internal use only.
Shows all the messages currently in buffer and clears it. If the buffer
is already empty, nothing happens.
\membersection{wxLog::FlushActive}\label{wxlogflushactive}
\func{static void}{FlushActive}{\void}
Flushes the current log target if any, does nothing if there is none.
See also:
\helpref{Flush}{wxlogflush}
\membersection{wxLog::HasPendingMessages}\label{haspendingmessages}
\constfunc{bool}{HasPendingMessages}{\void}
@@ -169,7 +180,7 @@ Returns whether the verbose mode is currently active.
Sets the timestamp format prepended by the default log targets to all
messages. The string may contain any normal characters as well as \%
prefixed format specificators, see {\it strftime()} manual for details.
Passing a null value (not empty string) to this function disables message timestamping.
Passing a NULL value (not empty string) to this function disables message timestamping.
\membersection{wxLog::GetTimestamp}\label{wxloggettimestamp}

View File

@@ -635,6 +635,12 @@ Determines whether an item is enabled.
TRUE if the item was found and is enabled, FALSE otherwise.
\membersection{wxMenuBar::Refresh}\label{wxmenubarrefresh}
\func{void}{Refresh}{\void}
Redraw the menu bar
\membersection{wxMenuBar::SetHelpString}\label{wxmenubarsethelpstring}
\func{void}{SetHelpString}{\param{int}{ id}, \param{const wxString\& }{helpString}}

View File

@@ -117,25 +117,27 @@ instead of showing a dialog. Windows only.
\constfunc{wxPoint}{GetMarginTopLeft}{\void}
Returns the left (x) and top (y) margins.
Returns the left (x) and top (y) margins in millimetres.
\membersection{wxPageSetupDialogData::GetMarginBottomRight}\label{wxpagesetupdialogdatagetmarginbottomright}
\constfunc{wxPoint}{GetMarginBottomRight}{\void}
Returns the right (x) and bottom (y) margins.
Returns the right (x) and bottom (y) margins in millimetres.
\membersection{wxPageSetupDialogData::GetMinMarginTopLeft}\label{wxpagesetupdialogdatagetminmargintopleft}
\constfunc{wxPoint}{GetMinMarginTopLeft}{\void}
Returns the left (x) and top (y) minimum margins the user can enter (Windows only).
Returns the left (x) and top (y) minimum margins the user can enter (Windows only). Units
are in millimetres
\membersection{wxPageSetupDialogData::GetMinMarginBottomRight}\label{wxpagesetupdialogdatagetminmarginbottomright}
\constfunc{wxPoint}{GetMinMarginBottomRight}{\void}
Returns the right (x) and bottom (y) minimum margins the user can enter (Windows only).
Returns the right (x) and bottom (y) minimum margins the user can enter (Windows only). Units
are in millimetres
\membersection{wxPageSetupDialogData::GetPaperId}\label{wxpagesetupdialogdatagetpaperid}
@@ -169,31 +171,33 @@ instead of showing a dialog. Windows only.
\func{void}{SetDefaultMinMargins}{\param{bool}{ flag}}
Pass TRUE if the page setup dialog will take its minimum margin values from the currently
selected printer properties. Windows only.
selected printer properties. Windows only. Units are in millimetres
\membersection{wxPageSetupDialogData::SetMarginTopLeft}\label{wxpagesetupdialogdatasetmargintopleft}
\func{void}{GetMarginTopLeft}{\param{const wxPoint\& }{pt}}
Sets the left (x) and top (y) margins.
Sets the left (x) and top (y) margins in millimetres.
\membersection{wxPageSetupDialogData::SetMarginBottomRight}\label{wxpagesetupdialogdatasetmarginbottomright}
\func{void}{SetMarginBottomRight}{\param{const wxPoint\& }{pt}}
Sets the right (x) and bottom (y) margins.
Sets the right (x) and bottom (y) margins in millimetres.
\membersection{wxPageSetupDialogData::SetMinMarginTopLeft}\label{wxpagesetupdialogdatasetminmargintopleft}
\func{void}{SetMinMarginTopLeft}{\param{const wxPoint\& }{pt}}
Sets the left (x) and top (y) minimum margins the user can enter (Windows only).
Sets the left (x) and top (y) minimum margins the user can enter (Windows only). Units are
in millimetres.
\membersection{wxPageSetupDialogData::SetMinMarginBottomRight}\label{wxpagesetupdialogdatasetminmarginbottomright}
\func{void}{SetMinMarginBottomRight}{\param{const wxPoint\& }{pt}}
Sets the right (x) and bottom (y) minimum margins the user can enter (Windows only).
Sets the right (x) and bottom (y) minimum margins the user can enter (Windows only). Units are
in millimetres.
\membersection{wxPageSetupDialogData::SetPaperId}\label{wxpagesetupdialogdatasetpaperid}
@@ -285,4 +289,3 @@ Returns the \helpref{page setup data}{wxpagesetupdialogdata} associated with the
Shows the dialog, returning wxID\_OK if the user pressed OK, and wxID\_CANCEL
otherwise.

View File

@@ -5,7 +5,7 @@ box around the sizer. Note that this static box has to be created
separately.
See also \helpref{wxSizer}{wxsizer}, \helpref{wxStaticBox}{wxstaticbox} and
\helpref{wxBoxSizer}{wxboxsizer}.
\helpref{wxBoxSizer}{wxboxsizer}.
\wxheading{Derived from}
@@ -26,4 +26,5 @@ as parameters - orient can be either of wxVERTICAL or wxHORIZONTAL.
\func{wxStaticBox*}{GetStaticBox}{\void}
Returns the static box associated with the sizer.
Returns the static box associated with the sizer.

View File

@@ -50,25 +50,6 @@ Default destructor.
Delete all informations about the address.
%
% Build
%
\membersection{wxSockAddress::Build}
\func{void}{Build}{\param{struct sockaddr *\&}{ addr}, \param{size\_t\&}{ len}}
Build a coded socket address.
%
% Disassemble
%
\membersection{wxSockAddress::Disassemble}
\func{void}{Disassemble}{\param{struct sockaddr *}{addr}, \param{size\_t}{ len}}
Decode a socket address. {\bf Actually, you don't have to use this
function: only wxSocketBase use it.}
%
% SockAddrLen
%

View File

@@ -57,13 +57,13 @@ functions that take a \helpref{wxScrollEvent}{wxscrollevent} argument:
\twocolwidtha{7cm}
\begin{twocollist}
\twocolitem{{\bf EVT\_COMMAND\_SCROLL(id, func)}}{Catch all scroll commands.}
\twocolitem{{\bf EVT\_COMMAND\_TOP(id, func)}}{Catch a command to put the scroll thumb at the maximum position.}
\twocolitem{{\bf EVT\_COMMAND\_BOTTOM(id, func)}}{Catch a command to put the scroll thumb at the maximum position.}
\twocolitem{{\bf EVT\_COMMAND\_LINEUP(id, func)}}{Catch a line up command.}
\twocolitem{{\bf EVT\_COMMAND\_LINEDOWN(id, func)}}{Catch a line down command.}
\twocolitem{{\bf EVT\_COMMAND\_PAGEUP(id, func)}}{Catch a page up command.}
\twocolitem{{\bf EVT\_COMMAND\_PAGEDOWN(id, func)}}{Catch a page down command.}
\twocolitem{{\bf EVT\_COMMAND\_THUMBTRACK(id, func)}}{Catch a thumbtrack command (continuous movement of the scroll thumb).}
\twocolitem{{\bf EVT\_COMMAND\_SCROLL\_TOP(id, func)}}{Catch a command to put the scroll thumb at the maximum position.}
\twocolitem{{\bf EVT\_COMMAND\_SCROLL\_BOTTOM(id, func)}}{Catch a command to put the scroll thumb at the maximum position.}
\twocolitem{{\bf EVT\_COMMAND\_SCROLL\_LINEUP(id, func)}}{Catch a line up command.}
\twocolitem{{\bf EVT\_COMMAND\_SCROLL\_LINEDOWN(id, func)}}{Catch a line down command.}
\twocolitem{{\bf EVT\_COMMAND\_SCROLL\_PAGEUP(id, func)}}{Catch a page up command.}
\twocolitem{{\bf EVT\_COMMAND\_SCROLL\_PAGEDOWN(id, func)}}{Catch a page down command.}
\twocolitem{{\bf EVT\_COMMAND\_SCROLL\_THUMBTRACK(id, func)}}{Catch a thumbtrack command (continuous movement of the scroll thumb).}
\end{twocollist}%
\wxheading{See also}

View File

@@ -14,6 +14,12 @@ If you don't wish to calculate your own scrolling, you must call PrepareDC when
within OnDraw, to set the device origin for the device context according to the current
scroll position.
Note that the underlying system knows nothing about scrolling coordinates, so that all system
functions (mouse events, expose events, refresh calls etc) as well as the position of subwindows
are relative to the "physical" origin of the scrolled window. If the user insert a child window at
position (10,10) and scrolls the window down 100 pixels (moving the child window out of the visible
area), the child window will report a position of (10,-90).
\wxheading{Derived from}
\helpref{wxPanel}{wxpanel}\\
@@ -139,7 +145,9 @@ Enable or disable physical scrolling in the given direction. Physical
scrolling is the physical transfer of bits up or down the
screen when a scroll event occurs. If the application scrolls by a
variable amount (e.g. if there are different font sizes) then physical
scrolling will not work, and you should switch it off.
scrolling will not work, and you should switch it off. Note that you
will have to reposition child windows yourself, if physical scrolling
is disabled.
\wxheading{Parameters}

View File

@@ -1,15 +1,15 @@
\section{\class{wxSizer}}\label{wxsizer}
wxSizer is the abstract base class used for layouting subwindows in a window. You
wxSizer is the abstract base class used for laying out subwindows in a window. You
cannot use wxSizer directly; instead, you'll have to use \helpref{wxBoxSizer}{wxboxsizer}
or \helpref{wxStaticBoxSizer}{wxstaticboxsizer}.
The layouting algorithm used by sizers in wxWindows closely related to layouting
The layout algorithm used by sizers in wxWindows closely related to layout
in other GUI toolkits, such as Java's AWT, the GTK toolkit or the Qt toolkit. It is
based upon the idea of the individual subwindows reporting their minimal required
size and their ability to get stretched if the size of the parent window has changed.
This will most often mean, that the programmer does not set the original size of
the dialog in the beginning, rather the top-most sizer will get queried and it will
the dialog in the beginning, rather the top-most sizer will get queried and it will
then query its children. Its children can be normal windows or other sizers, so that
a hierachy of sizer can be constructed. Note that sizer are not derived from wxWindows
and thus do not interfere with tab ordering and require very little resources compared
@@ -21,13 +21,16 @@ or different window (dialog item) sizes on different platforms without problems.
the standard font as well as the overall design of Motif widgets requires more space than
on Windows, the intial dialog size will automatically be bigger on Motif than on Windows.
\pythonnote{If you wish to create a sizer class in wxPython you should
derive the class from \tt{wxPySizer} in order to get Python-aware
capabilities for the various virtual methods.}
\wxheading{Derived from}
\helpref{wxObject}{wxobject}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxSizer::wxSizer}\label{wxsizerwxsizer}
\func{}{wxSizer}{\void}
@@ -43,11 +46,11 @@ The destructor.
\membersection{wxSizer::Add}\label{wxsizeradd}
\func{void}{Add}{\param{wxWindow* }{window}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}}
\func{void}{Add}{\param{wxWindow* }{window}, \param{int }{option = 0},\param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
\func{void}{Add}{\param{wxSizer* }{sizer}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}}
\func{void}{Add}{\param{wxSizer* }{sizer}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
\func{void}{Add}{\param{int }{width}, \param{int }{height}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}}
\func{void}{Add}{\param{int }{width}, \param{int }{height}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
Adds the {\it window} to the sizer. As wxSizer itself is an abstract class, the parameters
have no meaning in the wxSizer class itself, but as there currently is only one class
@@ -56,7 +59,7 @@ of the paramters is described here:
\docparam{window}{The window to be added to the sizer. Its initial size (either set explicitly by the
user or calculated internally when using wxDefaultSize) is interpreted as the minimal and in many
cases also the initial size. This is particularly useful in connection with \helpref{SetSizeHint}{wxsizersetsizehints}. }
cases also the initial size. This is particularly useful in connection with \helpref{SetSizeHint}{wxsizersetsizehints}.}
\docparam{sizer}{The (child-)sizer to be added to the sizer. This allows placing a child sizer in a
sizer and thus to create hierarchies of sizers (typically a vertical box as the top sizer and several
@@ -73,7 +76,7 @@ the dialog.}
to indicate if a child of a sizer can change its size in the main orientation of the wxBoxSizer - where
0 stands for not changable and a value of more than zero in interpreted relative to the value of other
children of the same wxBoxSizer. You might, e.g., have a horizontal wxBoxSizer with three children, two
of which are supposed to change their size with the sizer, then the two stretchable windows would get a
of which are supposed to change their size with the sizer, then the two stretchable windows would get a
value of 1 each to make them grow and shrink equally with the sizer's vertical dimension.}
\docparam{flag}{This parameter can be used to set a number of flags which can be combined using
@@ -85,18 +88,22 @@ the {\it option} flag - not in the main orientation, but the respectively other
if you created a wxBoxSizer with the wxVERTICAL option, these flags will be relevant if the
sizer changes its horizontal size. A child may get resized to completely fill out the new size (using
either wxGROW or wxEXPAND), may get centered (wxCENTER or wxCENTRE) or may get aligned to either
side (wxALIGN_LEFT and wxALIGN_TOP are set to 0 and thus represent the default, wxALIGN_RIGHT and
wxALIGN_BOTTOM have their obvious meaning.}
side (wxALIGN\_LEFT and wxALIGN\_TOP are set to 0 and thus represent the default, wxALIGN\_RIGHT and
wxALIGN\_BOTTOM have their obvious meaning.}
\docparam{border}{Determines the border width, if the {\it flag} parameter is set to any border.}
\docparam{userData}{Allows an extra object to be attached to the sizer
item, for use in derived classes when sizing information is more
complex than what {\it option} and {\it flag} will allow for.}
\membersection{wxSizer::Prepend}\label{wxsizerprepend}
\func{void}{Prepend}{\param{wxWindow* }{window}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}}
\func{void}{Prepend}{\param{wxWindow* }{window}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
\func{void}{Prepend}{\param{wxSizer* }{sizer}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}}
\func{void}{Prepend}{\param{wxSizer* }{sizer}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}, \param{wxObject* }{userData = NULL}}
\func{void}{Prepend}{\param{int }{width}, \param{int }{height}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border = 0}}
\func{void}{Prepend}{\param{int }{width}, \param{int }{height}, \param{int }{option = 0}, \param{int }{flag = 0}, \param{int }{border= 0}, \param{wxObject* }{userData = NULL}}
Same as \helpref{wxSizer::Add}{wxsizeradd}, but prepends the items to the beginning of the
list of items (windows, subsizers or spaces) owned by this sizer.
@@ -111,7 +118,7 @@ list of items (windows, subsizers or spaces) owned by this sizer.
Removes a child from the sizer. {\it window} is the window to be removed, {\it sizer} the
equivalent sizer and {\it nth} is the position of the child in the sizer, typically 0 for
the first item. This method does not cause any layouting or resizing to take place and does
the first item. This method does not cause any layout or resizing to take place and does
not delete the window itself. Call \helpref{wxSizer::Layout}{wxsizerlayout} for updating
the layout "on screen" after removing a child fom the sizer.
@@ -178,7 +185,8 @@ of \helpref{wxBoxSizer}{wxboxsizer}.
\func{void}{SetSizeHints}{\param{wxWindow* }{window}}
Tell the sizer to set the minimal size of the {\it window} to match the sizer's minimal size.
Tell the sizer to set the minimal size of the {\it window} to match the sizer's minimal size.
This is commonly done in the constructor of the window itself, see sample in the description
of \helpref{wxBoxSizer}{wxboxsizer} if the window is resizable (as many dialogs under Unix and
frames on probably all platforms).

View File

@@ -8,9 +8,31 @@
<wx/socket.h>
\wxheading{See also}
\wxheading{wxSocket errors}%\label{wxsocketerrs} % Labels don't work on a non-section!
GSocket for wxWindows
\twocolwidtha{7cm}
\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf wxSOCKET\_NOERROR}}{No error happened.}
\twocolitem{{\bf wxSOCKET\_INVOP}}{Invalid operation.}
\twocolitem{{\bf wxSOCKET\_IOERR}}{Input/Output error.}
\twocolitem{{\bf wxSOCKET\_INVADDR}}{Invalid address passed to wxSocket.}
\twocolitem{{\bf wxSOCKET\_INVSOCK}}{Invalid socket (uninitialized).}
\twocolitem{{\bf wxSOCKET\_NOHOST}}{No corresponding host.}
\twocolitem{{\bf wxSOCKET\_INVPORT}}{Invalid port.}
\twocolitem{{\bf wxSOCKET\_TRYAGAIN}}{The IO call has a timeout or is in non-blocking mode.}
\twocolitem{{\bf wxSOCKET\_MEMERR}}{Memory exhausted.}
\end{twocollist}%
\wxheading{wxSocket events}
\twocolwidtha{7cm}
\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf wxSOCKET\_INPUT}}{Some data are ready to be got.}
\twocolitem{{\bf wxSOCKET\_OUTPUT}}{The socket is ready to be written to.}
\twocolitem{{\bf wxSOCKET\_CONNECTION}}{Someone want to connect our server.}
\twocolitem{{\bf wxSOCKET\_LOST}}{The connection has been broken.}
\twocolitem{{\bf wxSOCKET\_MAX\_EVENT}}{This should never happen but the compiler may complain about it.}
\end{twocollist}%
% ---------------------------------------------------------------------------
% Event handling
@@ -78,10 +100,36 @@ Destroys the wxSocketBase object.
%
\membersection{wxSocketBase::SetNotify}\label{wxsocketbasesetnotify}
\func{void}{SetNotify}{\param{GSocketEventFlags}{ event_flags}}
\func{void}{SetNotify}{\param{wxSocketEventFlags}{ event_flags}}
SetNotify setups which socket events are to be sent to the event handler.
For more information on socket events see GSocket events.
You specify in parameters a mask of wxSocket events. The flags is:
\twocolwidtha{7cm}
\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf wxSOCKET\_INPUT\_FLAG}}{to receive wxSOCKET_INPUT}
\twocolitem{{\bf wxSOCKET\_OUTPUT\_FLAG}}{to receive wxSOCKET_OUTPUT}
\twocolitem{{\bf wxSOCKET\_CONNECTION\_FLAG}}{to receive wxSOCKET_CONNECTION}
\twocolitem{{\bf wxSOCKET\_LOST\_FLAG}}{to receive wxSOCKET_LOST}
\end{twocollist}%
For example:
\begin{verbatim}
sock.SetNotify(wxSOCKET\_INPUT\_FLAG | wxSOCKET\_LOST\_FLAG);
\end{verbatim}
In this example, the user will be notified about incoming socket datas and
a broken connection.
For more information on socket events see \helpref{wxSocket events}{wxsocketbase}.
%
% SetTimeout
%
\membersection{wxSocketBase::SetTimeout}{wxsocketbasesettimeout}
\func{void}{SetTimeout}{\param{int }{seconds}}
This function sets the socket timeout in seconds.
%
% Notify
@@ -136,15 +184,15 @@ Returns TRUE if the socket mustn't wait.
\membersection{wxSocketBase::LastCount}\label{wxsocketbaselastcount}
\constfunc{size\_t}{LastCount}{\void}
\constfunc{wxUint32}{LastCount}{\void}
Returns the number of bytes read or written by the last IO call.
\membersection{wxSocketBase::LastError}\label{wxsocketbaselasterror}
\constfunc{GSocketError}{LastError}{\void}
\constfunc{wxSocketError}{LastError}{\void}
Returns an error in the GSocket format. See GSocket errors.
Returns the last occured wxSocket error. See \helpref{wxSocket errors}{wxsocketbase}.
% ---------------------------------------------------------------------------
% IO calls
@@ -154,7 +202,7 @@ Returns an error in the GSocket format. See GSocket errors.
%
\membersection{wxSocketBase::Peek}\label{wxsocketbasepeek}
\func{wxSocketBase\&}{Peek}{\param{char *}{ buffer}, \param{size\_t}{ nbytes}}
\func{wxSocketBase\&}{Peek}{\param{char *}{ buffer}, \param{wxUint32}{ nbytes}}
This function peeks a buffer of {\it nbytes} bytes from the socket. Peeking a buffer
doesn't delete it from the system socket in-queue.
@@ -180,7 +228,7 @@ Returns a reference to the current object.
%
\membersection{wxSocketBase::Read}\label{wxsocketbaseread}
\func{wxSocketBase\&}{Read}{\param{char *}{ buffer}, \param{size\_t}{ nbytes}}
\func{wxSocketBase\&}{Read}{\param{char *}{ buffer}, \param{wxUint32}{ nbytes}}
This function reads a buffer of {\it nbytes} bytes from the socket.
@@ -219,7 +267,7 @@ This remark is also valid for all IO call.
%
\membersection{wxSocketBase::Write}\label{wxsocketbasewrite}
\func{wxSocketBase\&}{Write}{\param{const char *}{ buffer}, \param{size\_t}{ nbytes}}
\func{wxSocketBase\&}{Write}{\param{const char *}{ buffer}, \param{wxUint32}{ nbytes}}
This function writes a buffer of {\it nbytes} bytes from the socket.
@@ -256,7 +304,7 @@ Returns a reference to the current object.
%
\membersection{wxSocketBase::WriteMsg}\label{wxsocketbasewritemsg}
\func{wxSocketBase\&}{WriteMsg}{\param{const char *}{ buffer}, \param{size\_t}{ nbytes}}
\func{wxSocketBase\&}{WriteMsg}{\param{const char *}{ buffer}, \param{wxUint32}{ nbytes}}
This function writes a buffer of {\it nbytes} bytes from the socket. But it
writes a short header before so that ReadMsg can alloc the right size for
@@ -284,7 +332,7 @@ Returns a reference to the current object.
%
\membersection{wxSocketBase::ReadMsg}\label{wxsocketbasereadmsg}
\func{wxSocketBase\&}{ReadMsg}{\param{char *}{ buffer}, \param{size\_t}{ nbytes}}
\func{wxSocketBase\&}{ReadMsg}{\param{char *}{ buffer}, \param{wxUint32}{ nbytes}}
This function reads a buffer sent by WriteMsg on a socket. If the buffer passed
to the function isn't big enough, the function filled it and then discard the
@@ -312,7 +360,7 @@ Returns a reference to the current object.
%
\membersection{wxSocketBase::Unread}\label{wxsocketbaseunread}
\func{wxSocketBase\&}{Unread}{\param{const char *}{ buffer}, \param{size\_t}{ nbytes}}
\func{wxSocketBase\&}{Unread}{\param{const char *}{ buffer}, \param{wxUint32}{ nbytes}}
This function unreads a buffer. It means that the buffer is put in the top
of the incoming queue. But, it is put also at the end of all unread buffers.
@@ -349,7 +397,7 @@ doesn't wait.
% ---------------------------------------------------------------------------
\membersection{wxSocketBase::Wait}\label{wxsocketbasewait}
\func{bool}{Wait}{\param{long}{ seconds = -1}, \param{long}{ microsecond = 0}}
\func{bool}{Wait}{\param{long}{ seconds = -1}, \param{long}{ millisecond = 0}}
This function waits for an event: it could be an incoming byte, the possibility
for the client to write, a lost connection, an incoming connection, an
@@ -359,7 +407,7 @@ established connection.
\docparam{seconds}{Number of seconds to wait. By default, it waits infinitely.}
\docparam{microsecond}{Number of microseconds to wait.}
\docparam{millisecond}{Number of milliseconds to wait.}
\wxheading{Return value}
@@ -376,7 +424,7 @@ Returns TRUE if an event occured, FALSE if the timeout was reached.
%
\membersection{wxSocketBase::WaitForRead}\label{wxsocketbasewaitforread}
\func{bool}{WaitForRead}{\param{long}{ seconds = -1}, \param{long}{ microsecond = 0}}
\func{bool}{WaitForRead}{\param{long}{ seconds = -1}, \param{long}{ millisecond = 0}}
This function waits for a read event.
@@ -384,7 +432,7 @@ This function waits for a read event.
\docparam{seconds}{Number of seconds to wait. By default, it waits infinitely.}
\docparam{microsecond}{Number of microseconds to wait.}
\docparam{millisecond}{Number of milliseconds to wait.}
\wxheading{Return value}
@@ -401,7 +449,7 @@ Returns TRUE if a byte arrived, FALSE if the timeout was reached.
%
\membersection{wxSocketBase::WaitForWrite}\label{wxsocketbasewaitforwrite}
\func{bool}{WaitForWrite}{\param{long}{ seconds = -1}, \param{long}{ microsecond = 0}}
\func{bool}{WaitForWrite}{\param{long}{ seconds = -1}, \param{long}{ millisecond = 0}}
This function waits for a write event.
@@ -409,7 +457,7 @@ This function waits for a write event.
\docparam{seconds}{Number of seconds to wait. By default, it waits infinitely.}
\docparam{microsecond}{Number of microseconds to wait.}
\docparam{millisecond}{Number of milliseconds to wait.}
\wxheading{Return value}
@@ -426,7 +474,7 @@ Returns TRUE if a write event occured, FALSE if the timeout was reached.
%
\membersection{wxSocketBase::WaitForLost}\label{wxsocketbasewaitforlost}
\func{bool}{Wait}{\param{long}{ seconds = -1}, \param{long}{ microsecond = 0}}
\func{bool}{Wait}{\param{long}{ seconds = -1}, \param{long}{ millisecond = 0}}
This function waits for a "lost" event. For instance, the peer may have closed
the connection, or the connection may have been broken.
@@ -435,7 +483,7 @@ the connection, or the connection may have been broken.
\docparam{seconds}{Number of seconds to wait. By default, it waits infinitely.}
\docparam{microsecond}{Number of microseconds to wait.}
\docparam{millisecond}{Number of milliseconds to wait.}
\wxheading{Return value}
@@ -454,7 +502,8 @@ Returns TRUE if a "lost" event occured, FALSE if the timeout was reached.
\func{void}{RestoreState}{\void}
This function restores a previously saved state.
This function restores the previous state of the socket (include flags,
notify flags, notify state, C callback function and data).
\wxheading{See also}
@@ -477,6 +526,36 @@ actually it saves all flags and the state of the asynchronous callbacks.
\helpref{wxSocketBase::RestoreState}{wxsocketbaserestorestate}
%
% GetLocal
%
\membersection{wxSocketBase::GetLocal}{wxsocketbasegetlocal}
\constfunc{bool}{GetLocal}{\param{wxSockAddress\& }{addr_man}}
This function returns the local address field of the socket. The local
address field contains the complete local address of the socket (local
address, local port, ...).
\wxheading{Return value}
It returns TRUE if no errors happened, FALSE otherwise.
%
% GetPeer
%
\membersection{wxSocketBase::GetPeer}{wxsocketbasegetlocal}
\constfunc{bool}{GetPeer}{\param{wxSockAddress\& }{addr_man}}
This function returns the peer address field of the socket. The peer
address field contains the complete peer host address of the socket
(address, port, ...).
\wxheading{Return value}
It returns TRUE if no errors happened, FALSE otherwise.
% ---------------------------------------------------------------------------
% Socket callbacks
% ---------------------------------------------------------------------------
@@ -494,7 +573,43 @@ Sets an event handler to be called when a socket event occured.
\wxheading{See also}
\helpref{wxSocketBase::SetNotify}{wxsocketbasesetnotify}
\helpref{wxSocketBase::Notify}{wxsocketbasenotify}
\helpref{wxSocketEvent}{wxsocketevent}
\helpref{wxEvtHandler}{wxevthandler}
\membersection{wxSocketBase::Callback}\label{wxsocketbasecallback}
\func{wxSocketBase::wxSockCbk}{Callback}{\param{wxSocketBase::wxSockCbk}{ callback}}
wxSocket event handler can call C callback. This function allows you to set it.
The format of the callback is as followed:
\begin{verbatim}
void SocketCallback(wxSocketBase& sock,wxSocketNotify evt,char *cdata);
\end{verbatim}
The first parameter reminds you of the caller socket. The second parameter
informs you about the current event (See \helpref{wxSocket events}{wxsocketbase}).
The third parameters is the client data you specified using \helpref{CallbackData}{wxsocketcallbackdata}.
\wxheading{Return value}
It returns the previous callback.
\wxheading{See also}
\helpref{wxSocketBase::SetNotify}{wxsocketbasesetnotify}
\helpref{wxSocketBase::Notify}{wxsocketbasenotify}
\membersection{wxSocketBase::CallbackData}\label{wxsocketcallbackdata}
\func{char *}{CallbackData}{\param{char *}{cdata}}
This function sets the the client data which will be passed to a \helpref{C callback}{wxsocketbasecallback}.
\wxheading{Return value}
This function returns the old value of the client data pointer.
% ---------------------------------------------------------------------------
% CLASS wxSocketClient
@@ -563,7 +678,7 @@ Returns TRUE if the connection is established and no error occurs.
%
\membersection{wxSocketClient::WaitOnConnect}\label{wxsocketclientwaitonconnect}
\func{bool}{WaitOnConnect}{\param{long}{ seconds = -1}, \param{long}{ microseconds = 0}}
\func{bool}{WaitOnConnect}{\param{long}{ seconds = -1}, \param{long}{ milliseconds = 0}}
Wait for a "connect" event.
@@ -612,7 +727,7 @@ Constructor.
\membersection{wxSocketEvent::SocketEvent}\label{wxsocketeventsocketevent}
\constfunc{GSocketEvent}{SocketEvent}{\void}
\constfunc{wxSocketNotify}{SocketEvent}{\void}
Returns the socket event type.

View File

@@ -30,7 +30,7 @@ XPM icon file to be available at run-time.
#endif
\end{verbatim}
A macro, wxICON, is available which creates an icon using an XPM
A macro, \helpref{wxICON}{wxicon}, is available which creates an icon using an XPM
on the appropriate platform, or an icon resource on Windows.
\begin{verbatim}
@@ -47,6 +47,30 @@ wxIcon icon("mondrian");
#endif
\end{verbatim}
There is also a corresponding \helpref{wxBITMAP}{wxbitmap} macro which allows
to create the bitmaps in much the same way as \helpref{wxICON}{wxicon} creates
icons. It assumes that bitmaps live in resources under Windows or OS2 and XPM
files under all other platforms (for XPMs, the corresponding file must be
included before this macro is used, of course, and the name of the bitmap
should be the same as the resource name under Windows with {\tt \_xpm}
suffix). For example:
\begin{verbatim}
// an easy and portable way to create a bitmap
wxBitmap bmp(wxBITMAP(bmpname));
// which is roughly equivalent to the following
#if defined(__WXMSW__) || defined(__WXPM__)
wxBitmap bmp("bmpname", wxBITMAP_TYPE_RESOURCE);
#else // Unix
wxBitmap bmp(bmpname_xpm, wxBITMAP_TYPE_XPM);
#endif
\end{verbatim}
You should always use wxICON and wxBITMAP macros because they work for any
platform (unlike the code above which doesn't deal with wxMac, wxBe, ...) and
are more short and clear than versions with {\tt #ifdef}s.
\subsection{Supported bitmap file formats}\label{supportedbitmapformats}
The following lists the formats handled on different platforms. Note

View File

@@ -21,8 +21,8 @@ combineSubSections = yes
;;
;; These two are for generating MS HTML Help project, contents and index files.
;;
;htmlWorkshopFiles = true
;htmlIndex = true
htmlWorkshopFiles = true
htmlIndex = true
;\overview [2] {\rtfonly{See also }\settransparency{on}\sethotspotcolour{off}\sethotspotunderline{on}\winhelponly{\image{}{books.bmp}\settransparency{off}}
;\htmlonly{\image{}{books.gif}}\helpref{#1}{#2}
@@ -34,7 +34,7 @@ combineSubSections = yes
\constfunc [3] {{\bf #1} {\bf #2}(#3) {\bf const}\index{#2}}
\windowstyle [1] {{\bf #1}\index{#1}}
\bftt [1] {\bf{\tt{#1}}}
\pythonnote [1] {{\bf \fcol{blue}{wxPython note:}}\\ #1}
\pythonnote [1] {{\bf \fcol{blue}{wxPython note:}} #1}
%\pythonnote [1] {}

View File

@@ -9,6 +9,7 @@ This chapter contains a selection of topic overviews.
\input tcontain.tex
\input tlog.tex
\input tconfig.tex
\input tunicode.tex
\input tbitmap.tex
\input tdialog.tex
\input tfont.tex

View File

@@ -159,7 +159,7 @@ EVT\_TREE\_BEGIN\_LABEL\_EDIT event which can be vetoed so that no
text control will appear for in-place editing.
If the user changed the label (i.e. s/he does not press ESC or leave
the text control without changes, a EVT\_TREE\_END\_LABEL\_EDIT event
the text control without changes, a EVT\_TREE\_END\_LABEL\_EDIT event
will be sent which can be vetoed as well.
\wxheading{See also}
@@ -203,6 +203,10 @@ The return value is TRUE if the rectangle was successfully retrieved or FALSE
if it was not (in this case {\it rect} is not changed) - for example, if the
item is currently invisible.
\pythonnote{The wxPython version of this method requires only the
\tt{item} and \tt{textOnly} parameters. The return value is either a
\tt{wxRect} object or \tt{None}.}
\membersection{wxTreeCtrl::GetChildrenCount}\label{wxtreectrlgetchildrencount}
\constfunc{size\_t}{GetChildrenCount}{\param{const wxTreeItemId\&}{ item}, \param{bool}{ recursively = TRUE}}
@@ -287,9 +291,20 @@ associated with the wxTreeItemData for the given item Id.}
\membersection{wxTreeCtrl::GetItemImage}\label{wxtreectrlgetitemimage}
\constfunc{int}{GetItemImage}{\param{const wxTreeItemId\& }{item}}
\constfunc{int}{GetItemImage}{\param{const wxTreeItemId\& }{item},
\param{wxTreeItemIcon }{which = wxTreeItemIcon\_Normal}}
Gets the normal item image.
Gets the specified item image. The value of {\it which} may be:
\begin{itemize}\itemsep=0pt
\item{wxTreeItemIcon\_Normal} to get the normal item image
\item{wxTreeItemIcon\_Selected} to get the selected item image (i.e. the image
which is shown when the item is currently selected)
\item{wxTreeItemIcon\_Expanded} to get the expanded image (this only
makes sense for items which have children - then this image is shown when the
item is expanded and the normal image is shown when it is collapsed)
\item{wxTreeItemIcon\_SelectedExpanded} to get the selected expanded image
(which is shown when an expanded item is currently selected)
\end{itemize}
\membersection{wxTreeCtrl::GetItemText}\label{wxtreectrlgetitemtext}
@@ -381,14 +396,15 @@ Returns the root item for the tree control.
\constfunc{int}{GetItemSelectedImage}{\param{const wxTreeItemId\& }{item}}
Gets the selected item image.
Gets the selected item image (this function is obsolete, use
{\tt GetItemImage(item, wxTreeItemIcon\_Selected} instead).
\membersection{wxTreeCtrl::GetSelection}\label{wxtreectrlgetselection}
\constfunc{wxTreeItemId}{GetSelection}{\void}
Returns the selection, or an invalid item if there is no selection.
This function only works with the controls without wxTR\_MULTIPLE style, use
This function only works with the controls without wxTR\_MULTIPLE style, use
\helpref{GetSelections}{wxtreectrlgetselections} for the controls which do have
this style.
@@ -401,6 +417,9 @@ function can be called only if the control has the wxTR\_MULTIPLE style.
Returns the number of selected items.
\pythonnote{The wxPython version of this method accepts no parameters
and returns a Python list of \tt{wxTreeItemId}'s.}
\membersection{wxTreeCtrl::HitTest}\label{wxtreectrlhittest}
\func{long}{HitTest}{\param{const wxPoint\& }{point}, \param{int\& }{flags}}
@@ -546,15 +565,19 @@ usage and loading time.
\membersection{wxTreeCtrl::SetItemImage}\label{wxtreectrlsetitemimage}
\func{void}{SetItemImage}{\param{const wxTreeItemId\&}{ item}, \param{int }{image}}
\func{void}{SetItemImage}{\param{const wxTreeItemId\&}{ item},
\param{int }{image},
\param{wxTreeItemIcon }{which = wxTreeItemIcon\_Normal}}
Sets the normal item image. This is an index into the assciated image list.
Sets the specified item image. See \helpref{GetItemImage}{wxtreectrlgetitemimage}
for the description of {\it which} parameter.
\membersection{wxTreeCtrl::SetItemSelectedImage}\label{wxtreectrlsetitemselectedimage}
\func{void}{SetItemSelectedImage}{\param{const wxTreeItemId\&}{ item}, \param{int }{selImage}}
Sets the item selected image. This is an index into the assciated image list.
Sets the selected item image (this function is obsolete, use
{\tt SetItemImage(item, wxTreeItemIcon\_Selected} instead).
\membersection{wxTreeCtrl::SetItemText}\label{wxtreectrlsetitemtext}
@@ -591,7 +614,7 @@ Removes the selection from the currently selected item (if any).
\func{void}{UnselectAll}{\void}
This function either behaves the same as \helpref{Unselect}{wxtreectrlunselect}
This function either behaves the same as \helpref{Unselect}{wxtreectrlunselect}
if the control doesn't have wxTR\_MULTIPLE style, or removes the selection from
all items if it does have this style.

View File

@@ -75,3 +75,4 @@ The key code if the event was is a key event.
\constfunc{const wxString&}{GetLabel}{}
Returns the label if the event was a begin or end edit label event.

160
docs/latex/wx/tunicode.tex Normal file
View File

@@ -0,0 +1,160 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Name: tunicode.tex
%% Purpose: Overview of the Unicode support in wxWindows
%% Author: Vadim Zeitlin
%% Modified by:
%% Created: 22.09.99
%% RCS-ID: $Id$
%% Copyright: (c) 1999 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
%% Licence: wxWindows license
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Unicode support in wxWindows}\label{unicode}
This section briefly describes the state of the Unicode support in wxWindows.
Read it if you want to know more about how to write programs able to work with
characters from languages other than English.
\subsection{What is Unicode?}
Starting with release 2.1 wxWindows has support for compiling in Unicode mode
on the platforms which support it. Unicode is a standard for character
encoding which addreses the shortcomings of the previous, 8 bit standards, by
using 16 bit for encoding each character. This allows to have 65536 characters
instead of the usual 256 and is sufficient to encode all of the world
languages at once. More details about Unicode may be found at {\tt www.unicode.org}.
% TODO expand on it, say that Unicode extends ASCII, mention ISO8859, ...
As this solution is obviously preferable to the previous ones (think of
incompatible encodings for the same language, locale chaos and so on), many
modern ooperating systems support it. The probably first example is Windows NT
which uses only Unicode internally since its very first version.
Writing internationalized programs is much easier with Unicode and, as the
support for it improves, it should become more and more so. Moreover, in the
Windows NT/2000 case, even the program which uses only standard ASCII can profit
from using Unicode because they will work more efficiently - there will be no
need for the system to convert all strings hte program uses to/from Unicode
each time a system call is made.
\subsection{Unicode and ANSI modes}
As not all platforms supported by wxWindows support Unicode (fully) yet, in
many cases it is unwise to write a program which can only work in Unicode
environment. A better solution is to write programs in such way that they may
be compiled either in ANSI (traditional) mode or in the Unicode one.
This can be achieved quite simply by using the means provided by wxWindows.
Basicly, there are only a few things to watch out for:
\begin{itemize}
\item Character type ({\tt char} or {\tt wchar\_t})
\item Literal strings (i.e. {\tt "Hello, world!"} or {\tt '*'})
\item String functions ({\tt strlen()}, {\tt strcpy()}, ...)
\end{itemize}
Let's look at them in order. First of all, each character in an Unicode
program takes 2 bytes instead of usual one, so another type should be used to
store the characters ({\tt char} only holds 1 byte usually). This type is
called {\tt wchar\_t} which stands for {\it wide-character type}.
Also, the string and character constants should be encoded on 2 bytes instead
of one. This is achieved by using the standard C (and C++) way: just put the
letter {\tt 'L'} after any string constant and it becomes a {\it long}
constant, i.e. a wide character one. To make things a bit more readable, you
are also allowed to prefix the constant with {\tt 'L'} instead of putting it
after it.
Finally, the standard C functions don't work with {\tt wchar\_t} strings, so
another set of functions exists which do the same thing but accept
{\tt wchar\_t *} instead of {\tt char *}. For example, a function to get the
length of a wide-character string is called {\tt wcslen()} (compare with
{\tt strlen()} - you see that the only difference is that the "str" prefix
standing for "string" has been replaced with "wcs" standing for
"wide-character string").
To summarize, here is a brief example of how a program which can be compiled
in both ANSI and Unicode modes could look like:
\begin{verbatim}
#ifdef __UNICODE__
wchar_t wch = L'*';
const wchar_t *ws = L"Hello, world!";
int len = wcslen(ws);
#else // ANSI
char ch = '*';
const char *s = "Hello, world!";
int len = strlen(s);
#endif // Unicode/ANSI
\end{verbatim}
Of course, it would be nearly impossibly to write such programs if it had to
be done this way (try to imagine the number of {\tt #ifdef UNICODE} an average
program would have had!). Luckily, there is another way - see the next
section.
\subsection{Unicode support in wxWindows}
In wxWindows, the code fragment froim above should be written instead:
\begin{verbatim}
wxChar ch = T('*');
wxString s = T("Hello, world!");
int len = s.Len();
\end{verbatim}
What happens here? First of all, you see that there are no more {\tt #ifdef}s
at all. Instead, we define some types and macros which behave differently in
the Unicode and ANSI builds and allows us to avoid using conditional
compilation in the program itself.
We have a {\tt wxChar} type which maps either on {\tt char} or {\tt wchar\_t}
depending on the mode in which program is being compiled. There is no need for
a separate type for strings though, because the standard
\helpref{wxString}{wxstring} supports Unicode, i.e. it stores iether ANSI or
Unicode strings depending on the mode.
Finally, there is a special {\tt T()} macro which should enclose all literal
strings in the program. As it's easy to see comparing the last fragment with
the one above, this macro expands to nothing in the (usual) ANSI mode and
prefixes {\tt 'L'} to its argument in the Unicode mode.
The important conclusion is that if you use {\tt wxChar} instead of
{\tt char}, avoid using C style strings and use {\tt wxString} instead and
don't forget to enclose all string literals inside {\tt T()} macro, your
program automatically becomes (almost) Unicode compliant!
Just let us state once again the rules:
\begin{itemize}
\item Always use {\tt wxChar} instead of {\tt char}
\item Always enclose literal string constants in {\tt T()} macro unless
they're already converted to the right representation (another standard
wxWindows macro {\tt \_()} does it, so there is no need for {\tt T()} in this
case) or you intend to pass the constant directly to an external function
which doesn't accept wide-character strings.
\item Use {\tt wxString} instead of C style strings.
\end{itemize}
\subsection{Unicode and the outside world}
We have seen that it was easy to write Unicode programs using wxWindows types
and macros, but it has been also mentioned that it isn't quite enough.
Although everything works fine inside the program, things can get nasty when
it tries to communicate with the outside world which, sadly, often expects
ANSI strings (a notable exception is the entire Win32 API which accepts either
Unicode or ANSI strings and which thus makes it unnecessary to ever perform
any convertions in the program).
To get a ANSI string from a wxString, you may use
\helpref{mb\_str()}{wxstringmbstr} function which always returns an ANSI
string (independently of the mode - while the usual
\helpref{c\_str()}{wxstringcstr} returns a pointer to the internal
representation which is either ASCII or Unicode). More rarely used, but still
useful, is \helpref{wc\_str()}{wxstringwcstr} function which always returns
the Unicode string.
% TODO describe fn_str(), wx_str(), wxCharBuf classes, ...
% Please remember to put a blank line at the end of each file! (Tex2RTF 'issue')

View File

@@ -22,7 +22,7 @@ For more information, please see \helpref{Validator overview}{validatoroverview}
\wxheading{See also}
\helpref{Validator overview}{validatoroverview}, \helpref{wxValidator}{wxvalidator},
\helpref{Validator overview}{validatoroverview}, \helpref{wxValidator}{wxvalidator},
\helpref{wxTextValidator}{wxtextvalidator}
\latexignore{\rtfignore{\wxheading{Members}}}
@@ -73,13 +73,13 @@ Clones the generic validator using the copy constructor.
\membersection{wxGenericValidator::TransferFromWindow}\label{wxgenericvalidatortransferfromwindow}
\func{virtual bool}{TransferToWindow}{\param{wxWindow*}{ parent}}
\func{virtual bool}{TransferToWindow}{}
Transfers the value to the window.
\membersection{wxGenericValidator::TransferToWindow}\label{wxgenericvalidatortransfertowindow}
\func{virtual bool}{TransferToWindow}{\param{wxWindow*}{ parent}}
\func{virtual bool}{TransferToWindow}{}
Transfers the window value to the appropriate data type.

View File

@@ -18,6 +18,10 @@ To specify a default, `null' validator, use the symbol {\bf wxDefaultValidator}.
For more information, please see \helpref{Validator overview}{validatoroverview}.
\pythonnote{If you wish to create a validator class in wxPython you should
derive the class from \tt{wxPyValidator} in order to get Python-aware
capabilities for the various virtual methods.}
\wxheading{Derived from}
\helpref{wxEvtHandler}{wxevthandler}\\
@@ -29,9 +33,9 @@ For more information, please see \helpref{Validator overview}{validatoroverview}
\wxheading{See also}
\helpref{Validator overview}{validatoroverview},
\helpref{Validator overview}{validatoroverview},
\helpref{wxTextValidator}{wxtextvalidator},
\helpref{wxTextValidator}{wxgenericvalidator},
\helpref{wxGenericValidator}{wxgenericvalidator},
\latexignore{\rtfignore{\wxheading{Members}}}
@@ -82,14 +86,14 @@ Associates a window with the validator.
\membersection{wxValidator::TransferFromWindow}\label{wxvalidatortransferfromwindow}
\func{virtual bool}{TransferToWindow}{\param{wxWindow*}{ parent}}
\func{virtual bool}{TransferToWindow}{}
This overridable function is called when the value in the window must be
transferred to the validator. Return FALSE if there is a problem.
\membersection{wxValidator::TransferToWindow}\label{wxvalidatortransfertowindow}
\func{virtual bool}{TransferToWindow}{\param{wxWindow*}{ parent}}
\func{virtual bool}{TransferToWindow}{}
This overridable function is called when the value associated with the validator must be
transferred to the window. Return FALSE if there is a problem.

View File

@@ -16,7 +16,7 @@ For more information, please see \helpref{Validator overview}{validatoroverview}
\wxheading{See also}
\helpref{Validator overview}{validatoroverview}, \helpref{wxValidator}{wxvalidator},
\helpref{Validator overview}{validatoroverview}, \helpref{wxValidator}{wxvalidator},
\helpref{wxGenericValidator}{wxgenericvalidator}
\latexignore{\rtfignore{\wxheading{Members}}}
@@ -111,13 +111,13 @@ Sets the validator style.
\membersection{wxTextValidator::TransferFromWindow}\label{wxtextvalidatortransferfromwindow}
\func{virtual bool}{TransferToWindow}{\param{wxWindow*}{ parent}}
\func{virtual bool}{TransferFromWindow}{}
Transfers the string value to the window.
\membersection{wxTextValidator::TransferToWindow}\label{wxtextvalidatortransfertowindow}
\func{virtual bool}{TransferToWindow}{\param{wxWindow*}{ parent}}
\func{virtual bool}{TransferToWindow}{}
Transfers the window value to the string.

View File

@@ -28,10 +28,10 @@ window class or on all platforms.
\twocolwidtha{5cm}%
\begin{twocollist}\itemsep=0pt
\twocolitem{\windowstyle{wxSIMPLE\_BORDER}}{Displays a thin border around the window. wxBORDER is the old name
for this style. Windows only. }
for this style. }
\twocolitem{\windowstyle{wxDOUBLE\_BORDER}}{Displays a double border. Windows only.}
\twocolitem{\windowstyle{wxSUNKEN\_BORDER}}{Displays a sunken border.}
\twocolitem{\windowstyle{wxRAISED\_BORDER}}{Displays a raised border.}
\twocolitem{\windowstyle{wxRAISED\_BORDER}}{Displays a raised border. GTK only. }
\twocolitem{\windowstyle{wxSTATIC\_BORDER}}{Displays a border suitable for a static control. Windows only. }
\twocolitem{\windowstyle{wxTRANSPARENT\_WINDOW}}{The window is transparent, that is, it will not receive paint
events. Windows only.}

View File

@@ -14,8 +14,8 @@ wxPython is a blending of the wxWindows GUI classes and the
\wxheading{Python}
So what is Python? Go to
\urlref{http://www.python.org}{http://www.python.org}
to learn more, but in a nutshell Python is an interpreted,
\urlref{http://www.python.org}{http://www.python.org} to learn more,
but in a nutshell Python is an interpreted,
interactive, object-oriented programming language. It is often
compared to Tcl, Perl, Scheme or Java.
@@ -33,23 +33,22 @@ commercial use.
wxPython is a Python package that can be imported at runtime that
includes a collection of Python modules and an extension module
(native code). It provides a series of Python classes that mirror (or
shadow) many of the wxWindows GUI classes. This extension module
(native code). It provides a series of Python classes that mirror (or
shadow) many of the wxWindows GUI classes. This extension module
attempts to mirror the class heiarchy of wxWindows as closely as
possble. This means that there is a wxFrame class in wxPython that
looks, smells, tastes and acts almost the same as the wxFrame class in
the C++ version.
wxPython is very versitile. It can be used to create standalone GUI
wxPython is very versitile. It can be used to create standalone GUI
applications, or in situations where Python is embedded in a C++
application as an internal scripting or macro language.
Currently wxPython is available for Win32 platforms and the GTK
toolkit (wxGTK) on most Unix/X-windows platforms. The effort to
enable wxPython for wxMotif will begin shortly. See \helpref{Building Python}{wxpbuild} for
toolkit (wxGTK) on most Unix/X-windows platforms. The effort to
enable wxPython for wxMotif will begin shortly. See \helpref{Building Python}{wxpbuild} for
details about getting wxPython working for you.
%----------------------------------------------------------------------
\section{Why use wxPython?}\label{wxpwhy}
@@ -60,11 +59,11 @@ then I ususally code it as an extension module and leave the majority
of the program in Python.
Another good thing to use wxPython for is quick prototyping of your
wxWindows apps. With C++ you have to continuously go though the
edit-compile-link-run cycle, which can be quite time comsuming. With
Python it is only an edit-run cycle. You can easily build an
wxWindows apps. With C++ you have to continuously go though the
edit-compile-link-run cycle, which can be quite time consuming. With
Python it is only an edit-run cycle. You can easily build an
application in a few hours with Python that would normally take a few
days or longer with C++. Converting a wxPython app to a C++/wxWindows app
days or longer with C++. Converting a wxPython app to a C++/wxWindows app
should be a straight forward task.
%----------------------------------------------------------------------
@@ -74,48 +73,47 @@ There are other GUI solutions out there for Python.
\wxheading{Tkinter}
Tkinter is the defacto standard GUI for Python. It is available
on nearly every platform that Python and Tcl/TK are. Why Tcl/Tk?
Tkinter is the defacto standard GUI for Python. It is available
on nearly every platform that Python and Tcl/TK are. Why Tcl/Tk?
Well because Tkinter is just a wrapper around Tcl's GUI toolkit, Tk.
This has its upsides and its downsides...
The upside is that Tk is a pretty veristile toolkit. It can be made
to do a lot of things in a lot of different environments. It is fairly
The upside is that Tk is a pretty versatile toolkit. It can be made
to do a lot of things in a lot of different environments. It is fairly
easy to create new widgets and use them interchangably in your
programs.
The downside is Tcl. When using Tkinter you actually have two
The downside is Tcl. When using Tkinter you actually have two
separate language interpreters running, the Python interpreter and the
Tcl interpreter for the GUI. Since the guts of Tcl is mostly about
string processing, it is fairly slow as well. (Not too bad on a fast
Tcl interpreter for the GUI. Since the guts of Tcl is mostly about
string processing, it is fairly slow as well. (Not too bad on a fast
Pentium II, but you really notice the difference on slower machines.)
It wasn't until the lastest version of Tcl/Tk that native Look and
Feel's were possible on non-Motif platforms. This is because Tk
usually implements it's own widgets (controls) even when there are
Feel was possible on non-Motif platforms. This is because Tk
usually implements its own widgets (controls) even when there are
native controls available.
Tkinter is a pretty low-level toolkit. You have to do a lot of work
Tkinter is a pretty low-level toolkit. You have to do a lot of work
(verbose program code) to do things that would be much simpler with a higher
level of abstraction.
\wxheading{PythonWin}
PythonWin is an add-on package for Python for the Win32 platform. It
includes wrappers for MFC as well as much of the win32 API. Because
PythonWin is an add-on package for Python for the Win32 platform. It
includes wrappers for MFC as well as much of the Win32 API. Because
of its foundation, it is very familiar for programmers who have
experience with MFC and the Win32 API. It is obviously not compatible
with other platforms and toolkits. PythonWin is organized as separate
experience with MFC and the Win32 API. It is obviously not compatible
with other platforms and toolkits. PythonWin is organized as separate
packages and modules so you can use the pieces you need without having
to use the GUI portions.
\wxheading{Others}
There are quite a few other GUI modules available for Python, some in
active use, some that havn't been updated for ages. Most are simple
active use, some that havn't been updated for ages. Most are simple
wrappers around some C or C++ toolkit or another, and most are not
cross-platform compatible. See \urlref{this
link}{http://www.python.org/download/Contributed.html\#Graphics}
cross-platform compatible. See \urlref{this link}{http://www.python.org/download/Contributed.html\#Graphics}
for a listing of a few of them.
%----------------------------------------------------------------------
@@ -123,27 +121,27 @@ for a listing of a few of them.
I used SWIG (\urlref{http://www.swig.org}{http://www.swig.org}) to
to create the source code for the
extension module. This enabled me to only have to deal with a small
extension module. This enabled me to only have to deal with a small
amount of code and only have to bother with the exceptional issues.
SWIG takes care of the rest and generates all the repetative code for
me. You don't need SWIG to build the extension module as all the
me. You don't need SWIG to build the extension module as all the
generated C++ code is included under the src directory.
I added a few minor features to SWIG to control some of the code
generation. If you want to play around with this you will need to get
a recent version of SWIG from their CVS or from a daily build. See
generation. If you want to play around with this you will need to get
a recent version of SWIG from their CVS or from a daily build. See
\urlref{http://www.swig.org/}{http://www.swig.org/} for details.
wxPython is organized as a Python package. This means that the
wxPython is organized as a Python package. This means that the
directory containing the results of the build process should be a
subdirectory of a directory on the \tt{PYTHONPATH}. (And preferably should
be named wxPython.) You can control where the build process will dump
wxPython by setting the \tt{TARGETDIR} variable for the build utility, (see
below.)
subdirectory of a directory on the \tt{PYTHONPATH}. (And preferably should
be named wxPython.) You can control where the build process will dump
wxPython by setting the \tt{TARGETDIR} variable for the build utility (see
below).
\begin{enumerate}\itemsep=0pt
\item Build wxWindows as described in its BuildCVS.txt file. For *nix
systems I run configure with these flags:
\item Build wxWindows as described in its BuildCVS.txt file. For Unix
systems I run configure with these flags:
\begin{verbatim}
--with-gtk
@@ -157,63 +155,57 @@ below.)
--disable-std_iostreams
\end{verbatim}
You can use whatever flags you want, but I know these work.
You can use whatever flags you want, but I know these work.
For Win32 systems I use Visual C++ 6.0, but 5.0 should work also. The
build utility currently does not support any other win32 compilers.
For Win32 systems I use Visual C++ 6.0, but 5.0 should work also. The
build utility currently does not support any other Win32 compilers.
\item At this point you may want to make an alias or symlink, script,
batch file, whatever on the PATH that invokes
\tt{\$(WXWIN)/utils/wxPython/distrib/build.py} to help simplify matters
somewhat. For example, on my win32 system I have a file named
\tt{build}.bat in a directory on the PATH that contains:
\tt{python \%WXWIN/utils/wxPython/distrib/build.py \%1 \%2 \%3 \%4 \%5 \%6}
batch file, whatever on the PATH that invokes \tt{\$(WXWIN)/utils/wxPython/distrib/build.py} to
help simplify matters somewhat. For example, on my Win32 system I have a file named
\tt{build}.bat in a directory on the PATH that contains:
\tt{python \%WXWIN/utils/wxPython/distrib/build.py \%1 \%2 \%3 \%4 \%5 \%6}
\item Change into the \tt{\$(WXWIN)/utils/wxPython/src} directory.
\item Type "\tt{build -b}" to build wxPython and "\tt{build -i}" to
install it, or \"\tt{build -bi}\" to do both steps at once.
install it, or "\tt{build -bi}" to do both steps at once.
The build.py script actually generates a Makefile based on what it
finds on your system and information found in the build.cfg file.
If you have troubles building or you want it built or installed in
a different way, take a look at the docstring in build.py. You are
able to to override many configuration options in a file named
build.local.
The build.py script actually generates a Makefile based on what it
finds on your system and information found in the build.cfg file.
If you have troubles building or you want it built or installed in
a different way, take a look at the docstring in build.py. You are
able to to override many configuration options in a file named
build.local.
\item To build and install the add-on modules, change to the appropriate
directory under \tt{\$(WXWIN)/utils/wxPython/modules} and run the build
utility again.
directory under \tt{\$(WXWIN)/utils/wxPython/modules} and run the build
utility again.
\item Change to the \tt{\$(WXWIN)/utils/wxPython/demo} directory.
\item Try executing the demo program. For example:
\item Try executing the demo program. For example:
\tt{python demo.py}
\tt{python demo.py}
To run it without requiring a console on win32, you can use the
To run it without requiring a console on Win32, you can use the
\tt{pythonw.exe} version of Python either from the command line or from a
shortcut.
\end{enumerate}
%----------------------------------------------------------------------
\section{Using wxPython}\label{wxpusing}
\wxheading{First things first...}
I'm not going to try and teach the Python language here. You can do
I'm not going to try and teach the Python language here. You can do
that at the \urlref{Python Tutorial}{http://www.python.org/doc/tut/tut.html}.
I'm also going to assume that you know a bit about wxWindows already,
enough to notice the similarities in the classes used.
Take a look at the following wxPython program. You can find a similar
program in the \tt{wxPython/demo} directory, named \tt{DialogUnits.py}. If your
Take a look at the following wxPython program. You can find a similar
program in the \tt{wxPython/demo} directory, named \tt{DialogUnits.py}. If your
Python and wxPython are properly installed, you should be able to run
it by issuing this command:
@@ -305,48 +297,54 @@ it by issuing this command:
\begin{enumerate}\itemsep=0pt
\item At line 2 the wxPython classes, constants, and etc. are imported
into the current module's namespace. If you prefer to reduce
into the current module's namespace. If you prefer to reduce
namespace pollution you can use "\tt{from wxPython import wx}" and
then access all the wxPython identifiers through the wx module, for
example, "\tt{wx.wxFrame}".
\item At line 13 the frame's sizing and moving events are connected to
methods of the class. These helper functions are intended to be like
the event table macros that wxWindows employs. But since static event
methods of the class. These helper functions are intended to be like
the event table macros that wxWindows employs. But since static event
tables are impossible with wxPython, we use helpers that are named the
same to dynamically build the table. The only real difference is
same to dynamically build the table. The only real difference is
that the first arguemnt to the event helpers is always the window that
the event table entry should be added to.
\item Notice the use of \tt{wxDLG\_PNT} and \tt{wxDLG\_SZE} in lines 19
- 29 to convert from dialog units to pixels. These helpers are unique
- 29 to convert from dialog units to pixels. These helpers are unique
to wxPython since Python can't do method overloading like C++.
\item There is an \tt{OnCloseWindow} method at line 34 but no call to
EVT\_CLOSE to attach the event to the method. Does it really get
called? The answer is, yes it does. This is because many of the
EVT\_CLOSE to attach the event to the method. Does it really get
called? The answer is, yes it does. This is because many of the
\em{standard} events are attached to windows that have the associated
\em{standard} method names. I have tried to follow the lead of the
\em{standard} method names. I have tried to follow the lead of the
C++ classes in this area to determine what is \em{standard} but since
that changes from time to time I can make no guarentees, nor will it
be fully documented. When in doubt, use an EVT\_*** function.
be fully documented. When in doubt, use an EVT\_*** function.
\item At lines 17 to 21 notice that there are no saved references to
the panel or the static text items that are created. Those of you
the panel or the static text items that are created. Those of you
who know Python might be wondering what happens when Python deletes
these objects when they go out of scope. Do they disappear from the GUI? They
don't. Remember that in wxPython the Python objects are just shadows of the
coresponding C++ objects. Once the C++ windows and controls are
these objects when they go out of scope. Do they disappear from the GUI? They
don't. Remember that in wxPython the Python objects are just shadows of the
coresponding C++ objects. Once the C++ windows and controls are
attached to their parents, the parents manage them and delete them
when necessary. For this reason, most wxPython objects do not need to
when necessary. For this reason, most wxPython objects do not need to
have a \_\_del\_\_ method that explicitly causes the C++ object to be
deleted. If you ever have the need to forcibly delete a window, use
deleted. If you ever have the need to forcibly delete a window, use
the Destroy() method as shown on line 36.
\item Just like wxWindows in C++, wxPython apps need to create a class
derived from \tt{wxApp} (line 56) that implements a method named
\tt{OnInit}, (line 59.) This method should create the application's
main window (line 62) and use \tt{wxApp.SetTopWindow()} (line 66) to
inform wxWindows about it.
\item And finally, at line 72 an instance of the application class is
created. At this point wxPython finishes initializing itself, and calls
the \tt{OnInit} method to get things started. (The zero parameter here is
a flag for functionality that isn't quite implemented yet. Just
created. At this point wxPython finishes initializing itself, and calls
the \tt{OnInit} method to get things started. (The zero parameter here is
a flag for functionality that isn't quite implemented yet. Just
ignore it for now.) The call to \tt{MainLoop} at line 73 starts the event
loop which continues until the application terminates or all the top
level windows are closed.
@@ -355,9 +353,9 @@ level windows are closed.
%----------------------------------------------------------------------
\section{wxWindows classes implemented in wxPython}\label{wxpclasses}
The following classes are supported in wxPython. Most provide nearly
The following classes are supported in wxPython. Most provide nearly
full implementations of the public interfaces specified in the C++
documentation, others are less so. They will all be brought as close
documentation, others are less so. They will all be brought as close
as possible to the C++ spec over time.
\begin{itemize}\itemsep=0pt
@@ -367,9 +365,11 @@ as possible to the C++ spec over time.
\item \helpref{wxBitmapButton}{wxbitmapbutton}
\item \helpref{wxBitmap}{wxbitmap}
\item wxBMPHandler
\item \helpref{wxBoxSizer}{wxboxsizer}
\item \helpref{wxBrush}{wxbrush}
\item \helpref{wxButton}{wxbutton}
\item \helpref{wxCalculateLayoutEvent}{wxcalculatelayoutevent}
\item wxCaret
\item \helpref{wxCheckBox}{wxcheckbox}
\item \helpref{wxCheckListBox}{wxchecklistbox}
\item \helpref{wxChoice}{wxchoice}
@@ -402,6 +402,14 @@ as possible to the C++ spec over time.
\item wxGridCell
\item wxGridEvent
\item \helpref{wxGrid}{wxgrid}
\item \helpref{wxHtmlCell}{wxhtmlcell}
\item \helpref{wxHtmlContainerCell}{wxhtmlcontainercell}
\item \helpref{wxHtmlParser}{wxhtmlparser}
\item \helpref{wxHtmlTagHandler}{wxhtmltaghandler}
\item \helpref{wxHtmlTag}{wxhtmltag}
\item \helpref{wxHtmlWinParser}{wxhtmlwinparser}
\item \helpref{wxHtmlWinTagHandler}{wxhtmlwintaghandler}
\item \helpref{wxHtmlWindow}{wxhtmlwindow}
\item wxIconizeEvent
\item \helpref{wxIcon}{wxicon}
\item \helpref{wxIdleEvent}{wxidleevent}
@@ -468,16 +476,20 @@ as possible to the C++ spec over time.
\item \helpref{wxScrollBar}{wxscrollbar}
\item \helpref{wxScrollEvent}{wxscrollevent}
\item \helpref{wxScrolledWindow}{wxscrolledwindow}
\item \helpref{wxScrollWinEvent}{wxscrollwinevent}
\item wxShowEvent
\item \helpref{wxSingleChoiceDialog}{wxsinglechoicedialog}
\item \helpref{wxSizeEvent}{wxsizeevent}
\item \helpref{wxSize}{wxsize}
\item \helpref{wxSizer}{wxsizer}
\item wxSizerItem
\item \helpref{wxSlider}{wxslider}
\item \helpref{wxSpinButton}{wxspinbutton}
\item wxSpinEvent
\item \helpref{wxSplitterWindow}{wxsplitterwindow}
\item \helpref{wxStaticBitmap}{wxstaticbitmap}
\item \helpref{wxStaticBox}{wxstaticbox}
\item \helpref{wxStaticBoxSizer}{wxstaticboxsizer}
\item wxStaticLine
\item \helpref{wxStaticText}{wxstatictext}
\item \helpref{wxStatusBar}{wxstatusbar}
@@ -494,10 +506,12 @@ as possible to the C++ spec over time.
\item \helpref{wxTreeItemData}{wxtreeitemdata}
\item wxTreeItemId
\item \helpref{wxUpdateUIEvent}{wxupdateuievent}
\item \helpref{wxValidator}{wxvalidator}
\item \helpref{wxWindowDC}{wxwindowdc}
\item \helpref{wxWindow}{wxwindow}
\end{itemize}
%----------------------------------------------------------------------
@@ -507,7 +521,7 @@ Since wxPython is a blending of multiple technologies, help comes from
multiple sources. See
\urlref{http://alldunn.com/wxPython}{http://alldunn.com/wxPython} for details on
various sources of help, but probably the best source is the
wxPython-users mail list. You can view the archive or subscribe by
wxPython-users mail list. You can view the archive or subscribe by
going to
\urlref{http://starship.python.net/mailman/listinfo/wxpython-users}{http://starship.python.net/mailman/listinfo/wxpython-users}

View File

@@ -92,7 +92,12 @@ Using project files:
src/Release/wxvc.lib. The project file src/wxvc_dll.dsp
will make a DLL version of wxWindow, which will go in
src/DebugDLL/wxvc.[lib,dll] and src/ReleaseDLL/wxvc.[lib,dll].
3. Open a sample project file, choose a configuration, and compile.
3. If you want to use JPEG in your application (such as the image
sample), open src/jpeg/jpeg.dsp (VC++ 6 only) and compile in
Debug and Release configurations. If you have VC++ 5 or
earlier, use makefile.vc, but you may only have one set of object
files at a time in use (debug or release).
4. Open a sample project file, choose a configuration, and compile.
The project files don't use precompiled headers, to save
space, but you can switch PCH compiling on for greater speed.
@@ -110,8 +115,10 @@ Using makefiles:
to make the wxWindows core library without debug information
(wx\lib\wx.lib).
3. Change directory to wx\samples and type 'nmake -f makefile.vc'
3. If you wish to use JPEG in your applications, do the same
procedure in src\jpeg but add the 'all' target to the
command line.
4. Change directory to wx\samples and type 'nmake -f makefile.vc'
to make all the samples. You can also make them individually.
Notes:

View File

@@ -37,7 +37,9 @@
#include "wx/event.h" // for the base class
#include "wx/window.h" // for wxTopLevelWindows
#if wxUSE_GUI
#include "wx/window.h" // for wxTopLevelWindows
#endif // wxUSE_GUI
#if wxUSE_LOG
#include "wx/log.h"
@@ -64,22 +66,33 @@ public:
// prevents the program from continuing - it's a good place to create
// the top level program window and return TRUE.
//
// Override: always.
// Override: always in GUI application, rarely in console ones.
#if wxUSE_GUI
virtual bool OnInit() { return FALSE; };
#else // !GUI
virtual bool OnInit() { return TRUE; };
#endif // wxUSE_GUI
#if wxUSE_GUI
// a platform-dependent version of OnInit(): the code here is likely to
// depend on the toolkit. default version does nothing.
//
// Override: rarely.
virtual bool OnInitGui() { return TRUE; }
#endif // wxUSE_GUI
// called to start program execution - the default version just enters
// the main GUI loop in which events are received and processed until
// the last window is not deleted (if GetExitOnFrameDelete) or
// ExitMainLoop() is called.
// ExitMainLoop() is called. In console mode programs, the execution
// of the program really starts here
//
// Override: rarely.
// Override: rarely in GUI applications, always in console ones.
#if wxUSE_GUI
virtual int OnRun() { return MainLoop(); };
#else // !GUI
virtual int OnRun() = 0;
#endif // wxUSE_GUI
// called after the main loop termination. This is a good place for
// cleaning up (it may be too late in dtor) and is also useful if you
@@ -102,6 +115,7 @@ public:
// the worker functions - usually not used directly by the user code
// -----------------------------------------------------------------
#if wxUSE_GUI
// execute the main GUI loop, the function returns when the loop ends
virtual int MainLoop() = 0;
@@ -118,6 +132,7 @@ public:
// process the first event in the event queue (blocks until an event
// apperas if there are none currently)
virtual void Dispatch() = 0;
#endif // wxUSE_GUI
// application info: name, description, vendor
// -------------------------------------------
@@ -144,6 +159,7 @@ public:
const wxString& GetVendorName() const { return m_vendorName; }
void SetVendorName(const wxString& name) { m_vendorName = name; }
#if wxUSE_GUI
// top level window functions
// --------------------------
@@ -171,6 +187,8 @@ public:
void SetExitOnFrameDelete(bool flag) { m_exitOnFrameDelete = flag; }
bool GetExitOnFrameDelete() const { return m_exitOnFrameDelete; }
#endif // wxUSE_GUI
// miscellaneous customization functions
// -------------------------------------
@@ -179,10 +197,15 @@ public:
// user-defined class (default implementation creates a wxLogGui
// object) - this log object is used by default by all wxLogXXX()
// functions.
virtual wxLog *CreateLogTarget() { return new wxLogGui; }
virtual wxLog *CreateLogTarget()
#if wxUSE_GUI
{ return new wxLogGui; }
#else // !GUI
{ return new wxLogStderr; }
#endif // wxUSE_GUI
#endif // wxUSE_LOG
#if wxUSE_GUI
// get the standard icon used by wxWin dialogs - this allows the user
// to customize the standard dialogs. The 'which' parameter is one of
// wxICON_XXX values
@@ -198,6 +221,7 @@ public:
// printing.
virtual void SetPrintMode(int WXUNUSED(mode)) { }
int GetPrintMode() const { return wxPRINT_POSTSCRIPT; }
#endif // wxUSE_GUI
// implementation only from now on
// -------------------------------
@@ -228,29 +252,35 @@ protected:
// TRUE if the application wants to get debug output
bool m_wantDebugOutput;
#if wxUSE_GUI
// the main top level window - may be NULL
wxWindow *m_topWindow;
#endif // wxUSE_GUI
};
// ----------------------------------------------------------------------------
// now include the declaration of the real class
// ----------------------------------------------------------------------------
#if defined(__WXMSW__)
#include "wx/msw/app.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/app.h"
#elif defined(__WXQT__)
#include "wx/qt/app.h"
#elif defined(__WXGTK__)
#include "wx/gtk/app.h"
#elif defined(__WXMAC__)
#include "wx/mac/app.h"
#elif defined(__WXPM__)
#include "wx/os2/app.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/app.h"
#endif
#if wxUSE_GUI
#if defined(__WXMSW__)
#include "wx/msw/app.h"
#elif defined(__WXMOTIF__)
#include "wx/motif/app.h"
#elif defined(__WXQT__)
#include "wx/qt/app.h"
#elif defined(__WXGTK__)
#include "wx/gtk/app.h"
#elif defined(__WXMAC__)
#include "wx/mac/app.h"
#elif defined(__WXPM__)
#include "wx/os2/app.h"
#elif defined(__WXSTUBS__)
#include "wx/stubs/app.h"
#endif
#else // !GUI
typedef wxAppBase wxApp;
#endif // GUI/!GUI
// ----------------------------------------------------------------------------
// the global data
@@ -266,11 +296,34 @@ WXDLLEXPORT_DATA(extern wxApp*) wxTheApp;
// global functions
// ----------------------------------------------------------------------------
// event loop related functions only work in GUI programs
// ------------------------------------------------------
#if wxUSE_GUI
// Force an exit from main loop
void WXDLLEXPORT wxExit();
extern void WXDLLEXPORT wxExit();
// Yield to other apps/messages
bool WXDLLEXPORT wxYield();
extern bool WXDLLEXPORT wxYield();
#endif // wxUSE_GUI
// console applications may avoid using DECLARE_APP and IMPLEMENT_APP macros
// and call these functions instead at the program startup and termination
// -------------------------------------------------------------------------
#if wxUSE_NOGUI
// initialize the library (may be called as many times as needed, but each
// call to wxInitialize() must be matched by wxUninitialize())
extern bool WXDLLEXPORT wxInitialize();
// clean up - the library can't be used any more after the last call to
// wxUninitialize()
extern void WXDLLEXPORT wxUninitialize();
#endif // wxUSE_NOGUI
// ----------------------------------------------------------------------------
// macros for dynamic creation of the application object

View File

@@ -2,7 +2,7 @@
// Name: listimpl.cpp
// Purpose: helper file for implementation of dynamic lists
// Author: Vadim Zeitlin
// Modified by:
// Modified by:
// Created: 16.10.97
// RCS-ID: $Id$
// Copyright: (c) 1997 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
@@ -20,6 +20,9 @@
* 4) WX_DEFINE_OBJARRAY *
*****************************************************************************/
// needed to resolve the conflict between global T and macro parameter T
#define _WX_ERROR_REMOVE2(x) wxT("bad index in " #x "::Remove()")
// macro implements remaining (not inline) methods of template list
// (it's private to this file)
#undef _DEFINE_OBJARRAY
@@ -58,7 +61,7 @@ void name::Empty() \
\
void name::Remove(size_t uiIndex) \
{ \
wxCHECK_RET( uiIndex < Count(), _T("bad index in " #name "::Remove()") ); \
wxCHECK_RET( uiIndex < Count(), _WX_ERROR_REMOVE2(name) ); \
\
delete (T*)wxBaseArray::Item(uiIndex); \
\
@@ -99,8 +102,8 @@ int name::Index(const T& Item, bool bFromEnd) const \
} \
} \
\
return wxNOT_FOUND; \
}
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

View File

@@ -15,6 +15,7 @@
#define _WX_BUFFER_H
#include "wx/wxchar.h"
#include <string.h> // strdup
// ----------------------------------------------------------------------------
@@ -27,14 +28,14 @@ class wxCharBuffer
public:
wxCharBuffer(const char *str)
{
wxASSERT_MSG( str, _T("NULL string in wxCharBuffer") );
wxASSERT_MSG( str, wxT("NULL string in wxCharBuffer") );
m_str = str ? strdup(str) : (char *)NULL;
}
wxCharBuffer(size_t len)
{
m_str = (char *)malloc(len+1);
m_str[len] = '\0';
m_str[len] = '\0';
}
// no need to check for NULL, free() does it
~wxCharBuffer() { free(m_str); }
@@ -66,7 +67,7 @@ class wxWCharBuffer
public:
wxWCharBuffer(const wchar_t *wcs)
{
wxASSERT_MSG( wcs, _T("NULL string in wxWCharBuffer") );
wxASSERT_MSG( wcs, wxT("NULL string in wxWCharBuffer") );
if (wcs) {
size_t siz = (wcslen(wcs)+1)*sizeof(wchar_t);
@@ -78,7 +79,7 @@ public:
wxWCharBuffer(size_t len)
{
m_wcs = (wchar_t *)malloc((len+1)*sizeof(wchar_t));
m_wcs[len] = L'\0';
m_wcs[len] = L'\0';
}
// no need to check for NULL, free() does it
@@ -100,23 +101,23 @@ public:
operator const wchar_t *() const { return m_wcs; }
wchar_t operator[](size_t n) const { return m_wcs[n]; }
private:
wchar_t *m_wcs;
};
#endif
#if wxUSE_UNICODE
#define wxMB2WXbuf wxWCharBuffer
#define wxWX2MBbuf wxCharBuffer
#define wxWC2WXbuf wxChar*
#define wxWX2WCbuf wxChar*
#else
#define wxMB2WXbuf wxChar*
#define wxWX2MBbuf wxChar*
#define wxWC2WXbuf wxCharBuffer
#define wxWX2WCbuf wxWCharBuffer
#endif
#define wxMB2WXbuf wxWCharBuffer
#define wxWX2MBbuf wxCharBuffer
#define wxWC2WXbuf wxChar*
#define wxWX2WCbuf wxChar*
#else // ANSI
#define wxMB2WXbuf wxChar*
#define wxWX2MBbuf wxChar*
#define wxWC2WXbuf wxCharBuffer
#define wxWX2WCbuf wxWCharBuffer
#endif // Unicode/ANSI
// ----------------------------------------------------------------------------
// template class for any kind of data

View File

@@ -182,8 +182,6 @@ private:
#if defined(__WXMSW__)
#include "wx/msw/caret.h"
#elif defined(__WXPM__)
#include "wx/os2/caret.h"
#else
#include "wx/generic/caret.h"
#endif // platform

View File

@@ -43,10 +43,10 @@ public:
void Append(const wxString& item) { DoAppend(item); }
// with client data which belongs to the caller
void Append(const wxString &item, void* clientData)
{ DoAppend(item); SetClientData(GetCount() - 1, clientData); }
{ int n = DoAppend(item); SetClientData(n, clientData); }
// with client data which will be deleted by the control
void Append(const wxString &item, wxClientData* clientData)
{ DoAppend(item); SetClientObject(GetCount() - 1, clientData); }
{ int n = DoAppend(item); SetClientObject(n, clientData); }
// delete items from the list
// one item
@@ -95,7 +95,7 @@ public:
private:
// pure virtuals to implement in the derived classes
virtual void DoAppend(const wxString& item) = 0;
virtual int DoAppend(const wxString& item) = 0;
virtual void DoSetClientData( int n, void* clientData ) = 0;
virtual void* DoGetClientData( int n ) const = 0;

View File

@@ -5,13 +5,20 @@
// source such as opening and closing the data source.
// Author: Doug Card
// Modified by:
// Mods: Dec, 1998: Added support for SQL statement logging and database
// cataloging
// 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,
// 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
@@ -30,54 +37,85 @@
#ifndef DB_DOT_H
#define DB_DOT_H
#ifdef __GNUG__
#pragma interface "db.h"
// Use this line for wxWindows v1.x
//#include "wx_ver.h"
// Use this line for wxWindows v2.x
#include "wx/version.h"
#if wxMAJOR_VERSION == 2
#ifdef __GNUG__
#pragma interface "db.h"
#endif
#endif
#if defined(__WXMSW__) || defined(WIN32)
#if defined(wx_msw) || defined(__WXMSW__) || defined(WIN32)
#include <windows.h>
#endif
#ifdef _IODBC_
#if wxMAJOR_VERSION == 2
extern "C" {
#include "../../src/iodbc/isql.h"
#include "../../src/iodbc/isqlext.h"
}
#else // version == 1
extern "C" {
#include "iodbc.h"
#include "isqlext.h"
}
#endif
typedef float SFLOAT;
typedef double SDOUBLE;
typedef unsigned int UINT;
#define ULONG UDWORD
#else // msw
#define ODBCVER 0x0250
#include <sql.h>
#include <sqlext.h>
#endif
#ifdef __WXGTK__
extern "C" {
#include "../../src/iodbc/isql.h"
#include "../../src/iodbc/isqlext.h"
typedef float SFLOAT;
typedef double SDOUBLE;
typedef unsigned int UINT;
#define ULONG UDWORD
}
#else
#define ODBCVER 0x0250
#include <sql.h>
#include <sqlext.h>
#ifdef __UNIX__
# ifndef strnicmp
# define strnicmp strncasecmp
# endif
# ifndef stricmp
# define stricmp strcasecmp
# endif
#else
# include <io.h>
#endif
enum enumDummy {enumDum1};
#define SQL_C_BOOLEAN (sizeof(int) == 2 ? SQL_C_USHORT : SQL_C_ULONG)
#define SQL_C_ENUM (sizeof(enumDummy) == 2 ? SQL_C_USHORT : SQL_C_ULONG) //glt 2-21-97
#define SQL_C_BOOLEAN(datatype) (sizeof(datatype) == 1 ? SQL_C_UTINYINT : (sizeof(datatype) == 2 ? SQL_C_USHORT : SQL_C_ULONG))
// #define SQL_C_BOOLEAN (sizeof(Bool) == 2 ? SQL_C_USHORT : SQL_C_ULONG)
#define SQL_C_ENUM (sizeof(enumDummy) == 2 ? SQL_C_USHORT : SQL_C_ULONG)
#ifndef TRUE
#define TRUE 1
#endif
#ifndef FALSE
#define FALSE 0
#endif
const int DB_PATH_MAX = 254;
// Database Globals
const int DB_TYPE_NAME_LEN = 40;
const int DB_MAX_STATEMENT_LEN = 2048;
const int DB_MAX_WHERE_CLAUSE_LEN = 1024;
const int DB_MAX_ERROR_MSG_LEN = 512;
const int DB_MAX_ERROR_HISTORY = 5;
const int DB_MAX_STATEMENT_LEN = 2048;
const int DB_MAX_WHERE_CLAUSE_LEN = 1024;
const int DB_MAX_ERROR_MSG_LEN = 512;
const int DB_MAX_ERROR_HISTORY = 5;
const int DB_MAX_TABLE_NAME_LEN = 128;
const int DB_MAX_COLUMN_NAME_LEN = 128;
const int DB_DATA_TYPE_VARCHAR = 1;
const int DB_DATA_TYPE_INTEGER = 2;
const int DB_DATA_TYPE_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_DATE = 4;
const int DB_SELECT_KEYFIELDS = 1;
const int DB_SELECT_WHERE = 2;
@@ -92,14 +130,7 @@ 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_CURSOR0 = 0;
const int DB_CURSOR1 = 1;
const int DB_CURSOR2 = 2;
//const int DB_CURSOR3 = 3;
//const int DB_CURSOR4 = 4;
//const int DB_CURSOR5 = 5;
const int DB_WHERE_MATCHING = 2;
const int DB_GRANT_SELECT = 1;
const int DB_GRANT_INSERT = 2;
@@ -110,8 +141,8 @@ const int DB_GRANT_ALL = DB_GRANT_SELECT | DB_GRANT_INSERT | DB_GRANT_UPDA
// ODBC Error codes (derived from ODBC SqlState codes)
enum ODBC_ERRORS
{
DB_FAILURE = 0,
DB_SUCCESS = 1,
DB_FAILURE = 0,
DB_SUCCESS = 1,
DB_ERR_NOT_IN_USE,
DB_ERR_GENERAL_WARNING, // SqlState = '01000'
DB_ERR_DISCONNECT_ERROR, // SqlState = '01002'
@@ -207,9 +238,15 @@ enum ODBC_ERRORS
struct DbStuff
{
HENV Henv;
char Dsn[SQL_MAX_DSN_LENGTH+1]; // Data Source Name
char Uid[20]; // User ID
char AuthStr[20]; // Authorization string (password)
char Dsn[SQL_MAX_DSN_LENGTH+1]; // Data Source Name
char Uid[20+1]; // User ID
char AuthStr[20+1]; // Authorization string (password)
char description[SQL_MAX_DSN_LENGTH+1]; // Not sure what the max length is
char fileType[SQL_MAX_DSN_LENGTH+1]; // Not sure what the max length is
// Optionals needed for some databases like dBase
char defaultDir[DB_PATH_MAX]; // Directory that db file resides in
};
typedef struct
@@ -236,6 +273,30 @@ enum sqlLog
sqlLogON
};
enum dbms
{
dbmsUNIDENTIFIED,
dbmsORACLE,
dbmsSYBASE_ASA, // Adaptive Server Anywhere
dbmsSYBASE_ASE, // Adaptive Server Enterprise
dbmsMS_SQL_SERVER,
dbmsMY_SQL,
dbmsPOSTGRES,
dbmsACCESS,
dbmsDBASE
};
typedef enum dbms DBMS;
// The wxDB::errorList is copied to this variable when the wxDB object
// is closed. This way, the error list is still available after the
// database object is closed. This is necessary if the database
// connection fails so the calling application can show the operator
// why the connection failed. Note: as each wxDB object is closed, it
// will overwrite the errors of the previously destroyed wxDB object in
// this variable.
extern char DBerrorList[DB_MAX_ERROR_HISTORY][DB_MAX_ERROR_MSG_LEN];
class WXDLLEXPORT wxDB
{
private:
@@ -261,7 +322,7 @@ public:
struct
{
char dbmsName[40]; // Name of the dbms product
char dbmsVer[40]; // Version # of the dbms product
char dbmsVer[64]; // Version # of the dbms product
char driverName[40]; // Driver name
char odbcVer[60]; // ODBC version of the driver
char drvMgrOdbcVer[60]; // ODBC version of the driver manager
@@ -308,6 +369,9 @@ public:
//Error reporting mode
bool silent;
// Number of Ctable objects connected to this db object
unsigned int nTables;
// Inf. about logical data types VARCHAR, INTEGER, FLOAT and DATE.
// This inf. is obtained from the ODBC driver by use of the
// SQLGetTypeInfo() function. The key piece of inf. is the
@@ -324,24 +388,28 @@ public:
bool DispAllErrors(HENV aHenv, HDBC aHdbc = SQL_NULL_HDBC, HSTMT aHstmt = SQL_NULL_HSTMT);
bool GetNextError(HENV aHenv, HDBC aHdbc = SQL_NULL_HDBC, HSTMT aHstmt = SQL_NULL_HSTMT);
void DispNextError(void);
bool CreateView(char *viewName, char *colList, char *pSqlStmt);
bool CreateView(char *viewName, char *colList, char *pSqlStmt, bool attemptDrop=TRUE);
bool DropView(char *viewName);
bool ExecSql(char *pSqlStmt);
bool GetNext(void);
bool GetData(UWORD colNo, SWORD cType, PTR pData, SDWORD maxLen, SDWORD FAR *cbReturned);
bool Grant(int privileges, char *tableName, char *userList = "PUBLIC");
int TranslateSqlState(char *SQLState);
bool Catalog(char *userID, char *fileName = "Catalog.txt");
CcolInf *GetColumns(char *tableName[]);
CcolInf *GetColumns(char *tableName[], char *userID=NULL);
char *GetDatabaseName(void) {return dbInf.dbmsName;}
char *GetDataSource(void) {return dsn;}
char *GetUsername(void) {return uid;}
char *GetPassword(void) {return authStr;}
char *GetUsername(void) {return uid;}
char *GetPassword(void) {return authStr;}
bool IsOpen(void) {return dbIsOpen;}
HENV GetHENV(void) {return henv;}
HDBC GetHDBC(void) {return hdbc;}
HSTMT GetHSTMT(void) {return hstmt;}
bool TableExists(char *tableName); // Table name can refer to a table, view, alias or synonym
HSTMT GetHSTMT(void) {return hstmt;}
bool TableExists(char *tableName, char *userID=NULL, char *path=NULL); // Table name can refer to a table, view, alias or synonym
void LogError(char *errMsg, char *SQLState = 0) {logError(errMsg, SQLState);}
bool SqlLog(enum sqlLog state, char *filename = "sqllog.txt", bool append = FALSE);
bool WriteSqlLog(char *logMsg);
DBMS Dbms(void);
}; // wxDB
@@ -359,6 +427,18 @@ struct DbList
DbList *PtrNext; // Pointer to next item in the list
};
#if __WXDEBUG__ > 0
#include "wx/object.h"
class CstructTablesInUse : public wxObject
{
public:
const char *tableName;
ULONG tableID;
class wxDB *pDb;
}; // CstructTablesInUse
#endif
// The following routines allow a user to get new database connections, free them
// for other code segments to use, or close all of them when the application has
// completed.
@@ -368,6 +448,9 @@ bool WXDLLEXPORT FreeDbConnection(wxDB *pDb);
void WXDLLEXPORT CloseDbConnections(void);
int WXDLLEXPORT NumberDbConnectionsInUse(void);
// This function sets the sql log state for all open wxDB objects
bool SqlLog(enum sqlLog state, char *filename = "sqllog.txt");
// This routine allows you to query a driver manager
// for a list of available datasources. Call this routine
// the first time using SQL_FETCH_FIRST. Continue to call it

View File

@@ -1,5 +1,5 @@
///////////////////////////////////////////////////////////////////////////////
// Name: table.h
// Name: dbtable.h
// Purpose: Declaration of the wxTable class.
// Author: Doug Card
// Modified by:
@@ -23,16 +23,30 @@
// SYNOPSIS STOP
*/
#ifndef TABLE_DOT_H
#define TABLE_DOT_H
#ifndef DBTABLE_DOT_H
#define DBTABLE_DOT_H
#ifdef __GNUG__
#pragma interface "dbtable.h"
// Use this line for wxWindows v1.x
//#include "wx_ver.h"
// Use this line for wxWindows v2.x
#include "wx/version.h"
#if wxMAJOR_VERSION == 2
#ifdef __GNUG__
#pragma interface "dbtable.h"
#endif
#endif
#include "wx/db.h"
#if wxMAJOR_VERSION == 2
#include "wx/db.h"
#else
#include "db.h"
#endif
const int ROWID_LEN = 24; // 18 is the max, 24 is in case it gets larger
const int ROWID_LEN = 24; // 18 is the max, 24 is in case it gets larger
const int DEFAULT_CURSOR = 0;
const bool QUERY_ONLY = TRUE;
const bool DISABLE_VIEW = TRUE;
// The following class is used to define a column of a table.
// The wxTable constructor will dynamically allocate as many of
@@ -46,7 +60,7 @@ const int ROWID_LEN = 24; // 18 is the max, 24 is in case it gets larger
class WXDLLEXPORT CcolDef
{
public:
char ColName[DB_MAX_COLUMN_NAME_LEN+1]; // Column Name glt 4/19/97 added one for the null terminator
char ColName[DB_MAX_COLUMN_NAME_LEN+1]; // Column Name
int DbDataType; // Logical Data Type; e.g. DB_DATA_TYPE_INTEGER
int SqlCtype; // C data type; e.g. SQL_C_LONG
void *PtrDataObj; // Address of the data object
@@ -56,13 +70,14 @@ public:
bool InsertAllowed; // Specifies whether this column should be included in an INSERT statement
bool DerivedCol; // Specifies whether this column is a derived value
SDWORD CbValue; // Internal use only!!!
bool Null; // NOT FULLY IMPLEMENTED - Allows NULL values in Inserts and Updates
}; // CcolDef
// This structure is used when creating secondary indexes.
class WXDLLEXPORT CidxDef
{
public:
char ColName[DB_MAX_COLUMN_NAME_LEN+1]; // Column Name glt 4/19/97 added one for the null terminator
char ColName[DB_MAX_COLUMN_NAME_LEN+1];
bool Ascending;
}; // CidxDef
@@ -70,8 +85,10 @@ class WXDLLEXPORT wxTable
{
private:
ULONG tableID; // Used for debugging. This can help to match up mismatched constructors/destructors
// Private member variables
int currCursorNo;
UDWORD cursorType;
// Private member functions
bool bindInsertParams(void);
@@ -91,17 +108,20 @@ public:
HENV henv; // ODBC Environment handle
HDBC hdbc; // ODBC DB Connection handle
HSTMT hstmt; // ODBC Statement handle
// HSTMT c0, c1, c2, c3, c4, c5; // Cursors 0 through 5
HSTMT c0, c1, c2; // Limited to Cursors 0 through 2 for now
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 hstmtCount; // ODBC Statement handle used specifically for COUNT(*)
HSTMT hstmtInternal; // ODBC Statement handle used internally only
HSTMT *hstmtCount; // ODBC Statement handle used by Count() function (No binding of columns)
// Table Inf.
char tableName[DB_MAX_TABLE_NAME_LEN+1]; // Table name
char queryTableName[DB_MAX_TABLE_NAME_LEN+1]; // Query Table Name
int noCols; // # of columns in the table
bool queryOnly; // Query Only, no inserts, updates or deletes
char tablePath[DB_PATH_MAX]; // needed for dBase tables
// Column Definitions
CcolDef *colDefs; // Array of CcolDef structures
@@ -109,17 +129,20 @@ public:
// 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 Ctable::Query(). Format: ",tbl,tbl..."
char *from; // Allows for joins in a wxTable::Query(). Format: ",tbl,tbl..."
// Flags
bool selectForUpdate;
// Public member functions
wxTable(wxDB *pwxDB, const char *tblName, const int nCols, const char *qryTblName = 0);
wxTable(wxDB *pwxDB, const char *tblName, const int nCols,
const char *qryTblName = 0, bool qryOnly = !QUERY_ONLY, char *tblPath=NULL);
virtual ~wxTable();
bool Open(void);
bool CreateTable(void);
bool CreateIndex(char * idxName, bool unique, int noIdxCols, CidxDef *pIdxDefs);
bool CreateTable(bool attemptDrop=TRUE);
bool DropTable(void);
bool CreateIndex(char * idxName, bool unique, int noIdxCols, CidxDef *pIdxDefs, bool attemptDrop=TRUE);
bool DropIndex(char * idxName);
bool CloseCursor(HSTMT cursor);
int Insert(void);
bool Update(void);
@@ -154,11 +177,19 @@ public:
void SetColDefs (int index, char *fieldName, int dataType, void *pData, int cType,
int size, bool keyField = FALSE, bool upd = TRUE,
bool insAllow = TRUE, bool derivedCol = FALSE);
bool SetCursor(int cursorNo = DB_CURSOR0);
int GetCursor(void) { return(currCursorNo); }
HSTMT *NewCursor(bool setCursor = FALSE, bool bindColumns = TRUE);
bool DeleteCursor(HSTMT *hstmtDel);
void SetCursor(HSTMT *hstmtActivate = (void **) DEFAULT_CURSOR);
HSTMT GetCursor(void) { return(hstmt); }
ULONG Count(void);
int DB_STATUS(void) { return(pDb->DB_STATUS); }
bool Refresh(void);
bool SetNull(int colNo);
bool SetNull(char *colName);
#if __WXDEBUG__ > 0
ULONG GetTableID() { return tableID; };
#endif
}; // wxTable

View File

@@ -1,12 +1,12 @@
/////////////////////////////////////////////////////////////////////////////
// Name: debug.h
// Name: wx/debug.h
// Purpose: Misc debug functions and macros
// Author: Vadim Zeitlin
// Modified by:
// Created: 29/01/98
// RCS-ID: $Id$
// Copyright: (c) 1998 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
// Licence: wxWindows license
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_DEBUG_H_
@@ -16,24 +16,19 @@
#include "wx/wxchar.h"
#ifndef __TFILE__
#define __XFILE__(x) _T(x)
#define __TFILE__ __XFILE__(__FILE__)
#endif
// ----------------------------------------------------------------------------
/**
@name Debugging macros
/**
@name Debugging macros
All debugging macros rely on ASSERT() which in turn calls user-defined
OnAssert() function. To keep things simple, it's called even when the
expression is TRUE (i.e. everything is ok) and by default does nothing: just
returns the same value back. But if you redefine it to do something more sexy
(popping up a message box in your favourite GUI, sending you e-mail or
(popping up a message box in your favourite GUI, sending you e-mail or
whatever) it will affect all ASSERTs, FAILs and CHECKs in your code.
<BR>
<BR>
<b>Warning</b>: if you don't like advices on programming style, don't read
<b>Warning</b>: if you don't like advices on programming style, don't read
further! ;-)
<BR>
<BR>
@@ -94,13 +89,13 @@
// NB: these macros work also in release mode!
/**
/**
These macros must be used only in invalid situation: for example, an
invalid parameter (NULL pointer) is passed to a function. Instead of
dereferencing it and causing core dump the function might try using
CHECK( p != NULL ) or CHECK( p != NULL, return LogError("p is NULL!!") )
@name Macros which remain even in 'release' mode
@name Macros which remain even in 'release' mode
*/
//@{
/// check that expression is true, "return" if not (also FAILs in debug mode)

View File

@@ -47,10 +47,6 @@
#endif
#endif // Sun
#if defined(__hpux) && !defined(__HPUX__)
#define __HPUX__
#endif // HP-UX
#elif defined(applec) || defined(THINK_C) || ( defined( __MWERKS__ ) && !defined(__INTEL__) )
// MacOS
#elif defined(__OS2__)
@@ -115,13 +111,11 @@
# pragma suppress 571 // Virtual function hiding
#endif // __SALFORDC__
#ifdef __VISUALC__
#ifndef WIN32
// VC1.5 does not have LPTSTR type
#define LPTSTR LPSTR
#define LPCTSTR LPCSTR
#endif
#endif
#if defined(__VISUALC__) && !defined(WIN32)
// VC1.5 does not have LPTSTR type
#define LPTSTR LPSTR
#define LPCTSTR LPCSTR
#endif // VC++ 1.5
// Digital Unix C++ compiler only defines this symbol for .cxx and .hxx files,
// so define it ourselves
@@ -190,8 +184,9 @@
// Make sure the environment is set correctly
#if defined(__WXMSW__) && defined(__X__)
#error "Target can't be both X and Windows"
#elif !defined(__WXMOTIF__) && !defined(__WXMSW__) && !defined(__WXGTK__) && !defined(__WXPM__) && \
!defined(__WXMAC__) && !defined(__X__) && !defined(__WXQT__) && !defined(__WXSTUBS__)
#elif !defined(__WXMOTIF__) && !defined(__WXMSW__) && !defined(__WXGTK__) && \
!defined(__WXPM__) && !defined(__WXMAC__) && !defined(__X__) && \
!defined(__WXQT__) && !defined(__WXSTUBS__) && wxUSE_GUI
#error "No Target! Use -D[__WXMOTIF__|__WXGTK__|__WXMSW__|__WXMAC__|__WXQT__|__WXPM__|__WXSTUBS__]"
#endif
@@ -207,6 +202,12 @@
#undef PACKAGE
#undef VERSION
// this has to be done after including setup.h which might
// define __HPUX__ 1 itself
#if defined(__hpux) && !defined(__HPUX__)
#define __HPUX__
#endif // HP-UX
// if we're on a Unixsystem but didn't use configure (so that setup.h didn't
// define __UNIX__), do define __UNIX__ now
#if !defined(__UNIX__) && defined(__UNIX_LIKE__)
@@ -215,6 +216,17 @@
#include "wx/version.h"
// ----------------------------------------------------------------------------
// compatibility defines
// ----------------------------------------------------------------------------
// possibility to build non GUI apps is new, so don't burden ourselves with
// compatibility code
#if !wxUSE_GUI
#undef WXWIN_COMPATIBILITY_2
#define WXWIN_COMPATIBILITY_2 0
#endif // !GUI
// ============================================================================
// non portable C++ features
// ============================================================================
@@ -223,21 +235,14 @@
// check for native bool type and TRUE/FALSE constants
// ----------------------------------------------------------------------------
#if defined(__WXMOTIF__) || defined(__WXGTK__) || defined(__WXQT__) || defined(__WXPM__) || defined(__WXSTUBS__)
// Bool is now obsolete, use bool instead
// typedef int Bool;
// define boolean constants if not done yet
#ifndef TRUE
#define TRUE 1
#endif
#ifndef TRUE
#define TRUE 1
#define FALSE 0
#define Bool_DEFINED
#endif
#elif defined(__WXMSW__)
#ifndef TRUE
#define TRUE 1
#define FALSE 0
#endif
#endif // TRUE/FALSE
#ifndef FALSE
#define FALSE 0
#endif
// Add more tests here for Windows compilers that already define bool
// (under Unix, configure tests for this)
@@ -297,9 +302,40 @@ typedef int wxWindowID;
#define WXUNUSED(identifier) identifier
#endif
/*
* Making or using wxWindows as a Windows DLL
*/
// ----------------------------------------------------------------------------
// portable calling conventions macros
// ----------------------------------------------------------------------------
// wxCALLBACK should be used for the functions which are called back by
// Windows (such as compare function for wxListCtrl)
#if defined(__WXMSW__)
#if defined(__MINGW32__)
#define wxCALLBACK __attribute__((stdcall))
#else
// both VC++ and Borland understand this
#define wxCALLBACK _stdcall
#endif
#else
// no stdcall under Unix
#define wxCALLBACK
#endif // platform
// callling convention for the qsort(3) callback
#if defined(__VISUALC__)
#define wxCMPFUNC_CONV _cdecl
#elif defined(__VISAGECPP__)
#define wxCMPFUNC_CONV _Optlink
#else // !Visual C++
#define wxCMPFUNC_CONV
#endif // compiler
// compatibility :-(
#define CMPFUNC_CONV wxCMPFUNC_CONV
// ----------------------------------------------------------------------------
// Making or using wxWindows as a Windows DLL
// ----------------------------------------------------------------------------
#if defined(__WXMSW__)
@@ -465,7 +501,8 @@ enum
wxMGL_UNIX, // MGL with direct hardware access
wxMGL_X, // MGL on X
wxMGL_WIN32, // MGL on Win32
wxMGL_OS2 // MGL on OS/2
wxMGL_OS2, // MGL on OS/2
wxWINDOWS_OS2 // Native OS/2 PM
};
// ----------------------------------------------------------------------------
@@ -809,6 +846,8 @@ enum wxStretch
// this style means to use RICHEDIT control and does something only under wxMSW
// and Win32 and is silently ignored under all other platforms
#define wxTE_RICH 0x0080
#define wxTE_NO_VSCROLL 0x0100
#define wxTE_AUTO_SCROLL 0x0200
/*
* wxComboBox style flags
@@ -836,11 +875,11 @@ enum wxStretch
/*
* wxGauge flags
*/
#define wxGA_PROGRESSBAR 0x0004
#define wxGA_HORIZONTAL wxHORIZONTAL
#define wxGA_VERTICAL wxVERTICAL
#define wxGA_PROGRESSBAR 0x0010
// Windows only
#define wxGA_SMOOTH 0x0008
#define wxGA_SMOOTH 0x0020
/*
* wxSlider flags
@@ -946,6 +985,9 @@ enum wxStretch
* wxNotebook flags
*/
#define wxNB_FIXEDWIDTH 0x0008
#define wxNB_LEFT 0x0020
#define wxNB_RIGHT 0x0040
#define wxNB_BOTTOM 0x0080
/*
* wxStatusBar95 flags
@@ -1065,6 +1107,8 @@ enum wxStretch
#define wxID_SETUP 5110
#define wxID_RESET 5111
// IDs used by generic file dialog (11 consecutive starting from this value)
#define wxID_FILEDLGG 5900
#define wxID_HIGHEST 5999
// ----------------------------------------------------------------------------
@@ -1465,8 +1509,15 @@ typedef unsigned long WXHDC;
typedef unsigned int WXUINT;
typedef unsigned long WXDWORD;
typedef unsigned short WXWORD;
#ifdef __WXMSW__
typedef unsigned int WXWPARAM;
typedef long WXLPARAM;
#else
# define WXWPARAM MPARAM
# define WXLPARAM MPARAM
# define RECT RECTL
# define LOGFONT FATTRS
#endif
typedef unsigned long WXCOLORREF;
typedef void * WXRGNDATA;
typedef void * WXMSG;

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

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

View File

@@ -1,8 +1,16 @@
#ifndef _WX_DIRDLG_H_BASE_
#define _WX_DIRDLG_H_BASE_
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
WXDLLEXPORT_DATA(extern const wxChar*) wxDirDialogNameStr;
WXDLLEXPORT_DATA(extern const wxChar*) wxDirDialogDefaultFolderStr;
WXDLLEXPORT_DATA(extern const wxChar*) wxEmptyString;
#if defined(__WXMSW__)
#if defined(__WIN16__) || defined(__GNUWIN32__) || defined(__SALFORDC__)
#if defined(__WIN16__) || (defined(__GNUWIN32__)&&!defined(wxUSE_NORLANDER_HEADERS)) || defined(__SALFORDC__)
#include "wx/generic/dirdlgg.h"
#else
#include "wx/msw/dirdlg.h"

View File

@@ -362,6 +362,7 @@ public:
// File history management
virtual void AddFileToHistory(const wxString& file);
virtual void RemoveFileFromHistory(int i);
virtual int GetNoHistoryFiles() const;
virtual wxString GetHistoryFile(int i) const;
virtual void FileHistoryUseMenu(wxMenu *menu);
@@ -553,6 +554,7 @@ public:
// Operations
virtual void AddFileToHistory(const wxString& file);
virtual void RemoveFileFromHistory(int i);
virtual int GetMaxFiles() const { return m_fileMaxFiles; }
virtual void UseMenu(wxMenu *menu);

View File

@@ -43,15 +43,7 @@
callback compare function for quick sort
must return negative value, 0 or positive value if pItem1 <, = or > pItem2
*/
#if defined(__VISUALC__)
#define CMPFUNC_CONV _cdecl
#elif defined(__VISAGECPP__)
#define CMPFUNC_CONV _Optlink
#else // !Visual C++
#define CMPFUNC_CONV
#endif // compiler
typedef int (CMPFUNC_CONV *CMPFUNC)(const void* pItem1, const void* pItem2);
typedef int (wxCMPFUNC_CONV *CMPFUNC)(const void* pItem1, const void* pItem2);
// ----------------------------------------------------------------------------
/**
@@ -159,6 +151,11 @@ private:
// template classes
// ============================================================================
// resolves the name conflict between the wxT() macor and T typedef: we can't
// use wxT() inside WX_DEFINE_ARRAY!
#define _WX_ERROR_SIZEOF wxT("illegal use of DEFINE_ARRAY")
#define _WX_ERROR_REMOVE wxT("removing inexisting element in wxArray::Remove")
// ----------------------------------------------------------------------------
// This macro generates a new array class. It is intended for storage of simple
// types of sizeof()<=sizeof(long) or pointers if sizeof(pointer)<=sizeof(long)
@@ -178,7 +175,7 @@ public: \
size_t type = sizeof(T); \
size_t sizelong = sizeof(long); \
if ( type > sizelong ) \
{ wxFAIL_MSG( _T("illegal use of DEFINE_ARRAY") ); } \
{ wxFAIL_MSG( _WX_ERROR_SIZEOF ); } \
} \
\
name& operator=(const name& src) \
@@ -205,7 +202,7 @@ public: \
void Remove(T Item) \
{ int iIndex = Index(Item); \
wxCHECK2_MSG( iIndex != wxNOT_FOUND, return, \
_T("removing inexisting element in wxArray::Remove") ); \
_WX_ERROR_REMOVE); \
wxBaseArray::Remove((size_t)iIndex); } \
\
void Sort(CMPFUNC##T fCmp) { wxBaseArray::Sort((CMPFUNC)fCmp); } \
@@ -240,7 +237,7 @@ public: \
{ size_t type = sizeof(T); \
size_t sizelong = sizeof(long); \
if ( type > sizelong ) \
{ wxFAIL_MSG( _T("illegal use of DEFINE_ARRAY") ); } \
{ wxFAIL_MSG( _WX_ERROR_SIZEOF ); } \
m_fnCompare = fn; \
} \
\
@@ -267,7 +264,7 @@ public: \
void Remove(T Item) \
{ int iIndex = Index(Item); \
wxCHECK2_MSG( iIndex != wxNOT_FOUND, return, \
_T("removing inexisting element in wxArray::Remove") ); \
_WX_ERROR_REMOVE ); \
wxBaseArray::Remove((size_t)iIndex); } \
\
private: \

View File

@@ -18,16 +18,31 @@
#include "wx/defs.h"
#include "wx/object.h"
#include "wx/gdicmn.h"
#if wxUSE_GUI
#include "wx/gdicmn.h"
#endif
#if wxUSE_THREADS
#include "wx/thread.h"
#endif
/*
* Event types
*
*/
// ----------------------------------------------------------------------------
// forward declarations
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxList;
#if wxUSE_GUI
class WXDLLEXPORT wxClientData;
class WXDLLEXPORT wxDC;
class WXDLLEXPORT wxMenu;
class WXDLLEXPORT wxWindow;
#endif // wxUSE_GUI
// ----------------------------------------------------------------------------
// Event types
// ----------------------------------------------------------------------------
typedef int wxEventType;
@@ -336,6 +351,8 @@ public:
bool m_isCommandEvent;
};
#if wxUSE_GUI
// Item or menu event class
/*
wxEVT_COMMAND_BUTTON_CLICKED
@@ -354,8 +371,6 @@ public:
wxEVT_COMMAND_COMBOBOX_SELECTED
*/
class WXDLLEXPORT wxClientData;
class WXDLLEXPORT wxCommandEvent : public wxEvent
{
DECLARE_DYNAMIC_CLASS(wxCommandEvent)
@@ -523,7 +538,6 @@ public:
wxEVT_NC_RIGHT_DCLICK,
*/
class WXDLLEXPORT wxDC;
class WXDLLEXPORT wxMouseEvent : public wxEvent
{
DECLARE_DYNAMIC_CLASS(wxMouseEvent)
@@ -764,7 +778,6 @@ public:
wxEVT_ERASE_BACKGROUND
*/
class WXDLLEXPORT wxDC;
class WXDLLEXPORT wxEraseEvent : public wxEvent
{
DECLARE_DYNAMIC_CLASS(wxEraseEvent)
@@ -884,7 +897,7 @@ public:
{
// GetVeto() will return FALSE anyhow...
wxCHECK_RET( m_canVeto,
_T("call to Veto() ignored (can't veto this event)") );
wxT("call to Veto() ignored (can't veto this event)") );
m_veto = veto;
}
@@ -1017,7 +1030,7 @@ public:
// Was it a button event? (*doesn't* mean: is any button *down*?)
bool IsButton() const { return ((GetEventType() == wxEVT_JOY_BUTTON_DOWN) ||
(GetEventType() == wxEVT_JOY_BUTTON_DOWN)); }
(GetEventType() == wxEVT_JOY_BUTTON_UP)); }
// Was it a move event?
bool IsMove() const { return (GetEventType() == wxEVT_JOY_MOVE) ; }
@@ -1069,36 +1082,11 @@ public:
void CopyObject(wxObject& obj) const;
};
// Idle event
/*
wxEVT_IDLE
*/
class WXDLLEXPORT wxIdleEvent : public wxEvent
{
DECLARE_DYNAMIC_CLASS(wxIdleEvent)
public:
wxIdleEvent()
{ m_eventType = wxEVT_IDLE; m_requestMore = FALSE; }
void RequestMore(bool needMore = TRUE) { m_requestMore = needMore; }
bool MoreRequested() const { return m_requestMore; }
void CopyObject(wxObject& obj) const;
protected:
bool m_requestMore;
};
// Update UI event
/*
wxEVT_UPDATE_UI
*/
class WXDLLEXPORT wxMenu;
class WXDLLEXPORT wxWindow;
class WXDLLEXPORT wxUpdateUIEvent : public wxCommandEvent
{
DECLARE_DYNAMIC_CLASS(wxUpdateUIEvent)
@@ -1256,6 +1244,30 @@ public:
wxWindow *GetWindow() const { return (wxWindow *)GetEventObject(); }
};
#endif // wxUSE_GUI
// Idle event
/*
wxEVT_IDLE
*/
class WXDLLEXPORT wxIdleEvent : public wxEvent
{
DECLARE_DYNAMIC_CLASS(wxIdleEvent)
public:
wxIdleEvent()
{ m_eventType = wxEVT_IDLE; m_requestMore = FALSE; }
void RequestMore(bool needMore = TRUE) { m_requestMore = needMore; }
bool MoreRequested() const { return m_requestMore; }
void CopyObject(wxObject& obj) const;
protected:
bool m_requestMore;
};
/* TODO
wxEVT_POWER,
wxEVT_MOUSE_CAPTURE_CHANGED,
@@ -1267,11 +1279,6 @@ public:
wxEVT_COMPARE_ITEM
*/
class WXDLLEXPORT wxWindow;
class WXDLLEXPORT wxControl;
// struct WXDLLEXPORT wxEventTableEntry;
typedef void (wxObject::*wxObjectEventFunction)(wxEvent&);
struct WXDLLEXPORT wxEventTableEntry
@@ -1312,7 +1319,7 @@ public:
virtual void OnCommand(wxWindow& WXUNUSED(win),
wxCommandEvent& WXUNUSED(event))
{
wxFAIL_MSG(_T("shouldn't be called any more"));
wxFAIL_MSG(wxT("shouldn't be called any more"));
}
// Called if child control has no callback function
@@ -1373,6 +1380,7 @@ protected:
};
typedef void (wxEvtHandler::*wxEventFunction)(wxEvent&);
#if wxUSE_GUI
typedef void (wxEvtHandler::*wxCommandEventFunction)(wxCommandEvent&);
typedef void (wxEvtHandler::*wxScrollEventFunction)(wxScrollEvent&);
typedef void (wxEvtHandler::*wxScrollWinEventFunction)(wxScrollWinEvent&);
@@ -1398,6 +1406,7 @@ typedef void (wxEvtHandler::*wxMaximizeEventFunction)(wxShowEvent&);
typedef void (wxEvtHandler::*wxNavigationKeyEventFunction)(wxNavigationKeyEvent&);
typedef void (wxEvtHandler::*wxPaletteChangedEventFunction)(wxPaletteChangedEvent&);
typedef void (wxEvtHandler::*wxQueryNewPaletteEventFunction)(wxQueryNewPaletteEvent&);
#endif // wxUSE_GUI
// N.B. In GNU-WIN32, you *have* to take the address of a member function
// (use &) or the compiler crashes...
@@ -1603,13 +1612,17 @@ const wxEventTableEntry theClass::sm_eventTableEntries[] = { \
#define EVT_UPDATE_UI(id, func) \
{ wxEVT_UPDATE_UI, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxUpdateUIEventFunction) & func, (wxObject *) NULL },\
/*
* Helper functions
*/
// ----------------------------------------------------------------------------
// Helper functions
// ----------------------------------------------------------------------------
#if wxUSE_GUI
// Find a window with the focus, that is also a descendant of the given window.
// This is used to determine the window to initially send commands to.
wxWindow* wxFindFocusDescendant(wxWindow* ancestor);
#endif // wxUSE_GUI
#endif
// _WX_EVENTH__

View File

@@ -51,7 +51,7 @@ public:
bool Close();
// assign an existing file descriptor and get it back from wxFFile object
void Attach(FILE *fp, const wxString& name = _T(""))
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; }

View File

@@ -141,9 +141,9 @@ public:
// New constructor: one size fits all. Specify wxCONFIG_USE_LOCAL_FILE or
// wxCONFIG_USE_GLOBAL_FILE to say which files should be used.
wxFileConfig(const wxString& appName,
const wxString& vendorName = _T(""),
const wxString& localFilename = _T(""),
const wxString& globalFilename = _T(""),
const wxString& vendorName = wxT(""),
const wxString& localFilename = wxT(""),
const wxString& globalFilename = wxT(""),
long style = wxCONFIG_USE_LOCAL_FILE);
// dtor will save unsaved data

View File

@@ -159,15 +159,15 @@ WXDLLEXPORT bool wxMkdir(const wxString& dir, int perm = 0777);
WXDLLEXPORT bool wxRmdir(const wxString& dir, int flags = 0);
// separators in file names
#define wxFILE_SEP_EXT _T('.')
#define wxFILE_SEP_DSK _T(':')
#define wxFILE_SEP_PATH_DOS _T('\\')
#define wxFILE_SEP_PATH_UNIX _T('/')
#define wxFILE_SEP_EXT wxT('.')
#define wxFILE_SEP_DSK wxT(':')
#define wxFILE_SEP_PATH_DOS wxT('\\')
#define wxFILE_SEP_PATH_UNIX wxT('/')
// separator in the path list (as in PATH environment variable)
// NB: these are strings and not characters on purpose!
#define wxPATH_SEP_DOS _T(";")
#define wxPATH_SEP_UNIX _T(":")
#define wxPATH_SEP_DOS wxT(";")
#define wxPATH_SEP_UNIX wxT(":")
// platform independent versions
#ifdef __UNIX__

View File

@@ -162,7 +162,7 @@ class WXDLLEXPORT wxFileSystem : public wxObject
// unless is_dir = TRUE 'location' is *not* the directory but
// file contained in this directory
// (so ChangePathTo("dir/subdir/xh.htm") sets m_Path to "dir/subdir/")
wxString GetPath() const {return m_Path;}
wxFSFile* OpenFile(const wxString& location);
@@ -175,6 +175,9 @@ class WXDLLEXPORT wxFileSystem : public wxObject
static void AddHandler(wxFileSystemHandler *handler);
// Adds FS handler.
// In fact, this class is only front-end to the FS hanlers :-)
static void CleanUpHandlers();
// remove all items from the m_Handlers list
};
@@ -204,5 +207,5 @@ special characters :
#endif
// (wxUSE_FS_INET || wxUSE_FS_ZIP) && wxUSE_STREAMS
#endif
#endif
// __FILESYS_H__

View File

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

View File

@@ -18,9 +18,7 @@
# define wxFontDialog wxGenericFontDialog
# define sm_classwxFontDialog sm_classwxGenericFontDialog
#elif defined(__WXPM__)
#include "wx/generic/fontdlgg.h"
# define wxFontDialog wxGenericFontDialog
# define sm_classwxFontDialog sm_classwxGenericFontDialog
#include "wx/os2/fontdlg.h"
#elif defined(__WXSTUBS__)
#include "wx/generic/fontdlgg.h"
# define wxFontDialog wxGenericFontDialog

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

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

View File

@@ -149,6 +149,16 @@ enum wxStockCursor
#define wxICON(X) wxIcon("" #X "")
#endif // platform
/* Another macro: this one is for portable creation of bitmaps. We assume that
under Unix bitmaps live in XPMs and under Windows they're in ressources.
*/
#if defined(__WXMSW__) || defined(__WXPM__)
#define wxBITMAP(name) wxBitmap(#name, wxBITMAP_TYPE_RESOURCE)
#else // !(Windows || OS2)
#define wxBITMAP(name) wxBitmap(name##_xpm, wxBITMAP_TYPE_XPM)
#endif // platform
// ===========================================================================
// classes
// ===========================================================================

View File

@@ -68,6 +68,7 @@
//-----------------------------------------------------------------------------
WXDLLEXPORT_DATA(extern const wxChar*) wxFileSelectorPromptStr;
WXDLLEXPORT_DATA(extern const wxChar*) wxDirDialogDefaultFolderStr;
//-----------------------------------------------------------------------------
// classes
@@ -105,11 +106,11 @@ public:
wxDirCtrl();
wxDirCtrl(wxWindow *parent, const wxWindowID id = -1,
const wxString &dir = "/",
const wxString &dir = wxDirDialogDefaultFolderStr,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
const long style = wxTR_HAS_BUTTONS,
const wxString& name = "wxTreeCtrl" );
const wxString& name = wxTreeCtrlNameStr );
void ShowHidden( const bool yesno );
void OnExpandItem(wxTreeEvent &event );
void OnCollapseItem(wxTreeEvent &event );

View File

@@ -6,7 +6,7 @@
// Created: 8/17/99
// Copyright: (c) Robert Roebling
// RCS-ID: $Id$
// Licence: wxWindows licence
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_FILEDLGG_H_
@@ -62,19 +62,19 @@ private:
bool m_isExe;
public:
wxFileData() {}
wxFileData() { }
wxFileData( const wxString &name, const wxString &fname );
wxString GetName() const;
wxString GetFullName() const;
wxString GetHint() const;
wxString GetEntry( const int num );
wxString GetEntry( int num );
bool IsDir();
bool IsLink();
bool IsExe();
long GetSize();
void MakeItem( wxListItem &item );
void SetNewName( const wxString &name, const wxString &fname );
private:
DECLARE_DYNAMIC_CLASS(wxFileData);
};
@@ -92,11 +92,15 @@ private:
public:
wxFileCtrl();
wxFileCtrl( wxWindow *win, const wxWindowID id,
const wxString &dirName, const wxString &wild,
const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize,
const long style = wxLC_LIST, const wxValidator &validator = wxDefaultValidator,
const wxString &name = _T("filelist") );
wxFileCtrl( wxWindow *win,
wxWindowID id,
const wxString &dirName,
const wxString &wild,
const wxPoint &pos = wxDefaultPosition,
const wxSize &size = wxDefaultSize,
long style = wxLC_LIST,
const wxValidator &validator = wxDefaultValidator,
const wxString &name = wxT("filelist") );
void ChangeToListMode();
void ChangeToReportMode();
void ChangeToIconMode();
@@ -113,7 +117,7 @@ public:
void OnListDeleteItem( wxListEvent &event );
void OnListEndLabelEdit( wxListEvent &event );
private:
private:
DECLARE_DYNAMIC_CLASS(wxFileCtrl);
DECLARE_EVENT_TABLE()
};
@@ -151,7 +155,7 @@ public:
wxString GetWildcard() const { return m_wildCard; }
long GetStyle() const { return m_dialogStyle; }
int GetFilterIndex() const { return m_filterIndex ; }
void OnSelected( wxListEvent &event );
void OnActivated( wxListEvent &event );
void OnList( wxCommandEvent &event );
@@ -163,7 +167,9 @@ public:
void OnChoice( wxCommandEvent &event );
void OnTextEnter( wxCommandEvent &event );
protected:
void HandleAction( const wxString &fn );
protected:
wxString m_message;
long m_dialogStyle;
wxString m_dir;
@@ -176,17 +182,20 @@ protected:
wxFileCtrl *m_list;
wxCheckBox *m_check;
wxStaticText *m_static;
private:
DECLARE_DYNAMIC_CLASS(wxFileDialog)
DECLARE_EVENT_TABLE()
};
#define wxOPEN 1
#define wxSAVE 2
#define wxOVERWRITE_PROMPT 4
#define wxHIDE_READONLY 8
#define wxFILE_MUST_EXIST 16
enum
{
wxOPEN = 1,
wxSAVE = 2,
wxOVERWRITE_PROMPT = 4,
wxHIDE_READONLY = 8,
wxFILE_MUST_EXIST = 16
};
// File selector - backward compatibility
WXDLLEXPORT wxString

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

File diff suppressed because it is too large Load Diff

View File

@@ -352,6 +352,12 @@ public:
: wxGenericGrid(parent, x, y, width, height, style, name)
{
}
wxGrid(wxWindow *parent, wxWindowID id, const wxPoint& pos,
const wxSize& size, long style = 0, const wxString& name = "grid")
: wxGenericGrid(parent, id, pos, size, style, name)
{
}
};
class WXDLLEXPORT wxGridEvent : public wxCommandEvent

View File

@@ -120,18 +120,18 @@ DECLARE_ABSTRACT_CLASS(wxHTMLHelpControllerBase)
virtual bool DisplayHelp(wxString const &) = 0;
/// Allows one to override the default settings for the help frame.
virtual void SetFrameParameters(const wxString &title,
const wxSize &size,
const wxPoint &pos = wxDefaultPosition,
bool newFrameEachTime = FALSE)
virtual void SetFrameParameters(const wxString& WXUNUSED(title),
const wxSize& WXUNUSED(size),
const wxPoint& WXUNUSED(pos) = wxDefaultPosition,
bool WXUNUSED(newFrameEachTime) = FALSE)
{
// does nothing by default
}
/// Obtains the latest settings used by the help frame and the help
/// frame.
virtual wxFrame *GetFrameParameters(wxSize *size = NULL,
wxPoint *pos = NULL,
bool *newFrameEachTime = NULL)
virtual wxFrame *GetFrameParameters(wxSize *WXUNUSED(size) = NULL,
wxPoint *WXUNUSED(pos) = NULL,
bool *WXUNUSED(newFrameEachTime) = NULL)
{
return (wxFrame*) NULL;// does nothing by default
}

View File

@@ -54,7 +54,7 @@ public:
@param newmsg if used, new message to display
@returns true if ABORT button has not been pressed
*/
bool Update(int value = -1, const wxString& newmsg = _T(""));
bool Update(int value = -1, const wxString& newmsg = wxT(""));
/* Can be called to continue after the cancel button has been pressed, but
the program decided to continue the operation (e.g., user didn't

View File

@@ -281,11 +281,7 @@ public:
}
private:
#ifdef __MWERKS__
friend class wxSplitterWindow;
#else
friend wxSplitterWindow;
#endif
friend class WXDLLEXPORT wxSplitterWindow;
// data for the different types of event
union

View File

@@ -15,6 +15,8 @@
#pragma interface
#endif
class wxStaticBox;
// ----------------------------------------------------------------------------
// wxStaticLine
// ----------------------------------------------------------------------------
@@ -44,6 +46,11 @@ public:
long style = wxLI_HORIZONTAL,
const wxString &name = wxStaticTextNameStr );
// it's necessary to override this wxWindow function because we
// will want to return the main widget for m_statbox
//
WXWidget GetMainWidget() const;
protected:
// we implement the static line using a static box
wxStaticBox *m_statbox;

View File

@@ -179,10 +179,10 @@ class WXDLLEXPORT wxTreeTextCtrl: public wxTextCtrl
wxTreeTextCtrl(void) {};
wxTreeTextCtrl( wxWindow *parent, const wxWindowID id,
bool *accept, wxString *res, wxTreeCtrl *owner,
const wxString &value = "",
const wxString &value = wxEmptyString,
const wxPoint &pos = wxDefaultPosition, const wxSize &size = wxDefaultSize,
int style = 0, const wxValidator& validator = wxDefaultValidator,
const wxString &name = "wxTreeTextCtrlText" );
const wxString &name = wxTextCtrlNameStr );
void OnChar( wxKeyEvent &event );
void OnKillFocus( wxFocusEvent &event );
@@ -258,10 +258,9 @@ public:
// retrieve items label
wxString GetItemText(const wxTreeItemId& item) const;
// get the normal item image
int GetItemImage(const wxTreeItemId& item) const;
// get the selected item image
int GetItemSelectedImage(const wxTreeItemId& item) const;
// get one of the images associated with the item (normal by default)
int GetItemImage(const wxTreeItemId& item,
wxTreeItemIcon which = wxTreeItemIcon_Normal) const;
// get the data associated with the item
wxTreeItemData *GetItemData(const wxTreeItemId& item) const;
@@ -270,10 +269,9 @@ public:
// set items label
void SetItemText(const wxTreeItemId& item, const wxString& text);
// set the normal item image
void SetItemImage(const wxTreeItemId& item, int image);
// set the selected item image
void SetItemSelectedImage(const wxTreeItemId& item, int image);
// get one of the images associated with the item (normal by default)
void SetItemImage(const wxTreeItemId& item, int image,
wxTreeItemIcon which = wxTreeItemIcon_Normal);
// associate some data with the item
void SetItemData(const wxTreeItemId& item, wxTreeItemData *data);
@@ -433,6 +431,16 @@ public:
// NB: this function is not reentrant and not MT-safe (FIXME)!
void SortChildren(const wxTreeItemId& item);
// deprecated functions: use Set/GetItemImage directly
// get the selected item image
int GetItemSelectedImage(const wxTreeItemId& item) const
{ return GetItemImage(item, wxTreeItemIcon_Selected); }
// set the selected item image
void SetItemSelectedImage(const wxTreeItemId& item, int image)
{ SetItemImage(item, image, wxTreeItemIcon_Selected); }
// implementation
// callbacks
void OnPaint( wxPaintEvent &event );
void OnSetFocus( wxFocusEvent &event );

View File

@@ -0,0 +1,62 @@
///////////////////////////////////////////////////////////////////////////////
// Name: generic/wizard.h
// Purpose: declaration of generic wxWizard class
// Author: Vadim Zeitlin
// Modified by:
// Created: 28.09.99
// RCS-ID: $Id$
// Copyright: (c) 1999 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
// Licence: wxWindows license
///////////////////////////////////////////////////////////////////////////////
// ----------------------------------------------------------------------------
// wxWizard
// ----------------------------------------------------------------------------
class wxWizard : public wxWizardBase
{
public:
// ctor
wxWizard(wxWindow *parent = NULL,
int id = -1,
const wxString& title = wxEmptyString,
const wxBitmap& bitmap = wxNullBitmap,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize);
// implement base class pure virtuals
virtual bool RunWizard(wxWizardPage *firstPage);
virtual wxWizardPage *GetCurrentPage() const;
// implementation only from now on
// -------------------------------
// is the wizard running?
bool IsRunning() const { return m_page != NULL; }
// show the prev/next page, but call TransferDataFromWindow on the current
// page first and return FALSE without changing the page if it returns
// FALSE
bool ShowPage(wxWizardPage *page, bool goingForward = TRUE);
private:
// event handlers
void OnCancel(wxCommandEvent& event);
void OnBackOrNext(wxCommandEvent& event);
// wizard dimensions
int m_x, m_y; // the origin for the pages
int m_width, // the size of the page itself
m_height; // (total width is m_width + m_x)
// wizard state
wxWizardPage *m_page; // the current page or NULL
// wizard controls
wxButton *m_btnPrev, // the "<Back" button
*m_btnNext; // the "Next>" or "Finish" button
DECLARE_DYNAMIC_CLASS(wxWizard)
DECLARE_EVENT_TABLE()
};

View File

@@ -3,8 +3,8 @@
// Purpose: wxGIFDecoder, GIF reader for wxImage and wxAnimation
// Author: Guillermo Rodriguez Garcia <guille@iies.es>
// Version: 3.02
// Last rev: 1999/08/18
// Copyright: (c) Guillermo Rodriguez Garcia
// CVS-ID: $Id$
// Copyright: (c) 1999 Guillermo Rodriguez Garcia
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
@@ -17,7 +17,8 @@
#include "wx/setup.h"
#if wxUSE_STREAMS
#if wxUSE_STREAMS && wxUSE_GIF
#include "wx/stream.h"
#include "wx/image.h"
@@ -46,12 +47,10 @@ typedef struct _IMAGEN
/* error codes */
#define E_OK 0 /* everything was OK */
#define E_ARCHIVO -1 /* error opening file */
#define E_FORMATO -2 /* error in gif header */
#define E_MEMORIA -3 /* error allocating memory */
#define E_FORMATO 1 /* error in gif header */
#define E_MEMORIA 2 /* error allocating memory */
class wxGIFDecoder
class WXDLLEXPORT wxGIFDecoder
{
private:
/* logical screen */
@@ -117,6 +116,6 @@ public:
};
#endif // wxUSE_STREAM
#endif // wxUSE_STREAM && wxUSE_GIF
#endif // _WX_GIFDECOD_H

View File

@@ -1,11 +1,7 @@
#ifndef _WX_GRID_H_BASE_
#define _WX_GRID_H_BASE_
#include "wx/generic/gridg.h"
#ifndef wxGrid
#define wxGrid wxGenericGrid
#endif
#include "wx/generic/grid.h"
#endif
// _WX_GRID_H_BASE_

View File

@@ -8,15 +8,17 @@
#ifndef __GSOCKET_H
#define __GSOCKET_H
#ifndef __GSOCKET_STANDALONE__
#include "wx/setup.h"
#endif
#if wxUSE_SOCKETS
#if wxUSE_SOCKETS || defined(__GSOCKET_STANDALONE__)
#include <stddef.h>
#include <sys/types.h>
#if !defined(__cplusplus)
typedef int bool;
typedef unsigned int bool;
#endif
#ifndef TRUE
@@ -27,6 +29,11 @@ typedef int bool;
#define FALSE 0
#endif
#ifdef __cplusplus
extern "C" {
#endif
typedef struct _GSocket GSocket;
typedef struct _GAddress GAddress;
@@ -51,7 +58,7 @@ typedef enum {
GSOCK_NOHOST,
GSOCK_INVPORT,
GSOCK_WOULDBLOCK,
GSOCK_TIMEOUT,
GSOCK_TIMEDOUT,
GSOCK_MEMERR
} GSocketError;
@@ -75,11 +82,8 @@ typedef int GSocketEventFlags;
typedef void (*GSocketCallback)(GSocket *socket, GSocketEvent event,
char *cdata);
#ifdef __cplusplus
extern "C" {
#endif
/* Global initialisers */
/* Global initializers */
/* GSocket_Init() must be called at the beginning */
bool GSocket_Init();
@@ -91,7 +95,7 @@ void GSocket_Cleanup();
GSocket *GSocket_new();
void GSocket_destroy(GSocket *socket);
/* This will disable all IO calls to this socket but errors are still available */
/* This will disable all further IO calls to this socket */
void GSocket_Shutdown(GSocket *socket);
/* Address handling */
@@ -107,88 +111,107 @@ GSocketError GSocket_SetNonOriented(GSocket *socket);
/* Server specific parts */
/*
GSocket_SetServer() setups the socket as a server. It uses the "Local" field
of GSocket. "Local" must be set by GSocket_SetLocal() before
GSocket_SetServer() is called. In the other case, it returns GSOCK_INVADDR.
*/
/* GSocket_SetServer:
* Sets up the socket as a server. It uses the "Local" field of GSocket.
* "Local" must be set by GSocket_SetLocal() before GSocket_SetServer()
* is called. Possible error codes are: GSOCK_INVSOCK if socket has not
* been initialized, GSOCK_INVADDR if the local address has not been
* defined and GSOCK_IOERR for other internal errors.
*/
GSocketError GSocket_SetServer(GSocket *socket);
/*
GSocket_WaitConnection() waits for an incoming client connection.
*/
/* GSocket_WaitConnection:
* Waits for an incoming client connection.
*/
GSocket *GSocket_WaitConnection(GSocket *socket);
/* Client specific parts */
/*
GSocket_Connect() establishes a client connection to a server using the "Peer"
field of GSocket. "Peer" must be set by GSocket_SetPeer() before
GSocket_Connect() is called. In the other case, it returns GSOCK_INVADDR.
*/
/* GSocket_Connect:
* Establishes a client connection to a server using the "Peer"
* field of GSocket. "Peer" must be set by GSocket_SetPeer() before
* GSocket_Connect() is called. Possible error codes are GSOCK_INVSOCK,
* GSOCK_INVADDR, GSOCK_TIMEDOUT, GSOCK_WOULDBLOCK and GSOCK_IOERR.
* If a socket is nonblocking and Connect() returns GSOCK_WOULDBLOCK,
* the connection request can be completed later. Use GSocket_Select()
* to check it, or wait for a GSOCK_CONNECTION event.
*/
GSocketError GSocket_Connect(GSocket *socket, GSocketStream stream);
/* Generic IO */
/* Like recv(), send(), ... */
/*
NOTE: In case we read from a non-oriented connection, the incoming (outgoing)
connection address is stored in the "Local" ("Peer") field.
*/
/* NOTE: In case we read from a non-oriented connection, the incoming
* (outgoing) connection address is stored in the "Local" ("Peer")
* field.
*/
int GSocket_Read(GSocket *socket, char *buffer, int size);
int GSocket_Write(GSocket *socket, const char *buffer,
int size);
bool GSocket_DataAvailable(GSocket *socket);
/* GSocket_Select:
* Polls the socket to determine its status. This function will
* check for the events specified in the 'flags' parameter, and
* it will return a mask indicating which operations can be
* performed. This function won't block, regardless of the
* mode (blocking|nonblocking) of the socket.
*/
GSocketEventFlags GSocket_Select(GSocket *socket, GSocketEventFlags flags);
/* Flags/Parameters */
/*
GSocket_SetTimeout() sets the timeout for reading and writing IO call. Time
is expressed in milliseconds.
/* GSocket_SetTimeout:
* Sets the timeout for blocking calls. Time is
* expressed in milliseconds.
*/
void GSocket_SetTimeout(GSocket *socket, unsigned long millisec);
/*
GSocket_SetBlocking() puts the socket in non-blocking mode. This is useful
if we don't want to wait.
*/
/* GSocket_SetNonBlocking:
* Sets the socket to non-blocking mode. This is useful if
* we don't want to wait.
*/
void GSocket_SetNonBlocking(GSocket *socket, bool non_block);
/*
GSocket_GetError() returns the last error occured on the socket stream.
*/
/* GSocket_GetError:
* Returns the last error occured for this socket.
*/
GSocketError GSocket_GetError(GSocket *socket);
/* Callbacks */
/*
Only one fallback is possible for each event (INPUT, OUTPUT, CONNECTION, LOST)
INPUT: The function is called when there is at least a byte in the
input buffer
OUTPUT: The function is called when the system is sure the next write call
will not block
CONNECTION: Two cases is possible:
Client socket -> the connection is established
Server socket -> a client request a connection
LOST: the connection is lost
/* Only one callback is possible for each event (INPUT, OUTPUT, CONNECTION
* and LOST). The callbacks are called in the following situations:
*
* INPUT: There is at least one byte in the input buffer
* OUTPUT: The system is sure that the next write call will not block
* CONNECTION: Two cases are possible:
* Client socket -> the connection is established
* Server socket -> a client requests a connection
* LOST: The connection is lost
*
* An event is generated only once and its state is reseted when the
* relative IO call is requested.
* For example: INPUT -> GSocket_Read()
* CONNECTION -> GSocket_Accept()
*/
SetCallback accepts a combination of these flags so a same callback can
receive different events.
An event is generated only once and its state is reseted when the relative
IO call is requested.
For example: INPUT -> GSocket_Read()
CONNECTION -> GSocket_Accept()
*/
void GSocket_SetCallback(GSocket *socket, GSocketEventFlags event,
/* GSocket_SetCallback:
* Enables the callbacks specified by 'flags'. Note that 'flags'
* may be a combination of flags OR'ed toghether, so the same
* callback function can be made to accept different events.
* The callback function must have the following prototype:
*
* void function(GSocket *socket, GSocketEvent event, char *cdata)
*/
void GSocket_SetCallback(GSocket *socket, GSocketEventFlags flags,
GSocketCallback fallback, char *cdata);
/*
UnsetCallback will disables all fallbacks specified by "event".
NOTE: event may be a combination of flags
*/
void GSocket_UnsetCallback(GSocket *socket, GSocketEventFlags event);
/* GSocket_UnsetCallback:
* Disables all callbacks specified by 'flags', which may be a
* combination of flags OR'ed toghether.
*/
void GSocket_UnsetCallback(GSocket *socket, GSocketEventFlags flags);
/* GAddress */
@@ -199,11 +222,10 @@ void GAddress_destroy(GAddress *address);
void GAddress_SetFamily(GAddress *address, GAddressType type);
GAddressType GAddress_GetFamily(GAddress *address);
/*
The use of any of the next functions will set the address family to the adapted
one. For example if you use GAddress_INET_SetHostName, address family will be AF_INET
implicitely
*/
/* The use of any of the next functions will set the address family to
* the specific one. For example if you use GAddress_INET_SetHostName,
* address family will be implicitly set to AF_INET.
*/
GSocketError GAddress_INET_SetHostName(GAddress *address, const char *hostname);
GSocketError GAddress_INET_SetHostAddress(GAddress *address,
@@ -222,23 +244,11 @@ unsigned short GAddress_INET_GetPort(GAddress *address);
GSocketError GAddress_UNIX_SetPath(GAddress *address, const char *path);
GSocketError GAddress_UNIX_GetPath(GAddress *address, char *path, size_t sbuf);
/*
* System specific functions
*/
/* On systems needing an event id */
void GSocket_SetEventID(GSocket *socket, unsigned long evt_id);
/* On systems which don't have background refresh */
void GSocket_DoEvent(unsigned long evt_id);
#ifdef __cplusplus
};
#endif /* __cplusplus */
#endif
/* wxUSE_SOCKETS */
#endif /* wxUSE_SOCKETS || defined(__GSOCKET_STANDALONE__) */
#endif
/* __GSOCKET_H */
#endif /* __GSOCKET_H */

View File

@@ -56,8 +56,7 @@ extern wxAcceleratorTable wxNullAcceleratorTable;
class wxAcceleratorEntry: public wxObject
{
public:
public:
wxAcceleratorEntry(int flags = 0, int keyCode = 0, int cmd = 0)
{ m_flags = flags; m_keyCode = keyCode; m_command = cmd; }

View File

@@ -80,6 +80,7 @@ private:
/// Set to TRUE while we are in wxYield().
bool m_suppressIdleEvents;
private:
DECLARE_DYNAMIC_CLASS(wxApp)
DECLARE_EVENT_TABLE()
};

View File

@@ -43,56 +43,57 @@ extern const wxChar *wxButtonNameStr;
class wxBitmapButton: public wxButton
{
DECLARE_DYNAMIC_CLASS(wxBitmapButton)
public:
wxBitmapButton();
inline wxBitmapButton( wxWindow *parent, wxWindowID id, const wxBitmap& bitmap,
wxBitmapButton();
inline wxBitmapButton( wxWindow *parent, wxWindowID id, const wxBitmap& bitmap,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize, long style = wxBU_AUTODRAW,
const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxButtonNameStr )
{
Create(parent, id, bitmap, pos, size, style, validator, name);
}
bool Create( wxWindow *parent, wxWindowID id, const wxBitmap& bitmap,
{
Create(parent, id, bitmap, pos, size, style, validator, name);
}
bool Create( wxWindow *parent, wxWindowID id, const wxBitmap& bitmap,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize, long style = wxBU_AUTODRAW,
const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxButtonNameStr);
virtual void SetDefault();
virtual void SetDefault();
void SetLabel( const wxString &label );
wxString GetLabel() const;
virtual void SetLabel( const wxBitmap& bitmap ) { SetBitmapLabel(bitmap); }
void SetLabel( const wxString &label );
wxString GetLabel() const;
virtual void SetLabel( const wxBitmap& bitmap ) { SetBitmapLabel(bitmap); }
wxBitmap& GetBitmapDisabled() const { return (wxBitmap&) m_disabled; }
wxBitmap& GetBitmapFocus() const { return (wxBitmap&) m_focus; }
wxBitmap& GetBitmapLabel() const { return (wxBitmap&) m_bitmap; }
wxBitmap& GetBitmapSelected() const { return (wxBitmap&) m_selected; }
wxBitmap& GetBitmapDisabled() const { return (wxBitmap&) m_disabled; }
wxBitmap& GetBitmapFocus() const { return (wxBitmap&) m_focus; }
wxBitmap& GetBitmapLabel() const { return (wxBitmap&) m_bitmap; }
wxBitmap& GetBitmapSelected() const { return (wxBitmap&) m_selected; }
void SetBitmapDisabled( const wxBitmap& bitmap );
void SetBitmapFocus( const wxBitmap& bitmap );
void SetBitmapLabel( const wxBitmap& bitmap );
void SetBitmapSelected( const wxBitmap& bitmap );
void SetBitmapDisabled( const wxBitmap& bitmap );
void SetBitmapFocus( const wxBitmap& bitmap );
void SetBitmapLabel( const wxBitmap& bitmap );
void SetBitmapSelected( const wxBitmap& bitmap );
virtual bool Enable(bool enable);
virtual bool Enable(bool enable);
// implementation
void HasFocus();
void NotFocus();
void StartSelect();
void EndSelect();
void SetBitmap();
void ApplyWidgetStyle();
void HasFocus();
void NotFocus();
void StartSelect();
void EndSelect();
void SetBitmap();
void ApplyWidgetStyle();
bool m_hasFocus;
bool m_isSelected;
wxBitmap m_bitmap;
wxBitmap m_disabled;
wxBitmap m_focus;
wxBitmap m_selected;
bool m_hasFocus;
bool m_isSelected;
wxBitmap m_bitmap;
wxBitmap m_disabled;
wxBitmap m_focus;
wxBitmap m_selected;
private:
DECLARE_DYNAMIC_CLASS(wxBitmapButton)
};
#endif

View File

@@ -33,10 +33,7 @@ class wxBrush;
class wxBrush: public wxGDIObject
{
DECLARE_DYNAMIC_CLASS(wxBrush)
public:
public:
wxBrush();
wxBrush( const wxColour &colour, int style );
wxBrush( const wxBitmap &stippleBitmap );
@@ -58,7 +55,8 @@ class wxBrush: public wxGDIObject
void Unshare();
// no data :-)
private:
DECLARE_DYNAMIC_CLASS(wxBrush)
};
#endif // __GTKBRUSHH__

View File

@@ -7,7 +7,6 @@
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __GTKBUTTONH__
#define __GTKBUTTONH__
@@ -38,10 +37,7 @@ extern const wxChar *wxButtonNameStr;
class wxButton: public wxControl
{
DECLARE_DYNAMIC_CLASS(wxButton)
public:
public:
wxButton();
inline wxButton(wxWindow *parent, wxWindowID id, const wxString& label,
const wxPoint& pos = wxDefaultPosition,
@@ -66,6 +62,9 @@ class wxButton: public wxControl
// implementation
void ApplyWidgetStyle();
private:
DECLARE_DYNAMIC_CLASS(wxButton)
};
#endif // __GTKBUTTONH__

View File

@@ -7,7 +7,6 @@
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __GTKCHECKBOXH__
#define __GTKCHECKBOXH__
@@ -41,8 +40,6 @@ extern const char *wxCheckBoxNameStr;
class wxCheckBox: public wxControl
{
DECLARE_DYNAMIC_CLASS(wxCheckBox)
public:
wxCheckBox();
wxCheckBox( wxWindow *parent, wxWindowID id, const wxString& label,
@@ -73,6 +70,9 @@ public:
GtkWidget *m_widgetCheckbox;
GtkWidget *m_widgetLabel;
private:
DECLARE_DYNAMIC_CLASS(wxCheckBox)
};
#endif

View File

@@ -36,8 +36,6 @@ class wxCheckListBox;
class wxCheckListBox : public wxListBox
{
DECLARE_DYNAMIC_CLASS(wxCheckListBox)
public:
wxCheckListBox();
wxCheckListBox(wxWindow *parent, wxWindowID id,
@@ -53,6 +51,9 @@ public:
void Check( int index, bool check = TRUE );
int GetItemHeight() const;
private:
DECLARE_DYNAMIC_CLASS(wxCheckListBox)
};
#endif

View File

@@ -38,8 +38,6 @@ extern const wxChar *wxChoiceNameStr;
class wxChoice : public wxControl
{
DECLARE_DYNAMIC_CLASS(wxChoice)
public:
wxChoice();
wxChoice( wxWindow *parent, wxWindowID id,
@@ -97,6 +95,9 @@ public:
void EnableEvents();
void AppendCommon( const wxString &item );
void ApplyWidgetStyle();
private:
DECLARE_DYNAMIC_CLASS(wxChoice)
};

View File

@@ -44,8 +44,6 @@ extern wxClipboard* wxTheClipboard;
class wxClipboard : public wxObject
{
DECLARE_DYNAMIC_CLASS(wxClipboard)
public:
wxClipboard();
~wxClipboard();
@@ -91,6 +89,9 @@ public:
GdkAtom m_targetRequested;
bool m_usePrimary;
wxDataObject *m_receivedData;
private:
DECLARE_DYNAMIC_CLASS(wxClipboard)
};
//-----------------------------------------------------------------------------
@@ -99,12 +100,13 @@ public:
class wxClipboardModule: public wxModule
{
DECLARE_DYNAMIC_CLASS(wxClipboardModule)
public:
wxClipboardModule() {}
bool OnInit();
void OnExit();
private:
DECLARE_DYNAMIC_CLASS(wxClipboardModule)
};
#endif

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