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,6 +35,24 @@ and its make.exe).
-> Set your path so that it includes the directory -> Set your path so that it includes the directory
where your compiler and tools reside 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 c) Build instructions
@@ -58,8 +76,12 @@ c) Build instructions
and iostreams ares disabled with and iostreams ares disabled with
#define wxUSE_STD_IOSTREAM 0 #define wxUSE_STD_IOSTREAM 0
note: ODBC and SOCKETS can be 1 for gcc-2.95
-> type: cd c:\wxWin\src\msw -> type: cd c:\wxWin\src\msw
-> type: make -f makefile.g95 (if using GNU tools) -> 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++) or type: make -f makefile.vc (if using MS VC++)

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! # 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 VP7 = @top_srcdir@/src/png
VP8 = @top_srcdir@/src/jpeg VP8 = @top_srcdir@/src/jpeg
VP9 = @top_srcdir@/src/zlib 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@ top_srcdir = @top_srcdir@
prefix = @prefix@ prefix = @prefix@
@@ -125,6 +126,43 @@ DISTDIR = ./_dist_dir/wx$(TOOLKIT)
############################## Files ################################## ############################## 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 = \ WX_HEADERS = \
accel.h \ accel.h \
app.h \ app.h \
@@ -854,6 +892,7 @@ GTK_GUIOBJS = \
settings.o \ settings.o \
slider.o \ slider.o \
spinbutt.o \ spinbutt.o \
spinctrl.o \
statbmp.o \ statbmp.o \
statbox.o \ statbox.o \
statline.o \ statline.o \
@@ -913,6 +952,7 @@ GTK_GUIDEPS = \
settings.d \ settings.d \
slider.d \ slider.d \
spinbutt.d \ spinbutt.d \
spinctrl.d \
statbmp.d \ statbmp.d \
statbox.d \ statbox.d \
statline.d \ statline.d \
@@ -1389,6 +1429,7 @@ MSW_COMMONOBJS = \
mstream.o \ mstream.o \
object.o \ object.o \
objstrm.o \ objstrm.o \
odbc.o \
paper.o \ paper.o \
prntbase.o \ prntbase.o \
process.o \ process.o \
@@ -1478,6 +1519,7 @@ MSW_COMMONDEPS = \
mstream.d \ mstream.d \
object.d \ object.d \
objstrm.d \ objstrm.d \
odbc.d \
paper.d \ paper.d \
prntbase.d \ prntbase.d \
process.d \ process.d \
@@ -1687,6 +1729,74 @@ MSW_GUIDEPS = \
window.d \ window.d \
xpmhand.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 = \ HTMLOBJS = \
helpctrl.o \ helpctrl.o \
helpdata.o \ helpdata.o \
@@ -1727,13 +1837,13 @@ HTMLDEPS = \
search.d \ search.d \
winpars.d winpars.d
UNIXOBJS = \ UNIX_OBJS = \
dialup.o \ dialup.o \
gsocket.o \ gsocket.o \
threadpsx.o \ threadpsx.o \
utilsunx.o utilsunx.o
UNIXDEPS = \ UNIX_DEPS = \
dialup.d \ dialup.d \
gsocket.d \ gsocket.d \
threadpsx.d \ threadpsx.d \
@@ -1821,16 +1931,40 @@ JPEGOBJS = \
jquant2.o \ jquant2.o \
jdmerge.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) \ GUIOBJS = @GUIOBJS@
$(JPEGOBJS) $(PNGOBJS) $(ZLIBOBJS) 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) \ DEPFILES = @ALL_DEPFILES@
$(GENERIC_HEADERS) $(WX_HEADERS)
all: $(OBJECTS) @WX_TARGET_LIBRARY@ @WX_CREATE_LINKS@ HEADERS = @ALL_HEADERS@
all: @WX_ALL@
@WX_LIBRARY_NAME_STATIC@: $(OBJECTS) @WX_LIBRARY_NAME_STATIC@: $(OBJECTS)
@$(INSTALL) -d ./lib @$(INSTALL) -d ./lib
@@ -1841,7 +1975,7 @@ all: $(OBJECTS) @WX_TARGET_LIBRARY@ @WX_CREATE_LINKS@
@$(INSTALL) -d ./lib @$(INSTALL) -d ./lib
$(SHARED_LD) ./lib/$@ $(OBJECTS) $(EXTRALIBS) $(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_LINK1@
@$(RM) ./lib/@WX_LIBRARY_LINK2@ @$(RM) ./lib/@WX_LIBRARY_LINK2@
@$(RM) ./lib/@WX_LIBRARY_LINK3@ @$(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_LINK2@
$(LN_S) @WX_TARGET_LIBRARY@ ./lib/@WX_LIBRARY_LINK3@ $(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_LINK1@
$(RM) $(libdir)/@WX_LIBRARY_LINK2@ $(RM) $(libdir)/@WX_LIBRARY_LINK2@
$(RM) $(libdir)/@WX_LIBRARY_LINK3@ $(RM) $(libdir)/@WX_LIBRARY_LINK3@
$(LN_S) @WX_TARGET_LIBRARY@ $(libdir)/@WX_LIBRARY_LINK1@ $(LN_S) @WX_LIBRARY_NAME_SHARED@ $(libdir)/@WX_LIBRARY_LINK1@
$(LN_S) @WX_TARGET_LIBRARY@ $(libdir)/@WX_LIBRARY_LINK2@ $(LN_S) @WX_LIBRARY_NAME_SHARED@ $(libdir)/@WX_LIBRARY_LINK2@
$(LN_S) @WX_TARGET_LIBRARY@ $(libdir)/@WX_LIBRARY_LINK3@ $(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 $(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 " Read the wxWindows Licence on licencing conditions."
@echo " " @echo " "
install: preinstall @WX_CREATE_INSTALLED_LINKS@ write_message install: preinstall @WX_ALL_INSTALLED@ write_message
uninstall: uninstall:
@echo " " @echo " "

1311
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_MAJOR_VERSION_NUMBER=2
WX_MINOR_VERSION_NUMBER=1 WX_MINOR_VERSION_NUMBER=1
WX_RELEASE_NUMBER=0 WX_RELEASE_NUMBER=10
WX_INTERFACE_AGE=0 WX_INTERFACE_AGE=0
WX_BINARY_AGE=0 WX_BINARY_AGE=0
@@ -774,7 +774,7 @@ else
DEFAULT_wxUSE_ZLIB=yes DEFAULT_wxUSE_ZLIB=yes
DEFAULT_wxUSE_LIBPNG=yes DEFAULT_wxUSE_LIBPNG=yes
DEFAULT_wxUSE_LIBJPEG=yes DEFAULT_wxUSE_LIBJPEG=yes
DEFAULT_wxUSE_ODBC=no DEFAULT_wxUSE_ODBC=yes
DEFAULT_wxUSE_STD_IOSTREAM=no DEFAULT_wxUSE_STD_IOSTREAM=no
DEFAULT_wxUSE_FILE=yes DEFAULT_wxUSE_FILE=yes
@@ -1672,13 +1672,6 @@ if test "$wxUSE_MOTIF" = 1; then
GUIDIST=MOTIF_DIST GUIDIST=MOTIF_DIST
fi 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 dnl the name of the directory where the files for this toolkit live
TOOLKIT_DIR=`echo ${TOOLKIT} | tr "A-Z" "a-z"` TOOLKIT_DIR=`echo ${TOOLKIT} | tr "A-Z" "a-z"`
@@ -1721,23 +1714,25 @@ WX_LIBRARY_LINK3="lib${WX_LIBRARY}.so"
dnl shared library settings dnl shared library settings
SHARED_LD= SHARED_LD=
PIC_FLAG= PIC_FLAG=
WX_CREATE_LINKS= WX_ALL=
WX_ALL_INSTALLED=
if test "$wxUSE_SHARED" = "yes"; then if test "$wxUSE_SHARED" = "yes"; then
dnl set target to shared dnl set target to shared
WX_TARGET_LIBRARY="${WX_LIBRARY_NAME_SHARED}" WX_TARGET_LIBRARY="${WX_LIBRARY_NAME_SHARED}"
case "${host}" in case "${host}" in
*-hp-hpux* ) *-hp-hpux* )
WX_LIBRARY_NAME_SHARED="libwx_${TOOLKIT_DIR}.sl" WX_LIBRARY_NAME_SHARED="libwx_${TOOLKIT_DIR}.sl"
SHARED_LD="${CXX} -b -o" SHARED_LD="${CXX} -b -o"
PIC_FLAG="+Z" PIC_FLAG="+Z"
WX_ALL=${WX_LIBRARY_NAME_SHARED}
;; ;;
*-*-linux* ) *-*-linux* )
SHARED_LD="${CC} -shared -o" SHARED_LD="${CC} -shared -o"
PIC_FLAG="-fPIC" PIC_FLAG="-fPIC"
WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS" WX_ALL_INSTALLED="CREATE_INSTALLED_LINKS"
WX_CREATE_LINKS="CREATE_LINKS" WX_ALL="CREATE_LINKS"
;; ;;
*-*-irix5* | *-*-irix6* ) *-*-irix5* | *-*-irix6* )
if test "$GCC" = yes ; then if test "$GCC" = yes ; then
@@ -1746,8 +1741,8 @@ case "${host}" in
else else
SHARED_LD="${CXX} -shared -o" SHARED_LD="${CXX} -shared -o"
fi fi
WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS" WX_ALL_INSTALLED="CREATE_INSTALLED_LINKS"
WX_CREATE_LINKS="CREATE_LINKS" WX_ALL="CREATE_LINKS"
;; ;;
*-*-solaris2* ) *-*-solaris2* )
if test "$GCC" = yes ; then if test "$GCC" = yes ; then
@@ -1757,59 +1752,63 @@ case "${host}" in
SHARED_LD="${CXX} -G -o" SHARED_LD="${CXX} -G -o"
PIC_FLAG="PIC" PIC_FLAG="PIC"
fi fi
WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS" WX_ALL_INSTALLED="CREATE_INSTALLED_LINKS"
WX_CREATE_LINKS="CREATE_LINKS" WX_ALL="CREATE_LINKS"
;; ;;
*-*-sunos4* ) *-*-sunos4* )
SHARED_LD="${CC} -shared -o" SHARED_LD="${CC} -shared -o"
PIC_FLAG="-fPIC" PIC_FLAG="-fPIC"
WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS" WX_ALL_INSTALLED="CREATE_INSTALLED_LINKS"
WX_CREATE_LINKS="CREATE_LINKS" WX_ALL="CREATE_LINKS"
;; ;;
*-*-freebsd* | *-*-netbsd*) *-*-freebsd* | *-*-netbsd*)
SHARED_LD="${CC} -shared -o" SHARED_LD="${CC} -shared -o"
PIC_FLAG="-fPIC" PIC_FLAG="-fPIC"
WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS" WX_ALL_INSTALLED="CREATE_INSTALLED_LINKS"
WX_CREATE_LINKS="CREATE_LINKS" WX_ALL="CREATE_LINKS"
;; ;;
*-*-osf* ) *-*-osf* )
SHARED_LD="${CXX} -shared -o" SHARED_LD="${CXX} -shared -o"
PIC_FLAG="-fPIC" PIC_FLAG="-fPIC"
WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS" WX_ALL_INSTALLED="CREATE_INSTALLED_LINKS"
WX_CREATE_LINKS="CREATE_LINKS" WX_ALL="CREATE_LINKS"
;; ;;
*-*-dgux5* ) *-*-dgux5* )
SHARED_LD="${CXX} -shared -o" SHARED_LD="${CXX} -shared -o"
PIC_FLAG="-fPIC" PIC_FLAG="-fPIC"
WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS" WX_ALL_INSTALLED="CREATE_INSTALLED_LINKS"
WX_CREATE_LINKS="CREATE_LINKS" WX_ALL="CREATE_LINKS"
;; ;;
*-*-sysv5* ) *-*-sysv5* )
SHARED_LD="${CC} -shared -o" SHARED_LD="${CC} -shared -o"
PIC_FLAG="-fPIC" PIC_FLAG="-fPIC"
WX_CREATE_INSTALLED_LINKS="CREATE_INSTALLED_LINKS" WX_ALL_INSTALLED="CREATE_INSTALLED_LINKS"
WX_CREATE_LINKS="CREATE_LINKS" WX_ALL="CREATE_LINKS"
;; ;;
*-*-aix* ) *-*-aix* )
SHARED_LD="/usr/lpp/xlC/bin/makeC++SharedLib -p 0 -o" SHARED_LD="/usr/lpp/xlC/bin/makeC++SharedLib -p 0 -o"
WX_ALL=${WX_LIBRARY_NAME_SHARED}
;; ;;
*-*-cygwin32* ) *-*-cygwin32* )
dnl only static for now dnl only static for now
WX_TARGET_LIBRARY="${WX_LIBRARY_NAME_STATIC}" WX_TARGET_LIBRARY="${WX_LIBRARY_NAME_STATIC}"
WX_ALL="${WX_LIBRARY_NAME_STATIC}"
;; ;;
*-*-mingw32* ) *-*-mingw32* )
dnl only static for now dnl only static for now
WX_TARGET_LIBRARY="${WX_LIBRARY_NAME_STATIC}" WX_TARGET_LIBRARY="${WX_LIBRARY_NAME_STATIC}"
WX_ALL="${WX_LIBRARY_NAME_STATIC}"
;; ;;
*-pc-os2_emx ) *-pc-os2_emx )
;; ;;
*) *)
AC_MSG_ERROR(unknown system type ${host}.) AC_MSG_ERROR(unknown system type ${host}.)
esac esac
else else
dnl set target to static dnl set target to static
WX_TARGET_LIBRARY="${WX_LIBRARY_NAME_STATIC}" WX_TARGET_LIBRARY="${WX_LIBRARY_NAME_STATIC}"
WX_ALL="${WX_LIBRARY_NAME_STATIC}"
fi fi
dnl ------------------------------------------------------------------------ dnl ------------------------------------------------------------------------
@@ -2335,14 +2334,9 @@ if test "$wxUSE_LONGLONG" = "yes"; then
fi fi
if test "$wxUSE_SOCKETS" = "yes" ; then if test "$wxUSE_SOCKETS" = "yes" ; then
if test "$wxUSE_THREADS" = "yes" ; then
AC_DEFINE(wxUSE_SOCKETS) AC_DEFINE(wxUSE_SOCKETS)
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS wxsocket" SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS wxsocket"
INCLUDE_SUBDIRS="$INCLUDE_SUBDIRS protocol" 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
fi fi
if test "$wxUSE_DIALUP_MANAGER" = "yes" ; then if test "$wxUSE_DIALUP_MANAGER" = "yes" ; then
@@ -2406,15 +2400,31 @@ HAVE_DL_FUNCS=0
HAVE_SHL_FUNCS=0 HAVE_SHL_FUNCS=0
if test "$wxUSE_DYNLIB_CLASS" = "yes"; then if test "$wxUSE_DYNLIB_CLASS" = "yes"; then
dnl the test is a bit complicated because we check for dlopen() both with 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_CHECK_FUNCS(dlopen,
[AC_DEFINE(HAVE_DLOPEN) HAVE_DL_FUNCS=1], [
[AC_CHECK_LIB(dl, dlopen, AC_DEFINE(HAVE_DLOPEN)
[AC_DEFINE(HAVE_DLOPEN) HAVE_DL_FUNCS=1])]) HAVE_DL_FUNCS=1
AC_CHECK_FUNCS( shl_load, ],
[AC_DEFINE(HAVE_SHL_LOAD) HAVE_DL_FUNCS=1 HAVE_SHL_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 "$HAVE_DL_FUNCS" = 0; then
if test "$HAVE_SHL_FUNCS" = 0; then
if test "$USE_UNIX" = 1; then if test "$USE_UNIX" = 1; then
AC_MSG_WARN("--with-dynlib and --with-odbc will be disabled due to missing shared library support") AC_MSG_WARN("--with-dynlib and --with-odbc will be disabled due to missing shared library support")
wxUSE_ODBC=no wxUSE_ODBC=no
@@ -2423,6 +2433,7 @@ if test "$wxUSE_DYNLIB_CLASS" = "yes"; then
AC_MSG_WARN("Cannot check dynlib requirements on non-Unix platforms. dynlib remains enabled.") AC_MSG_WARN("Cannot check dynlib requirements on non-Unix platforms. dynlib remains enabled.")
fi fi
fi fi
fi
fi fi
if test "$wxUSE_DYNLIB_CLASS" = "yes" ; then if test "$wxUSE_DYNLIB_CLASS" = "yes" ; then
@@ -2452,6 +2463,7 @@ dnl ----------------------------------------------------------------
IODBC_C_SRC="" IODBC_C_SRC=""
if test "$wxUSE_ODBC" = "yes" ; then if test "$wxUSE_ODBC" = "yes" ; then
AC_DEFINE(wxUSE_ODBC) AC_DEFINE(wxUSE_ODBC)
WXODBCFLAG="-D_IODBC_"
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS db" SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS db"
fi fi
@@ -2787,7 +2799,7 @@ dnl ---------------------------------------------------------------------------
GUILIBS="$GUI_TK_LIBRARY $OPENGL_LINK $LIBPNG_LINK $ZLIB_LINK $TOOLKIT_LINK" GUILIBS="$GUI_TK_LIBRARY $OPENGL_LINK $LIBPNG_LINK $ZLIB_LINK $TOOLKIT_LINK"
dnl all additional libraries (except wxWindows itself) we link with 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 if test "$wxUSE_GUI" = "yes"; then
EXTRA_LIBS="$EXTRA_LIBS $GUILIBS" EXTRA_LIBS="$EXTRA_LIBS $GUILIBS"
fi fi
@@ -2807,7 +2819,7 @@ if test "$GXX" = yes ; then
dnl doing this... (VZ) dnl doing this... (VZ)
dnl CXXWARNINGS="-Wall -Werror" dnl CXXWARNINGS="-Wall -Werror"
fi fi
EXTRA_CFLAGS="$WXDEBUG $PROFILE $OPTIMISE $INCLUDES" EXTRA_CFLAGS="$WXDEBUG $WXODBCFLAG $PROFILE $OPTIMISE $INCLUDES"
CPPFLAGS="-I\${top_srcdir}/include $CPPFLAGS" CPPFLAGS="-I\${top_srcdir}/include $CPPFLAGS"
CFLAGS="$CFLAGS $EXTRA_CFLAGS" CFLAGS="$CFLAGS $EXTRA_CFLAGS"
@@ -2846,8 +2858,8 @@ AC_SUBST(WX_LIBRARY_LINK3)
AC_SUBST(PROGRAM_EXT) AC_SUBST(PROGRAM_EXT)
dnl are we supposed to create the links? dnl are we supposed to create the links?
AC_SUBST(WX_CREATE_LINKS) AC_SUBST(WX_ALL)
AC_SUBST(WX_CREATE_INSTALLED_LINKS) AC_SUBST(WX_ALL_INSTALLED)
AC_SUBST(SHARED_LD) AC_SUBST(SHARED_LD)
AC_SUBST(PIC_FLAG) AC_SUBST(PIC_FLAG)
@@ -2922,6 +2934,7 @@ AC_OUTPUT([
samples/checklst/Makefile samples/checklst/Makefile
samples/config/Makefile samples/config/Makefile
samples/controls/Makefile samples/controls/Makefile
samples/db/Makefile
samples/dialogs/Makefile samples/dialogs/Makefile
samples/docview/Makefile samples/docview/Makefile
samples/docvwmdi/Makefile samples/docvwmdi/Makefile
@@ -2935,10 +2948,12 @@ AC_OUTPUT([
samples/mdi/Makefile samples/mdi/Makefile
samples/minifram/Makefile samples/minifram/Makefile
samples/minimal/Makefile samples/minimal/Makefile
samples/nettest/Makefile
samples/newgrid/Makefile samples/newgrid/Makefile
samples/notebook/Makefile samples/notebook/Makefile
samples/printing/Makefile samples/printing/Makefile
samples/proplist/Makefile samples/proplist/Makefile
samples/richedit/Makefile
samples/sashtest/Makefile samples/sashtest/Makefile
samples/scroll/Makefile samples/scroll/Makefile
samples/splitter/Makefile samples/splitter/Makefile

View File

@@ -29,6 +29,7 @@
# #
# Known flags: # Known flags:
# B makes part of the base library too # B makes part of the base library too
# BO only for the base library
# 16 a generic file implementing Win32 control for Win16 # 16 a generic file implementing Win32 control for Win16
# 32 only can be compiled under Win32 # 32 only can be compiled under Win32
# PS PostScript related file, normally not compiled under Windows # PS PostScript related file, normally not compiled under Windows
@@ -104,7 +105,7 @@ docmdi.cpp C
docview.cpp C docview.cpp C
dynarray.cpp C B dynarray.cpp C B
dynlib.cpp C B dynlib.cpp C B
event.cpp C event.cpp C B
extended.c C B extended.c C B
ffile.cpp C B ffile.cpp C B
file.cpp C B file.cpp C B
@@ -129,6 +130,7 @@ imagjpeg.cpp C 32
imagpcx.cpp C 32 imagpcx.cpp C 32
imagpng.cpp C 32 imagpng.cpp C 32
imagpnm.cpp C 32 imagpnm.cpp C 32
init.cpp C B,BO
intl.cpp C B intl.cpp C B
ipcbase.cpp C ipcbase.cpp C
layout.cpp C layout.cpp C
@@ -153,7 +155,7 @@ sckstrm.cpp C S
serbase.cpp C serbase.cpp C
sizer.cpp C sizer.cpp C
socket.cpp C S socket.cpp C S
stream.cpp C stream.cpp C B
strconv.cpp C B strconv.cpp C B
string.cpp C B string.cpp C B
tbarbase.cpp C tbarbase.cpp C
@@ -163,7 +165,7 @@ textfile.cpp C B
time.cpp C B time.cpp C B
timercmn.cpp C B timercmn.cpp C B
tokenzr.cpp C B tokenzr.cpp C B
txtstrm.cpp C txtstrm.cpp C B
unzip.c C unzip.c C
url.cpp C S url.cpp C S
utilscmn.cpp C B utilscmn.cpp C B
@@ -276,7 +278,7 @@ gsocket.c M S
dialup.cpp U dialup.cpp U
threadpsx.cpp U threadpsx.cpp U
utilsunx.cpp U utilsunx.cpp U B
gsocket.c U gsocket.c U
gsockgtk.c R gsockgtk.c R
@@ -324,6 +326,7 @@ scrolbar.cpp R
settings.cpp R settings.cpp R
slider.cpp R slider.cpp R
spinbutt.cpp R spinbutt.cpp R
spinctrl.cpp R
statbmp.cpp R statbmp.cpp R
statbox.cpp R statbox.cpp R
statline.cpp R statline.cpp R
@@ -413,7 +416,7 @@ search.cpp H
arrimpl.cpp W arrimpl.cpp W
listimpl.cpp W listimpl.cpp W
accel.h W accel.h W
app.h W app.h W B
bitmap.h W bitmap.h W
bmpbuttn.h W bmpbuttn.h W
brush.h W brush.h W
@@ -435,7 +438,7 @@ config.h W
control.h W control.h W
cursor.h W cursor.h W
dataobj.h W dataobj.h W
date.h W date.h W B
datstrm.h W datstrm.h W
db.h W db.h W
dbtable.h W dbtable.h W
@@ -446,21 +449,21 @@ dcprint.h W
dcps.h W dcps.h W
dcscreen.h W dcscreen.h W
dde.h W dde.h W
debug.h W debug.h W B
defs.h W defs.h W B
dialog.h W dialog.h W
dirdlg.h W dirdlg.h W
dnd.h W dnd.h W
docmdi.h W docmdi.h W
docview.h W docview.h W
dragimag.h W dragimag.h W
dynarray.h W dynarray.h W B
dynlib.h W dynlib.h W B
event.h W event.h W B
expr.h W expr.h W
ffile.h W ffile.h W B
file.h W file.h W B
fileconf.h W fileconf.h W B
filedlg.h W filedlg.h W
filefn.h W filefn.h W
filesys.h W filesys.h W
@@ -475,7 +478,7 @@ gdiobj.h W
gifdecod.h W gifdecod.h W
grid.h W grid.h W
gsocket.h W gsocket.h W
hash.h W hash.h W B
help.h W help.h W
helpbase.h W helpbase.h W
helphtml.h W helphtml.h W
@@ -484,30 +487,30 @@ helpxlp.h W
icon.h W icon.h W
image.h W image.h W
imaglist.h W imaglist.h W
intl.h W intl.h W B
ioswrap.h W ioswrap.h W
ipcbase.h W ipcbase.h W
joystick.h W joystick.h W
layout.h W layout.h W
laywin.h W laywin.h W
list.h W list.h W B
listbox.h W listbox.h W
listctrl.h W listctrl.h W
log.h W log.h W B
longlong.h W longlong.h W B
matrix.h W matrix.h W
mdi.h W mdi.h W
memory.h W memory.h W
menu.h W menu.h W
menuitem.h W menuitem.h W
metafile.h W metafile.h W
mimetype.h W mimetype.h W B
minifram.h W minifram.h W
module.h W module.h W B
msgdlg.h W msgdlg.h W
mstream.h W mstream.h W
notebook.h W notebook.h W
object.h W object.h W B
objstrm.h W objstrm.h W
odbc.h W odbc.h W
ownerdrw.h W ownerdrw.h W
@@ -519,7 +522,7 @@ pnghand.h W
print.h W print.h W
printdlg.h W printdlg.h W
prntbase.h W prntbase.h W
process.h W process.h W B
progdlg.h W progdlg.h W
prop.h W prop.h W
propform.h W propform.h W
@@ -536,7 +539,7 @@ scrolbar.h W
scrolwin.h W scrolwin.h W
serbase.h W serbase.h W
settings.h W settings.h W
setup.h W setup.h W B
sizer.h W sizer.h W
slider.h W slider.h W
socket.h W socket.h W
@@ -547,9 +550,9 @@ statbox.h W
statline.h W statline.h W
stattext.h W stattext.h W
statusbr.h W statusbr.h W
strconv.h W strconv.h W B
stream.h W stream.h W B
string.h W string.h W B
tab.h W tab.h W
tabctrl.h W tabctrl.h W
taskbar.h W taskbar.h W
@@ -559,35 +562,35 @@ tbarmsw.h W
tbarsmpl.h W tbarsmpl.h W
textctrl.h W textctrl.h W
textdlg.h W textdlg.h W
textfile.h W textfile.h W B
txtstrm.h W txtstrm.h W B
thread.h W thread.h W B
time.h W time.h W B
timer.h W timer.h W B
tipdlg.h W tipdlg.h W
tokenzr.h W tokenzr.h W B
toolbar.h W toolbar.h W
tooltip.h W tooltip.h W
treectrl.h W treectrl.h W
types.h W types.h W
url.h W url.h W
utils.h W utils.h W B
valgen.h W valgen.h W
validate.h W validate.h W
valtext.h W valtext.h W
variant.h W variant.h W B
version.h W version.h W B
wave.h W wave.h W
wfstream.h W wfstream.h W
window.h W window.h W
wx.h W wx.h W B
wx_cw.h W wx_cw.h W
wx_cw_cm.h W wx_cw_cm.h W
wx_cw_d.h W wx_cw_d.h W
wxchar.h W wxchar.h W B
wxexpr.h W wxexpr.h W
wxhtml.h W wxhtml.h W
wxprec.h W wxprec.h W B
xpmhand.h W xpmhand.h W
zipstrm.h W zipstrm.h W
zstream.h W zstream.h W

View File

@@ -51,36 +51,32 @@
#! Common #! Common
foreach $file (sort keys %wxCommon) { 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; #! 'B' flag means that the file makes part of wxBase too
$file =~ s/cp?p?$/\o/; if ( $wxCommon{$file} =~ /\bB\b/ ) {
$file2 =~ s/cp?p?$/\d/; $project{"BASE_OBJS"} .= $fileobj . " ";
$project{"WXGTK_COMMONOBJS"} .= $file . " "; $project{"BASE_DEPS"} .= $filedep . " ";
$project{"WXGTK_COMMONDEPS"} .= $file2 . " "
} }
foreach $file (sort keys %wxCommon) { #! if it's the wxBase-only file, nothing more to do with it
next if $wxCommon{$file} =~ /\bX\b/; next if $wxCommon{$file} =~ /\bBO\b/;
$file2 = $file; if ( $wxCommon{$file} !~ /\bR\b/ ) { #! unless not for GTK
$file =~ s/cp?p?$/\o/; $project{"WXGTK_COMMONOBJS"} .= $fileobj . " ";
$file2 =~ s/cp?p?$/\d/; $project{"WXGTK_COMMONDEPS"} .= $filedep . " "
$project{"WXMOTIF_COMMONOBJS"} .= $file . " "; }
$project{"WXMOTIF_COMMONDEPS"} .= $file2 . " " if ( $wxCommon{$file} !~ /\bX\b/ ) { #! unless not for Motif
$project{"WXMOTIF_COMMONOBJS"} .= $fileobj . " ";
$project{"WXMOTIF_COMMONDEPS"} .= $filedep . " "
} }
foreach $file (sort keys %wxCommon) { #! ODBC needs extra files (sql*.h) so not compiled by default.
next if $wxCommon{$file} =~ /\b(16)\b/; if ( (file !~ /^odbc\./) && ($wxCommon{$file} !~ /\b(16)\b/) ) {
$project{"WXMSW_COMMONOBJS"} .= $fileobj . " ";
#! needs extra files (sql*.h) so not compiled by default. $project{"WXMSW_COMMONDEPS"} .= $filedep . " "
next if $file =~ /^odbc\./; }
$file2 = $file;
$file =~ s/cp?p?$/\o/;
$file2 =~ s/cp?p?$/\d/;
$project{"WXMSW_COMMONOBJS"} .= $file . " ";
$project{"WXMSW_COMMONDEPS"} .= $file2 . " "
} }
#! GUI #! GUI
@@ -127,17 +123,24 @@
} }
foreach $file (sort keys %wxUNIX) { foreach $file (sort keys %wxUNIX) {
$file2 = $file; ($fileobj = $file) =~ s/cp?p?$/\o/;
$file =~ s/cp?p?$/\o/; ($filedep = $file) =~ s/cp?p?$/\d/;
$file2 =~ s/cp?p?$/\d/;
$project{"WXUNIXOBJS"} .= $file . " "; #! 'B' flag means that the file makes part of wxBase too
$project{"WXUNIXDEPS"} .= $file2 . " " if ( $wxUNIX{$file} =~ /\bB\b/ ) {
$project{"BASE_OBJS"} .= $fileobj . " ";
$project{"BASE_DEPS"} .= $filedep . " "
}
$project{"WXUNIX_OBJS"} .= $fileobj . " ";
$project{"WXUNIX_DEPS"} .= $filedep . " "
} }
#! headers #! headers
foreach $file (sort keys %wxWXINCLUDE) { 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) { foreach $file (sort keys %wxGENERICINCLUDE) {
@@ -214,8 +217,9 @@ VP6 = @top_srcdir@/src/html
VP7 = @top_srcdir@/src/png VP7 = @top_srcdir@/src/png
VP8 = @top_srcdir@/src/jpeg VP8 = @top_srcdir@/src/jpeg
VP9 = @top_srcdir@/src/zlib 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@ top_srcdir = @top_srcdir@
prefix = @prefix@ prefix = @prefix@
@@ -295,6 +299,9 @@ DISTDIR = ./_dist_dir/wx$(TOOLKIT)
############################## Files ################################## ############################## Files ##################################
BASE_HEADERS = \
#$ ExpandList("BASE_HEADERS");
WX_HEADERS = \ WX_HEADERS = \
#$ ExpandList("WX_HEADERS"); #$ ExpandList("WX_HEADERS");
@@ -381,17 +388,23 @@ MSW_GUIOBJS = \
MSW_GUIDEPS = \ MSW_GUIDEPS = \
#$ ExpandList("WXMSW_GUIDEPS"); #$ ExpandList("WXMSW_GUIDEPS");
BASE_OBJS = \
#$ ExpandList("BASE_OBJS");
BASE_DEPS = \
#$ ExpandList("BASE_DEPS");
HTMLOBJS = \ HTMLOBJS = \
#$ ExpandList("WXHTMLOBJS"); #$ ExpandList("WXHTMLOBJS");
HTMLDEPS = \ HTMLDEPS = \
#$ ExpandList("WXHTMLDEPS"); #$ ExpandList("WXHTMLDEPS");
UNIXOBJS = \ UNIX_OBJS = \
#$ ExpandList("WXUNIXOBJS"); #$ ExpandList("WXUNIX_OBJS");
UNIXDEPS = \ UNIX_DEPS = \
#$ ExpandList("WXUNIXDEPS"); #$ ExpandList("WXUNIX_DEPS");
ZLIBOBJS = \ ZLIBOBJS = \
adler32.o \ adler32.o \
@@ -475,16 +488,40 @@ JPEGOBJS = \
jquant2.o \ jquant2.o \
jdmerge.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) \ GUIOBJS = @GUIOBJS@
$(JPEGOBJS) $(PNGOBJS) $(ZLIBOBJS) 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) \ DEPFILES = @ALL_DEPFILES@
$(GENERIC_HEADERS) $(WX_HEADERS)
all: $(OBJECTS) @WX_TARGET_LIBRARY@ @WX_CREATE_LINKS@ HEADERS = @ALL_HEADERS@
all: @WX_ALL@
@WX_LIBRARY_NAME_STATIC@: $(OBJECTS) @WX_LIBRARY_NAME_STATIC@: $(OBJECTS)
@$(INSTALL) -d ./lib @$(INSTALL) -d ./lib
@@ -495,7 +532,7 @@ all: $(OBJECTS) @WX_TARGET_LIBRARY@ @WX_CREATE_LINKS@
@$(INSTALL) -d ./lib @$(INSTALL) -d ./lib
$(SHARED_LD) ./lib/$@ $(OBJECTS) $(EXTRALIBS) $(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_LINK1@
@$(RM) ./lib/@WX_LIBRARY_LINK2@ @$(RM) ./lib/@WX_LIBRARY_LINK2@
@$(RM) ./lib/@WX_LIBRARY_LINK3@ @$(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_LINK2@
$(LN_S) @WX_TARGET_LIBRARY@ ./lib/@WX_LIBRARY_LINK3@ $(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_LINK1@
$(RM) $(libdir)/@WX_LIBRARY_LINK2@ $(RM) $(libdir)/@WX_LIBRARY_LINK2@
$(RM) $(libdir)/@WX_LIBRARY_LINK3@ $(RM) $(libdir)/@WX_LIBRARY_LINK3@
$(LN_S) @WX_TARGET_LIBRARY@ $(libdir)/@WX_LIBRARY_LINK1@ $(LN_S) @WX_LIBRARY_NAME_SHARED@ $(libdir)/@WX_LIBRARY_LINK1@
$(LN_S) @WX_TARGET_LIBRARY@ $(libdir)/@WX_LIBRARY_LINK2@ $(LN_S) @WX_LIBRARY_NAME_SHARED@ $(libdir)/@WX_LIBRARY_LINK2@
$(LN_S) @WX_TARGET_LIBRARY@ $(libdir)/@WX_LIBRARY_LINK3@ $(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 $(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 " Read the wxWindows Licence on licencing conditions."
@echo " " @echo " "
install: preinstall @WX_CREATE_INSTALLED_LINKS@ write_message install: preinstall @WX_ALL_INSTALLED@ write_message
uninstall: uninstall:
@echo " " @echo " "

View File

@@ -290,7 +290,7 @@ $(CPPFLAGS2) /c $(COMMDIR)\unzip.c /Fo$@
png: png:
cd $(WXDIR)\src\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 cd $(WXDIR)\src\msw
clean_png: clean_png:
@@ -300,7 +300,7 @@ clean_png:
zlib: zlib:
cd $(WXDIR)\src\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 cd $(WXDIR)\src\msw
clean_zlib: clean_zlib:
@@ -310,7 +310,7 @@ clean_zlib:
jpeg: jpeg:
cd $(WXDIR)\src\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 cd $(WXDIR)\src\msw
clean_jpeg: clean_jpeg:
@@ -320,7 +320,7 @@ clean_jpeg:
xpm: xpm:
cd $(WXDIR)\src\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 cd $(WXDIR)\src\msw
clean_xpm: clean_xpm:

View File

@@ -19,6 +19,7 @@
foreach $file (sort keys %wxCommon) { foreach $file (sort keys %wxCommon) {
next if $wxCommon{$file} =~ /\b16\b/; next if $wxCommon{$file} =~ /\b16\b/;
next if $wxCommon{$file} =~ /\bBO\b/;
my $tag = $file =~ /\.c$/ ? "WXCSRCS" : "WXCOMMONSRCS"; my $tag = $file =~ /\.c$/ ? "WXCSRCS" : "WXCOMMONSRCS";
$project{$tag} .= $file . " " $project{$tag} .= $file . " "
@@ -27,7 +28,9 @@
foreach $file (sort keys %wxMSW) { foreach $file (sort keys %wxMSW) {
next if $wxMSW{$file} =~ /\b16\b/; 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 . " " $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("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("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("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"); #$ 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 # Begin Source File

View File

@@ -5,6 +5,9 @@ src/wxvc6.dsw
src/wxvc_dll.dsp src/wxvc_dll.dsp
src/wxvc_dll.dsw src/wxvc_dll.dsw
src/jpeg/jpeg.dsp
src/jpeg/jpeg.dsw
samples/checklst/ChecklstVC.dsp samples/checklst/ChecklstVC.dsp
samples/checklst/ChecklstVC.dsw 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 28th August '99: Ninth wxGTK 2.1 snapshot released
As the old makefile system didn't work, I trashed it and wrote 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_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_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_nestedclasses">Don't use nested classes</A></LI>
<LI><A HREF="#no_ternarywithobjects">Use ternary operator ?: carefully</A></LI>
</OL> </OL>
<BR> <BR>
<LI>General recommendations</LI> <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 <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 including the header if you change the PrivateLibClass declaration (it's
an example of a more general interface/implementation separation idea). 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> </OL>
<BR> <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 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. 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} \membersection{wxDC::GetSize}\label{wxdcgetsize}
\func{void}{GetSize}{\param{long *}{width}, \param{long *}{height}} \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} \wxheading{See also}
\helpref{wxEvtHandler::SetNextHandler}{wxevthandlersetnexthandler},\rtfsp
\helpref{wxEvtHandler::GetPreviousHandler}{wxevthandlergetprevioushandler},\rtfsp \helpref{wxEvtHandler::GetPreviousHandler}{wxevthandlergetprevioushandler},\rtfsp
\helpref{wxEvtHandler::SetPreviousHandler}{wxevthandlersetprevioushandler},\rtfsp \helpref{wxEvtHandler::SetPreviousHandler}{wxevthandlersetprevioushandler},\rtfsp
\helpref{wxEvtHandler::SetNextHandler}{wxevthandlersetnexthandler},\rtfsp
\helpref{wxWindow::PushEventHandler}{wxwindowpusheventhandler},\rtfsp \helpref{wxWindow::PushEventHandler}{wxwindowpusheventhandler},\rtfsp
\helpref{wxWindow::PopEventHandler}{wxwindowpopeventhandler} \helpref{wxWindow::PopEventHandler}{wxwindowpopeventhandler}
@@ -132,9 +132,9 @@ Gets the pointer to the previous handler in the chain.
\wxheading{See also} \wxheading{See also}
\helpref{wxEvtHandler::GetPreviousHandler}{wxevthandlergetprevioushandler},\rtfsp
\helpref{wxEvtHandler::SetPreviousHandler}{wxevthandlersetprevioushandler},\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::PushEventHandler}{wxwindowpusheventhandler},\rtfsp
\helpref{wxWindow::PopEventHandler}{wxwindowpopeventhandler} \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 (clicking an item toggles the item on or off independently of other
selections). 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 A listbox callback gets an event wxEVT\_COMMAND\_LISTBOX\_SELECT for single clicks, and
wxEVT\_COMMAND\_LISTBOX\_DOUBLE\_CLICKED for double clicks. 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.} wxLIST\_HITTEST\_ONITEMSTATEICON.}
\end{twocollist} \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} \membersection{wxListCtrl::InsertColumn}\label{wxlistctrlinsertcolumn}
\func{long}{InsertColumn}{\param{long }{col}, \param{wxListItem\& }{info}} \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. verify it.
\helpref{Flush}{wxlogflush}\\ \helpref{Flush}{wxlogflush}\\
\helpref{FlushActive}{wxlogflushactive}\\
\helpref{HasPendingMessages}{haspendingmessages} \helpref{HasPendingMessages}{haspendingmessages}
\membersection{Customization}\label{wxlogcustomization} \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 Shows all the messages currently in buffer and clears it. If the buffer
is already empty, nothing happens. 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} \membersection{wxLog::HasPendingMessages}\label{haspendingmessages}
\constfunc{bool}{HasPendingMessages}{\void} \constfunc{bool}{HasPendingMessages}{\void}

View File

@@ -117,25 +117,27 @@ instead of showing a dialog. Windows only.
\constfunc{wxPoint}{GetMarginTopLeft}{\void} \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} \membersection{wxPageSetupDialogData::GetMarginBottomRight}\label{wxpagesetupdialogdatagetmarginbottomright}
\constfunc{wxPoint}{GetMarginBottomRight}{\void} \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} \membersection{wxPageSetupDialogData::GetMinMarginTopLeft}\label{wxpagesetupdialogdatagetminmargintopleft}
\constfunc{wxPoint}{GetMinMarginTopLeft}{\void} \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} \membersection{wxPageSetupDialogData::GetMinMarginBottomRight}\label{wxpagesetupdialogdatagetminmarginbottomright}
\constfunc{wxPoint}{GetMinMarginBottomRight}{\void} \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} \membersection{wxPageSetupDialogData::GetPaperId}\label{wxpagesetupdialogdatagetpaperid}
@@ -169,31 +171,33 @@ instead of showing a dialog. Windows only.
\func{void}{SetDefaultMinMargins}{\param{bool}{ flag}} \func{void}{SetDefaultMinMargins}{\param{bool}{ flag}}
Pass TRUE if the page setup dialog will take its minimum margin values from the currently 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} \membersection{wxPageSetupDialogData::SetMarginTopLeft}\label{wxpagesetupdialogdatasetmargintopleft}
\func{void}{GetMarginTopLeft}{\param{const wxPoint\& }{pt}} \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} \membersection{wxPageSetupDialogData::SetMarginBottomRight}\label{wxpagesetupdialogdatasetmarginbottomright}
\func{void}{SetMarginBottomRight}{\param{const wxPoint\& }{pt}} \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} \membersection{wxPageSetupDialogData::SetMinMarginTopLeft}\label{wxpagesetupdialogdatasetminmargintopleft}
\func{void}{SetMinMarginTopLeft}{\param{const wxPoint\& }{pt}} \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} \membersection{wxPageSetupDialogData::SetMinMarginBottomRight}\label{wxpagesetupdialogdatasetminmarginbottomright}
\func{void}{SetMinMarginBottomRight}{\param{const wxPoint\& }{pt}} \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} \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 Shows the dialog, returning wxID\_OK if the user pressed OK, and wxID\_CANCEL
otherwise. 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 within OnDraw, to set the device origin for the device context according to the current
scroll position. 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} \wxheading{Derived from}
\helpref{wxPanel}{wxpanel}\\ \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 scrolling is the physical transfer of bits up or down the
screen when a scroll event occurs. If the application scrolls by a screen when a scroll event occurs. If the application scrolls by a
variable amount (e.g. if there are different font sizes) then physical 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} \wxheading{Parameters}

View File

@@ -9,6 +9,7 @@ This chapter contains a selection of topic overviews.
\input tcontain.tex \input tcontain.tex
\input tlog.tex \input tlog.tex
\input tconfig.tex \input tconfig.tex
\input tunicode.tex
\input tbitmap.tex \input tbitmap.tex
\input tdialog.tex \input tdialog.tex
\input tfont.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. This can be achieved quite simply by using the means provided by wxWindows.
Basicly, there are only a few things to watch out for: Basicly, there are only a few things to watch out for:
\begin{itemize} \begin{itemize}
\item Character type ({\tt char} or {\tt wchar\_t}) \item Character type ({\tt char} or {\tt wchar\_t})
\item Literal strings (i.e. {\tt "Hello, world!"} or {\tt '*'}) \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! program automatically becomes (almost) Unicode compliant!
Just let us state once again the rules: Just let us state once again the rules:
\begin{itemize} \begin{itemize}
\item Always use {\tt wxChar} instead of {\tt char} \item Always use {\tt wxChar} instead of {\tt char}
\item Always enclose literal string constants in {\tt T()} macro unless \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. the Unicode string.
% TODO describe fn_str(), wx_str(), wxCharBuf classes, ... % 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}% \twocolwidtha{5cm}%
\begin{twocollist}\itemsep=0pt \begin{twocollist}\itemsep=0pt
\twocolitem{\windowstyle{wxSIMPLE\_BORDER}}{Displays a thin border around the window. wxBORDER is the old name \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{wxDOUBLE\_BORDER}}{Displays a double border. Windows only.}
\twocolitem{\windowstyle{wxSUNKEN\_BORDER}}{Displays a sunken border.} \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{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 \twocolitem{\windowstyle{wxTRANSPARENT\_WINDOW}}{The window is transparent, that is, it will not receive paint
events. Windows only.} events. Windows only.}

View File

@@ -365,10 +365,11 @@ as possible to the C++ spec over time.
\item \helpref{wxBitmapButton}{wxbitmapbutton} \item \helpref{wxBitmapButton}{wxbitmapbutton}
\item \helpref{wxBitmap}{wxbitmap} \item \helpref{wxBitmap}{wxbitmap}
\item wxBMPHandler \item wxBMPHandler
\item \helpref{wxBoxSizer}{wxBoxSizer} \item \helpref{wxBoxSizer}{wxboxsizer}
\item \helpref{wxBrush}{wxbrush} \item \helpref{wxBrush}{wxbrush}
\item \helpref{wxButton}{wxbutton} \item \helpref{wxButton}{wxbutton}
\item \helpref{wxCalculateLayoutEvent}{wxcalculatelayoutevent} \item \helpref{wxCalculateLayoutEvent}{wxcalculatelayoutevent}
\item wxCaret
\item \helpref{wxCheckBox}{wxcheckbox} \item \helpref{wxCheckBox}{wxcheckbox}
\item \helpref{wxCheckListBox}{wxchecklistbox} \item \helpref{wxCheckListBox}{wxchecklistbox}
\item \helpref{wxChoice}{wxchoice} \item \helpref{wxChoice}{wxchoice}
@@ -401,14 +402,14 @@ as possible to the C++ spec over time.
\item wxGridCell \item wxGridCell
\item wxGridEvent \item wxGridEvent
\item \helpref{wxGrid}{wxgrid} \item \helpref{wxGrid}{wxgrid}
\item \helpref{wxHtmlCell}{wxHtmlCell} \item \helpref{wxHtmlCell}{wxhtmlcell}
\item \helpref{wxHtmlContainerCell}{wxHtmlContainerCell} \item \helpref{wxHtmlContainerCell}{wxhtmlcontainercell}
\item \helpref{wxHtmlParser}{wxHtmlParser} \item \helpref{wxHtmlParser}{wxhtmlparser}
\item \helpref{wxHtmlTagHandler}{wxHtmlTagHandler} \item \helpref{wxHtmlTagHandler}{wxhtmltaghandler}
\item \helpref{wxHtmlTag}{wxHtmlTag} \item \helpref{wxHtmlTag}{wxhtmltag}
\item \helpref{wxHtmlWinParser}{wxHtmlWinParser} \item \helpref{wxHtmlWinParser}{wxhtmlwinparser}
\item \helpref{wxHtmlWinTagHandler}{wxHtmlWinTagHandler} \item \helpref{wxHtmlWinTagHandler}{wxhtmlwintaghandler}
\item \helpref{wxHtmlWindow}{wxHtmlWindow} \item \helpref{wxHtmlWindow}{wxhtmlwindow}
\item wxIconizeEvent \item wxIconizeEvent
\item \helpref{wxIcon}{wxicon} \item \helpref{wxIcon}{wxicon}
\item \helpref{wxIdleEvent}{wxidleevent} \item \helpref{wxIdleEvent}{wxidleevent}
@@ -480,7 +481,7 @@ as possible to the C++ spec over time.
\item \helpref{wxSingleChoiceDialog}{wxsinglechoicedialog} \item \helpref{wxSingleChoiceDialog}{wxsinglechoicedialog}
\item \helpref{wxSizeEvent}{wxsizeevent} \item \helpref{wxSizeEvent}{wxsizeevent}
\item \helpref{wxSize}{wxsize} \item \helpref{wxSize}{wxsize}
\item \helpref{wxSizer}{wxSizer} \item \helpref{wxSizer}{wxsizer}
\item wxSizerItem \item wxSizerItem
\item \helpref{wxSlider}{wxslider} \item \helpref{wxSlider}{wxslider}
\item \helpref{wxSpinButton}{wxspinbutton} \item \helpref{wxSpinButton}{wxspinbutton}
@@ -488,7 +489,7 @@ as possible to the C++ spec over time.
\item \helpref{wxSplitterWindow}{wxsplitterwindow} \item \helpref{wxSplitterWindow}{wxsplitterwindow}
\item \helpref{wxStaticBitmap}{wxstaticbitmap} \item \helpref{wxStaticBitmap}{wxstaticbitmap}
\item \helpref{wxStaticBox}{wxstaticbox} \item \helpref{wxStaticBox}{wxstaticbox}
\item \helpref{wxStaticBoxSizer}{wxStaticBoxSizer} \item \helpref{wxStaticBoxSizer}{wxstaticboxsizer}
\item wxStaticLine \item wxStaticLine
\item \helpref{wxStaticText}{wxstatictext} \item \helpref{wxStaticText}{wxstatictext}
\item \helpref{wxStatusBar}{wxstatusbar} \item \helpref{wxStatusBar}{wxstatusbar}

View File

@@ -92,7 +92,12 @@ Using project files:
src/Release/wxvc.lib. The project file src/wxvc_dll.dsp src/Release/wxvc.lib. The project file src/wxvc_dll.dsp
will make a DLL version of wxWindow, which will go in will make a DLL version of wxWindow, which will go in
src/DebugDLL/wxvc.[lib,dll] and src/ReleaseDLL/wxvc.[lib,dll]. 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 The project files don't use precompiled headers, to save
space, but you can switch PCH compiling on for greater speed. 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 to make the wxWindows core library without debug information
(wx\lib\wx.lib). (wx\lib\wx.lib).
3. If you wish to use JPEG in your applications, do the same
3. Change directory to wx\samples and type 'nmake -f makefile.vc' 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. to make all the samples. You can also make them individually.
Notes: Notes:

View File

@@ -21,7 +21,7 @@
*****************************************************************************/ *****************************************************************************/
// needed to resolve the conflict between global T and macro parameter T // 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 // macro implements remaining (not inline) methods of template list
// (it's private to this file) // (it's private to this file)

View File

@@ -28,7 +28,7 @@ class wxCharBuffer
public: public:
wxCharBuffer(const char *str) 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; m_str = str ? strdup(str) : (char *)NULL;
} }
@@ -67,7 +67,7 @@ class wxWCharBuffer
public: public:
wxWCharBuffer(const wchar_t *wcs) wxWCharBuffer(const wchar_t *wcs)
{ {
wxASSERT_MSG( wcs, T("NULL string in wxWCharBuffer") ); wxASSERT_MSG( wcs, wxT("NULL string in wxWCharBuffer") );
if (wcs) { if (wcs) {
size_t siz = (wcslen(wcs)+1)*sizeof(wchar_t); size_t siz = (wcslen(wcs)+1)*sizeof(wchar_t);

View File

@@ -5,8 +5,15 @@
// source such as opening and closing the data source. // source such as opening and closing the data source.
// Author: Doug Card // Author: Doug Card
// Modified by: // Modified by:
// Mods: Dec, 1998: Added support for SQL statement logging and database // Mods: Dec, 1998:
// cataloging // -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 // Created: 9.96
// RCS-ID: $Id$ // RCS-ID: $Id$
// Copyright: (c) 1996 Remstar International, Inc. // Copyright: (c) 1996 Remstar International, Inc.
@@ -31,39 +38,70 @@
#ifndef DB_DOT_H #ifndef DB_DOT_H
#define DB_DOT_H #define DB_DOT_H
#ifdef __GNUG__ // Use this line for wxWindows v1.x
#pragma interface "db.h" //#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 #endif
#if defined(__WXMSW__) || defined(WIN32) #if defined(wx_msw) || defined(__WXMSW__) || defined(WIN32)
#include <windows.h> #include <windows.h>
#endif #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__ #ifdef __UNIX__
# ifndef strnicmp
extern "C" { # define strnicmp strncasecmp
#include "../../src/iodbc/isql.h" # endif
#include "../../src/iodbc/isqlext.h" # ifndef stricmp
typedef float SFLOAT; # define stricmp strcasecmp
typedef double SDOUBLE; # endif
typedef unsigned int UINT;
#define ULONG UDWORD
}
#else #else
# include <io.h>
#define ODBCVER 0x0250
#include <sql.h>
#include <sqlext.h>
#endif #endif
enum enumDummy {enumDum1}; enum enumDummy {enumDum1};
#define SQL_C_BOOLEAN (sizeof(int) == 2 ? SQL_C_USHORT : SQL_C_ULONG) #define SQL_C_BOOLEAN(datatype) (sizeof(datatype) == 1 ? SQL_C_UTINYINT : (sizeof(datatype) == 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 (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 // Database Globals
const int DB_TYPE_NAME_LEN = 40; const int DB_TYPE_NAME_LEN = 40;
@@ -94,13 +132,6 @@ const int DB_DEL_MATCHING = 3;
const int DB_WHERE_KEYFIELDS = 1; const int DB_WHERE_KEYFIELDS = 1;
const int DB_WHERE_MATCHING = 2; 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_GRANT_SELECT = 1; const int DB_GRANT_SELECT = 1;
const int DB_GRANT_INSERT = 2; const int DB_GRANT_INSERT = 2;
const int DB_GRANT_UPDATE = 4; const int DB_GRANT_UPDATE = 4;
@@ -208,8 +239,14 @@ struct DbStuff
{ {
HENV Henv; HENV Henv;
char Dsn[SQL_MAX_DSN_LENGTH+1]; // Data Source Name char Dsn[SQL_MAX_DSN_LENGTH+1]; // Data Source Name
char Uid[20]; // User ID char Uid[20+1]; // User ID
char AuthStr[20]; // Authorization string (password) 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 typedef struct
@@ -236,6 +273,30 @@ enum sqlLog
sqlLogON 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 class WXDLLEXPORT wxDB
{ {
private: private:
@@ -261,7 +322,7 @@ public:
struct struct
{ {
char dbmsName[40]; // Name of the dbms product 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 driverName[40]; // Driver name
char odbcVer[60]; // ODBC version of the driver char odbcVer[60]; // ODBC version of the driver
char drvMgrOdbcVer[60]; // ODBC version of the driver manager char drvMgrOdbcVer[60]; // ODBC version of the driver manager
@@ -308,6 +369,9 @@ public:
//Error reporting mode //Error reporting mode
bool silent; bool silent;
// Number of Ctable objects connected to this db object
unsigned int nTables;
// Inf. about logical data types VARCHAR, INTEGER, FLOAT and DATE. // Inf. about logical data types VARCHAR, INTEGER, FLOAT and DATE.
// This inf. is obtained from the ODBC driver by use of the // This inf. is obtained from the ODBC driver by use of the
// SQLGetTypeInfo() function. The key piece of inf. is the // SQLGetTypeInfo() function. The key piece of inf. is the
@@ -324,12 +388,15 @@ public:
bool DispAllErrors(HENV aHenv, HDBC aHdbc = SQL_NULL_HDBC, HSTMT aHstmt = SQL_NULL_HSTMT); 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); bool GetNextError(HENV aHenv, HDBC aHdbc = SQL_NULL_HDBC, HSTMT aHstmt = SQL_NULL_HSTMT);
void DispNextError(void); 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 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"); bool Grant(int privileges, char *tableName, char *userList = "PUBLIC");
int TranslateSqlState(char *SQLState); int TranslateSqlState(char *SQLState);
bool Catalog(char *userID, char *fileName = "Catalog.txt"); 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 *GetDatabaseName(void) {return dbInf.dbmsName;}
char *GetDataSource(void) {return dsn;} char *GetDataSource(void) {return dsn;}
char *GetUsername(void) {return uid;} char *GetUsername(void) {return uid;}
@@ -338,10 +405,11 @@ public:
HENV GetHENV(void) {return henv;} HENV GetHENV(void) {return henv;}
HDBC GetHDBC(void) {return hdbc;} HDBC GetHDBC(void) {return hdbc;}
HSTMT GetHSTMT(void) {return hstmt;} HSTMT GetHSTMT(void) {return hstmt;}
bool TableExists(char *tableName); // Table name can refer to a table, view, alias or synonym 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);} void LogError(char *errMsg, char *SQLState = 0) {logError(errMsg, SQLState);}
bool SqlLog(enum sqlLog state, char *filename = "sqllog.txt", bool append = FALSE); bool SqlLog(enum sqlLog state, char *filename = "sqllog.txt", bool append = FALSE);
bool WriteSqlLog(char *logMsg); bool WriteSqlLog(char *logMsg);
DBMS Dbms(void);
}; // wxDB }; // wxDB
@@ -359,6 +427,18 @@ struct DbList
DbList *PtrNext; // Pointer to next item in the list 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 // 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 // for other code segments to use, or close all of them when the application has
// completed. // completed.
@@ -368,6 +448,9 @@ bool WXDLLEXPORT FreeDbConnection(wxDB *pDb);
void WXDLLEXPORT CloseDbConnections(void); void WXDLLEXPORT CloseDbConnections(void);
int WXDLLEXPORT NumberDbConnectionsInUse(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 // This routine allows you to query a driver manager
// for a list of available datasources. Call this routine // for a list of available datasources. Call this routine
// the first time using SQL_FETCH_FIRST. Continue to call it // 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. // Purpose: Declaration of the wxTable class.
// Author: Doug Card // Author: Doug Card
// Modified by: // Modified by:
@@ -23,16 +23,30 @@
// SYNOPSIS STOP // SYNOPSIS STOP
*/ */
#ifndef TABLE_DOT_H #ifndef DBTABLE_DOT_H
#define TABLE_DOT_H #define DBTABLE_DOT_H
#ifdef __GNUG__ // Use this line for wxWindows v1.x
#pragma interface "dbtable.h" //#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 #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 following class is used to define a column of a table.
// The wxTable constructor will dynamically allocate as many of // 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 class WXDLLEXPORT CcolDef
{ {
public: 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 DbDataType; // Logical Data Type; e.g. DB_DATA_TYPE_INTEGER
int SqlCtype; // C data type; e.g. SQL_C_LONG int SqlCtype; // C data type; e.g. SQL_C_LONG
void *PtrDataObj; // Address of the data object 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 InsertAllowed; // Specifies whether this column should be included in an INSERT statement
bool DerivedCol; // Specifies whether this column is a derived value bool DerivedCol; // Specifies whether this column is a derived value
SDWORD CbValue; // Internal use only!!! SDWORD CbValue; // Internal use only!!!
bool Null; // NOT FULLY IMPLEMENTED - Allows NULL values in Inserts and Updates
}; // CcolDef }; // CcolDef
// This structure is used when creating secondary indexes. // This structure is used when creating secondary indexes.
class WXDLLEXPORT CidxDef class WXDLLEXPORT CidxDef
{ {
public: 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; bool Ascending;
}; // CidxDef }; // CidxDef
@@ -70,8 +85,10 @@ class WXDLLEXPORT wxTable
{ {
private: private:
ULONG tableID; // Used for debugging. This can help to match up mismatched constructors/destructors
// Private member variables // Private member variables
int currCursorNo; UDWORD cursorType;
// Private member functions // Private member functions
bool bindInsertParams(void); bool bindInsertParams(void);
@@ -91,17 +108,20 @@ public:
HENV henv; // ODBC Environment handle HENV henv; // ODBC Environment handle
HDBC hdbc; // ODBC DB Connection handle HDBC hdbc; // ODBC DB Connection handle
HSTMT hstmt; // ODBC Statement handle HSTMT hstmt; // ODBC Statement handle
// HSTMT c0, c1, c2, c3, c4, c5; // Cursors 0 through 5 HSTMT *hstmtDefault; // Default cursor
HSTMT c0, c1, c2; // Limited to Cursors 0 through 2 for now
HSTMT hstmtInsert; // ODBC Statement handle used specifically for inserts HSTMT hstmtInsert; // ODBC Statement handle used specifically for inserts
HSTMT hstmtDelete; // ODBC Statement handle used specifically for deletes HSTMT hstmtDelete; // ODBC Statement handle used specifically for deletes
HSTMT hstmtUpdate; // ODBC Statement handle used specifically for updates 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. // Table Inf.
char tableName[DB_MAX_TABLE_NAME_LEN+1]; // Table name char tableName[DB_MAX_TABLE_NAME_LEN+1]; // Table name
char queryTableName[DB_MAX_TABLE_NAME_LEN+1]; // Query Table Name char queryTableName[DB_MAX_TABLE_NAME_LEN+1]; // Query Table Name
int noCols; // # of columns in the table 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 // Column Definitions
CcolDef *colDefs; // Array of CcolDef structures CcolDef *colDefs; // Array of CcolDef structures
@@ -109,17 +129,20 @@ public:
// Where, Order By and From clauses // Where, Order By and From clauses
char *where; // Standard SQL where clause, minus the word WHERE char *where; // Standard SQL where clause, minus the word WHERE
char *orderBy; // Standard SQL order by clause, minus the ORDER BY 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 // Flags
bool selectForUpdate; bool selectForUpdate;
// Public member functions // 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(); virtual ~wxTable();
bool Open(void); bool Open(void);
bool CreateTable(void); bool CreateTable(bool attemptDrop=TRUE);
bool CreateIndex(char * idxName, bool unique, int noIdxCols, CidxDef *pIdxDefs); bool DropTable(void);
bool CreateIndex(char * idxName, bool unique, int noIdxCols, CidxDef *pIdxDefs, bool attemptDrop=TRUE);
bool DropIndex(char * idxName);
bool CloseCursor(HSTMT cursor); bool CloseCursor(HSTMT cursor);
int Insert(void); int Insert(void);
bool Update(void); bool Update(void);
@@ -154,11 +177,19 @@ public:
void SetColDefs (int index, char *fieldName, int dataType, void *pData, int cType, void SetColDefs (int index, char *fieldName, int dataType, void *pData, int cType,
int size, bool keyField = FALSE, bool upd = TRUE, int size, bool keyField = FALSE, bool upd = TRUE,
bool insAllow = TRUE, bool derivedCol = FALSE); bool insAllow = TRUE, bool derivedCol = FALSE);
bool SetCursor(int cursorNo = DB_CURSOR0); HSTMT *NewCursor(bool setCursor = FALSE, bool bindColumns = TRUE);
int GetCursor(void) { return(currCursorNo); } bool DeleteCursor(HSTMT *hstmtDel);
void SetCursor(HSTMT *hstmtActivate = (void **) DEFAULT_CURSOR);
HSTMT GetCursor(void) { return(hstmt); }
ULONG Count(void); ULONG Count(void);
int DB_STATUS(void) { return(pDb->DB_STATUS); } int DB_STATUS(void) { return(pDb->DB_STATUS); }
bool Refresh(void); bool Refresh(void);
bool SetNull(int colNo);
bool SetNull(char *colName);
#if __WXDEBUG__ > 0
ULONG GetTableID() { return tableID; };
#endif
}; // wxTable }; // wxTable

View File

@@ -47,10 +47,6 @@
#endif #endif
#endif // Sun #endif // Sun
#if defined(__hpux) && !defined(__HPUX__)
#define __HPUX__
#endif // HP-UX
#elif defined(applec) || defined(THINK_C) || ( defined( __MWERKS__ ) && !defined(__INTEL__) ) #elif defined(applec) || defined(THINK_C) || ( defined( __MWERKS__ ) && !defined(__INTEL__) )
// MacOS // MacOS
#elif defined(__OS2__) #elif defined(__OS2__)
@@ -206,6 +202,12 @@
#undef PACKAGE #undef PACKAGE
#undef VERSION #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 // if we're on a Unixsystem but didn't use configure (so that setup.h didn't
// define __UNIX__), do define __UNIX__ now // define __UNIX__), do define __UNIX__ now
#if !defined(__UNIX__) && defined(__UNIX_LIKE__) #if !defined(__UNIX__) && defined(__UNIX_LIKE__)
@@ -873,11 +875,11 @@ enum wxStretch
/* /*
* wxGauge flags * wxGauge flags
*/ */
#define wxGA_PROGRESSBAR 0x0004
#define wxGA_HORIZONTAL wxHORIZONTAL #define wxGA_HORIZONTAL wxHORIZONTAL
#define wxGA_VERTICAL wxVERTICAL #define wxGA_VERTICAL wxVERTICAL
#define wxGA_PROGRESSBAR 0x0010
// Windows only // Windows only
#define wxGA_SMOOTH 0x0010 #define wxGA_SMOOTH 0x0020
/* /*
* wxSlider flags * wxSlider flags

View File

@@ -19,12 +19,14 @@
#if wxUSE_DIALUP_MANAGER #if wxUSE_DIALUP_MANAGER
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
// constants // misc
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
class WXDLLEXPORT wxArrayString;
extern const wxChar *wxEmptyString; 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 // A class which groups functions dealing with connecting to the network from a
@@ -65,8 +67,17 @@ public:
// operations // 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 // 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 // if async parameter is FALSE, the function waits until the end of dialing
// and returns TRUE upon successful completion. // and returns TRUE upon successful completion.
// if async is TRUE, the function only initiates the connection and returns // if async is TRUE, the function only initiates the connection and returns
@@ -90,6 +101,14 @@ public:
// online status // 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, // 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 // this just means that a RAS connection exists, under Unix we check that
// the "well-known host" (as specified by SetWellKnownHost) is reachable // 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 // Sets the commands to start up the network and to hang up again. Used by
// the Unix implementations only. // the Unix implementations only.
virtual void virtual void
SetConnectCommand(const wxString& commandDial = T("/usr/bin/pon"), SetConnectCommand(const wxString& commandDial = wxT("/usr/bin/pon"),
const wxString& commandHangup = T("/usr/bin/poff")) = 0; 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_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}, #define EVT_DIALUP_DISCONNECTED(func) { wxEVT_DIALUP_DISCONNECTED, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxDialUpEventFunction) & func, NULL},
#endif // wxUSE_DIALUP_MANAGER #endif // wxUSE_DIALUP_MANAGER
#endif // _WX_NET_H #endif // _WX_NET_H

View File

@@ -151,10 +151,10 @@ private:
// template classes // template classes
// ============================================================================ // ============================================================================
// resolves the name conflict between the T() macor and T typedef: we can't // resolves the name conflict between the wxT() macor and T typedef: we can't
// use T() inside WX_DEFINE_ARRAY! // use wxT() inside WX_DEFINE_ARRAY!
#define _WX_ERROR_SIZEOF T("illegal use of DEFINE_ARRAY") #define _WX_ERROR_SIZEOF wxT("illegal use of DEFINE_ARRAY")
#define _WX_ERROR_REMOVE T("removing inexisting element in wxArray::Remove") #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 // 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... // GetVeto() will return FALSE anyhow...
wxCHECK_RET( m_canVeto, 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; m_veto = veto;
} }
@@ -1319,7 +1319,7 @@ public:
virtual void OnCommand(wxWindow& WXUNUSED(win), virtual void OnCommand(wxWindow& WXUNUSED(win),
wxCommandEvent& WXUNUSED(event)) 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 // Called if child control has no callback function

View File

@@ -51,7 +51,7 @@ public:
bool Close(); bool Close();
// assign an existing file descriptor and get it back from wxFFile object // 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; } { Close(); m_fp = fp; m_name = name; }
void Detach() { m_fp = NULL; } void Detach() { m_fp = NULL; }
FILE *fp() const { return m_fp; } 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 // New constructor: one size fits all. Specify wxCONFIG_USE_LOCAL_FILE or
// wxCONFIG_USE_GLOBAL_FILE to say which files should be used. // wxCONFIG_USE_GLOBAL_FILE to say which files should be used.
wxFileConfig(const wxString& appName, wxFileConfig(const wxString& appName,
const wxString& vendorName = T(""), const wxString& vendorName = wxT(""),
const wxString& localFilename = T(""), const wxString& localFilename = wxT(""),
const wxString& globalFilename = T(""), const wxString& globalFilename = wxT(""),
long style = wxCONFIG_USE_LOCAL_FILE); long style = wxCONFIG_USE_LOCAL_FILE);
// dtor will save unsaved data // 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); WXDLLEXPORT bool wxRmdir(const wxString& dir, int flags = 0);
// separators in file names // separators in file names
#define wxFILE_SEP_EXT T('.') #define wxFILE_SEP_EXT wxT('.')
#define wxFILE_SEP_DSK T(':') #define wxFILE_SEP_DSK wxT(':')
#define wxFILE_SEP_PATH_DOS T('\\') #define wxFILE_SEP_PATH_DOS wxT('\\')
#define wxFILE_SEP_PATH_UNIX T('/') #define wxFILE_SEP_PATH_UNIX wxT('/')
// separator in the path list (as in PATH environment variable) // separator in the path list (as in PATH environment variable)
// NB: these are strings and not characters on purpose! // NB: these are strings and not characters on purpose!
#define wxPATH_SEP_DOS T(";") #define wxPATH_SEP_DOS wxT(";")
#define wxPATH_SEP_UNIX T(":") #define wxPATH_SEP_UNIX wxT(":")
// platform independent versions // platform independent versions
#ifdef __UNIX__ #ifdef __UNIX__

View File

@@ -195,10 +195,7 @@ private:
// macros // macros
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
#if !defined(__VISAGECPP__)
// VZ: this is ugly (FIXME)
#define M_FONTDATA GetFontData() #define M_FONTDATA GetFontData()
#endif
#endif #endif
// _WX_FONT_H_BASE_ // _WX_FONT_H_BASE_

View File

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

View File

@@ -32,7 +32,7 @@ public:
// enumerate the different encodings either for given font family or for // enumerate the different encodings either for given font family or for
// all font families - will result in OnFontEncoding() being called for // all font families - will result in OnFontEncoding() being called for
// each available (family, encoding) couple // 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 // callbacks which are called after one of EnumerateXXX() functions from
// above is invoked - all of them may return FALSE to stop enumeration or // above is invoked - all of them may return FALSE to stop enumeration or

View File

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

View File

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

View File

@@ -352,6 +352,12 @@ public:
: wxGenericGrid(parent, x, y, width, height, style, name) : 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 class WXDLLEXPORT wxGridEvent : public wxCommandEvent

View File

@@ -54,7 +54,7 @@ public:
@param newmsg if used, new message to display @param newmsg if used, new message to display
@returns true if ABORT button has not been pressed @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 /* 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 the program decided to continue the operation (e.g., user didn't

View File

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

View File

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

View File

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

View File

@@ -43,8 +43,6 @@ extern const wxChar *wxButtonNameStr;
class wxBitmapButton: public wxButton class wxBitmapButton: public wxButton
{ {
DECLARE_DYNAMIC_CLASS(wxBitmapButton)
public: public:
wxBitmapButton(); wxBitmapButton();
inline wxBitmapButton( wxWindow *parent, wxWindowID id, const wxBitmap& bitmap, inline wxBitmapButton( wxWindow *parent, wxWindowID id, const wxBitmap& bitmap,
@@ -93,6 +91,9 @@ public:
wxBitmap m_disabled; wxBitmap m_disabled;
wxBitmap m_focus; wxBitmap m_focus;
wxBitmap m_selected; wxBitmap m_selected;
private:
DECLARE_DYNAMIC_CLASS(wxBitmapButton)
}; };
#endif #endif

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -42,10 +42,7 @@ extern const wxChar* wxEmptyString;
class wxComboBox : public wxControl class wxComboBox : public wxControl
{ {
DECLARE_DYNAMIC_CLASS(wxComboBox)
public: public:
inline wxComboBox() {} inline wxComboBox() {}
inline wxComboBox(wxWindow *parent, wxWindowID id, inline wxComboBox(wxWindow *parent, wxWindowID id,
const wxString& value = wxEmptyString, const wxString& value = wxEmptyString,
@@ -108,11 +105,11 @@ public:
void SetSelection( long from, long to ); void SetSelection( long from, long to );
void SetEditable( bool editable ); void SetEditable( bool editable );
// implementation
void OnSize( wxSizeEvent &event ); void OnSize( wxSizeEvent &event );
void OnChar( wxKeyEvent &event ); void OnChar( wxKeyEvent &event );
// implementation
bool m_alreadySent; bool m_alreadySent;
wxList m_clientDataList; wxList m_clientDataList;
wxList m_clientObjectList; wxList m_clientObjectList;
@@ -124,6 +121,8 @@ public:
bool IsOwnGtkWindow( GdkWindow *window ); bool IsOwnGtkWindow( GdkWindow *window );
void ApplyWidgetStyle(); void ApplyWidgetStyle();
private:
DECLARE_DYNAMIC_CLASS(wxComboBox)
DECLARE_EVENT_TABLE() DECLARE_EVENT_TABLE()
}; };

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -8,7 +8,7 @@
// Licence: wxWindows licence // Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
#ifndef __GTKSPINPUTTH__ #ifndef __GTKSPINBUTTH__
#define __GTKSPINBUTTH__ #define __GTKSPINBUTTH__
#ifdef __GNUG__ #ifdef __GNUG__
@@ -21,8 +21,6 @@
class wxSpinButton : public wxSpinButtonBase class wxSpinButton : public wxSpinButtonBase
{ {
DECLARE_DYNAMIC_CLASS(wxSpinButton)
public: public:
wxSpinButton() { } wxSpinButton() { }
wxSpinButton( wxWindow *parent, wxWindowID id = -1, wxSpinButton( wxWindow *parent, wxWindowID id = -1,
@@ -31,7 +29,6 @@ public:
{ {
Create(parent, id, pos, size, style, name); Create(parent, id, pos, size, style, name);
} }
~wxSpinButton();
bool Create( wxWindow *parent, wxWindowID id = -1, bool Create( wxWindow *parent, wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
@@ -54,6 +51,7 @@ public:
private: private:
DECLARE_EVENT_TABLE() DECLARE_EVENT_TABLE()
DECLARE_DYNAMIC_CLASS(wxSpinButton)
}; };
#endif #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 _GtkMyFixed GtkMyFixed;
typedef struct _GtkMyFixedClass GtkMyFixedClass; typedef struct _GtkMyFixedClass GtkMyFixedClass;
typedef struct _GtkMyFixedChild GtkMyFixedChild;
struct _GtkMyFixed struct _GtkMyFixed
{ {
GtkContainer container; GtkContainer container;
GList *children; GList *children;
#if (GTK_MINOR_VERSION > 0)
GtkMyShadowType shadow_type; 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 struct _GtkMyFixedClass
{ {
GtkContainerClass parent_class; GtkContainerClass parent_class;
#if (GTK_MINOR_VERSION > 0)
void (*set_scroll_adjustments) (GtkMyFixed *myfixed, void (*set_scroll_adjustments) (GtkMyFixed *myfixed,
GtkAdjustment *hadjustment, GtkAdjustment *hadjustment,
GtkAdjustment *vadjustment); GtkAdjustment *vadjustment);
#endif
};
struct _GtkMyFixedChild
{
GtkWidget *widget;
gint16 x;
gint16 y;
gint16 width;
gint16 height;
}; };
guint gtk_myfixed_get_type (void); guint gtk_myfixed_get_type (void);
GtkWidget* gtk_myfixed_new (void); GtkWidget* gtk_myfixed_new (void);
#if (GTK_MINOR_VERSION > 0)
void gtk_myfixed_set_shadow_type (GtkMyFixed *myfixed, void gtk_myfixed_set_shadow_type (GtkMyFixed *myfixed,
GtkMyShadowType type); 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, void gtk_myfixed_put (GtkMyFixed *myfixed,
GtkWidget *widget, GtkWidget *widget,
gint16 x, gint x,
gint16 y, gint y,
gint16 width, gint width,
gint16 height); gint height);
void gtk_myfixed_move (GtkMyFixed *myfixed, void gtk_myfixed_move (GtkMyFixed *myfixed,
GtkWidget *widget, GtkWidget *widget,
gint16 x, gint x,
gint16 y ); gint y );
void gtk_myfixed_resize (GtkMyFixed *myfixed, void gtk_myfixed_resize (GtkMyFixed *myfixed,
GtkWidget *widget, GtkWidget *widget,
gint16 width, gint width,
gint16 height ); gint height );
void gtk_myfixed_set_size (GtkMyFixed *myfixed, void gtk_myfixed_set_size (GtkMyFixed *myfixed,
GtkWidget *widget, GtkWidget *widget,
gint16 x, gint x,
gint16 y, gint y,
gint16 width, gint width,
gint16 height); gint height);
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif /* __cplusplus */ #endif /* __cplusplus */

View File

@@ -172,14 +172,9 @@ public:
float m_oldHorizontalPos; float m_oldHorizontalPos;
float m_oldVerticalPos; 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 // extra (wxGTK-specific) flags
bool m_needParent:1; /* ! wxFrame, wxDialog, wxNotebookPage ? */ bool m_needParent:1; /* ! wxFrame, wxDialog, wxNotebookPage ? */
bool m_noExpose:1; /* wxGLCanvas has its own redrawing */
bool m_hasScrolling:1; bool m_hasScrolling:1;
bool m_isScrolling:1; bool m_isScrolling:1;
bool m_hasVMT:1; bool m_hasVMT:1;
@@ -188,7 +183,7 @@ public:
bool m_isStaticBox:1; /* faster than IS_KIND_OF */ bool m_isStaticBox:1; /* faster than IS_KIND_OF */
bool m_isRadioButton: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_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 // 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 // (typcally in the constructor) but the actual GTK style must not be set
@@ -196,12 +191,6 @@ public:
bool m_delayedFont:1; bool m_delayedFont:1;
bool m_delayedForegroundColour:1; bool m_delayedForegroundColour:1;
bool m_delayedBackgroundColour: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 // contains GTK's widgets internal information about non-default widget
// font and colours. we create one for each widget that gets any // font and colours. we create one for each widget that gets any

View File

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

View File

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

View File

@@ -43,8 +43,6 @@ extern const wxChar *wxButtonNameStr;
class wxBitmapButton: public wxButton class wxBitmapButton: public wxButton
{ {
DECLARE_DYNAMIC_CLASS(wxBitmapButton)
public: public:
wxBitmapButton(); wxBitmapButton();
inline wxBitmapButton( wxWindow *parent, wxWindowID id, const wxBitmap& bitmap, inline wxBitmapButton( wxWindow *parent, wxWindowID id, const wxBitmap& bitmap,
@@ -93,6 +91,9 @@ public:
wxBitmap m_disabled; wxBitmap m_disabled;
wxBitmap m_focus; wxBitmap m_focus;
wxBitmap m_selected; wxBitmap m_selected;
private:
DECLARE_DYNAMIC_CLASS(wxBitmapButton)
}; };
#endif #endif

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -42,10 +42,7 @@ extern const wxChar* wxEmptyString;
class wxComboBox : public wxControl class wxComboBox : public wxControl
{ {
DECLARE_DYNAMIC_CLASS(wxComboBox)
public: public:
inline wxComboBox() {} inline wxComboBox() {}
inline wxComboBox(wxWindow *parent, wxWindowID id, inline wxComboBox(wxWindow *parent, wxWindowID id,
const wxString& value = wxEmptyString, const wxString& value = wxEmptyString,
@@ -108,11 +105,11 @@ public:
void SetSelection( long from, long to ); void SetSelection( long from, long to );
void SetEditable( bool editable ); void SetEditable( bool editable );
// implementation
void OnSize( wxSizeEvent &event ); void OnSize( wxSizeEvent &event );
void OnChar( wxKeyEvent &event ); void OnChar( wxKeyEvent &event );
// implementation
bool m_alreadySent; bool m_alreadySent;
wxList m_clientDataList; wxList m_clientDataList;
wxList m_clientObjectList; wxList m_clientObjectList;
@@ -124,6 +121,8 @@ public:
bool IsOwnGtkWindow( GdkWindow *window ); bool IsOwnGtkWindow( GdkWindow *window );
void ApplyWidgetStyle(); void ApplyWidgetStyle();
private:
DECLARE_DYNAMIC_CLASS(wxComboBox)
DECLARE_EVENT_TABLE() DECLARE_EVENT_TABLE()
}; };

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -8,7 +8,7 @@
// Licence: wxWindows licence // Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////
#ifndef __GTKSPINPUTTH__ #ifndef __GTKSPINBUTTH__
#define __GTKSPINBUTTH__ #define __GTKSPINBUTTH__
#ifdef __GNUG__ #ifdef __GNUG__
@@ -21,8 +21,6 @@
class wxSpinButton : public wxSpinButtonBase class wxSpinButton : public wxSpinButtonBase
{ {
DECLARE_DYNAMIC_CLASS(wxSpinButton)
public: public:
wxSpinButton() { } wxSpinButton() { }
wxSpinButton( wxWindow *parent, wxWindowID id = -1, wxSpinButton( wxWindow *parent, wxWindowID id = -1,
@@ -31,7 +29,6 @@ public:
{ {
Create(parent, id, pos, size, style, name); Create(parent, id, pos, size, style, name);
} }
~wxSpinButton();
bool Create( wxWindow *parent, wxWindowID id = -1, bool Create( wxWindow *parent, wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
@@ -54,6 +51,7 @@ public:
private: private:
DECLARE_EVENT_TABLE() DECLARE_EVENT_TABLE()
DECLARE_DYNAMIC_CLASS(wxSpinButton)
}; };
#endif #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 _GtkMyFixed GtkMyFixed;
typedef struct _GtkMyFixedClass GtkMyFixedClass; typedef struct _GtkMyFixedClass GtkMyFixedClass;
typedef struct _GtkMyFixedChild GtkMyFixedChild;
struct _GtkMyFixed struct _GtkMyFixed
{ {
GtkContainer container; GtkContainer container;
GList *children; GList *children;
#if (GTK_MINOR_VERSION > 0)
GtkMyShadowType shadow_type; 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 struct _GtkMyFixedClass
{ {
GtkContainerClass parent_class; GtkContainerClass parent_class;
#if (GTK_MINOR_VERSION > 0)
void (*set_scroll_adjustments) (GtkMyFixed *myfixed, void (*set_scroll_adjustments) (GtkMyFixed *myfixed,
GtkAdjustment *hadjustment, GtkAdjustment *hadjustment,
GtkAdjustment *vadjustment); GtkAdjustment *vadjustment);
#endif
};
struct _GtkMyFixedChild
{
GtkWidget *widget;
gint16 x;
gint16 y;
gint16 width;
gint16 height;
}; };
guint gtk_myfixed_get_type (void); guint gtk_myfixed_get_type (void);
GtkWidget* gtk_myfixed_new (void); GtkWidget* gtk_myfixed_new (void);
#if (GTK_MINOR_VERSION > 0)
void gtk_myfixed_set_shadow_type (GtkMyFixed *myfixed, void gtk_myfixed_set_shadow_type (GtkMyFixed *myfixed,
GtkMyShadowType type); 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, void gtk_myfixed_put (GtkMyFixed *myfixed,
GtkWidget *widget, GtkWidget *widget,
gint16 x, gint x,
gint16 y, gint y,
gint16 width, gint width,
gint16 height); gint height);
void gtk_myfixed_move (GtkMyFixed *myfixed, void gtk_myfixed_move (GtkMyFixed *myfixed,
GtkWidget *widget, GtkWidget *widget,
gint16 x, gint x,
gint16 y ); gint y );
void gtk_myfixed_resize (GtkMyFixed *myfixed, void gtk_myfixed_resize (GtkMyFixed *myfixed,
GtkWidget *widget, GtkWidget *widget,
gint16 width, gint width,
gint16 height ); gint height );
void gtk_myfixed_set_size (GtkMyFixed *myfixed, void gtk_myfixed_set_size (GtkMyFixed *myfixed,
GtkWidget *widget, GtkWidget *widget,
gint16 x, gint x,
gint16 y, gint y,
gint16 width, gint width,
gint16 height); gint height);
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif /* __cplusplus */ #endif /* __cplusplus */

View File

@@ -172,14 +172,9 @@ public:
float m_oldHorizontalPos; float m_oldHorizontalPos;
float m_oldVerticalPos; 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 // extra (wxGTK-specific) flags
bool m_needParent:1; /* ! wxFrame, wxDialog, wxNotebookPage ? */ bool m_needParent:1; /* ! wxFrame, wxDialog, wxNotebookPage ? */
bool m_noExpose:1; /* wxGLCanvas has its own redrawing */
bool m_hasScrolling:1; bool m_hasScrolling:1;
bool m_isScrolling:1; bool m_isScrolling:1;
bool m_hasVMT:1; bool m_hasVMT:1;
@@ -188,7 +183,7 @@ public:
bool m_isStaticBox:1; /* faster than IS_KIND_OF */ bool m_isStaticBox:1; /* faster than IS_KIND_OF */
bool m_isRadioButton: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_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 // 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 // (typcally in the constructor) but the actual GTK style must not be set
@@ -196,12 +191,6 @@ public:
bool m_delayedFont:1; bool m_delayedFont:1;
bool m_delayedForegroundColour:1; bool m_delayedForegroundColour:1;
bool m_delayedBackgroundColour: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 // contains GTK's widgets internal information about non-default widget
// font and colours. we create one for each widget that gets any // font and colours. we create one for each widget that gets any

View File

@@ -38,7 +38,7 @@ class wxHtmlContainerCell;
class WXDLLEXPORT wxHtmlCell : public wxObject class WXDLLEXPORT wxHtmlCell : public wxObject
{ {
public: 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;}; virtual ~wxHtmlCell() {if (m_Next) delete m_Next;};
void SetParent(wxHtmlContainerCell *p) {m_Parent = p;} void SetParent(wxHtmlContainerCell *p) {m_Parent = p;}
@@ -95,6 +95,20 @@ class WXDLLEXPORT wxHtmlCell : public wxObject
// HINT: if this handling is not enough for you you should use // HINT: if this handling is not enough for you you should use
// wxHtmlBinderCell // 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: protected:
wxHtmlCell *m_Next; wxHtmlCell *m_Next;
@@ -108,6 +122,8 @@ class WXDLLEXPORT wxHtmlCell : public wxObject
// position where the fragment is drawn // position where the fragment is drawn
wxString m_Link; wxString m_Link;
// destination address if this fragment is hypertext link, "" otherwise // 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 Layout(int w);
virtual void Draw(wxDC& dc, int x, int y, int view_y1, int view_y2); 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 void DrawInvisible(wxDC& dc, int x, int y);
virtual bool AdjustPagebreak(int *pagebreak);
void InsertCell(wxHtmlCell *cell); void InsertCell(wxHtmlCell *cell);
// insert cell at the end of m_Cells list // insert cell at the end of m_Cells list

View File

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

View File

@@ -70,25 +70,6 @@ class WXDLLEXPORT wxHtmlWindow : public wxScrolledWindow
{ {
DECLARE_DYNAMIC_CLASS(wxHtmlWindow) 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: public:
wxHtmlWindow() : wxScrolledWindow() {}; wxHtmlWindow() : wxScrolledWindow() {};
wxHtmlWindow(wxWindow *parent, wxWindowID id = -1, wxHtmlWindow(wxWindow *parent, wxWindowID id = -1,
@@ -188,6 +169,7 @@ class WXDLLEXPORT wxHtmlWindow : public wxScrolledWindow
virtual wxHtmlFilter *GetDefaultFilter() {return new wxHtmlFilterPlainText;} virtual wxHtmlFilter *GetDefaultFilter() {return new wxHtmlFilterPlainText;}
// returns new filter (will be stored into m_DefaultFilter variable) // returns new filter (will be stored into m_DefaultFilter variable)
protected: protected:
wxHtmlContainerCell *m_Cell; wxHtmlContainerCell *m_Cell;
// This is pointer to the first cell in parsed data. // This is pointer to the first cell in parsed data.
@@ -215,6 +197,27 @@ class WXDLLEXPORT wxHtmlWindow : public wxScrolledWindow
int m_Style; 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() DECLARE_EVENT_TABLE()
}; };

View File

@@ -363,7 +363,7 @@ protected:
}; };
extern void wxInitAllImageHandlers(); extern void WXDLLEXPORT wxInitAllImageHandlers();
#endif #endif
// _WX_IMAGE_H_ // _WX_IMAGE_H_

View File

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

View File

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

View File

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

View File

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

View File

@@ -32,11 +32,7 @@ class wxMimeTypesManagerImpl;
// the accessors *must* be checked! // the accessors *must* be checked!
class WXDLLEXPORT wxFileType class WXDLLEXPORT wxFileType
{ {
#ifdef __MWERKS__ friend class WXDLLEXPORT wxMimeTypesManagerImpl; // it has access to m_impl
friend class wxMimeTypesManagerImpl; // it has access to m_impl
#else
friend wxMimeTypesManagerImpl; // it has access to m_impl
#endif
public: public:
// An object of this class must be passed to Get{Open|Print}Command. The // 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: public:
/* This list should be filled in with strings indicating the formats /* 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 Format names should be 4 characters long, so things will work
out on the Macintosh */ out on the Macintosh */
wxStringList formats; wxStringList formats;
@@ -147,7 +147,7 @@ class WXDLLEXPORT wxClipboard : public wxObject
/* Set the clipboard string; does not require a client. */ /* Set the clipboard string; does not require a client. */
void SetClipboardString(char *, long time); 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); char *GetClipboardString(long time);
/* Get data from the clipboard */ /* 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 // the string ID identifies the format of clipboard or DnD data. a word
// processor would e.g. add a wxTextDataObject and a wxPrivateDataObject // 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 ) void SetId( const wxString& id )
{ m_id = id; } { m_id = id; }

View File

@@ -139,17 +139,17 @@ WXDLLEXPORT_DATA(extern HFONT) wxSTATUS_LINE_FONT;
* for this combination of CTl3D/FAFA settings * 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 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_FLAGS (BS_AUTOCHECKBOX|WS_TABSTOP|WS_CHILD)
#define CHECK_IS_FAFA FALSE #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_FLAGS (BS_AUTORADIOBUTTON|WS_CHILD|WS_VISIBLE)
#define RADIO_SIZE 20 #define RADIO_SIZE 20
#define RADIO_IS_FAFA FALSE #define RADIO_IS_FAFA FALSE
#define PURE_WINDOWS #define PURE_WINDOWS
#define GROUP_CLASS T("BUTTON") #define GROUP_CLASS wxT("BUTTON")
#define GROUP_FLAGS (BS_GROUPBOX|WS_CHILD|WS_VISIBLE) #define GROUP_FLAGS (BS_GROUPBOX|WS_CHILD|WS_VISIBLE)
/* /*

View File

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

@@ -52,4 +52,4 @@ protected:
#endif // wxUSE_NATIVE_STATUSBAR #endif // wxUSE_NATIVE_STATUSBAR
#endif //_STATBR95_H #endif

View File

@@ -49,6 +49,7 @@ enum
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
// wxWindow declaration for MSW // wxWindow declaration for MSW
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
class WXDLLEXPORT wxWindow : public wxWindowBase class WXDLLEXPORT wxWindow : public wxWindowBase
{ {
DECLARE_DYNAMIC_CLASS(wxWindow); DECLARE_DYNAMIC_CLASS(wxWindow);
@@ -404,6 +405,12 @@ protected:
// will be the width and height of the text // will be the width and height of the text
virtual wxSize DoGetBestSize(); 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 #if wxUSE_TOOLTIPS
virtual void DoSetToolTip( wxToolTip *tip ); virtual void DoSetToolTip( wxToolTip *tip );
#endif // wxUSE_TOOLTIPS #endif // wxUSE_TOOLTIPS

View File

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

View File

@@ -67,11 +67,19 @@ public:
~wxAcceleratorTable(); ~wxAcceleratorTable();
inline wxAcceleratorTable& operator = (const wxAcceleratorTable& accel) { if (*this == accel) return (*this); Ref(accel); return *this; } inline wxAcceleratorTable& operator = (const wxAcceleratorTable& accel)
inline bool operator == (const wxAcceleratorTable& accel) { return m_refData == accel.m_refData; } { 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 bool operator != (const wxAcceleratorTable& accel)
{ return m_refData != accel.m_refData; };
bool Ok() const; 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; WXDLLEXPORT_DATA(extern wxAcceleratorTable) wxNullAcceleratorTable;

View File

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

View File

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

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