Compare commits

...

385 Commits

Author SHA1 Message Date
Bryan Petty
fab7a8d0e5 This commit was manufactured by cvs2svn to create tag
'wxWINDOWS_2_1_BETA_8'.

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


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


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


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


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


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


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


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


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


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


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


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


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

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

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


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


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


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

Added access methods to wxGridEvent.


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


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


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


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


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


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




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

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

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

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

	Added wxGrid.SetEditInPlace and wxGrid.GetEditInPlace.

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

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

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

	Added wxGrid.GetCells

	Added wxSystemSettings static methods as functions with names like
	wxSystemSettings_GetSystemColour.

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

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

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


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


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


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


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


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


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


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




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


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

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

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

Changed a dangerous static variable to a member variable.


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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


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

View File

@@ -30,3 +30,4 @@ configure
setup.h
stamp-h
libtool
aclocal.m4

View File

@@ -5,20 +5,70 @@
I) Windows using plain makefiles
----------------------------------------
No idea, never did it.
a) Using the GNU MinGW32 or GNU CygWin32 compilers
You'll need the compiler itself which is available from
II) Unix using plain makefiles.
----------------------------------------
http://www.cygwin.com
No idea, never did it.
When using MingW32 you'll need GNU make which is part of
part of the CygWin32 toolchain and is also available as
a stand alone port without the infamous Cygwin.dll from
http://agnes.dida.physik.uni-essen.de/~janjaap/mingw32
The makefile has small problems with Cygwin<69>s tools
so it is recommended not to use these (but MingGW32
and its make.exe).
-> Set your path so that it includes the directory
where your compiler and tools reside
-> Assume that you installed the wxWindows sources
into c:\wxWin
-> Copy c:\wxWin\include\wx\msw\setup0.h
to c:\wxWin\include\wx\msw\setup.h
-> Edit c:\wxWin\include\wx\msw\setup.h so that
most features are enabled (i.e. defined to 1) with
#define wxUSE_SOCKETS 0
#define wxUSE_HTML 1
#define wxUSE_THREADS 1
#define wxUSE_FS_INET 0
#define wxUSE_FS_ZIP 1
#define wxUSE_BUSYINFO 1
#define wxUSE_DYNLIB_CLASS 1
#define wxUSE_ZIPSTREAM 1
#define wxUSE_JPEGLIB 1
#define wxUSE_PNGLIB 1
and iostreams ares disabled with
#define wxUSE_STD_IOSTREAM 0
-> type: cd c:\wxWin\src\msw
-> type: make -f makefile.g95
II) GTK port on Unix using plain makefiles.
------------------------------------------
Set WXWIN environment variable to the base directory such
as ~/wxWindows
-> type: export WXWIN=~/wxWindows
-> edit ~/wxWindows/src/gtk.env as you wish.
-> type: cd ~/wxWindows/src/gtk
-> type: cp ./setup0.h setup.h
-> type: make
III) Windows using configure
----------------------------------------
No idea..
Take a look at Unix->Windows cross compiling. With minor
modifications, this should work in Windows if you've got the cygnus
utilities (bash, GNU make, etc) and either mingw32 or cygwin32 installed.
See http://www.cygnus.com for these programs, or go straight to their
ftp server at ftp://sourceware.cygnus.com/pub/cygwin/.
Of course, you can also build the library using plain makefiles (see
section I).
IV) Unix using configure
----------------------------------------
@@ -27,7 +77,7 @@ a) You have all the newest and greatest GNU tools installed on your system
and in the same directory hierachy (e.g. either all tools in /usr or all
in /usr/local), these tools are:
- GNU libtool 1.2e (1.3 doesn't work here)
- GNU autoconf 2.14 (including autoheader 2.14)
- GNU autoconf 2.13 (including autoheader 2.13)
- GNU automake 1.4 (including aclocal 1.4)
and possibly but not forcibly
- GNU make 3.76.1
@@ -57,6 +107,76 @@ or type: ../configure --with-wine
V) MacOS
----------------------------------------
V) OS/2
VI) OS/2
----------------------------------------
VII) Unix->Windows cross-compiling using configure
--------------------------------------------------
First you'll need a cross-compiler; linux glibc binaries of mingw32 and
cygwin32 (both based on egcs) can be found at
ftp://ftp.objsw.com/pub/crossgcc/linux-x-win32. Otherwise you can
compile one yourself. Check the relevant FAQs.
[ A Note about cygwin32 and mingw32: the main difference is that cygwin32
binaries are always linked against cygwin.dll. This dll encapsulates most
standard Unix C extensions, which is very handy if you're porting unix
software to windows. However, wxMSW doesn't need this, so mingw32 is
preferable if you write portable C(++). ]
You might want to build both Unix and Windows binaries in the same source
tree; to do this make subdirs for each e.g. unix and win32. If you've
already build wxWindows in the main dir, do a 'make distclean' there,
otherwise configure will get confused. (In any case, read the section 'Unix
using configure' and make sure you're able to build a native wxWindows
library; cross-compiling errors can be pretty obscure and you'll want to be
sure that your configure setup is basically sound.)
To cross compile the windows library, do
-> cd win32
Now run configure. There are two ways to do this
-> ../configure --host=i586-mingw32 --build=i586-linux --with-mingw \
--enable-dnd=no
where --build= should read whatever platform you're building on. Configure
will notice that build and host platforms differ, and automatically prepend
i586-mingw32- to gcc, ar, ld, etc (make sure they're in the PATH!).
The other way to run configure is by specifying the names of the binaries
yourself:
-> CC=i586-mingw32-gcc CXX=i586-mingw32-g++ RANLIB=i586-mingw32-ranlib \
DLLTOOL=i586-mingw32-dlltool LD=i586-mingw32-ld NM=i586-mingw32-nm \
../configure --host=i586-mingw32 --with-mingw --enable-dnd=no
(all assuming you're using mingw32)
Drag'n'drop is disabled because mingw32 lacks (AFAIK) OLE headers.
Configure will conclude that shared libraries are out of the question and
opt for a static one. I haven't looked into DLL creation yet.
Type
-> make -C src
and wait, wait, wait. Don't leave the room, because the minute you do there
will be a compile error :-)
If this is successful, try building the minimal sample:
-> cd samples/minimal
-> make
-> mv minimal minimal.exe
and run it with wine, for example
-> wine minimal.exe
If all is well, do an install; from win32
-> make install
Native and cross-compiled installations can co-exist peacefully
(as long as their widget sets differ), except for wx-config. You might
want to rename the cross-compiled one to i586-mingw32-wx-config, or something.
Cross-compiling TODO:
---------------------
- resource compiling must be done manually for now (should/can we link the
default wx resources into libwx_msw.a?) [ No we can't; the linker won't
link it in... you have to supply an object file ]
- dynamic libraries
- static executables are HUGE -- there must be room for improvement.

View File

@@ -2,8 +2,10 @@
/* */
/* Version: $Id$ */
#ifndef __GTKSETUPH__
#define __GTKSETUPH__
/* This define (__WX_SETUP_H__) is used both to insure setup.h is included
* only once and to indicate that we are building using configure. */
#ifndef __WX_SETUP_H__
#define __WX_SETUP_H__
#ifdef __GNUG__
#pragma interface
@@ -31,7 +33,7 @@
/*
* Define to 1 for Unix[-like] system
*/
#define wxUSE_UNIX 1
#define wxUSE_UNIX 0
#undef __UNIX__
#undef __LINUX__
@@ -51,11 +53,13 @@
#undef __ULTRIX__
#undef __DATA_GENERAL__
#undef __EMX__
#undef _GNU_SOURCE
#undef __WINDOWS__
#undef __WIN95__
#undef __WIN32__
#undef __GNUWIN32__
#undef WINVER
/* ------------------------------------------------------------------------ */
/* compiler options */
@@ -144,6 +148,11 @@
*/
#define wxUSE_TEXTDLG 0
/*
* Use startup tips
*/
#define wxUSE_STARTUP_TIPS 0
/*
* Use progress dialog
*/
@@ -266,7 +275,7 @@
*/
#define wxUSE_TOOLBAR 0
#ifdef __WXWINE__
#if defined(__WXWINE__) || defined(__GNUWIN32__)
#if wxUSE_TOOLBAR
#define wxUSE_BUTTONBAR 1
#endif
@@ -334,7 +343,7 @@
/*
* wxLibrary class
*/
#define wxUSE_DYNLIB_CLASS 1
#define wxUSE_DYNLIB_CLASS 0
/* ------------------------------------------------------------------------ */
/* PS options */
@@ -469,15 +478,15 @@
* Use Apple Ieee-double converter
*/
#define wxUSE_APPLE_IEEE 0
/*
/*
* Compatibility with 1.66 API.
* Level 0: no backward compatibility, all new features
* Level 1: wxDC, OnSize (etc.) compatibility, but
* some new features such as event tables
* some new features such as event tables
*/
#define WXWIN_COMPATIBILITY 0
/*
* Compatibility with 2.0 API.
/*
* Compatibility with 2.0 API.
*/
#define WXWIN_COMPATIBILITY_2 1
/*
@@ -528,6 +537,28 @@
*/
#define wxUSE_MINIFRAME 0
/*
* wxHTML
*/
#define wxUSE_HTML 0
/*
* (virtual) filesystems code
*/
#define wxUSE_FS_INET 0
#define wxUSE_FS_ZIP 0
/*
* A class that shows info window when app is busy
* (works exactly like wxBusyCursor)
*/
#define wxUSE_BUSYINFO 0
/*
* Zip stream for accessing files stored inside .zip archives
*/
#define wxUSE_ZIPSTREAM 0
/*
* Disable this if your compiler can't cope
* with omission of prototype parameters.
@@ -536,11 +567,11 @@
/*
* The const keyword is being introduced more in wxWindows.
* You can use this setting to maintain backward compatibility.
* If 0: will use const wherever possible.
* If 1: will use const only where necessary
* for precompiled headers to work.
* If 2: will be totally backward compatible, but precompiled
* headers may not work and program size will be larger.
* If 0: will use const wherever possible.
* If 1: will use const only where necessary
* for precompiled headers to work.
* If 2: will be totally backward compatible, but precompiled
* headers may not work and program size will be larger.
*/
#define CONST_COMPATIBILITY 0
@@ -583,4 +614,4 @@
@BOTTOM@
#endif /* __GTKSETUPH__ */
#endif /* __WX_SETUP_H__ */

View File

@@ -397,3 +397,27 @@ AC_DEFUN(WX_ARG_ENABLE,
fi
])
dnl -
dnl - GNU libc extension (added by GL)
dnl -
AC_DEFUN(WX_GNU_EXTENSIONS,
[
AC_MSG_CHECKING([if you need GNU extensions])
AC_CACHE_VAL(wx_cv_gnu_extensions,[
AC_TRY_COMPILE([#include <features.h>],[
#ifndef __GNU_LIBRARY__
Compile error wanted
#endif
],
[wx_cv_gnu_extensions=yes],
[wx_cv_gnu_extensions=no])
])
AC_MSG_RESULT($wx_cv_gnu_extensions)
if test "$wx_cv_gnu_extensions" = "yes"; then
AC_DEFINE_UNQUOTED(_GNU_SOURCE)
fi
])

View File

@@ -18,7 +18,7 @@ dnl ---------------------------------------------------------------------------
dnl the file passed to AC_INIT should be specific to our package
AC_INIT(wx-config.in)
AC_CANONICAL_HOST
AC_CANONICAL_SYSTEM
dnl When making releases do:
dnl
@@ -80,7 +80,7 @@ USE_FREEBSD=
USE_VMS=
USE_ULTRIX=
USE_CYGWIN=
USE_MINGW32=
USE_MINGW=
USE_DATA_GENERAL=
dnl the list of all available toolkits
@@ -186,6 +186,16 @@ case "${host}" in
AC_DEFINE(__WIN95__)
AC_DEFINE(__WINDOWS__)
AC_DEFINE(__GNUWIN32__)
AC_DEFINE(WINVER, 0x0400)
DEFAULT_DEFAULT_wxUSE_MSW=1
;;
*-*-mingw32* )
USE_UNIX=0
AC_DEFINE(__WIN32__)
AC_DEFINE(__WIN95__)
AC_DEFINE(__WINDOWS__)
AC_DEFINE(__GNUWIN32__)
AC_DEFINE(WINVER, 0x0400)
DEFAULT_DEFAULT_wxUSE_MSW=1
;;
@@ -289,8 +299,14 @@ if test $DEBUG_CONFIGURE = 1; then
DEFAULT_wxUSE_COMMONDLGS=no
DEFAULT_wxUSE_DIRDLG=no
DEFAULT_wxUSE_TEXTDLG=no
DEFAULT_wxUSE_STARTUP_TIPS=no
DEFAULT_wxUSE_PROGRESSDLG=no
DEFAULT_wxUSE_MINIFRAME=no
DEFAULT_wxUSE_HTML=no
DEFAULT_wxUSE_FS_INET=no
DEFAULT_wxUSE_FS_ZIP=no
DEFAULT_wxUSE_BUSYINFO=no
DEFAULT_wxUSE_ZIPSTREAM=no
DEFAULT_wxUSE_VALIDATORS=yes
DEFAULT_wxUSE_ACCEL=no
@@ -387,8 +403,14 @@ else
DEFAULT_wxUSE_COMMONDLGS=yes
DEFAULT_wxUSE_DIRDLG=yes
DEFAULT_wxUSE_TEXTDLG=yes
DEFAULT_wxUSE_STARTUP_TIPS=yes
DEFAULT_wxUSE_PROGRESSDLG=yes
DEFAULT_wxUSE_MINIFRAME=yes
DEFAULT_wxUSE_HTML=yes
DEFAULT_wxUSE_FS_INET=yes
DEFAULT_wxUSE_FS_ZIP=yes
DEFAULT_wxUSE_BUSYINFO=yes
DEFAULT_wxUSE_ZIPSTREAM=yes
DEFAULT_wxUSE_VALIDATORS=yes
DEFAULT_wxUSE_ACCEL=yes
@@ -521,6 +543,9 @@ WX_ARG_ENABLE(wcsrtombs, [ --enable-wcsrtombs use wcsrtombs instead of
WX_ARG_ENABLE(wxprintfv, [ --enable-wxprintfv use wxWindows implementation of vprintf()], wxUSE_EXPERIMENTAL_PRINTF)
WX_ARG_ENABLE(joystick, [ --enable-joystick compile in joystick support (Linux only)], wxUSE_JOYSTICK)
WX_ARG_ENABLE(std_iostreams, [ --enable-std_iostreams use standard C++ stream classes], wxUSE_STD_IOSTREAM)
WX_ARG_ENABLE(fs_inet, [ --enable-fs_inet use virtual HTTP/FTP filesystems], wxUSE_FS_INET)
WX_ARG_ENABLE(fs_zip, [ --enable-fs_zip use virtual ZIP filesystems], wxUSE_FS_ZIP)
WX_ARG_ENABLE(zipstream, [ --enable-zipstream use wxZipInputStream], wxUSE_ZIPSTREAM)
dnl ---------------------------------------------------------------------------
dnl "big" options (i.e. those which change a lot of things throughout the library)
@@ -670,11 +695,14 @@ dnl ---------------------------------------------------------------------------
WX_ARG_ENABLE(commondlg, [ --enable-commondlg use common dialogs (wxDirDialog, wxProgressDialog, wxTextDialog, ...)], wxUSE_COMMONDLGS)
WX_ARG_ENABLE(dirdlg, [ --enable-dirdlg use wxDirDialog], wxUSE_DIRDLG)
WX_ARG_ENABLE(textdlg, [ --enable-textdlg use wxTextDialog], wxUSE_TEXTDLG)
WX_ARG_ENABLE(tipdlg, [ --enable-tipdlg use startup tips], wxUSE_STARTUP_TIPS)
WX_ARG_ENABLE(progressdlg, [ --enable-progressdlg use wxProgressDialog], wxUSE_PROGRESSDLG)
WX_ARG_ENABLE(miniframe, [ --enable-miniframe use wxMiniFrame class], wxUSE_MINIFRAME)
WX_ARG_ENABLE(html, [ --enable-html use wxHTML sub-library], wxUSE_HTML)
WX_ARG_ENABLE(tooltips, [ --enable-tooltips use wxToolTip class], wxUSE_TOOLTIPS)
WX_ARG_ENABLE(splines, [ --enable-splines use spline drawing code], wxUSE_SPLINES)
WX_ARG_ENABLE(validators, [ --enable-validators use wxValidator and derived classes], wxUSE_VALIDATORS)
WX_ARG_ENABLE(busyinfo, [ --enable-busyinfo use wxBusyInfo], wxUSE_BUSYINFO)
dnl cache the options values before (may be) aborting below
WX_ARG_CACHE_FLUSH
@@ -742,11 +770,15 @@ AC_CACHE_SAVE
dnl cross-compiling support: we're cross compiling if the build system is
dnl different from the target one (assume host and target be always the same)
if eval "test $host != $build"; then
if eval "test $build != NONE"; then
CC="$build-gcc"
CXX="$build-g++"
RANLIB="$build-ranlib"
NM="$build-nm"
if eval "test $host_alias != NONE"; then
CC=$host_alias-gcc
CXX=$host_alias-c++
AR=$host_alias-ar
RANLIB=$host_alias-ranlib
DLLTOOL=$host_alias-dlltool
LD=$host_alias-ld
NM=$host_alias-nm
STRIP=$host_alias-strip
fi
fi
@@ -856,7 +888,53 @@ dnl DLLs under Win32.
dnl AC_LIBTOOL_WIN32_DLL
dnl disable static libs by default, this takes too much time...
AM_DISABLE_STATIC
dnl libtool doesn't work on anything but Linux and maybe
dnl ***BSD
case "${host}" in
*-hp-hpux* )
AM_DISABLE_SHARED
;;
*-*-linux* )
AM_DISABLE_STATIC
;;
*-*-irix5* | *-*-irix6* )
AM_DISABLE_SHARED
;;
*-*-solaris2* )
AM_DISABLE_SHARED
;;
*-*-sunos4* )
AM_DISABLE_SHARED
;;
*-*-freebsd* | *-*-netbsd*)
AM_DISABLE_STATIC
;;
*-*-osf* )
AM_DISABLE_SHARED
;;
*-*-dgux5* )
AM_DISABLE_SHARED
;;
*-*-sysv5* )
AM_DISABLE_SHARED
;;
*-*-aix* )
AM_DISABLE_SHARED
;;
*-*-cygwin32* )
AM_DISABLE_STATIC
;;
*-*-mingw32* )
AM_DISABLE_STATIC
;;
*-pc-os2_emx )
AM_DISABLE_SHARED
;;
*)
AC_MSG_ERROR(unknown system type ${host}.)
esac
AM_PROG_LIBTOOL
dnl ---------------------------------------------------------------------------
@@ -951,16 +1029,23 @@ WXGTK12=
WXWINE=
if test "$wxUSE_CYGWIN" = 1; then
if test "$wxUSE_CYGWIN" = 1 || test "$wxUSE_MINGW" = 1 ; then
AC_MSG_CHECKING(for Windows headers)
WX_PATH_FIND_INCLUDES($SEARCH_INCLUDE, windows.h)
INCLUDE_SUBDIRS="$INCLUDE_SUBDIRS msw"
dnl --- Quick & Dirty ; link against most/all libraries
dnl --- This will bloat the executable, but it'll work for now...
LIBS="$LIBS -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -loldnames -lcomctl32 -lctl3d32 -lcrtdll -ladvapi32 -lwsock32"
if test "$ac_find_includes" != "" ; then
AC_MSG_RESULT(found $ac_find_includes)
TOOLKIT_INCLUDE="$TOOLKIT_INCLUDE -I$ac_find_includes"
else
AC_MSG_RESULT(no)
AC_MSG_ERROR(please set CFLAGS to contain the location of windows.h)
if test "$cross_compiling" != "yes" ; then
AC_MSG_ERROR(please set CFLAGS to contain the location of windows.h)
fi
fi
TOOLKIT=MSW
@@ -1165,6 +1250,9 @@ WX_CPP_BOOL
dnl check whether overloading on size_t/int parameter works
WX_CPP_SIZE_T_IS_NOT_INT
dnl check whether we should define _GNU_SOURCE
WX_GNU_EXTENSIONS
dnl ---------------------------------------------------------------------------
dnl Check for functions
dnl ---------------------------------------------------------------------------
@@ -1536,6 +1624,22 @@ if test "$wxUSE_FILE" = "yes"; then
AC_DEFINE(wxUSE_FILE)
fi
if test "$wxUSE_FS_INET" = "yes"; then
AC_DEFINE(wxUSE_FS_INET)
fi
if test "$wxUSE_FS_ZIP" = "yes"; then
AC_DEFINE(wxUSE_FS_ZIP)
fi
if test "$wxUSE_ZIPSTREAM" = "yes"; then
AC_DEFINE(wxUSE_ZIPSTREAM)
fi
if test "$wxUSE_BUSYINFO" = "yes"; then
AC_DEFINE(wxUSE_BUSYINFO)
fi
if test "$wxUSE_STD_IOSTREAM" = "yes"; then
AC_DEFINE(wxUSE_STD_IOSTREAM)
fi
@@ -1634,6 +1738,9 @@ if test "$wxUSE_JOYSTICK" = 1; then
fi
fi
AC_CHECK_FUNCS(vsscanf)
dnl ------------------------------------------------------------------------
dnl DLL support
dnl ------------------------------------------------------------------------
@@ -1651,9 +1758,13 @@ if test "$wxUSE_DYNLIB_CLASS" = "yes"; then
[AC_DEFINE(HAVE_SHL_LOAD) HAVE_DL_FUNCS=1 HAVE_SHL_FUNCS=1])
if test "$HAVE_DL_FUNCS" = 0; then
AC_MSG_WARN("--with-dynlib and --with-odbc will be disabled due to missing shared library support")
wxUSE_ODBC=no
wxUSE_DYNLIB_CLASS=no
if test "$USE_UNIX" = 1; then
AC_MSG_WARN("--with-dynlib and --with-odbc will be disabled due to missing shared library support")
wxUSE_ODBC=no
wxUSE_DYNLIB_CLASS=no
else
AC_MSG_WARN("Cannot check dynlib requirements on non-Unix platforms. dynlib remains enabled.")
fi
fi
fi
@@ -1969,6 +2080,14 @@ if test "$wxUSE_TEXTDLG" = "yes"; then
AC_DEFINE(wxUSE_TEXTDLG)
fi
if test "$wxUSE_STARTUP_TIPS" = "yes"; then
if test "$wxUSE_CONSTRAINTS" != "yes"; then
AC_MSG_WARN(Startup tips requires constraints and won't be compiled without them)
else
AC_DEFINE(wxUSE_STARTUP_TIPS)
fi
fi
if test "$wxUSE_PROGRESSDLG" = "yes"; then
if test "$wxUSE_CONSTRAINTS" != "yes"; then
AC_MSG_WARN(wxProgressDialog requires constraints so it won't be compiled without them)
@@ -1982,6 +2101,12 @@ if test "$wxUSE_MINIFRAME" = "yes"; then
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS minifram"
fi
if test "$wxUSE_HTML" = "yes"; then
AC_DEFINE(wxUSE_HTML)
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS html"
INCLUDE_SUBDIRS="$INCLUDE_SUBDIRS html"
fi
if test "$wxUSE_VALIDATORS" = "yes"; then
AC_DEFINE(wxUSE_VALIDATORS)
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS validate"
@@ -2026,7 +2151,7 @@ if test "$wxUSE_GUI" = "yes"; then
dnl TODO some samples are never built so far:
dnl mfc, nativdlg, oleauto, ownerdrw, proplist
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS bombs controls dialogs drawing dynamic \
forty fractal image richedit wxpoem"
forty fractal image wxpoem"
fi
dnl for convenience, sort the files to build in alphabetical order
@@ -2094,6 +2219,7 @@ dnl (the original file name may be overriden by appending another name after a
dnl colon)
AC_OUTPUT([
wx-config
makefile.unx
Makefile
src/Makefile
@@ -2112,8 +2238,11 @@ dnl samples/Makefile samples/minimal/Makefile
include/wx/gtk/Makefile
include/wx/motif/Makefile
include/wx/msw/Makefile
include/wx/msw/gnuwin32/Makefile
include/wx/msw/ctl3d/Makefile
include/wx/protocol/Makefile
include/wx/unix/Makefile
include/wx/html/Makefile
misc/Makefile
misc/afm/Makefile
misc/gs_afm/Makefile
@@ -2136,29 +2265,20 @@ dnl samples/Makefile samples/minimal/Makefile
samples/help/Makefile
samples/image/Makefile
samples/internat/Makefile
samples/joytest/Makefile
samples/layout/Makefile
samples/listctrl/Makefile
samples/mdi/Makefile
samples/memcheck/Makefile
samples/mfc/Makefile
samples/minifram/Makefile
samples/minimal/Makefile
samples/nativdlg/Makefile
samples/notebook/Makefile
samples/oleauto/Makefile
samples/ownerdrw/Makefile
samples/png/Makefile
samples/printing/Makefile
samples/proplist/Makefile
samples/regtest/Makefile
samples/resource/Makefile
samples/richedit/Makefile
samples/sashtest/Makefile
samples/scroll/Makefile
samples/splitter/Makefile
samples/tab/Makefile
samples/taskbar/Makefile
samples/text/Makefile
samples/thread/Makefile
samples/toolbar/Makefile
@@ -2167,6 +2287,14 @@ dnl samples/Makefile samples/minimal/Makefile
samples/validate/Makefile
samples/wxpoem/Makefile
samples/wxsocket/Makefile
samples/html/Makefile
samples/html/about/Makefile
samples/html/help/Makefile
samples/html/test/Makefile
samples/html/printing/Makefile
samples/html/widget/Makefile
samples/html/virtual/Makefile
samples/html/zip/Makefile
],
[
chmod +x wx-config

View File

@@ -23,6 +23,7 @@ the help file. To help you save disk space I'm now using Microsoft's
HTML Help format. If your system doesn't know what to do with the help
file, you can install the HTML Help Viewer as part of IE 4+, NT
Service Pack 4+, or the HTML Workshop at
http://msdn.microsoft.com/workshop/author/htmlhelp/download.asp.
@@ -44,6 +45,57 @@ Or you can send mail directly to the list using this address:
----------------------------------------------------------------------
What's new in 2.1b2
--------------------
Added the missing wxWindow.GetUpdateRegion() method.
Made a new change in SWIG (update your patches everybody) that
provides a fix for global shadow objects that get an exception in
their __del__ when their extension module has already been deleted.
It was only a 1 line change in .../SWIG/Modules/pycpp.cxx at about
line 496 if you want to do it by hand.
It is now possible to run through MainLoop more than once in any one
process. The cleanup that used to happen as MainLoop completed (and
prevented it from running again) has been delayed until the wxc module
is being unloaded by Python.
I fixed a bunch of stuff in the C++ version of wxGrid so it wouldn't
make wxPython look bad.
wxWindow.PopupMenu() now takes a wxPoint instead of x,y. Added
wxWindow.PopupMenuXY to be consistent with some other methods.
Added wxGrid.SetEditInPlace and wxGrid.GetEditInPlace.
You can now provide your own app.MainLoop method. See
wxPython/demo/demoMainLoop.py for an example and some explaination.
Got the in-place-edit for the wxTreeCtrl fixed and added some demo
code to show how to use it.
Put the wxIcon constructor back in for GTK as it now has one that
matches MSW's.
Added wxGrid.GetCells
Added wxSystemSettings static methods as functions with names like
wxSystemSettings_GetSystemColour.
Removed wxPyMenu since using menu callbacks have been depreciated in
wxWindows. Use wxMenu and events instead.
Added alternate wxBitmap constructor (for MSW only) as
wxBitmapFromData(data, type, width, height, depth = 1)
Added a helper function named wxPyTypeCast that can convert shadow
objects of one type into shadow objects of another type. (Like doing
a down-cast.) See the implementation in wx.py for some docs.
What's new in 2.1b1
--------------------
@@ -101,6 +153,9 @@ wxGIFHandler and wxBMPHandler.
Added new methods to wxTextCtrl.
Fixed some problems with how SWIG was wrapping some wxTreeCtrl
methods.
What's new in 2.0b8
@@ -137,7 +192,7 @@ with the 2.0 version of wxWindows.
I have finally started documenting wxPython. There are several pages
in the wxWindows documentation tree specifically about wxPython, and I
have added notes within the class references about where wxPython
have added notes within the class references about where and how wxPython
diverges from wxWindows.
Added wxWindow_FromHWND(hWnd) for wxMSW to construct a wxWindow from a
@@ -195,7 +250,6 @@ down a nasty DECREF bug. Okay so I have to confess that it was just a
DSM (Dumb Stupid Mistake) on my part but it was nasty none the less
because the behavior was so different on different platforms.
The dynamicly loaded module on Solaris is still segfaulting, so it
must have been a different issue all along...
@@ -215,6 +269,8 @@ version segfault shortly after starting up.
3. Varioius bug fixes, enhancements, etc.
----------------------------------------------------------------------
Build Instructions
@@ -230,8 +286,8 @@ I added a few minor features to SWIG to control some of the code
generation. If you want to playaround with this the patches are in
wxPython/SWIG.patches and they should be applied to the 1.1p5 version
of SWIG. These new patches are documented at
http://starship.skyport.net/crew/robind/python/#swig, and they should
also end up in the 1.2 version of SWIG.
http://starship.skyport.net/crew/robind/#swig, and they should also
end up in the 1.2 version of SWIG.
wxPython is organized as a Python package. This means that the
directory containing the results of the build process should be a
@@ -262,23 +318,24 @@ above.
5. If it builds successfully, congratulations! Move on to the next
step. If not then you can try mailing me for help. Also, I will
always have a pre-built win32 version of this extension module at
http://starship.skyport.net/crew/robind/python.
http://alldunn.com/wxPython/.
6. Change to the $(WXWIN)/utils/wxPython/tests directory.
6. Change to the $(WXWIN)/utils/wxPython/demo directory.
7. Try executing the test programs. Note that some of these print
diagnositc or test info to standard output, so they will require the
console version of python. For example:
7. Try executing the demo program. For example:
python test1.py
python demo.py
To run them without requiring a console, you can use the pythonw.exe
To run it without requiring a console, you can use the pythonw.exe
version of Python either from the command line or from a shortcut.
Unix
----
0. I configure wxWindows like this, YMMV:
./configure --with-gtk --disable-shared --enable-threads --disable-unicode
1. Change into the $(WXWIN)/utils/wxPython/src directory.
@@ -307,14 +364,11 @@ module:
5. Change to the $(WXWIN)/utils/wxPython/tests directory.
6. Try executing the test programs. For example:
6. Try executing the demo program. For example:
python test1.py
------------------------
10/20/1998
python demo.py
----------------
Robin Dunn
robin@alldunn.com

View File

@@ -37,7 +37,7 @@ TARGETDIR=$(BINLIBDEST)/wxPython
wxc wx.cpp helpers.cpp windows.cpp events.cpp misc.cpp gdi.cpp \
mdi.cpp controls.cpp controls2.cpp windows2.cpp cmndlgs.cpp \
frames.cpp stattool.cpp windows3.cpp image.cpp misc2.cpp \
utils.cpp printfw.cpp \
utils.cpp printfw.cpp libpy.c libptr.c \
## comment out the next line to disable wxGLCanvas
##_glcanvas.cpp glcanvas.cpp -DWITH_GLCANVAS -lGL -lGLU \
-I. $(WX_CONFIG_CFLAGS) -I/usr/local/lib/glib/include \

View File

@@ -29,6 +29,7 @@ cp ltmain.sh ~/wxgtk_dist/wxGTK
cp missing ~/wxgtk_dist/wxGTK
cp mkinstalldirs ~/wxgtk_dist/wxGTK
cp wx-config.in ~/wxgtk_dist/wxGTK
cp makefile.unx.in ~/wxgtk_dist/wxGTK
cp setup.h.in ~/wxgtk_dist/wxGTK
cp stamp-h.in ~/wxgtk_dist/wxGTK
cp Makefile.in ~/wxgtk_dist/wxGTK
@@ -68,6 +69,13 @@ cp Makefile.am ~/wxgtk_dist/wxGTK/include/wx/generic
cp Makefile.in ~/wxgtk_dist/wxGTK/include/wx/generic
cd ..
mkdir ~/wxgtk_dist/wxGTK/include/wx/html
cd html
cp *.h ~/wxgtk_dist/wxGTK/include/wx/html
cp Makefile.am ~/wxgtk_dist/wxGTK/include/wx/html
cp Makefile.in ~/wxgtk_dist/wxGTK/include/wx/html
cd ..
mkdir ~/wxgtk_dist/wxGTK/include/wx/unix
cd unix
cp *.h ~/wxgtk_dist/wxGTK/include/wx/unix
@@ -78,6 +86,7 @@ cd ..
mkdir ~/wxgtk_dist/wxGTK/include/wx/gtk
cd gtk
cp *.h ~/wxgtk_dist/wxGTK/include/wx/gtk
cp *.xpm ~/wxgtk_dist/wxGTK/include/wx/gtk
rm ~/wxgtk_dist/wxGTK/include/wx/gtk/setup.h
cp Makefile.am ~/wxgtk_dist/wxGTK/include/wx/gtk
cp Makefile.in ~/wxgtk_dist/wxGTK/include/wx/gtk
@@ -136,24 +145,47 @@ cp Makefile.am ~/wxgtk_dist/wxGTK/src/gtk
cp Makefile.in ~/wxgtk_dist/wxGTK/src/gtk
cp *.xbm ~/wxgtk_dist/wxGTK/src/gtk
cp *.c ~/wxgtk_dist/wxGTK/src/gtk
cp *.inc ~/wxgtk_dist/wxGTK/src/gtk
cp *.cpp ~/wxgtk_dist/wxGTK/src/gtk
cd ..
cd msw
mkdir ~/wxgtk_dist/wxGTK/src/msw
cp Makefile.am ~/wxgtk_dist/wxGTK/src/msw
cp Makefile.in ~/wxgtk_dist/wxGTK/src/msw
cd ..
cd motif
mkdir ~/wxgtk_dist/wxGTK/src/motif
cp Makefile.am ~/wxgtk_dist/wxGTK/src/motif
cp Makefile.in ~/wxgtk_dist/wxGTK/src/motif
cd ..
cd common
mkdir ~/wxgtk_dist/wxGTK/src/common
cp glob.inc ~/wxgtk_dist/wxGTK/src/common
cp lexer.l ~/wxgtk_dist/wxGTK/src/common
cp parser.y ~/wxgtk_dist/wxGTK/src/common
cp extended.c ~/wxgtk_dist/wxGTK/src/common
cp unzip.* ~/wxgtk_dist/wxGTK/src/common
cp *.cpp ~/wxgtk_dist/wxGTK/src/common
cd ..
cd unix
mkdir ~/wxgtk_dist/wxGTK/src/unix
cp *.cpp ~/wxgtk_dist/wxGTK/src/unix
cp *.h ~/wxgtk_dist/wxGTK/src/unix
cp *.c ~/wxgtk_dist/wxGTK/src/unix
cd ..
cd html
mkdir ~/wxgtk_dist/wxGTK/src/html
cp *.cpp ~/wxgtk_dist/wxGTK/src/html
cp *.h ~/wxgtk_dist/wxGTK/src/html
cd bitmaps
mkdir ~/wxgtk_dist/wxGTK/src/html/bitmaps
cp *.xpm ~/wxgtk_dist/wxGTK/src/html/bitmaps
cd ../..
cd generic
mkdir ~/wxgtk_dist/wxGTK/src/generic
cp *.cpp ~/wxgtk_dist/wxGTK/src/generic
@@ -177,9 +209,7 @@ cd ..
cd jpeg
mkdir ~/wxgtk_dist/wxGTK/src/jpeg
cp * ~/wxgtk_dist/wxGTK/src/jpeg
cd ..
cd ..
cd ../..
echo Utils dir..
@@ -272,10 +302,6 @@ cp ./lib/*.py ~/wxgtk_dist/wxGTK/utils/wxPython/lib
mkdir ~/wxgtk_dist/wxGTK/utils/wxPython/lib/sizers
cp ./lib/sizers/*.py ~/wxgtk_dist/wxGTK/utils/wxPython/lib/sizers
mkdir ~/wxgtk_dist/wxGTK/utils/wxPython/tests
cp ./tests/README.txt ~/wxgtk_dist/wxGTK/utils/wxPython/tests
cp ./tests/*.py ~/wxgtk_dist/wxGTK/utils/wxPython/tests
mkdir ~/wxgtk_dist/wxGTK/utils/wxPython/demo
cp ./demo/README.txt ~/wxgtk_dist/wxGTK/utils/wxPython/demo
cp ./demo/*.py ~/wxgtk_dist/wxGTK/utils/wxPython/demo
@@ -283,26 +309,8 @@ cp ./demo/*.pyc ~/wxgtk_dist/wxGTK/utils/wxPython/demo
mkdir ~/wxgtk_dist/wxGTK/utils/wxPython/demo/bitmaps
cp ./demo/bitmaps/* ~/wxgtk_dist/wxGTK/utils/wxPython/demo/bitmaps
mkdir ~/wxgtk_dist/wxGTK/utils/wxPython/tests/bitmaps
cp ./tests/bitmaps/* ~/wxgtk_dist/wxGTK/utils/wxPython/tests/bitmaps
cd ..
echo wxOLE..
cd wxOLE
mkdir ~/wxgtk_dist/wxGTK/utils/wxOLE
mkdir ~/wxgtk_dist/wxGTK/utils/wxOLE/gtk
cp ./gtk/wxole.* ~/wxgtk_dist/wxGTK/utils/wxOLE/gtk
mkdir ~/wxgtk_dist/wxGTK/utils/wxOLE/samples
mkdir ~/wxgtk_dist/wxGTK/utils/wxOLE/samples/servlet
cp ./samples/servlet/Makefile ~/wxgtk_dist/wxGTK/utils/wxOLE/samples/servlet
cp ./samples/servlet/*.xpm ~/wxgtk_dist/wxGTK/utils/wxOLE/samples/servlet
cp ./samples/servlet/*.cpp ~/wxgtk_dist/wxGTK/utils/wxOLE/samples/servlet
cp ./samples/servlet/*.gnorba ~/wxgtk_dist/wxGTK/utils/wxOLE/samples/servlet
cd ../..
echo Samples dir..
cd samples
@@ -384,16 +392,17 @@ cp *.h ~/wxgtk_dist/wxGTK/samples/db
cp *.xpm ~/wxgtk_dist/wxGTK/samples/db
cd ..
echo DDE sample..
cd dde
mkdir ~/wxgtk_dist/wxGTK/samples/dde
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/dde
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/dde
cp *.cpp ~/wxgtk_dist/wxGTK/samples/dde
cp *.h ~/wxgtk_dist/wxGTK/samples/dde
cp *.xpm ~/wxgtk_dist/wxGTK/samples/dde
cd ..
#echo DDE sample..
#
#cd dde
#mkdir ~/wxgtk_dist/wxGTK/samples/dde
#cp Makefile.am ~/wxgtk_dist/wxGTK/samples/dde
#cp Makefile.in ~/wxgtk_dist/wxGTK/samples/dde
#cp *.cpp ~/wxgtk_dist/wxGTK/samples/dde
#cp *.h ~/wxgtk_dist/wxGTK/samples/dde
#cp *.xpm ~/wxgtk_dist/wxGTK/samples/dde
#cd ..
#
echo Dialogs sample..
@@ -499,6 +508,42 @@ mkdir ~/wxgtk_dist/wxGTK/samples/help/doc
cp * ~/wxgtk_dist/wxGTK/samples/help/doc
cd ../..
echo HTML samples..
cd html
mkdir ~/wxgtk_dist/wxGTK/samples/html
cp Makefile.* ~/wxgtk_dist/wxGTK/samples/html
mkdir ~/wxgtk_dist/wxGTK/samples/html/about
cp about/Makefile.* ~/wxgtk_dist/wxGTK/samples/html/about
cp about/about.* ~/wxgtk_dist/wxGTK/samples/html/about
mkdir ~/wxgtk_dist/wxGTK/samples/html/about/data
cp about/data/*.* ~/wxgtk_dist/wxGTK/samples/html/about/data
mkdir ~/wxgtk_dist/wxGTK/samples/html/help
cp help/Makefile.* ~/wxgtk_dist/wxGTK/samples/html/help
cp help/help.* ~/wxgtk_dist/wxGTK/samples/html/help
mkdir ~/wxgtk_dist/wxGTK/samples/html/help/helpfiles
cp help/helpfiles/*.* ~/wxgtk_dist/wxGTK/samples/html/help/helpfiles
mkdir ~/wxgtk_dist/wxGTK/samples/html/printing
cp printing/*.* ~/wxgtk_dist/wxGTK/samples/html/printing
mkdir ~/wxgtk_dist/wxGTK/samples/html/test
cp test/*.* ~/wxgtk_dist/wxGTK/samples/html/test
mkdir ~/wxgtk_dist/wxGTK/samples/html/virtual
cp virtual/*.* ~/wxgtk_dist/wxGTK/samples/html/virtual
mkdir ~/wxgtk_dist/wxGTK/samples/html/widget
cp widget/*.* ~/wxgtk_dist/wxGTK/samples/html/widget
mkdir ~/wxgtk_dist/wxGTK/samples/html/zip
cp zip/*.* ~/wxgtk_dist/wxGTK/samples/html/zip
cd ..
echo Image sample..
cd image
@@ -670,16 +715,6 @@ cp Makefile.in ~/wxgtk_dist/wxGTK/samples/splitter
cp *.cpp ~/wxgtk_dist/wxGTK/samples/splitter
cd ..
echo Tab sample..
cd tab
mkdir ~/wxgtk_dist/wxGTK/samples/tab
cp Makefile.am ~/wxgtk_dist/wxGTK/samples/tab
cp Makefile.in ~/wxgtk_dist/wxGTK/samples/tab
cp *.cpp ~/wxgtk_dist/wxGTK/samples/tab
cp *.h ~/wxgtk_dist/wxGTK/samples/tab
cd ..
echo Text sample..
cd text
@@ -776,4 +811,4 @@ cp README.txt ~/wxgtk_dist/wxGTK/utils/wxPython
cp Setup ~/wxgtk_dist/wxGTK/utils/wxPython/src
cd ~/wxgtk_dist
tar ch wxGTK | gzip -f9 > wxGTK-2.1.0-b7.tgz
tar ch wxGTK | gzip -f9 > wxGTK-2.1.0-b8.tgz

View File

@@ -29,6 +29,7 @@ cp ltmain.sh ~/wxmotif_dist/wxMotif
cp missing ~/wxmotif_dist/wxMotif
cp mkinstalldirs ~/wxmotif_dist/wxMotif
cp wx-config.in ~/wxmotif_dist/wxMotif
cp makefile.unx.in ~/wxmotif_dist/wxMotif
cp setup.h.in ~/wxmotif_dist/wxMotif
cp stamp-h.in ~/wxmotif_dist/wxMotif
cp Makefile.in ~/wxmotif_dist/wxMotif
@@ -68,6 +69,13 @@ cp Makefile.am ~/wxmotif_dist/wxMotif/include/wx/generic
cp Makefile.in ~/wxmotif_dist/wxMotif/include/wx/generic
cd ..
mkdir ~/wxmotif_dist/wxMotif/include/wx/html
cd html
cp *.h ~/wxmotif_dist/wxMotif/include/wx/html
cp Makefile.am ~/wxmotif_dist/wxMotif/include/wx/html
cp Makefile.in ~/wxmotif_dist/wxMotif/include/wx/html
cd ..
mkdir ~/wxmotif_dist/wxMotif/include/wx/unix
cd unix
cp *.h ~/wxmotif_dist/wxMotif/include/wx/unix
@@ -136,7 +144,6 @@ cp Makefile.am ~/wxmotif_dist/wxMotif/src/motif
cp Makefile.in ~/wxmotif_dist/wxMotif/src/motif
cp *.xbm ~/wxmotif_dist/wxMotif/src/motif
cp *.c ~/wxmotif_dist/wxMotif/src/motif
cp *.inc ~/wxmotif_dist/wxMotif/src/motif
cp *.cpp ~/wxmotif_dist/wxMotif/src/motif
cd ..
@@ -146,12 +153,24 @@ cp glob.inc ~/wxmotif_dist/wxMotif/src/common
cp lexer.l ~/wxmotif_dist/wxMotif/src/common
cp parser.y ~/wxmotif_dist/wxMotif/src/common
cp extended.c ~/wxmotif_dist/wxMotif/src/common
cp unzip.* ~/wxmotif_dist/wxMotif/src/common
cp *.cpp ~/wxmotif_dist/wxMotif/src/common
cd ..
cd html
mkdir ~/wxmotif_dist/wxMotif/src/html
cp *.cpp ~/wxmotif_dist/wxMotif/src/html
cp *.h ~/wxmotif_dist/wxMotif/src/html
cd bitmaps
mkdir ~/wxmotif_dist/wxMotif/src/html/bitmaps
cp *.xpm ~/wxmotif_dist/wxMotif/src/html/bitmaps
cd ../..
cd unix
mkdir ~/wxmotif_dist/wxMotif/src/unix
cp *.cpp ~/wxmotif_dist/wxMotif/src/unix
cp *.h ~/wxmotif_dist/wxMotif/src/unix
cp *.c ~/wxmotif_dist/wxMotif/src/unix
cd ..
cd generic
@@ -270,17 +289,6 @@ cp *.h ~/wxmotif_dist/wxMotif/samples/db
cp *.xpm ~/wxmotif_dist/wxMotif/samples/db
cd ..
echo DDE sample..
cd dde
mkdir ~/wxmotif_dist/wxMotif/samples/dde
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/dde
cp Makefile.in ~/wxmotif_dist/wxMotif/samples/dde
cp *.cpp ~/wxmotif_dist/wxMotif/samples/dde
cp *.h ~/wxmotif_dist/wxMotif/samples/dde
cp *.xpm ~/wxmotif_dist/wxMotif/samples/dde
cd ..
echo Dialogs sample..
cd dialogs
@@ -385,6 +393,42 @@ mkdir ~/wxmotif_dist/wxMotif/samples/help/doc
cp * ~/wxmotif_dist/wxMotif/samples/help/doc
cd ../..
echo HTML samples..
cd html
mkdir ~/wxmotif_dist/wxMotif/samples/html
cp Makefile.* ~/wxmotif_dist/wxMotif/samples/html
mkdir ~/wxmotif_dist/wxMotif/samples/html/about
cp about/Makefile.* ~/wxmotif_dist/wxMotif/samples/html/about
cp about/about.* ~/wxmotif_dist/wxMotif/samples/html/about
mkdir ~/wxmotif_dist/wxMotif/samples/html/about/data
cp about/data/*.* ~/wxmotif_dist/wxMotif/samples/html/about/data
mkdir ~/wxmotif_dist/wxMotif/samples/html/help
cp help/Makefile.* ~/wxmotif_dist/wxMotif/samples/html/help
cp help/help.* ~/wxmotif_dist/wxMotif/samples/html/help
mkdir ~/wxmotif_dist/wxMotif/samples/html/help/helpfiles
cp help/helpfiles/*.* ~/wxmotif_dist/wxMotif/samples/html/help/helpfiles
mkdir ~/wxmotif_dist/wxMotif/samples/html/printing
cp printing/*.* ~/wxmotif_dist/wxMotif/samples/html/printing
mkdir ~/wxmotif_dist/wxMotif/samples/html/test
cp test/*.* ~/wxmotif_dist/wxMotif/samples/html/test
mkdir ~/wxmotif_dist/wxMotif/samples/html/virtual
cp virtual/*.* ~/wxgtk_dist/wxGTK/samples/html/virtual
mkdir ~/wxmotif_dist/wxMotif/samples/html/widget
cp widget/*.* ~/wxmotif_dist/wxMotif/samples/html/widget
mkdir ~/wxmotif_dist/wxMotif/samples/html/zip
cp zip/*.* ~/wxmotif_dist/wxMotif/samples/html/zip
cd ..
echo Image sample..
cd image
@@ -556,8 +600,6 @@ cp Makefile.in ~/wxmotif_dist/wxMotif/samples/splitter
cp *.cpp ~/wxmotif_dist/wxMotif/samples/splitter
cd ..
echo Tab sample..
cd tab
mkdir ~/wxmotif_dist/wxMotif/samples/tab
cp Makefile.am ~/wxmotif_dist/wxMotif/samples/tab
@@ -656,4 +698,4 @@ cp *.xpm ~/wxmotif_dist/wxMotif/samples/wxsocket
cd ../..
cd ~/wxmotif_dist
tar ch wxMotif | gzip -f9 > wxMotif-2.1.0-b7.tgz
tar ch wxMotif | gzip -f9 > wxMotif-2.1.0-b8.tgz

733
distrib/msw/copy_src.bat Executable file
View File

@@ -0,0 +1,733 @@
echo --------
echo This script will copy the wxMSW release files into \wxmsw_dist
echo --------
echo
md \wxmsw_dist
md \wxmsw_dist\wxMSW
echo Base dir..
cd ..\..
echo Lib..
cd lib
md \wxmsw_dist\wxMSW\lib
copy dummy \wxmsw_dist\wxMSW\lib
cd ..
echo Locale..
cd locale
md \wxmsw_dist\wxMSW\locale
copy *.?? \wxmsw_dist\wxMSW\locale
cd ..
echo Docs..
cd docs\wine
copy COPYING.LIB \wxmsw_dist\wxMSW
copy licence.txt \wxmsw_dist\wxMSW\LICENCE.txt
cd ..\msw
copy install.txt \wxmsw_dist\wxMSW\INSTALL.txt
copy readme.txt \wxmsw_dist\wxMSW\README.txt
copy todo.txt \wxmsw_dist\wxMSW\TODO.txt
cd ..
copy symbols.txt \wxmsw_dist\wxMSW\SYMBOLS.txt
cd ..
echo Include dir..
md \wxmsw_dist\wxMSW\include
cd include
copy wx_*.* \wxmsw_dist\wxMSW\include
md \wxmsw_dist\wxMSW\include\wx
cd wx
copy *.h \wxmsw_dist\wxMSW\include\wx
copy *.cpp \wxmsw_dist\wxMSW\include\wx
md \wxmsw_dist\wxMSW\include\wx\generic
cd generic
copy *.h \wxmsw_dist\wxMSW\include\wx\generic
cd ..
md \wxmsw_dist\wxMSW\include\wx\html
cd html
copy *.h \wxmsw_dist\wxMSW\include\wx\html
md \wxmsw_dist\wxMSW\include\wx\html\msw
cd msw
copy *.* \wxmsw_dist\wxMSW\include\wx\html\msw
cd ..\..
md \wxmsw_dist\wxMSW\include\wx\msw
cd msw
copy *.* \wxmsw_dist\wxMSW\include\wx\msw
rem del \wxmsw_dist\wxMSW\include\wx\msw\setup.h
del \wxmsw_dist\wxMSW\include\wx\msw\Makefile.am
del \wxmsw_dist\wxMSW\include\wx\msw\Makefile.in
md \wxmsw_dist\wxMSW\include\wx\msw\gnuwin32
cd gnuwin32
copy *.h \wxmsw_dist\wxMSW\include\wx\msw\gnuwin32
cd ..
md \wxmsw_dist\wxMSW\include\wx\msw\ole
cd ole
copy *.h \wxmsw_dist\wxMSW\include\wx\msw\ole
cd ..
cd ctl3d
copy *.h \wxmsw_dist\wxMSW\include\wx\msw\ctl3d
cd ..
cd ..
md \wxmsw_dist\wxMSW\include\wx\protocol
cd protocol
copy *.h \wxmsw_dist\wxMSW\include\wx\protocol
cd ..
cd ..\..
echo Src dir..
cd src
md \wxmsw_dist\wxMSW\src
copy *.* \wxmsw_dist\wxMSW\src
del Makefile.am \wxmsw_dist\wxMSW\src\Makefile.am
del Makefile.in \wxmsw_dist\wxMSW\src\Makefile.in
cd msw
md \wxmsw_dist\wxMSW\src\msw
copy *.cpp \wxmsw_dist\wxMSW\src\msw
copy *.c \wxmsw_dist\wxMSW\src\msw
copy *.def \wxmsw_dist\wxMSW\src\msw
copy makefile.* \wxmsw_dist\wxMSW\src\msw
del Makefile.am \wxmsw_dist\wxMSW\src\msw\Makefile.am
del Makefile.in \wxmsw_dist\wxMSW\src\msw\Makefile.in
cd ..
cd common
md \wxmsw_dist\wxMSW\src\common
copy glob.inc \wxmsw_dist\wxMSW\src\common
copy lexer.l \wxmsw_dist\wxMSW\src\common
copy parser.y \wxmsw_dist\wxMSW\src\common
copy *.c \wxmsw_dist\wxMSW\src\common
copy *.h \wxmsw_dist\wxMSW\src\common
copy *.cpp \wxmsw_dist\wxMSW\src\common
cd ..
cd html
md \wxmsw_dist\wxMSW\src\html
copy *.cpp \wxmsw_dist\wxMSW\src\html
copy *.h \wxmsw_dist\wxMSW\src\html
cd ..
cd generic
md \wxmsw_dist\wxMSW\src\generic
copy *.cpp \wxmsw_dist\wxMSW\src\generic
cd ..
cd zlib
md \wxmsw_dist\wxMSW\src\zlib
copy *.* \wxmsw_dist\wxMSW\src\zlib
cd ..
cd png
md \wxmsw_dist\wxMSW\src\png
copy *.* \wxmsw_dist\wxMSW\src\png
cd ..
cd jpeg
md \wxmsw_dist\wxMSW\src\jpeg
copy *.* \wxmsw_dist\wxMSW\src\jpeg
cd ..
cd xpm
md \wxmsw_dist\wxMSW\src\xpm
copy *.* \wxmsw_dist\wxMSW\src\xpm
cd ..
cd ..
echo Utils dir..
cd utils
md \wxmsw_dist\wxMSW\utils
echo wxGLCanvas..
cd glcanvas
md \wxmsw_dist\wxMSW\utils\glcanvas
copy .\docs\notes.txt \wxmsw_dist\wxMSW\utils\glcanvas\NOTES.txt
md \wxmsw_dist\wxMSW\utils\glcanvas\win
copy .\win\glcanvas.cpp \wxmsw_dist\wxMSW\utils\glcanvas\win
copy .\win\glcanvas.h \wxmsw_dist\wxMSW\utils\glcanvas\win
copy .\win\makefile.* \wxmsw_dist\wxMSW\utils\glcanvas\win
md \wxmsw_dist\wxMSW\utils\glcanvas\samples
md \wxmsw_dist\wxMSW\utils\glcanvas\samples\cube
md \wxmsw_dist\wxMSW\utils\glcanvas\samples\isosurf
md \wxmsw_dist\wxMSW\utils\glcanvas\samples\penguin
cd samples\cube
copy Makefile.* \wxmsw_dist\wxMSW\utils\glcanvas\samples\cube
copy cube.rc \wxmsw_dist\wxMSW\utils\glcanvas\samples\cube
copy cube.h \wxmsw_dist\wxMSW\utils\glcanvas\samples\cube
copy cube.cpp \wxmsw_dist\wxMSW\utils\glcanvas\samples\cube
copy mondrian.ico \wxmsw_dist\wxMSW\utils\glcanvas\samples\cube
cd ..
cd isosurf
copy Makefile.* \wxmsw_dist\wxMSW\utils\glcanvas\samples\isosurf
copy isosurf.h \wxmsw_dist\wxMSW\utils\glcanvas\samples\isosurf
copy isosurf.rc \wxmsw_dist\wxMSW\utils\glcanvas\samples\isosurf
copy isosurf.cpp \wxmsw_dist\wxMSW\utils\glcanvas\samples\isosurf
copy isosurf.dat.gz \wxmsw_dist\wxMSW\utils\glcanvas\samples\isosurf
copy mondrian.ico \wxmsw_dist\wxMSW\utils\glcanvas\samples\isosurf
cd ..
cd penguin
copy Makefile.* \wxmsw_dist\wxMSW\utils\glcanvas\samples\penguin
copy penguin.rc \wxmsw_dist\wxMSW\utils\glcanvas\samples\penguin
copy penguin.h \wxmsw_dist\wxMSW\utils\glcanvas\samples\penguin
copy penguin.cpp \wxmsw_dist\wxMSW\utils\glcanvas\samples\penguin
copy trackball.h \wxmsw_dist\wxMSW\utils\glcanvas\samples\penguin
copy trackball.c \wxmsw_dist\wxMSW\utils\glcanvas\samples\penguin
copy lw.h \wxmsw_dist\wxMSW\utils\glcanvas\samples\penguin
copy lw.cpp \wxmsw_dist\wxMSW\utils\glcanvas\samples\penguin
copy penguin.lwo \wxmsw_dist\wxMSW\utils\glcanvas\samples\penguin
copy mondrian.ico \wxmsw_dist\wxMSW\utils\glcanvas\samples\penguin
cd ..\..\..
echo DialogEd..
cd dialoged\src
md \wxmsw_dist\wxMSW\utils\dialoged
md \wxmsw_dist\wxMSW\utils\dialoged\src
copy Makefile.* \wxmsw_dist\wxMSW\utils\dialoged\src
copy dialoged.def \wxmsw_dist\wxMSW\utils\dialoged\src
copy dialoged.rc \wxmsw_dist\wxMSW\utils\dialoged\src
copy dialoged.ico \wxmsw_dist\wxMSW\utils\dialoged\src
copy dialoged.cpp \wxmsw_dist\wxMSW\utils\dialoged\src
copy dlghndlr.cpp \wxmsw_dist\wxMSW\utils\dialoged\src
copy edlist.cpp \wxmsw_dist\wxMSW\utils\dialoged\src
copy edtree.cpp \wxmsw_dist\wxMSW\utils\dialoged\src
copy reseditr.cpp \wxmsw_dist\wxMSW\utils\dialoged\src
copy reswrite.cpp \wxmsw_dist\wxMSW\utils\dialoged\src
copy symbtabl.cpp \wxmsw_dist\wxMSW\utils\dialoged\src
copy winprop.cpp \wxmsw_dist\wxMSW\utils\dialoged\src
copy winstyle.cpp \wxmsw_dist\wxMSW\utils\dialoged\src
copy dialoged.h \wxmsw_dist\wxMSW\utils\dialoged\src
copy dlghndlr.h \wxmsw_dist\wxMSW\utils\dialoged\src
copy edlist.h \wxmsw_dist\wxMSW\utils\dialoged\src
copy edtree.h \wxmsw_dist\wxMSW\utils\dialoged\src
copy reseditr.h \wxmsw_dist\wxMSW\utils\dialoged\src
copy symbtabl.h \wxmsw_dist\wxMSW\utils\dialoged\src
copy winprop.h \wxmsw_dist\wxMSW\utils\dialoged\src
copy winstyle.h \wxmsw_dist\wxMSW\utils\dialoged\src
cd bitmaps
md \wxmsw_dist\wxMSW\utils\dialoged\src\bitmaps
copy *.bmp \wxmsw_dist\wxMSW\utils\dialoged\src\bitmaps
copy *.ico \wxmsw_dist\wxMSW\utils\dialoged\src\bitmaps
cd ..\..\..
cd ..
echo Samples dir..
cd samples
md \wxmsw_dist\wxMSW\samples
copy makefile.* \wxmsw_dist\wxMSW\samples
echo Minimal sample..
cd minimal
md \wxmsw_dist\wxMSW\samples\minimal
copy Makefile.* \wxmsw_dist\wxMSW\samples\minimal
copy *.def \wxmsw_dist\wxMSW\samples\minimal
copy *.rc \wxmsw_dist\wxMSW\samples\minimal
copy minimal.cpp \wxmsw_dist\wxMSW\samples\minimal
copy mondrian.ico \wxmsw_dist\wxMSW\samples\minimal
cd ..
echo Bombs sample..
cd bombs
md \wxmsw_dist\wxMSW\samples\bombs
copy Makefile.* \wxmsw_dist\wxMSW\samples\bombs
copy *.cpp \wxmsw_dist\wxMSW\samples\bombs
copy *.h \wxmsw_dist\wxMSW\samples\bombs
copy *.ico \wxmsw_dist\wxMSW\samples\bombs
copy *.def \wxmsw_dist\wxMSW\samples\bombs
copy *.rc \wxmsw_dist\wxMSW\samples\bombs
cd ..
echo Caret sample..
cd caret
md \wxmsw_dist\wxMSW\samples\caret
copy Makefile.* \wxmsw_dist\wxMSW\samples\caret
copy *.cpp \wxmsw_dist\wxMSW\samples\caret
copy *.h \wxmsw_dist\wxMSW\samples\caret
copy *.ico \wxmsw_dist\wxMSW\samples\caret
copy *.def \wxmsw_dist\wxMSW\samples\caret
copy *.rc \wxmsw_dist\wxMSW\samples\caret
cd ..
echo Checklst sample..
cd checklst
md \wxmsw_dist\wxMSW\samples\checklst
copy Makefile.* \wxmsw_dist\wxMSW\samples\checklst
copy *.h \wxmsw_dist\wxMSW\samples\checklst
copy *.cpp \wxmsw_dist\wxMSW\samples\checklst
copy *.ico \wxmsw_dist\wxMSW\samples\checklst
copy *.def \wxmsw_dist\wxMSW\samples\checklst
copy *.rc \wxmsw_dist\wxMSW\samples\checklst
cd ..
echo Config sample..
cd config
md \wxmsw_dist\wxMSW\samples\config
copy Makefile.* \wxmsw_dist\wxMSW\samples\config
copy *.h \wxmsw_dist\wxMSW\samples\config
copy *.cpp \wxmsw_dist\wxMSW\samples\config
copy *.ico \wxmsw_dist\wxMSW\samples\config
copy *.def \wxmsw_dist\wxMSW\samples\config
copy *.rc \wxmsw_dist\wxMSW\samples\config
cd ..
echo Controls sample..
cd controls
md \wxmsw_dist\wxMSW\samples\controls
copy Makefile.* \wxmsw_dist\wxMSW\samples\controls
copy *.cpp \wxmsw_dist\wxMSW\samples\controls
copy *.h \wxmsw_dist\wxMSW\samples\controls
copy *.rc \wxmsw_dist\wxMSW\samples\controls
copy *.def \wxmsw_dist\wxMSW\samples\controls
copy *.ico \wxmsw_dist\wxMSW\samples\controls
cd icons
md \wxmsw_dist\wxMSW\samples\controls\icons
copy *.* \wxmsw_dist\wxMSW\samples\controls\icons
cd ..\..
echo Dialogs sample..
cd dialogs
md \wxmsw_dist\wxMSW\samples\dialogs
copy Makefile.* \wxmsw_dist\wxMSW\samples\dialogs
copy *.cpp \wxmsw_dist\wxMSW\samples\dialogs
copy *.h \wxmsw_dist\wxMSW\samples\dialogs
copy *.def \wxmsw_dist\wxMSW\samples\dialogs
copy *.rc \wxmsw_dist\wxMSW\samples\dialogs
copy *.ico \wxmsw_dist\wxMSW\samples\dialogs
cd ..
echo DnD sample..
cd dnd
md \wxmsw_dist\wxMSW\samples\dnd
copy Makefile.* \wxmsw_dist\wxMSW\samples\dnd
copy *.cpp \wxmsw_dist\wxMSW\samples\dnd
copy *.h \wxmsw_dist\wxMSW\samples\dnd
copy *.def \wxmsw_dist\wxMSW\samples\dnd
copy *.rc \wxmsw_dist\wxMSW\samples\dnd
copy *.ico \wxmsw_dist\wxMSW\samples\dnd
cd ..
echo Docview sample..
cd docview
md \wxmsw_dist\wxMSW\samples\docview
copy Makefile.* \wxmsw_dist\wxMSW\samples\docview
copy *.cpp \wxmsw_dist\wxMSW\samples\docview
copy *.h \wxmsw_dist\wxMSW\samples\docview
copy *.def \wxmsw_dist\wxMSW\samples\docview
copy *.rc \wxmsw_dist\wxMSW\samples\docview
copy *.ico \wxmsw_dist\wxMSW\samples\docview
cd ..
echo DocvwMDI sample..
cd docvwmdi
md \wxmsw_dist\wxMSW\samples\docvwmdi
copy Makefile.* \wxmsw_dist\wxMSW\samples\docvwmdi
copy *.cpp \wxmsw_dist\wxMSW\samples\docvwmdi
copy *.h \wxmsw_dist\wxMSW\samples\docvwmdi
copy *.def \wxmsw_dist\wxMSW\samples\docvwmdi
copy *.rc \wxmsw_dist\wxMSW\samples\docvwmdi
copy *.ico \wxmsw_dist\wxMSW\samples\docvwmdi
cd ..
echo Dynamic sample..
cd dynamic
md \wxmsw_dist\wxMSW\samples\dynamic
copy Makefile.* \wxmsw_dist\wxMSW\samples\dynamic
copy *.cpp \wxmsw_dist\wxMSW\samples\dynamic
copy *.h \wxmsw_dist\wxMSW\samples\dynamic
copy *.def \wxmsw_dist\wxMSW\samples\dynamic
copy *.rc \wxmsw_dist\wxMSW\samples\dynamic
copy *.ico \wxmsw_dist\wxMSW\samples\dynamic
cd ..
echo Drawing sample..
cd drawing
md \wxmsw_dist\wxMSW\samples\drawing
copy Makefile.* \wxmsw_dist\wxMSW\samples\drawing
copy *.cpp \wxmsw_dist\wxMSW\samples\drawing
copy *.ico \wxmsw_dist\wxMSW\samples\drawing
copy *.h \wxmsw_dist\wxMSW\samples\drawing
copy *.rc \wxmsw_dist\wxMSW\samples\drawing
copy *.def \wxmsw_dist\wxMSW\samples\drawing
cd ..
echo Forty sample..
cd forty
md \wxmsw_dist\wxMSW\samples\forty
copy Makefile.* \wxmsw_dist\wxMSW\samples\forty
copy *.cpp \wxmsw_dist\wxMSW\samples\forty
copy *.h \wxmsw_dist\wxMSW\samples\forty
copy *.def \wxmsw_dist\wxMSW\samples\forty
copy *.rc \wxmsw_dist\wxMSW\samples\forty
copy *.ico \wxmsw_dist\wxMSW\samples\forty
copy *.bmp \wxmsw_dist\wxMSW\samples\forty
copy *.xpm \wxmsw_dist\wxMSW\samples\forty
copy *.xbm \wxmsw_dist\wxMSW\samples\forty
cd ..
echo Fractal sample..
cd fractal
md \wxmsw_dist\wxMSW\samples\fractal
copy Makefile.* \wxmsw_dist\wxMSW\samples\fractal
copy *.cpp \wxmsw_dist\wxMSW\samples\fractal
copy *.h \wxmsw_dist\wxMSW\samples\fractal
copy *.def \wxmsw_dist\wxMSW\samples\fractal
copy *.rc \wxmsw_dist\wxMSW\samples\fractal
copy *.ico \wxmsw_dist\wxMSW\samples\fractal
cd ..
echo Grid sample..
cd grid
md \wxmsw_dist\wxMSW\samples\grid
copy Makefile.* \wxmsw_dist\wxMSW\samples\grid
copy *.cpp \wxmsw_dist\wxMSW\samples\grid
copy *.h \wxmsw_dist\wxMSW\samples\grid
copy *.def \wxmsw_dist\wxMSW\samples\grid
copy *.rc \wxmsw_dist\wxMSW\samples\grid
copy *.ico \wxmsw_dist\wxMSW\samples\grid
cd ..
echo Help sample..
cd help
md \wxmsw_dist\wxMSW\samples\help
copy Makefile.* \wxmsw_dist\wxMSW\samples\help
copy *.cpp \wxmsw_dist\wxMSW\samples\help
copy *.def \wxmsw_dist\wxMSW\samples\help
copy *.rc \wxmsw_dist\wxMSW\samples\help
copy *.ico \wxmsw_dist\wxMSW\samples\help
copy *.xpm \wxmsw_dist\wxMSW\samples\help
cd doc
md \wxmsw_dist\wxMSW\samples\help\doc
copy *.* \wxmsw_dist\wxMSW\samples\help\doc
cd ..\..
echo Image sample..
cd image
md \wxmsw_dist\wxMSW\samples\image
copy Makefile.* \wxmsw_dist\wxMSW\samples\image
copy *.cpp \wxmsw_dist\wxMSW\samples\image
copy *.def \wxmsw_dist\wxMSW\samples\image
copy *.rc \wxmsw_dist\wxMSW\samples\image
copy *.ico \wxmsw_dist\wxMSW\samples\image
copy horse.png \wxmsw_dist\wxMSW\samples\image
copy horse.gif \wxmsw_dist\wxMSW\samples\image
copy horse.jpg \wxmsw_dist\wxMSW\samples\image
cd ..
echo Internat sample..
cd internat
md \wxmsw_dist\wxMSW\samples\internat
copy Makefile.* \wxmsw_dist\wxMSW\samples\internat
copy *.cpp \wxmsw_dist\wxMSW\samples\internat
copy *.def \wxmsw_dist\wxMSW\samples\internat
copy *.rc \wxmsw_dist\wxMSW\samples\internat
copy *.ico \wxmsw_dist\wxMSW\samples\internat
copy readme.txt \wxmsw_dist\wxMSW\samples\internat
copy wxstd.po \wxmsw_dist\wxMSW\samples\internat
cd fr
md \wxmsw_dist\wxMSW\samples\internat\fr
copy *.?o \wxmsw_dist\wxMSW\samples\internat\fr
cd ..\..
echo Layout sample..
cd layout
md \wxmsw_dist\wxMSW\samples\layout
copy Makefile.* \wxmsw_dist\wxMSW\samples\layout
copy *.cpp \wxmsw_dist\wxMSW\samples\layout
copy *.ico \wxmsw_dist\wxMSW\samples\layout
copy *.def \wxmsw_dist\wxMSW\samples\layout
copy *.rc \wxmsw_dist\wxMSW\samples\layout
copy *.h \wxmsw_dist\wxMSW\samples\layout
cd ..
echo Listctrl sample..
cd listctrl
md \wxmsw_dist\wxMSW\samples\listctrl
copy Makefile.* \wxmsw_dist\wxMSW\samples\listctrl
copy *.cpp \wxmsw_dist\wxMSW\samples\listctrl
copy *.h \wxmsw_dist\wxMSW\samples\listctrl
copy *.def \wxmsw_dist\wxMSW\samples\listctrl
copy *.rc \wxmsw_dist\wxMSW\samples\listctrl
copy *.ico \wxmsw_dist\wxMSW\samples\listctrl
cd bitmaps
md \wxmsw_dist\wxMSW\samples\listctrl\bitmaps
copy *.* \wxmsw_dist\wxMSW\samples\listctrl\bitmaps
cd ..\..
echo MDI sample..
cd mdi
md \wxmsw_dist\wxMSW\samples\mdi
copy Makefile.* \wxmsw_dist\wxMSW\samples\mdi
copy *.cpp \wxmsw_dist\wxMSW\samples\mdi
copy *.rc \wxmsw_dist\wxMSW\samples\mdi
copy *.def \wxmsw_dist\wxMSW\samples\mdi
copy *.h \wxmsw_dist\wxMSW\samples\mdi
copy *.ico \wxmsw_dist\wxMSW\samples\mdi
cd bitmaps
md \wxmsw_dist\wxMSW\samples\mdi\bitmaps
copy *.* \wxmsw_dist\wxMSW\samples\mdi\bitmaps
cd ..\..
echo Memcheck sample..
cd memcheck
md \wxmsw_dist\wxMSW\samples\memcheck
copy Makefile.* \wxmsw_dist\wxMSW\samples\memcheck
copy *.cpp \wxmsw_dist\wxMSW\samples\memcheck
copy *.ico \wxmsw_dist\wxMSW\samples\memcheck
copy *.rc \wxmsw_dist\wxMSW\samples\memcheck
copy *.def \wxmsw_dist\wxMSW\samples\memcheck
copy *.xpm \wxmsw_dist\wxMSW\samples\memcheck
cd ..
echo Minifram sample..
cd minifram
md \wxmsw_dist\wxMSW\samples\minifram
copy Makefile.* \wxmsw_dist\wxMSW\samples\minifram
copy *.cpp \wxmsw_dist\wxMSW\samples\minifram
copy *.xpm \wxmsw_dist\wxMSW\samples\minifram
copy *.ico \wxmsw_dist\wxMSW\samples\minifram
copy *.def \wxmsw_dist\wxMSW\samples\minifram
copy *.rc \wxmsw_dist\wxMSW\samples\minifram
cd bitmaps
md \wxmsw_dist\wxMSW\samples\minifram\bitmaps
copy *.* \wxmsw_dist\wxMSW\samples\minifram\bitmaps
cd ..\..
echo Notebook sample..
cd notebook
md \wxmsw_dist\wxMSW\samples\notebook
copy Makefile.* \wxmsw_dist\wxMSW\samples\notebook
copy *.cpp \wxmsw_dist\wxMSW\samples\notebook
copy *.ico \wxmsw_dist\wxMSW\samples\notebook
copy *.def \wxmsw_dist\wxMSW\samples\notebook
copy *.rc \wxmsw_dist\wxMSW\samples\notebook
copy *.h \wxmsw_dist\wxMSW\samples\notebook
cd ..
echo Printing sample..
cd printing
md \wxmsw_dist\wxMSW\samples\printing
copy Makefile.* \wxmsw_dist\wxMSW\samples\printing
copy *.cpp \wxmsw_dist\wxMSW\samples\printing
copy *.h \wxmsw_dist\wxMSW\samples\printing
copy *.rc \wxmsw_dist\wxMSW\samples\printing
copy *.ico \wxmsw_dist\wxMSW\samples\printing
copy *.def \wxmsw_dist\wxMSW\samples\printing
copy *.xpm \wxmsw_dist\wxMSW\samples\printing
cd ..
echo Proplist sample..
cd proplist
md \wxmsw_dist\wxMSW\samples\proplist
copy Makefile.* \wxmsw_dist\wxMSW\samples\proplist
copy *.rc \wxmsw_dist\wxMSW\samples\printing
copy *.def \wxmsw_dist\wxMSW\samples\printing
copy *.cpp \wxmsw_dist\wxMSW\samples\proplist
copy *.ico \wxmsw_dist\wxMSW\samples\printing
copy *.h \wxmsw_dist\wxMSW\samples\proplist
cd ..
echo Resource sample..
cd resource
md \wxmsw_dist\wxMSW\samples\resource
copy Makefile.* \wxmsw_dist\wxMSW\samples\resource
copy *.ico \wxmsw_dist\wxMSW\samples\resource
copy *.rc \wxmsw_dist\wxMSW\samples\resource
copy *.def \wxmsw_dist\wxMSW\samples\resource
copy *.cpp \wxmsw_dist\wxMSW\samples\resource
copy *.h \wxmsw_dist\wxMSW\samples\resource
copy *.wxr \wxmsw_dist\wxMSW\samples\resource
cd ..
echo Sashtest sample..
cd sashtest
md \wxmsw_dist\wxMSW\samples\sashtest
copy Makefile.* \wxmsw_dist\wxMSW\samples\sashtest
copy *.cpp \wxmsw_dist\wxMSW\samples\sashtest
copy *.rc \wxmsw_dist\wxMSW\samples\sashtest
copy *.h \wxmsw_dist\wxMSW\samples\sashtest
copy *.def \wxmsw_dist\wxMSW\samples\sashtest
copy *.ico \wxmsw_dist\wxMSW\samples\sashtest
cd ..
echo Scroll sample..
cd scroll
md \wxmsw_dist\wxMSW\samples\scroll
copy Makefile.* \wxmsw_dist\wxMSW\samples\scroll
copy *.cpp \wxmsw_dist\wxMSW\samples\scroll
copy *.def \wxmsw_dist\wxMSW\samples\scroll
copy *.rc \wxmsw_dist\wxMSW\samples\scroll
copy *.ico \wxmsw_dist\wxMSW\samples\scroll
copy *.h \wxmsw_dist\wxMSW\samples\scroll
cd ..
echo Splitter sample..
cd splitter
md \wxmsw_dist\wxMSW\samples\splitter
copy Makefile.* \wxmsw_dist\wxMSW\samples\splitter
copy *.cpp \wxmsw_dist\wxMSW\samples\splitter
copy *.def \wxmsw_dist\wxMSW\samples\splitter
copy *.rc \wxmsw_dist\wxMSW\samples\splitter
copy *.ico \wxmsw_dist\wxMSW\samples\splitter
cd ..
echo Text sample..
cd text
md \wxmsw_dist\wxMSW\samples\text
copy Makefile.* \wxmsw_dist\wxMSW\samples\text
copy *.cpp \wxmsw_dist\wxMSW\samples\text
copy *.def \wxmsw_dist\wxMSW\samples\text
copy *.rc \wxmsw_dist\wxMSW\samples\text
copy *.ico \wxmsw_dist\wxMSW\samples\text
cd ..
echo Thread sample..
cd thread
md \wxmsw_dist\wxMSW\samples\thread
copy Makefile.* \wxmsw_dist\wxMSW\samples\thread
copy *.cpp \wxmsw_dist\wxMSW\samples\thread
copy *.def \wxmsw_dist\wxMSW\samples\thread
copy *.rc \wxmsw_dist\wxMSW\samples\thread
copy *.ico \wxmsw_dist\wxMSW\samples\thread
cd ..
echo Toolbar sample..
cd toolbar
md \wxmsw_dist\wxMSW\samples\toolbar
copy Makefile.* \wxmsw_dist\wxMSW\samples\toolbar
copy *.cpp \wxmsw_dist\wxMSW\samples\toolbar
copy *.h \wxmsw_dist\wxMSW\samples\toolbar
copy *.rc \wxmsw_dist\wxMSW\samples\toolbar
copy *.def \wxmsw_dist\wxMSW\samples\toolbar
copy *.xpm \wxmsw_dist\wxMSW\samples\toolbar
copy *.ico \wxmsw_dist\wxMSW\samples\toolbar
cd bitmaps
md \wxmsw_dist\wxMSW\samples\toolbar\bitmaps
copy *.* \wxmsw_dist\wxMSW\samples\toolbar\bitmaps
cd ..\..
echo TreeCtrl sample..
cd treectrl
md \wxmsw_dist\wxMSW\samples\treectrl
copy Makefile.* \wxmsw_dist\wxMSW\samples\treectrl
copy *.rc \wxmsw_dist\wxMSW\samples\treectrl
copy *.def \wxmsw_dist\wxMSW\samples\treectrl
copy *.cpp \wxmsw_dist\wxMSW\samples\treectrl
copy *.h \wxmsw_dist\wxMSW\samples\treectrl
copy *.xpm \wxmsw_dist\wxMSW\samples\treectrl
copy *.ico \wxmsw_dist\wxMSW\samples\treectrl
cd bitmaps
md \wxmsw_dist\wxMSW\samples\treectrl\bitmaps
copy *.* \wxmsw_dist\wxMSW\samples\treectrl\bitmaps
cd ..\..
echo typetest sample..
cd typetest
md \wxmsw_dist\wxMSW\samples\typetest
copy Makefile.* \wxmsw_dist\wxMSW\samples\typetest
copy *.cpp \wxmsw_dist\wxMSW\samples\typetest
copy *.h \wxmsw_dist\wxMSW\samples\typetest
copy *.ico \wxmsw_dist\wxMSW\samples\typetest
copy *.def \wxmsw_dist\wxMSW\samples\typetest
copy *.rc \wxmsw_dist\wxMSW\samples\typetest
cd ..
echo Validate sample..
cd validate
md \wxmsw_dist\wxMSW\samples\validate
copy Makefile.* \wxmsw_dist\wxMSW\samples\validate
copy *.cpp \wxmsw_dist\wxMSW\samples\validate
copy *.h \wxmsw_dist\wxMSW\samples\validate
copy *.xpm \wxmsw_dist\wxMSW\samples\validate
copy *.rc \wxmsw_dist\wxMSW\samples\validate
copy *.def \wxmsw_dist\wxMSW\samples\validate
cd ..
echo wxPoem sample..
cd wxpoem
md \wxmsw_dist\wxMSW\samples\wxpoem
copy Makefile.* \wxmsw_dist\wxMSW\samples\wxpoem
copy *.cpp \wxmsw_dist\wxMSW\samples\wxpoem
copy *.h \wxmsw_dist\wxMSW\samples\wxpoem
copy *.xpm \wxmsw_dist\wxMSW\samples\wxpoem
copy *.def \wxmsw_dist\wxMSW\samples\wxpoem
copy *.rc \wxmsw_dist\wxMSW\samples\wxpoem
copy wxpoem.dat \wxmsw_dist\wxMSW\samples\wxpoem
copy wxpoem.txt \wxmsw_dist\wxMSW\samples\wxpoem
copy wxpoem.idx \wxmsw_dist\wxMSW\samples\wxpoem
cd ..
echo wxSocket sample..
cd wxsocket
md \wxmsw_dist\wxMSW\samples\wxsocket
copy Makefile.* \wxmsw_dist\wxMSW\samples\wxsocket
copy *.cpp \wxmsw_dist\wxMSW\samples\wxsocket
copy *.h \wxmsw_dist\wxMSW\samples\wxsocket
copy *.rc \wxmsw_dist\wxMSW\samples\wxsocket
copy *.def \wxmsw_dist\wxMSW\samples\wxsocket
copy *.xpm \wxmsw_dist\wxMSW\samples\wxsocket
cd ..\..

View File

@@ -1,3 +1,21 @@
*.spec
BuildCVS.txt
acconfig.h
*.m4
autogen.sh
config.guess
config.sub
configure.in
install-sh
ltconfig
ltmain.sh
missing
mkinstalldirs
modules
template.mak
wx-config.in
makefile.unx.in
distrib/msw/*.rsp
distrib/msw/*.bat
distrib/msw/tardist
@@ -36,6 +54,10 @@ src/generic/*.cpp
src/generic/*.c
src/generic/*.inc
src/html/*.cpp
src/html/*.h
src/html/bitmaps/*.xpm
src/unix/*.cpp
src/png/*.c
@@ -725,3 +747,126 @@ samples/drawing/*.png
samples/drawing/*.ico
samples/drawing/*.txt
samples/html/makefile*
samples/html/*.txt
samples/html/about/*.cpp
samples/html/about/*.h
samples/html/about/makefile*
samples/html/about/*.rc
samples/html/about/*.def
samples/html/about/*.bmp
samples/html/about/*.xpm
samples/html/about/*.xbm
samples/html/about/*.png
samples/html/about/*.ico
samples/html/about/*.txt
samples/html/about/data/*.htm
samples/html/about/data/*.png
samples/html/help/*.cpp
samples/html/help/*.h
samples/html/help/makefile*
samples/html/help/*.rc
samples/html/help/*.def
samples/html/help/*.bmp
samples/html/help/*.xpm
samples/html/help/*.xbm
samples/html/help/*.png
samples/html/help/*.ico
samples/html/help/*.txt
samples/html/help/helpfiles/*.htm
samples/html/help/helpfiles/*.hhc
samples/html/help/helpfiles/*.hhk
samples/html/help/helpfiles/*.hhp
samples/html/printing/*.cpp
samples/html/printing/*.h
samples/html/printing/makefile*
samples/html/printing/*.rc
samples/html/printing/*.def
samples/html/printing/*.bmp
samples/html/printing/*.xpm
samples/html/printing/*.xbm
samples/html/printing/*.png
samples/html/printing/*.ico
samples/html/printing/*.htm
samples/html/test/*.cpp
samples/html/test/*.h
samples/html/test/makefile*
samples/html/test/*.rc
samples/html/test/*.def
samples/html/test/*.bmp
samples/html/test/*.xpm
samples/html/test/*.xbm
samples/html/test/*.png
samples/html/test/*.ico
samples/html/test/*.htm
samples/html/test/*.html
samples/html/virtual/*.cpp
samples/html/virtual/*.h
samples/html/virtual/makefile*
samples/html/virtual/*.rc
samples/html/virtual/*.def
samples/html/virtual/*.bmp
samples/html/virtual/*.xpm
samples/html/virtual/*.xbm
samples/html/virtual/*.png
samples/html/virtual/*.ico
samples/html/virtual/*.htm
samples/html/virtual/*.html
samples/html/widget/*.cpp
samples/html/widget/*.h
samples/html/widget/makefile*
samples/html/widget/*.rc
samples/html/widget/*.def
samples/html/widget/*.bmp
samples/html/widget/*.xpm
samples/html/widget/*.xbm
samples/html/widget/*.png
samples/html/widget/*.ico
samples/html/widget/*.htm
samples/html/widget/*.html
samples/html/zip/*.cpp
samples/html/zip/*.h
samples/html/zip/makefile*
samples/html/zip/*.rc
samples/html/zip/*.def
samples/html/zip/*.bmp
samples/html/zip/*.xpm
samples/html/zip/*.xbm
samples/html/zip/*.png
samples/html/zip/*.ico
samples/html/zip/*.htm
samples/html/zip/*.html
samples/richedit/*.cpp
samples/richedit/*.h
samples/richedit/makefile*
samples/richedit/*.rc
samples/richedit/*.def
samples/richedit/*.bmp
samples/richedit/*.xpm
samples/richedit/*.xbm
samples/richedit/*.png
samples/richedit/*.ico
samples/richedit/*.txt
samples/richedit/TODO
samples/richedit/README
samples/text/*.cpp
samples/text/*.h
samples/text/makefile*
samples/text/*.rc
samples/text/*.def
samples/text/*.bmp
samples/text/*.xpm
samples/text/*.xbm
samples/text/*.png
samples/text/*.ico
samples/text/*.txt

View File

@@ -1,20 +1,10 @@
install-sh
Makefile
template.mak
configure
configure.in
config.guess
config.sub
wx-config.in
mkinstalldirs
wxGTK.spec
distrib/gtk/copy_src
distrib/gtk/README.txt
distrib/gtk/Setup
docs/gtk/*.html
docs/gtk/*.txt
docs/gtk/COPYING.LIB
docs/gtk/makewxgtk
include/wx/gtk/*.h

View File

@@ -80,6 +80,10 @@ samples/caret/Makefile.in
samples/caret/Makefile
samples/drawing/Makefile.in
samples/drawing/Makefile
samples/richedit/Makefile.in
samples/richedit/Makefile
samples/html/Makefile.in
samples/html/Makefile
src/Makefile.in
src/Makefile
utils/ogl/samples/ogledit/Makefile.in
@@ -89,3 +93,80 @@ utils/ogl/samples/studio/Makefile
utils/ogl/src/Makefile.in
utils/ogl/src/Makefile
Makefile.am
include/Makefile.am
include/wx/Makefile.am
include/wx/generic/Makefile.am
include/wx/gtk/Makefile.am
include/wx/html/Makefile.am
include/wx/motif/Makefile.am
include/wx/msw/Makefile.am
include/wx/msw/ctl3d/Makefile.am
include/wx/msw/gnuwin32/Makefile.am
include/wx/protocol/Makefile.am
include/wx/unix/Makefile.am
misc/Makefile.am
misc/afm/Makefile.am
misc/gs_afm/Makefile.am
samples/Makefile.am
samples/bombs/Makefile.am
samples/caret/Makefile.am
samples/checklst/Makefile.am
samples/config/Makefile.am
samples/controls/Makefile.am
samples/db/Makefile.am
samples/dialogs/Makefile.am
samples/dnd/Makefile.am
samples/docview/Makefile.am
samples/docvwmdi/Makefile.am
samples/drawing/Makefile.am
samples/dynamic/Makefile.am
samples/forty/Makefile.am
samples/fractal/Makefile.am
samples/grid/Makefile.am
samples/help/Makefile.am
samples/html/Makefile.am
samples/html/about/Makefile.am
samples/html/help/Makefile.am
samples/html/printing/Makefile.am
samples/html/test/Makefile.am
samples/html/virtual/Makefile.am
samples/html/widget/Makefile.am
samples/html/zip/Makefile.am
samples/image/Makefile.am
samples/internat/Makefile.am
samples/joytest/Makefile.am
samples/layout/Makefile.am
samples/listctrl/Makefile.am
samples/mdi/Makefile.am
samples/memcheck/Makefile.am
samples/mfc/Makefile.am
samples/minifram/Makefile.am
samples/minimal/Makefile.am
samples/nativdlg/Makefile.am
samples/notebook/Makefile.am
samples/oleauto/Makefile.am
samples/ownerdrw/Makefile.am
samples/png/Makefile.am
samples/printing/Makefile.am
samples/proplist/Makefile.am
samples/regtest/Makefile.am
samples/resource/Makefile.am
samples/richedit/Makefile.am
samples/sashtest/Makefile.am
samples/scroll/Makefile.am
samples/splitter/Makefile.am
samples/tab/Makefile.am
samples/taskbar/Makefile.am
samples/text/Makefile.am
samples/thread/Makefile.am
samples/toolbar/Makefile.am
samples/treectrl/Makefile.am
samples/typetest/Makefile.am
samples/validate/Makefile.am
samples/wxpoem/Makefile.am
samples/wxsocket/Makefile.am
src/Makefile.am
src/gtk/Makefile.am
src/motif/Makefile.am
src/msw/Makefile.am

View File

@@ -48,6 +48,8 @@ include/wx/install-sh
docs/motif/*.txt
docs/motif/makewxmotif
docs/motif2/*.txt
docs/motif2/COPYING.LIB
lib/dummy

View File

@@ -1,8 +1,11 @@
docs/msw/*.txt
docs/licence.txt
docs/msw/*.txt
docs/wine/*.txt
docs/wine/COPYING.LIB
distrib/msw/*.rsp
distrib/msw/*.bat
distrib/msw/tmake/*.t
tools/gettext/xgettext.exe
tools/gettext/msgfmt.exe
@@ -48,6 +51,7 @@ src/msw/makefile.*
src/msw/*.lst
src/msw/*.def
src/msw/*.inc
src/msw/winestub.c
src/msw/ctl3d/*.*
src/msw/ctl3d/msvc/*.*

341
distrib/msw/tmake/b32.t Normal file
View File

@@ -0,0 +1,341 @@
#!#############################################################################
#! File: b32.t
#! Purpose: tmake template file from which makefile.b32 is generated by running
#! tmake -t b32 wxwin.pro
#! Author: Vadim Zeitlin
#! Created: 14.07.99
#! Version: $Id$
#!#############################################################################
#${
#! include the code which parses filelist.txt file and initializes
#! %wxCommon, %wxGeneric and %wxMSW hashes.
IncludeTemplate("filelist.t");
#! now transform these hashes into $project tags
foreach $file (sort keys %wxGeneric) {
my $tag = "";
next if $wxGeneric{$file} =~ /\b(PS|G|16|U)\b/;
$file =~ s/cp?p?$/obj/;
$project{"WXGENERICOBJS"} .= "\$(MSWDIR)\\" . $file . " "
}
foreach $file (sort keys %wxCommon) {
$isCFile = $file =~ /\.c$/;
$file =~ s/cp?p?$/obj/;
$obj = "\$(MSWDIR)\\" . $file . " ";
$project{"WXCOMMONOBJS"} .= $obj;
$project{"WXCOBJS"} .= $obj if $isCFile;
}
foreach $file (sort keys %wxMSW) {
next if $wxMSW{$file} =~ /\b16\b/;
if ( $file =~ /^automtn/ ) {
#! comment in old makefile.b32 seems to imply that this file can't
#! be compiled with Borland (leads to crash in oleauto sample)
next;
}
my $isOleObj = $wxMSW{$file} =~ /\bO\b/;
$file =~ s/cp?p?$/obj/;
my $obj = "\$(MSWDIR)\\" . $file . " ";
$project{"WXMSWOBJS"} .= $obj;
if ( $isOleObj ) {
#! remember that this file is in ole subdir
$project{"WXOLEOBJS"} .= $obj;
}
}
#$}
# This file was automatically generated by tmake at #$ Now()
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE B32.T!
#
# File: makefile.b32
# Author: Julian Smart
# Created: 1998
# Updated:
# Copyright:
#
# "%W% %G%"
#
# Makefile : Builds wxWindows library wx.lib for MS Windows,
# and Borland C++ (32-bit).
!if "$(BCCDIR)" == ""
!error You must define the BCCDIR variable in autoexec.bat, e.g. BCCDIR=d:\bc4
!endif
!if "$(WXWIN)" == ""
!error You must define the WXWIN variable in autoexec.bat, e.g. WXWIN=c:\wx
!endif
WXDIR = $(WXWIN)
# Set all these to 1 if you want to build a dynamic library
!if "$(DLL)" == "1"
WXMAKINGDLL=1
WXBUILDDLL=1
!endif
!include $(WXDIR)\src\makeb32.env
# Please set these according to the settings in wx_setup.h, so we can include
# the appropriate libraries in wx.lib
USE_CTL3D=0
USE_XPM_IN_MSW=0
PERIPH_LIBS=
PERIPH_TARGET=
PERIPH_CLEAN_TARGET=
!if "$(USE_CTL3D)" == "1"
#Use WIN32S/WIN95 32 bit version ctl3d32.dll under win95 (Andre Beltman)
PERIPH_LIBS=$(WXDIR)\lib\ctl3d32.lib $(PERIPH_LIBS)
PERIPH_TARGET=ctl3d $(PERIPH_TARGET)
PERIPH_CLEAN_TARGET=clean_ctl3d $(PERIPH_CLEAN_TARGET)
!endif
!if "$(USE_XPM_IN_MSW)" == "1"
PERIPH_LIBS=$(WXLIB)\xpm.lib $(PERIPH_LIBS)
PERIPH_TARGET=xpm $(PERIPH_TARGET)
PERIPH_CLEAN_TARGET=clean_xpm $(PERIPH_CLEAN_TARGET)
!endif
#PERIPH_LIBS=$(WXDIR)\lib\zlib.lib $(WXDIR)\lib\winpng.lib $(WXDIR)\lib\jpeg.lib $(PERIPH_LIBS)
PERIPH_LIBS=
PERIPH_TARGET=zlib png jpeg $(PERIPH_TARGET)
PERIPH_CLEAN_TARGET=clean_zlib clean_png clean_jpeg $(PERIPH_CLEAN_TARGET)
!if "$(DLL)" == "0"
DUMMY=dummy
!else
DUMMY=dummydll
LIBS= cw32 import32 ole2w32
!endif
LIBTARGET=$(WXLIB)
GENDIR=..\generic
COMMDIR=..\common
OLEDIR=.\ole
MSWDIR=.
DOCDIR = $(WXDIR)\docs
GENERICOBJS= #$ ExpandList("WXGENERICOBJS");
# Not needed:
# $(MSWDIR)\colrdlgg.obj \
# $(MSWDIR)\fontdlgg.obj \
# $(MSWDIR)\helpxlp.obj \
# $(MSWDIR)\msgdlgg.obj \
# $(MSWDIR)\printps.obj \
# $(MSWDIR)\prntdlgg.obj \
# $(MSWDIR)\listctrl.obj \
# $(MSWDIR)\notebook.obj \
# $(MSWDIR)\treectrl.obj
COMMONOBJS = \
$(MSWDIR)\y_tab.obj \
#$ ExpandList("WXCOMMONOBJS");
MSWOBJS = #$ ExpandList("WXMSWOBJS");
OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS)
default: wx
wx: $(CFG) $(DUMMY).obj $(OBJECTS) $(PERIPH_TARGET) $(LIBTARGET)
all: all_libs all_execs
!if "$(DLL)" == "0"
$(LIBTARGET): $(DUMMY).obj $(OBJECTS)
-erase $(LIBTARGET)
tlib $(LIBTARGET) /P1024 @&&!
+$(OBJECTS:.obj =.obj +) +$(PERIPH_LIBS:.lib =.lib +)
!
!else
$(LIBTARGET): $(DUMMY).obj $(OBJECTS)
-erase $(LIBTARGET)
-erase $(WXLIBDIR)\wx.dll
tlink32 $(LINK_FLAGS) /v @&&!
c0d32.obj $(OBJECTS)
$(WXLIBDIR)\wx
nul
$(PERIPH_LIBS) $(LIBS)
wxb32
!
implib -c $(LIBTARGET) $(WXLIBDIR)\wx.dll
!endif
dummy.obj: dummy.$(SRCSUFF) $(LOCALHEADERS) $(BASEHEADERS) $(WXDIR)\include\wx\wx.h
dummydll.obj: dummydll.$(SRCSUFF) $(LOCALHEADERS) $(BASEHEADERS) $(WXDIR)\include\wx\wx.h
$(MSWDIR)\y_tab.obj: $(COMMDIR)\y_tab.c $(COMMDIR)\lex_yy.c
# cl @<<
# $(CPPFLAGS2) /c $*.c -DUSE_DEFINE -DYY_USE_PROTOS /Fo$@
# <<
$(COMMDIR)\y_tab.c: $(COMMDIR)\dosyacc.c
copy $(COMMDIR)\dosyacc.c $(COMMDIR)\y_tab.c
$(COMMDIR)\lex_yy.c: $(COMMDIR)\doslex.c
copy $(COMMDIR)\doslex.c $(COMMDIR)\lex_yy.c
# $(OBJECTS): $(WXDIR)\include\wx\setup.h
#${
$_ = $project{"WXMSWOBJS"};
my @objs = split;
foreach (@objs) {
$text .= $_ . ": ";
if ( $project{"WXOLEOBJS"} =~ /\Q$_/ ) { s/MSWDIR/OLEDIR/; }
s/obj$/\$(SRCSUFF)/;
$text .= $_ . "\n\n";
}
#$}
########################################################
# Common objects (always compiled)
#${
$_ = $project{"WXCOMMONOBJS"};
my @objs = split;
foreach (@objs) {
$text .= $_ . ": ";
$suffix = $project{"WXCOBJS"} =~ /\Q$_/ ? "c" : '$(SRCSUFF)';
s/MSWDIR/COMMDIR/;
s/obj$/$suffix/;
$text .= $_ . "\n\n";
}
#$}
########################################################
# Generic objects (not always compiled, depending on
# whether platforms have native implementations)
#${
$_ = $project{"WXGENERICOBJS"};
my @objs = split;
foreach (@objs) {
$text .= $_ . ": ";
s/MSWDIR/GENDIR/;
s/obj$/\$(SRCSUFF)/;
$text .= $_ . "\n\n";
}
#$}
all_utils:
cd $(WXDIR)\utils
make -f makefile.b32
cd $(WXDIR)\src\msw
all_samples:
cd $(WXDIR)\samples
make -f makefile.b32
cd $(WXDIR)\src\msw
all_execs:
cd $(WXDIR)\utils
make -f makefile.b32 all_execs
cd $(WXDIR)\src\msw
wxxpm: $(CFG)
cd $(WXDIR)\src\xpm
make -f makefile.b32 -DCFG=$(CFG) -DFINAL=$(FINAL) -DWXWIN=$(WXDIR) -DDEBUG=$(DEBUG)
cd $(WXDIR)\src\msw
clean_wxxpm: $(CFG)
cd $(WXDIR)\src\xpm
make -f makefile.b32 clean
cd $(WXDIR)\src\msw
png: $(CFG)
cd $(WXDIR)\src\png
make -f makefile.b32
cd $(WXDIR)\src\msw
clean_png:
cd $(WXDIR)\src\png
make -f makefile.b32 clean
cd $(WXDIR)\src\msw
zlib: $(CFG)
cd $(WXDIR)\src\zlib
make -f makefile.b32 lib
cd $(WXDIR)\src\msw
clean_zlib:
cd $(WXDIR)\src\zlib
make -f makefile.b32 clean
cd $(WXDIR)\src\msw
jpeg: $(CFG)
cd $(WXDIR)\src\jpeg
make -f makefile.b32
cd $(WXDIR)\src\msw
clean_jpeg:
cd $(WXDIR)\src\jpeg
make -f makefile.b32 clean
cd $(WXDIR)\src\msw
$(CFG): makefile.b32
copy &&!
-H=$(WXDIR)\src\msw\wx32.csm
-3
-d
-R-
-X
-w-par
-w-aus
-w-hid # virtual function A hides virtual function B
-WE
-tWM
-I$(WXINC);$(BCCDIR)\include;$(WXDIR)/src/png;$(WXDIR)/src/jpeg;$(WXDIR)/src/zlib;$(WXDIR)/src/xpm
-I$(WXDIR)\include\wx\msw\gnuwin32
-L$(BCCDIR)\lib
-D__WXWIN__
-D__WXMSW__
-D__WINDOWS__
-DWIN32
$(OPT)
$(DEBUG_FLAGS)
$(WIN95FLAG)
! $(CFG)
#-I$(WXDIR)\src\common\wxxpm\libxpm.34b\lib
# -Oxt
clean: $(PERIPH_CLEAN_TARGET)
-erase $(LIBTARGET)
-erase *.obj
-erase *.pch
-erase *.csm
-erase *.cfg
-erase ..\common\y_tab.c
-erase ..\common\lex_yy.c
cleanall: clean
MFTYPE=b32
makefile.$(MFTYPE) : $(WXWIN)\distrib\msw\tmake\filelist.txt $(WXWIN)\distrib\msw\tmake\$(MFTYPE).t
cd $(WXWIN)\distrib\msw\tmake
tmake -t $(MFTYPE) wxwin.pro -o makefile.$(MFTYPE)
copy makefile.$(MFTYPE) $(WXWIN)\src\msw

308
distrib/msw/tmake/bcc.t Normal file
View File

@@ -0,0 +1,308 @@
#!#############################################################################
#! File: bcc.t
#! Purpose: tmake template file from which makefile.bcc is generated by running
#! tmake -t bcc wxwin.pro -o makefile.bcc
#! Author: Vadim Zeitlin
#! Created: 14.07.99
#! Version: $Id$
#!#############################################################################
#${
#! include the code which parses filelist.txt file and initializes
#! %wxCommon, %wxGeneric and %wxMSW hashes.
IncludeTemplate("filelist.t");
#! now transform these hashes into $project tags
foreach $file (sort keys %wxGeneric) {
my $tag = "";
next if $wxGeneric{$file} =~ /\b(PS|G|U)\b/;
$file =~ s/cp?p?$/obj/;
$project{"WXGENERICOBJS"} .= "\$(MSWDIR)\\" . $file . " "
}
foreach $file (sort keys %wxCommon) {
#! socket files don't compile under Win16 currently
next if $wxCommon{$file} =~ /\b(32|S)\b/;
#! needs extra files (sql*.h) so not compiled by default.
next if $file =~ /^odbc\./;
$isCFile = $file =~ /\.c$/;
$file =~ s/cp?p?$/obj/;
$obj = "\$(MSWDIR)\\" . $file . " ";
$project{"WXCOMMONOBJS"} .= $obj;
$project{"WXCOBJS"} .= $obj if $isCFile;
}
#! special hack for Borland in 16 bits needs this file
$project{"WXCOMMONOBJS"} .= '${MSWDIR}\resourc2.cpp';
foreach $file (sort keys %wxMSW) {
#! don't take files not appropriate for 16-bit Windows
next if $wxMSW{$file} =~ /\b(32|O)\b/;
$file =~ s/cp?p?$/obj/;
$project{"WXMSWOBJS"} .= "\$(MSWDIR)\\" . $file . " "
}
#$}
# This file was automatically generated by tmake at #$ Now()
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE BCC.T!
#
# File: makefile.bcc
# Author: Julian Smart
# Created: 1993
# Updated:
# Copyright:(c) 1993, AIAI, University of Edinburgh
#
# "%W% %G%"
#
# Makefile : Builds wxWindows library wx.lib for Windows 3.1
# and Borland C++ 3.1
!if "$(BCCDIR)" == ""
!error You must define the BCCDIR variable in autoexec.bat, e.g. BCCDIR=d:\bc4
!endif
!if "$(WXWIN)" == ""
!error You must define the WXWIN variable in autoexec.bat, e.g. WXWIN=c:\wx
!endif
!if "$(CFG)" == ""
# !error You must start compiling from wx\src, not wx\src\msw.
!endif
!ifndef DEBUG
DEBUG=0
!endif
WXDIR = $(WXWIN)
!include $(WXDIR)\src\makebcc.env
THISDIR = $(WXDIR)\src\msw
# Please set these according to the settings in wx_setup.h, so we can include
# the appropriate libraries in wx.lib
USE_CTL3D=1
USE_XPM_IN_MSW=0
PERIPH_LIBS=
PERIPH_TARGET=
PERIPH_CLEAN_TARGET=
!if "$(USE_CTL3D)" == "1"
PERIPH_LIBS=$(BCCDIR)\lib\ctl3dv2.lib $(PERIPH_LIBS)
!endif
!if "$(USE_XPM_IN_MSW)" == "1"
PERIPH_LIBS=$(WXDIR)\xpm.lib $(PERIPH_LIBS)
PERIPH_TARGET=xpm $(PERIPH_TARGET)
PERIPH_CLEAN_TARGET=clean_xpm $(PERIPH_CLEAN_TARGET)
!endif
# TODO: add these libraries
# PERIPH_LIBS=$(WXDIR)\lib\zlib.lib $(WXDIR)\lib\winpng.lib $(PERIPH_LIBS)
PERIPH_TARGET=zlib png $(PERIPH_TARGET)
PERIPH_CLEAN_TARGET=clean_zlib clean_png $(PERIPH_CLEAN_TARGET)
CPPFLAGS=$(DEBUG_FLAGS) $(OPT) @$(CFG)
LIBTARGET= $(WXLIBDIR)\wx.lib
DUMMY=dummy
GENDIR=..\generic
COMMDIR=..\common
OLEDIR=.\ole
MSWDIR=.
DOCDIR = $(WXDIR)\docs
GENERICOBJS= #$ ExpandList("WXGENERICOBJS");
COMMONOBJS = \
$(MSWDIR)\y_tab.obj \
#$ ExpandList("WXCOMMONOBJS");
MSWOBJS = #$ ExpandList("WXMSWOBJS");
OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS)
default: wx
wx: $(CFG) $(DUMMY).obj $(OBJECTS) $(PERIPH_TARGET) $(LIBTARGET)
$(LIBTARGET): $(DUMMY).obj $(OBJECTS) $(PERIPH_LIBS)
erase $(LIBTARGET)
tlib $(LIBTARGET) /P1024 @&&!
+$(OBJECTS:.obj =.obj +) +$(PERIPH_LIBS:.lib =.lib +)
!
dummy.obj: dummy.$(SRCSUFF) $(LOCALHEADERS) $(BASEHEADERS) $(WXDIR)\include\wx\wx.h
dummydll.obj: dummydll.$(SRCSUFF) $(LOCALHEADERS) $(BASEHEADERS) $(WXDIR)\include\wx\wx.h
$(MSWDIR)\y_tab.obj: $(COMMDIR)\y_tab.c $(COMMDIR)\lex_yy.c
# cl @<<
# $(CPPFLAGS2) /c $*.c -DUSE_DEFINE -DYY_USE_PROTOS /Fo$@
# <<
$(COMMDIR)\y_tab.c: $(COMMDIR)\dosyacc.c
copy $(COMMDIR)\dosyacc.c $(COMMDIR)\y_tab.c
$(COMMDIR)\lex_yy.c: $(COMMDIR)\doslex.c
copy $(COMMDIR)\doslex.c $(COMMDIR)\lex_yy.c
# $(OBJECTS): $(WXDIR)\include\wx\setup.h
#${
$_ = $project{"WXMSWOBJS"};
my @objs = split;
foreach (@objs) {
$text .= $_ . ": ";
s/obj/\$(SRCSUFF)/;
$text .= $_ . "\n\n";
}
#$}
########################################################
# Common objects (always compiled)
#${
$_ = $project{"WXCOMMONOBJS"};
my @objs = split;
foreach (@objs) {
$text .= $_ . ": ";
$suffix = $project{"WXCOBJS"} =~ /\Q$_/ ? "c" : '$(SRCSUFF)';
s/MSWDIR/COMMDIR/;
s/obj/$suffix/;
$text .= $_ . "\n\n";
}
#$}
########################################################
# Generic objects (not always compiled, depending on
# whether platforms have native implementations)
#${
$_ = $project{"WXGENERICOBJS"};
my @objs = split;
foreach (@objs) {
$text .= $_ . ": ";
s/MSWDIR/GENDIR/;
s/obj/\$(SRCSUFF)/;
$text .= $_ . "\n\n";
}
#$}
all_utils:
cd $(WXDIR)\utils
make -f makefile.bcc
cd $(WXDIR)\src\msw
all_samples:
cd $(WXDIR)\samples
make -f makefile.bcc
cd $(WXDIR)\src\msw
all_execs:
cd $(WXDIR)\utils
make -f makefile.bcc all_execs
cd $(WXDIR)\src\msw
all_libs:
cd $(WXDIR)\src\msw
make -f makefile.bcc ctl3d dib fafa gauge hytext itsy prologio rcparser wx wxgraph\
wxstring wxtree mfutils # wxxpm
all_contribs:
cd $(WXDIR)\src\msw
make -f makefile.bcc ctl3d fafa wxstring itsy gauge # wxxpm
# CONTRIB
ctl3d: $(CFG)
cd $(WXDIR)\src\msw\ctl3d\borland
make -f makefile.bcc -DCFG=$(CFG)
cd $(WXDIR)\src\msw
wxxpm: $(CFG)
cd $(WXDIR)\src\xpm
make -f makefile.bcc -DCFG=$(CFG) -DFINAL=$(FINAL) -DWXWIN=$(WXDIR) -DDEBUG=$(DEBUG)
cd $(WXDIR)\src\msw
png: $(CFG)
cd $(WXDIR)\src\png
make -f makefile.bcc
cd $(WXDIR)\src\msw
clean_png:
cd $(WXDIR)\src\png
make -f makefile.bcc clean
cd $(WXDIR)\src\msw
zlib: $(CFG)
cd $(WXDIR)\src\zlib
make -f makefile.bcc
cd $(WXDIR)\src\msw
clean_zlib:
cd $(WXDIR)\src\zlib
make -f makefile.bcc clean
cd $(WXDIR)\src\msw
$(CFG): makefile.bcc
copy &&!
-H=$(WXDIR)\src\msw\borland.pch
-2
-P
-d
-w-hid
-w-par
-w-pia
-w-aus
-w-rch
-ml
-Od
-WE
-Fs-
-Vf
-Ff=4
-I$(WXINC);$(BCCDIR)\include;$(WXDIR)/src/png;$(WXDIR)/src/zlib;$(WXDIR)/src/xpm
-I$(WXDIR)\include\wx\msw\gnuwin32
-L$(BCCDIR)\lib
-D__WXWIN__
-D__WXMSW__
-D__WINDOWS__
-D__WIN16__
! $(CFG)
!if "$(BOR_VER)" == "3.1"
echo -Ff=4 >>$(CFG)
!elif "$(BOR_VER)" == "4"
echo -Ff=512 >>$(CFG)
echo -dc >>$(CFG)
!else
echo -Ff=512 >>$(CFG)
echo -dc >>$(CFG)
!endif
# -O was: -Oxt
clean: $(PERIPH_CLEAN_TARGET)
erase $(LIBTARGET)
erase *.obj
erase *.pch
erase *.csm
erase *.cfg
erase ..\common\y_tab.c
erase ..\common\lex_yy.c
cleanall: clean
MFTYPE=bcc
makefile.$(MFTYPE) : $(WXWIN)\distrib\msw\tmake\filelist.txt $(WXWIN)\distrib\msw\tmake\$(MFTYPE).t
cd $(WXWIN)\distrib\msw\tmake
tmake -t $(MFTYPE) wxwin.pro -o makefile.$(MFTYPE)
copy makefile.$(MFTYPE) $(WXWIN)\src\msw

260
distrib/msw/tmake/dos.t Normal file
View File

@@ -0,0 +1,260 @@
#!#############################################################################
#! File: dos.t
#! Purpose: tmake template file from which makefile.dos is generated by running
#! tmake -t dos wxwin.pro -o makefile.dos
#! Author: Vadim Zeitlin
#! Created: 14.07.99
#! Version: $Id$
#!#############################################################################
#${
#! include the code which parses filelist.txt file and initializes
#! %wxCommon, %wxGeneric and %wxMSW hashes.
IncludeTemplate("filelist.t");
#! now transform these hashes into $project tags
foreach $file (sort keys %wxGeneric) {
if ( $wxGeneric{$file} =~ /\b(PS|G|U)\b/ ) {
#! this file for some reason was compiled for VC++ 1.52
next unless $file =~ /^prntdlgg\./;
}
$file =~ s/cp?p?$/obj/;
$project{"WXGENERICOBJS"} .= "\$(GENDIR)\\" . $file . " "
}
foreach $file (sort keys %wxCommon) {
#! socket files don't compile under Win16 currently
next if $wxCommon{$file} =~ /\b(32|S)\b/;
$file =~ s/cp?p?$/obj/;
$project{"WXCOMMONOBJS"} .= "\$(COMMDIR)\\" . $file . " "
}
foreach $file (sort keys %wxMSW) {
#! don't take files not appropriate for 16-bit Windows
next if $wxMSW{$file} =~ /\b(32|O)\b/;
$file =~ s/cp?p?$/obj/;
$project{"WXMSWOBJS"} .= "\$(MSWDIR)\\" . $file . " "
}
#$}
# This file was automatically generated by tmake at #$ Now()
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE DOS.T!
#
# File: makefile.dos
# Author: Julian Smart
# Created: 1997
# Updated:
# Copyright:(c) 1997, Julian Smart
#
# "%W% %G%"
#
# Makefile : Builds wxWindows library wx.lib for VC++ (16-bit)
# Arguments:
#
# FINAL=1 argument to nmake to build version with no debugging info.
#
!include <..\makemsc.env>
LIBTARGET=$(WXLIB)
DUMMYOBJ=dummy.obj
# Please set these according to the settings in wx_setup.h, so we can include
# the appropriate libraries in wx.lib
# This one overrides the others, to be consistent with the settings in wx_setup.h
MINIMAL_WXWINDOWS_SETUP=0
USE_XPM_IN_MSW=0
USE_CTL3D=1
!if "$(MINIMAL_WXWINDOWS_SETUP)" == "1"
USE_CTL3D=0
USE_XPM_IN_MSW=0
!endif
PERIPH_LIBS=
PERIPH_TARGET=
PERIPH_CLEAN_TARGET=
# !if "$(USE_CTL3D)" == "1"
# PERIPH_LIBS=d:\msdev\lib\ctl3d32.lib $(PERIPH_LIBS)
# !endif
!if "$(USE_XPM_IN_MSW)" == "1"
PERIPH_LIBS=$(WXDIR)\contrib\wxxpm\xpm.lib $(PERIPH_LIBS)
PERIPH_TARGET=xpm $(PERIPH_TARGET)
PERIPH_CLEAN_TARGET=clean_xpm $(PERIPH_CLEAN_TARGET)
!endif
# PNG and Zlib
PERIPH_TARGET=png zlib $(PERIPH_TARGET)
PERIPH_CLEAN_TARGET=clean_png clean_zlib $(PERIPH_CLEAN_TARGET)
GENDIR=..\generic
COMMDIR=..\common
OLEDIR=.\ole
MSWDIR=.
GENERICOBJS= #$ ExpandList("WXGENERICOBJS");
COMMONOBJS = \
$(COMMDIR)\y_tab.obj \
#$ ExpandList("WXCOMMONOBJS");
MSWOBJS = #$ ExpandList("WXMSWOBJS");
# TODO: Implement XPM and PNG targets in this makefile!
# $(OLEDIR)\xpmhand \
# $(OLEDIR)\pnghand \
OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS)
# Normal, static library
all: $(DUMMYOBJ) $(WXDIR)\lib\wx1.lib $(WXDIR)\lib\wx2.lib $(WXDIR)\lib\wx3.lib
# $(WXDIR)\lib\wx.lib: dummy.obj $(OBJECTS) $(PERIPH_LIBS)
# -erase $(LIBTARGET)
# lib /PAGESIZE:128 @<<
# $(LIBTARGET)
# y
# $(OBJECTS) $(PERIPH_LIBS)
# nul
# ;
# <<
$(WXDIR)\lib\wx1.lib: $(COMMONOBJS) $(PERIPH_LIBS)
-erase $(WXDIR)\lib\wx1.lib
lib /PAGESIZE:128 @<<
$(WXDIR)\lib\wx1.lib
y
$(COMMONOBJS) $(PERIPH_LIBS)
nul
;
<<
$(WXDIR)\lib\wx2.lib: $(GENERICOBJS)
-erase $(WXDIR)\lib\wx2.lib
lib /PAGESIZE:128 @<<
$(WXDIR)\lib\wx2.lib
y
$(GENERICOBJS)
nul
;
<<
$(WXDIR)\lib\wx3.lib: $(MSWOBJS)
-erase $(WXDIR)\lib\wx3.lib
lib /PAGESIZE:128 @<<
$(WXDIR)\lib\wx3.lib
y
$(MSWOBJS)
nul
;
<<
########################################################
# Windows-specific objects
dummy.obj: dummy.$(SRCSUFF) $(WXDIR)\include\wx\wx.h
cl @<<
cl $(CPPFLAGS) /YcWX/WXPREC.H $(DEBUG_FLAGS) /c /Tp $*.$(SRCSUFF)
<<
#dummy.obj: dummy.$(SRCSUFF) $(WXDIR)\include\wx\wx.h
# cl $(CPPFLAGS) /YcWX/WXPREC.H $(DEBUG_FLAGS) /c /Tp $*.$(SRCSUFF)
dummydll.obj: dummydll.$(SRCSUFF) $(WXDIR)\include\wx\wx.h
cl @<<
$(CPPFLAGS) /YcWX/WXPREC.H /c /Tp $*.$(SRCSUFF)
<<
#${
$_ = $project{"WXMSWOBJS"} . $project{"WXCOMMONOBJS"} . $project{"WXGENERICOBJS"};
my @objs = split;
foreach (@objs) {
s:\\:/:;
$text .= $_ . ': $*.$(SRCSUFF)' . "\n" .
' cl @<<' . "\n" .
'$(CPPFLAGS) /Fo$@ /c /Tp $*.$(SRCSUFF)' . "\n" .
"<<\n\n";
}
#$}
$(COMMDIR)/y_tab.obj: $*.c $(COMMDIR)/lex_yy.c
cl @<<
$(CPPFLAGS2) -DUSE_DEFINE -DYY_USE_PROTOS /Fo$@ /I ..\common /c $*.c
<<
$(COMMDIR)/y_tab.c: $(COMMDIR)/dosyacc.c
copy $(COMMDIR)\dosyacc.c $(COMMDIR)\y_tab.c
$(COMMDIR)/lex_yy.c: $(COMMDIR)/doslex.c
copy $(COMMDIR)\doslex.c $(COMMDIR)\lex_yy.c
$(OBJECTS): $(WXDIR)/include/wx/setup.h
# Peripheral components
xpm:
cd $(WXDIR)\src\xpm
nmake -f makefile.dos FINAL=$(FINAL)
cd $(WXDIR)\src\msw
clean_xpm:
cd $(WXDIR)\src\xpm
nmake -f makefile.dos clean
cd $(WXDIR)\src\msw
zlib:
cd $(WXDIR)\src\zlib
nmake -f makefile.dos FINAL=$(FINAL)
cd $(WXDIR)\src\msw
clean_zlib:
cd $(WXDIR)\src\zlib
nmake -f makefile.dos clean
cd $(WXDIR)\src\msw
png:
cd $(WXDIR)\src\png
nmake -f makefile.dos FINAL=$(FINAL)
cd $(WXDIR)\src\msw
clean_png:
cd $(WXDIR)\src\png
nmake -f makefile.dos clean
cd $(WXDIR)\src\msw
clean: $(PERIPH_CLEAN_TARGET)
-erase *.obj
-erase ..\lib\*.lib
-erase *.pdb
-erase *.sbr
-erase *.pch
cd $(WXDIR)\src\generic
-erase *.pdb
-erase *.sbr
-erase *.obj
cd $(WXDIR)\src\common
-erase *.pdb
-erase *.sbr
-erase *.obj
cd $(WXDIR)\src\msw\ole
-erase *.pdb
-erase *.sbr
-erase *.obj
cd $(WXDIR)\src\msw
cleanall: clean
MFTYPE=dos
makefile.$(MFTYPE) : $(WXWIN)\distrib\msw\tmake\filelist.txt $(WXWIN)\distrib\msw\tmake\$(MFTYPE).t
cd $(WXWIN)\distrib\msw\tmake
tmake -t $(MFTYPE) wxwin.pro -o makefile.$(MFTYPE)
copy makefile.$(MFTYPE) $(WXWIN)\src\msw

View File

@@ -0,0 +1,58 @@
#!#############################################################################
#! File: filelist.t
#! Purpose: tmake template file containig Perl code to parse the filelist.txt
#! file - this is used by all other templates.
#! Author: Vadim Zeitlin
#! Created: 14.07.99
#! Version: $Id$
#!#############################################################################
#${
open(FILELIST, "filelist.txt") or die "Can't open filelist file: $!\n";
line: while ( defined($_ = <FILELIST>) ) {
chomp;
#! comment or blank line, skip
next line if ( $_ eq "" or /^#/ );
#! if ( $verbose ) {
#! print STDERR "Processing line: '$_'\n";
#! }
my @fields = split "\t";
if ( $#fields > 2 ) {
warn "Ignoring malformed line $_ in the filelist file.\n";
next line;
} elsif ( $#fields == 1 ) {
#! add an empty flags string
$fields[2] = "";
}
if ( $verbose ) {
print STDERR "File $fields[0]: type '$fields[1]', flags '$fields[2]'\n";
}
#! first column is filename, second is type, third is flags
if ( $fields[1] eq "C" ) {
$wxCommon{$fields[0]} = $fields[2];
} elsif ( $fields[1] eq "G" ) {
$wxGeneric{$fields[0]} = $fields[2];
} elsif ( $fields[1] eq "M" ) {
$wxMSW{$fields[0]} = $fields[2];
} elsif ( $fields[1] eq "R" ) {
$wxGTK{$fields[0]} = $fields[2];
} elsif ( $fields[1] eq "H" ) {
$wxHTML{$fields[0]} = $fields[2];
} elsif ( $fields[1] eq "U" ) {
$wxUNIX{$fields[0]} = $fields[2];
} elsif ( $fields[1] eq "I" ) {
$wxINCLUDE{$fields[0]} = $fields[2];
} else {
warn "Unknown file type $fields[1] for $fields[0], ignoring.\n";
next line;
}
}
close(FILELIST);
#$}
#! vim:sw=4:ts=4:list:et

View File

@@ -0,0 +1,572 @@
###############################################################################
# File: src/msw/filelist.cpp
# Purpose: The list of source files for MSW version of wxWindows.
# Author: Vadim Zeitlin
# Created: 14.07.99
# Version: $Id$
#
# Format of this file: TAB separated columns. The first column contains the
# filename, the second a letter corresonding a directory:
# G /src/generic
# C /src/common
# M /src/msw
# U /src/unix
# R /src/gtk
# H /src/html
# I /include/wx, /include/wx/gtk, /include/wx/msw, etc.
#
# The third column may be empty or contain some additional info about this
# file (only compile it in 16bit mode, don't compile it with this or that
# compiler, &c)
#
# Known flags:
# 16 a generic file implementing Win32 control for Win16
# 32 only can be compiled under Win32
# PS PostScript related file, normally not compiled under Windows
# G generic code which might be used instead of native one
# U Unix-ish file, normally not compiled under Windows
# O OLE file (needs Win32 and a decent compiler)
# S Socket file (currently doesn't compile under Win16 nor with GNU)
# R Not required for the GTK port
# WX Base header
# GTK GTK header
# MSW MSW header
# MAC Mac header
# MOT Motif header
# PM OS/2 header
# GEN Generic header
# PRO Protocol header
# HTM wxHtml header
# UNX Unix header
###############################################################################
# File name Type Flags
busyinfo.cpp G
caret.cpp G U
choicdgg.cpp G R
colrdlgg.cpp G G
dirdlgg.cpp G 16
extdlgg.cpp G
fontdlgg.cpp G G
gridg.cpp G
helpxlp.cpp G G,R
imaglist.cpp G 16
laywin.cpp G
listctrl.cpp G 16
msgdlgg.cpp G G,R
notebook.cpp G 16,R
panelg.cpp G
printps.cpp G PS
prntdlgg.cpp G PS,U
progdlgg.cpp G
prop.cpp G
propform.cpp G
proplist.cpp G
sashwin.cpp G
scrolwin.cpp G
splitter.cpp G
statusbr.cpp G
tabg.cpp G R
numdlgg.cpp G
textdlgg.cpp G R
tipdlg.cpp G
treectrl.cpp G 16
choiccmn.cpp C R
cmndata.cpp C
config.cpp C
ctrlcmn.cpp C R
date.cpp C
datstrm.cpp C
db.cpp C
dbtable.cpp C
dcbase.cpp C
dlgcmn.cpp C
docmdi.cpp C
docview.cpp C
dynarray.cpp C
dynlib.cpp C
event.cpp C
extended.c C
ffile.cpp C
file.cpp C
fileconf.cpp C
filefn.cpp C
filesys.cpp C
framecmn.cpp C
fs_inet.cpp C
fs_zip.cpp C
ftp.cpp C S
gdicmn.cpp C
hash.cpp C
helpbase.cpp C
http.cpp C S
imagbmp.cpp C
image.cpp C
imaggif.cpp C
imagjpeg.cpp C
imagpng.cpp C
intl.cpp C
ipcbase.cpp C
layout.cpp C
list.cpp C
log.cpp C
memory.cpp C
mimetype.cpp C 32
module.cpp C
mstream.cpp C
object.cpp C
objstrm.cpp C
odbc.cpp C R
paper.cpp C
prntbase.cpp C
process.cpp C 32
protocol.cpp C S
resource.cpp C
sckaddr.cpp C S
sckfile.cpp C S
sckipc.cpp C S
sckstrm.cpp C S
socket.cpp C S
stream.cpp C
string.cpp C
tbarbase.cpp C
tbarsmpl.cpp C 16
textcmn.cpp C
textfile.cpp C
time.cpp C
timercmn.cpp C
tokenzr.cpp C
txtstrm.cpp C
unzip.c C
url.cpp C S
utilscmn.cpp C
valgen.cpp C
validate.cpp C
valtext.cpp C
variant.cpp C
wfstream.cpp C
wincmn.cpp C
wxchar.cpp C
wxexpr.cpp C
zipstream.cpp C
zstream.cpp C
accel.cpp M
app.cpp M
automtn.cpp M O
bitmap.cpp M
bmpbuttn.cpp M
brush.cpp M
button.cpp M
caret.cpp M
checkbox.cpp M
checklst.cpp M
choice.cpp M
clipbrd.cpp M
colordlg.cpp M
colour.cpp M
combobox.cpp M
control.cpp M
curico.cpp M
cursor.cpp M
data.cpp M
dataobj.cpp M O
dc.cpp M
dcclient.cpp M
dcmemory.cpp M
dcprint.cpp M
dcscreen.cpp M
dde.cpp M
dialog.cpp M
dib.cpp M
dibutils.cpp M
dirdlg.cpp M 32
dragimag.cpp M
dropsrc.cpp M O
droptgt.cpp M O
filedlg.cpp M
font.cpp M
fontdlg.cpp M
frame.cpp M
gauge95.cpp M 32
gaugemsw.cpp M 16
gdiobj.cpp M
helpwin.cpp M
icon.cpp M
imaglist.cpp M 32
iniconf.cpp M 16
joystick.cpp M
listbox.cpp M
listctrl.cpp M 32
main.cpp M
mdi.cpp M
menu.cpp M
menuitem.cpp M
metafile.cpp M
minifram.cpp M
msgdlg.cpp M
nativdlg.cpp M
notebook.cpp M 32
oleutils.cpp M O
ownerdrw.cpp M
palette.cpp M
pen.cpp M
penwin.cpp M
pnghand.cpp M
printdlg.cpp M
printwin.cpp M
radiobox.cpp M
radiobut.cpp M
regconf.cpp M 32
region.cpp M
registry.cpp M 32
scrolbar.cpp M
settings.cpp M
slider95.cpp M 32
slidrmsw.cpp M 16
spinbutt.cpp M
statbmp.cpp M
statbox.cpp M
statbr95.cpp M 32
statline.cpp M
stattext.cpp M
tabctrl.cpp M
taskbar.cpp M 32
tbar95.cpp M 32
tbarmsw.cpp M 16
textctrl.cpp M
thread.cpp M 32
timer.cpp M
tooltip.cpp M 32
treectrl.cpp M 32
utils.cpp M
utilsexc.cpp M
uuid.cpp M O
wave.cpp M
window.cpp M
xpmhand.cpp M
threadpsx.cpp U
utilsunx.cpp U
gsocket.c U
gsockgtk.c R
win_gtk.c R
accel.cpp R
app.cpp R
bitmap.cpp R
bmpbuttn.cpp R
brush.cpp R
button.cpp R
checkbox.cpp R
checklst.cpp R
choice.cpp R
choicdlg.cpp R
clipbrd.cpp R
colour.cpp R
combobox.cpp R
control.cpp R
cursor.cpp R
data.cpp R
dataobj.cpp R
dc.cpp R
dcclient.cpp R
dcmemory.cpp R
dcscreen.cpp R
dialog.cpp R
dnd.cpp R
filedlg.cpp R
font.cpp R
frame.cpp R
gauge.cpp R
gdiobj.cpp R
icon.cpp R
listbox.cpp R
main.cpp R
mdi.cpp R
menu.cpp R
minifram.cpp R
msgdlg.cpp R
notebook.cpp R
palette.cpp R
pen.cpp R
radiobox.cpp R
radiobut.cpp R
region.cpp R
scrolbar.cpp R
settings.cpp R
slider.cpp R
spinbutt.cpp R
statbmp.cpp R
statbox.cpp R
statline.cpp R
stattext.cpp R
tbargtk.cpp R
textctrl.cpp R
textdlg.cpp R
timer.cpp R
tooltip.cpp R
utilsgtk.cpp R
utilsres.cpp R
wave.cpp R
window.cpp R
htmlcell.cpp H
htmlfilter.cpp H
htmlhelp.cpp H
htmlhelp_io.cpp H
htmlparser.cpp H
htmltag.cpp H
htmlwin.cpp H
htmlwinparser.cpp H
mod_fonts.cpp H
mod_hline.cpp H
mod_image.cpp H
mod_layout.cpp H
mod_links.cpp H
mod_list.cpp H
mod_pre.cpp H
mod_tables.cpp H
search.cpp H
arrimpl.cpp I WX
listimpl.cpp I WX
accel.h I WX
app.h I WX
bitmap.h I WX
bmpbuttn.h I WX
brush.h I WX
buffer.h I WX
busyinfo.h I WX
button.h I WX
caret.h I WX
checkbox.h I WX
checklst.h I WX
choicdlg.h I WX
choice.h I WX
clipbrd.h I WX
cmndata.h I WX
colordlg.h I WX
colour.h I WX
combobox.h I WX
confbase.h I WX
config.h I WX
control.h I WX
cursor.h I WX
dataobj.h I WX
date.h I WX
datstrm.h I WX
db.h I WX
dbtable.h I WX
dc.h I WX
dcclient.h I WX
dcmemory.h I WX
dcprint.h I WX
dcps.h I WX
dcscreen.h I WX
dde.h I WX
debug.h I WX
defs.h I WX
dialog.h I WX
dirdlg.h I WX
dnd.h I WX
docmdi.h I WX
docview.h I WX
dragimag.h I WX
dynarray.h I WX
dynlib.h I WX
event.h I WX
expr.h I WX
extdlg.h I WX
ffile.h I WX
file.h I WX
fileconf.h I WX
filedlg.h I WX
filefn.h I WX
filesys.h I WX
font.h I WX
fontdlg.h I WX
frame.h I WX
fs_inet.h I WX
fs_zip.h I WX
gauge.h I WX
gdicmn.h I WX
gdiobj.h I WX
grid.h I WX
hash.h I WX
help.h I WX
helpbase.h I WX
helphtml.h I WX
helpwin.h I WX
helpxlp.h I WX
icon.h I WX
image.h I WX
imaglist.h I WX
intl.h I WX
ioswrap.h I WX
ipcbase.h I WX
joystick.h I WX
layout.h I WX
laywin.h I WX
list.h I WX
listbox.h I WX
listctrl.h I WX
log.h I WX
longlong.h I WX
matrix.h I WX
mdi.h I WX
memory.h I WX
menu.h I WX
menuitem.h I WX
metafile.h I WX
mimetype.h I WX
minifram.h I WX
module.h I WX
msgdlg.h I WX
mstream.h I WX
notebook.h I WX
object.h I WX
objstrm.h I WX
odbc.h I WX
ownerdrw.h I WX
palette.h I WX
panel.h I WX
paper.h I WX
pen.h I WX
pnghand.h I WX
print.h I WX
printdlg.h I WX
prntbase.h I WX
process.h I WX
progdlg.h I WX
prop.h I WX
propform.h I WX
proplist.h I WX
radiobox.h I WX
radiobut.h I WX
region.h I WX
resource.h I WX
sashwin.h I WX
sckaddr.h I WX
sckipc.h I WX
sckstrm.h I WX
scrolbar.h I WX
scrolwin.h I WX
serbase.h I WX
settings.h I WX
setup.h I WX
slider.h I WX
socket.h I WX
spinbutt.h I WX
splitter.h I WX
statbmp.h I WX
statbox.h I WX
statline.h I WX
stattext.h I WX
statusbr.h I WX
stream.h I WX
string.h I WX
tab.h I WX
tabctrl.h I WX
taskbar.h I WX
tbar95.h I WX
tbarbase.h I WX
tbarmsw.h I WX
tbarsmpl.h I WX
textctrl.h I WX
textdlg.h I WX
textfile.h I WX
txtstrm.h I WX
thread.h I WX
time.h I WX
timer.h I WX
tipdlg.h I WX
tokenzr.h I WX
toolbar.h I WX
tooltip.h I WX
treectrl.h I WX
types.h I WX
url.h I WX
utils.h I WX
valgen.h I WX
validate.h I WX
valtext.h I WX
variant.h I WX
version.h I WX
wave.h I WX
wfstream.h I WX
window.h I WX
wx.h I WX
wx_cw.h I WX
wx_cw_cm.h I WX
wx_cw_d.h I WX
wxchar.h I WX
wxexpr.h I WX
wxhtml.h I WX
wxprec.h I WX
xpmhand.h I WX
zipstream.h I WX
zstream.h I WX
accel.h I GTK
app.h I GTK
bitmap.h I GTK
bmpbuttn.h I GTK
brush.h I GTK
button.h I GTK
checkbox.h I GTK
checklst.h I GTK
choice.h I GTK
choicdlg.h I GTK
clipbrd.h I GTK
colour.h I GTK
combobox.h I GTK
control.h I GTK
cursor.h I GTK
dataobj.h I GTK
dc.h I GTK
dcclient.h I GTK
dcmemory.h I GTK
dcscreen.h I GTK
dialog.h I GTK
dnd.h I GTK
filedlg.h I GTK
font.h I GTK
frame.h I GTK
gauge.h I GTK
gdiobj.h I GTK
icon.h I GTK
joystick.h I GTK
listbox.h I GTK
mdi.h I GTK
menu.h I GTK
menuitem.h I GTK
msgdlg.h I GTK
minifram.h I GTK
notebook.h I GTK
palette.h I GTK
pen.h I GTK
radiobox.h I GTK
radiobut.h I GTK
region.h I GTK
scrolbar.h I GTK
settings.h I GTK
slider.h I GTK
spinbutt.h I GTK
statbmp.h I GTK
statbox.h I GTK
statline.h I GTK
stattext.h I GTK
tbargtk.h I GTK
textctrl.h I GTK
textdlg.h I GTK
timer.h I GTK
tooltip.h I GTK
treectrl.h I GTK
wave.h I GTK
win_gtk.h I GTK
window.h I GTK
# vi: set noet ts=16 nolist:

267
distrib/msw/tmake/g95.t Normal file
View File

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

219
distrib/msw/tmake/gtk.t Normal file
View File

@@ -0,0 +1,219 @@
#!#############################################################################
#! File: gtk.t
#! Purpose: tmake template file from which Makefile is generated by running
#! tmake -t gtk wxwin.pro -o Makefile
#! Author: Vadim Zeitlin, Robert Roebling, Julian Smart
#! Created: 14.07.99
#! Version: $Id$
#!#############################################################################
#${
#! include the code which parses filelist.txt file and initializes
#! %wxCommon, %wxGeneric, %wxHtml, %wxUnix and %wxGTK hashes.
IncludeTemplate("filelist.t");
#! now transform these hashes into $project tags
foreach $file (sort keys %wxGeneric) {
next if $wxGeneric{$file} =~ /\bR\b/;
$file =~ s/cp?p?$/\$(OBJSUFF)/;
$project{"WXGENERICOBJS"} .= '$(GENDIR)/' . $file . " "
}
foreach $file (sort keys %wxCommon) {
next if $wxCommon{$file} =~ /\bR\b/;
$file =~ s/cp?p?$/\$(OBJSUFF)/;
$project{"WXCOMMONOBJS"} .= '$(COMMDIR)/' . $file . " "
}
foreach $file (sort keys %wxGTK) {
$file =~ s/cp?p?$/\$(OBJSUFF)/;
$project{"WXGTKOBJS"} .= '$(GTKDIR)/' . $file . " "
}
foreach $file (sort keys %wxHTML) {
$file =~ s/cp?p?$/\$(OBJSUFF)/;
$project{"WXHTMLOBJS"} .= '$(HTMLDIR)/' . $file . " "
}
foreach $file (sort keys %wxUNIX) {
$file =~ s/cp?p?$/\$(OBJSUFF)/;
$project{"WXUNIXOBJS"} .= '$(UNIXDIR)/' . $file . " "
}
#$}
# This file was automatically generated by tmake at #$ Now()
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE GTK.T!
#
# File: Makefile
# Author: Julian Smart, Robert Roebling, Vadim Zeitlin
# Created: 1993
# Updated: 1999
# Copyright:(c) 1993, AIAI, University of Edinburgh,
# Copyright:(c) 1999, Vadim Zeitlin
# Copyright:(c) 1999, Robert Roebling
#
# Makefile for libwx_gtk.a
WXDIR = ../..
include $(WXDIR)/src/gtk.env
# Subordinate library possibilities
GENDIR = $(WXDIR)/src/generic
COMMDIR = $(WXDIR)/src/common
HTMLDIR = $(WXDIR)/src/html
UNIXDIR = $(WXDIR)/src/unix
PNGDIR = $(WXDIR)/src/png
JPEGDIR = $(WXDIR)/src/jpeg
ZLIBDIR = $(WXDIR)/src/zlib
GTKDIR = $(WXDIR)/src/gtk
DOCDIR = $(WXDIR)\docs
GENERICOBJS = \
#$ ExpandList("WXGENERICOBJS");
COMMONOBJS = \
$(COMMDIR)/parser.$(OBJSUFF) \
#$ ExpandList("WXCOMMONOBJS");
HTMLOBJS = \
#$ ExpandList("WXHTMLOBJS");
GTKOBJS = \
#$ ExpandList("WXGTKOBJS");
UNIXOBJS = \
#$ ExpandList("WXUNIXOBJS");
ZLIBOBJS = \
$(ZLIBDIR)/adler32.$(OBJSUFF) \
$(ZLIBDIR)/compress.$(OBJSUFF) \
$(ZLIBDIR)/crc32.$(OBJSUFF) \
$(ZLIBDIR)/gzio.$(OBJSUFF) \
$(ZLIBDIR)/uncompr.$(OBJSUFF) \
$(ZLIBDIR)/deflate.$(OBJSUFF) \
$(ZLIBDIR)/trees.$(OBJSUFF) \
$(ZLIBDIR)/zutil.$(OBJSUFF) \
$(ZLIBDIR)/inflate.$(OBJSUFF) \
$(ZLIBDIR)/infblock.$(OBJSUFF) \
$(ZLIBDIR)/inftrees.$(OBJSUFF) \
$(ZLIBDIR)/infcodes.$(OBJSUFF) \
$(ZLIBDIR)/infutil.$(OBJSUFF) \
$(ZLIBDIR)/inffast.$(OBJSUFF)
PNGOBJS = \
$(PNGDIR)/png.$(OBJSUFF) \
$(PNGDIR)/pngread.$(OBJSUFF) \
$(PNGDIR)/pngrtran.$(OBJSUFF) \
$(PNGDIR)/pngrutil.$(OBJSUFF) \
$(PNGDIR)/pngpread.$(OBJSUFF) \
$(PNGDIR)/pngtrans.$(OBJSUFF) \
$(PNGDIR)/pngwrite.$(OBJSUFF) \
$(PNGDIR)/pngwtran.$(OBJSUFF) \
$(PNGDIR)/pngwutil.$(OBJSUFF) \
$(PNGDIR)/pngerror.$(OBJSUFF) \
$(PNGDIR)/pngmem.$(OBJSUFF) \
$(PNGDIR)/pngwio.$(OBJSUFF) \
$(PNGDIR)/pngrio.$(OBJSUFF) \
$(PNGDIR)/pngget.$(OBJSUFF) \
$(PNGDIR)/pngset.$(OBJSUFF)
JPEGOBJS = \
$(JPEGDIR)/jcomapi.$(OBJSUFF) \
$(JPEGDIR)/jutils.$(OBJSUFF) \
$(JPEGDIR)/jerror.$(OBJSUFF) \
$(JPEGDIR)/jmemmgr.$(OBJSUFF) \
$(JPEGDIR)/jmemnobs.$(OBJSUFF) \
$(JPEGDIR)/jcapimin.$(OBJSUFF) \
$(JPEGDIR)/jcapistd.$(OBJSUFF) \
$(JPEGDIR)/jctrans.$(OBJSUFF) \
$(JPEGDIR)/jcparam.$(OBJSUFF) \
$(JPEGDIR)/jdatadst.$(OBJSUFF) \
$(JPEGDIR)/jcinit.$(OBJSUFF) \
$(JPEGDIR)/jcmaster.$(OBJSUFF) \
$(JPEGDIR)/jcmarker.$(OBJSUFF) \
$(JPEGDIR)/jcmainct.$(OBJSUFF) \
$(JPEGDIR)/jcprepct.$(OBJSUFF) \
$(JPEGDIR)/jccoefct.$(OBJSUFF) \
$(JPEGDIR)/jccolor.$(OBJSUFF) \
$(JPEGDIR)/jcsample.$(OBJSUFF) \
$(JPEGDIR)/jchuff.$(OBJSUFF) \
$(JPEGDIR)/jcphuff.$(OBJSUFF) \
$(JPEGDIR)/jcdctmgr.$(OBJSUFF) \
$(JPEGDIR)/jfdctfst.$(OBJSUFF) \
$(JPEGDIR)/jfdctflt.$(OBJSUFF) \
$(JPEGDIR)/jfdctint.$(OBJSUFF) \
$(JPEGDIR)/jdapimin.$(OBJSUFF) \
$(JPEGDIR)/jdapistd.$(OBJSUFF) \
$(JPEGDIR)/jdtrans.$(OBJSUFF) \
$(JPEGDIR)/jdatasrc.$(OBJSUFF) \
$(JPEGDIR)/jdmaster.$(OBJSUFF) \
$(JPEGDIR)/jdinput.$(OBJSUFF) \
$(JPEGDIR)/jdmarker.$(OBJSUFF) \
$(JPEGDIR)/jdhuff.$(OBJSUFF) \
$(JPEGDIR)/jdphuff.$(OBJSUFF) \
$(JPEGDIR)/jdmainct.$(OBJSUFF) \
$(JPEGDIR)/jdcoefct.$(OBJSUFF) \
$(JPEGDIR)/jdpostct.$(OBJSUFF) \
$(JPEGDIR)/jddctmgr.$(OBJSUFF) \
$(JPEGDIR)/jidctfst.$(OBJSUFF) \
$(JPEGDIR)/jidctflt.$(OBJSUFF) \
$(JPEGDIR)/jidctint.$(OBJSUFF) \
$(JPEGDIR)/jidctred.$(OBJSUFF) \
$(JPEGDIR)/jdsample.$(OBJSUFF) \
$(JPEGDIR)/jdcolor.$(OBJSUFF) \
$(JPEGDIR)/jquant1.$(OBJSUFF) \
$(JPEGDIR)/jquant2.$(OBJSUFF) \
$(JPEGDIR)/jdmerge.$(OBJSUFF)
OBJECTS = $(GTKOBJS) $(COMMONOBJS) $(GENERICOBJS) $(HTMLOBJ) $(UNIXOBJS) \
$(JPEGOBJS) $(PNGOBJS) $(ZLIBOBJS)
all: $(OBJECTS) $(WXLIB)
$(WXLIB): $(OBJECTS)
ar $(AROPTIONS) $@ $(OBJECTS)
$(RANLIB) $@
$(OBJECTS): $(WXDIR)/include/wx/defs.h $(WXDIR)/include/wx/object.h $(WXDIR)/include/wx/setup.h
$(COMMDIR)/parser.$(OBJSUFF): $(COMMDIR)/parser.c $(COMMDIR)/lexer.c
$(CCLEX) -c $(CFLAGS) -o $@ $(COMMDIR)/parser.c
$(COMMDIR)/parser.c: $(COMMDIR)/parser.y $(COMMDIR)/lexer.c
$(YACC) $(COMMDIR)/parser.y
@sed -e "s;$(COMMDIR)/y.tab.c;parser.y;g" < y.tab.c | \
sed -e "s/BUFSIZ/5000/g" | \
sed -e "s/YYLMAX 200/YYLMAX 5000/g" | \
sed -e "s/yy/PROIO_yy/g" | \
sed -e "s/input/PROIO_input/g" | \
sed -e "s/unput/PROIO_unput/g" > $(COMMDIR)/parser.c
@$(RM) y.tab.c
$(COMMDIR)/lexer.c: $(COMMDIR)/lexer.l
$(LEX) $(COMMDIR)/lexer.l
@sed -e "s;$(COMMDIR)/lex.yy.c;lexer.l;g" < lex.yy.c | \
sed -e "s/yy/PROIO_yy/g" | \
sed -e "s/input/PROIO_input/g" | \
sed -e "s/unput/PROIO_unput/g" > $(COMMDIR)/lexer.c
@$(RM) lex.yy.c
clean:
rm -f $(GTKDIR)/*.$(OBJSUFF)
rm -f $(COMMDIR)/parser.c
rm -f $(COMMDIR)/lexer.c
rm -f $(COMMDIR)/*.$(OBJSUFF)
rm -f $(GENDIR)/*.$(OBJSUFF)
rm -f $(PNGDIR)/*.$(OBJSUFF)
rm -f $(ZLIBDIR)/*.$(OBJSUFF)
rm -f $(JPEGDIR)/*.$(OBJSUFF)
rm -f $(UNIXDIR)/*.$(OBJSUFF)
rm -f $(HTMLDIR)/*.$(OBJSUFF)
rm -f $(WXWIN)/lib/libwx_$(GUI).a
cleanall: clean

57
distrib/msw/tmake/makeall.bat Executable file
View File

@@ -0,0 +1,57 @@
@echo off
rem File: makeall.bat
rem Purpose: create wxWindows makefiles for all compilers
rem Author: Vadim Zeitlin
rem Created: 14.07.99
rem Copyright: (c) 1999 Vadim Zeitlin
rem Version: $Id$
rem
rem Makefile to create the makefiles for all compilers from the templates using
rem tmake. The environment variable WX or WXWIN should be defined and contain
rem the root directory of wxWindows installation. TMAKE program should be in
rem path or, alternatively, TMAKE environment variable should be set.
if "x%WX%" == "x" goto skip
set WXDIR=%WX%
goto ok
:skip
if "x%WXWIN%" == "x" goto no_wx
set WXDIR=%WXWIN%
goto ok
:no_wx
echo "Please set WX environment variable!"
goto end
:ok
set TM=tmake
if "x%TMAKE%" == "x" goto skip2
set TM=%TMAKE%
:skip2
rem this loop just doesn't want to work under command.com and cmd.exe and
rem 4nt.exe, so I preferred to unroll it.
rem for %%c in (b32 bcc dos g95 sc vc wat) %TM% -t %c% wxwin.pro -o %WXDIR%\src\msw\makefile.%c%
echo Generating for Visual C++ 4.0...
E:\Perl\5.00471\bin\MSWin32-x86\perl.exe g:\Unix\tmake\bin\tmake -t vc wxwin.pro -o makefile.vc
echo Generating for Borland C++ (32 bits)...
E:\Perl\5.00471\bin\MSWin32-x86\perl.exe g:\Unix\tmake\bin\tmake -t b32 wxwin.pro -o makefile.b32
echo Generating for Visual C++ 1.52...
E:\Perl\5.00471\bin\MSWin32-x86\perl.exe g:\Unix\tmake\bin\tmake -t dos wxwin.pro -o makefile.dos
echo Generating for Borland C++ (16 bits)...
E:\Perl\5.00471\bin\MSWin32-x86\perl.exe g:\Unix\tmake\bin\tmake -t bcc wxwin.pro -o makefile.bcc
echo Generating for Cygwin/Mingw32
E:\Perl\5.00471\bin\MSWin32-x86\perl.exe g:\Unix\tmake\bin\tmake -t g95 wxwin.pro -o makefile.g95
echo Generating for Symantec C++...
E:\Perl\5.00471\bin\MSWin32-x86\perl.exe g:\Unix\tmake\bin\tmake -t sc wxwin.pro -o makefile.sc
echo Generating for Watcom C++...
E:\Perl\5.00471\bin\MSWin32-x86\perl.exe g:\Unix\tmake\bin\tmake -t wat wxwin.pro -o makefile.wat
echo Generating for wxGTK...
E:\Perl\5.00471\bin\MSWin32-x86\perl.exe g:\Unix\tmake\bin\tmake -t gtk wxwin.pro -o Makefile
echo Generating for Unix and Configure...
E:\Perl\5.00471\bin\MSWin32-x86\perl.exe g:\Unix\tmake\bin\tmake -t unx wxwin.pro -o makefile.unx.in
:end

119
distrib/msw/tmake/sc.t Normal file
View File

@@ -0,0 +1,119 @@
#!#############################################################################
#! File: sc.t
#! Purpose: tmake template file from which makefile.sc is generated by running
#! tmake -t sc wxwin.pro -o makefile.sc
#! Author: Vadim Zeitlin
#! Created: 14.07.99
#! Version: $Id$
#!#############################################################################
#${
#! include the code which parses filelist.txt file and initializes
#! %wxCommon, %wxGeneric and %wxMSW hashes.
IncludeTemplate("filelist.t");
#! now transform these hashes into $project tags
foreach $file (sort keys %wxGeneric) {
my $tag = "";
if ( $wxGeneric{$file} =~ /\b(PS|G|16|U)\b/ ) {
$tag = "WXNONESSENTIALOBJS";
}
else {
$tag = "WXGENERICOBJS";
}
$file =~ s/cp?p?$/obj/;
$project{$tag} .= '$(GENDIR)\\' . $file . " "
}
foreach $file (sort keys %wxCommon) {
$file =~ s/cp?p?$/obj/;
$project{"WXCOMMONOBJS"} .= '$(COMMDIR)\\' . $file . " "
}
foreach $file (sort keys %wxMSW) {
#! these files don't compile with SC++ 6
next if $file =~ /^(joystick|pnghand)\./;
next if $wxGeneric{$file} =~ /\b16\b/;
$file =~ s/cp?p?$/obj/;
$project{"WXMSWOBJS"} .= '$(MSWDIR)\\' . $file . " "
}
#$}
# This file was automatically generated by tmake at #$ Now()
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE SC.T!
# Symantec C++ makefile for the msw objects
# called from src\makefile.sc
# configuration section (see src\makefile.sc) ###########################
WXDIR = $(WXWIN)
include ..\makesc.env
DEBUG=0
LIBTARGET = $(LIBDIR)\wx.lib
OPTIONS=
# end of configuration section ##########################################
GENDIR=$(WXDIR)\src\generic
COMMDIR=$(WXDIR)\src\common
XPMDIR=$(WXDIR)\src\xpm
OLEDIR=ole
MSWDIR=$(WXDIR)\src\msw
GENERICOBJS= #$ ExpandList("WXGENERICOBJS");
COMMONOBJS = \
$(COMMDIR)\y_tab.obj \
#$ ExpandList("WXCOMMONOBJS");
MSWOBJS = #$ ExpandList("WXMSWOBJS");
XPMOBJECTS = $(XPMDIR)\crbuffri.obj\
$(XPMDIR)\crdatfri.obj\
$(XPMDIR)\create.obj $(XPMDIR)\crifrbuf.obj\
$(XPMDIR)\crifrdat.obj\
$(XPMDIR)\data.obj\
$(XPMDIR)\hashtab.obj $(XPMDIR)\misc.obj\
$(XPMDIR)\parse.obj $(XPMDIR)\rdftodat.obj\
$(XPMDIR)\rdftoi.obj\
$(XPMDIR)\rgb.obj $(XPMDIR)\scan.obj\
$(XPMDIR)\simx.obj $(XPMDIR)\wrffrdat.obj\
$(XPMDIR)\wrffrp.obj $(XPMDIR)\wrffri.obj
# Add $(NONESSENTIALOBJS) if wanting generic dialogs, PostScript etc.
OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS) # $(XPMOBJECTS)
all: $(LIBTARGET)
$(LIBTARGET): $(OBJECTS)
-del $(LIBTARGET)
*lib /PAGESIZE:512 $(LIBTARGET) y $(OBJECTS), nul;
clean:
-del *.obj
-del $(LIBTARGET)
$(COMMDIR)\y_tab.obj: $(COMMDIR)\y_tab.c $(COMMDIR)\lex_yy.c
$(COMMDIR)\y_tab.c: $(COMMDIR)\dosyacc.c
copy $(COMMDIR)\dosyacc.c $(COMMDIR)\y_tab.c
$(COMMDIR)\lex_yy.c: $(COMMDIR)\doslex.c
copy $(COMMDIR)\doslex.c $(COMMDIR)\lex_yy.c
# $(COMMDIR)\cmndata.obj: $(COMMDIR)\cmndata.cpp
# *$(CC) -c $(CFLAGS) -I$(INCLUDE) $(OPTIONS) $(COMMDIR)\cmndata.cpp -o$(COMMDIR)\cmndata.obj
MFTYPE=sc
makefile.$(MFTYPE) : $(WXWIN)\distrib\msw\tmake\filelist.txt $(WXWIN)\distrib\msw\tmake\$(MFTYPE).t
cd $(WXWIN)\distrib\msw\tmake
tmake -t $(MFTYPE) wxwin.pro -o makefile.$(MFTYPE)
copy makefile.$(MFTYPE) $(WXWIN)\src\msw

343
distrib/msw/tmake/unx.t Normal file
View File

@@ -0,0 +1,343 @@
#!################################################################################
#! File: unx.t
#! Purpose: tmake template file from which makefile.unx.in is generated by running
#! tmake -t unx wxwin.pro -o makefile.unx.in
#! Author: Vadim Zeitlin, Robert Roebling, Julian Smart
#! Created: 14.07.99
#! Version: $Id$
#!################################################################################
#${
#! include the code which parses filelist.txt file and initializes
#! %wxCommon, %wxGeneric, %wxHtml, %wxUnix and %wxGTK hashes.
IncludeTemplate("filelist.t");
#! now transform these hashes into $project tags
foreach $file (sort keys %wxGeneric) {
next if $wxGeneric{$file} =~ /\bR\b/;
$file =~ s/cp?p?$/\o/;
$project{"WXGENERICOBJS"} .= $file . " "
}
foreach $file (sort keys %wxCommon) {
next if $wxCommon{$file} =~ /\bR\b/;
$file =~ s/cp?p?$/\o/;
$project{"WXCOMMONOBJS"} .= $file . " "
}
foreach $file (sort keys %wxGTK) {
$file =~ s/cp?p?$/\o/;
$project{"WXGTKOBJS"} .= $file . " "
}
foreach $file (sort keys %wxHTML) {
$file =~ s/cp?p?$/\o/;
$project{"WXHTMLOBJS"} .= $file . " "
}
foreach $file (sort keys %wxUNIX) {
$file =~ s/cp?p?$/\o/;
$project{"WXUNIXOBJS"} .= $file . " "
}
#$}
#
# I want this to be:
# $(INSTALL_DATA) $(INCDIR)/wx/window.h $(includedir)/wx/window.h
#
# foreach $file (sort keys %wxINCLUDE) {
# next if $wxINCLUDE{$file} =~ /\b(GTK|MSW|MOT|PM|MAC|GEN|HTM|UNX)\b/;
#
# $project{"WXINSTALLWX"} .= "$(INSTALL_DATA)" . " " . "\$(INCDIR)/wx/" . $file . " \$(includedir)/wx/" . $file . "\n"
# }
#
#
#
# This file was automatically generated by tmake at #$ Now()
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE UNX.T!
#
# File: makefile.unx
# Author: Julian Smart, Robert Roebling, Vadim Zeitlin
# Created: 1993
# Updated: 1999
# Copyright:(c) 1993, AIAI, University of Edinburgh,
# Copyright:(c) 1999, Vadim Zeitlin
# Copyright:(c) 1999, Robert Roebling
#
# Makefile for libwx_gtk.a, libwx_motif.a and libwx_msw.a
########################### VERSION #################################
LIBS = @LIBS@
TOOLKIT = @TOOLKIT@
WXLIB = @WX_LIBRARY@
########################### VERSION #################################
WX_MAJOR_VERSION_NUMBER = @WX_MAJOR_VERSION_NUMBER@
WX_MINOR_VERSION_NUMBER = @WX_MINOR_VERSION_NUMBER@
WX_RELEASE_NUMBER = @WX_RELEASE_NUMBER@
########################### Misc #################################
SHELL = @SHELL@
########################### Paths #################################
srcdir = @srcdir@/src/gtk
top_srcdir = @top_srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
bindir = @bindir@
sbindir = @sbindir@
libexecdir = @libexecdir@
datadir = @datadir@
sysconfdir = @sysconfdir@
sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@
libdir = @libdir@
infodir = @infodir@
mandir = @mandir@
includedir = @includedir@
oldincludedir = /usr/include
DESTDIR =
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = .
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
transform = @program_transform_name@
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_alias = @build_alias@
build_triplet = @build@
host_alias = @host_alias@
host_triplet = @host@
target_alias = @target_alias@
target_triplet = @target@
EXTRA_VPATH = @EXTRA_VPATH_MF@
VPATH = .:${srcdir}:${srcdir}/src/common:${srcdir}/src/generic:${srcdir}/src/html:${EXTRA_VPATH}
########################### Programs #################################
# C++ compiler
CC = @CXX@
CCPP = @CXXCPP@
# C compiler
CCC = @CC@
CCCPP = @CPP@
# Compiler for lex/yacc .c programs
CCLEX = @CC@
LEX = @LEX@
YACC = @YACC@
AR = @AR@
AS = @AS@
NM = @NM@
LN_S = @LN_S@
STRIP = @STRIP@
MAKE = make
AROPTIONS = ruv
RANLIB = @RANLIB@
LD = @LD@
MAKEINFO = @MAKEINFO@
########################### Flags #################################
CFLAGS = @TOOLKIT_DEF@ @WXDEBUG_DEFINE@ @CFLAGS@
CPPFLAGS = @TOOLKIT_DEF@ @WXDEBUG_DEFINE@ @CXXFLAGS@
########################### Rules #################################
# Clears all default suffixes
.SUFFIXES: .o .cpp .c
.c.o :
$(CCC) -c $(CFLAGS) -o $@ $<
.cpp.o :
$(CC) -c $(CPPFLAGS) -o $@ $<
########################### Files #################################
WXDIR = $(srcdir)/../..
# Subordinate library possibilities
GENDIR = $(WXDIR)/src/generic
COMMDIR = $(WXDIR)/src/common
HTMLDIR = $(WXDIR)/src/html
UNIXDIR = $(WXDIR)/src/unix
PNGDIR = $(WXDIR)/src/png
JPEGDIR = $(WXDIR)/src/jpeg
ZLIBDIR = $(WXDIR)/src/zlib
GTKDIR = $(WXDIR)/src/gtk
INCDIR = $(WXDIR)/include
DOCDIR = $(WXDIR)\docs
GENERICOBJS = \
#$ ExpandList("WXGENERICOBJS");
COMMONOBJS = \
parser.o \
#$ ExpandList("WXCOMMONOBJS");
HTMLOBJS = \
#$ ExpandList("WXHTMLOBJS");
GTKOBJS = \
#$ ExpandList("WXGTKOBJS");
UNIXOBJS = \
#$ ExpandList("WXUNIXOBJS");
ZLIBOBJS = \
adler32.o \
compress.o \
crc32.o \
gzio.o \
uncompr.o \
deflate.o \
trees.o \
zutil.o \
inflate.o \
infblock.o \
inftrees.o \
infcodes.o \
infutil.o \
inffast.o
PNGOBJS = \
png.o \
pngread.o \
pngrtran.o \
pngrutil.o \
pngpread.o \
pngtrans.o \
pngwrite.o \
pngwtran.o \
pngwutil.o \
pngerror.o \
pngmem.o \
pngwio.o \
pngrio.o \
pngget.o \
pngset.o
JPEGOBJS = \
jcomapi.o \
jutils.o \
jerror.o \
jmemmgr.o \
jmemnobs.o \
jcapimin.o \
jcapistd.o \
jctrans.o \
jcparam.o \
jdatadst.o \
jcinit.o \
jcmaster.o \
jcmarker.o \
jcmainct.o \
jcprepct.o \
jccoefct.o \
jccolor.o \
jcsample.o \
jchuff.o \
jcphuff.o \
jcdctmgr.o \
jfdctfst.o \
jfdctflt.o \
jfdctint.o \
jdapimin.o \
jdapistd.o \
jdtrans.o \
jdatasrc.o \
jdmaster.o \
jdinput.o \
jdmarker.o \
jdhuff.o \
jdphuff.o \
jdmainct.o \
jdcoefct.o \
jdpostct.o \
jddctmgr.o \
jidctfst.o \
jidctflt.o \
jidctint.o \
jidctred.o \
jdsample.o \
jdcolor.o \
jquant1.o \
jquant2.o \
jdmerge.o
OBJECTS = $(GTKOBJS) $(COMMONOBJS) $(GENERICOBJS) $(HTMLOBJ) $(UNIXOBJS) \
$(JPEGOBJS) $(PNGOBJS) $(ZLIBOBJS)
all: $(OBJECTS) $(WXLIB)
$(WXLIB): $(OBJECTS)
$AR) $(AROPTIONS) $@ $(OBJECTS)
$(RANLIB) $@
$(OBJECTS): $(WXDIR)/include/wx/defs.h $(WXDIR)/include/wx/object.h $(WXDIR)/include/wx/setup.h
parser.o: parser.c lexer.c
$(CCLEX) -c $(CFLAGS) -o $@ parser.c
parser.c: $(COMMDIR)/parser.y lexer.c
$(YACC) $(COMMDIR)/parser.y
@sed -e "s;$(COMMDIR)/y.tab.c;parser.y;g" < y.tab.c | \
sed -e "s/BUFSIZ/5000/g" | \
sed -e "s/YYLMAX 200/YYLMAX 5000/g" | \
sed -e "s/yy/PROIO_yy/g" | \
sed -e "s/input/PROIO_input/g" | \
sed -e "s/unput/PROIO_unput/g" > parser.c
@$(RM) y.tab.c
lexer.c: $(COMMDIR)/lexer.l
$(LEX) $(COMMDIR)/lexer.l
@sed -e "s;$(COMMDIR)/lex.yy.c;lexer.l;g" < lex.yy.c | \
sed -e "s/yy/PROIO_yy/g" | \
sed -e "s/input/PROIO_input/g" | \
sed -e "s/unput/PROIO_unput/g" > lexer.c
@$(RM) lex.yy.c
install: $(WXLIB)
#$ ExpandList("WXINSTALLWX");
clean:
rm -f *.o
rm -f *.lo
rm -f parser.c
rm -f lexer.c
rm -f *.a
rm -f *.la
cleanall: clean

638
distrib/msw/tmake/vc.t Normal file
View File

@@ -0,0 +1,638 @@
#!#############################################################################
#! File: vc.t
#! Purpose: tmake template file from which makefile.vc is generated by running
#! tmake -t vc wxwin.pro -o makefile.vc
#! Author: Vadim Zeitlin
#! Created: 14.07.99
#! Version: $Id$
#!#############################################################################
#${
#! include the code which parses filelist.txt file and initializes
#! %wxCommon, %wxGeneric and %wxMSW hashes.
IncludeTemplate("filelist.t");
#! now transform these hashes into $project tags
foreach $file (sort keys %wxGeneric) {
my $tag = "";
if ( $wxGeneric{$file} =~ /\b(PS|G|16|U)\b/ ) {
$tag = "WXNONESSENTIALOBJS";
}
else {
$tag = "WXGENERICOBJS";
}
$file =~ s/cp?p?$/obj/;
$project{$tag} .= "..\\generic\\\$D\\" . $file . " "
}
foreach $file (sort keys %wxCommon) {
next if $wxCommon{$file} =~ /\b16\b/;
$file =~ s/cp?p?$/obj/;
$project{"WXCOMMONOBJS"} .= "..\\common\\\$D\\" . $file . " "
}
foreach $file (sort keys %wxMSW) {
next if $wxMSW{$file} =~ /\b16\b/;
#! OLE files live in a subdir
$project{"WXMSWOBJS"} .= '..\msw\\';
$project{"WXMSWOBJS"} .= 'ole\\' if $wxMSW{$file} =~ /\bO\b/;
$file =~ s/cp?p?$/obj/;
$project{"WXMSWOBJS"} .= '$D\\' . $file . " ";
}
#$}
# This file was automatically generated by tmake at #$ Now()
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE VC.T!
# File: makefile.vc
# Author: Julian Smart
# Created: 1997
# Updated:
# Copyright: (c) 1997, Julian Smart
#
# "%W% %G%"
#
# Makefile : Builds wxWindows library wx.lib for VC++ (32-bit)
# Arguments:
#
# FINAL=1 argument to nmake to build version with no debugging info.
# dll builds a library (wxdll.lib) suitable for creating DLLs
#
!include <..\makevc.env>
THISDIR=$(WXWIN)\src\msw
!if "$(WXMAKINGDLL)" == "1"
LIBTARGET=$(WXDIR)\lib\$(WXLIBNAME).dll
DUMMYOBJ=$D\dummydll.obj
!else
LIBTARGET=$(WXLIB)
DUMMYOBJ=$D\dummy.obj
!endif
# Please set these according to the settings in setup.h, so we can include
# the appropriate libraries in wx.lib
# This one overrides the others, to be consistent with the settings in setup.h
MINIMAL_WXWINDOWS_SETUP=0
PERIPH_LIBS=
PERIPH_TARGET=
PERIPH_CLEAN_TARGET=
# These are absolute paths, so that the compiler
# generates correct __FILE__ symbols for debugging.
# Otherwise you don't be able to double-click on a memory
# error to load that file.
GENDIR=$(WXDIR)\src\generic
COMMDIR=$(WXDIR)\src\common
OLEDIR=ole
MSWDIR=$(WXDIR)\src\msw
DOCDIR = $(WXDIR)\docs
HTMLDIR = $(WXDIR)\src\html
{..\generic}.cpp{..\generic\$D}.obj:
cl @<<
$(CPPFLAGS) /Fo$@ /c /Tp $<
<<
{..\common}.cpp{..\common\$D}.obj:
cl @<<
$(CPPFLAGS) /Fo$@ /c /Tp $<
<<
{..\common}.c{..\common\$D}.obj:
cl @<<
$(CPPFLAGS2) /Fo$@ /c /Tc $<
<<
{..\msw}.cpp{..\msw\$D}.obj:
cl @<<
$(CPPFLAGS) /Fo$@ /c /Tp $<
<<
{..\msw\ole}.cpp{..\msw\ole\$D}.obj:
cl @<<
$(CPPFLAGS) /Fo$@ /c /Tp $<
<<
{..\html}.cpp{..\html\$D}.obj:
cl @<<
$(CPPFLAGS) /Fo$@ /c /Tp $<
<<
GENERICOBJS= #$ ExpandList("WXGENERICOBJS");
# These are generic things that don't need to be compiled on MSW,
# but sometimes it's useful to do so for testing purposes.
NONESSENTIALOBJS= #$ ExpandList("WXNONESSENTIALOBJS");
COMMONOBJS = \
..\common\$D\y_tab.obj \
#$ ExpandList("WXCOMMONOBJS");
MSWOBJS = #$ ExpandList("WXMSWOBJS");
HTMLOBJS = \
..\html\$D\htmlcell.obj \
..\html\$D\htmlfilter.obj \
..\html\$D\htmlhelp.obj \
..\html\$D\htmlhelp_io.obj \
..\html\$D\htmlparser.obj \
..\html\$D\htmltag.obj \
..\html\$D\htmlwin.obj \
..\html\$D\htmlwinparser.obj \
..\html\$D\mod_fonts.obj \
..\html\$D\mod_hline.obj \
..\html\$D\mod_image.obj \
..\html\$D\mod_layout.obj \
..\html\$D\mod_links.obj \
..\html\$D\mod_list.obj \
..\html\$D\mod_pre.obj \
..\html\$D\mod_tables.obj \
..\html\$D\search.obj
# Add $(NONESSENTIALOBJS) if wanting generic dialogs, PostScript etc.
# Add $(HTMLOBJS) if wanting wxHTML classes
OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS)
# Normal, static library
all: dirs $(DUMMYOBJ) $(OBJECTS) $(PERIPH_TARGET) png zlib xpm jpeg $(LIBTARGET)
dirs: $(MSWDIR)\$D $(COMMDIR)\$D $(GENDIR)\$D $(OLEDIR)\$D $(HTMLDIR)\$D
test: $(MSWDIR)\$D\wave.obj
test2: ..\common\Debug\config.obj
$D:
mkdir $D
$(COMMDIR)\$D:
mkdir $(COMMDIR)\$D
$(MSWDIR)\$D:
mkdir $(MSWDIR)\$D
$(GENDIR)\$D:
mkdir $(GENDIR)\$D
$(OLEDIR)\$D:
mkdir $(OLEDIR)\$D
$(HTMLDIR)\$D:
mkdir $(HTMLDIR)\$D
# wxWindows library as DLL
dll:
nmake -f makefile.vc all FINAL=$(FINAL) DLL=1 WXMAKINGDLL=1 NEW_WXLIBNAME=$(NEW_WXLIBNAME)
cleandll:
nmake -f makefile.vc clean FINAL=$(FINAL) DLL=1 WXMAKINGDLL=1 NEW_WXLIBNAME=$(NEW_WXLIBNAME)
# wxWindows + app as DLL. Only affects main.cpp.
dllapp:
nmake -f makefile.vc all FINAL=$(FINAL) DLL=1
# wxWindows + app as DLL, for Netscape plugin - remove DllMain.
dllnp:
nmake -f makefile.vc all NOMAIN=1 FINAL=$(FINAL) DLL=1
# Use this to make dummy.obj and generate a PCH.
# You might use the dll target, then the pch target, in order to
# generate a DLL, then a PCH/dummy.obj for compiling your applications with.
#
# Explanation: Normally, when compiling a static version of wx.lib, your dummy.obj/PCH
# are associated with wx.lib. When using a DLL version of wxWindows, however,
# the DLL is compiled without a PCH, so you only need it for compiling the app.
# In fact headers are compiled differently depending on whether a DLL is being made
# or an app is calling the DLL exported functionality (WXDLLEXPORT is different
# in each case) so you couldn't use the same PCH.
pch:
nmake -f makefile.vc pch1 WXUSINGDLL=1 FINAL=$(FINAL) NEW_WXLIBNAME=$(NEW_WXLIBNAME)
pch1: dirs $(DUMMYOBJ)
echo $(DUMMYOBJ)
!if "$(WXMAKINGDLL)" != "1"
### Static library
$(WXDIR)\lib\$(WXLIBNAME).lib: $D\dummy.obj $(OBJECTS) $(PERIPH_LIBS)
-erase $(LIBTARGET)
$(implib) @<<
-out:$@
-machine:$(CPU)
$(OBJECTS) $(PERIPH_LIBS)
<<
!else
### Update the import library
$(WXDIR)\lib\$(WXLIBNAME).lib: $(DUMMYOBJ) $(OBJECTS)
$(implib) @<<
-machine:$(CPU)
-def:wx.def
$(DUMMYOBJ) $(OBJECTS)
-out:$(WXDIR)\lib\$(WXLIBNAME).lib
<<
# Update the dynamic link library
$(WXDIR)\lib\$(WXLIBNAME).dll: $(DUMMYOBJ) $(OBJECTS) $(WXDIR)\lib\$(WXLIBNAME).lib
$(link) @<<
$(LINKFLAGS)
-out:$(WXDIR)\lib\$(WXLIBNAME).dll
$(DUMMYOBJ) $(OBJECTS) $(guilibsdll) shell32.lib comctl32.lib ctl3d32.lib ole32.lib oleaut32.lib uuid.lib rpcrt4.lib odbc32.lib advapi32.lib winmm.lib $(WXDIR)\lib\winpng.lib $(WXDIR)\lib\zlib.lib $(WXDIR)\lib\xpm.lib $(WXDIR)\lib\jpeg.lib
<<
!endif
########################################################
# Windows-specific objects
$D\dummy.obj: dummy.$(SRCSUFF) $(WXDIR)\include\wx\wx.h $(WXDIR)\include\wx\msw\setup.h
cl $(CPPFLAGS) $(MAKEPRECOMP) /Fo$D\dummy.obj /c /Tp dummy.cpp
$D\dummydll.obj: dummydll.$(SRCSUFF) $(WXDIR)\include\wx\wx.h $(WXDIR)\include\wx\msw\setup.h
cl @<<
$(CPPFLAGS) $(MAKEPRECOMP) /Fo$D\dummydll.obj /c /Tp dummydll.cpp
<<
# If taking wxWindows from CVS, setup.h doesn't exist yet.
# Actually the 'if not exist setup.h' test doesn't work
# (copies the file anyway)
# we'll have to comment this rule out.
# $(WXDIR)\include\wx\msw\setup.h: $(WXDIR)\include\wx\msw\setup0.h
# cd "$(WXDIR)"\include\wx\msw
# if not exist setup.h copy setup0.h setup.h
# cd "$(WXDIR)"\src\msw
..\common\$D\y_tab.obj: ..\common\y_tab.c ..\common\lex_yy.c
cl @<<
$(CPPFLAGS2) /c ..\common\y_tab.c -DUSE_DEFINE -DYY_USE_PROTOS /Fo$@
<<
..\common\y_tab.c: ..\common\dosyacc.c
copy "..\common"\dosyacc.c "..\common"\y_tab.c
..\common\lex_yy.c: ..\common\doslex.c
copy "..\common"\doslex.c "..\common"\lex_yy.c
$(OBJECTS): $(WXDIR)/include/wx/setup.h
..\common\$D\unzip.obj: ..\common\unzip.c
cl @<<
$(CPPFLAGS2) /c $(COMMDIR)\unzip.c /Fo$@
<<
# Peripheral components
png:
cd $(WXDIR)\src\png
nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL)
cd $(WXDIR)\src\msw
clean_png:
cd $(WXDIR)\src\png
nmake -f makefile.vc clean
cd $(WXDIR)\src\msw
zlib:
cd $(WXDIR)\src\zlib
nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL)
cd $(WXDIR)\src\msw
clean_zlib:
cd $(WXDIR)\src\zlib
nmake -f makefile.vc clean
cd $(WXDIR)\src\msw
jpeg:
cd $(WXDIR)\src\jpeg
nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL) all
cd $(WXDIR)\src\msw
clean_jpeg:
cd $(WXDIR)\src\jpeg
nmake -f makefile.vc clean
cd $(WXDIR)\src\msw
xpm:
cd $(WXDIR)\src\xpm
nmake -f makefile.vc FINAL=$(FINAL) DLL=$(DLL) WXMAKINGDLL=$(WXMAKINGDLL)
cd $(WXDIR)\src\msw
clean_xpm:
cd $(WXDIR)\src\xpm
nmake -f makefile.vc clean
cd $(WXDIR)\src\msw
rcparser:
cd $(WXDIR)\utils\rcparser\src
nmake -f makefile.vc FINAL=$(FINAL)
cd $(WXDIR)\src\msw
clean: $(PERIPH_CLEAN_TARGET) clean_png clean_zlib clean_jpeg clean_xpm
-erase $(LIBTARGET)
-erase $(WXDIR)\lib\$(WXLIBNAME).pdb
-erase ..\..\lib\wx$(WXVERSION)$(LIBEXT).dll
-erase ..\..\lib\wx$(WXVERSION)$(LIBEXT).lib
-erase ..\..\lib\wx$(WXVERSION)$(LIBEXT).exp
-erase ..\..\lib\wx$(WXVERSION)$(LIBEXT).pdb
-erase ..\..\lib\wx$(WXVERSION)$(LIBEXT).ilk
-erase *.pdb
-erase *.sbr
-erase $(WXLIBNAME).pch
-erase $(GENDIR)\$D\*.obj
-erase $(GENDIR)\$D\*.pdb
-erase $(GENDIR)\$D\*.sbr
-erase $(COMMDIR)\$D\*.obj
-erase $(COMMDIR)\$D\*.pdb
-erase $(COMMDIR)\$D\*.sbr
-erase $(COMMDIR)\\y_tab.c
-erase $(COMMDIR)\lex_yy.c
-erase $(MSWDIR)\$D\*.obj
-erase $(MSWDIR)\$D\*.sbr
-erase $(MSWDIR)\$D\*.pdb
-erase $(OLEDIR)\$D\*.obj
-erase $(OLEDIR)\$D\*.sbr
-erase $(OLEDIR)\$D\*.pdb
-rmdir $(D)
-rmdir ole\$(D)
-rmdir ..\generic\$(D)
-rmdir ..\common\$(D)
cleanall: clean
# Making documents
docs: allhlp allhtml allpdfrtf
alldocs: docs
hlp: wxhlp portinghlp
wxhlp: $(DOCDIR)/winhelp/wx.hlp
prophlp: $(DOCDIR)/winhelp/prop.hlp
refhlp: $(DOCDIR)/winhelp/techref.hlp
rtf: $(DOCDIR)/winhelp/wx.rtf
proprtf: $(DOCDIR)/winhelp/prop.rtf
pdfrtf: $(DOCDIR)/pdf/wx.rtf
proppdfrtf: $(DOCDIR)/pdf/prop.rtf
refpdfrtf: $(DOCDIR)/pdf/techref.rtf
html: wxhtml portinghtml
wxhtml: $(DOCDIR)\html\wx\wx.htm
htmlhelp: $(DOCDIR)\html\wx\wx.chm
prophtml: $(DOCDIR)\html\proplist\prop.htm
ps: wxps referencps
wxps: $(WXDIR)\docs\ps\wx.ps
propps: $(WXDIR)\docs\ps\prop.ps
referencps: $(WXDIR)\docs\ps\referenc.ps
portinghtml: $(DOCDIR)\html\porting\port.htm
portingrtf: $(DOCDIR)/winhelp/porting.rtf
portinghlp: $(DOCDIR)/winhelp/porting.hlp
portingpdfrtf: $(DOCDIR)/pdf/porting.rtf
portingps: $(WXDIR)\docs\ps\porting.ps
allhlp: wxhlp portinghlp prophlp
cd $(WXDIR)\utils\dialoged\src
nmake -f makefile.vc hlp
cd $(THISDIR)
# cd $(WXDIR)\utils\wxhelp\src
# nmake -f makefile.vc hlp
# cd $(WXDIR)\utils\tex2rtf\src
# nmake -f makefile.vc hlp
# cd $(WXDIR)\utils\wxgraph\src
# nmake -f makefile.vc hlp
# cd $(WXDIR)\utils\wxchart\src
# nmake -f makefile.vc hlp
# cd $(WXDIR)\utils\wxtree\src
# nmake -f makefile.vc hlp
# cd $(WXDIR)\utils\wxbuild\src
# nmake -f makefile.vc hlp
# cd $(WXDIR)\utils\wxgrid\src
# nmake -f makefile.vc hlp
allhtml: wxhtml portinghtml prophtml
cd $(WXDIR)\utils\dialoged\src
nmake -f makefile.vc html
cd $(THISDIR)
# nmake -f makefile.vc html
# cd $(WXDIR)\utils\dialoged\src
# nmake -f makefile.vc html
# cd $(WXDIR)\utils\hytext\src
# nmake -f makefile.vc html
# cd $(WXDIR)\utils\wxhelp\src
# nmake -f makefile.vc html
# cd $(WXDIR)\utils\tex2rtf\src
# nmake -f makefile.vc html
# cd $(WXDIR)\utils\wxgraph\src
# nmake -f makefile.vc html
# cd $(WXDIR)\utils\wxchart\src
# nmake -f makefile.vc html
# cd $(WXDIR)\utils\wxtree\src
# nmake -f makefile.vc html
allps: wxps referencps portingps propps
cd $(WXDIR)\utils\dialoged\src
nmake -f makefile.vc ps
cd $(THISDIR)
allpdfrtf: pdfrtf portingpdfrtf proppdfrtf
cd $(WXDIR)\utils\dialoged\src
nmake -f makefile.vc pdfrtf
cd $(THISDIR)
# cd $(WXDIR)\utils\wxhelp\src
# nmake -f makefile.vc ps
# cd $(WXDIR)\utils\tex2rtf\src
# nmake -f makefile.vc ps
# cd $(WXDIR)\utils\wxgraph\src
# nmake -f makefile.vc ps
# cd $(WXDIR)\utils\wxchart\src
# nmake -f makefile.vc ps
# cd $(WXDIR)\utils\wxtree\src
# nmake -f makefile.vc ps
# cd $(THISDIR)
$(DOCDIR)/winhelp/wx.hlp: $(DOCDIR)/latex/wx/wx.rtf $(DOCDIR)/latex/wx/wx.hpj
cd $(DOCDIR)/latex/wx
-erase wx.ph
hc wx
move wx.hlp $(DOCDIR)\winhelp\wx.hlp
move wx.cnt $(DOCDIR)\winhelp\wx.cnt
cd $(THISDIR)
$(DOCDIR)/winhelp/porting.hlp: $(DOCDIR)/latex/porting/porting.rtf $(DOCDIR)/latex/porting/porting.hpj
cd $(DOCDIR)/latex/porting
-erase porting.ph
hc porting
move porting.hlp $(DOCDIR)\winhelp\porting.hlp
move porting.cnt $(DOCDIR)\winhelp\porting.cnt
cd $(THISDIR)
$(DOCDIR)/winhelp/prop.hlp: $(DOCDIR)/latex/proplist/prop.rtf $(DOCDIR)/latex/proplist/prop.hpj
cd $(DOCDIR)/latex/proplist
-erase prop.ph
hc prop
move prop.hlp $(DOCDIR)\winhelp\prop.hlp
move prop.cnt $(DOCDIR)\winhelp\prop.cnt
cd $(THISDIR)
$(DOCDIR)/winhelp/techref.hlp: $(DOCDIR)/latex/techref/techref.rtf $(DOCDIR)/latex/techref/techref.hpj
cd $(DOCDIR)/latex/techref
-erase techref.ph
hc techref
move techref.hlp $(DOCDIR)\winhelp\techref.hlp
move techref.cnt $(DOCDIR)\winhelp\techref.cnt
cd $(THISDIR)
$(DOCDIR)/latex/wx/wx.rtf: $(DOCDIR)/latex/wx/classes.tex $(DOCDIR)/latex/wx/body.tex $(DOCDIR)/latex/wx/topics.tex $(DOCDIR)/latex/wx/manual.tex
cd $(DOCDIR)\latex\wx
-start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/wx/manual.tex $(DOCDIR)/latex/wx/wx.rtf -twice -winhelp
cd $(THISDIR)
$(DOCDIR)/latex/porting/porting.rtf: $(DOCDIR)/latex/porting/porting.tex
cd $(DOCDIR)\latex\porting
-start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/porting/porting.tex $(DOCDIR)/latex/porting/porting.rtf -twice -winhelp
cd $(THISDIR)
$(DOCDIR)/latex/proplist/prop.rtf: $(DOCDIR)/latex/proplist/prop.tex $(DOCDIR)/latex/proplist/body.tex $(DOCDIR)/latex/proplist/classes.tex $(DOCDIR)/latex/proplist/changes.tex
cd $(DOCDIR)\latex\proplist
-start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/proplist/prop.tex $(DOCDIR)/latex/proplist/prop.rtf -twice -winhelp
cd $(THISDIR)
$(DOCDIR)/latex/techref/techref.rtf: $(DOCDIR)/latex/techref/techref.tex
cd $(DOCDIR)\latex\techref
-start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/techref/techref.tex $(DOCDIR)/latex/techref/techref.rtf -twice -winhelp
cd $(THISDIR)
$(DOCDIR)/pdf/wx.rtf: $(DOCDIR)/latex/wx/classes.tex $(DOCDIR)/latex/wx/body.tex $(DOCDIR)/latex/wx/topics.tex $(DOCDIR)/latex/wx/manual.tex
cd $(DOCDIR)\latex\wx
-copy *.bmp *.wmf $(DOCDIR)\pdf
-start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/wx/manual.tex $(DOCDIR)/pdf/wx.rtf -twice -rtf
cd $(THISDIR)
$(DOCDIR)/pdf/porting.rtf: $(DOCDIR)/latex/porting/porting.tex
cd $(DOCDIR)\latex\porting
-copy *.bmp *.wmf $(DOCDIR)\pdf
-start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/porting/porting.tex $(DOCDIR)/pdf/porting.rtf -twice -rtf
cd $(THISDIR)
$(DOCDIR)/pdf/prop.rtf: $(DOCDIR)/latex/proplist/prop.tex $(DOCDIR)/latex/proplist/body.tex $(DOCDIR)/latex/proplist/classes.tex $(DOCDIR)/latex/proplist/changes.tex
cd $(DOCDIR)\latex\proplist
-copy *.bmp *.wmf $(DOCDIR)\pdf
-start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/proplist/prop.tex $(DOCDIR)/pdf/prop.rtf -twice -rtf
cd $(THISDIR)
$(DOCDIR)/pdf/techref.rtf: $(DOCDIR)/latex/techref/techref.tex
cd $(DOCDIR)\latex\techref
-copy *.bmp *.wmf $(DOCDIR)\pdf
-start $(WAITFLAG) tex2rtf $(DOCDIR)/latex/techref/techref.tex $(DOCDIR)/pdf/techref.rtf -twice -rtf
cd $(THISDIR)
$(DOCDIR)\html\wx\wx.htm: $(DOCDIR)\latex\wx\classes.tex $(DOCDIR)\latex\wx\body.tex $(DOCDIR)/latex/wx/topics.tex $(DOCDIR)\latex\wx\manual.tex
cd $(DOCDIR)\latex\wx
-mkdir $(DOCDIR)\html\wx
-start $(WAITFLAG) tex2rtf $(DOCDIR)\latex\wx\manual.tex $(DOCDIR)\html\wx\wx.htm -twice -html
-erase $(DOCDIR)\html\wx\*.con
-erase $(DOCDIR)\html\wx\*.ref
-erase $(DOCDIR)\latex\wx\*.con
-erase $(DOCDIR)\latex\wx\*.ref
cd $(THISDIR)
$(DOCDIR)\html\wx\wx.chm : $(DOCDIR)\html\wx\wx.htm $(DOCDIR)\html\wx\wx.hhp
cd $(DOCDIR)\html\wx
-hhc wx.hhp
cd $(THISDIR)
$(DOCDIR)\html\porting\port.htm: $(DOCDIR)\latex\porting\porting.tex
cd $(DOCDIR)\latex\porting
-mkdir $(DOCDIR)\html\porting
-start $(WAITFLAG) tex2rtf $(DOCDIR)\latex\porting\porting.tex $(DOCDIR)\html\porting\port.htm -twice -html
-erase $(DOCDIR)\html\porting\*.con
-erase $(DOCDIR)\html\porting\*.ref
-erase $(DOCDIR)\latex\porting\*.con
-erase $(DOCDIR)\latex\porting\*.ref
cd $(THISDIR)
$(DOCDIR)\html\proplist\prop.htm: $(DOCDIR)\latex\proplist\prop.tex $(DOCDIR)\latex\proplist\body.tex $(DOCDIR)\latex\proplist\classes.tex $(DOCDIR)\latex\proplist\changes.tex
cd $(DOCDIR)\latex\proplist
-mkdir $(DOCDIR)\html\proplist
-start $(WAITFLAG) tex2rtf $(DOCDIR)\latex\proplist\prop.tex $(DOCDIR)\html\proplist\prop.htm -twice -html
-erase $(DOCDIR)\html\proplist\*.con
-erase $(DOCDIR)\html\proplist\*.ref
-erase $(DOCDIR)\latex\proplist\*.con
-erase $(DOCDIR)\latex\proplist\*.ref
cd $(THISDIR)
$(WXDIR)\docs\latex\wx\manual.dvi: $(DOCDIR)/latex/wx/body.tex $(DOCDIR)/latex/wx/manual.tex
cd $(WXDIR)\docs\latex\wx
-latex manual
-latex manual
-makeindx manual
-bibtex manual
-latex manual
-latex manual
cd $(THISDIR)
$(WXDIR)\docs\latex\porting\porting.dvi: $(DOCDIR)/latex/porting/porting.tex
cd $(WXDIR)\docs\latex\porting
-latex porting
-latex porting
-makeindx porting
-bibtex porting
-latex porting
-latex porting
cd $(THISDIR)
$(WXDIR)\docs\ps\wx.ps: $(WXDIR)\docs\latex\wx\manual.dvi
cd $(WXDIR)\docs\latex\wx
-dvips32 -o wx.ps manual
move wx.ps $(WXDIR)\docs\ps\wx.ps
cd $(THISDIR)
$(WXDIR)\docs\ps\porting.ps: $(WXDIR)\docs\latex\porting\porting.dvi
cd $(WXDIR)\docs\latex\porting
-dvips32 -o porting.ps porting
move porting.ps $(WXDIR)\docs\ps\porting.ps
cd $(THISDIR)
$(WXDIR)\docs\latex\wx\referenc.dvi: $(DOCDIR)/latex/wx/classes.tex $(DOCDIR)/latex/wx/topics.tex $(DOCDIR)/latex/wx/referenc.tex
cd $(WXDIR)\docs\latex\wx
-latex referenc
-latex referenc
-makeindx referenc
-bibtex referenc
-latex referenc
-latex referenc
cd $(THISDIR)
$(WXDIR)\docs\ps\referenc.ps: $(WXDIR)\docs\latex\wx\referenc.dvi
cd $(WXDIR)\docs\latex\wx
-dvips32 -o referenc.ps referenc
move referenc.ps $(WXDIR)\docs\ps\referenc.ps
cd $(THISDIR)
# In order to force document reprocessing
touchmanual:
-touch $(WXDIR)\docs\latex\wx\manual.tex
updatedocs: touchmanual alldocs
# Start Word, running the GeneratePDF macro. MakeManual.dot should be in the
# Office StartUp folder, and PDFMaker should be installed.
updatepdf: # touchmanual pdfrtf
start $(WAITFLAG) "winword d:\wx2\wxWindows\docs\latex\pdf\wx.rtf /mGeneratePDF"
MFTYPE=vc
makefile.$(MFTYPE) : $(WXWIN)\distrib\msw\tmake\filelist.txt $(WXWIN)\distrib\msw\tmake\$(MFTYPE).t
cd $(WXWIN)\distrib\msw\tmake
tmake -t $(MFTYPE) wxwin.pro -o makefile.$(MFTYPE)
copy makefile.$(MFTYPE) $(WXWIN)\src\msw

146
distrib/msw/tmake/vc6.t Normal file
View File

@@ -0,0 +1,146 @@
#!#############################################################################
#! File: vc6.t
#! Purpose: tmake template file from which wxWindows.dsp is generated by running
#! tmake -t vc6 wxwin.pro -o wxWindows.dsp
#! Author: Vadim Zeitlin
#! Created: 14.07.99
#! Version: $Id$
#!#############################################################################
#${
#! include the code which parses filelist.txt file and initializes
#! %wxCommon, %wxGeneric and %wxMSW hashes.
IncludeTemplate("filelist.t");
#! now transform these hashes into $project tags
foreach $file (sort keys %wxGeneric) {
next if $wxGeneric{$file} =~ /\b(PS|G|16|U)\b/;
$project{"WXGENERICSRCS"} .= $file . " "
}
foreach $file (sort keys %wxCommon) {
next if $wxCommon{$file} =~ /\b16\b/;
my $tag = $file =~ /\.c$/ ? "WXCSRCS" : "WXCOMMONSRCS";
$project{$tag} .= $file . " "
}
foreach $file (sort keys %wxMSW) {
next if $wxMSW{$file} =~ /\b16\b/;
my $tag = $wxMSW{$file} =~ /\bO\b/ ? "WXOLESRCS" : "WXMSWSRCS";
$project{$tag} .= $file . " "
}
#$}
# Microsoft Developer Studio Project File - Name="wxWindows" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Static Library" 0x0104
CFG=wxWindows - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "wxWindows.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "wxWindows.mak" CFG="wxWindows - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "wxWindows - Win32 Release" (based on "Win32 (x86) Static Library")
!MESSAGE "wxWindows - Win32 Debug" (based on "Win32 (x86) Static Library")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "wxWindows - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c
# ADD CPP /nologo /W3 /Zi /O2 /I "$(wx)\include" /I "$(wx)\src\zlib" /D "NDEBUG" /D WIN95=1 /D "__WIN95__" /D "WIN32" /D "_WIN32" /D WINVER=0x400 /D "__WINDOWS__" /D "__WXMSW__" /D "__WIN32__" /Yu"wx/wxprec.h" /FD /c
# ADD BASE RSC /l 0x409
# ADD RSC /l 0x409
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LIB32=link.exe -lib
# ADD BASE LIB32 /nologo
# ADD LIB32 /nologo
!ELSEIF "$(CFG)" == "wxWindows - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /Z7 /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c
# ADD CPP /nologo /W4 /Zi /Od /I "$(wx)\include" /I "$(wx)\src\zlib" /D "_DEBUG" /D DEBUG=1 /D WXDEBUG=1 /D "__WXDEBUG__" /D "__WIN95__" /D "WIN32" /D "_WIN32" /D WINVER=0x400 /D "__WINDOWS__" /D "__WIN32__" /D "__WXMSW__" /Fr /Yu"wx/wxprec.h" /FD /c
# ADD BASE RSC /l 0x409
# ADD RSC /l 0x409
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo /o"lib/wxWindows.bsc"
LIB32=link.exe -lib
# ADD BASE LIB32 /nologo
# ADD LIB32 /nologo
!ENDIF
# Begin Target
# Name "wxWindows - Win32 Release"
# Name "wxWindows - Win32 Debug"
# PROP Default_Filter ""
# Begin Source File
SOURCE=.\src\msw\dummy.cpp
# ADD CPP /Yc"wx/wxprec.h"
# End Source File
#$ ExpandGlue("WXMSWSRCS", "# Begin Source File\n\nSOURCE=.\\src\\msw\\", "\n# End Source File\n# Begin Source File\n\nSOURCE=.\\src\\msw\\", "\n# End Source File\n");
#$ ExpandGlue("WXOLESRCS", "# Begin Source File\n\nSOURCE=.\\src\\msw\\ole\\", "\n# End Source File\n# Begin Source File\n\nSOURCE=.\\src\\msw\\ole\\", "\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("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");
# Begin Source File
SOURCE=.\src\common\y_tab.c
!IF "$(CFG)" == "wxWindows - Win32 Release"
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "wxWindows - Win32 Debug"
# ADD CPP /W1
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# End Target
# End Project

326
distrib/msw/tmake/wat.t Normal file
View File

@@ -0,0 +1,326 @@
#!#############################################################################
#! File: wat.t
#! Purpose: tmake template file from which makefile.wat is generated by running
#! tmake -t wat wxwin.pro -o makefile.wat
#! Author: Vadim Zeitlin
#! Created: 14.07.99
#! Version: $Id$
#!#############################################################################
#${
#! include the code which parses filelist.txt file and initializes
#! %wxCommon, %wxGeneric and %wxMSW hashes.
IncludeTemplate("filelist.t");
#! now transform these hashes into $project tags
foreach $file (sort keys %wxGeneric) {
my $tag = "";
if ( $wxGeneric{$file} =~ /\b(PS|G|16|U)\b/ ) {
$tag = "WXNONESSENTIALOBJS";
}
else {
$tag = "WXGENERICOBJS";
}
$file =~ s/cp?p?$/obj/;
$project{$tag} .= $file . " "
}
foreach $file (sort keys %wxCommon) {
#! doesn't compile, apparently
next if $file =~ /^imagjpeg\./;
$file =~ s/cp?p?$/obj/;
$project{"WXCOMMONOBJS"} .= $file . " "
}
foreach $file (sort keys %wxMSW) {
#! these files don't compile
next if $file =~ /^pnghand\./;
next if $wxGeneric{$file} =~ /\b16\b/;
$file =~ s/cp?p?$/obj/;
$project{"WXMSWOBJS"} .= $file . " "
}
#$}
# This file was automatically generated by tmake at #$ Now()
# DO NOT CHANGE THIS FILE, YOUR CHANGES WILL BE LOST! CHANGE WAT.T!
#! an attempt to embed '#' directly in the string somehow didn't work...
#$ $text = chr(35) . '!/binb/wmake.exe';
#
# File: makefile.wat
# Author: Julian Smart
# Created: 1998
#
# Makefile : Builds wxWindows library for Watcom C++, WIN32
WXDIR = ..\..
!include $(WXDIR)\src\makewat.env
WXLIB = $(WXDIR)\lib
LIBTARGET = $(WXLIB)\wx.lib
DUMMY=dummydll
# ODBCLIB = ..\..\contrib\odbc\odbc32.lib
EXTRATARGETS = xpm png zlib
EXTRATARGETSCLEAN = clean_xpm clean_png clean_zlib
GENDIR=$(WXDIR)\src\generic
COMMDIR=$(WXDIR)\src\common
XPMDIR=$(WXDIR)\src\xpm
OLEDIR=ole
MSWDIR=$(WXDIR)\src\msw
DOCDIR = $(WXDIR)\docs
GENERICOBJS= #$ ExpandGlue("WXGENERICOBJS", "", " &\n\t")
# These are generic things that don't need to be compiled on MSW,
# but sometimes it's useful to do so for testing purposes.
NONESSENTIALOBJS= #$ ExpandGlue("WXNONESSENTIALOBJS", "", " &\n\t")
COMMONOBJS = &
y_tab.obj &
#$ ExpandGlue("WXCOMMONOBJS", "", " &\n\t")
MSWOBJS = #$ ExpandGlue("WXMSWOBJS", "", " &\n\t")
# Add $(NONESSENTIALOBJS) if wanting generic dialogs, PostScript etc.
OBJECTS = $(COMMONOBJS) $(GENERICOBJS) $(MSWOBJS)
all: $(OBJECTS) $(LIBTARGET) $(EXTRATARGETS)
$(LIBTARGET) : $(OBJECTS)
%create tmp.lbc
@for %i in ( $(OBJECTS) ) do @%append tmp.lbc +%i
wlib /b /c /n /p=512 $^@ @tmp.lbc
#test : $(OBJECTS)
# %create tmp.lbc
# @for %i in ( $(OBJECTS) ) do @%append tmp.lbc +%i
# wlib /b /c /n /p=512 $^@ @tmp.lbc
clean: .SYMBOLIC $(EXTRATARGETSCLEAN)
-erase *.obj
-erase $(LIBTARGET)
-erase *.pch
-erase *.err
-erase *.lbc
cleanall: clean
#${
$_ = $project{"WXMSWOBJS"};
my @objs = split;
foreach (@objs) {
$text .= $_ . ': $(';
s/\.obj$//;
if ( $wxMSW{$_} =~ /\bO\b/ ) {
$text .= 'OLEDIR)\\';
} else {
$text .= 'MSWDIR)\\';
}
$text .= $_ . ".cpp\n" .
' *$(CCC) $(CPPFLAGS) $(IFLAGS) $<' . "\n\n";
}
#$}
########################################################
# Common objects (always compiled)
#${
$_ = $project{"WXCOMMONOBJS"};
my @objs = split;
foreach (@objs) {
$text .= $_;
s/\.obj$//;
$text .= ': $(COMMDIR)\\';
$text .= $_ . ".cpp\n" .
' *$(CCC) $(CPPFLAGS) $(IFLAGS) $<' . "\n\n";
}
#$}
y_tab.obj: $(COMMDIR)\y_tab.c $(COMMDIR)\lex_yy.c
*$(CC) $(CPPFLAGS) $(IFLAGS) -DUSE_DEFINE $(COMMDIR)\y_tab.c
# *$(CC) $(CPPFLAGS) $(IFLAGS) -DUSE_DEFINE -DYY_USE_PROTOS $(COMMDIR)\y_tab.c
$(COMMDIR)\y_tab.c: $(COMMDIR)\dosyacc.c
copy $(COMMDIR)\dosyacc.c $(COMMDIR)\y_tab.c
$(COMMDIR)\lex_yy.c: $(COMMDIR)\doslex.c
copy $(COMMDIR)\doslex.c $(COMMDIR)\lex_yy.c
########################################################
# Generic objects (not always compiled, depending on
# whether platforms have native implementations)
#${
$_ = $project{"WXGENERICOBJS"};
my @objs = split;
foreach (@objs) {
$text .= $_;
s/\.obj$//;
$text .= ': $(GENDIR)\\';
$text .= $_ . ".cpp\n" .
' *$(CCC) $(CPPFLAGS) $(IFLAGS) $<' . "\n\n";
}
#$}
crbuffri.obj: $(XPMDIR)\crbuffri.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
crbuffrp.obj: $(XPMDIR)\crbuffrp.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
crdatfri.obj: $(XPMDIR)\crdatfri.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
crdatfrp.obj: $(XPMDIR)\crdatfrp.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
create.obj: $(XPMDIR)\create.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
crifrbuf.obj: $(XPMDIR)\crifrbuf.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
crifrdat.obj: $(XPMDIR)\crifrdat.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
crpfrbuf.obj: $(XPMDIR)\crpfrbuf.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
crpfrdat.obj: $(XPMDIR)\crpfrdat.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
# TODO: what to do about this clash of filename????
#data.obj: $(XPMDIR)\data.c
# *$(CC) $(CPPFLAGS) $(IFLAGS) $<
hashtab.obj: $(XPMDIR)\hashtab.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
misc.obj: $(XPMDIR)\misc.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
parse.obj: $(XPMDIR)\parse.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
rdftodat.obj: $(XPMDIR)\rdftodat.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
rdftoi.obj: $(XPMDIR)\rdftoi.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
rdftop.obj: $(XPMDIR)\rdftop.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
rgb.obj: $(XPMDIR)\rgb.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
scan.obj: $(XPMDIR)\scan.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
simx.obj: $(XPMDIR)\simx.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
wrffrdat.obj: $(XPMDIR)\wrffrdat.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
wrffri.obj: $(XPMDIR)\wrffri.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
wrffrp.obj: $(XPMDIR)\wrffrp.c
*$(CC) $(CPPFLAGS) $(IFLAGS) $<
OBJ1 = adler32$(O) compress$(O) crc32$(O) gzio$(O) uncompr$(O) deflate$(O) \
trees$(O)
OBJ2 = zutil$(O) inflate$(O) infblock$(O) inftrees$(O) infcodes$(O) \
infutil$(O) inffast$(O)
adler32.obj: adler32.c zutil.h zlib.h zconf.h
$(CC) -c $(CFLAGS) $*.c
compress.obj: compress.c zlib.h zconf.h
$(CC) -c $(CFLAGS) $*.c
crc32.obj: crc32.c zutil.h zlib.h zconf.h
$(CC) -c $(CFLAGS) $*.c
deflate.obj: deflate.c deflate.h zutil.h zlib.h zconf.h
$(CC) -c $(CFLAGS) $*.c
gzio.obj: gzio.c zutil.h zlib.h zconf.h
$(CC) -c $(CFLAGS) $*.c
infblock.obj: infblock.c zutil.h zlib.h zconf.h infblock.h inftrees.h\
infcodes.h infutil.h
$(CC) -c $(CFLAGS) $*.c
infcodes.obj: infcodes.c zutil.h zlib.h zconf.h inftrees.h infutil.h\
infcodes.h inffast.h
$(CC) -c $(CFLAGS) $*.c
inflate.obj: inflate.c zutil.h zlib.h zconf.h infblock.h
$(CC) -c $(CFLAGS) $*.c
inftrees.obj: inftrees.c zutil.h zlib.h zconf.h inftrees.h
$(CC) -c $(CFLAGS) $*.c
infutil.obj: infutil.c zutil.h zlib.h zconf.h inftrees.h infutil.h
$(CC) -c $(CFLAGS) $*.c
inffast.obj: inffast.c zutil.h zlib.h zconf.h inftrees.h infutil.h inffast.h
$(CC) -c $(CFLAGS) $*.c
trees.obj: trees.c deflate.h zutil.h zlib.h zconf.h
$(CC) -c $(CFLAGS) $*.c
uncompr.obj: uncompr.c zlib.h zconf.h
$(CC) -c $(CFLAGS) $*.c
zutil.obj: zutil.c zutil.h zlib.h zconf.h
$(CC) -c $(CFLAGS) $*.c
xpm: .SYMBOLIC
cd $(WXDIR)\src\xpm
wmake -f makefile.wat all
cd $(WXDIR)\src\msw
clean_xpm: .SYMBOLIC
cd $(WXDIR)\src\xpm
wmake -f makefile.wat clean
cd $(WXDIR)\src\msw
png: .SYMBOLIC
cd $(WXDIR)\src\png
wmake -f makefile.wat all
cd $(WXDIR)\src\msw
clean_png: .SYMBOLIC
cd $(WXDIR)\src\png
wmake -f makefile.wat clean
cd $(WXDIR)\src\msw
zlib: .SYMBOLIC
cd $(WXDIR)\src\zlib
wmake -f makefile.wat all
cd $(WXDIR)\src\msw
clean_zlib: .SYMBOLIC
cd $(WXDIR)\src\zlib
wmake -f makefile.wat clean
cd $(WXDIR)\src\msw
MFTYPE=wat
makefile.$(MFTYPE) : $(WXWIN)\distrib\msw\tmake\filelist.txt $(WXWIN)\distrib\msw\tmake\$(MFTYPE).t
cd $(WXWIN)\distrib\msw\tmake
tmake -t $(MFTYPE) wxwin.pro -o makefile.$(MFTYPE)
copy makefile.$(MFTYPE) $(WXWIN)\src\msw

View File

@@ -0,0 +1,10 @@
###############################################################################
# File: wxwin.pro
# Purpose: tmake project file from which makefiles for wxWindows are generated
# tmake -t vc wxwin.pro
# Author: Vadim Zeitlin
# Created: 14.07.99
# Version: $Id$
###############################################################################
# this file is empty

View File

@@ -68,6 +68,13 @@ cp Makefile.am ~/wxwine_dist/wxWINE/include/wx/generic
cp Makefile.in ~/wxwine_dist/wxWINE/include/wx/generic
cd ..
mkdir ~/wxgtk_dist/wxGTK/include/wx/html
cd html
cp *.h ~/wxgtk_dist/wxGTK/include/wx/html
cp Makefile.am ~/wxgtk_dist/wxGTK/include/wx/html
cp Makefile.in ~/wxgtk_dist/wxGTK/include/wx/html
cd ..
mkdir ~/wxwine_dist/wxWINE/include/wx/unix
cd unix
cp *.h ~/wxwine_dist/wxWINE/include/wx/unix
@@ -149,6 +156,15 @@ cp extended.c ~/wxwine_dist/wxWINE/src/common
cp *.cpp ~/wxwine_dist/wxWINE/src/common
cd ..
cd html
mkdir ~/wxgtk_dist/wxGTK/src/html
cp *.cpp ~/wxgtk_dist/wxGTK/src/html
cp *.h ~/wxgtk_dist/wxGTK/src/html
cd bitmaps
mkdir ~/wxgtk_dist/wxGTK/src/html/bitmaps
cp *.xpm ~/wxgtk_dist/wxGTK/src/html/bitmaps
cd ../..
cd unix
mkdir ~/wxwine_dist/wxWINE/src/unix
cp *.cpp ~/wxwine_dist/wxWINE/src/unix

View File

@@ -1,4 +1,49 @@
6th August '99: Eight wxGTK 2.1 snapshot released
The new makefile system is not able to produce shared libraries
on Unix with the exception of Linux - libtool is really great.
Therefore, the build system defaults to static libraries on
anything but Linux for now.
Work in wxPen, wxBrush and wxDC to match wxMSW more exactly and
to implement missing feature etc.
Reimplemented radio buttons. The first of a group of such buttons
is now marked by having the wxRB_GROUP style.
Complete redesign of all stream classes, including tests for them
in the samples.
Controls now send the same messages (or more importantly none if
changed programmatically) as per wxMSW.
New implementation of wxSocket using an intermediate library called
GSocket. This willl hopefully change in the future.
Reworked in-place editing of wxListCtrl and wxTreeCtrl.
Fixed bug reporting two refreshes when scrolling.
Corrected bug in wxComboBox client data code.
Corrected reported but unverified bug in BMP loading code.
Added a few more methods to wxStaticBitmap.
Integration of wxHTML code in the main library, including wxZIPStream,
wxFilesystem, wxHTMLHelpController and others.
Added a wrapper for ffile() etc functions.
Updates to wxDynamicLibrary.
New documentation.
New version of wxPython, of course.
Fixed in unenclosed number of other bugs...
25th June '99: Seventh wxGTK 2.1 snapshot released
Many fixes to th new makefile system. The last version gave

View File

@@ -6,22 +6,47 @@
* The most simple case
-----------------------
If you compile wxWindows on Unix for the first time and don't like to read
If you compile wxWindows on Linux for the first time and don't like to read
install instructions just do (in the base dir):
./configure
make
su <type root password>
make install
ldconfig
exit
> ./configure --with-gtk
> make
> su <type root password>
> make install
> ldconfig
> exit
On all variants of Unix except Linux (and maybe except *BSD), shared libraries
are not supportet out of the box due to the utter stupidity of libtool, so you'll
have to do this to get shared library support:
> ./configure --with-gtk --disable-static --enable-shared
Then you'll have to edit the wrongly created libtool script. There are two
important entries with respect to shared library creation, which are
archive_cmds="\$LD -shared ....
archive_expsym_cmds="\$LD -shared ....
which should be something like
archive_cmds="\$CC -shared ....
archive_expsym_cmds="\$CC -shared ....
Afterwards you can continue with
> make
> su <type root password>
> make install
> ldconfig
> exit
If you want to remove wxWindows on Unix you can do this:
su <type root password>
make uninstall
ldconfig
exit
> su <type root password>
> make uninstall
> ldconfig
> exit
* The expert case
-----------------

View File

@@ -1,5 +1,5 @@
Welcome to wxWindows/Gtk 2.1 snapshot 7,
Welcome to wxWindows/Gtk 2.1 snapshot 8,
you have downloaded version 2.1 of the GTK+ 1.2 port of
the wxWindows GUI library. This is a developers release
@@ -26,7 +26,8 @@ at Julian Smart's homepage at:
Information on how to install can be found in the file
INSTALL.txt, but if you cannot wait, this should work on
many systems (when using GTK 1.0 read the INSTALL.txt):
many systems (when using GTK 1.0 or when not using Linux
read the INSTALL.txt):
./configure
make

View File

@@ -185,6 +185,7 @@ downloaded from the <a href="http://www.wxwindows.org">wxWindows Web site</a>.<P
<ul>
<li><a href="../../samples/bombs">bombs</a>: minesweeper-like game.
<li><a href="../../samples/caret">caret</a>: a sample to test the wxCaret class.
<li><a href="../../samples/checklst">checklst</a>: demonstrates wxCheckListBox on
supported platforms (currently Windows and GTK only).
<li><a href="../../samples/config">config</a>: demonstrates use of wxConfig, which
@@ -210,6 +211,8 @@ fully-fledged application!
<li><a href="../../samples/fractal">fractal</a>: fractal mountains by Andrew Davison.
<li><a href="../../samples/grid">grid</a>: demonstrates the wxGrid class.
<li><a href="../../samples/help">help</a>: shows how to use wxHelpController.
<li><a href="../../samples/html">html</a>: a number of demos for the wxHTML class library, used inside
applications and also as a help facility.
<li><a href="../../samples/image">image</a>: shows off the cross-platform wxImage class.
<li><a href="../../samples/internat">internat</a>: use of wxWindows' internationalization support.
<li><a href="../../samples/joytest">joytest</a>: tests the wxJoystick class (currently Windows and GTK only).
@@ -237,6 +240,8 @@ Excel to be present).
<li><a href="../../samples/proplist">proplist</a>: demonstrates the property list classes (a VB-style property editor).
<li><a href="../../samples/regtest">regtest</a>: tests the low-level Windows registry functions (Windows only).
<li><a href="../../samples/resource">resource</a>: shows how to use wxWindows resources (.wxr files).
<li><a href="../../samples/richedit">richedit</a>: a work-in-progress rich text editor with plain text and HTML export
facilities.
<li><a href="../../samples/sashtest">sashtest</a>: demonstrates use of the wxSashWindow class to allow
the user to resize subwindows.
<li><a href="../../samples/splitter">splitter</a>: demonstrates the wxSplitterWindow class.
@@ -246,6 +251,8 @@ implementing wxNotebook on platforms with no native support.
<li><a href="../../samples/taskbar">taskbar</a>: demonstrates the wxTaskBarIcon class, for
adding icons to the system tray. Windows only, but may eventually be implemented for other desktop
environments that use this metaphor.
<li><a href="../../samples/text">text</a>: demonstrates single and multiline text controls,
and clipboard operations.
<li><a href="../../samples/thread">thread</a>: tests the family of classes for doing thread
programming.
<li><a href="../../samples/toolbar">toolbar</a>: demonstrates wxToolBar.

292
docs/html/news.htm Normal file
View File

@@ -0,0 +1,292 @@
<HTML>
<HEAD>
<TITLE>News</TITLE>
</HEAD>
<BODY BGCOLOR=#FFFFFF TEXT=#000000 LINK=#FF0000 VLINK=#000000>
<font face="Arial, Lucida Sans, Helvetica">
<table width=100% border=4 cellpadding=5 cellspacing=0>
<tr>
<td bgcolor="#660000">
<font size=+1 face="Arial, Lucida Sans, Helvetica" color="#FFFFFF">
News
</font>
</td>
</tr>
</table>
<H3>August 6th, 1999</H3><P>
Today, a snapshot release of the MSW and the GTK ports has been
made. The two snapshots are synchronized and have been tested
for several weeks and should thus be considered to be quite stable.
Among the many new features that have appeared since version 2.0
was release are:
<ul>
<li> A great number of incompatiblities between the GTK and the MSW port have been removed. This
holds escecially true for the way, time and order, controls send notifications to the user program.
<li> Practically all widgets have been updated, removing bugs or adding missing features to
specific ports (mostly the GTK port).
<li> The GTK port now supports GTK version 1.2 as well as 1.0, giving access to the many new
features, such as e.g. menu accelerators.
<li> Many of the non-GUI classes have been reworked and new ones added, the stream classes
having undergone a complete rewrite.
<li> The addition of code to handle Unicode has begun and is in an advanced state.
<li> The Python bindings (wxPython) have been largely improved and upadted to the newest
API and features.
</ul>
<H3>July 31st, 1999</H3><P>
We are glad to announce the start of the work on the new wxWindows port - wxBeOS
which will implement wxWindows 2 API for <A HREF="http://www.be.com">BeOS</A>.
Thanks to Be for donating licenses to wxWindows project to make it possible.
<P>
If you're interested in helping with this new port, please write to wxWindows
developers mailing list!
<H3>May 27th, 1999</H3><P>
<ul>
<li>Beta 1 of <a href="dl_mac2.htm">wxWindows 2 for Mac</a> has been released, thanks to Stefan Csomor's amazing efforts.
<li>Work continues on the development branch of wxWindows 2 for MSW, GTK and Motif. Vadim has been reworking the
MSW implementation to solve some internal design problems, as well as factoring out base classes to make
development easier.
<li>Work on consistent drag and drop support in GTK and MSW continues.
</ul>
<H3>March 1st, 1999</H3><P>
wxWindows 2 launch day!<P>
<ul>
<li>wxWindows 2 officially launched, after more than two years' development of
the API and ports to Windows, GTK and Motif (Mac to follow).
<a href="download.htm">Download</a> wxWindows 2.
</ul>
<H3>November 26th 1998</H3><P>
<ul>
<li><a href="ftp://www.remstar.com/pub/wxwin/1.68E">wxWindows 1.68E</a> contains minor bug fixes and now compiles with MS VC++ 6.0, and
(hopefully) BC++ 5.0, as well as Cygwin b20.
<li>The latest <a href="ftp://www.remstar.com/pub/wxwin/2.0.1">wxWindows 2.0 alpha</a> shows good progress
on the Motif port, with a tabbed MDI implementation, a nice wxToolBar class and most
major classes working. wxWindows 2.0 for Windows now works with VC++ 6.0, BC++ 5.0 and
Cygwin b20. There's a problem linking with Mingw32, I don't know why this is, perhaps
something to do with differences in the way pragmas are handled.
<li>There is also good progress with Stefan Csomor's wxMac 2.0: watch this space. A preview
is available <a href="http://www.advanced.ch/wxwin/wxmac_d1.zip">here</a>.
<li>Work is finally underway on a <a href="wxide.htm">wxWindows IDE</a>!
<li>Aleksandras Gluchovas is working on a docking window implementation and the results
are pretty impressive so far. Here's a <a href="http://www.soften.ktu.lt/~alex/fl_screenshot.gif">screenshot</a>;
source code is <a href="http://www.soften.ktu.lt/~alex/fl_src_0_1.zip">here</a> and a WIN32 executable
is <a href="http://www.soften.ktu.lt/~alex/fl_demo_exe_0_1.zip">here</a>. The source also includes
work on persistent storage classes.
</ul>
<H3>September 13th 1998</H3><P>
<ul>
<li>The main ftp site is now <a href="ftp://www.remstar.com/pub/wxwin">www.remstar.com/pub/wxwin</a>,
since the AIAI site is no longer available for uploads.
</ul>
<H3>August 23rd 1998</H3><P>
<ul>
<li>wxGTK and wxMSW 2.0 progress continues apace. The API is being unified quite successfully,
and most of the samples now compile under both ports.
<li>We are looking for <a href="sponsor.htm">sponsorship</a> of wxMotif 2.0.
</ul>
<H3>April 28th 1998</H3><P>
<ul>
<li>wxWindows 1.68C has been released. This mainly provides compatibility with Gnu-Win32 b19
and Mingw32.
<li>wxWindows 2.0 beta 9 has been released. Again, this provides Gnu-Win32 b19/Mingw32 compatibility
plus a few small bug fixes.
</ul>
<H3>March 22nd 1998</H3><P>
<ul>
<li>The mailing list addresses have changed: please see the <a href="maillist2.htm">mailing list page</a>
for details. You may need to re-subscribe if you subscribed since February 1998.
</ul>
<H3>January 5th 1998</H3><P>
<ul>
<li>Happy New Year!
<li>wxWindows 1.68B is available.
<li>wxWindows 2.0 has another port in progress - <a href="http://www.freiburg.linux.de/~wxxt" target=_top>wxGTK</a>,
by Robert Roebling (see also the information on the same page about Robert's FADE desktop
environment project).
<li>The Windows and Xt/Motif ports to 2.0 are progressing well. A large proportion of the documentation
has been done. One of the main things to resolve is how transformations (such as scaling
and translation) will be done in 2.0, but we're heading towards agreement.
<li>There is a new <a href="http://wxwin.projects.ml.org" target=_top>wxWindows Developers Site</a> in preparation, for people developing ports of
wxWindows. There are newsgroups and a wxwin-developers mailing list.
<li>40 wxWindows CD-ROMs have been sold, mostly outside the U.K.
<li>Antonia Charlotte Smart was born on November 1st 1997. Naturally, she's as cute as her parents.
</ul>
<H3>August 13th 1997</H3><P>
<ul>
<li>Added <a href="getstart.htm">Getting Started</a> page for new users.
<li>There's a good review of wxWindows by Oliver Niedung and Stefan Gunther in
<I>iX</I>, a German computer magazine.
</ul>
<H3>July 24th 1997</H3><P>
<ul>
<li>wxWindows 1.67 <a href="download.htm" target=wxmain>released</a>.
</ul>
<H3>July 22nd 1997</H3><P>
<ul>
<li>wxWindows 1.67 is nearly there...
<li>Check out <a href="apps/forty/forty.htm">Forty Thieves</a>, a great card game
by Chris Breeze of Hitachi Europe Limited.
</ul>
<H3>July 16th 1997</H3><P>
<ul>
<li>Jobst Schmalenbach has set up Australian mirrors of the wxWindows ftp and Web sites:
please see the <a href="mirrors.htm">Mirrors</a> page.
<li>Arthur Tetzlaff-Deas is starting to look afresh at a port of wxWindows 2.0 to
NeXTStep. This is more relevant now that the NeXT OS will be essential to the Apple Mac's future.
<li>The next release of wxWindows for Motif/XView/Windows should be within the next two weeks or so. I have abandoned
documentation in wxHelp form in favour of the much better quality HTML format, which I
will be including with the distribution from now on.
</ul>
<H3>July 7th 1997</H3><P>
<ul>
<li>For news on wxWindows 2.0 development, please see <a href="coming.htm">What's coming next?</a>
- developments include DLL and experimental Netscape Plugin support. The estimate for a release
date has been put back to October 1997 - to be out of the way before Smart Jr. arrives in November...
<li>Negotiations with a U.S. company about development of wxWindows into a commercial product
fell through, since it was not possible to agree about the continuation of a version
of wxWindows that maintains the free, collaborative spirit that currently exists.
</ul>
<H3>May 18th 1997</H3><P>
<ul>
<li>wxWindows 2.0 development (mostly for the Windows platform) is on track thanks to funding for wxWin-related consultancy
- thank you to those concerned! This work is still on the free version of 2.0, although an additional
commercial version may be developed sometime in the future. Markus Holzem continues to generously donate
his spare time for Motif/Xt developments, and Greg Whitehead is looking into the Mac version of 2.0.
<li>Guilhem Lavaux has contributed a first version of
<a href="ftp://www.remstar.com/pub/wxwin/contrib/wxsocket">wxSocket</a>, a set of classes for
network programming based on work by Andrew Davison. Currently this works on Motif/Xt and is coded but not yet tested
for Windows. The wxIPC classes on the UNIX side have been rewritten to take advantage of the new
classes. wxSocket is a great contribution that will be a part of wxWindows 2.0. Meanwhile, do check
it out and help Guilhem debug and develop it further.
<li>Other noteworthy contributions in recent weeks include a patch for using bitmap
<a href="ftp://www.remstar.com/pub/wxwin/contrib/unixmask">masks</a> on X for transparency
effects - another Lavaux effort! - plus <a href="ftp://www.remstar.com/pub/wxwin/contrib/wxthread">thread</a> classes
by Wolfram Gloger, updates to <a href="ftp://www.remstar.com/pub/wxwin/ports/xt">wxXt</a> by Markus Holzem,
a start at <A HREF="ftp://www.remstar.com/pub/wxwin/contrib/wxole">OLE control</a> support by Norbert Grotz,
an improved <A HREF="ftp://www.remstar.com/pub/wxwin/contrib/winstmod">Winstall</a> by Stefan Hammes,
and <A HREF="ftp://www.remstar.com/pub/wxwin/contrib/wxpref">wxPreferences</a> by Bart Jourquin
to simulate .ini files on UNIX.<P>
Check out the <A href="contrib2.htm">Contributions</a> page for more.
</ul>
<P>
<H3>May 8th 1997</H3><P>
<ul>
<li>Hitachi Europe Limited have used wxWindows both to implement and to illustrate
their WebReuser tool - a link to <a href="http://www.stablesoft.com">their pages</a> has been
added to the <a href="apps.htm">Applications</a> page.
<li>Another interesting link in the Applications page is
<a href="http://www.softwarebuero.de/wipeout-eng.html">WipeOut</a>, a C++ integrated development
environment for Linux.
<li>Fixes to make wxWindows 1.66F work with VC++ 5.0 are in the
<A href="ftp://www.remstar.com/pub/wxwin/ports/msvc50">ports/msvc50</a>
directory.
</ul>
<P>
<H3>April 20th 1997</H3><P>
<ul>
<li>wxWindows is listed in the <a href="http://SAL.KachinaTech.COM/">Scientific Applications on Linux</a> index</a>,
<a href="http://SAL.KachinaTech.COM/F/5/WXWINDOWS.html">here</a>.
<li>There is a new page for <a href="issues.htm">issues with the current release</a> which I would
encourage you to read.
<li>The wxWindows Web pages can be switched to non-frames mode, for those who find frames irritating
(and who use browsers that don't implement Back properly :-)).
<li>The <A href="contrib.htm">Contrib</a> page has some new entries.
<li>wxWindows 2.0 progress is steady.
<li><a href="mailto:grw@market.net">Greg Whitehead</a> is taking a look at what's involved for a Mac port of 2.0, possibly using MetroWerks' PowerPlant
classes to speed up development.
</ul>
<P>
<H3>March 13th 1997</H3><P>
<ul>
<li>Check out C-LAB's <a href="http://www.c-lab.de/~lipuser/lip" TARGET=_top>Lean Integration Platform</a> written in wxWindows/wxLisp: it's
a multi-platform workflow tool. Nice Web pages!
<li>I've written some <a href="prepare.htm">tips</a> to help you code for easy porting to wxWindows 2.0.
<li>wxWin 2.0 progress: I've eliminated the need for the dreaded CTL3D library for Windows 95 applications.
New MDI classes are working, plus wxStatusBar, wxScrolledWindow. Markus is starting work on the Motif
port, with wxXt 2.0 as a second priority. But <a href="sponsors.htm">financial help</a> to keep
the momentum going is needed!
</ul>
<P>
<H3>February 25th 1997</H3><P>
<ul>
<li>Yura Bidus (yari_b@automedi.com) has successfully adapted wxWindows 1.66B to compile as a DLL under
Borland C++. He will be patching 1.66F and investigating using VC++ for building the DLL.
<li>Early experiments indicate that application files using wxWindows 2.0
and GNU-WIN32 will be at least twice as fast to compile as 1.66, due to elimination of base classes
and restructuring to avoid including windows.h.
</ul>
<P>
<H3>January 29th 1997</H3><P>
<ul>
<li><a href="ftp://www.remstar.com/pub/wxwin/1.66F_internal">wxWindows 1.66F</a> has been semi-released
for people to test before the official release. It works with GNU-WIN32, and contains miscellaneous bug fixes.
<li>ITA, Inc. have sent a debugged and
enhanced <a href="ftp://www.remstar.com/pub/wxwin/ports/mac/ita">Mac port</a> (building on 1.61).
<li>Markus Holzem and Julian Smart are designing wxWindows 2.0, which should make wxWindows into a force
to be reckoned with against other free and commercial libraries. The <a href="coming.htm">What's coming next?</a>
page will shortly contain more details.
<li>The <a href="maillist.htm">mailing lists</a> are up and running again, with new subscription and discussion
list addresses.
</ul>
<P>
</font>
</BODY>
</HTML>

780
docs/html/standard.htm Normal file
View File

@@ -0,0 +1,780 @@
<HTML>
<HEAD>
<TITLE>wxWindows Programmer Style Guide</TITLE>
</HEAD>
<BODY>
<a name="top"></a>
<font face="Arial, Lucida Sans, Helvetica">
<table width=100% border=4 cellpadding=5 cellspacing=0>
<tr>
<td bgcolor="#660000">
<font size=+1 face="Arial, Lucida Sans, Helvetica" color="#FFFFFF">
wxWindows Programmer Style Guide
</font>
</td>
</tr>
</table>
<P>
by <A HREF=mailto:zeitlin@dptmaths.ens-cachan.fr>Vadim Zeitlin</A><P>
This guide is intended for people who are (or intending to start) writing code
for <A HREF="http://web.ukonline.co.uk/julian.smart/wxwin/" target=_top>wxWindows</A> class library.
<P>
The guide is separated into two parts: the first one addresses the general
compatibility issues and is not wxWindows-specific. The advises in this part
will hopefully help you to write programs which compile and run on greater
variety of platforms. The second part details the wxWindows code organization and
its goal it to make wxWindows as uniform as possible without imposing too
many restrictions on the programmer.
<P>
Acknowledgements: This guide is partly based on <A
HREF=http://www.mozilla.org/docs/tplist/catBuild/portable-cpp.html target=_top>
C++ portability guide</A> by David Williams.
<P>
<H3>General C++ Rules</H3>
<UL>
<LI>New or not widely supported C++ features</LI>
<OL>
<LI><A HREF="#no_templates">Don't use C++ templates</A></LI>
<LI><A HREF="#no_exceptions">Don't use C++ exceptions</A></LI>
<LI><A HREF="#no_rtti">Don't use RTTI</A></LI>
<LI><A HREF="#no_namespaces">Don't use namespaces</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_nestedclasses">Don't use nested classes</A></LI>
</OL>
<BR>
<LI>General recommendations</LI>
<OL>
<LI><A HREF="#no_globals">No global variables with constructor</A></LI>
<LI><A HREF="#no_warnings">Turn on all warnings and eradicate them</A></LI>
<LI><A HREF="#no_assume_sizeof">Don't rely on <TT>sizeof(int) == 2</TT>...</A></LI>
<LI><A HREF="#no_assignment_in_if">No assignments in conditional expressions</A></LI>
<LI><A HREF="#no_comment_code">Use <TT>#if 0</TT> rather than comments to temporarily
disable blocks of code</A></LI>
<LI><A HREF="#no_extra_semicolon">Don't use extra semi-colons on top level</A></LI>
</OL>
<BR>
<LI>Unix/DOS differences</LI>
<OL>
<LI><A HREF="#use_cpp_ext">Use .cpp for C++ source file extension</A></LI>
<LI><A HREF="#no_backslash">Don't use backslash ('\\') in &#35;includes</A></LI>
<LI><A HREF="#no_carriagereturn">Avoid carriage returns in cross-platform code</A></LI>
<LI><A HREF="#no_caps_in_filenames">Use only lower letter filenames</A></LI>
<LI><A HREF="#no_incomplete_files">Terminate the files with a new-line</A></LI>
</OL>
<BR>
<LI>Style choices</LI>
<OL>
<LI><A HREF="#naming_conv">Naming conventions: use <TT>m_</TT> for members</A></LI>
<LI><A HREF="#no_void_param">Don't use <TT>void</TT> for functions without
arguments</A></LI>
<LI><A HREF="#no_const_int">Don't use <TT>const</TT> for non pointer/reference
arguments</A></LI>
</OL>
</UL>
<P>
<H3>wxWindows Rules</H3>
<UL>
<LI>Files location and naming conventions</LI>
<OL>
<LI><A HREF="#file_locations">File locations</A></LI>
<LI><A HREF="#include_guards">Include guards</A></LI>
<LI><A HREF="#pch">Precompiled headers</A></LI>
</OL>
<BR>
<LI>File layout and indentation</LI>
<OL>
<LI><A HREF="#wxwin_header">wxWindows standard header</A></LI>
<LI><A HREF="#indentation">Indent your code with 4 spaces (no tabs!)</A></LI>
<LI><A HREF="#class_decl">Order of parts in a class declarations</A></LI>
</OL>
<BR>
<LI>More about naming conventions</LI>
<OL>
<LI><A HREF="#wx_prefix">Use wx or WX prefix for all public symbols</A></LI>
<LI><A HREF="#wxdllexport">Use WXDLLEXPORT with all classes/functions in
wxMSW/common code</A></LI>
<LI><A HREF="#set_get">Use Set/Get prefixes for accessors</A></LI>
</OL>
<BR>
<LI>Miscellaneous</LI>
<OL>
<LI><A HREF="#forward_decl">Use forward declarations whenever possible</A></LI>
<LI><A HREF="#debug_macros">Use debugging macros</A></LI>
</OL>
</UL>
<HR>
<H3>General C++ Rules</H3>
<UL>
<LI>New or not widely supported C++ features</LI>
<P>The usage of all features in this section is not recommended for one reason: they appeared in C++ relatively recently and are not yet
supported by all compilers. Moreover, when they're supported, there are
differences between different vendor's implementations. It's understandable that
you might love one (or all) of these features, but you surely can write C++
programs without them. Where possible, workarounds to compensate for absence
of your favourite C++ abilities are indicated.
<P>Just to suppress any doubts that there are compilers which don't support
these new features, you can think about Win16 (a.k.a. Win 3.1) compilers,
<I>none</I> of which supports <I>any</I> feature from the list below.
<OL>
<P><LI><A NAME="no_templates"></A><B>Don't use C++ templates</B></LI><P>
Besides the reasons mentioned above, template usage also makes the
program compile much slower (200%-300% is not uncommon) and their support
even in the compilers which have had it for a long time is far from perfect
(the best example is probably gcc).
<P><U>Workaround</U>: The things you would like to use templates for are,
most commonly, polymorphic containers (in the sense that they can contain objects of
any type without compromising C++ type system, i.e. using <TT>void *</TT>
is out of question). wxWindows provides <A HREF="TODO">dynamic
arrays and lists</A> which are sufficient in 99% of cases - please don't hesitate
to use them. Lack of template is not a reason to use static arrays or
type-less (passing by <TT>void *</TT>) containers.
<P><LI><A NAME="no_exceptions"></A><B>Don't use C++ exceptions</B></LI><P>
The C++ exception system is an error-reporting mechanism. Another reasons not to use it,
besides portability, are the performance penalty it imposes (small, but, at least for
current compilers, non-zero), and subtle problems with
memory/resource deallocation it may create (the place where you'd like to use
C++ exceptions most of all are the constructors, but you need to be very
careful in order to be able to do it).
<P><U>Workaround</U>: there is no real workaround, of course, or the exceptions
wouldn't have been added to the language. However, there are several rules which
might help here:<P>
<OL>
<LI>Every function returns an integer (or at least boolean) error code.
<P>There is no such thing as a function that never fails - even if it can't
fail now, it might do it later, when modified to be more powerful/general.
Put the <TT>int</TT> or <TT>bool</TT> return type from the very beginning!<P>
</LI><LI>Every function you call may fail - check the return code!
<P>Never rely on the function's success, always test for a possible error.<P>
</LI><LI>Tell the user about the error, don't silently ignore them.
<P>Exceptions are always caught and, normally, processed when they're
caught. In the same manner, the error return code must always be processed
somehow. You may choose to ignore it, but at least tell the user that
something wrong happened using <A HREF="TODO"><TT>wxLogError</TT></A> or
<A HREF="TODO"><TT>wxLogWarning</TT></A> functions. All wxWindows
functions (must) log the error messages on failure - this can be disabled
by using <A HREF="TODO">wxLogNull</A> object before calling it.
<P>Examples:<UL>
<LI><I>Wrong</I>:
<PRE>
void ReadAddressBookFile(const wxString& strName)
{
wxFile file;
if ( !file.Open(strFile) )
return;
...process it...
}
</PRE>
</LI><LI><I>Correct</I>:
<PRE>
// returns false if the address book couldn't be read
bool ReadAddressBookFile(const wxString& strName)
{
wxFile file;
if ( !file.Open(strFile) ) {
// wxFile logged an error because file couldn't be opened which
// contains the system error code, however it doesn't know what
// this file is for and an error message "can't open $GLCW.ADB"
// can be quite confusing for the user. Here we say what we mean.
wxLogError("Can't read address book from '%s'!",
strName.c_str());
return false;
}
...process it...
return true;
}
</PRE>
or, if it's not an error if file doesn't exist (here we could just check
its existence, but let's suppose that there is no <TT>wxFile::Exists()</TT>)
we can also write:
<PRE>
// returns false if address book file doesn't exist
bool ReadAddressBookFile(const wxString& strName)
{
wxFile file;
// start a block inside which all log messages are suppressed
{
wxLogNull noLog;
if ( !file.Open(strFile) )
return false;
}
...process it...
return true;
}
</PRE></LI>
</UL>
</OL>
<P><LI><A NAME="no_rtti"></A><B>Don't use RTTI</B></LI><P>
RTTI stands for Run-Time Type Information and there is probably no other
reason not to use it except the portability issue and the fact that it adds
<TT>sizeof(void *)</TT> bytes to any class having virtual functions (at least,
in the implementations I'm aware of).
<P><U>Workaround</U>: use wxWindows RTTI system which allows you to do almost
everything which the new C++ RTTI, except that, of course, you have to use
macros instead of the (horrible looking, BTW) <TT>dynamic_cast</TT>.
<P><LI><A NAME="no_namespaces"></A><B>Don't use namespaces</B></LI><P>
This topic is subject to change with time, however for the moment all wxWindows
classes/functions live in the global namespace.
<P><U>Workaround</U>: None.
<P><LI><A NAME="no_stl"></A><B>Don't use STL</B></LI><P>
STL is the new C++ standard library, proposing all kinds of template containers
and generic algorithm implementations. Templates are the heart (and almost
everything else) of the library, so its usage is out of question. Besides, even
with the compilers which do support templates, STL has many of its own problems,
there are many "not 100% standard compatible" vendor implementations, none of existing debuggers understands its
complicated data structures, ... the list can go on (almost) forever.
<P><U>Workaround</U>: Use wxString, dynamic arrays and lists and other wxWindows
classes. wxString has many of the most often used functions of std::string STL
class (typedef to be precise).
<P><LI><A NAME="no_fordecl"></A><B>Don't declare variables inside <TT>for()
</TT></B></LI><P>
The scope of a variable declared inside <TT>for()</TT> statement changed several
years ago, however many compilers still will complain about second declaration
of <TT>i</TT> in the following code:
<PRE>
for ( int i = 0; i < 10; i++ ) {
...
}
...
for ( int i = 0; i < 10; i++ ) {
...
}
</PRE>
Even if it's perfectly legal now.
<P><U>Workaround</U>: write this instead:
<PRE>
int i;
for ( i = 0; i < 10; i++ ) {
...
}
...
for ( i = 0; i < 10; i++ ) {
...
}
</PRE>
<P><LI><A NAME="no_nestedclasses"></A><B>Don't use nested classes</B></LI><P>
Nested classes are, without doubt, a very good thing because they allow to hide
"private" (in the sense that they're used only inside the library) classes and,
generally, put the related things together.
<P>Unfortunately, some compilers have trouble understanding them, so we must
sacrifice the ideals of software design to get a working program in this case.
<P><U>Workaround</U>: instead of
<PRE>
// in the header
class PublicLibClass {
...
private:
class PrivateLibClass { ... } m_object;
};
</PRE>
you can try the following:
<PRE>
// in the header
class PrivateLibClass; // fwd decl
class PublicLibClass {
...
private:
class PrivateLibClass *m_pObject;
};
// in the .cpp file
class PrivateLibClass { ... };
PublicLibClass::PublicLibClass()
{
m_pObject = new PrivateLibClass;
...
}
PublicLibClass::~PublicLibClass()
{
delete m_pObject;
}
</PRE>
<P>A nice side effect is that you don't need to recompile all the files
including the header if you change the PrivateLibClass declaration (it's
an example of a more general interface/implementation separation idea).
</OL>
<BR>
<LI>General recommendations</B></LI><P>
While the recommendations in the previous section may not apply to you if you're
only working with perfect compilers which implement the very newest directives of
C++ standard, this section contains compiler- (and language-) independent advice
which <B>must</B> be followed if you wish to write correct, i.e. working, programs. It
also contains some C/C++ specific remarks in the end which are less
important.
<OL>
<P><LI><A NAME="no_globals"></A><B>No global variables with constructors</B></LI><P>
In C++, the constructors of global variables are called before the
<TT>main()</TT> function (or <TT>WinMain()</TT> or any other program entry point)
starts executing. Thus, there is no possibility to initialize <I>anything</I>
before the constructor call. The order of construction is largely
implementation-defined, meaning that there is no guarantee that one global
object will be initialized before another one (except if they are both defined
in the same translation unit, i.e. .cpp file). Most importantly, no custom
memory allocation operators are installed at the moment of execution of global
variables constructors, so a (less restrictive) rule is that you should have
no global variables which allocate memory (or do anything else non-trivial) in
the constructor. Of course, if an object doesn't allocate memory in its constructor
right now, it may start making it later, so you can only be sure about this if
you don't use <I>any</I> variables of object (as opposed to simple:
<TT>int</TT>, ...) types. Example: currently, wxString doesn't allocate memory
in its default constructor, so you might think that having a global (initially)
empty wxString is safe. However, if wxString starts allocating some minimal
amount of memory in its default constructor (which doesn't look unreasonable),
you would have all kinds of problems with <TT>new</TT>
and <TT>delete</TT> operators (overloaded in wxWindows), especially because the first <TT>new</TT> called
is the standard one (before wxWindows overloads them) and <TT>delete</TT> will
be the overloaded operator.
<P><LI><A NAME="no_warnings"></A><B>Turn on all warnings and eradicate them</B></LI><P>
Give the compiler a chance to help you - turn on all warnings! You should always
use the maximum available warning level of your compiler and understand and
correct each of them. If, for whatever reasons, a compiler gives a warning on
some perfectly legal line of code and you can't change it, please insert a
comment indicating it in the code. Most oftenly, however, all compiler warnings
may be avoided (not suppressed!) with minimal changes to your code.
<P><LI><A NAME="no_assume_sizeof"></A><B>Don't rely on <TT>sizeof(int) == 2</TT>...</B></LI><P>
You should never assume any absolute constraints on data type sizes. Currently,
we have 16-bit, 32-bit and 64-bit machines and even inside each class data type
sizes are different. A small table illustrates it quite well:
<TABLE BORDER COLS=5 WIDTH="100%" NOSAVE >
<TR>
<TD>Architecture/OS</TD>
<TD>sizeof(short)</TD>
<TD>sizeof(int)</TD>
<TD>sizeof(long)</TD>
<TD>sizeof(void *)</TD>
</TR>
<TR>
<TD>i386/Windows 3.1</TD>
<TD>2</TD>
<TD>2</TD>
<TD>4</TD>
<TD>2 or 4</TD>
</TR>
<TR>
<TD>i386/Windows 95</TD>
<TD>2</TD>
<TD>4</TD>
<TD>4</TD>
<TD>4</TD>
</TR>
<TR>
<TD>Merced/Win64</TD>
<TD>2</TD>
<TD>4</TD>
<TD>4</TD>
<TD>8</TD>
</TR>
<TR>
<TD>Alpha/Linux</TD>
<TD>???</TD>
<TD>???</TD>
<TD>???</TD>
<TD>???</TD>
</TR>
</TABLE>
<P><LI><A NAME="no_assignment_in_if"></A><B>No assignments in conditional expressions</B></LI><P>
Although close to the heart of many C programmers (I plead guilty), code like
classical <TT>if ( (c = getchar()) != EOF )</TT> is bad because it prevents you
from enabling "assignment in conditional expression" warning (see also
<A HREF="#no_warnings">above</A>) warning which is helpful to detect common
mistypes like <TT>if ( x = 2 )</TT> instead of <TT>if ( x == 2 )</TT>.
<P><LI><A NAME="no_comment_code"></A><B>Use <TT>#if 0</TT> rather than comments to temporarily
disable blocks of code</B></LI><P>
If you have to temporarily disable some code, use
<PRE>
#if 0 // VZ: I think this code is unneeded, it probably must be removed
...
#endif // 0
</PRE>
instead of
<PRE>
/*
...
*/
</PRE>
The reason is simple: if there are any <TT>/* ... */</TT> comments inside
<TT>...</TT> the second version will, of course, miserably fail.
<P><LI><A NAME="no_extra_semicolon"></A><B>Don't use extra semi-colons on top level</B></LI><P>
Some compilers don't pay any attention to extra semicolons on top level, as in
<PRE>
class Foo { };;
</PRE>
while others complain loudly about it. Of course, you would rarely put 2
semicolons yourself, but it may happen if you're using a macro
(<TT>IMPLEMENT_something</TT>, for example) which already has a ';' inside and
put another one after it.
</OL>
<BR>
<LI>Unix/DOS differences</B></LI><P>
Two operating systems supported by wxWindows right now are (different flavours
of) Unix and Windows 3.1/95/NT (although Mac, OS/2 and other ports exist/are
being developed as well). The main differences between them are summarized
here.
<OL>
<P><LI><A NAME="use_cpp_ext"></A><B>Use .cpp for C++ source file extension</B></LI><P>
There is, unfortunately, no standard exceptions for C++ source files. Different
people use .C, .cc, .cpp, .cxx, .c++ and probably several others I forgot. Some
compilers don't care about extension, but there are also other ones which can't
be made to compile any file with "wrong" extension. Such compilers are very
common in DOS/Windows land, that's why the .cpp extension is the least likely to
cause any problems - it's the standard one under DOS and will probably be
accepted by any Unix compiler as well (any counter examples?). The extension
for the header files is .h.
<P><LI><A NAME="no_backslash"></A><B>Don't use backslash ('\\') in &#35;includes</B></LI><P>
Although it's too silly to mention, please don't use backslashes in
<TT>&#35;include</TT> preprocessor statement. Even not all Windows compilers accept
it, without speaking about all other ones.
<P><LI><A NAME="no_carriagereturn"></A><B>Avoid carriage returns in cross-platform code</B></LI><P>
This problem will hopefully not arise at all, with CVS taking care of this
stuff, however it's perhaps not useless to remember that many Unix compilers
(including, but not limited to, gcc) don't accept carriage returns
(= <Ctrl-M> = '\r') in C/C++ code.
<P><LI><A NAME="no_caps_in_filenames"></A><B>Use only lower case filenames</B></LI><P>
DOS/Windows 3.1 isn't case sensitive, Windows 95/NT are case preserving, but not
case sensitive. To avoid all kinds of problems with compiling under Unix (or
any other fully case-sensitive OS), please use only lower case letters in the
filenames.
<P><LI><A NAME="no_incomplete_files"></A><B>Terminate the files with a new-line</B></LI><P>
While DOS/Windows compilers don't seem to mind, their Unix counterparts don't
like files without terminating new-line. Such files also give a warning message
when loaded to vim (the Unix programmer's editor of choice :-)), so please think
about terminating the last line.
</OL>
<BR>
<LI>Style choices</B></LI><P>
All wxWindows specific style guidelines are specified in the next
section, here are the choices which are not completely arbitrary,
but have some deeper and not wxWindows-specific meaning.
<OL>
<P><LI><A NAME="naming_conv"></A><B>Naming conventions: use <TT>m_</TT> for members</B></LI><P>
It's extremely important to write readable code. One of the first steps in this
direction is the choice of naming convention. It may be quite vague or strictly
define the names of all the variables and function in the program, however it
surely must somehow allow the reader to distinguish between variable and
functions and local variables and member variables from the first glance.
<P>The first requirement is commonly respected, but for some strange reasons, the
second isn't, even if it's much more important because, after all, the immediate
context usually allows you to distinguish a variable from a function in
C/C++ code. On the other hand, you <I>cannot</I> say what <TT>x</TT> in the
following code fragment is:
<PRE>
void Foo::Bar(int x_)
{
...
x = x_;
...
}
</PRE>
It might be either a local variable (unluckily the function is too long so you
don't see the variable declarations when you look at <TT>x = x_</TT> line), a
member variable or a global variable - you have no way of knowing.
<P>The wxWindows naming convention gives you, the reader of the code, much more
information about <TT>x</TT>. In the code above you know that it's a local
variable because:<P>
<OL>
<LI>global variables are always prefixed with <TT>g_</TT></LI>
<LI>member variables are always prefixed with <TT>m_</TT></LI>
<LI>static variables are always prefixed with <TT>s_</TT></LI>
</OL>
<P>Examples:
<PRE>
extern int g_x; // of course, 'x' is not the best name for a global...
void Bar()
{
int x;
}
class Foo {
public:
void SetX(int x) { m_x = x; }
private:
int m_x;
};
</PRE>
As you see, it also solves once and for all the old C++ programmer's question:
how to call <TT>SetX()</TT> parameter? The answer is simple: just call it
<TT>x</TT> because there is no ambiguity with <TT>Foo::m_x</TT>.
<P>The prefixes can be combined to give <TT>ms_</TT> and <TT>gs_</TT> for static
member (a.k.a. class) variables and static global variables.
<P>The convention is, of course, completely worthless if it is not followed:
nothing like being sure that <TT>x</TT> is a local variable in the code fragment
above and discovering later the following lines in the header:
<PRE>
class Foo {
...
int x; // I don't like wxWindows naming convention
};
</PRE>
Please do use these prefixes, they make your code much easier to read. Also
please notice that it has nothing to do with the so-called <I>Hungarian notation</I>
which is used in wxMSW part of wxWindows code and which encodes the <I>type</I>
of the variable in its name - it is actually quite useful in C, but has little
or no sense in C++.
<P><LI><A NAME="no_void_param"></A><B>Don't use <TT>void</TT> for functions without
arguments</B></LI><P>
In ANSI C, <TT>void Foo()</TT> takes an arbitrary number of arbitrarily typed
arguments (although the form <TT>void Foo(...)</TT> is preferred) and <TT>void
Foo(void)</TT> doesn't take any arguments. In C++, however, the situation is
different and both declarations are completely equivalent. As there is no need
to write <TT>void</TT> in this situation, let's not write it - it can only be
confusing and create an impression that it really means something when it's not
at all the case.
<P><LI><A NAME="no_const_int"></A><B>Don't use <TT>const</TT> for non pointer/reference
arguments</B></LI><P>
In both C and C++ an argument passed by value cannot be modified - or, more
precisely, if it is modified in the called function, only the local copy is
really changed, not the caller's variable. So, semantically speaking, there is
no difference between <TT>void Foo(int)</TT> and <TT>void Foo(const int)</TT>.
However, the <TT>const</TT> keyword is confusing here, adds nothing to the code
and even cannot be removed if <TT>Foo()</TT> is virtual and overridden (because
the names are mangled differently). So, <I>for arguments passed by value</I>
you shouldn't use <TT>const</TT>.
<P>Of course, it doesn't apply to functions such as
<TT>void PrintMessage(const char *text)</TT> where <TT>const</TT> is mandatory.
</OL>
</UL>
<P>
<H3>wxWindows rules</H3>
<UL>
<P><LI>File location and naming conventions</LI><P>
<OL>
<P><LI><A NAME="file_locations"></LI><B>File locations</B><P>
The wxWindows files for each supported platform have their own subdirectories
in "include" and "src". So, for example, there is "src/msw", "include/gtk"
etc. There are also two special subdirectories called "common" and
"generic". The common subdirectory contains the files which are platform
independent (wxObject, wxString, ...) and the generic one the generic
implementations of GUI widgets, i.e. those which use only other wxWindows
classes to implement them. For the platforms where the given functionality
cannot be implemented natively, the generic implementation is used and the native
one is used for the others. As I feel that it becomes a bit too confusing,
here is an example: wxMessageBox function is implemented natively under
Windows (where it just calls MessageBox API), but there is also a generic
implementation which is used under, for example, GTK. A generic class should
normally have a name that distinguishes it from any platform-specific implementation.
A #define will allow wxGenericMessageDialog to be wxMessageDialog on some
platforms, for example.
<P>This scheme applies not only for the .cpp files, but also for the headers.
However, as the program using wxWindows should (ideally) not use any
"<TT>&#35;ifdef &lt;platform&gt;</TT>" at all, the headers are always included with
"<TT>&#35;include &lt;wx/msgdlg.h&gt;</TT>" (for example). This file, in turn, includes
the right header for given platform. Any new headers should conform to this
setup as well to allow including <TT>&lt;wx/foo.h&gt;</TT> on any platform.<P>
Note that wxWindows implementation files should use quotes when including wxWindows
headers, not angled brackets. Applications should use angled brackets. There
is a reason for it (can anyone remember what this is?).
<P><LI><A NAME="include_guards"></LI><B>Include guards</B><P>
To minimize the compile time C++ programmers often use so called include
guards: for example, in the header file foo.h you might have
<PRE>
&#35;ifndef _FOO_H_
&#35;define _FOO_H_
... all header contents ...
&#35;endif
//_FOO_H_
</PRE>
In this way, the header will only be included once for the compilation
of any .cpp (of course, it still will be included many times for the
compilation of the whole project, so it has nothing to do with precompiled
headers). wxWindows is no exception and also uses include guards which should use
the above form, except for top-level headers which include files with identical
names, in which case you should use _FOO_H_BASE_.
<P><LI><A NAME="pch"></LI><B>Precompiled headers</B><P>
The precompiled headers greatly (we're speaking about orders of hundreds of
percent here) reduce the compilation time. wxWindows uses them if the target
compiler supports them (it knows about MS Visual C++, Borland C++ and g++).
You should include all the headers included from <TT><wx/wx_prec.h></TT> only
inside "<TT>&#35;if !USE_PRECOMP</TT>" to avoid unnecessary overhead in the case
when the precompiled headers are used.<P>
The start of a cpp implementation file after the heading might look like this:<P>
<PRE>
&#35;ifdef __GNUG__
&#35;pragma implementation "bitmap.h"
&#35;endif
// For compilers that support precompilation, includes "wx.h".
&#35;include "wx/wxprec.h"
&#35;ifdef __BORLANDC__
&#35;pragma hdrstop
&#35;endif
&#35;ifndef WX_PRECOMP
&#35;include &lt;stdio.h&gt;
&#35;include "wx/setup.h"
&#35;include "wx/list.h"
&#35;include "wx/utils.h"
&#35;include "wx/app.h"
&#35;include "wx/palette.h"
&#35;include "wx/bitmap.h"
&#35;include "wx/icon.h"
&#35;endif
&#35;include "wx/msw/private.h"
&#35;include "assert.h"
</PRE>
<P>Any header file should containg the following lines:
<PRE>
&#35;ifdef __GNUG__
&#35;pragma interface "foo.h"
&#35;endif
</PRE>
and the corresponding .cpp file:
<PRE>
&#35;ifdef __GNUG__
&#35;pragma implementation "foo.h"
&#35;endif
</PRE> for g++ compilation.
</OL>
<P><LI>File layout and indentation</LI><P>
<OL>
<P><LI><A NAME="wxwin_header"></LI><B>wxWindows standard header</B> <a href="header.txt">here</a>. The
copyright holder is the original author. It is assumed the author does not assert copyright,
under the terms of the wxWindows licence. This is a legal interpretation of the informal
usage 'public domain' (the copyright holder does not assert the copyright).<P>
<P><LI><A NAME="indentation"></LI><B>Indent your code with 4 spaces (no tabs!)</B>
<P><LI><A NAME="class_decl"></LI><B>Order of parts in a class declarations</B><P>
</OL>
<P><LI>More about naming conventions</LI><P>
<OL>
<P><LI><A NAME="wx_prefix"></LI><B>Use wx or WX prefix for all public symbols</B>.
wx should be used for functions and classes, WX for macros.
<P><LI><A NAME="wxdllexport"</LI><B>Use WXDLLEXPORT with all classes/functions in
wxMSW/common code</B>
The title says it all - every public (in the sense that it is not internal to
the library) function or class should have WXDLLEXPORT macro in its
declaration to allow compilation of wxWindows as shared library. For example:<P>
<pre>
bool WXDLLEXPORT wxYield(void);
class WXDLLEXPORT MyClass; // (for forward declarations and real declarations)
WXDLLEXPORT_DATA(extern wxApp*) wxTheApp;
</pre>
The reason for the strange syntax for data is that some compilers use different
keyword ordering for exporting data.
<P>There also several other places where you should take care of shared
library case: all IMPLEMENT_xxx macros which are usually used in the
corresponding .cpp files must be taken inside
"<TT>&#35;if !USE_SHARED_LIBRARY</TT>" and in the <TT>&#35;if USE_SHARED_LIBRARY</TT>
case you should put them inside <TT>common/cmndata.cpp</TT> file.
<P><LI><A NAME="set_get"></LI><B>Use Set/Get prefixes for accessors</B><P>
There is a convention in wxWindows to prefix the accessors (i.e. any simple, in
general, inline function which does nothing else except changing or returning
the value of a member variable) with either <TT>Set</TT> or <TT>Get</TT>.
</OL>
<P><LI>Miscellaneous</LI><P>
<OL>
<P><LI><A NAME="forward_decl"></LI><B>Use forward declarations whenever possible</B><P>
It's really a trivial piece of advice, but remember that using forward declarations
instead of including the header of corresponding class is better because not
only does it minimize the compile time, it also simplifies the dependencies
between different source files.
<P>On a related subject, in general, you should try not to include other
headers from a header file.
<P><LI><A NAME="debug_macros"></LI><B>Use debugging macros</B><P>
wxWindows provides the debugging macros <TT>wxASSERT, wxFAIL</TT> and
<TT>wxCHECK_RET</TT> in <TT><wx/wx.h></TT> file. Please use them as often as
you can - they will never do you any harm but can greatly simplify the bug
tracking both for you and for others.
<P>Also, please use <TT>wxFAIL_MSG("not implemented")</TT> instead of writing
stubs for not (yet) implemented functions which silently return incorrect
values - otherwise, a person using a not implemented function has no idea that
it is, in fact, not implemented.
<P>As all debugging macros only do something useful if the symbol
<TT>__DEBUG__</TT> is defined, you should compile your programs in debug mode to profit
from them.
</OL>
</UL>
<P>
<HR>
Please send any comments to <A HREF=mailto:zeitlin@dptmaths.ens-cachan.fr>Vadim Zeitlin</A>.
</font>
</BODY>
</HTML>

BIN
docs/latex/wx/alignv.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

BIN
docs/latex/wx/alignv.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@@ -441,3 +441,15 @@ needs to use the top window.
\helpref{wxApp::GetTopWindow}{wxappgettopwindow}, \helpref{wxApp::OnInit}{wxapponinit}
\membersection{wxApp::GetStdIcon}\label{wxappgetstdicon}
\func{virtual wxIcon}{GetStdIcon}{\param{int }{which}} const
Returns the icons used by wxWindows internally, e.g. the ones used for
message boxes. This function is used internally and
can be overridden by the user to change the default icons.
\wxheading{Parameters}
\docparam{which}{One of the wxICON_XXX defines and chooses which icon to return.}

View File

@@ -43,15 +43,21 @@ Copy constructor.
\func{}{wxBitmap}{\param{void*}{ data}, \param{int}{ type}, \param{int}{ width}, \param{int}{ height}, \param{int}{ depth = -1}}
Creates a bitmap from the given data, which can be of arbitrary type.
Windows only, I think.
\func{}{wxBitmap}{\param{const char}{ bits[]}, \param{int}{ width}, \param{int}{ height}\\
\param{int}{ depth = 1}}
Creates a bitmap from an array of bits.
Note that the bit depth is ignored on GTK+ and Motif. If you want to create a bitmap
from something else than a 1-bit data array, use the \helpref{wxImage}{wximage} class.
\func{}{wxBitmap}{\param{int}{ width}, \param{int}{ height}, \param{int}{ depth = -1}}
Creates a new bitmap.
Creates a new bitmap. A depth of -1 indicates the depth of the current screen or
visual. Some platforms only support 1 for monochrome and -1 for the current colour
setting.
\func{}{wxBitmap}{\param{const char**}{ bits}}
@@ -137,6 +143,8 @@ Under X, {\it type} defaults to wxBITMAP\_TYPE\_XPM.
\pythonnote{Constructors supported by wxPython are:\par
\indented{2cm}{\begin{twocollist}
\twocolitem{\bf{wxBitmap(name, flag)}}{Loads a bitmap from a file}
\twocolitem{\bf{wxBitmap(data, type, width, height, depth=1)}}{Creates
a bitmap from the given data, which can be of arbitrary type.}
\twocolitem{\bf{wxNoRefBitmap(name, flag)}}{This one won't own the
reference, so Python won't call the destructor, this is good for toolbars
and such where the parent will manage the bitmap.}

BIN
docs/latex/wx/border.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

BIN
docs/latex/wx/border.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

View File

@@ -0,0 +1,34 @@
\section{\class{wxBusyInfo}}\label{wxbusyinfo}
This class makes it easy to tell your user that the program is temporarily busy.
Just create a wxBusyInfo object on the stack, and within the current scope,
a message window will be shown.
For example:
\begin{verbatim}
wxBusyInfo wait("Please wait, working...");
for (int i = 0; i < 100000; i++)
DoACalculation();
\end{verbatim}
It works by creating a window in the constructor,
and deleting it in the destructor.
\wxheading{Derived from}
None
\wxheading{Include files}
<wx/busyinfo.h>
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxBusyInfo::wxBusyInfo}
\func{}{wxBusyInfo}{\param{const wxString\&}{ msg}}
Constructs a busy info object, displays {\it msg}.

View File

@@ -99,6 +99,14 @@ The button's label.
\helpref{wxButton::SetLabel}{wxbuttonsetlabel}
\membersection{wxButton::GetDefaultSize}\label{wxbuttongetdefaultsize}
\func{wxSize}{GetDefaultSize}{\void}
Returns the default size for the buttons. It is advised to make all the dialog
buttons of the same size and this function allows to retrieve the (platform and
current font dependent size) which should be the best suited for this.
\membersection{wxButton::SetDefault}\label{wxbuttonsetdefault}
\func{void}{SetDefault}{\void}

View File

@@ -178,9 +178,12 @@ An event object contains information about a specific event. Event handlers
\twocolitem{\helpref{wxMouseEvent}{wxmouseevent}}{A mouse event}
\twocolitem{\helpref{wxMoveEvent}{wxmoveevent}}{A move event}
\twocolitem{\helpref{wxNotebookEvent}{wxnotebookevent}}{A notebook control event}
\twocolitem{\helpref{wxNotifyEvent}{wxnotifyevent}}{A notification event, which can be vetoed}
\twocolitem{\helpref{wxPaintEvent}{wxpaintevent}}{A paint event}
\twocolitem{\helpref{wxProcessEvent}{wxprocessevent}}{A process ending event}
\twocolitem{\helpref{wxQueryLayoutInfoEvent}{wxquerylayoutinfoevent}}{Used to query layout information}
\twocolitem{\helpref{wxScrollEvent}{wxscrollevent}}{A scroll event from sliders, stand-alone scrollbars and spin buttons}
\twocolitem{\helpref{wxScrollWinEvent}{wxscrollwinevent}}{A scroll event from scrolled windows}
\twocolitem{\helpref{wxSizeEvent}{wxsizeevent}}{A size event}
\twocolitem{\helpref{wxSocketEvent}{wxsocketevent}}{A socket event}
\twocolitem{\helpref{wxSysColourChangedEvent}{wxsyscolourchangedevent}}{A system colour change event}
@@ -275,7 +278,7 @@ based on DDE.
\twocolitem{\helpref{wxTCPConnection}{wxtcpconnection}}{Represents the connection between a client and a server}
\twocolitem{\helpref{wxTCPServer}{wxtcpserver}}{Represents a server}
\twocolitem{\helpref{wxSocketClient}{wxsocketclient}}{Represents a socket client}
\twocolitem{\helpref{wxSocketHandler}{wxsockethandler}}{Represents a socket handler}
%\twocolitem{\helpref{wxSocketHandler}{wxsockethandler}}{Represents a socket handler}
\twocolitem{\helpref{wxSocketServer}{wxsocketserver}}{Represents a socket server}
\end{twocollist}
@@ -375,8 +378,10 @@ libraries, and to provide enhanced functionality.
\twocolitem{\helpref{wxOutputStream}{wxoutputstream}}{Output stream class}
\twocolitem{\helpref{wxFilterInputStream}{wxfilterinputstream}}{Filtered input stream class}
\twocolitem{\helpref{wxFilterOutputStream}{wxfilteroutputstream}}{Filtered output stream class}
\twocolitem{\helpref{wxDataInputStream}{wxdatainputstream}}{Platform-independent data input stream class}
\twocolitem{\helpref{wxDataOutputStream}{wxdataoutputstream}}{Platform-independent data output stream class}
\twocolitem{\helpref{wxDataInputStream}{wxdatainputstream}}{Platform-independent binary data input stream class}
\twocolitem{\helpref{wxDataOutputStream}{wxdataoutputstream}}{Platform-independent binary data output stream class}
\twocolitem{\helpref{wxTextInputStream}{wxtextinputstream}}{Platform-independent text data input stream class}
\twocolitem{\helpref{wxTextOutputStream}{wxtextoutputstream}}{Platform-independent text data output stream class}
\twocolitem{\helpref{wxFileInputStream}{wxfileinputstream}}{File input stream class}
\twocolitem{\helpref{wxFileOutputStream}{wxfileoutputstream}}{File output stream class}
\twocolitem{\helpref{wxZlibInputStream}{wxzlibinputstream}}{Zlib (compression) input stream class}

View File

@@ -99,7 +99,8 @@ Returns TRUE if it is checked, FALSE otherwise.
\func{void}{SetValue}{\param{const bool}{ state}}
Sets the checkbox to the given state.
Sets the checkbox to the given state. This does not cause a
wxEVT\_COMMAND\_CHECKBOX\_CLICKED event to get emitted.
\wxheading{Parameters}

View File

@@ -183,7 +183,8 @@ This is implemented for Motif only.
\func{void}{SetSelection}{\param{int}{ n}}
Sets the choice by passing the desired string position.
Sets the choice by passing the desired string position. This does not cause
a wxEVT\_COMMAND\_CHOICE\_SELECTED event to get emitted.
\wxheading{Parameters}
@@ -197,7 +198,8 @@ Sets the choice by passing the desired string position.
\func{void}{SetStringSelection}{\param{const wxString\& }{ string}}
Sets the choice by passing the desired string.
Sets the choice by passing the desired string. This does not cause
a wxEVT\_COMMAND\_CHOICE\_SELECTED event to get emitted.
\wxheading{Parameters}

View File

@@ -10,7 +10,9 @@
\input arrstrng.tex
\input autoobj.tex
\input busycurs.tex
\input busyinfo.tex
\input button.tex
\input strmbfrd.tex
\input bitmap.tex
\input bbutton.tex
\input bmpdatob.tex
@@ -66,6 +68,8 @@
\input fildrptg.tex
\input filehist.tex
\input strmfile.tex
\input filesys.tex
\input filesysh.tex
\input filetype.tex
\input fltinstr.tex
\input fltoutst.tex
@@ -74,6 +78,7 @@
\input fontdlg.tex
\input fontlist.tex
\input frame.tex
\input fsfile.tex
\input ftp.tex
\input gauge.tex
\input gdiobj.tex
@@ -81,6 +86,19 @@
\input grid.tex
\input hash.tex
\input helpinst.tex
\input htcell.tex
\input htcolor.tex
\input htcontnr.tex
\input htfilter.tex
\input hthelpct.tex
\input htparser.tex
\input httag.tex
\input httaghnd.tex
\input httagmod.tex
\input htwidget.tex
\input htwindow.tex
\input htwinprs.tex
\input htwinhnd.tex
\input http.tex
\input idleevt.tex
\input icon.tex
@@ -156,6 +174,7 @@
\input sashwin.tex
\input screendc.tex
\input scrolbar.tex
\input scrlwevt.tex
\input scrolevt.tex
\input scrolwin.tex
\input sngchdlg.tex
@@ -164,6 +183,7 @@
\input slider.tex
\input sckaddr.tex
\input socket.tex
%\input gsocket.tex
\input splitevt.tex
\input strmsock.tex
\input spinbutt.tex
@@ -189,6 +209,7 @@
\input tempfile.tex
\input text.tex
\input txtdatob.tex
\input txtstrm.tex
\input textdlg.tex
\input txtdrptg.tex
\input valtext.tex
@@ -196,6 +217,7 @@
\input thread.tex
\input time.tex
\input timer.tex
\input tipprov.tex
\input toolbar.tex
\input treectrl.tex
\input treeevt.tex
@@ -207,6 +229,7 @@
\input wave.tex
\input window.tex
\input windowdc.tex
\input zipstrm.tex
\input strmzlib.tex
\input function.tex
\input keycode.tex

View File

@@ -26,11 +26,11 @@ For example:
// Read some text
if (wxTheClipboard->Open())
{
wxTextDataObject data;
if (wxTheClipboard->IsSupported(data))
if (wxTheClipboard->IsSupported( "STRING" ))
{
wxTheClipboard->GetData(data);
wxMessageBox(data.GetText());
wxTextDataObject data;
wxTheClipboard->GetData( &data );
wxMessageBox( data.GetText() );
}
wxTheClipboard->Close();
}
@@ -83,14 +83,14 @@ Call this function to close the clipboard, having opened it with \helpref{wxClip
\membersection{wxClipboard::GetData}\label{wxclipboardgetdata}
\func{bool}{GetData}{\param{wxDataObject\&}{ data}}
\func{bool}{GetData}{\param{wxDataObject*}{ data}}
Call this function to fill {\it data} with data on the clipboard, if available in the required
format. Returns TRUE on success.
\membersection{wxClipboard::IsSupported}\label{wxclipboardissupported}
\func{bool}{IsSupported}{\param{wxDataObject\&}{ data}}
\func{bool}{IsSupported}{\param{wxDataFormat}{ format}}
Returns TRUE if the format of the given data object is available on the clipboard.
@@ -114,3 +114,12 @@ Call this function to set the data object to the clipboard. This function will
clear all previous contents in the clipboard, so calling it several times
does not make any sense.
\membersection{wxClipboard::UsePrimarySelection}\label{wxclipboarduseprimary}
\func{void}{UsePrimarySelection}{\param{bool}{ primary = TRUE}}
On platforms supporting it (currently only GTK), selects the so called
PRIMARY SELECTION as the clipboard as opposed to the normal clipboard,
if {\it primary} is TRUE.

View File

@@ -295,7 +295,8 @@ Sets the insertion point at the end of the combobox text field.
\func{void}{SetSelection}{\param{int}{ n}}
Selects the given item in the combobox list.
Selects the given item in the combobox list. This does not cause a
wxEVT\_COMMAND\_COMBOBOX\_SELECTED event to get emitted.
\func{void}{SetSelection}{\param{long}{ from}, \param{long}{ to}}

BIN
docs/latex/wx/cont.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

BIN
docs/latex/wx/cont.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

BIN
docs/latex/wx/contbox.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 105 KiB

BIN
docs/latex/wx/contbox.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.9 KiB

View File

@@ -1,14 +1,35 @@
% ----------------------------------------------------------------------------
% wxDataInputStream
% ----------------------------------------------------------------------------
\section{\class{wxDataInputStream}}\label{wxdatainputstream}
This class provides functions that read data types in a
portable way. So, a file written by an Intel processor can be read by a
Sparc or anything else.
This class provides functions that read binary data types in a
portable way. Data can be read in either big-endian or litte-endian
format, little-endian being the default on all architectures.
\wxheading{Derived from}
If you want to read data from text files (or streams) use
\helpref{wxTextInputStream}{wxtextinputstream} instead.
\helpref{wxFilterInputStream}{wxfilterinputstream}\\
\helpref{wxInputStream}{wxinputstream}\\
\helpref{wxStreamBase}{wxstreambase}
The >> operator is overloaded and you can use this class like a standard C++ iostream.
Note, however, that the arguments are the fixed size types wxUint32, wxInt32 etc
and on a typical 32-bit computer, none of these match to the "long" type (wxInt32
is defined as signed int on 32-bit architectures) so that you cannot use long. To avoid
problems (here and elsewhere), make use of the wxInt32, wxUint32, etc types.
For example:
\begin{verbatim}
wxFileInputStream input( "mytext.dat" );
wxDataInputStream store( input );
wxUint8 i1;
float f2;
wxString line;
store >> i1; // read a 8 bit integer.
store >> i1 >> f2; // read a 8 bit integer followed by float.
store >> line; // read a text line
\end{verbatim}
See also \helpref{wxDataOutputStream}{wxdataoutputstream}.
\wxheading{Include files}
@@ -33,21 +54,30 @@ be available.
Destroys the wxDataInputStream object.
\membersection{wxDataInputStream::BigEndianOrdered}
\func{void}{BigEndianOrdered}{\param{bool}{ be_order}}
If {\it be_order} is TRUE, all data will be read in big-endian
order, such as written by programs on a big endian architecture
(e.g. Sparc) or written by Java-Streams (which always use
big-endian order).
\membersection{wxDataInputStream::Read8}
\func{unsigned char}{Read8}{\void}
\func{wxUint8}{Read8}{\void}
Reads a single byte from the stream.
\membersection{wxDataInputStream::Read16}
\func{unsigned short}{Read16}{\void}
\func{wxUint16}{Read16}{\void}
Reads a 16 bit integer from the stream.
\membersection{wxDataInputStream::Read32}
\func{unsigned long}{Read32}{\void}
\func{wxUint32}{Read32}{\void}
Reads a 32 bit integer from the stream.
@@ -57,12 +87,6 @@ Reads a 32 bit integer from the stream.
Reads a double (IEEE encoded) from the stream.
\membersection{wxDataInputStream::ReadLine}
\func{wxString}{wxDataInputStream::ReadLine}{\void}
Reads a line from the stream. A line is a string which ends with \\n or \\r\\n.
\membersection{wxDataInputStream::ReadString}
\func{wxString}{wxDataInputStream::ReadString}{\void}
@@ -71,19 +95,32 @@ Reads a string from a stream. Actually, this function first reads a long integer
specifying the length of the string (without the last null character) and then
reads the string.
% ----------------------------------------------------------------------------
% wxDataOutputStream
% ----------------------------------------------------------------------------
\section{\class{wxDataOutputStream}}\label{wxdataoutputstream}
This class provides functions that write data types in a
portable way. So, a file written by an Intel processor can be read by a
Sparc or anything else.
This class provides functions that write binary data types in a
portable way. Data can be written in either big-endian or litte-endian
format, little-endian being the default on all architectures.
If you want to write data to text files (or streams) use
\helpref{wxTextOutputStream}{wxtextoutputstream} instead.
The << operator is overloaded and you can use this class like a standard
C++ iostream. See \helpref{wxDataInputStream}{wxdatainputstream} for its
usage and caveats.
See also \helpref{wxDataInputStream}{wxdatainputstream}.
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxDataOutputStream::wxDataOutputStream}\label{wxdataoutputstreamconstr}
\func{}{wxDataInputStream}{\param{wxOutputStream\&}{ stream}}
\func{}{wxDataOutputStream}{\param{wxOutputStream\&}{ stream}}
Constructs a datastream object from an output stream. Only read methods will
Constructs a datastream object from an output stream. Only write methods will
be available.
\wxheading{Parameters}
@@ -96,21 +133,30 @@ be available.
Destroys the wxDataOutputStream object.
\membersection{wxDataOutputStream::BigEndianOrdered}
\func{void}{BigEndianOrdered}{\param{bool}{ be_order}}
If {\it be_order} is TRUE, all data will be written in big-endian
order, e.g. for reading on a Sparc or from Java-Streams (which
always use big-endian order), otherwise data will be written in
little-endian order.
\membersection{wxDataOutputStream::Write8}
\func{void}{wxDataOutputStream::Write8}{{\param unsigned char }{i8}}
\func{void}{wxDataOutputStream::Write8}{{\param wxUint8 }{i8}}
Writes the single byte {\it i8} to the stream.
\membersection{wxDataOutputStream::Write16}
\func{void}{wxDataOutputStream::Write16}{{\param unsigned short }{i16}}
\func{void}{wxDataOutputStream::Write16}{{\param wxUint16 }{i16}}
Writes the 16 bit integer {\it i16} to the stream.
\membersection{wxDataOutputStream::Write32}
\func{void}{wxDataOutputStream::Write32}{{\param unsigned long }{i32}}
\func{void}{wxDataOutputStream::Write32}{{\param wxUint32 }{i32}}
Writes the 32 bit integer {\it i32} to the stream.
@@ -120,13 +166,6 @@ Writes the 32 bit integer {\it i32} to the stream.
Writes the double {\it f} to the stream using the IEEE format.
\membersection{wxDataOutputStream::WriteLine}
\func{void}{wxDataOutputStream::WriteLine}{{\param const wxString\& }{string}}
Writes {\it string} as a line. Depending on the operating system, it adds
$\backslash$n or $\backslash$r$\backslash$n.
\membersection{wxDataOutputStream::WriteString}
\func{void}{wxDataOutputStream::WriteString}{{\param const wxString\& }{string}}

BIN
docs/latex/wx/descent.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

BIN
docs/latex/wx/descent.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

View File

@@ -303,7 +303,7 @@ a code to the application. The function \helpref{wxDialog::EndModal}{wxdialogend
\wxheading{See also}
\helpref{wxWindow::GetReturnCode}{wxwindowgetreturncode}, \helpref{wxDialog::ShowModal}{wxdialogshowmodal},\rtfsp
\helpref{wxDialog::GetReturnCode}{wxdialoggetreturncode}, \helpref{wxDialog::ShowModal}{wxdialogshowmodal},\rtfsp
\helpref{wxDialog::EndModal}{wxdialogendmodal}
\membersection{wxDialog::SetTitle}\label{wxdialogsettitle}
@@ -341,12 +341,11 @@ Shows a modal dialog. Program flow does not return until the dialog has been dis
\wxheading{Return value}
The return value is the value set with \helpref{wxWindow::SetReturnCode}{wxwindowsetreturncode}.
The return value is the value set with \helpref{wxDialog::SetReturnCode}{wxdialogsetreturncode}.
\wxheading{See also}
\helpref{wxDialog::EndModal}{wxdialogendmodal},\rtfsp
\helpref{wxWindow::GetReturnCode}{wxwindowgetreturncode},\rtfsp
\helpref{wxWindow::SetReturnCode}{wxwindowsetreturncode}
\helpref{wxDialog:GetReturnCode}{wxdialoggetreturncode},\rtfsp
\helpref{wxDialog::SetReturnCode}{wxdialogsetreturncode}

View File

@@ -287,17 +287,9 @@ typedef enum {
Returns the word value of the expression.
\membersection{wxExpr::WriteLispExpr}\label{wxexprwritelistexpr}
\membersection{wxExpr::WriteClause}\label{wxexprwriteprologclause}
\func{void}{WriteLispExpr}{\param{ostream\&}{ stream}}
Writes the expression or clause to the given stream in LISP format.
Not normally needed, since the whole {\bf wxExprDatabase} will usually
be written at once. Lists are enclosed in parentheses will no commas.
\membersection{wxExpr::WritePrologClause}\label{wxexprwriteprologclause}
\func{void}{WritePrologClause}{\param{ostream\&}{ stream}}
\func{void}{WriteClause}{\param{FILE *}{ stream}}
Writes the clause to the given stream in Prolog format. Not normally needed, since
the whole {\bf wxExprDatabase} will usually be written at once. The format is:
@@ -306,7 +298,7 @@ full stop.
\membersection{wxExpr::WriteExpr}\label{wxexprwriteexpr}
\func{void}{WriteExpr}{\param{ostream\&}{ stream}}
\func{void}{WriteExpr}{\param{FILE *}{ stream}}
Writes the expression (not clause) to the given stream in Prolog
format. Not normally needed, since the whole {\bf wxExprDatabase} will
@@ -494,15 +486,9 @@ Reads in the given file, returning TRUE if successful.
Reads a Prolog database from the given string buffer, returning TRUE if
successful.
\membersection{wxExprDatabase::WriteLisp}\label{wxexprdatabasewritelisp}
\func{bool}{WriteLisp}{\param{ostream\& }{stream}}
Writes the database as a LISP-format file.
\membersection{wxExprDatabase::Write}\label{wxexprdatabasewrite}
\func{bool}{Write}{\param{ostream\& }{stream}}
\func{bool}{Write}{\param{FILE *}{stream}}
\func{bool}{Write}{\param{const wxString\&}{ filename}}

96
docs/latex/wx/filesys.tex Normal file
View File

@@ -0,0 +1,96 @@
%
% automatically generated by HelpGen from
% filesystem.tex at 21/Mar/99 23:00:52
%
\section{\class{wxFileSystem}}\label{wxfilesystem}
This class provides interface for opening files on different
file systems. It can handle absolute and/or local filenames.
It uses system of \helpref{handlers}{wxfilesystemhandler} to
provide access to user-defined virtual file systems.
\wxheading{Derived from}
wxObject
\wxheading{See Also}
\helpref{wxFileSystemHandler}{wxfilesystemhandler},
\helpref{wxFSFile}{wxfsfile},
\helpref{Overview}{fs}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxFileSystem::wxFileSystem}\label{wxfilesystemwxfilesystem}
\func{}{wxFileSystem}{\void}
Constructor.
\membersection{wxFileSystem::ChangePathTo}\label{wxfilesystemchangepathto}
\func{void}{ChangePathTo}{\param{const wxString\& }{location}, \param{bool }{is\_dir = FALSE}}
Sets the current location. {\it location} parameter passed to
\helpref{OpenFile}{wxfilesystemopenfile} is relative to this path.
{\bf Caution! } Unless {\it is\_dir} is TRUE the {\it location} parameter
is not directory name but the name of the file in this directory!! All these
commands change path to "dir/subdir/" :
\begin{verbatim}
ChangePathTo("dir/subdir/xh.htm");
ChangePathTo("dir/subdir", TRUE);
ChangePathTo("dir/subdir/", TRUE);
\end{verbatim}
\wxheading{Parameters}
\docparam{location}{the new location. Its meaning depends on value of {\it is\_dir}}
\docparam{is\_dir}{if TRUE {\it location} is new directory. If FALSE (default)
{\it location} is {\bf file in} the new directory.}
\wxheading{Example}
\begin{verbatim}
f = fs -> OpenFile("hello.htm"); // opens file 'hello.htm'
fs -> ChangePathTo("subdir/folder", TRUE);
f = fs -> OpenFile("hello.htm"); // opens file 'subdir/folder/hello.htm' !!
\end{verbatim}
\membersection{wxFileSystem::GetPath}\label{wxfilesystemgetpath}
\func{wxString}{GetPath}{\void}
Returns actual path (set by \helpref{ChangePathTo}{wxfilesystemchangepathto}).
\membersection{wxFileSystem::OpenFile}\label{wxfilesystemopenfile}
\func{wxFSFile*}{OpenFile}{\param{const wxString\& }{location}}
Opens file and returns pointer to \helpref{wxFSFile}{wxfsfile} object
or NULL if failed. It first tries to open the file in relative scope
(based on value passed to ChangePathTo() method) and then as an
absolute path.
\membersection{wxFileSystem::AddHandler}\label{wxfilesystemaddhandler}
\func{static void}{AddHandler}{\param{wxFileSystemHandler }{*handler}}
This static function adds new handler into the list of handlers.
The \helpref{handlers}{wxfilesystemhandler} provide access to virtual FS.
\wxheading{Note}
You can call:
\begin{verbatim}
wxFileSystem::AddHandler(new My_FS_Handler);
\end{verbatim}
This is because (a) AddHandler is a static method, and (b) the handlers
are deleted in wxFileSystem's destructor so that you don't have to
care about it.

121
docs/latex/wx/filesysh.tex Normal file
View File

@@ -0,0 +1,121 @@
%
% automatically generated by HelpGen from
% filesystemhandler.tex at 21/Mar/99 23:00:52
%
\section{\class{wxFileSystemHandler}}\label{wxfilesystemhandler}
wxFileSystemHandler (or derived classes to be exact) is used
to access virtual file systems. It's public interface consists
from two methods: \helpref{CanOpen}{wxfilesystemhandlercanopen}
and \helpref{OpenFile}{wxfilesystemhandleropenfile}.
It provides additional protected methods to simplify process
of opening the file : GetProtocol, GetLeftLocation, GetRightLocation,
GetAnchor, GetMimeTypeFromExt.
Please have a look at \helpref{overview}{fs} if you don't know how locations
are constructed.
\wxheading{Notes}
\begin{itemize}
\item The handlers are shared by all instances of wxFileSystem.
\item wxHTML library provides handlers for local files and HTTP or FTP protocol
\item The {\it location} parameter passed to OpenFile or CanOpen methods
is always {\bf absolute} path. You don't need to check the FS's current path!
\end{itemize}
\wxheading{Derived from}
wxObject
\wxheading{See also}
\helpref{wxFileSystem}{wxfilesystem},
\helpref{wxFSFile}{wxfsfile},
\helpref{Overview}{fs}
\membersection{wxFileSystemHandler::wxFileSystemHandler}\label{wxfilesystemhandlerwxfilesystemhandler}
\func{}{wxFileSystemHandler}{\void}
Constructor.
\membersection{wxFileSystemHandler::CanOpen}\label{wxfilesystemhandlercanopen}
\func{virtual bool}{CanOpen}{\param{const wxString\& }{location}}
Returns TRUE if the handler is able to open this file (this function doesn't
check whether the file exists or not, it only checks if it knows the protocol).
Example:
\begin{verbatim}
bool MyHand::CanOpen(const wxString& location)
{
return (GetProtocol(location) == "http");
}
\end{verbatim}
Must be overwriten in derived handlers.
\membersection{wxFileSystemHandler::OpenFile}\label{wxfilesystemhandleropenfile}
\func{virtual wxFSFile*}{OpenFile}{\param{wxFileSystem\& }{fs}, \param{const wxString\& }{location}}
Opens the file and returns wxFSFile pointer or NULL if failed.
Must be overwriten in derived handlers.
\wxheading{Parameters}
\docparam{fs}{Parent FS (the FS from that OpenFile was called). See ZIP handler
for details how to use it.}
\docparam{location}{The {\bf absolute} location of file.}
\membersection{wxFileSystemHandler::GetProtocol}\label{wxfilesystemhandlergetprotocol}
\constfunc{wxString}{GetProtocol}{\param{const wxString\& }{location}}
Returns protocol string extracted from {\it location}.
Example: GetProtocol("file:myzipfile.zip\#zip:index.htm") == "zip"
\membersection{wxFileSystemHandler::GetLeftLocation}\label{wxfilesystemhandlergetleftlocation}
\constfunc{wxString}{GetLeftLocation}{\param{const wxString\& }{location}}
Returns left location string extracted from {\it location}.
Example: GetLeftLocation("file:myzipfile.zip\#zip:index.htm") == "file:myzipfile.zip"
\membersection{wxFileSystemHandler::GetAnchor}\label{wxfilesystemhandlergetanchor}
\constfunc{wxString}{GetAnchor}{\param{const wxString\& }{location}}
Returns anchor if present in the location.
See \helpref{wxFSFile}{wxfsfilegetanchor} for details.
Example : GetAnchor("index.htm\#chapter2") == "chapter2"
{\bf Note:} anchor is NOT part of left location.
\membersection{wxFileSystemHandler::GetRightLocation}\label{wxfilesystemhandlergetrightlocation}
\constfunc{wxString}{GetRightLocation}{\param{const wxString\& }{location}}
Returns right location string extracted from {\it location}.
Example : GetRightLocation("file:myzipfile.zip\#zip:index.htm") == "index.htm"
\membersection{wxFileSystemHandler::GetMimeTypeFromExt}\label{wxfilesystemhandlergetmimetypefromext}
\func{wxString}{GetMimeTypeFromExt}{\param{const wxString\& }{location}}
Returns MIME type based on {\bf extension} of {\it location}. (While wxFSFile::GetMimeType
returns real MIME type - either extension-based or queried from HTTP)
Example : GetMimeTypeFromExt("index.htm") == "text/html"

70
docs/latex/wx/fs.tex Normal file
View File

@@ -0,0 +1,70 @@
\section{File Systems}\label{fs}
The wxHTML library uses a {\bf virtual file systems} mechanism
similar to the one used in Midnight Commander, Dos Navigator,
FAR or almost any modern file manager. (Do you remember? You can
press enter on ZIP file and its contents is displayed as if it
were a local directory...)
\wxheading{Classes}
Three classes are used in order to provide full VFS:
\begin{itemize}\itemsep=0pt
\item The \helpref{wxFSFile}{wxfsfile} class provides information
on opened file (name, input stream, mime type and anchor).
\item The \helpref{wxFileSystem}{wxfilesystem} class is the interface.
Its main methods are ChangePathTo() and OpenFile(). This class
is most often used by the end user.
\item The \helpref{wxFileSystemHandler}{wxfilesystemhandler} is the core
if VFS mechanism. You can derive your own handler and pass it to
wxFileSystem's AddHandler() method. In the new handler you only need to
overwrite OpenFile() and CanOpen() methods.
\end{itemize}
\wxheading{Locations}
Locations (aka filenames aka addresses) are constructed from 4 parts:
\begin{itemize}\itemsep=0pt
\item {\bf protocol} - handler can recognize if it is able to open a
file by checking its protocol. Examples are "http", "file" or "ftp".
\item {\bf right location} - is the name of file within the protocol.
In "http://www.wxwindows.org/index.html" the right location is "//www.wxwindows.org/index.html".
\item {\bf anchor} - anchor is optional and is usually not present.
In "index.htm\#chapter2" the anchor is "chapter2".
\item {\bf left location} - this is usually an empty string.
It is used by 'local' protocols such as ZIP.
See Combined Protocols paragraph for details.
\end{itemize}
\wxheading{Combined Protocols}
Left location pretends protocol in URL string.
It's not used by global protocols like HTTP but it's used
by local ones - for example you can see this address:
file:archives/cpp\_doc.zip\#zip:reference/fopen.htm\#syntax
In this example, protocol is "zip", left location is
"reference/fopen.htm", anchor is "syntax" and right location
is "file:archives/cpp_doc.zip". It is used by zip handler
to determine in what file this particular zip VFS is stored.
In fact there are two protocols used in this example: zip and file.
You can construct even more complicated addresses like this one:
http://www.archives.org/myarchive.zip\#zip:local/docs/cpp/stdio.zip\#zip:index.htm
In this example you access zip VFS stdio.zip stored in another zip (myarchive.zip)
which is at WWW.
\wxheading{File Systems Included in wxHTML}
\begin{enumerate}\itemsep=0pt
\item Local files
\item HTTP protocol
\item FTP protocol
\item .ZIP archives
\end{enumerate}

121
docs/latex/wx/fsfile.tex Normal file
View File

@@ -0,0 +1,121 @@
%
% automatically generated by HelpGen from
% fsfile.tex at 21/Mar/99 23:00:52
%
\section{\class{wxFSFile}}\label{wxfsfile}
This class represents single file opened by \helpref{wxFileSystem}{wxfilesystem}.
It provides more information than wx's input stream
(stream, filename, mime type, anchor).
{\bf Note:} Any pointer returned by wxFSFile's member is valid
only as long as wxFSFile object exits. For example call to GetStream()
doesn't {\it create} the stream but only returns the pointer to it. In
other words after 10 calls to GetStream() you'll obtain ten identical
pointers.
\wxheading{Derived from}
wxObject
\wxheading{See Also}
\helpref{wxFileSystemHandler}{wxfilesystemhandler},
\helpref{wxFileSystem}{wxfilesystem},
\helpref{Overview}{fs}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxFSFile::wxFSFile}\label{wxfsfilewxfsfile}
\func{}{wxFSFile}{\param{wxInputStream }{*stream}, \param{const wxString\& }{loc}, \param{const wxString\& }{mimetype}, \param{const wxString\& }{anchor}}
Constructor. You probably won't use it. See Notes for details.
\wxheading{Parameters}
\docparam{stream}{The input stream that will be used to access data}
\docparam{location}{The full location (aka filename) of the file}
\docparam{mimetype}{MIME type of this file. Mime type is either extension-based or HTTP Content-Type}
\docparam{anchor}{Anchor. See \helpref{GetAnchor()}{wxfsfilegetanchor} for details.}
If you aren't sure what do these params mean see description of GetXXXX()
functions.
\wxheading{Notes}
It is never used by end user but you'll need it if
you're writing own virtual FS. For example you may need something
similar to wxMemoryInputStream but because wxMemoryInputStream
doesn't free the memory when destroyed and thus passing memory stream
pointer into wxFSFile constructor would lead to memory leaks, you
can write your own class derived from wxFSFile :
\begin{verbatim}
class wxMyFSFile : public wxFSFile
{
private:
void *m_Mem;
public:
wxMyFSFile(.....)
~wxMyFSFile() {free(m_Mem);}
// of course dtor is virtual ;-)
};
\end{verbatim}
\membersection{wxFSFile::GetStream}\label{wxfsfilegetstream}
\constfunc{wxInputStream*}{GetStream}{\void}
Returns pointer to the stream. You can use the returned
stream to directly access data. You may suppose
that the stream provide Seek and GetSize functionality
(even in case of HTTP protocol which doesn't provide
this by default. wxHtml is using local cache to workaround
this and to speed up connection)
\membersection{wxFSFile::GetMimeType}\label{wxfsfilegetmimetype}
\constfunc{const wxString\&}{GetMimeType}{\void}
Returns MIME type of the content of this file. It is either
extension-based (see wxMimeTypesManager) or extracted from
HTTP protocol Content-Type header.
\membersection{wxFSFile::GetLocation}\label{wxfsfilegetlocation}
\constfunc{const wxString\&}{GetLocation}{\void}
Returns full location of the file, including path and protocol.
Examples :
\begin{verbatim}
http://www.wxwindows.org
http://www.ms.mff.cuni.cz/~vsla8348/wxhtml/archive.zip#zip:info.txt
file:/home/vasek/index.htm
relative-file.htm
\end{verbatim}
\membersection{wxFSFile::GetAnchor}\label{wxfsfilegetanchor}
\constfunc{const wxString\&}{GetAnchor}{\void}
Returns anchor (if present). The term of {\bf anchor} can be easily
explained using few examples:
\begin{verbatim}
index.htm#anchor /* 'anchor' is anchor */
index/wx001.htm /* NO anchor here! */
archive/main.zip#zip:index.htm#global /* 'global' */
archive/main.zip#zip:index.htm /* NO anchor here! */
\end{verbatim}
Usually anchor is presented only if mime type is 'text/html'.
But it may have some meaning with other files
(for example myanim.avi\#200 may refer to position in animation
or reality.wrl\#MyView may refer to predefined view in VRML)

View File

@@ -405,6 +405,27 @@ parameters are optional. However, it is recommended to pass a parent frame
parameter, or (in MS Windows or Motif) the wrong window frame may be brought to
the front when the dialog box is popped up.
\membersection{::wxCreateFileTipProvider}\label{wxcreatefiletipprovider}
\func{wxTipProvider *}{wxCreateFileTipProvider}{
\param{const wxString\& }{filename},
\param{size\_t }{currentTip}}
This function creates a \helpref{wxTipProvider}{wxtipprovider} which may be
used with \helpref{wxShowTip}{wxshowtip}.
\docparam{filename}{The name of the file containing the tips, one per line}
\docparam{currentTip}{The index of the first tip to show - normally this index
is remembered between the 2 program runs.}
\wxheading{See also:}
\helpref{Tips overview}{tipsoverview}
\wxheading{Include files}
<wx/tipdlg.h>
\membersection{::wxFileSelector}\label{wxfileselector}
\func{wxString}{wxFileSelector}{\param{const wxString\& }{message}, \param{const wxString\& }{default\_path = ""},\\
@@ -451,6 +472,33 @@ if (s)
<wx/filedlg.h>
\membersection{::wxGetNumberFromUser}\label{wxgetnumberfromuser}
\func{long}{wxGetNumberFromUser}{
\param{const wxString\& }{message},
\param{const wxString\& }{prompt},
\param{const wxString\& }{caption},
\param{long }{value},
\param{long }{min = 0},
\param{long }{max = 100},
\param{wxWindow *}{parent = NULL},
\param{const wxPoint\& }{pos = wxDefaultPosition}}
Shows a dialog asking the user for numeric input. The dialogs title is set to
{\it caption}, it contains a (possibly) multiline {\it message} above the
single line {\it prompt} and the zone for entering the number.
The number entered must be in the range {\it min}..{\it max} (both of which
should be positive) and {\it value} is the initial value of it. If the user
enters an invalid value or cancels the dialog, the function will return -1.
Dialog is centered on its {\it parent} unless an explicit position is given in
{\it pos}.
\wxheading{Include files}
<wx/textdlg.h>
\membersection{::wxGetTextFromUser}\label{wxgettextfromuser}
\func{wxString}{wxGetTextFromUser}{\param{const wxString\& }{message}, \param{const wxString\& }{caption = ``Input text"},\\
@@ -585,6 +633,33 @@ The symbols are not shown when the generic function is used.
<wx/msgdlg.h>
\membersection{::wxShowTip}\label{wxshowtip}
\func{bool}{wxShowTip}{
\param{wxWindow *}{parent},
\param{wxTipProvider *}{tipProvider},
\param{bool }{showAtStartup = TRUE}}
This function shows a "startup tip" to the user.
\docparam{parent}{The parent window for the modal dialog}
\docparam{tipProvider}{An object which is used to get the text of the tips.
It may be created with
\helpref{wxCreateFileTipProvider}{wxcreatefiletipprovider} function.}
\docparam{showAtStartup}{Should be TRUE if startup tips are shown, FALSE
otherwise. This is used as the initial value for "Show tips at startup"
checkbox which is shown in the tips dialog.}
\wxheading{See also:}
\helpref{Tips overview}{tipsoverview}
\wxheading{Include files}
<wx/tipdlg.h>
\section{GDI functions}\label{gdifunctions}
The following are relevant to the GDI (Graphics Device Interface).

BIN
docs/latex/wx/hello.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

BIN
docs/latex/wx/hello.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

View File

@@ -23,6 +23,7 @@ There are currently the following help controller classes defined:
\item wxWinHelpController, for controlling Windows Help.
\item wxExtHelpController, for controlling external browsers under Unix.
The default browser is Netscape Navigator.
\item wxHelpControllerHtml, using wxHTML to display help
\item wxXLPHelpController, for controlling wxHelp (from wxWindows 1).
\end{itemize}
@@ -37,6 +38,7 @@ wxHelpControllerBase\\
<wx/helpbase.h> (wxHelpControllerBase class)\\
<wx/helpwin.h> (Windows Help controller)\\
<wx/generic/helpext.h> (external HTML browser controller)
<wx/generic/helpwxht.h> (wxHTML based help controller)
<wx/generic/helpxlp.h> (wxHelp controller)
\latexignore{\rtfignore{\wxheading{Members}}}
@@ -95,7 +97,7 @@ If the help viewer is not running, runs it and displays the given section.
{\it WinHelp:} {\it sectionNo} is a context id.
{\it External HTML help:} wxExtHelpController implements {\it sectionNo} as an id in a map file, which is of the form:
{\it External HTML help/wxHTML based help:} wxExtHelpController and wxHelpControllerHtml implement {\it sectionNo} as an id in a map file, which is of the form:
\begin{verbatim}
0 wx.html ; Index
@@ -136,6 +138,31 @@ has opened another file.
Sets detailed viewer information. So far this is only relevant to wxExtHelpController.
\membersection{wxHelpController::SetFrameParameters}\label{wxhelpcontrollersetframeparameters}
\func{virtual void}{SetFrameParameters}
{\param{const wxString \& }{title},
\param{const wxSize \& }{size}, \param{const wxPoint \& }{pos = wxDefaultPosition},
\param{bool }{newFrameEachTime = FALSE}}
For the wxHelpControllerHtml, this allows the application to set the
default frame title, size and position for the frame. If the title
contains \%s, this will be replaced with the page title. If the
parammeter newFrameEachTime is set, the controller will open a new
help frame each time it is called. For all other help controllers this
function has no effect.
\membersection{wxHelpController::GetFrameParameters}\label{wxhelpcontrollergetframeparameters}
\func{virtual wxFrame *}{GetFrameParameters}
{\param{const wxSize * }{size = NULL}, \param{const wxPoint * }{pos = NULL},
\param{bool *}{newFrameEachTime = NULL}}
This reads the current settings for the help frame in the case of the
wxHelpControllerHtml, setting the frame size, position and
the newFrameEachTime parameters to the last values used. It also
returns the pointer to the last opened help frame. This can be used
for example, to automatically close the help frame on program
shutdown. For all other help controllers, this function does nothing
and just returns NULL.
\wxheading{Parameters}
\docparam{viewer}{This defaults to "netscape" for wxExtHelpController.}

226
docs/latex/wx/htcell.tex Normal file
View File

@@ -0,0 +1,226 @@
%
% automatically generated by HelpGen from
% htmlcell.tex at 21/Mar/99 22:45:23
%
\section{\class{wxHtmlCell}}\label{wxhtmlcell}
Internal data structure. It represents fragments of parsed HTML
page, so-called {\bf cell} - a word, picture, table, horizontal line and so on.
It is used by \helpref{wxHtmlWindow}{wxhtmlwindow} and
\helpref{wxHtmlWinParser}{wxhtmlwinparser} to represent HTML page in memory.
You can divide cells into two groups : {\it visible} cells with non-zero width and
height and {\it helper} cells (usually with zero width and height) that
perform special actions such as color or font change.
\wxheading{Derived from}
wxObject
\wxheading{See Also}
\helpref{Cells Overview}{cells},
\helpref{wxHtmlContainerCell}{wxhtmlcontainercell}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxHtmlCell::wxHtmlCell}\label{wxhtmlcellwxhtmlcell}
\func{}{wxHtmlCell}{\void}
Constructor.
\membersection{wxHtmlCell::SetParent}\label{wxhtmlcellsetparent}
\func{void}{SetParent}{\param{wxHtmlContainerCell }{*p}}
Sets parent container of this cell. This is called from
\helpref{wxHtmlContainerCell::InsertCell}{wxhtmlcontainercellinsertcell}.
\membersection{wxHtmlCell::GetParent}\label{wxhtmlcellgetparent}
\constfunc{wxHtmlContainerCell*}{GetParent}{\void}
Returns pointer to parent container.
\membersection{wxHtmlCell::GetPosX}\label{wxhtmlcellgetposx}
\constfunc{int}{GetPosX}{\void}
Returns X position within parent (the value is relative to parent's
upper left corner). The returned value is meaningful only if
parent's \helpref{Layout}{wxhtmlcelllayout} was called before!
\membersection{wxHtmlCell::GetPosY}\label{wxhtmlcellgetposy}
\constfunc{int}{GetPosY}{\void}
Returns Y position within parent (the value is relative to parent's
upper left corner). The returned value is meaningful only if
parent's \helpref{Layout}{wxhtmlcelllayout} was called before!
\membersection{wxHtmlCell::GetWidth}\label{wxhtmlcellgetwidth}
\constfunc{int}{GetWidth}{\void}
Returns width of the cell (m_Width member).
\membersection{wxHtmlCell::GetHeight}\label{wxhtmlcellgetheight}
\constfunc{int}{GetHeight}{\void}
Returns height of the cell (m_Height member).
\membersection{wxHtmlCell::GetDescent}\label{wxhtmlcellgetdescent}
\constfunc{int}{GetDescent}{\void}
Returns descent value of the cell (m_Descent member). See explanation:
\image{}{descent.bmp}
\membersection{wxHtmlCell::GetLink}\label{wxhtmlcellgetlink}
\constfunc{virtual wxString}{GetLink}{\param{int }{x = 0}, \param{int }{y = 0}}
Returns hypertext link if associated with this cell or empty string otherwise.
(Note : this makes sense only for visible tags).
\wxheading{Parameters}
\docparam{x,y}{Coordinates of position where the user pressed mouse button.
These coordinates are used e.g. by COLORMAP. Values are relative to the
upper left corner of THIS cell (i.e. from 0 to m_Width or m_Height)}
\membersection{wxHtmlCell::GetNext}\label{wxhtmlcellgetnext}
\constfunc{wxHtmlCell*}{GetNext}{\void}
Returns pointer to the next cell in list (see htmlcell.h if you're
interested in details).
\membersection{wxHtmlCell::SetPos}\label{wxhtmlcellsetpos}
\func{void}{SetPos}{\param{int }{x}, \param{int }{y}}
Sets cell's position within parent container.
\membersection{wxHtmlCell::SetLink}\label{wxhtmlcellsetlink}
\func{void}{SetLink}{\param{const wxString\& }{link}}
Sets the hypertext link asocciated with this cell. (Default value
is wxEmptyString (no link))
\membersection{wxHtmlCell::SetNext}\label{wxhtmlcellsetnext}
\func{void}{SetNext}{\param{wxHtmlCell }{*cell}}
Sets the next cell in the list. This shouldn't be called by user - it is
to be used only by \helpref{wxHtmlContainerCell::InsertCell}{wxhtmlcontainercellinsertcell}
\membersection{wxHtmlCell::Layout}\label{wxhtmlcelllayout}
\func{virtual void}{Layout}{\param{int }{w}}
This method performs 2 actions:
\begin{enumerate}
\item adjusts cell's width according to the fact that maximal possible width is {\it w}.
(this has sense when working with horizontal lines, tables etc.)
\item prepares layout (=fill-in m\_PosX, m\_PosY (and sometimes m\_Height) members)
based on actual width {\it w}
\end{enumerate}
It must be called before displaying cells structure because
m\_PosX and m\_PosY are undefined (or invalid)
before calling Layout.
\membersection{wxHtmlCell::Draw}\label{wxhtmlcelldraw}
\func{virtual void}{Draw}{\param{wxDC\& }{dc}, \param{int }{x}, \param{int }{y}, \param{int }{view\_y1}, \param{int }{view\_y2}}
Renders the cell.
\wxheading{Parameters}
\docparam{dc}{Device context to which the cell is to be drawn}
\docparam{x,y}{Coordinates of parent's upper left corner (origin). You must
add this to m\_PosX,m\_PosY when passing coordinates to dc's methods
Example : {\tt dc -> DrawText("hello", x + m\_PosX, y + m\_PosY)}}
\docparam{view_y1}{y-coord of the first line visible in window. This is
used to optimize rendering speed}
\docparam{view_y2}{y-coord of the last line visible in window. This is
used to optimize rendering speed}
\membersection{wxHtmlCell::DrawInvisible}\label{wxhtmlcelldrawinvisible}
\func{virtual void}{DrawInvisible}{\param{wxDC\& }{dc}, \param{int }{x}, \param{int }{y}}
This method is called instead of \helpref{Draw}{wxhtmlcelldraw} when the
cell is certainly out of the screen (and thus invisible). This is not
nonsense - some tags (like \helpref{wxHtmlColourCell}{wxhtmlcolourcell}
or font setter) must be drawn even if they are invisible!
\wxheading{Parameters}
\docparam{dc}{Device context to which the cell is to be drawn}
\docparam{x,y}{Coordinates of parent's upper left corner. You must
add this to m\_PosX,m\_PosY when passing coordinates to dc's methods
Example : {\tt dc -> DrawText("hello", x + m\_PosX, y + m\_PosY)}}
\membersection{wxHtmlCell::Find}\label{wxhtmlcellfind}
\func{virtual const wxHtmlCell*}{Find}{\param{int }{condition}, \param{const void* }{param}}
Returns pointer to itself if this cell matches condition (or if any of the cells
following in the list matches), NULL otherwise.
(In other words if you call top-level container's Find it will
return pointer to the first cell that matches the condition)
It is recommended way how to obtain pointer to particular cell or
to cell of some type (e.g. wxHtmlAnchorCell reacts on
HTML_COND_ISANCHOR condition)
\wxheading{Parameters}
\docparam{condition}{Unique integer identifier of condition}
\docparam{param}{Optional parameters}
\wxheading{Defined conditions}
\begin{twocollist}
\twocolitem{{\bf HTML_COND_ISANCHOR}}{Finds particular anchor.
{\it param} is pointer to wxString with name of the anchor.}
\twocolitem{{\bf HTML_COND_USER}}{User-defined conditions start
from this number}
\end{twocollist}
\membersection{wxHtmlCell::OnMouseClick}\label{wxhtmlcellonmouseclick}
\func{virtual void}{OnMouseClick}{\param{wxWindow* }{parent}, \param{int }{x}, \param{int }{y}, \param{bool }{left}, \param{bool }{middle}, \param{bool }{right}}
This function is simple event handler. Each time user clicks mouse button over a cell
within \helpref{wxHtmlWindow}{wxhtmlwindow} this method of that cell is called. Default behavior is
that it calls \helpref{wxHtmlWindow::LoadPage}{wxhtmlwindowloadpage}.
\wxheading{Note}
If you need more "advanced" behaviour (for example you'd like to catch mouse movement events or
key events or whatsoever) you should use wxHtmlBinderCell instead.
\wxheading{Parameters}
\docparam{parent}{parent window (always wxHtmlWindow!)}
\docparam{x, y}{coordinates of mouse click (this is relative to cell's origin}
\docparam{left, middle, right}{boolean flags for mouse buttons. TRUE if the left/middle/right
button is pressed, FALSE otherwise}

34
docs/latex/wx/htcolor.tex Normal file
View File

@@ -0,0 +1,34 @@
%
% automatically generated by HelpGen from
% htmlcolourcell.tex at 14/Mar/99 20:13:37
%
\section{\class{wxHtmlColourCell}}\label{wxhtmlcolourcell}
This cell changes color of either background or foreground.
\wxheading{Derived from}
\helpref{wxHtmlCell}{wxhtmlcell}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxHtmlColourCell::wxHtmlColourCell}\label{wxhtmlcolourcellwxhtmlcolourcell}
\func{}{wxHtmlColourCell}{\param{wxColour }{clr}, \param{int }{flags = HTML\_CLR\_FOREGROUND}}
Constructor.
\wxheading{Parameters}
\docparam{clr}{The color}
\docparam{flags}{Can be one of following:
\begin{twocollist}
\twocolitem{{\bf HTML\_CLR\_FOREGROUND}}{change color of text}
\twocolitem{{\bf HTML\_CLR\_BACKGROUND}}{change background color}
\end{twocollist}
}

239
docs/latex/wx/htcontnr.tex Normal file
View File

@@ -0,0 +1,239 @@
%
% automatically generated by HelpGen from
% htmlcontainercell.tex at 21/Mar/99 22:45:23
%
\section{\class{wxHtmlContainerCell}}\label{wxhtmlcontainercell}
wxHtmlContainerCell class an implementation of a cell that may
contain more cells in it. It is heavily used in the wxHTML layout algorithm.
\wxheading{Derived from}
\helpref{wxHtmlCell}{wxhtmlcell}
\wxheading{See Also}
\helpref{Cells Overview}{cells}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxHtmlContainerCell::wxHtmlContainerCell}\label{wxhtmlcontainercellwxhtmlcontainercell}
\func{}{wxHtmlContainerCell}{\param{wxHtmlContainerCell }{*parent}}
Constructor. {\it parent} is pointer to parent container or NULL.
\membersection{wxHtmlContainerCell::InsertCell}\label{wxhtmlcontainercellinsertcell}
\func{void}{InsertCell}{\param{wxHtmlCell }{*cell}}
Inserts new cell into the container.
\membersection{wxHtmlContainerCell::SetAlignHor}\label{wxhtmlcontainercellsetalignhor}
\func{void}{SetAlignHor}{\param{int }{al}}
Sets container's {\it horizontal alignment}. During \helpref{Layout}{wxhtmlcelllayout}
each line is aligned according to {\it al} value.
\wxheading{Parameters}
\docparam{al}{new horizontal alignment. May be one of these values:
\begin{twocollist}
\twocolitem{{\bf HTML\_ALIGN\_LEFT}}{lines are left-aligned (default)}
\twocolitem{{\bf HTML\_ALIGN\_CENTER\_H}}{lines are centered}
\twocolitem{{\bf HTML\_ALIGN\_RIGHT}}{lines are right-aligned}
\end{twocollist}
}
\membersection{wxHtmlContainerCell::GetAlignHor}\label{wxhtmlcontainercellgetalignhor}
\constfunc{int}{GetAlignHor}{\void}
Returns container's horizontal alignment.
\membersection{wxHtmlContainerCell::SetAlignVer}\label{wxhtmlcontainercellsetalignver}
\func{void}{SetAlignVer}{\param{int }{al}}
Sets container's {\it vertical alignment}. This is per-line alignment!
\wxheading{Parameters}
\docparam{al}{new vertical alignment. May be one of these values:
\begin{twocollist}
\twocolitem{{\bf HTML\_ALIGN\_BOTTOM}}{cells are over the line (default)}
\twocolitem{{\bf HTML\_ALIGN\_CENTER\_V}}{cells are centered on line}
\twocolitem{{\bf HTML\_ALIGN\_TOP}}{cells are under the line}
\end{twocollist}
\image{}{alignv.bmp}
}
\membersection{wxHtmlContainerCell::GetAlignVer}\label{wxhtmlcontainercellgetalignver}
\constfunc{int}{GetAlignVer}{\void}
Returns container's vertical alignment.
\membersection{wxHtmlContainerCell::SetIndent}\label{wxhtmlcontainercellsetindent}
\func{void}{SetIndent}{\param{int }{i}, \param{int }{what}, \param{int }{units = HTML\_UNITS\_PIXELS}}
Sets indentation (free space between borders of container and subcells).
\wxheading{Parameters}
\docparam{i}{Indentation value.}
\docparam{what}{Determines which of the 4 borders we're setting. It is OR
combination of following constants:
\begin{twocollist}
\twocolitem{{\bf HTML\_INDENT\_TOP}}{top border}
\twocolitem{{\bf HTML\_INDENT\_BOTTOM}}{bottom}
\twocolitem{{\bf HTML\_INDENT\_LEFT}}{left}
\twocolitem{{\bf HTML\_INDENT\_RIGHT}}{right}
\twocolitem{{\bf HTML\_INDENT\_HORIZONTAL}}{left and right}
\twocolitem{{\bf HTML\_INDENT\_VERTICAL}}{top and bottom}
\twocolitem{{\bf HTML\_INDENT\_ALL}}{all 4 borders}
\end{twocollist}
\image{}{indent.bmp}
}
\docparam{units}{Units of {\it i}. This parameter affects interpretation of {\it} value.
\begin{twocollist}
\twocolitem{{\bf HTML\_UNITS\_PIXELS}}{{\it i} is number of pixels}
\twocolitem{{\bf HTML\_UNITS\_PERCENT}}{{\it i} is interpreted as percents of width
of parent container}
\end{twocollist}
}
\membersection{wxHtmlContainerCell::GetIndent}\label{wxhtmlcontainercellgetindent}
\constfunc{int}{GetIndent}{\param{int }{ind}}
Returns the indentation. {\it ind} is one of the {\bf HTML\_INDENT\_*} constants.
{\bf Note:} You must call \helpref{GetIndentUnits}{wxhtmlcontainercellgetindentunits}
with same {\it ind} parameter in order to correctly interpret the returned integer value.
It is NOT always in pixels!
\membersection{wxHtmlContainerCell::GetIndentUnits}\label{wxhtmlcontainercellgetindentunits}
\constfunc{int}{GetIndentUnits}{\param{int }{ind}}
Returns units of intentation value for {\it ind} where {\it ind} is one
of the {\bf HTML\_INDENT\_*} constants.
\membersection{wxHtmlContainerCell::SetAlign}\label{wxhtmlcontainercellsetalign}
\func{void}{SetAlign}{\param{const wxHtmlTag\& }{tag}}
Sets container's alignment (both horizontal and vertical) according to
the values stored in {\it tag}. (Tags {\tt ALIGN} parameter is extracted.) In fact
it is only a front-end to \helpref{SetAlignHor}{wxhtmlcontainercellsetalignhor}
and \helpref{SetAlignVer}{wxhtmlcontainercellsetalignver}.
\membersection{wxHtmlContainerCell::SetWidthFloat}\label{wxhtmlcontainercellsetwidthfloat}
\func{void}{SetWidthFloat}{\param{int }{w}, \param{int }{units}}
\func{void}{SetWidthFloat}{\param{const wxHtmlTag\& }{tag}}
Sets floating width adjustment.
Normal behaviour of container is that it's width is same as width of
parent container (and thus you can have only one sub-container per line).
You can change this by setting FWA.
\wxheading{Parameters}
\docparam{w}{Width of the container. If the value is negative it means
complement to full width of parent container (e.g.
{\tt SetWidthFloat(-50, HTML\_UNITS\_PIXELS)} sets the width
of container to parent's width minus 50 pixels. This is useful when
creating tables - you can call SetWidthFloat(50) and SetWidthFloat(-50))}
\docparam{units}{Units of {\it w} This parameter affects interpretation of {\it} value.
\begin{twocollist}
\twocolitem{{\bf HTML\_UNITS\_PIXELS}}{{\it w} is number of pixels}
\twocolitem{{\bf HTML\_UNITS\_PERCENT}}{{\it w} is interpreted as percents of width
of parent container}
\end{twocollist}
}
\docparam{tag}{In the second version of method, {\it w} and {\it units}
info is extracted from tag's {\tt WIDTH} parameter.}
\membersection{wxHtmlContainerCell::SetMinHeight}\label{wxhtmlcontainercellsetminheight}
\func{void}{SetMinHeight}{\param{int }{h}, \param{int }{align = HTML_ALIGN_TOP}}
Sets minimal height of the container.
(When container's \helpref{Layout}{wxhtmlcelllayout} is called, m_Height
is set depending on layout of subcells to the height of area covered
by layouted subcells. Call to this method guarantees you that the height
of container is never smaller than {\it h} - even if the subcells cover
much smaller area.)
\wxheading{Parameters}
\docparam{h}{The minimal height.}
\docparam{align}{If height of the container is lower than min. height, empty space must be inserted
somewhere in order to ensure minimal height. This parameter is one of {\bf HTML_ALIGN_TOP,
HTML_ALIGN_BOTTOM, HTML_ALIGN_CENTER} constants. It refers to the {\it contents}, not to the
empty place!}
\membersection{wxHtmlContainerCell::GetMaxLineWidth}\label{wxhtmlcontainercellgetmaxlinewidth}
\constfunc{int}{GetMaxLineWidth}{\void}
Returns width of widest line (note : this may be more than GetWidth()!!
E.g. if you have 640x480 image and the wxHtmlWindow is only 100x100...)
Call to this method is valid only after calling \helpref{Layout}{wxhtmlcelllayout}
\membersection{wxHtmlContainerCell::SetBackgroundColour}\label{wxhtmlcontainercellsetbackgroundcolour}
\func{void}{SetBackgroundColour}{\param{const wxColour\& }{clr}}
Sets background color for this container.
\membersection{wxHtmlContainerCell::SetBorder}\label{wxhtmlcontainercellsetborder}
\func{void}{SetBorder}{\param{const wxColour\& }{clr1}, \param{const wxColour\& }{clr2}}
Sets border (frame) colours. Border is rectangle around the container.
\wxheading{Parameters}
\docparam{clr1}{Color of top and left lines}
\docparam{clr2}{Color of bottom and right lines}
\membersection{wxHtmlContainerCell::GetFirstCell}\label{wxhtmlcontainercellgetfirstcell}
\func{wxHtmlCell*}{GetFirstCell}{\void}
Returns pointer to the first cell in the list.
You can then use wxHtmlCell's GetNext method to obtain pointer to the next
cell in list.
{\bf Note} : This shouldn't be used by the end user. If you need some way of
finding particular cell in the list, try \helpref{Find}{wxhtmlcellfind} method
instead.

View File

@@ -0,0 +1,58 @@
%
% automatically generated by HelpGen from
% htmlfilter.tex at 29/Mar/99 18:35:09
%
\section{\class{wxHtmlFilter}}\label{wxhtmlfilter}
This class is input filter for \helpref{wxHtmlWindow}{wxhtmlwindow}.
It allows you to read and display files of different file formats.
\wxheading{Derived from}
wxObject
\wxheading{See Also}
\helpref{Overview}{filters}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxHtmlFilter::wxHtmlFilter}\label{wxhtmlfilterwxhtmlfilter}
\func{}{wxHtmlFilter}{\void}
Constructor.
\membersection{wxHtmlFilter::CanRead}\label{wxhtmlfiltercanread}
\func{bool}{CanRead}{\param{const wxFSFile\& }{file}}
Returns TRUE if this filter is capable of reading file {\it file}.
Example:
\begin{verbatim}
bool MyFilter::CanRead(const wxFSFile& file)
{
return (file.GetMimeType() == "application/x-ugh");
}
\end{verbatim}
\membersection{wxHtmlFilter::ReadFile}\label{wxhtmlfilterreadfile}
\func{wxString}{ReadFile}{\param{const wxFSFile\& }{file}}
Reads the file and returns string with HTML document.
Example:
\begin{verbatim}
wxString MyImgFilter::ReadFile(const wxFSFile& file)
{
return "<html><body><img src=\"" +
file.GetLocation() +
"\"></body></html>";
}
\end{verbatim}

142
docs/latex/wx/hthelpct.tex Normal file
View File

@@ -0,0 +1,142 @@
%
% automatically generated by HelpGen from
% htmlhelp.h at 02/May/99 19:58:53
%
\section{\class{wxHtmlHelpController}}\label{wxhtmlhelpcontroller}
{\bf WARNING! This help controller has an API incompatible with wxWindows
wxHelpController!}
This help controller provides easy way how to display HTML help in your
application (see {\it test} sample). Whole help system is based on {\bf books}
(see \helpref{AddBook}{wxhtmlhelpcontrolleraddbook}). A book is logical
part of documentation (for example "User's Guide" or "Programmer's Guide" or
"C++ Reference" or "wxWindows Reference"). Help controller can handle as
many books as you want.
wxHTML uses Microsoft's HTML Help Workshop project files (.hhp, .hhk, .hhc) as its
native format. The file format is described \helpref{here}{helpformat}.
Have a look at docs/html/ directory where sample project files are stored.
You can use tex2rtf to generate MHHW projects (see wxHTML homepage for details).
In order to use the controller in your application under Windows you must
have following line in your .rc file:
\begin{verbatim}
#include "wx/html/msw/wxhtml.rc"
\end{verbatim}
\wxheading{Derived from}
wxEvtHandler
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxHtmlHelpController::wxHtmlHelpController}\label{wxhtmlhelpcontrollerwxhtmlhelpcontroller}
\func{}{wxHtmlHelpController}{\void}
Constructor.
\membersection{wxHtmlHelpController::SetTitleFormat}\label{wxhtmlhelpcontrollersettitleformat}
\func{void}{SetTitleFormat}{\param{const wxString\& }{format}}
Sets format of title of the frame. Must contain exactly one "\%s"
(for title of displayed HTML page).
\membersection{wxHtmlHelpController::SetTempDir}\label{wxhtmlhelpcontrollersettempdir}
\func{void}{SetTempDir}{\param{const wxString\& }{path}}
Sets path for storing temporary files (cached binary versions of index and contents files. These binary
forms are much faster to read.) Default value is empty string (empty string means
that no cached data are stored). Note that these files are NOT
deleted when program exits!
\membersection{wxHtmlHelpController::AddBook}\label{wxhtmlhelpcontrolleraddbook}
\func{bool}{AddBook}{\param{const wxString\& }{book}, \param{bool }{show_wait_msg}}
Adds book (\helpref{.hhp file}{helpformat} - HTML Help Workshop project file) into the list of loaded books.
This must be called at least once before displaying any help.
If {\it show_wait_msg} is TRUE then a decorationless window with progress message is displayed.
\membersection{wxHtmlHelpController::Display}\label{wxhtmlhelpcontrollerdisplay}
\func{void}{Display}{\param{const wxString\& }{x}}
Displays page {\it x}. This is THE important function - it is used to display
the help in application.
You can specify the page in many ways:
\begin{itemize}
\item as direct filename of HTML document
\item as chapter name (from contents) or as a book name
\item as some word from index
\item even as any word (will be searched)
\end{itemize}
Looking for the page runs in these steps:
\begin{enumerate}
\item try to locate file named x (if x is for example "doc/howto.htm")
\item try to open starting page of book named x
\item try to find x in contents (if x is for example "How To ...")
\item try to find x in index (if x is for example "How To ...")
\item switch to Search panel and start searching
\end{enumerate}
\func{void}{Display}{\param{const int }{id}}
This alternative form is used to search help contents by numeric IDs.
\membersection{wxHtmlHelpController::DisplayContents}\label{wxhtmlhelpcontrollerdisplaycontents}
\func{void}{DisplayContents}{\void}
Displays help window and focuses contents panel.
\membersection{wxHtmlHelpController::DisplayIndex}\label{wxhtmlhelpcontrollerdisplayindex}
\func{void}{DisplayIndex}{\void}
Displays help window and focuses index panel.
\membersection{wxHtmlHelpController::KeywordSearch}\label{wxhtmlhelpcontrollerkeywordsearch}
\func{bool}{KeywordSearch}{\param{const wxString\& }{keyword}}
Displays help window, focuses search panel and starts searching.
Returns TRUE if the keyword was found.
IMPORTANT! KeywordSearch searches only pages listed in .htc file(s)!
(you should have all pages in contents file...)
\membersection{wxHtmlHelpController::UseConfig}\label{wxhtmlhelpcontrolleruseconfig}
\func{void}{UseConfig}{\param{wxConfigBase* }{config}, \param{const wxString\& }{rootpath = wxEmptyString}}
Associates {\it config} object with the controller.
If there is associated config object, wxHtmlHelpController automatically
reads and writes settings (including wxHtmlWindow's settings) when needed.
The only thing you must do is create wxConfig object and call UseConfig.
\membersection{wxHtmlHelpController::ReadCustomization}\label{wxhtmlhelpcontrollerreadcustomization}
\func{void}{ReadCustomization}{\param{wxConfigBase* }{cfg}, \param{wxString }{path = wxEmptyString}}
Reads controllers setting (position of window etc.)
\membersection{wxHtmlHelpController::WriteCustomization}\label{wxhtmlhelpcontrollerwritecustomization}
\func{void}{WriteCustomization}{\param{wxConfigBase* }{cfg}, \param{wxString }{path = wxEmptyString}}
Stores controllers setting (position of window etc.)

View File

@@ -0,0 +1,82 @@
\subsection{Cells and Containers}\label{cells}
This article describes mechanism used by
\helpref{wxHtmlWinParser}{wxhtmlwinparser} and
\helpref{wxHtmlWindow}{wxhtmlwindow} to parse and display HTML documents.
\wxheading{Cells}
You can divide any text (or HTML) into small fragments. Let's call these
fragments {\bf cells}. Cell is for example one word, horizontal line, image
or any other part of document. Each cell has width and height (except special
"magic" cells with zero dimensions - e.g. colour changers or font changers).
See \helpref{wxHtmlCell}{wxhtmlcell}.
\wxheading{Containers}
Container is kind of cell that may contain sub-cells. Its size depends
on number and sizes of its sub-cells (and also depends on width of window).
See \helpref{wxHtmlContainerCell}{wxhtmlcontainercell},
\helpref{wxHtmlCell::Layout}{wxhtmlcelllayout}.
\begin{comment}
% Bitmap is corrupt!
This image shows you cells and containers:
\image{}{contbox.bmp}
\end{comment}
\wxheading{Using Containers in Tag Handler}
\helpref{wxHtmlWinParser}{wxhtmlwinparser} provides a user-friendly way
of managing containers. It's based on the idea of opening and closing containers.
Use \helpref{OpenContainer}{wxhtmlwinparseropencontainer} to open new
a container {\it within an already opened container}. This new container is a
{\it sub-container} of the old one. (If you want to create a new container with
the same depth level you can call {\tt CloseContainer(); OpenContainer();}.)
Use \helpref{CloseContaier}{wxhtmlwinparserclosecontainer} to close the
container. This doesn't create a new container with same depth level but
it returns "control" to the parent container.
\begin{comment}
% Bitmap corrupt!
See explanation:
\image{}{cont.bmp}
\end{comment}
It's clear there must be same number of calls to
OpenContainer as to CloseContainer...
\wxheading{Example}
This code creates a new paragraph (container at same depth level)
with "Hello, world!":
\begin{verbatim}
m_WParser -> CloseContainer();
c = m_WParser -> OpenContainer();
m_WParser -> AddWord("Hello, ");
m_WParser -> AddWord("world!");
m_WParser -> CloseContainer();
m_WParser -> OpenContainer();
\end{verbatim}
\begin{comment}
% Bitmap corrupt!
and here is image of the situation:
\image{}{hello.bmp}
\end{comment}
You can see that there was opened container before running the code. We closed
it, created our own container, then closed our container and opened
new container. The result was that we had {\it same depth level} after
executing. This is general rule that should be followed by tag handlers:
leave depth level of containers unmodified (in other words, number of
OpenContainer and CloseContainer calls should be same within \helpref{HandleTag}{wxhtmltaghandlerhandletag}'s body).

View File

@@ -0,0 +1,10 @@
\membersection{Input Filters}\label{filters}
The wxHTML library provides a mechanism for reading and displaying
files of many different file formats.
\helpref{wxHtmlWindow::LoadPage}{wxhtmlwindowloadpage} can load not
only HTML files but any known file. To make a file type known to wxHtmlWindow
you must create a \helpref{wxHtmlFilter}{wxhtmlfilter} filter and
register it using \helpref{wxHtmlWindow::AddFilter}{wxhtmlwindowaddfilter}.

147
docs/latex/wx/htmlhand.tex Normal file
View File

@@ -0,0 +1,147 @@
\membersection{Tag Handlers}\label{handlers}
wxHTML library provides architecture of pluginable {\it tag handlers}.
Tag handler is class that understands particular HTML tag (or tags) and is
able to interpret it.
\helpref{wxHtmlWinParser}{wxhtmlwinparser} has static table of {\bf modules}.
Each module contains one or more tag handlers. Each time new wxHtmlWinParser
object is constructed all modules are scanned and handlers are added
to wxHtmlParser's list of available handlers (note : wxHtmlParser's list
is non-static).
\wxheading{How it works}
Common tag handler's \helpref{HandleTag}{wxhtmltaghandlerhandletag} method
works in four steps:
\begin{enumerate}
\item Save state of parent parser into local variables
\item Change parser state according to tag's params
\item Parse text between the tag and paired ending tag (if present)
\item Restore original parser state
\end{enumerate}
See \helpref{wxHtmlWinParser}{wxhtmlwinparser} for methods for modifying
parser's state. In general you can do things like opening/closing containers,
changing colors, fonts etc.
\wxheading{Providing own tag handlers}
You should create new .cpp file and place following lines into it:
\begin{verbatim}
#include <mod_templ.h>
#include <forcelink.h>
FORCE_LINK_ME(yourmodulefilenamewithoutcpp)
\end{verbatim}
Then you must define handlers and one module.
\wxheading{Tag handlers}
The handler is derived from \helpref{wxHtmlWinTagHandler}{wxhtmlwintaghandler}
(or directly from \helpref{wxHtmlTagHandler}{wxhtmltaghandler})
You can use set of macros to define the handler (see src/mod\_*.cpp files
for details). Handler definition must start with {\bf TAG\_HANDLER\_BEGIN} macro
and end with {\bf TAG\_HANDLER\_END} macro. I strongly recommend to have a look
at {\it include/wxhtml/mod\_templ.h} file. Otherwise you won't understand
the structure of macros... See macros reference:
{\bf TAG\_HANDLER\_BEGIN}({\it name}, {\it tags})
Starts handler definition. {\it name} is handler identifier (in fact
part of class name), {\it tags} is string containing list of tags
supported by this handler (in uppercase). This macro derives new class from
wxHtmlWinTagHandler and implements it's
\helpref{GetSupportedTags}{wxhtmltaghandlergetsupportedtags} method.
Example: TAG\_HANDLER\_BEGIN(FONTS, "B,I,U,T")
{\bf TAG\_HANDLER\_VARS}
This macro starts block of variables definitions. (Variables are identical
to class attributes.) Example:
\begin{verbatim}
TAG_HANDLER_BEGIN(VARS_ONLY, "CRAZYTAG")
TAG_HANDLER_VARS
int my_int_var;
wxString something_else;
TAG_HANDLER_END(VARS_ONLY)
\end{verbatim}
This macro is used only in rare cases.
{\bf TAG\_HANDLER\_CONSTR}({\it name})
This macro supplies object constructor. {\it name} is same name as the one
from TAG\_HANDLER\_BEGIN macro. Body of constructor follow after
this macro (you must use { and } ). Example:
\begin{verbatim}
TAG_HANDLER_BEGIN(VARS2, "CRAZYTAG")
TAG_HANDLER_VARS
int my_int_var;
TAG_HANDLER_CONSTR(vars2)
{ // !!!!!!
my_int_var = 666;
} // !!!!!!
TAG_HANDLER_END(VARS2)
\end{verbatim}
Never used in wxHTML :-)
{\bf TAG\_HANDLER\_PROC}({\it varib})
This is very important macro. It defines \helpref{HandleTag}{wxhtmltaghandlerhandletag}
method. {\it varib} is name of parameter passed to the method, usually
{\it tag}. Body of method follows after this macro.
Note than you must use { and } ! Example:
\begin{verbatim}
TAG_HANDLER_BEGIN(TITLE, "TITLE")
TAG_HANDLER_PROC(tag)
{
printf("TITLE found...\n");
}
TAG_HANDLER_END(TITLE)
\end{verbatim}
{\bf TAG\_HANDLER\_END}({\it name})
Ends definition of tag handler {\it name}.
\wxheading{Tags Modules}
You can use set of 3 macros TAGS\_MODULE\_BEGIN, TAGS\_MODULE\_ADD and
TAGS\_MODULE\_END to inherit new module from
\helpref{wxHtmlTagsModule}{wxhtmltagsmodule} and to create instance of it.
See macros reference:
{\bf TAGS\_MODULE\_BEGIN}({\it modname})
Begins module definition. {\it modname} is part of class name and must
be unique.
{\bf TAGS\_MODULE\_ADD}({\it name})
Adds the handler to this module. {\it name} is the identifier from
TAG\_HANDLER\_BEGIN.
{\bf TAGS\_MODULE\_END}({\it modname})
Ends the definition of module.
{\bf Example:}
\begin{verbatim}
TAGS_MODULE_BEGIN(Examples)
TAGS_MODULE_ADD(VARS_ONLY)
TAGS_MODULE_ADD(VARS2)
TAGS_MODULE_ADD(TITLE)
TAGS_MODULE_END(Examples)
\end{verbatim}

View File

@@ -0,0 +1,82 @@
\membersection{Help Files Format}\label{helpformat}
wxHTML library uses a reduced version of MS HTML Workshop format.
(See \helpref{wxHtmlHelpController}{wxhtmlhelpcontroller} for help controller description.)
A {\bf book} consists of three files : header file, contents file and index file.
\wxheading{Header file (.hhp)}
Header file must contain these lines (and may contain additional lines which are ignored) :
\begin{verbatim}
Contents file=@filename.hhc@
Index file=@filename.hhk@
Title=@title of your book@
Default topic=@default page to be displayed.htm@
\end{verbatim}
All filenames (including Default topic) are relative to the location of .hhp file.
For larger projects I recommend storing everything but .hhp file into one .zip archive. (E.g. contents file
would then be reffered as myhelp.zip\#zip:contents.hhc)
\wxheading{Contents file (.hhc)}
Contents file has HTML syntax and it can be parsed by regular HTML parser. It contains exactly one list
(<ul>....</ul> statement):
\begin{verbatim}
<ul>
<li> <object>
<param name="Name" value="@topic name@">
<param name="ID" value=@numeric_id@>
<param name="Local" value="@filename.htm@">
</object>
<li> <object>
<param name="Name" value="@topic name@">
<param name="ID" value=@numeric_id@>
<param name="Local" value="@filename.htm@">
</object>
...
</ul>
\end{verbatim}
You can modify value attributes of param tags. {\it topic name} is name of chapter/topic as is displayed in
contents, {\it filename.htm} is HTML page name (relative to .hhp file) and {\it numeric_id} is optional
- it is used only when you use \helpref{wxHtmlHelpController::Display(int)}{wxhtmlhelpcontrollerdisplay}
Items in the list may be nested - one \<li\> statement may contain \<ul\> sub-statement:
\begin{verbatim}
<ul>
<li> <object>
<param name="Name" value="Top node">
<param name="Local" value="top.htm">
</object>
<ul>
<li> <object>
<param name="Name" value="subnode in topnode">
<param name="Local" value="subnode1.htm">
</object>
...
</ul>
<li> <object>
<param name="Name" value="Another Top">
<param name="Local" value="top2.htm">
</object>
...
</ul>
\end{verbatim}
\wxheading{Index file (.hhk)}
Index files have same format as contents file except that ID params are ignored and sublists are {\bf not}
allowed.

63
docs/latex/wx/htmlprn.tex Normal file
View File

@@ -0,0 +1,63 @@
\membersection{Printing}\label{printing}
The wxHTML library provides printing facilities.
You can redirect output displayed by \helpref{wxHtmlWindow}{wxhtmlwindow}
to the printer DC using this (or similar) code (see {\bf printing} sample for
more details) :
\begin{verbatim}
//
// This method prints page number one to dc:
//
void MyPrintout::DrawPageOne(wxDC *dc)
{
int leftMargin = 20;
int topMargin = 50;
// You must compute the margins there.
// Caution! These values are NOT in printer DC's units.
// These values are in screen pixels.
// (see bellow)
// Here we obtain internal cell representation of HTML document:
// (html is our pointer to wxHtmlWindow object)
wxHtmlContainerCell *cell = html -> GetInternalRepresentation();
// Now we have to check in case our real page size is reduced
// (e.g. because we're drawing to a print preview memory DC)
int pageWidth, pageHeight;
int w, h;
dc->GetSize(&w, &h); // DC size
GetPageSizePixels(&pageWidth, &pageHeight); // real size
// Now we must scale it. This equation will map wxHtmlWindow
// to page in this way:
// |--this is whole page as printed---------|
// | | | |
// | | | |
// |-margin-|-----wxHtmlWindow-----|-margin-|
//
// So page width is 2*leftMargin + [wxHtmlWindow size]
// (measured in screen pixels).
// We will scale the printer DC so that wxHtmlWindow's content
// spreads from left to right:
float scale = (float)(
(float)(pageWidth) /
(float)(2 * leftMargin + cell -> GetMaxLineWidth()));
// If printer pageWidth == current DC width, then this doesn't
// change. But w might be the preview bitmap width, so scale down.
float overallScale = scale * (float)(w/(float)pageWidth);
// Set the user scale so that our computations take effect:
dc->SetUserScale(overallScale, overallScale);
dc->SetBackgroundMode(wxTRANSPARENT);
// And this is - finally - HTML stuff:
cell -> Draw(*dc, leftMargin, topMargin, 0, cell -> GetHeight());
}
\end{verbatim}
(Thanks to Julian Smart for sample)

View File

@@ -0,0 +1,68 @@
\membersection{Quick Start}\label{quickstart}
\wxheading{Displaying HMTL}
First of all, you must include <wx/wxhtml.h>.
Class \helpref{wxHtmlWindow}{wxhtmlwindow} (derived from wxScrolledWindow)
is used to display HTML documents.
It has two important methods : \helpref{LoadPage}{wxhtmlwindowloadpage}
and \helpref{SetPage}{wxhtmlwindowsetpage}.
LoadPage loads and displays HTML file while SetPage displays directly the
passed {\bf string}. See the example:
\begin{verbatim}
mywin -> LoadPage("test.htm");
mywin -> SetPage("<html><body>"
"<h1>Error</h1>"
"Some error occured :-H)"
"</body></hmtl>");
\end{verbatim}
I think the difference is quite clear.
\wxheading{Displaying Help}
See \helpref{wxHtmlHelpController}{wxhtmlhelpcontroller}.
\wxheading{Setting up wxHtmlWindow}
Because wxHtmlWindow is derived from wxScrolledWindow and not from
wxFrame, it doesn't have visible frame. But the user usually want to see
the title of HTML page displayed somewhere and frame's titlebar is
ideal place for it.
wxHtmlWindow provides 2 methods in order to handle this:
\helpref{SetRelatedFrame}{wxhtmlwindowsetrelatedframe} and
\helpref{SetRelatedStatusBar}{wxhtmlwindowsetrelatedstatusbar}.
See the example:
\begin{verbatim}
html = new wxHtmlWindow(this);
html -> SetRelatedFrame(this, "HTML : %%s");
html -> SetRelatedStatusBar(0);
\end{verbatim}
The first command associates html object with it's parent frame
(this points to wxFrame object there) and sets format of title.
Page title "Hello, world!" will be displayed as "HTML : Hello, world!"
in this example.
The second command sets which frame's status bar should be used to display
browser's messages (such as "Loading..." or "Done" or hypertext links).
\wxheading{Customizing wxHtmlWindow}
You can customize wxHtmlWindow by setting font size, font face and
borders (space between border of window and displayed HTML). Related functions:
\begin{itemize}
\item \helpref{SetFonts}{wxhtmlwindowsetfonts}
\item \helpref{SetBorders}{wxhtmlwindowsetborders}
\item \helpref{ReadCustomization}{wxhtmlwindowreadcustomization}
\item \helpref{WriteCustomization}{wxhtmlwindowwritecustomization}
\end{itemize}
The last two functions are used to store user customization info wxConfig stuff
(for example registry under Windows or dotfile under Unix).

184
docs/latex/wx/htparser.tex Normal file
View File

@@ -0,0 +1,184 @@
%
% automatically generated by HelpGen from
% htmlparser.tex at 14/Mar/99 20:13:37
%
\section{\class{wxHtmlParser}}\label{wxhtmlparser}
This class handles the {\bf generic} parsing of HTML document: it scans
the document and divide it into blocks of tags (where one block
consists of begining and ending tag and of text between these
two tags).
It is independent from wxHtmlWindow and can be used as stand-alone parser
(Julian Smart's idea of speech-only HTML viewer or wget-like utility -
see InetGet sample for example).
It uses system of tag handlers to parse the HTML document. Tag handlers
are not staticaly shared by all instances but are created for each
wxHtmlParser instance. The reason is that the handler may contain
document-specific temporary data used during parsing (e.g. complicated
structures like tables).
Typically the user calls only the \helpref{Parse}{wxhtmlparserparse} method.
\wxheading{Derived from}
wxObject
\wxheading{See also}
\helpref{Cells Overview}{cells},
\helpref{Tag Handlers Overview}{handlers},
\helpref{wxHtmlTag}{wxhtmltag}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxHtmlParser::wxHtmlParser}\label{wxhtmlparserwxhtmlparser}
\func{}{wxHtmlParser}{\void}
Constructor.
\membersection{wxHtmlParser::SetFS}\label{wxhtmlparsersetfs}
\func{void}{SetFS}{\param{wxFileSystem }{*fs}}
Sets the virtual file system that will be used to request additional
files. (For example {\tt <IMG>} tag handler requests wxFSFile with the
image data.)
\membersection{wxHtmlParser::GetFS}\label{wxhtmlparsergetfs}
\constfunc{wxFileSystem*}{GetFS}{\void}
Returns pointer to the file system. Because each tag handler has
reference to it's parent parser it can easily request the file by
calling
\begin{verbatim}
wxFSFile *f = m_Parser -> GetFS() -> OpenFile("image.jpg");
\end{verbatim}
\membersection{wxHtmlParser::Parse}\label{wxhtmlparserparse}
\func{wxObject*}{Parse}{\param{const wxString\& }{source}}
Proceeds parsing of the document. This is end-user method. You can simply
call it when you need to obtain parsed output (which is parser-specific)
The method does these things:
\begin{enumerate}
\item calls \helpref{InitParser(source)}{wxhtmlparserinitparser}
\item calls \helpref{DoParsing}{wxhtmlparserdoparsing}
\item calls \helpref{GetProduct}{wxhtmlparsergetproduct}
\item calls \helpref{DoneParser}{wxhtmlparserdoneparser}
\item returns value returned by GetProduct
\end{enumerate}
You shouldn't use InitParser, DoParsing, GetProduct or DoneParser directly.
\membersection{wxHtmlParser::InitParser}\label{wxhtmlparserinitparser}
\func{virtual void}{InitParser}{\param{const wxString\& }{source}}
Setups the parser for parsing the {\it source} string. (Should be overriden
in derived class)
\membersection{wxHtmlParser::DoneParser}\label{wxhtmlparserdoneparser}
\func{virtual void}{DoneParser}{\void}
This must be called after DoParsing().
\membersection{wxHtmlParser::DoParsing}\label{wxhtmlparserdoparsing}
\func{void}{DoParsing}{\param{int }{begin\_pos}, \param{int }{end\_pos}}
\func{void}{DoParsing}{\void}
Parses the m\_Source from begin\_pos to end\_pos-1.
(in noparams version it parses whole m\_Source)
\membersection{wxHtmlParser::GetProduct}\label{wxhtmlparsergetproduct}
\func{virtual wxObject*}{GetProduct}{\void}
Returns product of parsing. Returned value is result of parsing
of the document. The type of this result depends on internal
representation in derived parser (but it must be derived from wxObject!).
See wxHtmlWinParser for details.
\membersection{wxHtmlParser::AddTagHandler}\label{wxhtmlparseraddtaghandler}
\func{virtual void}{AddTagHandler}{\param{wxHtmlTagHandler }{*handler}}
Adds handler to the internal list (\& hash table) of handlers. This
method should not be called directly by user but rather by derived class'
constructor.
This adds the handler to this {\bf instance} of wxHtmlParser, not to
all objects of this class! (Static front-end to AddTagHandler is provided
by wxHtmlWinParser).
All handlers are deleted on object deletion.
\membersection{wxHtmlParser::GetSource}\label{wxhtmlparsergetsource}
\func{wxString*}{GetSource}{\void}
Returns pointer to the source being parsed.
\membersection{wxHtmlParser::GetTempData}\label{wxhtmlparsergettempdata}
\func{virtual wxList*}{GetTempData}{\void}
This method returns list of wxObjects that represents
all data allocated by the parser. These can't be freed
by the destructor because they must be valid as long as
GetProduct's return value is valid - the caller must
explicitly call
\begin{verbatim}
delete (MyParser -> GetTempData());
\end{verbatim}
to free the memory (this method always sets the list to delete its contents).
\wxheading{Example}
Why is this neccessary? Imagine wxHtmlWinParser: when handling
a FONT tag it creates some fonts. These fonts are then used by wxHtmlWindow
to display the text. But the wxHtmWinParser object is needed only when parsing
the document - it may be deleted then. But fonts CAN'T be deleted - they
must exist as long as the window is displaying text.
GetTempData() solves the problem.
\membersection{wxHtmlParser::AddText}\label{wxhtmlparseraddword}
\func{virtual void}{AddWord}{\param{const char* }{txt}}
Must be overwriten in derived class.
This method is called by \helpref{DoParsing}{wxhtmlparserdoparsing}
each time a part of text is parsed. {\it txt} is NOT only one word, it is
substring of input. It is not formatted or preprocessed (so white spaces are
unmodified).
\membersection{wxHtmlParser::AddTag}\label{wxhtmlparseraddtag}
\func{void}{AddTag}{\param{const wxHtmlTag\& }{tag}}
This may (and may not) be overwriten in derived class.
This method is called each time new tag is about to be added.
{\it tag} contains information about the tag. (See \helpref{wxHtmlTag}{wxhtmltag}
for details.)
Default (wxHtmlParser) behaviour is this:
First it finds a handler capable of handling this tag and then it calls
handler's HandleTag method.

169
docs/latex/wx/httag.tex Normal file
View File

@@ -0,0 +1,169 @@
%
% automatically generated by HelpGen from
% htmltag.tex at 14/Mar/99 20:13:37
%
\section{\class{wxHtmlTag}}\label{wxhtmltag}
This class represents single HTML tag.
It is used by \helpref{tag handlers}{handlers}.
\wxheading{Derived from}
wxObject
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxHtmlTag::wxHtmlTag}\label{wxhtmltagwxhtmltag}
\func{}{wxHtmlTag}{\param{const wxString\& }{source}, \param{int }{pos}, \param{int }{end\_pos}, \param{wxHtmlTagsCache* }{cache}}
Constructor. You'll probably never have to construct wxHtmlTag object
yourself. Feel free to ignore the constructor parameters...
(have a look at lib/htmlparser.cpp if you're interested in creating it)
\membersection{wxHtmlTag::GetName}\label{wxhtmltaggetname}
\constfunc{wxString}{GetName}{\void}
Returns tag's name. The name is always in uppercase and it doesn't contain
'<' or '/' characters. (So the name of {\tt <FONT SIZE=+2>} tag is "FONT"
and name of {\tt </table>} is "TABLE")
\membersection{wxHtmlTag::HasParam}\label{wxhtmltaghasparam}
\constfunc{bool}{HasParam}{\param{const wxString\& }{par}}
Returns TRUE if the tag has parameter of the given name.
Example : {\tt <FONT SIZE=+2 COLOR="\#FF00FF">} has two parameters named
"SIZE" and "COLOR".
\wxheading{Parameters}
\docparam{par}{the parameter you're looking for. It must {\it always} be in uppercase!}
\membersection{wxHtmlTag::GetParam}\label{wxhtmltaggetparam}
\constfunc{wxString}{GetParam}{\param{const wxString\& }{par}, \param{bool }{with\_commas = FALSE}}
Retuns the value of the parameter. You should check whether the
param exists or not (use \helpref{HasParam}{wxhtmltaghasparam}) first.
\wxheading{Parameters}
\docparam{par}{The parameter's name in uppercase}
\docparam{with\_commas}{TRUE if you want to get commas as well. See example.}
\wxheading{Example}
\begin{verbatim}
...
/* you have wxHtmlTag variable tag which is equal to
HTML tag <FONT SIZE=+2 COLOR="#0000FF"> */
dummy = tag.GetParam("SIZE");
// dummy == "+2"
dummy = tag.GetParam("COLOR");
// dummy == "#0000FF"
dummy = tag.GetParam("COLOR", TRUE);
// dummy == "\"#0000FF\"" -- see the difference!!
\end{verbatim}
\membersection{wxHtmlTag::ScanParam}\label{wxhtmltagscanparam}
\constfunc{wxString}{ScanParam}{\param{const wxString\& }{par}, \param{const char *}{format}, fuck}
This method scans given parameter. Usage is exatly the same as sscanf's
usage except that you don't pass string but param name as the first parameter.
\wxheading{Parameters}
\docparam{par}{The name of tag you wanna query (in uppercase)}
\docparam{format}{scanf()-like format string.}
\wxheading{Cygwin and Mingw32}
If you're using Cygwin beta 20 or Mingw32 compiler please remember
that ScanParam() is only partially implemented!! The problem is
that under Cygnus' GCC vsscanf() function is not implemented. I workarounded
this in a way which causes that you can use only one parameter in ...
(and only one \% in {\it format})
\membersection{wxHtmlTag::GetAllParams}\label{wxhtmltaggetallparams}
\constfunc{const wxString\&}{GetAllParams}{\void}
Returns string with all params.
Example : tag contains {\tt <FONT SIZE=+2 COLOR="\#000000">}. Call to
tag.GetAllParams() would return {\tt SIZE=+2 COLOR="\#000000"}.
\membersection{wxHtmlTag::IsEnding}\label{wxhtmltagisending}
\constfunc{bool}{IsEnding}{\void}
Returns TRUE if this tag is ending one.
({\tt </FONT>} is ending tag, {\tt <FONT>} is not)
\membersection{wxHtmlTag::HasEnding}\label{wxhtmltaghasending}
\constfunc{bool}{HasEnding}{\void}
Returns TRUE if this tag is paired with ending tag, FALSE otherwise.
See the example of HTML document:
\begin{verbatim}
<html><body>
Hello<p>
How are you?
<p align=center>This is centered...</p>
Oops<br>Oooops!
</body></html>
\end{verbatim}
In this example tags HTML and BODY have ending tags, first P and BR
doesn't have ending tag while the second P has. The third P tag (which
is ending itself) of course doesn't have ending tag.
\membersection{wxHtmlTag::GetBeginPos}\label{wxhtmltaggetbeginpos}
\constfunc{int}{GetBeginPos}{\void}
Returns beginning position of the text {\it between} this tag and paired
ending tag.
See explanation (returned position is marked with '^'):
\begin{verbatim}
bla bla bla <MYTAG> bla bla intenal text</MYTAG> bla bla
^
\end{verbatim}
\membersection{wxHtmlTag::GetEndPos1}\label{wxhtmltaggetendpos1}
\constfunc{int}{GetEndPos1}{\void}
Returns ending position of the text {\it between} this tag and paired
ending tag.
See explanation (returned position is marked with '^'):
\begin{verbatim}
bla bla bla <MYTAG> bla bla intenal text</MYTAG> bla bla
^
\end{verbatim}
\membersection{wxHtmlTag::GetEndPos2}\label{wxhtmltaggetendpos2}
\constfunc{int}{GetEndPos2}{\void}
Returns ending position 2 of the text {\it between} this tag and paired
ending tag.
See explanation (returned position is marked with '^'):
\begin{verbatim}
bla bla bla <MYTAG> bla bla intenal text</MYTAG> bla bla
^
\end{verbatim}

View File

@@ -0,0 +1,87 @@
%
% automatically generated by HelpGen from
% htmltaghandler.tex at 18/Mar/99 19:20:29
%
\section{\class{wxHtmlTagHandler}}\label{wxhtmltaghandler}
\wxheading{Derived from}
wxObject
\wxheading{See Also}
\helpref{Overview}{handlers},
\helpref{wxHtmlTag}{wxhtmltag}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxHtmlTagHandler::m\_Parser}\label{wxhtmltaghandlermparser}
{\bf wxHtmlParser* m\_Parser}
This attribute is used to access parent parser. It is protected so that
it can't be accessed by user but can be accessed from derived classes.
\membersection{wxHtmlTagHandler::wxHtmlTagHandler}\label{wxhtmltaghandlerwxhtmltaghandler}
\func{}{wxHtmlTagHandler}{\void}
Constructor.
\membersection{wxHtmlTagHandler::SetParser}\label{wxhtmltaghandlersetparser}
\func{virtual void}{SetParser}{\param{wxHtmlParser }{*parser}}
Assigns {\it parser} to this handler. Each {\bf instance} of handler
is guaranteed to be called only from the parser.
\membersection{wxHtmlTagHandler::GetSupportedTags}\label{wxhtmltaghandlergetsupportedtags}
\func{virtual wxString}{GetSupportedTags}{\void}
Returns list of supported tags. The list is in uppercase and tags
are delimited by ','. Example : {\tt "I,B,FONT,P" }
\membersection{wxHtmlTagHandler::HandleTag}\label{wxhtmltaghandlerhandletag}
\func{virtual bool}{HandleTag}{\param{const wxHtmlTag\& }{tag}}
This is the core method of each handler. It is called each time
one of supported tags is detected. {\it tag} contains all neccessary
info (see \helpref{wxHtmlTag}{wxhtmltag} for details).
\wxheading{Return value}
TRUE if \helpref{ParseInner}{wxhtmltaghandlerparseinner} was called,
FALSE otherwise.
\wxheading{Example}
\begin{verbatim}
bool MyHandler::HandleTag(const wxHtmlTag& tag)
{
...
// change state of parser (e.g. set bold face)
ParseInner(tag);
...
// restore original state of parser
}
\end{verbatim}
You shouldn't call ParseInner if the tag is not paired with ending one.
\membersection{wxHtmlTagHandler::ParseInner}\label{wxhtmltaghandlerparseinner}
\func{void}{ParseInner}{\param{const wxHtmlTag\& }{tag}}
This method calls parser's \helpref{DoParsing}{wxhtmlparserdoparsing} method
for the string between this tag and paired ending tag:
\begin{verbatim}
...<A HREF="x.htm">Hello, world!</A>...
\end{verbatim}
In this example, a call to ParseInner (with {\it tag} pointing to A tag)
will parse 'Hello, world!'.

View File

@@ -0,0 +1,39 @@
%
% automatically generated by HelpGen from
% htmltagsmodule.tex at 14/Mar/99 20:13:37
\section{\class{wxHtmlTagsModule}}\label{wxhtmltagsmodule}
This class provides easy way of filling wxHtmlWinParser's table of
tag handlers. It is used almost exclusively together with set of
\helpref{TAGS\_MODULE\_* macros}{handlers}
\wxheading{Derived from}
wxModule
\wxheading{See Also}
\helpref{Tag Handlers}{handlers},
\helpref{wxHtmlTagHandler}{wxhtmltaghandler},
\helpref{wxHtmlWinTagHandler}{wxhtmlwintaghandler},
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxHtmlTagsModule::FillHandlersTable}\label{wxhtmltagsmodulefillhandlerstable}
\func{virtual void}{FillHandlersTable}{\param{wxHtmlWinParser }{*parser}}
You must override this method. In most common case it's body consists
only of lines of following type:
\begin{verbatim}
parser -> AddTagHandler(new MyHandler);
\end{verbatim}
I recommend using {\bf TAGS\_MODULE\_*} macros.
\wxheading{Paremeters}
\docparam{parser}{Pointer to the parser that requested tables filling.}

View File

@@ -23,10 +23,18 @@
Creates a new input stream on the the specified path. You can use all except the seek
functionality of wxStream. Seek isn't available on all streams. For example,
http or ftp streams doesn't deal with it. Other functions like StreamSize and
Tell aren't available for the moment for this sort of stream.
http or ftp streams doesn't deal with it. Other functions like Tell and SeekI
for this sort of stream.
You will be notified when the EOF is reached by an error.
\wxheading{Note}
You can know the size of the file you are getting using \helpref{wxStreamBase::GetSize()}{wxstreambasegetsize}.
But there is a limitation: as HTTP servers aren't obliged to pass the size ofi
the file, in some case, you will be returned 0xfffffff by GetSize(). In these
cases, you should use the value returned by \helpref{wxInputStream::LastRead()}{wxinputstreamlastread}:
this value will be 0 when the stream is finished.
\wxheading{Return value}
Returns the initialized stream. You will have to delete it yourself once you
@@ -48,10 +56,15 @@ It sets data of a field to be sent during the next request to the HTTP server. T
name is specified by \it{header} and the content by \it{h\_data}.
This is a low level function and it assumes that you know what you are doing.
\membersection{wxHTTP::SetHeader}
\membersection{wxHTTP::GetHeader}
\func{wxString}{GetHeader}{\param{const wxString\&}{ header}}
Returns the data attached with a field whose name is specified by \it{header}.
If the field doesn't exist, it will return an empty string and not a NULL string.
\wxheading{Note}
The header is not case-sensitive: I mean that "CONTENT-TYPE" and "content-type"
represent the same header.

View File

@@ -0,0 +1,33 @@
%
% automatically generated by HelpGen from
% htmlcell.h at 14/Apr/99 20:12:40
%
\section{\class{wxHtmlWidgetCell}}\label{wxhtmlwidgetcell}
wxHtmlWidgetCell is class that provides connection between HTML cell and widget (object derived
from wxWindow). You can use it to display things like forms, input boxes etc. in HTML window.
wxHtmlWidgetCell takes care of resizing and moving window.
\wxheading{Derived from}
\helpref{wxHtmlCell}{wxhtmlcell}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxHtmlWidgetCell::wxHtmlWidgetCell}\label{wxhtmlwidgetcellwxhtmlwidgetcell}
\func{}{wxHtmlWidgetCell}{\param{wxWindow* }{wnd}, \param{int }{w = 0}}
Constructor
\wxheading{Parameters}
\docparam{wnd}{Connected window. It's parent window {\bf must} be the wxHtmlWindow object within
which it is displayed!}
\docparam{w}{Floating width. If non-zero width of {\it wnd} window is adjusted so that it is
always {\it w} percents of parent container's width. (For example w = 100 means that the window
will always have same width as parent container)}

255
docs/latex/wx/htwindow.tex Normal file
View File

@@ -0,0 +1,255 @@
%
% automatically generated by HelpGen from
% htmlwindow.tex at 14/Mar/99 20:13:37
%
\section{\class{wxHtmlWindow}}\label{wxhtmlwindow}
wxHtmlWindow is probably the only class you will directly use
unless you want to do something special (like adding new tag
handlers or MIME filters)
Purpose of this class is to display HTML page (either local
file or downloaded via HTTP protocol) in a window. Width
of window is constant - given in constructor - virtual height
is changed dynamicly depending on page size.
Once the window is created you can set it's content by calling
\helpref{SetPage(text)}{wxhtmlwindowsetpage} or
\helpref{LoadPage(filename)}{wxhtmlwindowloadpage}.
\wxheading{Derived from}
wxScrolledWindow
\wxheading{Include files}
<wxhtml/wxhtmlwin.h>
\membersection{wxHtmlWindow::wxHtmlWindow}\label{wxhtmlwindowwxhtmlwindow}
\func{}{wxHtmlWindow}{\void}
Default constructor.
\func{}{wxHtmlWindow}{\param{wxWindow }{*parent}, \param{wxWindowID }{id = -1}, \param{const wxPoint\& }{pos = wxDefaultPosition}, \param{const wxSize\& }{size = wxDefaultSize}, \param{long }{style = wxHW_SCROLLBAR_AUTO}, \param{const wxString\& }{name = "htmlWindow"}}
Constructor. The parameters are same as in wxScrollWindow ctor.
(Too lazy to document it once again... :-)
\wxheading{Parameters}
\docparam{style}{wxHW\_SCROLLBAR\_NEVER, or wxHW\_SCROLLBAR\_AUTO.
Affects appearance of vertical scrollbar in the window.}
\membersection{wxHtmlWindow::SetPage}\label{wxhtmlwindowsetpage}
\func{bool}{SetPage}{\param{const wxString\& }{source}}
Sets HTML page and display it. This won't {\bf load} the page!!
It will display the {\it source}. See example:
\begin{verbatim}
htmlwin -> SetPage("<html><body>Hello, world!</body></html>");
\end{verbatim}
If you want to load document from some location use
\helpref{LoadPage}{wxhtmlwindowloadpage} instead.
\wxheading{Parameters}
\docparam{source}{The HTML document source to be displayed.}
\wxheading{Return value}
FALSE if an error occured, TRUE otherwise
\membersection{wxHtmlWindow::LoadPage}\label{wxhtmlwindowloadpage}
\func{bool}{LoadPage}{\param{const wxString\& }{location}}
Unlike SetPage this function first loads HTML page from {\it location}
and then displays it. See example:
\begin{verbatim}
htmlwin -> SetPage("help/myproject/index.htm");
\end{verbatim}
\wxheading{Parameters}
\docparam{location}{The address of document. See \helpref{wxFileSystem}{wxfilesystem} for details on address format and behaviour of "opener".}
\wxheading{Return value}
FALSE if an error occured, TRUE otherwise
\membersection{wxHtmlWindow::GetOpenedPage}\label{wxhtmlwindowgetopenedpage}
\func{wxString}{GetOpenedPage}{\void}
Returns full location of the opened page. If no page is opened or if the displayed page wasn't
produced by call to LoadPage, empty string is returned.
\membersection{wxHtmlWindow::SetRelatedFrame}\label{wxhtmlwindowsetrelatedframe}
\func{void}{SetRelatedFrame}{\param{wxFrame* }{frame}, \param{const wxString\& }{format}}
Sets frame in which page title will be displayed. {\it format} is format of
frame title, e.g. "HtmlHelp : \%s". It must contain exactly one \%s. This
\%s is substituted with HTML page title.
\membersection{wxHtmlWindow::GetRelatedFrame}\label{wxhtmlwindowgetrelatedframe}
\constfunc{wxFrame*}{GetRelatedFrame}{\void}
Returns the related frame.
\membersection{wxHtmlWindow::SetRelatedStatusBar}\label{wxhtmlwindowsetrelatedstatusbar}
\func{void}{SetRelatedStatusBar}{\param{int }{bar}}
{\bf After} calling \helpref{SetRelatedFrame}{wxhtmlwindowsetrelatedframe},
this sets statusbar slot where messages will be displayed.
(Default is -1 = no messages.)
\wxheading{Parameters}
\docparam{bar}{statusbar slot number (0..n)}
\membersection{wxHtmlWindow::SetFonts}\label{wxhtmlwindowsetfonts}
\func{void}{SetFonts}{\param{wxString }{normal\_face}, \param{int }{normal\_italic\_mode}, \param{wxString }{fixed\_face}, \param{int }{fixed\_italic\_mode}, \param{int }{*sizes}}
This function sets font sizes and faces.
\wxheading{Parameters}
\docparam{normal_face}{This is face name for normal (i.e. non-fixed) font.
It can be either empty string (then the default face is choosen) or
platform-specific face name. Examples are "helvetica" under Unix or
"Times New Roman" under Windows.}
\docparam{normal_italic_mode}{This is either wxSLANT or wxITALIC.
It determines how
italic (<I>..</I>) text is handled. See wxFont documentation for
details. For example you should use wxSLANT in conjuction with
"helvetica" face or wxITALIC with "times" face.}
\docparam{fixed_face}{The same thing for fixed face ( <TT>..</TT> )}
\docparam{fixed_italic_mode}{The same thing for fixed face.}
\docparam{sizes}{This is an array of 7 items of {\it int} type.
The values represent size of font with HTML size from -2 to +4
( <FONT SIZE=-2> to <FONT SIZE=+4> )}
\wxheading{Defaults}
Under wxGTK:
\begin{verbatim}
SetFonts("", wxSLANT, "", wxSLANT, {10, 12, 14, 16, 19, 24, 32});
\end{verbatim}
Under Windows:
\begin{verbatim}
SetFonts("", wxSLANT, "", wxSLANT, {7, 8, 10, 12, 16, 22, 30});
\end{verbatim}
Athough it seems different the fact is that the fonts are of approximately
same size under both platforms (due to wxMSW / wxGTK inconsistency)
\membersection{wxHtmlWindow::SetBorders}\label{wxhtmlwindowsetborders}
\func{void}{SetBorders}{\param{int }{b}}
This function sets the space between border of window and HTML contents. See image:
\image{}{border.bmp}
\wxheading{Parameters}
\docparam{b}{indentation from borders in pixels}
\membersection{wxHtmlWindow::ReadCustomization}\label{wxhtmlwindowreadcustomization}
\func{virtual void}{ReadCustomization}{\param{wxConfigBase }{*cfg}, \param{wxString }{path = wxEmptyString}}
This reads custom settings from wxConfig. It uses the path 'path'
if given, otherwise it saves info into currently selected path.
The values are stored in sub-path {\tt wxHtmlWindow}
Read values : all things set by SetFonts, SetBorders.
\wxheading{Parameters}
\docparam{cfg}{wxConfig from which you wanna read configuration}
\docparam{path}{Optional path in config tree. If not given current path is used.}
\membersection{wxHtmlWindow::WriteCustomization}\label{wxhtmlwindowwritecustomization}
\func{virtual void}{WriteCustomization}{\param{wxConfigBase }{*cfg}, \param{wxString }{path = wxEmptyString}}
Saves custom settings into wxConfig. It uses the path 'path'
if given, otherwise it saves info into currently selected path.
Regardless path is given or not the function creates sub-path
{\tt wxHtmlWindow}
Saved values : all things set by SetFonts, SetBorders.
\wxheading{Parameters}
\docparam{cfg}{wxConfig to which you wanna save configuration}
\docparam{path}{Optional path in config tree. If not given current path is used.}
\membersection{wxHtmlWindow::GetInternalRepresentation}\label{wxhtmlwindowgetinternalrepresentation}
\constfunc{wxHtmlContainerCell*}{GetInternalRepresentation}{\void}
Returns pointer to the top-level container.
See also: \helpref{Cells Overview}{cells},
\helpref{Printing Overview}{printing}
\membersection{wxHtmlWindow::AddFilter}\label{wxhtmlwindowaddfilter}
\func{static void}{AddFilter}{\param{wxHtmlFilter }{*filter}}
Adds \helpref{input filter}{filters} to the static list of available
filters. These filters are present by default:
\begin{itemize}
\item {\tt text/html} MIME type
\item {\tt image/*} MIME types
\item Plain Text filter (this filter is used if no other filter matches)
\end{itemize}
\membersection{wxHtmlWindow::HistoryBack}\label{wxhtmlwindowhistoryback}
\func{bool}{HistoryBack}{\void}
Moves back to the previous page. (each page displayed using
\helpref{LoadPage}{wxhtmlwindowloadpage} is stored in history list.)
\membersection{wxHtmlWindow::HistoryForward}\label{wxhtmlwindowhistoryforward}
\func{bool}{HistoryForward}{\void}
Moves to next page in history.
\membersection{wxHtmlWindow::HistoryClear}\label{wxhtmlwindowhistoryclear}
\func{void}{HistoryClear}{\void}
Clears history.
\membersection{wxHtmlWindow::OnLinkClicked}\label{wxhtmlwindowonlinkclicked}
\func{virtual void}{OnLinkClicked}{\param{const wxString\& }{link}}
Called when user clicks on hypertext link. Default behaviour is to call
\helpref{LoadPage}{wxhtmlwindowloadpage} and do nothing else.

View File

@@ -0,0 +1,26 @@
%
% automatically generated by HelpGen from
% htmlwintaghandler.tex at 14/Mar/99 20:13:37
%
\section{\class{wxHtmlWinTagHandler}}\label{wxhtmlwintaghandler}
This is basically wxHtmlTagHandler except that
it is extended with protected member m\_WParser pointing to
the wxHtmlWinParser object (value of this member is identical
to wxHtmlParser's m\_Parser).
\wxheading{Derived from}
\helpref{wxHtmlTagHandler}{wxhtmltaghandler}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxHtmlWinTagHandler::m\_WParser}\label{wxhtmlwintaghandlerwxhtmlwintaghandlermwparser}
{\bf wxHtmlWinParser* m\_WParser}
Value of this attribute is identical to value of m\_Parser. The only different
is that m\_WParser points to wxHtmlWinParser object while m\_Parser
points to wxHtmlParser object. (The same object, but overcast.)

254
docs/latex/wx/htwinprs.tex Normal file
View File

@@ -0,0 +1,254 @@
%
% automatically generated by HelpGen from
% htmlwinparser.tex at 14/Mar/99 20:13:37
%
\section{\class{wxHtmlWinParser}}\label{wxhtmlwinparser}
This class is derived from \helpref{wxHtmlParser}{wxhtmlparser} and
its mail goal is to parse HTML input so that it can be displayed in
\helpref{wxHtmlWindow}{wxhtmlwindow}. It uses special
\helpref{wxHtmlWinTagHandler}{wxhtmlwintaghandler}.
\wxheading{Notes}
\begin{enumerate}
\item Product of parsing is wxHtmlCell (resp. wxHtmlContainer) object.
\item This parser produces temporary data! You should call
\helpref{delete GetTempData()}{wxhtmlparsergettempdata}!
\end{enumerate}
\wxheading{Derived from}
\helpref{wxHtmlParser}{wxhtmlparser}
\wxheading{See Also}
\helpref{Handlers overview}{handlers}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxHtmlWinParser::wxHtmlWinParser}\label{wxhtmlwinparserwxhtmlwinparser}
\func{}{wxHtmlWinParser}{\void}
\func{}{wxHtmlWinParser}{\param{wxWindow }{*wnd}}
Constructor. Don't use the default one, use constructor with
{\it wnd} paremeter ({\it wnd} is pointer to associated \helpref{wxHtmlWindow}{wxhtmlwindow})
\membersection{wxHtmlWinParser::SetDC}\label{wxhtmlwinparsersetdc}
\func{virtual void}{SetDC}{\param{wxDC }{*dc}}
Sets the DC. This must be called before \helpref{Parse}{wxhtmlparserparse}!
\membersection{wxHtmlWinParser::GetDC}\label{wxhtmlwinparsergetdc}
\func{wxDC*}{GetDC}{\void}
Returns pointer to the DC used during parsing.
\membersection{wxHtmlWinParser::GetCharHeight}\label{wxhtmlwinparsergetcharheight}
\constfunc{int}{GetCharHeight}{\void}
Returns (average) char height in standard font. It's used as DC-independent metrics.
{\bf Note:} This function doesn't return {\it actual} height. If you wanna
know height of current font, call {\tt GetDC -> GetCharHeight()}
\membersection{wxHtmlWinParser::GetCharWidth}\label{wxhtmlwinparsergetcharwidth}
\constfunc{int}{GetCharWidth}{\void}
Returns average char width in standard font. It's used as DC-independent metrics.
{\bf Note:} This function doesn't return {\it actual} width. If you wanna
know height of current font, call {\tt GetDC -> GetCharWidth()}
\membersection{wxHtmlWinParser::GetWindow}\label{wxhtmlwinparsergetwindow}
\func{wxWindow*}{GetWindow}{\void}
Returns associated window (wxHtmlWindow). This may be NULL! (You should always
test if it is non-NULL. For example {\tt TITLE} handler sets window
title only if some window is associated, otherwise it does nothing)
\membersection{wxHtmlWinParser::SetFonts}\label{wxhtmlwinparsersetfonts}
\func{void}{SetFonts}{\param{wxString }{normal\_face}, \param{int }{normal\_italic\_mode}, \param{wxString }{fixed\_face}, \param{int }{fixed\_italic\_mode}, \param{int }{*sizes}}
Sets fonts. This method is identical to \helpref{wxHtmlWindow::SetFonts}{wxhtmlwindowsetfonts}
\membersection{wxHtmlWinParser::AddModule}\label{wxhtmlwinparseraddmodule}
\func{static void}{AddModule}{\param{wxHtmlTagsModule }{*module}}
Adds \helpref{module}{handlers} to the list of wxHtmlWinParser tag handler.
\membersection{wxHtmlWinParser::GetContainer}\label{wxhtmlwinparsergetcontainer}
\constfunc{wxHtmlContainerCell*}{GetContainer}{\void}
Returns pointer to the currectly opened container (see \helpref{Overview}{cells}).
Common use:
\begin{verbatim}
m_WParser -> GetContainer() -> InsertCell(new ...);
\end{verbatim}
\membersection{wxHtmlWinParser::OpenContainer}\label{wxhtmlwinparseropencontainer}
\func{wxHtmlContainerCell*}{OpenContainer}{\void}
Opens new container and returns pointer to it (see \helpref{Overview}{cells}).
%
%\membersection{wxHtmlWinParser::SetContainer}\label{wxhtmlwinparsersetcontainer}
%
%\func{wxHtmlContainerCell*}{SetContainer}{\param{wxHtmlContainerCell *}{c}}
%
%Allows you to directly set opened container. This is not recommended - you should use OpenContainer
%whereever possible.
%
\membersection{wxHtmlWinParser::CloseContainer}\label{wxhtmlwinparserclosecontainer}
\func{wxHtmlContainerCell*}{CloseContainer}{\void}
Closes the container, sets actual container to the parent one
and returns pointer to it (see \helpref{Overview}{cells}).
\membersection{wxHtmlWinParser::GetFontSize}\label{wxhtmlwinparsergetfontsize}
\constfunc{int}{GetFontSize}{\void}
Returns actual font size (HTML size varies from -2 to +4)
\membersection{wxHtmlWinParser::SetFontSize}\label{wxhtmlwinparsersetfontsize}
\func{void}{SetFontSize}{\param{int }{s}}
Sets actual font size (HTML size varies from -2 to +4)
\membersection{wxHtmlWinParser::GetFontBold}\label{wxhtmlwinparsergetfontbold}
\constfunc{int}{GetFontBold}{\void}
Returns TRUE if actual font is bold, FALSE otherwise.
\membersection{wxHtmlWinParser::SetFontBold}\label{wxhtmlwinparsersetfontbold}
\func{void}{SetFontBold}{\param{int }{x}}
Sets bold flag of actualfont. {\it x} is either TRUE of FALSE.
\membersection{wxHtmlWinParser::GetFontItalic}\label{wxhtmlwinparsergetfontitalic}
\constfunc{int}{GetFontItalic}{\void}
Returns TRUE if actual font is italic, FALSE otherwise.
\membersection{wxHtmlWinParser::SetFontItalic}\label{wxhtmlwinparsersetfontitalic}
\func{void}{SetFontItalic}{\param{int }{x}}
Sets italic flag of actualfont. {\it x} is either TRUE of FALSE.
\membersection{wxHtmlWinParser::GetFontUnderlined}\label{wxhtmlwinparsergetfontunderlined}
\constfunc{int}{GetFontUnderlined}{\void}
Returns TRUE if actual font is underlined, FALSE otherwise.
\membersection{wxHtmlWinParser::SetFontUnderlined}\label{wxhtmlwinparsersetfontunderlined}
\func{void}{SetFontUnderlined}{\param{int }{x}}
Sets underlined flag of actualfont. {\it x} is either TRUE of FALSE.
\membersection{wxHtmlWinParser::GetFontFixed}\label{wxhtmlwinparsergetfontfixed}
\constfunc{int}{GetFontFixed}{\void}
Returns TRUE if actual font is fixed face, FALSE otherwise.
\membersection{wxHtmlWinParser::SetFontFixed}\label{wxhtmlwinparsersetfontfixed}
\func{void}{SetFontFixed}{\param{int }{x}}
Sets fixed face flag of actualfont. {\it x} is either TRUE of FALSE.
\membersection{wxHtmlWinParser::GetAlign}\label{wxhtmlwinparsergetalign}
\constfunc{int}{GetAlign}{\void}
Returns default horizontal alignment.
\membersection{wxHtmlWinParser::SetAlign}\label{wxhtmlwinparsersetalign}
\func{void}{SetAlign}{\param{int }{a}}
Sets default horizontal alignment (see \helpref{wxHtmlContainerCell::SetAlignHor}{wxhtmlcontainercellsetalignhor}.
Alignment of newly opened container is set to this value.
\membersection{wxHtmlWinParser::GetLinkColor}\label{wxhtmlwinparsergetlinkcolor}
\constfunc{const wxColour\&}{GetLinkColor}{\void}
Returns color of hypertext link text.
\membersection{wxHtmlWinParser::SetLinkColor}\label{wxhtmlwinparsersetlinkcolor}
\func{void}{SetLinkColor}{\param{const wxColour\& }{clr}}
Sets color of hypertext link.
\membersection{wxHtmlWinParser::GetActualColor}\label{wxhtmlwinparsergetactualcolor}
\constfunc{const wxColour\&}{GetActualColor}{\void}
Returns actual text color.
\membersection{wxHtmlWinParser::SetActualColor}\label{wxhtmlwinparsersetactualcolor}
\func{void}{SetActualColor}{\param{const wxColour\& }{clr}}
Sets actual text color. Note: this DOESN'T change the color!
You must create \helpref{wxHtmlColourCell}{wxhtmlcolourcell} yourself.
\membersection{wxHtmlWinParser::GetLink}\label{wxhtmlwinparsergetlink}
\constfunc{const wxString\&}{GetLink}{\void}
Returns actual hypertext link. (This value is non-empty string
if the parser is between {\tt <A>} and {\tt </A>} tags,
wxEmptyString otherwise.
\membersection{wxHtmlWinParser::SetLink}\label{wxhtmlwinparsersetlink}
\func{void}{SetLink}{\param{const wxString\& }{link}}
Sets actual hypertext link. wxEmptyString means no link.
\membersection{wxHtmlWinParser::CreateCurrentFont}\label{wxhtmlwinparsercreatecurrentfont}
\func{virtual wxFont*}{CreateCurrentFont}{\void}
Creates font based on current setting (see
\helpref{SetFontSize}{wxhtmlwinparsersetfontsize},
\helpref{SetFontBold}{wxhtmlwinparsersetfontbold},
\helpref{SetFontItalic}{wxhtmlwinparsersetfontitalic},
\helpref{SetFontFixed}{wxhtmlwinparsersetfontfixed},
\helpref{SetFontUnderlined}{wxhtmlwinparsersetfontunderlined})
and returns pointer to it.
(If the font was already created only a pointer is returned.)
Fonts created during parsing are temporary data and are not freed on DoneParser.
You must call \helpref{delete myparser->GetTempData();}{wxhtmlparsergettempdata}
to free the memory!

View File

@@ -433,15 +433,50 @@ mimetype to the named file}
\end{twocollist}}
}
\membersection{wxImage::Rescale}\label{wximagerescale}
\func{wxImage}{Rescale}{\param{int}{ width}, \param{int}{ height}}
Changes the size of the image in-place: after a call to this function, thei
mage will have the given width and height.
\wxheading{See also}
\helpref{Scale}{wximagescale}
\membersection{wxImage::Scale}\label{wximagescale}
\func{wxImage}{Scale}{\param{int}{ width}, \param{int}{ height}}
\constfunc{wxImage}{Scale}{\param{int}{ width}, \param{int}{ height}}
Returns a scaled version of the image. This is also useful for
scaling bitmaps in general as the only other way to scale bitmaps
is to blit a wxMemoryDC into another wxMemoryDC. Windows can do such
scaling itself but in the GTK port, scaling bitmaps is done using
this routine internally.
is to blit a wxMemoryDC into another wxMemoryDC.
NB: although Windows can do such scaling itself but in the GTK port, scaling
bitmaps is done using this routine internally.
Example:
\begin{verbatim}
// get the bitmap from somewhere
wxBitmap bmp = ...;
// rescale it to have size of 32*32
if ( bmp.GetWidth() != 32 || bmp.GetHeight() != 32 )
{
wxImage image(bmp);
bmp = image.Scale(32, 32).ConvertToBitmap();
// another possibility:
image.Rescale(32, 32);
bmp = image;
}
\end{verbatim}
\wxheading{See also}
\helpref{Rescale}{wximagerescale}
\membersection{wxImage::SetData}\label{wximagesetdata}

BIN
docs/latex/wx/indent.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

BIN
docs/latex/wx/indent.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -11,10 +11,6 @@
<wx/stream.h>
\wxheading{See also}
\helpref{wxStreamBuffer}{wxstreambuffer}
% -----------
% ctor & dtor
% -----------
@@ -24,11 +20,6 @@
Creates a dummy input stream.
\func{}{wxInputStream}{\param{wxStreamBuffer *}{sbuf}}
Creates an input stream using the specified stream buffer \it{sbuf}. This
stream buffer can point to another stream.
\membersection{wxInputStream::\destruct{wxInputStream}}
\func{}{\destruct{wxInputStream}}{\void}
@@ -41,13 +32,7 @@ Destructor.
Returns the first character in the input queue and removes it.
\membersection{wxInputStream::InputStreamBuffer}
\func{wxStreamBuffer*}{InputStreamBuffer}{\void}
Returns the stream buffer associated with the input stream.
\membersection{wxInputStream::LastRead}
\membersection{wxInputStream::LastRead}\label{wxinputstreamlastread}
\constfunc{size\_t}{LastRead}{\void}
@@ -96,3 +81,22 @@ Changes the stream current position.
Returns the current stream position.
\membersection{wxInputStream::Ungetch}\label{wxinputstream_ungetch}
\func{size\_t}{Ungetch}{\param{const char*}{ buffer}, \param{size\_t}{ size}}
This function is only useful in \it{read} mode. It is the manager of the "Write-Back"
buffer. This buffer acts like a temporary buffer where datas which has to be
read during the next read IO call are put. This is useful when you get a big
block of data which you didn't want to read: you can replace them at the top
of the input queue by this way.
\wxheading{Return value}
Returns the amount of bytes saved in the Write-Back buffer.
\func{bool}{Ungetch}{\param{char }{c}}
This function acts like the previous one except that it takes only one
character: it is sometimes shorter to use than the generic function.

View File

@@ -338,7 +338,7 @@ Associates the given client data pointer with the given item.
\func{void}{SetFirstItem}{\param{const wxString\& }{string}}
Set the specified item to be the first visible item.
Set the specified item to be the first visible item. Windows only.
\wxheading{Parameters}
@@ -350,7 +350,8 @@ Set the specified item to be the first visible item.
\func{void}{SetSelection}{\param{int}{ n}, \param{const bool }{select = TRUE}}
Selects or deselects the given item.
Selects or deselects the given item. This does not cause a
wxEVT\_COMMAND\_LISTBOX\_SELECT event to get emitted.
\wxheading{Parameters}
@@ -374,7 +375,8 @@ Sets the string value of an item.
\func{void}{SetStringSelection}{\param{const wxString\& }{ string}, \param{const bool}{ select = TRUE}}
Sets the current selection.
Sets the current selection. This does not cause a
wxEVT\_COMMAND\_LISTBOX\_SELECT event to get emitted.
\wxheading{Parameters}

View File

@@ -48,8 +48,8 @@ functions that take a \helpref{wxListEvent}{wxlistevent} argument.
\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf EVT\_LIST\_BEGIN\_DRAG(id, func)}}{Begin dragging with the left mouse button.}
\twocolitem{{\bf EVT\_LIST\_BEGIN\_RDRAG(id, func)}}{Begin dragging with the right mouse button.}
\twocolitem{{\bf EVT\_LIST\_BEGIN\_LABEL\_EDIT(id, func)}}{Begin editing a label.}
\twocolitem{{\bf EVT\_LIST\_END\_LABEL\_EDIT(id, func)}}{Finish editing a label.}
\twocolitem{{\bf EVT\_LIST\_BEGIN\_LABEL\_EDIT(id, func)}}{Begin editing a label. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
\twocolitem{{\bf EVT\_LIST\_END\_LABEL\_EDIT(id, func)}}{Finish editing a label. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
\twocolitem{{\bf EVT\_LIST\_DELETE\_ITEM(id, func)}}{Delete an item.}
\twocolitem{{\bf EVT\_LIST\_DELETE\_ALL\_ITEMS(id, func)}}{Delete all items.}
\twocolitem{{\bf EVT\_LIST\_GET\_INFO(id, func)}}{Request information from the application, usually the item text.}
@@ -147,11 +147,17 @@ Deletes all the items in the list control.
Deletes a column.
\membersection{wxListCtrl::Edit}\label{wxlistctrledit}
\membersection{wxListCtrl::EditLabel}\label{wxlistctrledit}
\func{wxTextCtrl\&}{Edit}{\param{long }{item}}
\func{void}{EditLabel}{\param{long }{item}}
Starts editing a label.
Starts editing the label of the given item. This function generates a
EVT\_LIST\_BEGIN\_LABEL\_EDIT event which can be vetoed so that no
text control will appear for in-place editing.
If the user changed the label (i.e. s/he does not press ESC or leave
the text control without changes, a EVT\_LIST\_END\_LABEL\_EDIT event
will be sent which can be vetoed as well.
\membersection{wxListCtrl::EnsureVisible}\label{wxlistctrlensurevisible}

View File

@@ -4,6 +4,7 @@ A list event holds information about events associated with wxListCtrl objects.
\wxheading{Derived from}
\helpref{wxNotifyEvent}{wxnotifyevent}\\
\helpref{wxCommandEvent}{wxcommandevent}\\
\helpref{wxEvent}{wxevent}\\
\helpref{wxObject}{wxobject}
@@ -21,8 +22,8 @@ functions that take a wxListEvent argument.
\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf EVT\_LIST\_BEGIN\_DRAG(id, func)}}{Begin dragging with the left mouse button.}
\twocolitem{{\bf EVT\_LIST\_BEGIN\_RDRAG(id, func)}}{Begin dragging with the right mouse button.}
\twocolitem{{\bf EVT\_LIST\_BEGIN\_LABEL\_EDIT(id, func)}}{Begin editing a label.}
\twocolitem{{\bf EVT\_LIST\_END\_LABEL\_EDIT(id, func)}}{Finish editing a label.}
\twocolitem{{\bf EVT\_LIST\_BEGIN\_LABEL\_EDIT(id, func)}}{Begin editing a label. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
\twocolitem{{\bf EVT\_LIST\_END\_LABEL\_EDIT(id, func)}}{Finish editing a label. This can be prevented by calling \helpref{Veto()}{wxnotifyeventveto}.}
\twocolitem{{\bf EVT\_LIST\_DELETE\_ITEM(id, func)}}{Delete an item.}
\twocolitem{{\bf EVT\_LIST\_DELETE\_ALL\_ITEMS(id, func)}}{Delete all items.}
\twocolitem{{\bf EVT\_LIST\_GET\_INFO(id, func)}}{Request information from the application, usually the item text.}

View File

@@ -96,8 +96,8 @@ format disables timestamping of the messages completely.
\helpref{SetVerbose}{wxlogsetverbose}\\
\helpref{GetVerbose}{wxloggetverbose}\\
\helpref{SetTimeStampFormat}{wxlogsettimestampformat}\\
\helpref{GetTimeStampFormat}{wxloggettimestampformat}\\
\helpref{SetTimestamp}{wxlogsettimestamp}\\
\helpref{GetTimestamp}{wxloggettimestamp}\\
\helpref{SetTraceMask}{wxlogsettracemask}\\
\helpref{GetTraceMask}{wxloggettracemask}
@@ -162,18 +162,18 @@ logged as the normal ones instead of being silently dropped.
Returns whether the verbose mode is currently active.
\membersection{wxLog::SetTimeStampFormat}\label{wxlogsettimestampformat}
\membersection{wxLog::SetTimestamp}\label{wxlogsettimestamp}
\func{void}{SetTimeStampFormat}{\param{const char * }{ format}}
\func{void}{SetTimestamp}{\param{const char * }{ format}}
Sets the timestamp format prepended by the default log targets to all
messages. The string may contain any normal characters as well as \%
prefixed format specificators, see {\it strftime()} manual for details.
Passing an empty string to this function disables message timestamping.
Passing a null value (not empty string) to this function disables message timestamping.
\membersection{wxLog::GetTimeStampFormat}\label{wxloggettimestampformat}
\membersection{wxLog::GetTimestamp}\label{wxloggettimestamp}
\constfunc{const char *}{GetTimeStampFormat}{\void}
\constfunc{const char *}{GetTimestamp}{\void}
Returns the current timestamp format string.

View File

@@ -14,3 +14,4 @@ also has operators for implicit construction from and conversion to the native
You would usually use this type in exactly the same manner as any other
(built-in) arithmetic type.

View File

@@ -30,7 +30,7 @@
%\winhelponly{\\$$\image{1cm;0cm}{wxwin.wmf}$$}
}}
\winhelpignore{\author{Julian Smart, Robert Roebling, Vadim Zeitlin et al}
\date{June 12th 1999}
\date{August 6th 1999}
}
\makeindex
\begin{document}
@@ -97,6 +97,7 @@ licendoc.txt) for conditions of software and documentation use.
\helpinput{classes.tex}
\helpinput{category.tex}
\helpinput{topics.tex}
\helpinput{wxhtml.tex}
\helpinput{wxPython.tex}
\begin{comment}

View File

@@ -41,7 +41,8 @@ this window.
\membersection{wxMenu::wxMenu}\label{wxmenuconstr}
\func{}{wxMenu}{\param{const wxString\& }{title = ""}, \param{const wxFunction}{ func = NULL}}
\func{}{wxMenu}{\param{const wxString\& }{title = ""},
\param{const wxFunction}{ func = NULL}\param{long}{ style = 0}}
Constructs a wxMenu object.
@@ -51,6 +52,8 @@ Constructs a wxMenu object.
\docparam{func}{A callback function if the menu is used as a popup using \helpref{wxWindow::PopupMenu}{wxwindowpopupmenu}.}
\docparam{style}{If set to \tt{wxMENU_TEAROFF}, the menu will be detachable.}
\pythonnote{The wxPython version of the \tt{wxMenu} constructor
doesn't accept the callback argument because of reference counting
issues. There is a specialized wxMenu constructor called
@@ -60,6 +63,13 @@ otherwise your callback function will get dereferenced when the menu
does.
}
\func{}{wxMenu}{\param{long}{ style }}
Constructs a wxMenu object.
\wxheading{Parameters}
\docparam{style}{If set to \tt{wxMENU_TEAROFF}, the menu will be detachable.}
\membersection{wxMenu::\destruct{wxMenu}}
\func{}{\destruct{wxMenu}}{\void}
@@ -681,3 +691,8 @@ Use only after the menubar has been associated with a frame.
\helpref{wxMenuBar::GetLabelTop}{wxmenubargetlabeltop}
%%% Local Variables:
%%% mode: latex
%%% TeX-master: t
%%% End:

View File

@@ -142,4 +142,3 @@ One of:
\twocolitem{{\bf wxMUTEX\_UNLOCKED}}{The calling thread tries to unlock an unlocked mutex.}
\end{twocollist}

View File

@@ -34,7 +34,7 @@ Retrieves the client data pointer associated with the node.
Retrieves the next node (NULL if at end of list).
\membersection{wxNodeBase::Previous}
\membersection{wxNodeBase::GetPrevious}
\func{wxNodeBase *}{GetPrevious}{\void}

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