Compare commits

...

84 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
565 changed files with 28918 additions and 21162 deletions

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 13:22, 1999/10/06
# 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 \
@@ -854,6 +892,7 @@ GTK_GUIOBJS = \
settings.o \
slider.o \
spinbutt.o \
spinctrl.o \
statbmp.o \
statbox.o \
statline.o \
@@ -913,6 +952,7 @@ GTK_GUIDEPS = \
settings.d \
slider.d \
spinbutt.d \
spinctrl.d \
statbmp.d \
statbox.d \
statline.d \
@@ -1389,6 +1429,7 @@ MSW_COMMONOBJS = \
mstream.o \
object.o \
objstrm.o \
odbc.o \
paper.o \
prntbase.o \
process.o \
@@ -1478,6 +1519,7 @@ MSW_COMMONDEPS = \
mstream.d \
object.d \
objstrm.d \
odbc.d \
paper.d \
prntbase.d \
process.d \
@@ -1687,6 +1729,74 @@ 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 \
@@ -1727,13 +1837,13 @@ HTMLDEPS = \
search.d \
winpars.d
UNIXOBJS = \
UNIX_OBJS = \
dialup.o \
gsocket.o \
threadpsx.o \
utilsunx.o
UNIXDEPS = \
UNIX_DEPS = \
dialup.d \
gsocket.d \
threadpsx.d \
@@ -1821,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
@@ -1841,7 +1975,7 @@ all: $(OBJECTS) @WX_TARGET_LIBRARY@ @WX_CREATE_LINKS@
@$(INSTALL) -d ./lib
$(SHARED_LD) ./lib/$@ $(OBJECTS) $(EXTRALIBS)
CREATE_LINKS@: @WX_TARGET_LIBRARY@
CREATE_LINKS: @WX_LIBRARY_NAME_SHARED@
@$(RM) ./lib/@WX_LIBRARY_LINK1@
@$(RM) ./lib/@WX_LIBRARY_LINK2@
@$(RM) ./lib/@WX_LIBRARY_LINK3@
@@ -1849,13 +1983,13 @@ CREATE_LINKS@: @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
@@ -1932,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 " "

1473
configure vendored

File diff suppressed because it is too large Load Diff

View File

@@ -446,7 +446,7 @@ dnl WX_INTERFACE_AGE = 0
WX_MAJOR_VERSION_NUMBER=2
WX_MINOR_VERSION_NUMBER=1
WX_RELEASE_NUMBER=0
WX_RELEASE_NUMBER=10
WX_INTERFACE_AGE=0
WX_BINARY_AGE=0
@@ -774,7 +774,7 @@ else
DEFAULT_wxUSE_ZLIB=yes
DEFAULT_wxUSE_LIBPNG=yes
DEFAULT_wxUSE_LIBJPEG=yes
DEFAULT_wxUSE_ODBC=no
DEFAULT_wxUSE_ODBC=yes
DEFAULT_wxUSE_STD_IOSTREAM=no
DEFAULT_wxUSE_FILE=yes
@@ -1672,13 +1672,6 @@ if test "$wxUSE_MOTIF" = 1; then
GUIDIST=MOTIF_DIST
fi
dnl someone explicitly added -ldl to the list of libraries for these targets -
dnl I don't know why has this been done, but let's respect this - with the
dnl exception of the systems which don't have libdl at all (VZ)
if test "$wxUSE_GTK" = 1 || test "$wxUSE_MOTIF" = 1 || test "$wxUSE_WINE" = 1; then
AC_CHECK_LIB(dl, main, GUI_TK_LIBRARY="$GUI_TK_LIBRARY -ldl")
fi
dnl the name of the directory where the files for this toolkit live
TOOLKIT_DIR=`echo ${TOOLKIT} | tr "A-Z" "a-z"`
@@ -1721,95 +1714,101 @@ WX_LIBRARY_LINK3="lib${WX_LIBRARY}.so"
dnl shared library settings
SHARED_LD=
PIC_FLAG=
WX_CREATE_LINKS=
WX_ALL=
WX_ALL_INSTALLED=
if test "$wxUSE_SHARED" = "yes"; then
dnl set target to shared
WX_TARGET_LIBRARY="${WX_LIBRARY_NAME_SHARED}"
case "${host}" in
*-hp-hpux* )
WX_LIBRARY_NAME_SHARED="libwx_${TOOLKIT_DIR}.sl"
SHARED_LD="${CXX} -b -o"
PIC_FLAG="+Z"
;;
*-*-linux* )
SHARED_LD="${CC} -shared -o"
PIC_FLAG="-fPIC"
WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS"
WX_CREATE_LINKS="CREATE_LINKS"
;;
*-*-irix5* | *-*-irix6* )
if test "$GCC" = yes ; then
SHARED_LD="${CC} -shared -o"
PIC_FLAG="-fPIC"
else
SHARED_LD="${CXX} -shared -o"
fi
WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS"
WX_CREATE_LINKS="CREATE_LINKS"
;;
*-*-solaris2* )
if test "$GCC" = yes ; then
SHARED_LD="${CC} -shared -o"
PIC_FLAG="-fPIC"
else
SHARED_LD="${CXX} -G -o"
PIC_FLAG="PIC"
fi
WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS"
WX_CREATE_LINKS="CREATE_LINKS"
;;
*-*-sunos4* )
SHARED_LD="${CC} -shared -o"
PIC_FLAG="-fPIC"
WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS"
WX_CREATE_LINKS="CREATE_LINKS"
;;
*-*-freebsd* | *-*-netbsd*)
SHARED_LD="${CC} -shared -o"
PIC_FLAG="-fPIC"
WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS"
WX_CREATE_LINKS="CREATE_LINKS"
;;
*-*-osf* )
SHARED_LD="${CXX} -shared -o"
PIC_FLAG="-fPIC"
WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS"
WX_CREATE_LINKS="CREATE_LINKS"
;;
*-*-dgux5* )
SHARED_LD="${CXX} -shared -o"
PIC_FLAG="-fPIC"
WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS"
WX_CREATE_LINKS="CREATE_LINKS"
;;
*-*-sysv5* )
SHARED_LD="${CC} -shared -o"
PIC_FLAG="-fPIC"
WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS"
WX_CREATE_LINKS="CREATE_LINKS"
;;
*-*-aix* )
SHARED_LD="/usr/lpp/xlC/bin/makeC++SharedLib -p 0 -o"
;;
*-*-cygwin32* )
dnl only static for now
WX_TARGET_LIBRARY="${WX_LIBRARY_NAME_STATIC}"
;;
*-*-mingw32* )
dnl only static for now
WX_TARGET_LIBRARY="${WX_LIBRARY_NAME_STATIC}"
;;
*-pc-os2_emx )
;;
*)
AC_MSG_ERROR(unknown system type ${host}.)
esac
case "${host}" in
*-hp-hpux* )
WX_LIBRARY_NAME_SHARED="libwx_${TOOLKIT_DIR}.sl"
SHARED_LD="${CXX} -b -o"
PIC_FLAG="+Z"
WX_ALL=${WX_LIBRARY_NAME_SHARED}
;;
*-*-linux* )
SHARED_LD="${CC} -shared -o"
PIC_FLAG="-fPIC"
WX_ALL_INSTALLED="CREATE_INSTALLED_LINKS"
WX_ALL="CREATE_LINKS"
;;
*-*-irix5* | *-*-irix6* )
if test "$GCC" = yes ; then
SHARED_LD="${CC} -shared -o"
PIC_FLAG="-fPIC"
else
SHARED_LD="${CXX} -shared -o"
fi
WX_ALL_INSTALLED="CREATE_INSTALLED_LINKS"
WX_ALL="CREATE_LINKS"
;;
*-*-solaris2* )
if test "$GCC" = yes ; then
SHARED_LD="${CC} -shared -o"
PIC_FLAG="-fPIC"
else
SHARED_LD="${CXX} -G -o"
PIC_FLAG="PIC"
fi
WX_ALL_INSTALLED="CREATE_INSTALLED_LINKS"
WX_ALL="CREATE_LINKS"
;;
*-*-sunos4* )
SHARED_LD="${CC} -shared -o"
PIC_FLAG="-fPIC"
WX_ALL_INSTALLED="CREATE_INSTALLED_LINKS"
WX_ALL="CREATE_LINKS"
;;
*-*-freebsd* | *-*-netbsd*)
SHARED_LD="${CC} -shared -o"
PIC_FLAG="-fPIC"
WX_ALL_INSTALLED="CREATE_INSTALLED_LINKS"
WX_ALL="CREATE_LINKS"
;;
*-*-osf* )
SHARED_LD="${CXX} -shared -o"
PIC_FLAG="-fPIC"
WX_ALL_INSTALLED="CREATE_INSTALLED_LINKS"
WX_ALL="CREATE_LINKS"
;;
*-*-dgux5* )
SHARED_LD="${CXX} -shared -o"
PIC_FLAG="-fPIC"
WX_ALL_INSTALLED="CREATE_INSTALLED_LINKS"
WX_ALL="CREATE_LINKS"
;;
*-*-sysv5* )
SHARED_LD="${CC} -shared -o"
PIC_FLAG="-fPIC"
WX_ALL_INSTALLED="CREATE_INSTALLED_LINKS"
WX_ALL="CREATE_LINKS"
;;
*-*-aix* )
SHARED_LD="/usr/lpp/xlC/bin/makeC++SharedLib -p 0 -o"
WX_ALL=${WX_LIBRARY_NAME_SHARED}
;;
*-*-cygwin32* )
dnl only static for now
WX_TARGET_LIBRARY="${WX_LIBRARY_NAME_STATIC}"
WX_ALL="${WX_LIBRARY_NAME_STATIC}"
;;
*-*-mingw32* )
dnl only static for now
WX_TARGET_LIBRARY="${WX_LIBRARY_NAME_STATIC}"
WX_ALL="${WX_LIBRARY_NAME_STATIC}"
;;
*-pc-os2_emx )
;;
*)
AC_MSG_ERROR(unknown system type ${host}.)
esac
else
dnl set target to static
WX_TARGET_LIBRARY="${WX_LIBRARY_NAME_STATIC}"
WX_ALL="${WX_LIBRARY_NAME_STATIC}"
fi
dnl ------------------------------------------------------------------------
@@ -2335,14 +2334,9 @@ if test "$wxUSE_LONGLONG" = "yes"; then
fi
if test "$wxUSE_SOCKETS" = "yes" ; then
if test "$wxUSE_THREADS" = "yes" ; then
AC_DEFINE(wxUSE_SOCKETS)
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS wxsocket"
INCLUDE_SUBDIRS="$INCLUDE_SUBDIRS protocol"
else
AC_MSG_WARN(Socket classes require --with-threads and won't be compiled without it)
wxUSE_SOCKETS=0
fi
AC_DEFINE(wxUSE_SOCKETS)
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS wxsocket"
INCLUDE_SUBDIRS="$INCLUDE_SUBDIRS protocol"
fi
if test "$wxUSE_DIALUP_MANAGER" = "yes" ; then
@@ -2406,21 +2400,38 @@ HAVE_DL_FUNCS=0
HAVE_SHL_FUNCS=0
if test "$wxUSE_DYNLIB_CLASS" = "yes"; then
dnl the test is a bit complicated because we check for dlopen() both with
dnl and without -ldl
dnl and without -ldl and we also try to find shl_load() if there is no
dnl dlopen() on this system
AC_CHECK_FUNCS(dlopen,
[AC_DEFINE(HAVE_DLOPEN) HAVE_DL_FUNCS=1],
[AC_CHECK_LIB(dl, dlopen,
[AC_DEFINE(HAVE_DLOPEN) HAVE_DL_FUNCS=1])])
AC_CHECK_FUNCS( shl_load,
[AC_DEFINE(HAVE_SHL_LOAD) HAVE_DL_FUNCS=1 HAVE_SHL_FUNCS=1])
[
AC_DEFINE(HAVE_DLOPEN)
HAVE_DL_FUNCS=1
],
[
AC_CHECK_LIB(dl, dlopen,
[
AC_DEFINE(HAVE_DLOPEN)
HAVE_DL_FUNCS=1
LIBS="$LIBS -ldl"
],
[
AC_CHECK_FUNCS(shl_load,
[
AC_DEFINE(HAVE_SHL_LOAD)
HAVE_SHL_FUNCS=1
])
])
])
if test "$HAVE_DL_FUNCS" = 0; then
if test "$USE_UNIX" = 1; then
AC_MSG_WARN("--with-dynlib and --with-odbc will be disabled due to missing shared library support")
wxUSE_ODBC=no
wxUSE_DYNLIB_CLASS=no
else
AC_MSG_WARN("Cannot check dynlib requirements on non-Unix platforms. dynlib remains enabled.")
if test "$HAVE_SHL_FUNCS" = 0; then
if test "$USE_UNIX" = 1; then
AC_MSG_WARN("--with-dynlib and --with-odbc will be disabled due to missing shared library support")
wxUSE_ODBC=no
wxUSE_DYNLIB_CLASS=no
else
AC_MSG_WARN("Cannot check dynlib requirements on non-Unix platforms. dynlib remains enabled.")
fi
fi
fi
fi
@@ -2452,6 +2463,7 @@ dnl ----------------------------------------------------------------
IODBC_C_SRC=""
if test "$wxUSE_ODBC" = "yes" ; then
AC_DEFINE(wxUSE_ODBC)
WXODBCFLAG="-D_IODBC_"
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS db"
fi
@@ -2787,7 +2799,7 @@ dnl ---------------------------------------------------------------------------
GUILIBS="$GUI_TK_LIBRARY $OPENGL_LINK $LIBPNG_LINK $ZLIB_LINK $TOOLKIT_LINK"
dnl all additional libraries (except wxWindows itself) we link with
EXTRA_LIBS="$LIBS $POSIX4_LINK $WCHAR_LINK $THREADS_LINK $DMALLOC_LINK"
EXTRA_LIBS="$LIBS $POSIX4_LINK $WCHAR_LINK $THREADS_LINK $DMALLOC_LINK $DL_LINK"
if test "$wxUSE_GUI" = "yes"; then
EXTRA_LIBS="$EXTRA_LIBS $GUILIBS"
fi
@@ -2807,7 +2819,7 @@ if test "$GXX" = yes ; then
dnl doing this... (VZ)
dnl CXXWARNINGS="-Wall -Werror"
fi
EXTRA_CFLAGS="$WXDEBUG $PROFILE $OPTIMISE $INCLUDES"
EXTRA_CFLAGS="$WXDEBUG $WXODBCFLAG $PROFILE $OPTIMISE $INCLUDES"
CPPFLAGS="-I\${top_srcdir}/include $CPPFLAGS"
CFLAGS="$CFLAGS $EXTRA_CFLAGS"
@@ -2846,8 +2858,8 @@ AC_SUBST(WX_LIBRARY_LINK3)
AC_SUBST(PROGRAM_EXT)
dnl are we supposed to create the links?
AC_SUBST(WX_CREATE_LINKS)
AC_SUBST(WX_CREATE_INSTALLED_LINKS)
AC_SUBST(WX_ALL)
AC_SUBST(WX_ALL_INSTALLED)
AC_SUBST(SHARED_LD)
AC_SUBST(PIC_FLAG)
@@ -2922,6 +2934,7 @@ AC_OUTPUT([
samples/checklst/Makefile
samples/config/Makefile
samples/controls/Makefile
samples/db/Makefile
samples/dialogs/Makefile
samples/docview/Makefile
samples/docvwmdi/Makefile
@@ -2934,11 +2947,13 @@ AC_OUTPUT([
samples/listctrl/Makefile
samples/mdi/Makefile
samples/minifram/Makefile
samples/minimal/Makefile
samples/minimal/Makefile
samples/nettest/Makefile
samples/newgrid/Makefile
samples/notebook/Makefile
samples/printing/Makefile
samples/proplist/Makefile
samples/proplist/Makefile
samples/richedit/Makefile
samples/sashtest/Makefile
samples/scroll/Makefile
samples/splitter/Makefile

View File

@@ -29,6 +29,7 @@
#
# 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
@@ -40,9 +41,9 @@
# 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
@@ -104,7 +105,7 @@ docmdi.cpp C
docview.cpp C
dynarray.cpp C B
dynlib.cpp C B
event.cpp C
event.cpp C B
extended.c C B
ffile.cpp C B
file.cpp C B
@@ -129,6 +130,7 @@ 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
@@ -153,7 +155,7 @@ sckstrm.cpp C S
serbase.cpp C
sizer.cpp C
socket.cpp C S
stream.cpp C
stream.cpp C B
strconv.cpp C B
string.cpp C B
tbarbase.cpp C
@@ -163,7 +165,7 @@ textfile.cpp C B
time.cpp C B
timercmn.cpp C B
tokenzr.cpp C B
txtstrm.cpp C
txtstrm.cpp C B
unzip.c C
url.cpp C S
utilscmn.cpp C B
@@ -276,7 +278,7 @@ gsocket.c M S
dialup.cpp U
threadpsx.cpp U
utilsunx.cpp U
utilsunx.cpp U B
gsocket.c U
gsockgtk.c R
@@ -324,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
@@ -413,7 +416,7 @@ 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
@@ -435,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
@@ -446,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
@@ -475,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
@@ -484,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
@@ -519,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
@@ -536,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
@@ -547,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
@@ -559,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

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

View File

@@ -290,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:
@@ -300,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:
@@ -310,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:
@@ -320,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,7 +28,9 @@
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 . " "
}
@@ -130,6 +133,7 @@ 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

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

View File

@@ -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>
@@ -332,6 +333,25 @@ 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>

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

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

View File

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

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

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

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

@@ -47,6 +47,7 @@ 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 '*'})
@@ -125,6 +126,7 @@ 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
@@ -154,3 +156,5 @@ 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

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

@@ -365,10 +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{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}
@@ -401,14 +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 \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}
@@ -480,7 +481,7 @@ as possible to the C++ spec over time.
\item \helpref{wxSingleChoiceDialog}{wxsinglechoicedialog}
\item \helpref{wxSizeEvent}{wxsizeevent}
\item \helpref{wxSize}{wxsize}
\item \helpref{wxSizer}{wxSizer}
\item \helpref{wxSizer}{wxsizer}
\item wxSizerItem
\item \helpref{wxSlider}{wxslider}
\item \helpref{wxSpinButton}{wxspinbutton}
@@ -488,7 +489,7 @@ as possible to the C++ spec over time.
\item \helpref{wxSplitterWindow}{wxsplitterwindow}
\item \helpref{wxStaticBitmap}{wxstaticbitmap}
\item \helpref{wxStaticBox}{wxstaticbox}
\item \helpref{wxStaticBoxSizer}{wxStaticBoxSizer}
\item \helpref{wxStaticBoxSizer}{wxstaticboxsizer}
\item wxStaticLine
\item \helpref{wxStaticText}{wxstatictext}
\item \helpref{wxStatusBar}{wxstatusbar}

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

@@ -21,7 +21,7 @@
*****************************************************************************/
// needed to resolve the conflict between global T and macro parameter T
#define _WX_ERROR_REMOVE2(x) T("bad index in " #x "::Remove()")
#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)

View File

@@ -28,7 +28,7 @@ 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;
}
@@ -67,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);

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

@@ -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__)
@@ -206,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__)
@@ -873,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 0x0010
#define wxGA_SMOOTH 0x0020
/*
* wxSlider flags

View File

@@ -19,12 +19,14 @@
#if wxUSE_DIALUP_MANAGER
// ----------------------------------------------------------------------------
// constants
// misc
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxArrayString;
extern const wxChar *wxEmptyString;
#define WXDIALUP_MANAGER_DEFAULT_BEACONHOST T("www.yahoo.com")
#define WXDIALUP_MANAGER_DEFAULT_BEACONHOST wxT("www.yahoo.com")
// ----------------------------------------------------------------------------
// A class which groups functions dealing with connecting to the network from a
@@ -65,8 +67,17 @@ public:
// 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
@@ -90,6 +101,14 @@ public:
// 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
@@ -129,8 +148,8 @@ public:
// 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 = T("/usr/bin/pon"),
const wxString& commandHangup = T("/usr/bin/poff")) = 0;
SetConnectCommand(const wxString& commandDial = wxT("/usr/bin/pon"),
const wxString& commandHangup = wxT("/usr/bin/poff")) = 0;
};
// ----------------------------------------------------------------------------
@@ -164,6 +183,7 @@ typedef void (wxObject::*wxDialUpEventFunction)(wxDialUpEvent&);
#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

@@ -151,10 +151,10 @@ private:
// template classes
// ============================================================================
// resolves the name conflict between the T() macor and T typedef: we can't
// use T() inside WX_DEFINE_ARRAY!
#define _WX_ERROR_SIZEOF T("illegal use of DEFINE_ARRAY")
#define _WX_ERROR_REMOVE T("removing inexisting element in wxArray::Remove")
// 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

View File

@@ -897,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;
}
@@ -1319,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

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

@@ -195,10 +195,7 @@ private:
// macros
// ----------------------------------------------------------------------------
#if !defined(__VISAGECPP__)
// VZ: this is ugly (FIXME)
#define M_FONTDATA GetFontData()
#endif
#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

View File

@@ -32,7 +32,7 @@ public:
// 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 = T(""));
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

View File

@@ -100,7 +100,7 @@ public:
const wxSize &size = wxDefaultSize,
long style = wxLC_LIST,
const wxValidator &validator = wxDefaultValidator,
const wxString &name = T("filelist") );
const wxString &name = wxT("filelist") );
void ChangeToListMode();
void ChangeToReportMode();
void ChangeToIconMode();

View File

@@ -475,6 +475,8 @@ class wxGrid : public wxPanel
bool MoveCursorDown();
bool MoveCursorLeft();
bool MoveCursorRight();
bool MovePageDown();
bool MovePageUp();
bool MoveCursorUpBlock();
bool MoveCursorDownBlock();
bool MoveCursorLeftBlock();

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

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

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

View File

@@ -42,12 +42,9 @@ extern const wxChar* wxEmptyString;
class wxComboBox : public wxControl
{
DECLARE_DYNAMIC_CLASS(wxComboBox)
public:
inline wxComboBox() {}
inline wxComboBox(wxWindow *parent, wxWindowID id,
inline wxComboBox() {}
inline wxComboBox(wxWindow *parent, wxWindowID id,
const wxString& value = wxEmptyString,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
@@ -55,11 +52,11 @@ public:
long style = 0,
const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxComboBoxNameStr)
{
Create(parent, id, value, pos, size, n, choices, style, validator, name);
}
~wxComboBox();
bool Create(wxWindow *parent, wxWindowID id,
{
Create(parent, id, value, pos, size, n, choices, style, validator, name);
}
~wxComboBox();
bool Create(wxWindow *parent, wxWindowID id,
const wxString& value = wxEmptyString,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
@@ -68,63 +65,65 @@ public:
const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxComboBoxNameStr);
void Append( const wxString &item );
void Append( const wxString &item, void* clientData );
void Append( const wxString &item, wxClientData* clientData );
void Append( const wxString &item );
void Append( const wxString &item, void* clientData );
void Append( const wxString &item, wxClientData* clientData );
void SetClientData( int n, void* clientData );
void* GetClientData( int n );
void SetClientObject( int n, wxClientData* clientData );
wxClientData* GetClientObject( int n );
void SetClientData( int n, void* clientData );
void* GetClientData( int n );
void SetClientObject( int n, wxClientData* clientData );
wxClientData* GetClientObject( int n );
void SetClientObject( wxClientData *data ) { wxControl::SetClientObject( data ); }
wxClientData *GetClientObject() const { return wxControl::GetClientObject(); }
void SetClientData( void *data ) { wxControl::SetClientData( data ); }
void *GetClientData() const { return wxControl::GetClientData(); }
void SetClientObject( wxClientData *data ) { wxControl::SetClientObject( data ); }
wxClientData *GetClientObject() const { return wxControl::GetClientObject(); }
void SetClientData( void *data ) { wxControl::SetClientData( data ); }
void *GetClientData() const { return wxControl::GetClientData(); }
void Clear();
void Delete( int n );
void Clear();
void Delete( int n );
int FindString( const wxString &item );
int GetSelection() const;
wxString GetString( int n ) const;
wxString GetStringSelection() const;
int Number() const;
void SetSelection( int n );
void SetStringSelection( const wxString &string );
int FindString( const wxString &item );
int GetSelection() const;
wxString GetString( int n ) const;
wxString GetStringSelection() const;
int Number() const;
void SetSelection( int n );
void SetStringSelection( const wxString &string );
wxString GetValue() const;
void SetValue(const wxString& value);
wxString GetValue() const;
void SetValue(const wxString& value);
void Copy();
void Cut();
void Paste();
void SetInsertionPoint( long pos );
void SetInsertionPointEnd();
long GetInsertionPoint() const;
long GetLastPosition() const;
void Replace( long from, long to, const wxString& value );
void Remove( long from, long to );
void SetSelection( long from, long to );
void SetEditable( bool editable );
void Copy();
void Cut();
void Paste();
void SetInsertionPoint( long pos );
void SetInsertionPointEnd();
long GetInsertionPoint() const;
long GetLastPosition() const;
void Replace( long from, long to, const wxString& value );
void Remove( long from, long to );
void SetSelection( long from, long to );
void SetEditable( bool editable );
void OnSize( wxSizeEvent &event );
void OnChar( wxKeyEvent &event );
// implementation
// implementation
bool m_alreadySent;
wxList m_clientDataList;
wxList m_clientObjectList;
void DisableEvents();
void EnableEvents();
void AppendCommon( const wxString &item );
GtkWidget* GetConnectWidget();
bool IsOwnGtkWindow( GdkWindow *window );
void ApplyWidgetStyle();
void OnSize( wxSizeEvent &event );
void OnChar( wxKeyEvent &event );
DECLARE_EVENT_TABLE()
bool m_alreadySent;
wxList m_clientDataList;
wxList m_clientObjectList;
void DisableEvents();
void EnableEvents();
void AppendCommon( const wxString &item );
GtkWidget* GetConnectWidget();
bool IsOwnGtkWindow( GdkWindow *window );
void ApplyWidgetStyle();
private:
DECLARE_DYNAMIC_CLASS(wxComboBox)
DECLARE_EVENT_TABLE()
};
#endif

View File

@@ -31,8 +31,6 @@ class wxControl;
class wxControl : public wxWindow
{
DECLARE_DYNAMIC_CLASS(wxControl)
public:
wxControl();
wxControl( wxWindow *parent,
@@ -50,6 +48,9 @@ public:
protected:
wxString m_label;
char m_chAccel; // enabled to avoid breaking binary compatibility later on
private:
DECLARE_DYNAMIC_CLASS(wxControl)
};
#endif // __GTKCONTROLH__

View File

@@ -64,7 +64,7 @@ public:
#if wxUSE_STATUSBAR
virtual wxStatusBar* CreateStatusBar(int number=1, long style = wxST_SIZEGRIP, wxWindowID id = 0,
const wxString& name = T("statusBar"));
const wxString& name = wxT("statusBar"));
virtual wxStatusBar *OnCreateStatusBar( int number, long style, wxWindowID id,
const wxString& name );
virtual wxStatusBar *GetStatusBar() const;
@@ -78,7 +78,7 @@ public:
const wxString& name = wxToolBarNameStr);
virtual wxToolBar *OnCreateToolBar( long style, wxWindowID id, const wxString& name );
virtual wxToolBar *GetToolBar() const;
void SetToolBar(wxToolBar *toolbar) { m_frameToolBar = toolbar; }
void SetToolBar(wxToolBar *toolbar);
#endif // wxUSE_TOOLBAR
virtual void SetMenuBar( wxMenuBar *menuBar );

View File

@@ -128,11 +128,11 @@ public:
~wxMenu();
// operations
// title
// title
void SetTitle(const wxString& label);
const wxString GetTitle() const;
// menu creation
// menu creation
void AppendSeparator();
void Append(int id, const wxString &item,
const wxString &helpStr = "", bool checkable = FALSE);
@@ -141,6 +141,9 @@ public:
void Append(wxMenuItem *pItem);
void Break() { }
// delete item. don't delete the wxMenu if it's a submenu
void Delete( int id );
// find item by name/id
int FindItem( const wxString itemString ) const;
wxMenuItem *FindItem( int id ) const;

View File

@@ -40,6 +40,7 @@ DECLARE_DYNAMIC_CLASS(wxMenuItem)
public:
wxMenuItem();
~wxMenuItem();
// accessors
// id

View File

@@ -55,8 +55,8 @@ class wxRegion : public wxGDIObject
wxRegion( long x, long y, long w, long h );
wxRegion( const wxPoint& topLeft, const wxPoint& bottomRight );
wxRegion( const wxRect& rect );
wxRegion(void);
~wxRegion(void);
wxRegion();
~wxRegion();
inline wxRegion( const wxRegion& r ): wxGDIObject()
{ Ref(r); }
@@ -66,7 +66,7 @@ class wxRegion : public wxGDIObject
bool operator == ( const wxRegion& region );
bool operator != ( const wxRegion& region );
void Clear(void);
void Clear();
bool Union( long x, long y, long width, long height );
bool Union( const wxRect& rect );
@@ -85,9 +85,10 @@ class wxRegion : public wxGDIObject
bool Xor( const wxRegion& region );
void GetBox( long& x, long& y, long&w, long &h ) const;
wxRect GetBox(void) const ;
wxRect GetBox() const ;
bool Empty(void) const;
bool Empty() const;
bool IsEmpty() const { return Empty(); }
wxRegionContain Contains( long x, long y ) const;
wxRegionContain Contains( long x, long y, long w, long h ) const;
@@ -97,39 +98,38 @@ class wxRegion : public wxGDIObject
public:
wxList *GetRectList() const;
GdkRegion *GetRegion(void) const;
GdkRegion *GetRegion() const;
};
class wxRegionIterator: public wxObject
{
DECLARE_DYNAMIC_CLASS(wxRegionIterator);
public:
wxRegionIterator(void);
public:
wxRegionIterator();
wxRegionIterator(const wxRegion& region);
void Reset(void) { m_current = 0; }
void Reset() { m_current = 0; }
void Reset(const wxRegion& region);
operator bool (void) const;
bool HaveRects(void) const;
operator bool () const;
bool HaveRects() const;
void operator ++ (void);
void operator ++ ();
void operator ++ (int);
long GetX(void) const;
long GetY(void) const;
long GetW(void) const;
long GetWidth(void) const { return GetW(); }
long GetH(void) const;
long GetHeight(void) const { return GetH(); }
long GetX() const;
long GetY() const;
long GetW() const;
long GetWidth() const { return GetW(); }
long GetH() const;
long GetHeight() const { return GetH(); }
wxRect GetRect() const { return wxRect(GetX(), GetY(), GetWidth(), GetHeight()); }
private:
long m_current;
wxRegion m_region;
private:
long m_current;
wxRegion m_region;
private:
DECLARE_DYNAMIC_CLASS(wxRegionIterator);
};

View File

@@ -8,7 +8,7 @@
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __GTKSPINPUTTH__
#ifndef __GTKSPINBUTTH__
#define __GTKSPINBUTTH__
#ifdef __GNUG__
@@ -21,8 +21,6 @@
class wxSpinButton : public wxSpinButtonBase
{
DECLARE_DYNAMIC_CLASS(wxSpinButton)
public:
wxSpinButton() { }
wxSpinButton( wxWindow *parent, wxWindowID id = -1,
@@ -31,7 +29,6 @@ public:
{
Create(parent, id, pos, size, style, name);
}
~wxSpinButton();
bool Create( wxWindow *parent, wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
@@ -54,6 +51,7 @@ public:
private:
DECLARE_EVENT_TABLE()
DECLARE_DYNAMIC_CLASS(wxSpinButton)
};
#endif

62
include/wx/gtk/spinctrl.h Normal file
View File

@@ -0,0 +1,62 @@
/////////////////////////////////////////////////////////////////////////////
// Name: spinctrl.h
// Purpose: wxSpinCtrl class
// Author: Robert Roebling
// Modified by:
// RCS-ID: $Id$
// Copyright: (c) Robert Roebling
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __GTKSPINCTRLH__
#define __GTKSPINCTRLH__
#ifdef __GNUG__
#pragma interface
#endif
//-----------------------------------------------------------------------------
// wxSpinButton
//-----------------------------------------------------------------------------
class wxSpinCtrl : public wxControl
{
public:
wxSpinCtrl() {}
wxSpinCtrl(wxWindow *parent,
wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxSP_ARROW_KEYS,
int min = 0, int max = 100, int initial = 0,
const wxString& name = _T("wxSpinCtrl"))
{
Create(parent, id, pos, size, style, min, max, initial, name);
}
bool Create(wxWindow *parent,
wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxSP_ARROW_KEYS,
int min = 0, int max = 100, int initial = 0,
const wxString& name = _T("wxSpinCtrl"));
virtual int GetValue() const;
virtual void SetValue( int value );
virtual void SetRange( int minVal, int maxVal );
virtual int GetMin() const;
virtual int GetMax() const;
bool IsOwnGtkWindow( GdkWindow *window );
void ApplyWidgetStyle();
GtkAdjustment *m_adjust;
float m_oldPos;
private:
DECLARE_DYNAMIC_CLASS(wxSpinCtrl)
};
#endif
// __GTKSPINCTRLH__

View File

@@ -36,66 +36,74 @@ typedef enum
typedef struct _GtkMyFixed GtkMyFixed;
typedef struct _GtkMyFixedClass GtkMyFixedClass;
typedef struct _GtkMyFixedChild GtkMyFixedChild;
struct _GtkMyFixed
{
GtkContainer container;
GList *children;
#if (GTK_MINOR_VERSION > 0)
GtkMyShadowType shadow_type;
#endif
guint width;
guint height;
guint xoffset;
guint yoffset;
GdkWindow *bin_window;
GdkVisibilityState visibility;
gulong configure_serial;
gint scroll_x;
gint scroll_y;
gboolean clear_on_draw;
};
struct _GtkMyFixedClass
{
GtkContainerClass parent_class;
#if (GTK_MINOR_VERSION > 0)
void (*set_scroll_adjustments) (GtkMyFixed *myfixed,
GtkAdjustment *hadjustment,
GtkAdjustment *vadjustment);
#endif
};
struct _GtkMyFixedChild
{
GtkWidget *widget;
gint16 x;
gint16 y;
gint16 width;
gint16 height;
};
guint gtk_myfixed_get_type (void);
GtkWidget* gtk_myfixed_new (void);
#if (GTK_MINOR_VERSION > 0)
void gtk_myfixed_set_shadow_type (GtkMyFixed *myfixed,
GtkMyShadowType type);
#endif
void gtk_my_fixed_set_clear (GtkMyFixed *myfixed,
gboolean clear);
void gtk_myfixed_scroll (GtkMyFixed *myfixed,
gint dx,
gint dy);
void gtk_myfixed_put (GtkMyFixed *myfixed,
GtkWidget *widget,
gint16 x,
gint16 y,
gint16 width,
gint16 height);
gint x,
gint y,
gint width,
gint height);
void gtk_myfixed_move (GtkMyFixed *myfixed,
GtkWidget *widget,
gint16 x,
gint16 y );
gint x,
gint y );
void gtk_myfixed_resize (GtkMyFixed *myfixed,
GtkWidget *widget,
gint16 width,
gint16 height );
gint width,
gint height );
void gtk_myfixed_set_size (GtkMyFixed *myfixed,
GtkWidget *widget,
gint16 x,
gint16 y,
gint16 width,
gint16 height);
gint x,
gint y,
gint width,
gint height);
#ifdef __cplusplus
}
#endif /* __cplusplus */

View File

@@ -172,14 +172,9 @@ public:
float m_oldHorizontalPos;
float m_oldVerticalPos;
// we need an extra XGC flag set to get exposed
// events from overlapping children upon moving
// them. this flag will be set in this GC and
// the GC will be used in wxWindow::ScrollWindow().
GdkGC *m_scrollGC;
// extra (wxGTK-specific) flags
bool m_needParent:1; /* ! wxFrame, wxDialog, wxNotebookPage ? */
bool m_noExpose:1; /* wxGLCanvas has its own redrawing */
bool m_hasScrolling:1;
bool m_isScrolling:1;
bool m_hasVMT:1;
@@ -188,7 +183,7 @@ public:
bool m_isStaticBox:1; /* faster than IS_KIND_OF */
bool m_isRadioButton:1; /* faster than IS_KIND_OF */
bool m_isFrame:1; /* faster than IS_KIND_OF */
bool m_acceptsFocus:1; /* ! wxStaticBox etc. */
bool m_acceptsFocus:1; /* not wxStaticBox, not wxStaticBitmap etc. */
// these are true if the style were set before the widget was realized
// (typcally in the constructor) but the actual GTK style must not be set
@@ -196,13 +191,7 @@ public:
bool m_delayedFont:1;
bool m_delayedForegroundColour:1;
bool m_delayedBackgroundColour:1;
bool m_delayedCursor:1;
// the cursor is set in OnInternalIdle(). this fields holds
// a reference to the cursor currently set in theGdk window
// so that we don't have to set it more than once
wxCursor m_currentGdkCursor;
// contains GTK's widgets internal information about non-default widget
// font and colours. we create one for each widget that gets any
// non-default attribute set via SetFont() or SetForegroundColour() /

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

View File

@@ -42,12 +42,9 @@ extern const wxChar* wxEmptyString;
class wxComboBox : public wxControl
{
DECLARE_DYNAMIC_CLASS(wxComboBox)
public:
inline wxComboBox() {}
inline wxComboBox(wxWindow *parent, wxWindowID id,
inline wxComboBox() {}
inline wxComboBox(wxWindow *parent, wxWindowID id,
const wxString& value = wxEmptyString,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
@@ -55,11 +52,11 @@ public:
long style = 0,
const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxComboBoxNameStr)
{
Create(parent, id, value, pos, size, n, choices, style, validator, name);
}
~wxComboBox();
bool Create(wxWindow *parent, wxWindowID id,
{
Create(parent, id, value, pos, size, n, choices, style, validator, name);
}
~wxComboBox();
bool Create(wxWindow *parent, wxWindowID id,
const wxString& value = wxEmptyString,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
@@ -68,63 +65,65 @@ public:
const wxValidator& validator = wxDefaultValidator,
const wxString& name = wxComboBoxNameStr);
void Append( const wxString &item );
void Append( const wxString &item, void* clientData );
void Append( const wxString &item, wxClientData* clientData );
void Append( const wxString &item );
void Append( const wxString &item, void* clientData );
void Append( const wxString &item, wxClientData* clientData );
void SetClientData( int n, void* clientData );
void* GetClientData( int n );
void SetClientObject( int n, wxClientData* clientData );
wxClientData* GetClientObject( int n );
void SetClientData( int n, void* clientData );
void* GetClientData( int n );
void SetClientObject( int n, wxClientData* clientData );
wxClientData* GetClientObject( int n );
void SetClientObject( wxClientData *data ) { wxControl::SetClientObject( data ); }
wxClientData *GetClientObject() const { return wxControl::GetClientObject(); }
void SetClientData( void *data ) { wxControl::SetClientData( data ); }
void *GetClientData() const { return wxControl::GetClientData(); }
void SetClientObject( wxClientData *data ) { wxControl::SetClientObject( data ); }
wxClientData *GetClientObject() const { return wxControl::GetClientObject(); }
void SetClientData( void *data ) { wxControl::SetClientData( data ); }
void *GetClientData() const { return wxControl::GetClientData(); }
void Clear();
void Delete( int n );
void Clear();
void Delete( int n );
int FindString( const wxString &item );
int GetSelection() const;
wxString GetString( int n ) const;
wxString GetStringSelection() const;
int Number() const;
void SetSelection( int n );
void SetStringSelection( const wxString &string );
int FindString( const wxString &item );
int GetSelection() const;
wxString GetString( int n ) const;
wxString GetStringSelection() const;
int Number() const;
void SetSelection( int n );
void SetStringSelection( const wxString &string );
wxString GetValue() const;
void SetValue(const wxString& value);
wxString GetValue() const;
void SetValue(const wxString& value);
void Copy();
void Cut();
void Paste();
void SetInsertionPoint( long pos );
void SetInsertionPointEnd();
long GetInsertionPoint() const;
long GetLastPosition() const;
void Replace( long from, long to, const wxString& value );
void Remove( long from, long to );
void SetSelection( long from, long to );
void SetEditable( bool editable );
void Copy();
void Cut();
void Paste();
void SetInsertionPoint( long pos );
void SetInsertionPointEnd();
long GetInsertionPoint() const;
long GetLastPosition() const;
void Replace( long from, long to, const wxString& value );
void Remove( long from, long to );
void SetSelection( long from, long to );
void SetEditable( bool editable );
void OnSize( wxSizeEvent &event );
void OnChar( wxKeyEvent &event );
// implementation
// implementation
bool m_alreadySent;
wxList m_clientDataList;
wxList m_clientObjectList;
void DisableEvents();
void EnableEvents();
void AppendCommon( const wxString &item );
GtkWidget* GetConnectWidget();
bool IsOwnGtkWindow( GdkWindow *window );
void ApplyWidgetStyle();
void OnSize( wxSizeEvent &event );
void OnChar( wxKeyEvent &event );
DECLARE_EVENT_TABLE()
bool m_alreadySent;
wxList m_clientDataList;
wxList m_clientObjectList;
void DisableEvents();
void EnableEvents();
void AppendCommon( const wxString &item );
GtkWidget* GetConnectWidget();
bool IsOwnGtkWindow( GdkWindow *window );
void ApplyWidgetStyle();
private:
DECLARE_DYNAMIC_CLASS(wxComboBox)
DECLARE_EVENT_TABLE()
};
#endif

View File

@@ -31,8 +31,6 @@ class wxControl;
class wxControl : public wxWindow
{
DECLARE_DYNAMIC_CLASS(wxControl)
public:
wxControl();
wxControl( wxWindow *parent,
@@ -50,6 +48,9 @@ public:
protected:
wxString m_label;
char m_chAccel; // enabled to avoid breaking binary compatibility later on
private:
DECLARE_DYNAMIC_CLASS(wxControl)
};
#endif // __GTKCONTROLH__

View File

@@ -64,7 +64,7 @@ public:
#if wxUSE_STATUSBAR
virtual wxStatusBar* CreateStatusBar(int number=1, long style = wxST_SIZEGRIP, wxWindowID id = 0,
const wxString& name = T("statusBar"));
const wxString& name = wxT("statusBar"));
virtual wxStatusBar *OnCreateStatusBar( int number, long style, wxWindowID id,
const wxString& name );
virtual wxStatusBar *GetStatusBar() const;
@@ -78,7 +78,7 @@ public:
const wxString& name = wxToolBarNameStr);
virtual wxToolBar *OnCreateToolBar( long style, wxWindowID id, const wxString& name );
virtual wxToolBar *GetToolBar() const;
void SetToolBar(wxToolBar *toolbar) { m_frameToolBar = toolbar; }
void SetToolBar(wxToolBar *toolbar);
#endif // wxUSE_TOOLBAR
virtual void SetMenuBar( wxMenuBar *menuBar );

View File

@@ -128,11 +128,11 @@ public:
~wxMenu();
// operations
// title
// title
void SetTitle(const wxString& label);
const wxString GetTitle() const;
// menu creation
// menu creation
void AppendSeparator();
void Append(int id, const wxString &item,
const wxString &helpStr = "", bool checkable = FALSE);
@@ -141,6 +141,9 @@ public:
void Append(wxMenuItem *pItem);
void Break() { }
// delete item. don't delete the wxMenu if it's a submenu
void Delete( int id );
// find item by name/id
int FindItem( const wxString itemString ) const;
wxMenuItem *FindItem( int id ) const;

View File

@@ -40,6 +40,7 @@ DECLARE_DYNAMIC_CLASS(wxMenuItem)
public:
wxMenuItem();
~wxMenuItem();
// accessors
// id

View File

@@ -55,8 +55,8 @@ class wxRegion : public wxGDIObject
wxRegion( long x, long y, long w, long h );
wxRegion( const wxPoint& topLeft, const wxPoint& bottomRight );
wxRegion( const wxRect& rect );
wxRegion(void);
~wxRegion(void);
wxRegion();
~wxRegion();
inline wxRegion( const wxRegion& r ): wxGDIObject()
{ Ref(r); }
@@ -66,7 +66,7 @@ class wxRegion : public wxGDIObject
bool operator == ( const wxRegion& region );
bool operator != ( const wxRegion& region );
void Clear(void);
void Clear();
bool Union( long x, long y, long width, long height );
bool Union( const wxRect& rect );
@@ -85,9 +85,10 @@ class wxRegion : public wxGDIObject
bool Xor( const wxRegion& region );
void GetBox( long& x, long& y, long&w, long &h ) const;
wxRect GetBox(void) const ;
wxRect GetBox() const ;
bool Empty(void) const;
bool Empty() const;
bool IsEmpty() const { return Empty(); }
wxRegionContain Contains( long x, long y ) const;
wxRegionContain Contains( long x, long y, long w, long h ) const;
@@ -97,39 +98,38 @@ class wxRegion : public wxGDIObject
public:
wxList *GetRectList() const;
GdkRegion *GetRegion(void) const;
GdkRegion *GetRegion() const;
};
class wxRegionIterator: public wxObject
{
DECLARE_DYNAMIC_CLASS(wxRegionIterator);
public:
wxRegionIterator(void);
public:
wxRegionIterator();
wxRegionIterator(const wxRegion& region);
void Reset(void) { m_current = 0; }
void Reset() { m_current = 0; }
void Reset(const wxRegion& region);
operator bool (void) const;
bool HaveRects(void) const;
operator bool () const;
bool HaveRects() const;
void operator ++ (void);
void operator ++ ();
void operator ++ (int);
long GetX(void) const;
long GetY(void) const;
long GetW(void) const;
long GetWidth(void) const { return GetW(); }
long GetH(void) const;
long GetHeight(void) const { return GetH(); }
long GetX() const;
long GetY() const;
long GetW() const;
long GetWidth() const { return GetW(); }
long GetH() const;
long GetHeight() const { return GetH(); }
wxRect GetRect() const { return wxRect(GetX(), GetY(), GetWidth(), GetHeight()); }
private:
long m_current;
wxRegion m_region;
private:
long m_current;
wxRegion m_region;
private:
DECLARE_DYNAMIC_CLASS(wxRegionIterator);
};

View File

@@ -8,7 +8,7 @@
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __GTKSPINPUTTH__
#ifndef __GTKSPINBUTTH__
#define __GTKSPINBUTTH__
#ifdef __GNUG__
@@ -21,8 +21,6 @@
class wxSpinButton : public wxSpinButtonBase
{
DECLARE_DYNAMIC_CLASS(wxSpinButton)
public:
wxSpinButton() { }
wxSpinButton( wxWindow *parent, wxWindowID id = -1,
@@ -31,7 +29,6 @@ public:
{
Create(parent, id, pos, size, style, name);
}
~wxSpinButton();
bool Create( wxWindow *parent, wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
@@ -54,6 +51,7 @@ public:
private:
DECLARE_EVENT_TABLE()
DECLARE_DYNAMIC_CLASS(wxSpinButton)
};
#endif

View File

@@ -0,0 +1,62 @@
/////////////////////////////////////////////////////////////////////////////
// Name: spinctrl.h
// Purpose: wxSpinCtrl class
// Author: Robert Roebling
// Modified by:
// RCS-ID: $Id$
// Copyright: (c) Robert Roebling
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __GTKSPINCTRLH__
#define __GTKSPINCTRLH__
#ifdef __GNUG__
#pragma interface
#endif
//-----------------------------------------------------------------------------
// wxSpinButton
//-----------------------------------------------------------------------------
class wxSpinCtrl : public wxControl
{
public:
wxSpinCtrl() {}
wxSpinCtrl(wxWindow *parent,
wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxSP_ARROW_KEYS,
int min = 0, int max = 100, int initial = 0,
const wxString& name = _T("wxSpinCtrl"))
{
Create(parent, id, pos, size, style, min, max, initial, name);
}
bool Create(wxWindow *parent,
wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxSP_ARROW_KEYS,
int min = 0, int max = 100, int initial = 0,
const wxString& name = _T("wxSpinCtrl"));
virtual int GetValue() const;
virtual void SetValue( int value );
virtual void SetRange( int minVal, int maxVal );
virtual int GetMin() const;
virtual int GetMax() const;
bool IsOwnGtkWindow( GdkWindow *window );
void ApplyWidgetStyle();
GtkAdjustment *m_adjust;
float m_oldPos;
private:
DECLARE_DYNAMIC_CLASS(wxSpinCtrl)
};
#endif
// __GTKSPINCTRLH__

View File

@@ -36,66 +36,74 @@ typedef enum
typedef struct _GtkMyFixed GtkMyFixed;
typedef struct _GtkMyFixedClass GtkMyFixedClass;
typedef struct _GtkMyFixedChild GtkMyFixedChild;
struct _GtkMyFixed
{
GtkContainer container;
GList *children;
#if (GTK_MINOR_VERSION > 0)
GtkMyShadowType shadow_type;
#endif
guint width;
guint height;
guint xoffset;
guint yoffset;
GdkWindow *bin_window;
GdkVisibilityState visibility;
gulong configure_serial;
gint scroll_x;
gint scroll_y;
gboolean clear_on_draw;
};
struct _GtkMyFixedClass
{
GtkContainerClass parent_class;
#if (GTK_MINOR_VERSION > 0)
void (*set_scroll_adjustments) (GtkMyFixed *myfixed,
GtkAdjustment *hadjustment,
GtkAdjustment *vadjustment);
#endif
};
struct _GtkMyFixedChild
{
GtkWidget *widget;
gint16 x;
gint16 y;
gint16 width;
gint16 height;
};
guint gtk_myfixed_get_type (void);
GtkWidget* gtk_myfixed_new (void);
#if (GTK_MINOR_VERSION > 0)
void gtk_myfixed_set_shadow_type (GtkMyFixed *myfixed,
GtkMyShadowType type);
#endif
void gtk_my_fixed_set_clear (GtkMyFixed *myfixed,
gboolean clear);
void gtk_myfixed_scroll (GtkMyFixed *myfixed,
gint dx,
gint dy);
void gtk_myfixed_put (GtkMyFixed *myfixed,
GtkWidget *widget,
gint16 x,
gint16 y,
gint16 width,
gint16 height);
gint x,
gint y,
gint width,
gint height);
void gtk_myfixed_move (GtkMyFixed *myfixed,
GtkWidget *widget,
gint16 x,
gint16 y );
gint x,
gint y );
void gtk_myfixed_resize (GtkMyFixed *myfixed,
GtkWidget *widget,
gint16 width,
gint16 height );
gint width,
gint height );
void gtk_myfixed_set_size (GtkMyFixed *myfixed,
GtkWidget *widget,
gint16 x,
gint16 y,
gint16 width,
gint16 height);
gint x,
gint y,
gint width,
gint height);
#ifdef __cplusplus
}
#endif /* __cplusplus */

View File

@@ -172,14 +172,9 @@ public:
float m_oldHorizontalPos;
float m_oldVerticalPos;
// we need an extra XGC flag set to get exposed
// events from overlapping children upon moving
// them. this flag will be set in this GC and
// the GC will be used in wxWindow::ScrollWindow().
GdkGC *m_scrollGC;
// extra (wxGTK-specific) flags
bool m_needParent:1; /* ! wxFrame, wxDialog, wxNotebookPage ? */
bool m_noExpose:1; /* wxGLCanvas has its own redrawing */
bool m_hasScrolling:1;
bool m_isScrolling:1;
bool m_hasVMT:1;
@@ -188,7 +183,7 @@ public:
bool m_isStaticBox:1; /* faster than IS_KIND_OF */
bool m_isRadioButton:1; /* faster than IS_KIND_OF */
bool m_isFrame:1; /* faster than IS_KIND_OF */
bool m_acceptsFocus:1; /* ! wxStaticBox etc. */
bool m_acceptsFocus:1; /* not wxStaticBox, not wxStaticBitmap etc. */
// these are true if the style were set before the widget was realized
// (typcally in the constructor) but the actual GTK style must not be set
@@ -196,13 +191,7 @@ public:
bool m_delayedFont:1;
bool m_delayedForegroundColour:1;
bool m_delayedBackgroundColour:1;
bool m_delayedCursor:1;
// the cursor is set in OnInternalIdle(). this fields holds
// a reference to the cursor currently set in theGdk window
// so that we don't have to set it more than once
wxCursor m_currentGdkCursor;
// contains GTK's widgets internal information about non-default widget
// font and colours. we create one for each widget that gets any
// non-default attribute set via SetFont() or SetForegroundColour() /

View File

@@ -38,7 +38,7 @@ class wxHtmlContainerCell;
class WXDLLEXPORT wxHtmlCell : public wxObject
{
public:
wxHtmlCell() : wxObject() {m_Next = NULL; m_Parent = NULL; m_Width = m_Height = m_Descent = 0;};
wxHtmlCell() : wxObject() {m_Next = NULL; m_Parent = NULL; m_Width = m_Height = m_Descent = 0; m_CanLiveOnPagebreak = TRUE;}
virtual ~wxHtmlCell() {if (m_Next) delete m_Next;};
void SetParent(wxHtmlContainerCell *p) {m_Parent = p;}
@@ -94,6 +94,20 @@ class WXDLLEXPORT wxHtmlCell : public wxObject
// Parent is pointer to wxHtmlWindow that generated the event
// HINT: if this handling is not enough for you you should use
// wxHtmlBinderCell
virtual bool AdjustPagebreak(int *pagebreak);
// This method used to adjust pagebreak position. The parameter is
// variable that contains y-coordinate of page break (= horizontal line that
// should not be crossed by words, images etc.). If this cell cannot be divided
// into two pieces (each one on another page) then it moves the pagebreak
// few pixels up.
//
// Returned value : true if pagebreak was modified, false otherwise
// Usage : while (container->AdjustPagebreak(&p)) {}
void SetCanLiveOnPagebreak(bool can) {m_CanLiveOnPagebreak = can;}
// Sets cell's behaviour on pagebreaks (see AdjustPagebreak). Default
// is true - the cell can be split on two pages
protected:
@@ -108,6 +122,8 @@ class WXDLLEXPORT wxHtmlCell : public wxObject
// position where the fragment is drawn
wxString m_Link;
// destination address if this fragment is hypertext link, "" otherwise
bool m_CanLiveOnPagebreak;
// true if this cell can be placed on pagebreak, false otherwise
};
@@ -175,6 +191,7 @@ class WXDLLEXPORT wxHtmlContainerCell : public wxHtmlCell
virtual void Layout(int w);
virtual void Draw(wxDC& dc, int x, int y, int view_y1, int view_y2);
virtual void DrawInvisible(wxDC& dc, int x, int y);
virtual bool AdjustPagebreak(int *pagebreak);
void InsertCell(wxHtmlCell *cell);
// insert cell at the end of m_Cells list

View File

@@ -77,8 +77,8 @@
#define HTML_COND_ISIMAGEMAP 2
// Finds imagemap of 'param' name (pointer to wxString).
// (used exclusively by mod_image.cpp)
// (used exclusively by m_image.cpp)
#define HTML_COND_USER 10000
// User-defined conditions should start from this number
@@ -94,6 +94,8 @@
/* size of temporary buffer used during parsing */
#define HTML_REALLOC_STEP 32
/* steps of array reallocation */
#define HTML_PRINT_MAX_PAGES 999
/* maximum number of pages printable via html printing */
#endif
#endif

View File

@@ -70,25 +70,6 @@ class WXDLLEXPORT wxHtmlWindow : public wxScrolledWindow
{
DECLARE_DYNAMIC_CLASS(wxHtmlWindow)
private:
bool m_tmpMouseMoved;
// a flag indicated if mouse moved
// (if TRUE we will try to change cursor in last call to OnIdle)
bool m_tmpCanDraw;
// if FALSE contents of the window is not redrawn
// (in order to avoid ugly bliking)
static wxList m_Filters;
// list of HTML filters
static wxHtmlFilter *m_DefaultFilter;
// this filter is used when no filter is able to read some file
HtmlHistoryArray m_History;
int m_HistoryPos;
// browser history
bool m_HistoryOn;
// if this FLAG is false, items are not added to history
public:
wxHtmlWindow() : wxScrolledWindow() {};
wxHtmlWindow(wxWindow *parent, wxWindowID id = -1,
@@ -188,6 +169,7 @@ class WXDLLEXPORT wxHtmlWindow : public wxScrolledWindow
virtual wxHtmlFilter *GetDefaultFilter() {return new wxHtmlFilterPlainText;}
// returns new filter (will be stored into m_DefaultFilter variable)
protected:
wxHtmlContainerCell *m_Cell;
// This is pointer to the first cell in parsed data.
@@ -215,6 +197,27 @@ class WXDLLEXPORT wxHtmlWindow : public wxScrolledWindow
int m_Style;
private:
bool m_tmpMouseMoved;
// a flag indicated if mouse moved
// (if TRUE we will try to change cursor in last call to OnIdle)
wxString m_tmpLastLink;
// contains last link name
bool m_tmpCanDraw;
// if FALSE contents of the window is not redrawn
// (in order to avoid ugly bliking)
static wxList m_Filters;
// list of HTML filters
static wxHtmlFilter *m_DefaultFilter;
// this filter is used when no filter is able to read some file
HtmlHistoryArray m_History;
int m_HistoryPos;
// browser history
bool m_HistoryOn;
// if this FLAG is false, items are not added to history
DECLARE_EVENT_TABLE()
};

View File

@@ -356,14 +356,14 @@ public:
static void CleanUpHandlers();
static void InitStandardHandlers();
protected:
static wxList sm_handlers;
};
extern void wxInitAllImageHandlers();
extern void WXDLLEXPORT wxInitAllImageHandlers();
#endif
// _WX_IMAGE_H_

View File

@@ -32,7 +32,7 @@
// gettext() style macro (notice that xgettext should be invoked with "-k_"
// option to extract the strings inside _() from the sources)
#ifndef WXINTL_NO_GETTEXT_MACRO
#define _(str) wxGetTranslation(T(str))
#define _(str) wxGetTranslation(wxT(str))
#endif
// ----------------------------------------------------------------------------

View File

@@ -132,6 +132,13 @@ public:
bool HasPendingMessages() const { return m_bHasMessages; }
// only one sink is active at each moment
// flush the active target if any
static void FlushActive()
{
wxLog *log = GetActiveTarget();
if ( log )
log->Flush();
}
// get current log target, will call wxApp::CreateLogTarget() to
// create one if none exists
static wxLog *GetActiveTarget();
@@ -473,12 +480,12 @@ DECLARE_LOG_FUNCTION2(SysError, long lErrCode);
// will take us immediately to the place of the failed API
#ifdef __VISUALC__
#define wxLogApiError(api, rc) \
wxLogDebug(T("%s(%d): '%s' failed with error 0x%08lx (%s)."), \
wxLogDebug(wxT("%s(%d): '%s' failed with error 0x%08lx (%s)."), \
__TFILE__, __LINE__, api, \
rc, wxSysErrorMsg(rc))
#else // !VC++
#define wxLogApiError(api, rc) \
wxLogDebug(T("In file %s at line %d: '%s' failed with " \
wxLogDebug(wxT("In file %s at line %d: '%s' failed with " \
"error 0x%08lx (%s)."), \
__TFILE__, __LINE__, api, \
rc, wxSysErrorMsg(rc))

View File

@@ -1056,4 +1056,3 @@ __END_DECLS
long nothing ;
} ;
#endif /* !_GUSI_ */

View File

@@ -51,4 +51,3 @@ protected:
};
#endif
// _WX_STATBAR_H_

View File

@@ -32,11 +32,7 @@ class wxMimeTypesManagerImpl;
// the accessors *must* be checked!
class WXDLLEXPORT wxFileType
{
#ifdef __MWERKS__
friend class wxMimeTypesManagerImpl; // it has access to m_impl
#else
friend wxMimeTypesManagerImpl; // it has access to m_impl
#endif
friend class WXDLLEXPORT wxMimeTypesManagerImpl; // it has access to m_impl
public:
// An object of this class must be passed to Get{Open|Print}Command. The

View File

@@ -110,7 +110,7 @@ class WXDLLEXPORT wxClipboardClient : public wxObject
public:
/* This list should be filled in with strings indicating the formats
this client can provide. Almost all clients will provide "TEXT(".
this client can provide. Almost all clients will provide "TEXT".
Format names should be 4 characters long, so things will work
out on the Macintosh */
wxStringList formats;
@@ -147,7 +147,7 @@ class WXDLLEXPORT wxClipboard : public wxObject
/* Set the clipboard string; does not require a client. */
void SetClipboardString(char *, long time);
/* Get data from the clipboard in the format "TEXT(". */
/* Get data from the clipboard in the format "TEXT". */
char *GetClipboardString(long time);
/* Get data from the clipboard */

View File

@@ -92,7 +92,7 @@ public:
// the string ID identifies the format of clipboard or DnD data. a word
// processor would e.g. add a wxTextDataObject and a wxPrivateDataObject
// to the clipboard - the latter with the Id "WXWORD_FORMAT(".
// to the clipboard - the latter with the Id "WXWORD_FORMAT".
void SetId( const wxString& id )
{ m_id = id; }

View File

@@ -139,17 +139,17 @@ WXDLLEXPORT_DATA(extern HFONT) wxSTATUS_LINE_FONT;
* for this combination of CTl3D/FAFA settings
*/
#define STATIC_CLASS T("STATIC")
#define STATIC_CLASS wxT("STATIC")
#define STATIC_FLAGS (SS_LEFT|WS_CHILD|WS_VISIBLE)
#define CHECK_CLASS T("BUTTON")
#define CHECK_CLASS wxT("BUTTON")
#define CHECK_FLAGS (BS_AUTOCHECKBOX|WS_TABSTOP|WS_CHILD)
#define CHECK_IS_FAFA FALSE
#define RADIO_CLASS T("BUTTON")
#define RADIO_CLASS wxT("BUTTON")
#define RADIO_FLAGS (BS_AUTORADIOBUTTON|WS_CHILD|WS_VISIBLE)
#define RADIO_SIZE 20
#define RADIO_IS_FAFA FALSE
#define PURE_WINDOWS
#define GROUP_CLASS T("BUTTON")
#define GROUP_CLASS wxT("BUTTON")
#define GROUP_FLAGS (BS_GROUPBOX|WS_CHILD|WS_VISIBLE)
/*

View File

@@ -13,7 +13,7 @@
#define _WX_SPINBUTT_H_
#ifdef __GNUG__
#pragma interface "spinbutt.h"
#pragma interface "spinbutt.h"
#endif
#include "wx/control.h"
@@ -21,15 +21,10 @@
#if defined(__WIN95__)
class WXDLLEXPORT wxSpinButton : public wxSpinButtonBase
{
DECLARE_DYNAMIC_CLASS(wxSpinButton)
public:
/*
* Public interface
*/
// construction
wxSpinButton() { }
wxSpinButton(wxWindow *parent,
@@ -62,9 +57,15 @@ public:
virtual bool MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result);
virtual bool MSWOnScroll(int orientation, WXWORD wParam,
WXWORD pos, WXHWND control);
protected:
virtual wxSize DoGetBestSize();
private:
DECLARE_DYNAMIC_CLASS(wxSpinButton)
};
#endif
// _WX_WIN95__
// __WIN95__
#endif
// _WX_SPINBUTT_H_

61
include/wx/msw/spinctrl.h Normal file
View File

@@ -0,0 +1,61 @@
/////////////////////////////////////////////////////////////////////////////
// Name: msw/spinctrl.h
// Purpose: wxSpinCtrl class declaration for Win32
// Author: Vadim Zeitlin
// Modified by:
// Created: 22.07.99
// RCS-ID: $Id$
// Copyright: (c) Vadim Zeitlin
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_MSW_SPINCTRL_H_
#define _WX_MSW_SPINCTRL_H_
#ifdef __GNUG__
#pragma interface "spinctrl.h"
#endif
#include "wx/spinbutt.h" // the base class
// ----------------------------------------------------------------------------
// Under Win32, wxSpinCtrl is a wxSpinButton with a buddy (as MSDN docs call
// it) text window whose contents is automatically updated when the spin
// control is clicked.
// ----------------------------------------------------------------------------
class WXDLLEXPORT wxSpinCtrl : public wxSpinButton
{
public:
wxSpinCtrl() { }
wxSpinCtrl(wxWindow *parent,
wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxSP_ARROW_KEYS,
int min = 0, int max = 100, int initial = 0,
const wxString& name = _T("wxSpinCtrl"))
{
Create(parent, id, pos, size, style, min, max, initial, name);
}
bool Create(wxWindow *parent,
wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxSP_ARROW_KEYS,
int min = 0, int max = 100, int initial = 0,
const wxString& name = _T("wxSpinCtrl"));
protected:
void DoMoveWindow(int x, int y, int width, int height);
WXHWND m_hwndBuddy;
DECLARE_DYNAMIC_CLASS(wxSpinCtrl)
};
#endif // _WX_MSW_SPINCTRL_H_

View File

@@ -2,7 +2,7 @@
// Name: msw/statbr95.h
// Purpose: native implementation of wxStatusBar
// Author: Vadim Zeitlin
// Modified by:
// Modified by:
// Created: 04.04.98
// RCS-ID: $Id$
// Copyright: (c) 1998 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
@@ -52,4 +52,4 @@ protected:
#endif // wxUSE_NATIVE_STATUSBAR
#endif //_STATBR95_H
#endif

View File

@@ -49,6 +49,7 @@ enum
// ---------------------------------------------------------------------------
// wxWindow declaration for MSW
// ---------------------------------------------------------------------------
class WXDLLEXPORT wxWindow : public wxWindowBase
{
DECLARE_DYNAMIC_CLASS(wxWindow);
@@ -404,6 +405,12 @@ protected:
// will be the width and height of the text
virtual wxSize DoGetBestSize();
// move the window to the specified location and resize it: this is called
// from both DoSetSize() and DoSetClientSize() and would usually just call
// ::MoveWindow() except for composite controls which will want to arrange
// themselves inside the given rectangle
virtual void DoMoveWindow(int x, int y, int width, int height);
#if wxUSE_TOOLTIPS
virtual void DoSetToolTip( wxToolTip *tip );
#endif // wxUSE_TOOLTIPS

View File

@@ -117,13 +117,13 @@ WXDLLEXPORT wxObject* wxCreateStoredObject( wxInputStream& stream );
#define IMPLEMENT_DYNAMIC_CLASS(name, basename) \
wxObject* WXDLLEXPORT_CTORFN wxConstructorFor##name(void) \
{ return new name; }\
wxClassInfo name::sm_class##name((wxChar *) T(#name), (wxChar *) T(#basename), (wxChar *) NULL, (int) sizeof(name), (wxObjectConstructorFn) wxConstructorFor##name);
wxClassInfo name::sm_class##name((wxChar *) wxT(#name), (wxChar *) wxT(#basename), (wxChar *) NULL, (int) sizeof(name), (wxObjectConstructorFn) wxConstructorFor##name);
// Multiple inheritance with two base classes
#define IMPLEMENT_DYNAMIC_CLASS2(name, basename1, basename2) \
wxObject* WXDLLEXPORT_CTORFN wxConstructorFor##name(void) \
{ return new name; }\
wxClassInfo name::sm_class##name((wxChar *) T(#name), (wxChar *) T(#basename1), (wxChar *) T(#basename2), (int) sizeof(name), (wxObjectConstructorFn) wxConstructorFor##name);
wxClassInfo name::sm_class##name((wxChar *) wxT(#name), (wxChar *) wxT(#basename1), (wxChar *) wxT(#basename2), (int) sizeof(name), (wxObjectConstructorFn) wxConstructorFor##name);
//////
////// for abstract classes
@@ -131,13 +131,13 @@ wxObject* WXDLLEXPORT_CTORFN wxConstructorFor##name(void) \
// Single inheritance with one base class
#define IMPLEMENT_ABSTRACT_CLASS(name, basename) \
wxClassInfo name::sm_class##name((wxChar *) T(#name), (wxChar *) T(#basename), \
wxClassInfo name::sm_class##name((wxChar *) wxT(#name), (wxChar *) wxT(#basename), \
(wxChar *) NULL, (int) sizeof(name), (wxObjectConstructorFn) NULL);
// Multiple inheritance with two base classes
#define IMPLEMENT_ABSTRACT_CLASS2(name, basename1, basename2) \
wxClassInfo name::sm_class##name((wxChar *) T(#name), (wxChar *) T(#basename1), \
(wxChar *) T(#basename2), (int) sizeof(name), (wxObjectConstructorFn) NULL);
wxClassInfo name::sm_class##name((wxChar *) wxT(#name), (wxChar *) wxT(#basename1), \
(wxChar *) wxT(#basename2), (int) sizeof(name), (wxObjectConstructorFn) NULL);
#define IMPLEMENT_CLASS IMPLEMENT_ABSTRACT_CLASS
#define IMPLEMENT_CLASS2 IMPLEMENT_ABSTRACT_CLASS2

View File

@@ -67,11 +67,19 @@ public:
~wxAcceleratorTable();
inline wxAcceleratorTable& operator = (const wxAcceleratorTable& accel) { if (*this == accel) return (*this); Ref(accel); return *this; }
inline bool operator == (const wxAcceleratorTable& accel) { return m_refData == accel.m_refData; }
inline bool operator != (const wxAcceleratorTable& accel) { return m_refData != accel.m_refData; }
inline wxAcceleratorTable& operator = (const wxAcceleratorTable& accel)
{ if (*this == accel) return (*this); Ref(accel); return *this; };
inline bool operator == (const wxAcceleratorTable& accel)
{ return m_refData == accel.m_refData; };
inline bool operator != (const wxAcceleratorTable& accel)
{ return m_refData != accel.m_refData; };
bool Ok() const;
void SetHACCEL(WXHACCEL hAccel);
WXHACCEL GetHACCEL() const;
// translate the accelerator, return TRUE if done
bool Translate(wxWindow *window, WXMSG *msg) const;
};
WXDLLEXPORT_DATA(extern wxAcceleratorTable) wxNullAcceleratorTable;

View File

@@ -34,10 +34,7 @@ protected:
int m_style;
wxBitmap m_stipple ;
wxColour m_colour;
/* TODO: implementation
WXHBRUSH m_hBrush;
*/
};
#define M_BRUSHDATA ((wxBrushRefData *)m_refData)
@@ -74,6 +71,10 @@ public:
// Useful helper: create the brush resource
bool RealizeResource();
WXHANDLE GetResourceHandle(void) ;
bool FreeResource(bool force = FALSE);
bool IsFree() const;
// When setting properties, we must make sure we're not changing
// another object
void Unshare();

View File

@@ -143,6 +143,10 @@ class WXDLLEXPORT wxDC: public wxDCBase
virtual void DoDrawSpline(wxList *points);
#endif
// OS2-specific member variables
int m_windowExtX;
int m_windowExtY;
//-----------------------------------------------------------------------------
// Other virtuals from wxDCBase that are overridden here
//-----------------------------------------------------------------------------

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