Compare commits

..

707 Commits

Author SHA1 Message Date
Bryan Petty
59ddf31b29 This commit was manufactured by cvs2svn to create tag 'WX_2_3_1'.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/tags/WX_2_3_1@10870 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-07-06 20:15:35 +00:00
Vadim Zeitlin
53f5e875b2 fix for rpm uninstallation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10636 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-22 00:22:44 +00:00
Vadim Zeitlin
89b6217867 finally, wx/setup.h is not needed in the .spec
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10635 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-22 00:03:40 +00:00
Vadim Zeitlin
ead9b933bf regenerated again
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10634 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-21 23:54:57 +00:00
Vadim Zeitlin
abf6bdb786 fixed bug in baserpm.t and regenerated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10633 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-21 23:45:23 +00:00
Vadim Zeitlin
156da3a922 added missing files to the RPM
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10632 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-21 23:32:16 +00:00
Vadim Zeitlin
65fa237423 regenerated with tmake
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10631 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-21 23:30:47 +00:00
Vadim Zeitlin
d1f5f7a44b wxBase compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10630 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-21 18:37:33 +00:00
Vadim Zeitlin
a2e91a93a8 possible compilation problem fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10629 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-21 18:31:43 +00:00
Vadim Zeitlin
380fc80de0 enabled all tests for the release
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10628 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-21 18:25:15 +00:00
Vadim Zeitlin
91bed19140 oops... fix for the fix for config.status
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10627 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-21 18:24:04 +00:00
Vadim Zeitlin
6fe273c192 removed obsolete files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10626 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-21 18:12:50 +00:00
Vadim Zeitlin
da38429d93 some warnings fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10625 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-21 18:12:17 +00:00
Vadim Zeitlin
1457c9030c fixed warning about multiline comment
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10624 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-21 17:53:47 +00:00
Vadim Zeitlin
3a3400520a enable all tests
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10623 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-21 17:53:35 +00:00
Vadim Zeitlin
b5fa0a3e0f 1. use tar.bz2 as sources, not tar.gz
2. fix URL in the spec files


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10622 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-21 17:53:19 +00:00
Vadim Zeitlin
991a575988 don't move the file to itself in AC_OUTPUT, this allows to run config.status after configure
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10621 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-21 17:52:21 +00:00
Vadim Zeitlin
16b0e4ac36 1. added erase and event samples to the distribution
2. tar.bz2 now unpacks into wxTOOLKIT-VERSION and not wxTOOLKIT as well


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10620 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-21 17:51:42 +00:00
Vadim Zeitlin
027c19bedb added ru files to the trunk, removed obsolete wxstd files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10619 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-21 17:18:26 +00:00
Václav Slavík
a914db0fb3 fixed yet another bug in wxHtmlTag's parameters parser
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10618 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-20 13:16:15 +00:00
David Webster
2004cad1ed Some OS/2 catching up.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10615 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-19 12:56:41 +00:00
Vadim Zeitlin
57fe5ed056 fixed <iostream> detection
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10614 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-19 12:12:27 +00:00
Vadim Zeitlin
d6e969f677 added [bzip-]dist-only targets to the makefile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10612 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-19 08:38:47 +00:00
Václav Slavík
17092e43e5 applied patch #432997 (wxHTML added to Watcom makefiles)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10611 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-18 22:37:42 +00:00
Vadim Zeitlin
17665a2b5c implemented text styles for GTK+
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10610 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-18 17:41:33 +00:00
David Webster
58d5ad5e3c define this, wxSIZE_T_IS_UINT, for OS/2.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10609 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-18 15:52:49 +00:00
Julian Smart
f45907a264 Reduced true colour icon (!) to 16 colours, updated project files and scripts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10608 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-17 22:41:45 +00:00
Julian Smart
35820dcb47 Makefile and other small corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10607 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-17 18:34:20 +00:00
Julian Smart
cb35465eec Canvas lib precompiled header fix; doc typos fixes; makefile.vc dbtable.cpp addition
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10606 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-17 13:32:53 +00:00
Vadim Zeitlin
8e0e4b1b64 more region tests
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10605 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-17 13:25:55 +00:00
Vadim Zeitlin
c4218a7403 fixed clip rect when logical coords != device ones
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10604 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-17 13:14:20 +00:00
Václav Slavík
78c1f5f1b8 fixed stream error handling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10603 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-17 10:41:40 +00:00
Vadim Zeitlin
d9f9aa2d8f warning fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-16 22:57:20 +00:00
Vadim Zeitlin
e697316793 added GetSizer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10601 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-16 22:48:53 +00:00
Gilles Depeyrot
a45d7ab723 disable toggle button under Mac OS X (not yet implemented)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10600 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-16 21:13:35 +00:00
Gilles Depeyrot
618351fe26 added listbox creation under Mac OS X and toggle buttons
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10599 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-16 21:11:32 +00:00
Vadim Zeitlin
3ebcfb769f applied patch #428104 (SetSizeHints() for wxMDIChildFrame)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10598 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-16 01:36:35 +00:00
Vadim Zeitlin
6138e469c9 oops, compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10597 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-16 01:22:07 +00:00
Vadim Zeitlin
f407580407 applied patch 433505 (MDI parent activation fix)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10596 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-16 01:21:46 +00:00
Vadim Zeitlin
1f23a1c0f0 applied 2nd part of flicker reducing patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10595 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-16 01:17:55 +00:00
Vadim Zeitlin
1dbb34ec2a applied patch 427702 (remove flicker)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10594 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-16 01:14:22 +00:00
Vadim Zeitlin
fe31f91ccb applied (part of) patch 433176 (reduce flicker)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10593 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-16 01:09:30 +00:00
Vadim Zeitlin
50567b69d6 1. improved wxKill() implementation for Win32
2. added wxKillError output parameter to wxKill
3. added wxProcess::Kill() and Exists()
4. documented all the new stuff
5. updated the sample to show it


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10592 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-16 00:59:07 +00:00
Vadim Zeitlin
b3d008dbd5 subclass status bar as any normal window to ensure that the events from the controls inside it are processed normally
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10591 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-15 23:08:23 +00:00
Vadim Zeitlin
33a8563e66 compilation fixes and some cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10590 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-15 22:55:11 +00:00
Václav Slavík
181b406894 added wxDynamicLibrary as suggested by Vadim
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10589 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-15 22:05:31 +00:00
Robin Dunn
d56cebe7a4 Added ability to use xml resource files. Still need to add ability to
subclass wxXmlResourceHandler, etc...

Added wxGridAutoEditMixin to the mixins library package.

Made ColourSelect be derived from wxButton.

Fixed a few bugs here and there, added some missing methods, etc.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10588 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-15 21:43:26 +00:00
Vadim Zeitlin
dd2c8b7c33 fix for brain dead egcs - this stupid compiler not only doesn't compile what it should but also compiles junk which it shouldn\'t!
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10587 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-15 17:48:32 +00:00
Vadim Zeitlin
1c7e7d5b1e applied patch 433352 (fix for wxTextCtrl::SetForegroundColor())
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10586 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-15 16:37:14 +00:00
Julian Smart
840bb34200 Added missing settings.h include (sorry)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10585 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-15 14:34:27 +00:00
Vadim Zeitlin
19af3b06be fixed size_t == uint detection
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10584 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-15 14:27:05 +00:00
Julian Smart
b0c89ddf39 Moved metafile helpers from utilsexc.cpp to utils.cpp -- seemed more appropriate!
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10583 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-15 13:34:06 +00:00
Julian Smart
e949bf13c5 Sync'ed show-window flag in MDI child constructor; added initial wxKill implementation
for wxMSW


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10582 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-15 12:59:22 +00:00
Vadim Zeitlin
eaac8805cd applied patch 430963 (fix for wxRegConfig::SetPath("//foo")
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10581 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-15 11:44:07 +00:00
Vadim Zeitlin
3892380ca1 applied patch 430961 (fix for wxHashTable::Put(key, value, object)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10580 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-15 11:37:56 +00:00
Vadim Zeitlin
6721fc3852 restored (and slightly improved) wxImage::Scale() fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10579 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-15 01:30:21 +00:00
Vadim Zeitlin
4f53efae0f define wxSIZE_T_IS_UINT for Windows
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10578 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-15 01:15:15 +00:00
David Webster
254ccb8c06 Add dbgrid to make.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10577 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-14 22:18:18 +00:00
David Webster
fd6d5c94f8 Add the options stuff to settings.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10576 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-14 22:17:56 +00:00
Kendall Bennett
d80207c344 Reverted wxFileSystem changes to image.cpp and dib.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10575 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-14 20:09:35 +00:00
Vadim Zeitlin
4a0b46a762 fixed warning about unused var
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10574 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-14 17:44:24 +00:00
Vadim Zeitlin
d014b8670e no changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10573 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-14 17:43:38 +00:00
Vadim Zeitlin
8773bc76d8 regenerated from templates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10572 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-14 17:38:17 +00:00
Vadim Zeitlin
8443e0d2cf forgot to commit - no changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10571 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-14 17:37:49 +00:00
Vadim Zeitlin
d836ee960a hopefully finally fixed the problem with ambiguous overloads of wxString::operator[] for _all_ machines
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10570 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-14 17:27:44 +00:00
Julian Smart
5c44cd0518 Fixed MDIS_ALLCHILDSTYLES bug (WS_VISIBLE needed to be added to child frame style)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10569 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-14 16:51:29 +00:00
Vadim Zeitlin
698dcdb687 regenerated again
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10568 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-14 16:29:35 +00:00
Robert Roebling
f94fca1b74 I don't understand the SetIconState code in /src/frome.cpp, but
I know it is wrong. This also caused the splitter window bug.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10567 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-14 16:15:29 +00:00
Vadim Zeitlin
6c28fd3379 fixed indentation and warnings/bugs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10566 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-14 15:16:45 +00:00
Julian Smart
63dfa4e56c These add .mak (for BCB1) and .bpr (for BCB3 and 4) files for CBuilder in
each of the samples which will compile with Borland's compiler. They also
modify the start of the .cpp file so the Cbuilder IDE will accept it.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10565 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-14 13:33:39 +00:00
Stefan Csomor
72a52d3f4e since somehow db does not compile properly anymore (was not tested anyway) now disabling wxUSE_ODBC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10564 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-14 10:20:51 +00:00
Julian Smart
d3211838bf Added SetOption,GetOption[Int] to wxSystemSettings. Made native MaskBlt optional.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10563 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-14 10:06:47 +00:00
Julian Smart
d0af5538d6 More contrib compilation fixes & makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10562 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-13 16:05:08 +00:00
Julian Smart
1a464ed91d Some BC++ fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10561 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-13 15:01:46 +00:00
Julian Smart
3f1802b55d Fixes to BC++ compilation in mem debug mode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10560 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-13 14:49:26 +00:00
David Webster
c190ab22c0 Add USE_MENUS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10559 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-13 13:01:11 +00:00
Julian Smart
4d2c67a9da Added wxUSE_MENUS to setup0.h to make menu sample compile;
updated some makefiles


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10558 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-13 12:45:31 +00:00
Václav Slavík
35d764b08c fixed another bug in strconv
(Off by one error that did not demonstrate itself in poEdit before because
windows native convertion wasn't used due to wxLocale returning cp12xx instead
of windows-12xx. MultiByteToWideChar and WideCharToMultiByte return size of
needed buffer, not number of output characters. Author of the code didn't know
this, hence off by one.)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10557 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-12 22:56:40 +00:00
Václav Slavík
93a20a27c3 more fixes for autoconf 2.50:
ac-2.50 does not use config.cache by default so we cannot use it
to pass arguments to subdirs configure scripts. Instead, we now
export some shell variables to make sure they are part of subdir
configure script's environment


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10556 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-12 22:55:23 +00:00
Václav Slavík
ecffe99226 standardized encoding names to windows-12xx and iso-8859-x forms
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10555 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-12 22:53:38 +00:00
Vadim Zeitlin
b7fa390b64 removed warning about unused variable
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10554 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-12 20:13:45 +00:00
Kendall Bennett
5ab8bd570e Updates to xmlres.h to allow compiling XML code into a DLL correctly.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10553 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-12 19:49:51 +00:00
David Webster
f91de7da18 must delcare methods as inline if we are going to actually inline them after the declarations or else some compilers will error in a linkage mismatch.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10552 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-12 18:57:26 +00:00
Kendall Bennett
716cd4107b Commited latest SciTech changes into CVS. This includes updates to the
applet code (with changes copyright headers) as well as updates to the
wxImage and dib.cpp modules to use virtual file systems so that we can
load these objects from ZIP files correctly. The dib.cpp module was
also extensively cleaned up (although the DIB writing code does not
presently use file streams as we couldn't figure out if it was possible
to write to a ZIP file stream). The code has been tested and functions
correctly for both regular files and ZIP files.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10551 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-12 18:52:03 +00:00
George Tasker
dba2120c77 Fixed compile problems under MingW32 compiler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10550 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-12 17:20:10 +00:00
Julian Smart
4e5d213ac0 Removed fstream include which seemed unnecessary, and gave errors for BC++ 5.5 anyway.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10549 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-12 17:04:33 +00:00
David Webster
f8ed401c91 Got rid of VisualAge true/false defs with db class fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10548 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-12 13:42:44 +00:00
Julian Smart
b9e5acef4d Added geometry option to setup.h; added some missing make and project files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10547 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-12 10:14:58 +00:00
Guillermo Rodriguez Garcia
7679ac6334 For all platforms except WXMAC, the wxGIFDecoder::dgif function was
allocating 3 arrays of 4096 ints in the stack (48K) which causes
problems with Watcom. Now all platforms behave like WXMAC, i.e. the
arrays are allocated (and freed) dynamically on the heap.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10546 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-12 06:34:24 +00:00
Václav Slavík
1e48782762 fixed remaining bugs in configure.in that manifested themselves with ac-2.50; regenerated configure with ac-2.50
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10545 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 22:58:24 +00:00
Václav Slavík
9c904e251a fixed infinite loop when looking up nonexistent encoding in registry
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10544 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 22:55:01 +00:00
Julian Smart
fd85b0640e Tex2RTF: underscores now only checked for if syntax checking is on.
Removed the MDIS_ALLCHILDSTYLES style again.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10543 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 21:52:58 +00:00
Robert Roebling
33611ebbd9 Applied wxImage::Scale() patch,
Added testing code for wxSplitterWindow bug.
  Added testing code for OnEraseBackground things.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10542 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 20:03:00 +00:00
George Tasker
a4054ad1cf Changed the 'true's and 'false's back to TRUE and FALSE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10541 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 16:59:45 +00:00
George Tasker
a144affed2 Changed the 'true's and 'false's back to TRUE and FALSE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10540 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 16:54:28 +00:00
Julian Smart
5524217904 Removed redundant sections from sizeevt.tex
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10539 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 16:42:35 +00:00
Julian Smart
29acedff16 Added 'wx' prefix to a couple of functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10538 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 16:23:51 +00:00
Vadim Zeitlin
f47658bb79 compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10537 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 16:17:47 +00:00
Vadim Zeitlin
7ae8ee141c fixed broken links to string functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10536 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 15:29:34 +00:00
Julian Smart
d9dd875f00 Updated manual date, removed underscore from label
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10535 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 14:55:44 +00:00
David Webster
9aa3137d38 Needed a comment after last #endif and defined true TRUE and false FALSE for Visual Age.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10534 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 14:12:32 +00:00
David Webster
eae630f139 removed compiler warnings about assignments in logical expressions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10533 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 14:11:46 +00:00
George Tasker
04b9c5bb04 Changes to catch macros that are missing arguments - not perfect, but it will work with all our current TEX files.
Added cleaner ABORT handling in some situations
If \\end{document} is not found, then program auto-aborts after first pass to avoid hanging in some endless loop until all system resources are exhausted and the program crashes.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 12:54:38 +00:00
Julian Smart
36e67c5cfc VC++ project file corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10531 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 12:26:25 +00:00
Vadim Zeitlin
eccf1b2c76 another attempt to fix strconv.cpp compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10530 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 12:19:06 +00:00
Julian Smart
ecf8dd3596 project file updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10529 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 10:14:35 +00:00
George Tasker
93a21d8885 Comment about wxDbGrid being added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10528 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 09:51:38 +00:00
Vadim Zeitlin
47f8e39828 extracted classes into their own files to fix alphabetic order
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10527 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 09:41:54 +00:00
Julian Smart
264b3fc80f Project file updates; cast in strconv.cpp to compile with VC++ 6
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10526 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 07:49:38 +00:00
Ron Lee
c2c767d34c fingers crossed..
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10525 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 07:15:41 +00:00
Ron Lee
16f27353bc last test, really!
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10524 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 04:56:20 +00:00
Ron Lee
a888b8b891 oops.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10523 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 04:43:06 +00:00
Ron Lee
c1ea7ffbdc this time the log stuff will work, really it will..
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10522 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 04:39:27 +00:00
Ron Lee
27ef0d92ff cvs admin test..
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10521 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 04:12:28 +00:00
Ron Lee
ae4c8c5613 log test..
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10520 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 03:54:57 +00:00
Ron Lee
ca892a05f1 more admin tests.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10519 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 03:47:23 +00:00
Ron Lee
03161a30e3 testing, testing, lalala..
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10518 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 03:31:10 +00:00
Ron Lee
22e0f69977 another (semi) gratuitous commit to test the mailer script.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10517 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 03:13:09 +00:00
Ron Lee
e0f33cf107 merged 2.2 /debian changes to 2.3
(and really test the new log mailer *after* committing
 CVSROOT changes :)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10516 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 03:02:05 +00:00
Vadim Zeitlin
703e0a6940 regenerated with autoconf 2.13
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10514 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-11 01:57:57 +00:00
Vadim Zeitlin
852768d9bd fix to alphabetic order of classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10513 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 23:44:19 +00:00
Vadim Zeitlin
9148009bed fixed doc bug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10512 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 23:38:49 +00:00
George Tasker
b53dc7d661 Fixed compilation if wxUSE_NEW_GRID and wxUSE_GRID are both set to 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10511 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 23:20:31 +00:00
Vadim Zeitlin
14c90e0074 another compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10510 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 23:15:02 +00:00
Václav Slavík
6232543b1b changes to work with autoconf 2.50
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10509 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 22:26:16 +00:00
Gilles Depeyrot
1f8ae82f59 corrected wxWindows library name under Mac OS X
corrected detection of wchar_t under Mac OS X
tweaked detection of pthread library under Mac OS X


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 20:20:20 +00:00
Gilles Depeyrot
7b724ca70d corrected Mac OS X resource file name
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10507 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 20:17:31 +00:00
Gilles Depeyrot
79af3d3898 corrected wchar handling for Mac OS X
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10506 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 18:17:59 +00:00
George Tasker
f21b2fd89d Added code to show off wxDbGrid (contributed by Paul and Roger Gammans) in wxUSE_NEW_GRID is set to 1. If grid is not enabled, the program does not compile in the wxDbGrid portion of the sample
Fixed a bug in the SetColDef() descriptions that had the Contribs column defined as a UCHAR but the SQL data type was set to be SQL_C_SHORT when it needed to be SQL_C_UTINYINT to match the size of the UCHAR data variable
General code cleanup
TRUE/FALSE changed to true/false
Now uses new wxDbLogExtendedErrorMsg() function for reporting human readable ODBC errors


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10505 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 17:12:56 +00:00
George Tasker
fa464e825d Added wxDbGrid files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10504 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 17:09:16 +00:00
George Tasker
32a2907bd3 wxDbGrid additions contributed by Paul and Roger Gammans with additions/corrections from George Tasker
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10503 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 17:08:42 +00:00
George Tasker
882fc8a922 wxDbGrid additions
Changed all TRUE/FALSEs to true/false
General code cleanup


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10502 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 17:07:23 +00:00
George Tasker
2c257434c3 wxDbGrid additions
Changed all TRUE/FALSEs to true/false
Added wxDbLogExtendedErrorMsg() function to  retrieve human readable ODBC error information from the ODBC driver
General code cleanup


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10501 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 17:06:09 +00:00
George Tasker
209875803d wxDbGrid additions
Changed all TRUE/FALSEs to true/false
Added wxDbLogExtendedErrorMsg() function to  retrieve human readable ODBC error information from the ODBC driver


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10500 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 17:05:25 +00:00
George Tasker
edca7a8205 wxDbGrid additions - Added support for ODBC date types
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10499 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 17:04:00 +00:00
George Tasker
ffd98768ba Initialized m_startint in the constructor to avoid cloning of uninitialized value
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10498 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 17:01:25 +00:00
Vadim Zeitlin
a3f2769e09 compilation fix for SIZEOF_WCHAR_T being undefined
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10497 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 17:00:32 +00:00
Julian Smart
c862185052 Renamed project files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10493 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 11:58:30 +00:00
Julian Smart
74f8d8ed0c Renamed XRC project files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10492 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-10 11:52:51 +00:00
Vadim Zeitlin
bab1e72221 add #error for platforms with weird sizeof(wchar_t)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10491 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 23:22:44 +00:00
Václav Slavík
78d14f80e9 changed wxXML to XRC, wx/xml/*.h->wx/xrc/*.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10490 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 22:43:51 +00:00
Václav Slavík
999d9a9f79 changed wxXML to XRC, wx/xml/*.h->wx/xrc/*.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10489 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 22:18:45 +00:00
Vadim Zeitlin
447002a131 use SetForegroundWindow instead of BringWindowToTop
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10488 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 21:38:00 +00:00
Gilles Depeyrot
aec73dbba4 added CodeWarrior 5 projects for samples
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10487 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 20:22:36 +00:00
Gilles Depeyrot
6099721bfb added OpenGL sample project for CodeWarrior 5
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10486 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 20:12:14 +00:00
Gilles Depeyrot
78c17f622d added dead-strip static initialization code option
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10485 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 20:08:42 +00:00
Gilles Depeyrot
c00200b862 added dead-strip static initialization code option
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10484 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 20:03:18 +00:00
Václav Slavík
298d865368 documented Kendall's change of wxHtmlWindow::LoadPage to virtual function
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10483 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 19:11:24 +00:00
Václav Slavík
75829d0c1b oops, forgot to add editlbox
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10482 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 19:11:16 +00:00
Vadim Zeitlin
478e6b717c applied patch 430835 (missing wxSTD breaking compilation for VC++ 5)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10481 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 17:57:06 +00:00
Vadim Zeitlin
4c5032ccd1 applied patch 428783 (fix B32 makefiles)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10480 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 17:55:09 +00:00
Vadim Zeitlin
0d8737fdcc applied patch 431596 (fixes some crashes in wxDocView classes)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10479 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 17:51:20 +00:00
Vadim Zeitlin
ef2992354c applied patch 424550 (fix compilation of the notebook sample in tabbed dialog mode)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10478 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 17:48:20 +00:00
Julian Smart
bc00e7155e Updates for 2.3.1; fixed syntax error in makefile.b32 but this probably
means that the 'version' fix for BC++ doesn't work (misapplied?)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10477 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 17:43:16 +00:00
Vadim Zeitlin
40a8907605 fixed bug 418496 (wxDC::SetClippingRegion doesn't clear the previous clipping region)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10476 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 17:40:44 +00:00
Vadim Zeitlin
638bc56cf9 fixed bug 418766 (elapsed time not initialized in wxProgressDialog)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10475 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 17:07:10 +00:00
Vadim Zeitlin
c7f9a482ec fixed bug 419079 (wxDateTime::ParseTime() didn't find am/pm)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10474 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 17:00:36 +00:00
Vadim Zeitlin
c4d305b7bd fixed bug 424212 (unworking close button in the progress dialog)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10473 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 16:49:56 +00:00
Vadim Zeitlin
ed582841a2 1. added wxAssertIsEqual() function to be used in wxASSERT()
2. made wxTrap() public, documented it


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10472 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 16:35:38 +00:00
Vadim Zeitlin
749b01f037 src/common
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10471 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 16:34:54 +00:00
Vadim Zeitlin
c8f144761c fix for crash when pressing TAB in the tree text control
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10470 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 15:57:51 +00:00
Stefan Csomor
9dd11f90ad delete now does remove the item in correct synch from m_datas and m_strings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10469 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 09:11:45 +00:00
Vadim Zeitlin
53e3052c3c warning fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10468 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 02:01:54 +00:00
Vadim Zeitlin
b5299791f4 some fixes to wxSingleInstanceChecker error reporting
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10467 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 01:56:00 +00:00
Vadim Zeitlin
7c4157904f added missing brace
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10466 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 00:27:50 +00:00
Vadim Zeitlin
7cbe4e7973 some missing c_str()s added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-09 00:21:47 +00:00
Vadim Zeitlin
9cfadba232 regenerated files with tmake
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10464 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-08 23:57:13 +00:00
Vadim Zeitlin
4f3c5f06ff implemented wxSingleInstanceChecker for Unix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10463 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-08 23:42:59 +00:00
Vadim Zeitlin
fae9f59039 added tiny wxInitializer class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10462 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-08 23:11:15 +00:00
Kendall Bennett
38caaa61b1 Merged latest changes from SciTech code base into wxWindows CVS Tree.
Includes updates to remove Watcom compiler warnings and the latest
updates to the wxApplet code.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10461 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-08 19:37:56 +00:00
David Webster
3febf6845f Enabling the Pop Menu fix to peek at all the command messages. Required adding a secondary DoMessage to wxApp. Some textctrl work as well.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-08 15:24:37 +00:00
David Webster
153b1416a4 Add support for the eventual inclusion of the single instance code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10459 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-08 15:23:14 +00:00
Julian Smart
ae090fdb7f Support for Cygwin 1.0 (thought it worked before, but...)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10458 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-08 15:04:00 +00:00
Julian Smart
ee544c1741 Altered the message loop to process implicit accelerators correctly in controls
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10457 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-08 11:33:22 +00:00
Robin Dunn
6124f5c48c move the tech note to a correctly named file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10456 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-08 04:26:35 +00:00
Vadim Zeitlin
ed45e26357 replaced wxYield() call in PopupMenu() by a much safer wxYieldForCommandsOnly() - fixes tree ctrl bug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10455 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-08 01:47:15 +00:00
Vadim Zeitlin
58b24a564c added wxSingleInstanceChecker test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10454 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-08 01:29:59 +00:00
Vadim Zeitlin
68a602fcd2 added wxSingleInstanceChecker class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10453 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-08 01:28:49 +00:00
Stefan Csomor
f0822896b3 implemented generic clipboard, corrected event handling for radiobutton
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10452 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-07 21:05:01 +00:00
Stefan Csomor
12d67f8ad0 removed duplicate definition
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10451 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-07 21:01:39 +00:00
Stefan Csomor
662899dd60 clipboard implementation generalized
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10450 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-07 20:57:31 +00:00
Julian Smart
fd746d3050 Bug in wxDocument::Save logic corrected, whereby Save didn't save when not
first-time saved


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10449 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-07 13:30:54 +00:00
Vadim Zeitlin
b6b1d47f2c documented wxLog::Suspend/Resume
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10448 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-07 11:12:11 +00:00
Julian Smart
0ddef74db4 Updates for version change to 2.3.1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10447 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-07 10:57:58 +00:00
Robin Dunn
665bbe97a9 regenerated configure from configure.in
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10446 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-06 17:12:35 +00:00
Vadim Zeitlin
dd107c50be applied patch for compilation with gcc 3.0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10445 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-06 16:51:53 +00:00
Robin Dunn
014e19de74 Updated version numbers to 2.3.1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10444 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-06 16:50:48 +00:00
Robin Dunn
7ca4d1212e Added technote about where the version numbers are located.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10443 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-06 16:44:25 +00:00
Vadim Zeitlin
448450723a applied patch 429317 (PCH fix for BC++)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10442 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-06 16:29:51 +00:00
Vadim Zeitlin
83c22707a4 fixed slider value rounding once again
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10441 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-06 16:27:45 +00:00
Vadim Zeitlin
350ba193e5 another fix for enter processing in wxSpinCtrl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10440 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-06 14:54:29 +00:00
Julian Smart
9e3cb9eefc Fixed memory leak in textcmn.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10439 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-06 11:17:30 +00:00
Julian Smart
fae5c45283 Correction to accelerator bug fix: add FVIRTKEY if ctrl, alt or shift
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10438 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-06 11:11:58 +00:00
Julian Smart
2317bff237 Only add FVIRTKEY if isVirtual is TRUE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10437 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-06 10:46:00 +00:00
Vadim Zeitlin
5b6d6b7008 fixed bug in determining the best listbox size
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10436 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-06 00:05:42 +00:00
Robin Dunn
b5ff2fbd94 Fixed to recognise the FINAL=hybrid make flag and to then use the
right library.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10434 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-05 22:06:06 +00:00
Robin Dunn
0fb9cd0135 Added functions to initialize the local wxModules since it's possible
(normal in wxPython) for these modules to be loaded AFTER
wxModule::InitializeModules has been called for the rest of wx.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10433 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-05 22:05:05 +00:00
Robin Dunn
ea89ec1760 Changed WXDLLEXPORT's to WXXMLDLLEXPORT so the xmlres library can be
used from wx DLL without it being a DLL also.  Some work will still
need to be done for making xmlres be a DLL...


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10432 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-05 22:03:02 +00:00
Stefan Csomor
a763ac036b unnecessary ClipRects
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10431 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-05 21:23:32 +00:00
Stefan Csomor
fd2e20ff9c reverted some redrawing optimizations due to redraw errors
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10430 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-05 20:33:00 +00:00
Vadim Zeitlin
7f017c64bb applied patch 430452 (mingw32 compilation fixes)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10429 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-05 20:32:09 +00:00
Gilles Depeyrot
0c71220c86 remove xpm files replaced with internal xpm decoder/handler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10428 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-05 19:08:38 +00:00
Gilles Depeyrot
898844403e removed useless defines
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10427 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-05 19:03:37 +00:00
Gilles Depeyrot
f9e45bd7de corrected instructions for MacHeaders precompilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10426 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-05 18:53:41 +00:00
Vadim Zeitlin
f51a6f6a0c let wxSpinCtrl process the enter key
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10425 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-05 17:10:33 +00:00
David Webster
39c26ef2d7 Size updates and new methods to export.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10424 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-04 19:03:35 +00:00
Václav Slavík
744442dd11 display file name correctly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10422 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-03 18:01:27 +00:00
Václav Slavík
5c3e299e08 added wxUSE_INTL around wxLocale::GetSystemEncoding
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10420 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-03 16:19:36 +00:00
Václav Slavík
030c0beade fixed stupid memory leak
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10419 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-03 16:19:17 +00:00
Stefan Csomor
c36f02449b added GetControlBounds for accessing contrl.rect
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10417 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-03 10:29:00 +00:00
Václav Slavík
a92b8709d9 added code to set wxFont's default encoding to wxLocale::GetSystemEncoding()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10416 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-03 09:43:52 +00:00
Václav Slavík
cc0c7cd8a5 fix for wxFrame's last focus bug (finally?)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10415 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-03 09:43:36 +00:00
Vadim Zeitlin
161f4f7380 applied Unicode fixes for mingw32 (patch 429654)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10414 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-03 02:58:56 +00:00
Václav Slavík
2ec6905c69 fixed new charset detection code (langinfo.h not included in intl.cpp; langinfo.h not neccessary in strconv.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10412 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-02 11:25:21 +00:00
Václav Slavík
c3d62ecf55 fixed bug #429351 (compilation broken in CJK environment (whatever it is) in 'agrave' definition)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10409 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-01 21:47:27 +00:00
Václav Slavík
938123ef4d added alignment style to wxStaticText handler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-01 21:47:13 +00:00
Robin Dunn
be329a3de3 Allowed MSW wxTrextCtrl styling to also set the background colour,
added wxUSE_RICHEDIT2 so this can be disabled for compilers that don't
have the right structures.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10407 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-01 19:26:57 +00:00
Robin Dunn
4ceb1196bb Translated a double click into just a second click for Scintilla
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10406 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-01 18:42:09 +00:00
Vadim Zeitlin
3765e93695 fixed problem with HAVE_PTHREAD_RECURSIVE_MUTEX_INITIALIZER test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-01 15:34:08 +00:00
Vadim Zeitlin
e80591b930 compilation fix for old mingw32
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10403 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-01 15:26:02 +00:00
Václav Slavík
a324685268 added wxBU_* styles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10402 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-01 12:23:46 +00:00
Václav Slavík
4c584912b5 added wxNO_BORDER style
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10401 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-01 12:23:37 +00:00
Vadim Zeitlin
82713003dc fix for last commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10400 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-01 01:30:51 +00:00
Václav Slavík
dbae17a2e0 yet another attempt to wxFrame's last focus bug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10397 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-31 23:02:06 +00:00
Vadim Zeitlin
803c553734 Unix compilation fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10395 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-31 21:41:44 +00:00
Vadim Zeitlin
dccce9eae1 added wxLocale::GetSystemEncoding
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-31 20:27:37 +00:00
Vadim Zeitlin
0d6ae333cd fixed right click handling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10393 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-31 19:18:44 +00:00
Vadim Zeitlin
0731c594f4 oops... removed test code from the sample, what was it doing there for the last 7 months
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10392 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-31 14:33:17 +00:00
Vadim Zeitlin
3dd9b88ac2 we now send iconize events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10391 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-31 14:32:06 +00:00
Robin Dunn
bf7945cef1 Added EVT_GRID_EDITOR_CREATED and wxGridEditorCreatedEvent so the user
code can get access to the edit control when it is created, (to push
on a custom event handler for example.)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10390 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-31 06:23:06 +00:00
Robin Dunn
2910484954 Forgot to check-in this change last week...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10389 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-31 06:21:30 +00:00
Stefan Csomor
e42eaa04de removed unnecessary ClipRect calls, refresh on MacActivate with eraseBkgnd false
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10388 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-31 05:44:07 +00:00
Stefan Csomor
493c9f6bb2 adapted to new sending for radiobutton events for unselecting too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10387 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-31 05:42:50 +00:00
Vadim Zeitlin
8d8bd2496e fixed wxFrame::SetClientSize() with toolbar bug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10384 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-30 21:05:23 +00:00
Stefan Csomor
fdaf613add rewrite to avoid unnecessary redraws
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10383 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-30 20:46:00 +00:00
Robert Roebling
87dde0b5fc Forgot ! in wxTreeCtrl flag test.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10382 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-30 15:53:35 +00:00
Stefan Csomor
8803596043 corrected update upon activate
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10381 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-29 21:15:27 +00:00
Stefan Csomor
9eed87190a adapted background color for mac for listcontrols
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10380 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-29 21:12:26 +00:00
Stefan Csomor
ed4ddd3393 adapted background color for mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10379 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-29 21:11:26 +00:00
David Webster
030c24fb9a Add gridctrl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10378 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-29 18:59:46 +00:00
David Webster
1ec46a5b35 Lots of OS/2 Updates mirroring msw updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10377 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-29 18:59:17 +00:00
David Webster
30bc4a8fc0 New grid control OS/2 compile issue
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10376 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-29 18:58:02 +00:00
Václav Slavík
43ef6d9ec7 applied patch #427244 (wxrcedit improvements: XRC version upgrade)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10375 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-29 18:21:09 +00:00
Stefan Csomor
342ae8aedf activated dynlib
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10374 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-29 17:52:44 +00:00
Stefan Csomor
763ca781fa updated mac implementation to support the success parameter , the new filename2filespec call and reintroduced the disappeared dllClose definition
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10373 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-29 17:49:34 +00:00
Stefan Csomor
c257d44dd2 corrected GetCharWidth and implemented MacSuperChangedPosition for toolbars
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10372 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-29 14:37:43 +00:00
David Webster
ea7d85eb85 Menu files for OS/2 builds
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10371 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-29 03:49:36 +00:00
David Webster
ad7f3189f3 Various fixes in DC's, ownerdrawn menu items, etc...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10370 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-29 03:46:50 +00:00
Vadim Zeitlin
5c737c4c37 link preventing typo fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10368 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-28 18:55:40 +00:00
Vadim Zeitlin
7ac05a91ab compilation fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10367 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-28 15:05:05 +00:00
George Tasker
597fadcef5 Informix fixes (submitted by Roger Gammans)
Added .c_str() to some wxString instances when being Printf()'d into another wxString


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10366 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-28 12:24:22 +00:00
George Tasker
9e4d1095ea Fixed #pragma interface mismatches
Updated comments


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10365 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-28 12:10:04 +00:00
George Tasker
412394b831 Fixed incorrect creation of the pColFor instances (per Roger Gammans patches). This fixes surious crashes with large database systems, and significantly increases the speed of the application when idntifying all datasource tables.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10364 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-28 12:02:51 +00:00
Václav Slavík
66080691b1 fixed parsing of comments before root node
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10363 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-28 10:37:11 +00:00
Ryan Norton
832fedf6a5 Initial revision
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10360 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-28 04:45:41 +00:00
Robert Roebling
32ea1f988d wxDC::DrawPolygon correction
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10358 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-27 19:18:07 +00:00
Robert Roebling
b77d96500a wxTreeCtrl Mac look
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10357 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-27 19:17:10 +00:00
Vadim Zeitlin
68275b8532 really fixed wxConfig bug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10356 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-27 19:01:38 +00:00
Vadim Zeitlin
e1b8d4d841 fixed wxConfig bug I've introduced yesterday
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10355 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-27 18:53:26 +00:00
Vadim Zeitlin
0537351f78 regenerated from tmake templates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10354 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-27 16:22:36 +00:00
Vadim Zeitlin
622be94c78 removed log record
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10353 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-27 16:19:54 +00:00
Vadim Zeitlin
d10f4bf950 applied tons of wxGrid patches
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10352 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-27 15:22:28 +00:00
Vadim Zeitlin
1fd4a033f4 applied patch 422308 (fixes for version info for wxWin DLL)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10351 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-27 14:20:38 +00:00
Vadim Zeitlin
dead66baf5 removed wxCLIP_CHILDREN style from wxSplitterWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10350 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-27 14:10:17 +00:00
Václav Slavík
4a41c655e8 yet another attempt to fix LastFocus bug in wxFrame
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10349 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-27 14:01:18 +00:00
Vadim Zeitlin
86f65864f9 fixed bug reported in patch 427696 (incorrect toolbar style)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10348 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-27 13:25:01 +00:00
Vadim Zeitlin
3aa467b63e applied patch 427695 (initialize m_nPush)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10347 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-27 13:21:16 +00:00
Robert Roebling
c22886bdaf Tried to make wxTreeCtrl on Mac look more Maccy. Part I.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10346 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-27 13:07:09 +00:00
Vadim Zeitlin
4bc1afd502 added text style support to wxTextCtrl for MSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10345 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-27 03:28:28 +00:00
Vadim Zeitlin
1341230e80 oops, typo leading to compilation problem fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10344 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-27 03:11:49 +00:00
Vadim Zeitlin
0da25f69ba fixed 'patch' #422993 (Error in wxConfigBase::Write for doubles)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10343 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-27 02:23:16 +00:00
Vadim Zeitlin
e3d0aa773d added popup menu demo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10342 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-27 02:16:09 +00:00
Václav Slavík
ada8f80775 another attempt to fix wxPanel/wxFrame::m_winLastFocused handling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10341 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-26 22:20:33 +00:00
Robert Roebling
b192a24c92 Fix cvs conflict.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10340 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-26 21:11:10 +00:00
Robert Roebling
2301e28195 Implemented LAST_NOT pen style for orthogonal lines.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10339 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-26 21:10:16 +00:00
Stefan Csomor
97af5088ec clipboard reading
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10338 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-26 19:54:46 +00:00
Stefan Csomor
99918ac7f3 changed Mac Mouse Moved Hysteresis (area in which mouse movements do NOT generate a moved event) to a single point region for platform compatibility
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10337 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-26 15:47:14 +00:00
Stefan Csomor
cd378f94be corrected wxIsAbsolutePath for new Mac Path notation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10336 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-26 13:41:23 +00:00
Stefan Csomor
a2f94f406e corrected transparency in DoDrawIcon , if there is a mask in the icon, it's used
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10335 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-26 12:44:46 +00:00
Václav Slavík
e7f8e8b788 removed stubs and qt 'ports'
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10334 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-26 10:05:06 +00:00
Václav Slavík
453507f22c fixed memory leak in DoPrint
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10333 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-26 10:04:03 +00:00
Stefan Csomor
4ce431b02b correct bitmap construction (including mask) from image
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10332 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-26 07:52:12 +00:00
David Webster
008089f632 Added some extended styles to OS/2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10330 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-25 21:12:00 +00:00
Gilles Depeyrot
a694a0c6c4 corrections to directory management for Mac OS X
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10329 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-25 19:10:52 +00:00
Vadim Zeitlin
226ee02213 fixed calendar control height calculation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10328 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-25 13:35:22 +00:00
Vadim Zeitlin
89a0a3220b fixed bug with using wxCommandEvent::GetInt() instead of GetId()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10327 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-25 13:31:11 +00:00
George Tasker
31ad62bc09 Changes to detect unresolved references (REF NOT FOUND) during HTML conversion
Filenames with underscores are no longer reported as errant uses of '_' character
Minor GUI display tweeks.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10326 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-25 13:02:53 +00:00
George Tasker
c0ffb626ed Fixed unresolved references
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10325 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-25 12:47:00 +00:00
Robin Dunn
862fed9394 Added a "rpm" target so you can just do "make rpm" and it should do
the right thing


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10323 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-25 07:01:32 +00:00
Robin Dunn
0f7deca925 Fixed the problem of the RPM having the builder's user and group id
and complaining about it during install.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10322 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-25 07:00:12 +00:00
George Tasker
7e2f3297f0 Replaced \verb$....$ with \tt{....}
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10320 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-25 00:40:06 +00:00
George Tasker
341479ffb9 Removed check for '\par' at beginning of line that I mistakenly added before
Standardized the way I spelled 'curley' everywhere


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10319 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 23:37:39 +00:00
Vadim Zeitlin
c786f76365 fixed wxBase compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10318 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 21:36:41 +00:00
Vadim Zeitlin
8efab359f7 fixed compilation with NO_GUI
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10317 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 21:36:11 +00:00
Vadim Zeitlin
520d193622 some broken links fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10316 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 21:35:34 +00:00
Vadim Zeitlin
44bb263ab2 broken link fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10315 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 21:26:42 +00:00
Stefan Csomor
bedaf53eaf reverting to native mac pathnames
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10314 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 21:22:04 +00:00
Stefan Csomor
504aaaad1d added generic dir dlg
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10313 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 21:19:20 +00:00
George Tasker
c55dea6070 Compilation fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10312 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 18:31:49 +00:00
Vadim Zeitlin
033400ebcb fix for egcs internal compiler error
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10311 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 17:20:22 +00:00
George Tasker
b74d0665b5 Added documentation for the new -checkcurleybraces and -checksyntax commandline parameters for tex2rtf
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10310 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 16:59:28 +00:00
George Tasker
fad535eea3 Added '_' checking that warns of the use of "_" or "\_" in the wrong places
Added syntax checking for common documenting problems that tex2rtf does not handle properly (like \begin{verbatim} and others needing to be on a line by themselves)
Syntax checking and curley brace matching can be turned on via the commandline, or the new OPTIONS menu choice if using a GUI.  Both are OFF by default to match current behavior
Compilation again possible now if wxUSE_DEBUG_CONTEXT is set to 0 in setup.h
Various GUI glitches fixed


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10309 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 16:54:19 +00:00
Gilles Depeyrot
a217777fb3 added missing check for wxUSE_JOYSTICK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10308 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 16:07:47 +00:00
George Tasker
6aa358aebb Fixed more '_' issues
Fixed all places that \begin{verbatim} and \end{verbatim} were not on lines by themselves (which tex2rtf cannot handle).
Changed all \verb$....$ occurrances to \tt{....}


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10307 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 16:03:25 +00:00
David Webster
2b0ec34b1a Adding borders to OS/2 objects
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10306 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 16:01:45 +00:00
David Webster
91b5f3bc57 Add RemoveChild
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10305 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 13:24:03 +00:00
Vadim Zeitlin
a3dafe8784 removed \small before \verbatim
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10304 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 13:07:37 +00:00
George Tasker
e72403492b Added '\' before all '_' chars that were not inside VERBATIM blocks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10303 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 10:39:33 +00:00
George Tasker
a66abda9d3 Removed the '\' quote on some '_' characters where it should not have been (inside verbatim blocks)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10302 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 10:01:59 +00:00
George Tasker
2e64ba46bf Moved '\label' tag to the correct line, allowing tex2rtf to correctly build docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10301 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 09:20:04 +00:00
Vadim Zeitlin
509cd921bf some minor fixes to ODBC docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10299 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-24 00:02:21 +00:00
Václav Slavík
de243b058f fixed bug in wxFrame::OnActivate
(added virtual void RemoveChild() which make sure OnActivate
won't accidentally use invalid m_winLastFocused ptr)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10298 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-23 17:02:18 +00:00
Robin Dunn
faa20af7d4 some minor changes for the installer flags
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10297 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-23 15:05:41 +00:00
Julian Smart
ba33f035da Added missing files to listing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10296 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-23 14:52:32 +00:00
Vadim Zeitlin
94f562a279 fixed broken links
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10295 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-23 14:39:16 +00:00
George Tasker
2015ec3378 All the major ODBC changes for 2.3 logged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10294 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-23 14:10:36 +00:00
George Tasker
69a2b59d53 Removed TABs that had gotten in to the source
Added more feature tests to the sample


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10293 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-23 13:48:04 +00:00
George Tasker
081eb1b120 Removed TABs that had gotten in to the source
Added more INTERBASE support fixes


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10292 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-23 13:46:59 +00:00
George Tasker
9082f1a970 Removed TABs that had gotten in to the source
Added assert if user tries to create a column name longer than the max supported column name length
Added more INTERBASE support fixes
Added a SQLServer7 fix for ASC/DESC support


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10291 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-23 13:45:50 +00:00
George Tasker
2f9719249b Removed TABs that had gotten in to the source
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10290 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-23 13:39:40 +00:00
George Tasker
a096358cc7 Fixed a missing '}'
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10289 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-23 11:19:05 +00:00
Stefan Csomor
5b74c3ac7c added mouse down before activate event in background window
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10288 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-23 06:50:57 +00:00
Stefan Csomor
2883443e90 scrollbar fixes and workaround for redraw problems w/o erase , setbitmap triggers refresh
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10287 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-23 06:24:17 +00:00
Stefan Csomor
a49afa93ca scrollbar fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10286 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-23 06:15:16 +00:00
Václav Slavík
06f3c649c9 applied workaround patch to get rid of crashes in wxrcedit on MSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10285 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-22 22:04:00 +00:00
Václav Slavík
2adaf5969f implemented wxGetSingleChoiceIndex version that takes wxArrayString
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10283 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-22 22:03:40 +00:00
Václav Slavík
646a007c2c fixed wxSpinButton handler (did refer to spinbutton nodename, not wxSpinButton class)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10282 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-22 22:03:33 +00:00
Václav Slavík
1a3cb2caf8 fixed ID handling in 'unknown' handler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10281 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-22 22:03:24 +00:00
Václav Slavík
9c9fc51ba7 XMLCTRL() macro now uses wxDynamicCast in debug builds
(should help in catching typo bugs when accessing XRC controls)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10280 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-22 22:02:53 +00:00
Robin Dunn
3b1ca90e5a Some distribution tweaks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10279 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-22 18:22:04 +00:00
Robin Dunn
e59a8895bc Fixed "make dist" so it doesn't try to copy some files that don't exist
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10278 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-22 17:57:05 +00:00
David Webster
804c69d3d1 Fixes errno.h problems with OS/2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10277 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-22 17:25:57 +00:00
David Webster
65b851bbdd Fixes errno.h problems
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10276 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-22 17:25:39 +00:00
David Webster
3eada58e7a Fixes errno.h problems and enable joystick code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10275 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-22 17:25:21 +00:00
Robin Dunn
84a81942dd Updated SWIG generated code for wxGTK version
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10274 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-22 16:58:26 +00:00
Robin Dunn
1fb264fd5a Changed IDs used for the popup menu
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10273 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-22 16:02:58 +00:00
Julian Smart
e1190518b6 Corrected recursive GetToolMargins()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10272 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-22 15:16:28 +00:00
Vadim Zeitlin
6bec54e128 wxCommandEvent::IsChecked() now returns the toolbar button checked status as well
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10269 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-22 14:02:17 +00:00
Vadim Zeitlin
36202885d4 fix for discrepancies between wxNotebookEvent and wxNotebook GetSelection() results
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10268 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-22 14:01:02 +00:00
Vadim Zeitlin
f139dfe8e3 always return a non NULL font from wxLoadFont
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10267 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-22 13:26:01 +00:00
Julian Smart
92f5ff59cc Replaced typedef with #define for VC++ 1.5, to prevent 'no constructor' error
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10266 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-22 10:56:54 +00:00
Robin Dunn
25832b3f2b changed version number
A few final twaeks and fixes


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10264 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-22 05:59:09 +00:00
Vadim Zeitlin
6d5b2a57cf tried to fix the accel string drawing in the owner drawn menu items
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10263 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-21 23:58:58 +00:00
Vadim Zeitlin
c48269b9f7 fixed memory leak in colour parsing code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10262 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-21 23:22:26 +00:00
Vadim Zeitlin
7561aacd5e fix for releasing the HDC in WM_DRAWITEM handler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10261 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-21 23:10:31 +00:00
Vadim Zeitlin
5260937e74 (blind) fix for joystick compilation problems
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10260 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-21 22:49:40 +00:00
David Webster
29d83fc1e5 Visualage fixes for Stefan's socket implementations, some scrolling fixes and dir fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10259 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-21 20:31:47 +00:00
David Webster
5600884ab7 Visualage fixes for Stefan's socket implementations and true to TRUE in db.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10258 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-21 20:30:24 +00:00
David Webster
2910855229 Visualage fixes for Stefan's socket implementations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10257 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-21 20:29:42 +00:00
Ron Lee
c3302e7e29 Default wxDateTime objects are now 'invalid',
changed wxDefaultDateTime definition to suit.
Removed IsValid asserts from Set methods.
Fixed broken test for validity that was checking
m_time directly.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10256 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-21 19:03:33 +00:00
Vadim Zeitlin
48c31b2853 removed extra newlines from wxLogDebugs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10253 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-21 10:31:21 +00:00
David Webster
cb71578cae Final scrolling updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10252 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-21 04:06:04 +00:00
Vadim Zeitlin
4cdc2c137e fixed usage of LOWORD/HIWORD instead of GET_[XY]_LPARAM
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10251 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-21 00:17:04 +00:00
Vadim Zeitlin
889f0b7c67 fixed wxComboBox sizing problem again
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10250 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-21 00:16:35 +00:00
Václav Slavík
e6c3f404b8 New code for inserting unknown controls into resources
via <object class='unknown'>. This one even works.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10249 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-20 22:18:28 +00:00
Stefan Neis
bdfeadcac5 Included filefn.h for non-precompiled headers to
get definition of wxFILE_SEP_PATH


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10248 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-20 21:31:22 +00:00
Julian Smart
bcbb0f8309 Added dircmn.cpp to VC++ project files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10247 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-20 21:23:46 +00:00
Stefan Neis
37d92a964a Added new files gsockpm.c and dircmn.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10246 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-20 20:47:20 +00:00
Stefan Neis
0ad771924b Added gsockpm.c for OS/2.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10245 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-20 20:46:29 +00:00
Stefan Neis
e4ad24c9d3 Fixed some OS/2 specific problems: EMX defines __UNIX__, which is what good
for wxGTK/wxMotif, but sometimes a problem for the PM version.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10243 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-20 16:16:27 +00:00
Stefan Neis
3958ae62ba Updated gsocket.c to current unix version, use gsockunx.h instead of gsockos2.h
Added gsockpm.c.
Hooked socket handling into main loop.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10242 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-20 13:25:28 +00:00
Václav Slavík
5d5b1c0ce0 fixed WX_APPEND_ARRAY and WX_CLEAR_ARRAY when used with dereferenced pointers (*array)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10241 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-20 11:56:20 +00:00
George Tasker
c20facdb25 Various makefiles added. Only the VC and B32 makefiles have been tested
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10240 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-20 11:32:57 +00:00
Robin Dunn
25d73e0f28 Some more tweaks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10239 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-20 02:00:31 +00:00
Robin Dunn
2b510feb17 Since there was no #include before the #if wxUSE_JOYSTICK then nothing
would ever be compiled in this module.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10238 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-20 01:21:12 +00:00
Robin Dunn
ac346f5046 Added sample to the demo for wxJoystick
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10237 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-20 01:18:39 +00:00
Vadim Zeitlin
72c71d3972 warning fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10236 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-19 23:36:50 +00:00
Václav Slavík
c989314692 -fix for a bug in parsing tag's properties with common suffixes
- some wxT() around char constants


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10235 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-19 18:00:28 +00:00
Václav Slavík
e987a489c8 Unicode compilation fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10234 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-19 17:59:51 +00:00
Václav Slavík
af9083592b use wxTreeCtrl, not wxGenericTreeCtrl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10233 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-19 11:57:32 +00:00
Robin Dunn
4dfaa61e60 generated code for wxGTK for all the changes made earlier today
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10232 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-19 04:12:38 +00:00
Vadim Zeitlin
442d08ce74 merged wxRegConf rename fix from 2.2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10229 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-19 01:04:25 +00:00
Vadim Zeitlin
18c5099700 1. more proper fix for wxChoice/wxComboBox height problems than in 2,2 branch
2. wxIsspace() fix merged from the 2.2 branch


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10228 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-19 01:01:21 +00:00
Vadim Zeitlin
31827af3ea renamed wxBase.dsp to wxBaseVC.dsp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10227 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-19 00:59:07 +00:00
Vadim Zeitlin
353327844e added wxDir::Traverse
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10226 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-19 00:58:05 +00:00
Robin Dunn
10e07c70d8 wxDragImage fixes and cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10224 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-18 23:46:30 +00:00
Robin Dunn
30aaddfe89 Added mixins subpackage to wxPython.lib
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10222 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-18 22:26:19 +00:00
Václav Slavík
8bc25b29f1 fixed &agrave; parsing (here too)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10220 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-18 22:13:30 +00:00
Robin Dunn
90b2b1303a Added wave files to the distribution scripts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10219 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-18 22:02:56 +00:00
Robin Dunn
493f1553fd Cleanup up the demo a bit
Added wxWave

Added another patch for SWIG that optimizes the generated code some
and eliminates some unused type mappings in the type registry.
(Reduces it by about half!)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10218 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-18 21:59:59 +00:00
George Tasker
c20a12bd55 XPMHAND.H dependency removed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10217 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-18 18:43:30 +00:00
Robert Roebling
2d4511658d Applied patch for non-Latin keyboards.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10216 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-18 18:39:13 +00:00
Václav Slavík
ffe107c8c0 Unicode fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10215 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-18 18:34:49 +00:00
Václav Slavík
0d832cf788 applied modified patch #424894 (wxrcedit & bcc compilation fixes)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10214 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-18 18:34:34 +00:00
Václav Slavík
8e49dc6301 regenerated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10213 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-18 18:33:30 +00:00
George Tasker
5d59e67a7b Added compile-time check to be sure that wxUSE_ODBC is set to 1 before attempting to compile this program, and error out telling the user to change the setting if they want to compile this program
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10212 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-18 18:32:33 +00:00
Vadim Zeitlin
06b32ebe4f compilation fix for mouse hack
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10211 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-18 17:15:46 +00:00
Julian Smart
da7ed9b77e Bug fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10209 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-18 14:41:39 +00:00
Robin Dunn
856e03b753 Fixed OOR related problem in OGL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10203 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-18 06:53:25 +00:00
Robin Dunn
9df61a29d2 Implemented the first phase of OOR (Original Object Return). See the
text in the demo for more details of what this means, but in a
nutshell methods such as wxWindow.GetParent or FindWindowById will now
return a shadow object of the proper type if it can.  By "proper type"
I mean that if the wxWindow pointer returned from FindWindowById
really points to a wxButton then the Python object constructed will be
of a wxButtonPtr class instead of wxWindowPtr as before.  This should
reduce or eliminiate the need for wxPyTypeCast.  (Woo Hoo!)  The
objects returned are still not the original Python object, but that is
the next step.  (Although it will probably only work on Python 2.1 and
beyond because it will use weak references.)

A few other minor tweaks and fixes and additions for things found
while doing the OOR stuff.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10202 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-18 05:20:01 +00:00
Robin Dunn
419c299ae5 Fixed wxPoint.__cmp__ and a few others
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10201 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-18 02:32:22 +00:00
Vadim Zeitlin
3bdc265d9d merged fixes for accel and command event non propagation from 2.2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10200 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-17 23:46:30 +00:00
Robin Dunn
9416aa89ca Implemented the first phase of OOR (Original Object Return). See the
text in the demo for more details of what this means, but in a
nutshell methods such as wxWindow.GetParent or FindWindowById will now
return a shadow object of the proper type if it can.  By "proper type"
I mean that if the wxWindow pointer returned from FindWindowById
really points to a wxButton then the Python object constructed will be
of a wxButtonPtr class instead of wxWindowPtr as before.  This should
reduce or eliminiate the need for wxPyTypeCast.  (Woo Hoo!)  The
objects returned are still not the original Python object, but that is
the next step.  (Although it will probably only work on Python 2.1 and
beyond because it will use weak references.)

A few other minor tweaks and fixes and additions for things found
while doing the OOR stuff.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10197 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-17 22:47:09 +00:00
Stefan Csomor
6618870d16 fixed wxWindow::SetCursor( wxNullCursor) for mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10196 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-17 15:53:01 +00:00
Vadim Zeitlin
6603907dea don't annoy the user by repeating the question which had been already answered (and also make the question a bit more clear)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10195 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-17 15:51:09 +00:00
Julian Smart
5abf8c9d66 Call OnParentEnable from wxTextCtrl::Enable
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10194 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-17 11:09:22 +00:00
Julian Smart
fdca68a670 Implemented OnParentEnable to allow widgets to reset their colours
after a wxWindow::Enable call


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10193 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-17 10:58:05 +00:00
Vadim Zeitlin
36bd690299 added wxLog::ClearTraceMasks()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10192 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-17 10:11:34 +00:00
Ron Lee
1912918cce typo fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10190 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-17 07:53:10 +00:00
Robin Dunn
f98de4487f Applied patch #423927, (Min size for stretch parts of wxBoxSizer)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10189 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-17 07:27:17 +00:00
Václav Slavík
4dc3fdec0c fixed wrong parsing of &agrave; (typo in tables)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10186 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-16 22:10:07 +00:00
Václav Slavík
c59b4b010e changed wxBitmap::CreateFromXpm to use wxBitmap(wxImage,int) ctor again -- it should work fine with BCC now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10185 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-16 22:07:59 +00:00
Václav Slavík
52f96deca1 removed wxImage::operator wxBitmap()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10184 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-16 22:07:39 +00:00
Gilles Depeyrot
2461b2e716 correction for Mac OS X (M_PI is already defined)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10183 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-16 21:28:54 +00:00
Gilles Depeyrot
f9d3748bc0 corrections for Mac OS X Developer Tools
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10182 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-16 21:20:50 +00:00
Vadim Zeitlin
a224234132 FindFocus() and wxSpinCtrl fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10181 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-16 16:57:08 +00:00
Stefan Csomor
3dec57adfd icon support moved to wxBitmap, allowing for fully transparent usage
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10180 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-16 16:23:13 +00:00
Julian Smart
513903c4f9 Made wxWindow::Enable recursive in order to solve colouring problems; forced the colour
of a wxTextCtrl back to the custom colour in wxTextCtrl::Enable. This appears
to fix inconsistent colour problems.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10179 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-16 15:53:11 +00:00
Vadim Zeitlin
19d7140ec2 applied patch 415912 (fixing problems with wxGrid attrs)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10178 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-16 13:20:31 +00:00
Stefan Csomor
27419164ad workaround for notebook/tabctrl redraw bug, it is now not excluded from the local eraseRgn of the parent window, thus guaranteeing that the background is always correct
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10177 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-16 12:46:51 +00:00
Stefan Csomor
ca715d8835 corrected loop for calculating the proper updatergn taking into account only real subwindows that are shown
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10176 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-16 12:16:59 +00:00
Julian Smart
a88acabdd2 Applied patch #418555: wxTextCtrl uses wrong background colour
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10175 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-16 12:01:48 +00:00
Julian Smart
19b726bbca Applied patch #403856 (utilscmn.cpp should translate special key names)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10174 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-16 11:54:18 +00:00
Julian Smart
69231000be Applied patch #421554: implementation of wxEVT_CONTEXT_MENU
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10173 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-16 11:32:21 +00:00
Julian Smart
f80eabe5a2 Applied patch #421073 (making setup options work)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10172 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-16 11:22:01 +00:00
Julian Smart
b07664068b Applied patch #420395 (adding wxCLIP_SIBBLINGS capability -- but not by default)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10171 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-16 11:14:37 +00:00
David Webster
833615dd4d More scrolling fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10170 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-16 03:21:53 +00:00
Vadim Zeitlin
965784669a removed useless assert from wxArray::Alloc
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10169 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-16 00:19:42 +00:00
Václav Slavík
8084a109b6 applied patch that fixes paper size handling under MSW and sets PD_SELECTION correctly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10168 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-15 22:04:27 +00:00
David Webster
2b75f58067 Modest fix for executables linking to the wx dll for OS/2.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10167 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-15 19:55:35 +00:00
David Webster
aa06a8fdfb Enable this sample for OS/2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10166 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-15 19:53:48 +00:00
David Webster
e661fcd770 More scrolling stuff.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10165 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-15 19:52:31 +00:00
Václav Slavík
23ca6e208f applied patch #424066
(a bit better attempt to detect system encoding in absence of LANGINFO)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10164 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-15 17:02:43 +00:00
Julian Smart
d7dcb93990 Corrected some casting errors -> XtPointer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10163 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-15 14:51:00 +00:00
George Tasker
3f030b4804 Added buttons to allow a dump of DB DATATYPES and DB DIAGNOSTIC info via wxLogMessage() to the sample app
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10162 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-15 13:12:36 +00:00
George Tasker
5a226de062 dBase fix on creating index
General cleanup of code in the sample


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10161 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-15 01:00:56 +00:00
George Tasker
ea24eeb2db Fixed problems which prevented creation/recreation of tables with MSAcces
General cleanup of code in the sample


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10160 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-15 00:58:09 +00:00
David Webster
b7d8f285c3 More scrolling stuff
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10159 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-14 21:29:45 +00:00
Vadim Zeitlin
f5cd97870d warning fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10158 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-14 21:28:04 +00:00
Julian Smart
788722ac5c Fixes for 16-bit compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10156 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-14 16:13:12 +00:00
Julian Smart
f3d5d2b5b9 Added some missing makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10154 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-14 13:25:24 +00:00
Julian Smart
1094fecfdd Added event sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10153 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-14 12:38:04 +00:00
Julian Smart
5d2b67f7d1 Added event.rc
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10152 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-14 12:37:31 +00:00
Julian Smart
059f05650b Mods to release scripts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10151 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-14 12:30:21 +00:00
Julian Smart
940718f06e Misc release-related mods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10150 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-14 10:28:27 +00:00
Václav Slavík
17766da91f fixed a lie in docs (underlining is not limited to Windows anymore)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10142 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-13 22:10:20 +00:00
Václav Slavík
cb0b3950ff now outputs errors to stderr
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10140 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-13 22:09:53 +00:00
Gilles Depeyrot
82ca6dbcf4 applied SourceForge patch #423532
ensure that menus appear correctly under Mac OS X


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10139 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-13 13:09:41 +00:00
Julian Smart
9d57991759 Removed XPM lib references from makefile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10138 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-13 09:50:00 +00:00
George Tasker
2beca66298 Added support more support for DB2
Added support for PervasiveSQL
Fixed MSAccess testing of DROP TABLE result when the table does not exist


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10136 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-11 20:31:24 +00:00
George Tasker
1b12ab1641 Added support more support for DB2
Added support for PervasiveSQL


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10135 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-11 20:24:53 +00:00
George Tasker
ef397583df Sizer based dialogs (like wxSingleChoiceDialog) are now forced to initially appear in the visible area of the display, relocating the dialog before display so that it fits within the display (if possible). If the dialog will not fit in the display area, it is shifted so that the top edge with the title bar is visible on the display
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10134 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-11 20:23:58 +00:00
Gilles Depeyrot
4e0e692f03 removed old xpm code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10133 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-11 19:23:58 +00:00
Václav Slavík
fc5d5458a6 added wxDEFAULT_FRAME_STYLE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10132 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-11 18:32:28 +00:00
Václav Slavík
4def3b3595 some more src code reformatting
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10131 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-11 18:32:17 +00:00
Robin Dunn
be52217ed3 No longer needs to create a wxApp object before making bitmaps
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10130 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-11 17:57:09 +00:00
Robin Dunn
c2fa61e833 Changed wxRootWindow from a global to a staic variable with an
accessor function that initializes if on first use.  This prevents
core dumps for apps that try to create wxBitmaps before the wxApp
object is initialized.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10129 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-11 17:55:28 +00:00
Robert Roebling
a90c95aa8e Corrected wxToolBar::ToolSetBitmapSize()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10128 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-11 17:07:54 +00:00
Julian Smart
804a46d3f7 Removed Mac-specific XPM files from mac.rsp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10127 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-11 16:08:39 +00:00
Julian Smart
13bf613ebd Minor mods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10126 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-11 13:04:31 +00:00
Stefan Csomor
aa6c945b0a corrected eventual endless loop
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10125 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-11 09:13:28 +00:00
Stefan Csomor
c503ab8437 corrected control update code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10124 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-11 08:47:17 +00:00
Stefan Csomor
be57fda609 corrected control update code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10123 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-11 08:16:52 +00:00
Stefan Csomor
a8cd4a3a03 redraw problems fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10122 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-11 07:15:43 +00:00
Stefan Csomor
65608e3bb0 maintaining 8.1 compat (defining 8.5 calls)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10121 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-11 06:36:18 +00:00
Stefan Csomor
2dd88c8023 removed old xpm code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10120 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-11 06:24:13 +00:00
Gilles Depeyrot
3f4902f50b conditional compilation for Universal Interfaces (3.4 or later)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10119 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 21:03:14 +00:00
Gilles Depeyrot
69db49223e conditional compilation for Universal Interfaces (3.4 or later)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10118 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 20:54:41 +00:00
Gilles Depeyrot
4114d0af4f corrected conditional compilation for Universal Interfaces (3.4 or later)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10117 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 20:52:48 +00:00
Gilles Depeyrot
3ce946d47e activate new xpm handler under Classic Mac OS after xpm handler fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10116 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 20:45:25 +00:00
Gilles Depeyrot
9fbbbd40d1 added PM_USE_SESSION_APIS for Carbon compilation under Mac OS 9
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10115 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 20:43:31 +00:00
David Webster
4284e7cdb7 wxOS2 additional stylistic and coding standards.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10114 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 18:18:07 +00:00
Václav Slavík
5ce0e4ac06 supressed error messages when wxCSConv cannot find registry key and/or value when looking for charset information
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10113 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 16:41:58 +00:00
Václav Slavík
aa50e893ee fixed wxListCtrl::EditLabel for MSW (ListView_EditLabel fails if
the control does not have focus, so I changed EditLabel to always set focus to *this
before calling LV_EditLabel). This fixes wxEditableListBox.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10112 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 16:41:47 +00:00
Václav Slavík
e9c4c02c19 fixed handling of root paths: now checks if string ends with / before appending / to it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10111 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 16:41:34 +00:00
Václav Slavík
b326e313a0 fixed parsing of XPM data files from demos/forty
(decoder did not parse lowercase hexadecimal numbers)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10110 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 16:41:12 +00:00
Stefan Csomor
4b1f6faaa2 added lowercase functionality to wxHexToDec
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10109 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 16:06:38 +00:00
Julian Smart
fb1bd1bdd3 Some installation updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10108 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 15:13:23 +00:00
Václav Slavík
f204026b42 fixed fatal bug in wxBitmap::CreateFromXpm (the bitmap was added twice to wxTheBitmapsList)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10107 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 15:08:45 +00:00
Julian Smart
66242f2079 Added a couple more numeric character references
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10106 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 14:51:22 +00:00
Julian Smart
c60f5c6517 Removed references to xpm[d].lib
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10105 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 14:31:41 +00:00
Julian Smart
1e1ca6f0b2 Removed xpm[d].lib
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10104 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 14:27:05 +00:00
David Webster
d38d271fa6 Get rid of the CVS merge characters that have worked their way into this causing the dll builds from the command line to fail.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10103 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 13:28:01 +00:00
Julian Smart
22394d24f6 NULL -> 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10102 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 12:53:16 +00:00
Julian Smart
57e26a09f1 Now sorts the files case-insensitively
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10101 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 10:26:01 +00:00
Guillermo Rodriguez Garcia
2b15fdfcf3 Use GetPath instead of GetFileName in file selector, otherwise it doesn't work for files outside the current directory
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10100 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 06:35:42 +00:00
Guillermo Rodriguez Garcia
27a97d02eb Private gsocket files were using 'typedef int bool', removed this
and replaced by true ints. Currently this was not causing any problem
but it is better to avoid bool at all in C code as a matter of good
coding practice.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10099 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 06:31:39 +00:00
Stefan Csomor
e7b596fbff corrected redraw problems in controls (the erroneusly revalidated their draw area thus eating other pending redraws
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10098 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 06:28:28 +00:00
Guillermo Rodriguez Garcia
d493b66a90 Streams were being created the wrong way (was using the copy
ctor which should not be used for any stream class)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10097 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 06:24:10 +00:00
Stefan Csomor
b668a73527 corrected a bug in dc which resetted the port , exchanged the wxchoice implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10096 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-10 05:27:07 +00:00
Václav Slavík
1c6466854c compilation fix for apps w/o precompiled headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10095 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-09 22:37:27 +00:00
Václav Slavík
268d5364cf removed libxpm from templates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10094 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-09 22:36:51 +00:00
Václav Slavík
9d8c2f419f removed libxpm dependencies from makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10093 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-09 22:36:25 +00:00
Robin Dunn
d2520c85b0 Added accessors for the sub-windows in the wxGrid.
Added methods to get/set the pen width used for the current cell
highlight, bot normal and read-only.

Fixed (I think) the problem of the cell highlight leaving extra lines
behind when the grid lines are turned off


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10092 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-09 22:31:17 +00:00
Robin Dunn
3b36695de4 Fixed bug that prevented wxTreeCtrl.OnCompareItems from being called.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10090 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-09 22:15:05 +00:00
David Webster
5fb9d2be3f Update on Client Size determinations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10088 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-09 13:33:18 +00:00
David Webster
2be39ac9d8 More scrolling support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10087 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-09 13:32:50 +00:00
Vadim Zeitlin
ed8fad817a fixed compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10086 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-09 10:19:13 +00:00
David Webster
5d483828d7 Fixing the GetClientsize to deal with OS/2's coordinate system.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10085 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-09 04:31:30 +00:00
Vadim Zeitlin
ca289436cd fixed wxExecute + DDE bug (merged from 2.2)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10084 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-09 01:20:04 +00:00
Václav Slavík
66e23ad208 switched to new XPM code in wxMSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10082 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 22:44:34 +00:00
Václav Slavík
638a0b2c72 applied patch for runtime loading of hhctrl.ocx
(wxCHMHelpController should work with all compilers, not only MSVC, now)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10081 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 22:38:33 +00:00
Václav Slavík
abd799473c changes update
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10080 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 22:30:51 +00:00
Václav Slavík
2e9760c0ee removed wxUSE_XPM_IN_MSW from setup0.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10079 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 22:30:26 +00:00
Václav Slavík
ea39b21033 switched to new XPM code in wxMSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10078 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 22:29:49 +00:00
Václav Slavík
50c679c81a dlg now centered
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10077 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 22:29:38 +00:00
Václav Slavík
b577ba22cb added makefile.vc
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10076 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 22:29:27 +00:00
Václav Slavík
cad599a1f1 MSVC fixes for wxEditableListBox (still misteriously gives assertion failure when calling wxListCtrl::EditLabel)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10075 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 22:29:02 +00:00
Václav Slavík
2e6d38adea fixed missing include
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10074 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 22:28:44 +00:00
Václav Slavík
989befded3 removed MSVC libxpm makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10073 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 22:28:06 +00:00
Václav Slavík
73348d0997 forgot to check in wxHtmlProcessor::IsEnabled test in wxHtmlWindow::SetPage
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10072 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 22:27:09 +00:00
Václav Slavík
badb78928f fixed typo in pragma implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10071 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 22:26:58 +00:00
Václav Slavík
3e729cbe15 added wxHtmlProcessor test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10070 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 22:26:39 +00:00
Václav Slavík
3caec1bb33 added wxLogError to wxCSConv so that it complains if the encoding is unknown
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10069 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 22:26:16 +00:00
Václav Slavík
00a693ed2f removed now obsoleted commented-out piece of code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10066 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 22:25:33 +00:00
Václav Slavík
0133d06b1a ShowFullScreen is not MSW-only anymore, updated docs and samples
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10065 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 22:25:17 +00:00
Robin Dunn
c9d4f881e7 test for mousewheel constants separatly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10064 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 19:51:52 +00:00
Robin Dunn
47b37e4be4 Smoe more details for the setup and installer scripts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10063 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 19:27:48 +00:00
Stefan Csomor
cf1a9b45c7 wxRadioBox fixed on mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10062 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 19:13:45 +00:00
Vadim Zeitlin
615dca338b fixed wxColour::operator==
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10061 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 18:43:54 +00:00
Gilles Depeyrot
f87a708b14 added const for Mac OS X compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10060 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 18:31:36 +00:00
Gilles Depeyrot
65a9e6162b removed useless file (notebmac.cpp is the one that is used)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10059 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 18:04:01 +00:00
Julian Smart
f50fd91940 Removed wxXPMHandler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10058 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 16:54:22 +00:00
Stefan Csomor
0eaa1d68c2 changed port handling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10057 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 16:08:09 +00:00
Stefan Csomor
71e483d39a added xpm
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10056 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 15:59:03 +00:00
Vadim Zeitlin
aaa63f666a try to autodetect Win32 macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10055 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 15:12:00 +00:00
Gilles Depeyrot
973b0afb1e added CreateFromXpm method that uses image xpm decoder
use of the old xpm library code is conditionned by OBSOLETE_XPM_DATA_HANDLER
which is set be default under Classic Mac OS and not set under Mac OS X


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10054 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 14:07:34 +00:00
Gilles Depeyrot
b7d667c57b added CreateFromXpm method
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10053 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 14:01:50 +00:00
Gilles Depeyrot
60bc40875d corrected Mac OS X resource targets
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10052 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 14:00:46 +00:00
Gilles Depeyrot
9a179dccb9 added definition/initialisation of static class member
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10051 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 13:31:17 +00:00
Gilles Depeyrot
10d3680f1a removed duplicated friend declaration
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10050 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 13:29:54 +00:00
Stefan Csomor
b916de3e4f updated dead-strip linking
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10049 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 11:55:54 +00:00
Stefan Csomor
790ba06b28 updated opengl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10048 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 11:51:10 +00:00
Stefan Csomor
9ff647cf66 mac fixes part II
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10047 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 11:49:20 +00:00
Julian Smart
ab85e6cd00 Added "set new icon" menu item to taskbar sample; updated some makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10046 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 10:11:24 +00:00
Stefan Csomor
0a67a93b17 mac fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10045 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 07:29:46 +00:00
Vadim Zeitlin
233d02951f fix setting colour for a listctrl item (merged from 2.2)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10044 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 02:21:18 +00:00
Vadim Zeitlin
bf505d2855 correct fix for Maximize() for hidden frames
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10042 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 01:09:21 +00:00
Robin Dunn
794c5cb151 updated generated sources for wxMSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10040 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 00:13:42 +00:00
Robin Dunn
7a446686f0 Fixes for some changed stuff in wxHTML
Fixed an annoying ocmpiler warning in the generated code
Regenerated code for wxGTK


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10039 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 00:08:55 +00:00
Vadim Zeitlin
daaa6710be fixed iso8859-15 handling (backmerged from 2.2)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10038 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-08 00:03:46 +00:00
Robin Dunn
13806c7d4a some updates for new methods, constants, etc.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10036 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-07 22:30:26 +00:00
David Webster
c8b5f745c4 More scrolling work.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10035 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-07 22:17:12 +00:00
Vadim Zeitlin
1c8183e213 support cygwin as synonim for cygwin32
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10034 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-07 15:52:18 +00:00
Vadim Zeitlin
2d4cc5b600 GetSelection() always returns from <= to as wxMSW does
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10033 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-07 15:08:38 +00:00
Julian Smart
779cedff87 Some makefile corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10032 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-07 14:37:53 +00:00
Julian Smart
e96360efd9 Misc small mods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10031 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-07 09:57:45 +00:00
David Webster
1c84ee88f6 Support for scrolling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10030 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-07 04:17:46 +00:00
Václav Slavík
e7d5dd022c oops, forgot to remove temporary debug printf...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10028 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-06 22:22:47 +00:00
Václav Slavík
239229258a wxTAB_TRAVERSAL is default style for wxPanels from XRC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10027 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-06 22:22:39 +00:00
Václav Slavík
00b2a5df95 added 'name' to wxEditableListBox ctor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10026 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-06 22:22:30 +00:00
Václav Slavík
7c4878b682 added <accel> attribute to wxMenuItem
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10025 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-06 22:22:03 +00:00
Václav Slavík
ccb220600d added version saving to wxrcedit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10024 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-06 22:21:43 +00:00
Václav Slavík
1ce70313be added version information to XML resources
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10023 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-06 22:21:33 +00:00
Václav Slavík
0c55409f3a fixed typo that caused incorrect if there was only one book
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10022 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-06 22:21:18 +00:00
Václav Slavík
e6b506bf47 fixed loading of resource from zip files (now handles both .xrc and binary .xmb files)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10021 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-06 22:21:05 +00:00
Gilles Depeyrot
b97e22c0ca added clientcontext variable to Open Transport initialisation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10019 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-06 18:58:51 +00:00
Gilles Depeyrot
d2c6d54928 applied correction from Marc Newsam in calculations of linesize
tested with the image sample which now produces expected results


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10018 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-06 18:51:22 +00:00
Robert Roebling
db157a6cf8 Made the applet code compile under GTK.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10017 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-06 17:41:54 +00:00
Unknown (DM)
1661948432 Added Codewarrior project files for jpeg, png, tiff, and zlib.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10016 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-06 05:15:41 +00:00
Robin Dunn
d1679124ae MouseWheel stuff
Added wxToggleButton
other odds and ends


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10015 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-06 05:03:24 +00:00
Robin Dunn
37d6243357 Added MouseWheel support to wxSTC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10013 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-06 01:20:41 +00:00
Robin Dunn
d13d99aa85 fixed typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10012 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-06 00:26:05 +00:00
Robin Dunn
0f7a546d9c Fixed HandleMouseWheel to be __WIN32__ sensitive
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10011 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-06 00:25:03 +00:00
Václav Slavík
a2cf862156 updated VC makefiles to compile expat
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10008 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-05 18:06:16 +00:00
Václav Slavík
daa084c239 reverted the hack for accepting broken HHC files (new wxHF_xxxx flags provide same features)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10007 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-05 18:06:05 +00:00
Václav Slavík
576507e276 added new wxHF_xxxx contants to control wxHtmlHelpFrame's appearance (book icons in contents)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10006 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-05 18:05:57 +00:00
Václav Slavík
bdb6e206f1 updated to show new wxHF_xxxx contants
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10005 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-05 18:05:24 +00:00
Václav Slavík
f55d21ebb5 added new gizmo: wxEditableListBox
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-05 18:05:12 +00:00
Václav Slavík
8173fefe0a fixed typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10003 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-05 18:04:22 +00:00
Václav Slavík
96742edfff minor change: buf[(size_t)pos] instead of buf.c_str()[pos]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10002 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-05 18:04:13 +00:00
Václav Slavík
960ba969f9 1. changed AddSharedProcessor to AddGlobalProcessor
2. Added wxHtmlProcessor::Enable and IsEnabled
3. fixed fatal bug in wxHtmlWindow::Add[Global]Processor


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10000 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-04 23:54:01 +00:00
Václav Slavík
8513c19cba applied patch #421410:
1. Mingw and BCC makefiles
2. compilation fixes


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9999 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-04 23:53:03 +00:00
Václav Slavík
219a5f10c0 added wxHtmlHelpController::GetHelpData and removed SetBookBasePath (you can use GetHelpData() for same effect)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9998 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-04 23:52:46 +00:00
Unknown (DM)
d2bf4e837a Added the Carbon precompiled headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9997 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-04 23:36:56 +00:00
David Webster
52da3c7175 Keeping these somewhat up to date
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9996 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-04 19:45:10 +00:00
Robin Dunn
ddfc587a2e Got a new version of StructuredText from Zope's CVS.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9995 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-04 18:28:27 +00:00
Julian Smart
e42c7b8567 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9994 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-04 14:50:17 +00:00
Julian Smart
f2854a2438 Referred reader to install.txt files.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-04 14:16:59 +00:00
Julian Smart
1c98149d12 Added mac.rsp, zipmac.bat
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9992 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-04 10:31:08 +00:00
Robin Dunn
b51c3f276c Redirected mouse wheel events from the child grid windows to the
wxGrid so the default behaviour in wxScrolledWindow can take care of
it.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9991 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-04 07:28:32 +00:00
Robin Dunn
d2c52078dc Added mouse wheel support for MSW. It generates a wxMouseEvent with a
type of wxEVT_MOUSEWHEEL.

wxMouseEvent has new members and accessors to transport mouse wheel
rotation data.  New members and accessors are documented.

wxGenericScrolledWindow modified to turn mouse wheel events into
scroll actions.

Added wxUSE_MOUSEWHEEL to setup0.h to allow disabling the platform
specific parts.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9990 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-04 07:26:30 +00:00
Kendall Bennett
bfb9ee966d Fixed Windows DLL link problems with wxHtmlProcessor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9988 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-03 20:34:23 +00:00
Kendall Bennett
26ffe1fdba Moved wxApplet files to the correct locations.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9987 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-03 20:10:52 +00:00
David Webster
50c76ce1f7 OS/2 fix in setdrive.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9986 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-03 17:43:18 +00:00
Kendall Bennett
d20cf96f70 Removed tabs from applet sample code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9985 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-03 17:33:55 +00:00
Kendall Bennett
67fc151d73 Removed tabs from applet code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9984 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-03 17:33:16 +00:00
Kendall Bennett
025292e998 Removed applet code from src directory
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9983 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-03 17:28:32 +00:00
Kendall Bennett
d9b91de7d3 Moved applet code into contrib.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9982 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-03 17:20:52 +00:00
Vadim Zeitlin
4726948f8e fix InsertSeparator() (patch 420987)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9981 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-03 14:41:24 +00:00
Robin Dunn
3ba55e664d Changed WXUNUSED to WXUNUSED_UNLESS_DEBUG
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9980 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-02 23:35:06 +00:00
Václav Slavík
ab708d5def switched wxXML to expat parser ; some minor formatting mods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9979 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-02 23:09:55 +00:00
Václav Slavík
892aeafc2a 1) some cleanup in wxHtmlWindow, moved private structures out of headers
2) added wxHtmlProcessor


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-02 23:08:47 +00:00
Václav Slavík
75e0142942 switched wxXML to expat parser
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9977 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-02 23:01:20 +00:00
Václav Slavík
eb8671f277 switched wxXML to expat parser; some formatting mods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9976 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-02 23:01:00 +00:00
Václav Slavík
7edb85b724 *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9975 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-02 22:59:13 +00:00
Václav Slavík
c5dd44b5da updated info about my changes (wxLocale new API, wxImage<->wxBitmap conversion, XPM handler, wxHtmlProcessor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9974 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-02 22:58:57 +00:00
Robin Dunn
60869eaf7e typo fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9972 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-02 21:52:45 +00:00
Kendall Bennett
54921697ae Initial check in of wxApplet code to CVS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9971 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-02 20:59:28 +00:00
Kendall Bennett
c3952f6524 Fixed wxHTML code in a Watcom Win32 DLL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9970 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-02 20:55:56 +00:00
Kendall Bennett
33ac7e6f01 Updates to fix Watcom C/C++ 11.0 compiler warning problems. Now compiles
clean with this compiler. Hopefully I did this without breaking other
compilers.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9967 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-02 19:48:15 +00:00
Vadim Zeitlin
b1d1dc510d fixed (?) crashes because of default GUI font being deleted
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9966 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-02 13:35:14 +00:00
Robin Dunn
f3cf386509 Added missing docs for methods in wxGridSizer and wxFlexGridSizer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9965 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-01 23:14:40 +00:00
Gilles Depeyrot
947ea04d01 added xpmdecod files
added resource files


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9964 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-01 20:17:33 +00:00
Robert Roebling
830ed6d97d Some minor clean-ups to the wxScrolledWindow code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9963 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-01 20:09:10 +00:00
Gilles Depeyrot
2f51a9ecc5 Added Mac OS X resource file handling:
- rez wxMac library resources into a rsrc file in the lib directory
  - derez the previous rsrc file into an ascii file in the lib directory
  - rez the ascii file into the executables as needed
  - mark executables with application creator code APPL
Compiling the resources into a file in the lib directory avoids dependencies
on the wxMac resource sources when creating executables. However, decompiling
and recompiling could be avoided if resource merging worked (ResMerger?).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9962 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-01 19:40:09 +00:00
Julian Smart
3d5aff50cb Remvoed a yield in HitTest because of undesirable consequences
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9961 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-01 17:05:15 +00:00
Robin Dunn
a92edd311c Check if the timer is already running before starting it again
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9960 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-01 16:49:23 +00:00
Robert Roebling
0bc0cd5d81 wxScrolledWindow next take, the Gizmo controls
work again and several other problem have
    been solved, among them at least on reported
    about the old implementation (wrong max size
    due to a rounding error).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9959 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-01 16:40:06 +00:00
Gilles Depeyrot
c854c7d92c applied SourceForge patch #419884 from Marc Newsam
this patch allows the notebook to add and delete pages


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9958 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-01 16:27:26 +00:00
Julian Smart
7699e843c0 Removed generic scrolwin.cpp from wxGTK list because of filename duplication
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9957 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-01 16:03:46 +00:00
Julian Smart
c112dde0a0 Updated src/gtk/files.lst
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9956 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-01 15:44:26 +00:00
Jouk Jansen
2900bd1c81 Committing in .
Modified Files:
 	wxWindows/setup.h_vms wxWindows/src/common/descrip.mms
 	wxWindows/src/common/mimecmn.cpp
 	wxWindows/src/generic/descrip.mms
 	wxWindows/src/gtk/descrip.mms wxWindows/src/unix/mimetype.cpp

  Updated compile support for OpenVMS

 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9955 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-01 14:46:48 +00:00
Robert Roebling
d9a4f62064 wxScrolledWindow now emits wxScrollWinEvents. Something
does not work yet as desried, though.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9954 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-01 14:32:41 +00:00
Julian Smart
5570ec300e Added #define for apps to detect new situation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9953 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-01 13:01:58 +00:00
Julian Smart
35b6b7d54a Added required #include
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9952 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-01 12:51:01 +00:00
Stefan Csomor
72d750d462 corrected event handling according to current msw/gtk implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9951 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-05-01 06:46:38 +00:00
Robin Dunn
49348d874d regenerated some more sources for gtk.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9950 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-30 23:59:17 +00:00
Robin Dunn
91c41b30c2 Some tweaks and cleanup.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9949 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-30 23:52:22 +00:00
Robin Dunn
9e689c0658 version number.
regenerated some sources for gtk.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9948 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-30 23:47:01 +00:00
Robin Dunn
ec5d77998a Implemented wxGetClientDisplayRect which returns the dimensions of the
desktop minus taskbar, etc. on Windows and defaults to the full
desktop dimensions on other platforms.  (If there is a way to do it
for other platforms please do.)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9947 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-30 20:55:11 +00:00
Robin Dunn
926bb76c2a Some tweaks and cleanup.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9946 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-30 18:37:26 +00:00
Robin Dunn
ed1ae3fb27 Bug fix from Mike Fletcher
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9945 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-30 18:37:06 +00:00
Robin Dunn
7114b9fa28 Updates for the sample apps. Some readme's, show how to use py2exe,
InnoSetup, etc.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-30 18:34:21 +00:00
Robin Dunn
b6962846e8 Show how to get an icon from a bitmap
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-30 18:33:20 +00:00
Robin Dunn
d7ec656498 Switched to InnoSetup for MSW distributions
Other distrib stuff


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-30 18:32:18 +00:00
David Webster
a51fb6427c New makefile and modified .def file supporting the xpmdecod module.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9941 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-30 15:35:30 +00:00
David Webster
adebd2d72c Too quick a trigger finger first time. Compile error fixed.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-30 14:25:22 +00:00
David Webster
3875544933 Suppress "Assignement in logical expression" type warnings for compilers that compain about this sort of thing.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-30 14:13:41 +00:00
David Webster
51523f25d7 Support for proper sizeing for scrolling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-30 13:52:11 +00:00
David Webster
716ed2259a no message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9937 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-30 13:51:20 +00:00
Julian Smart
fa3541bd15 Changed generic wxScrolledWindow -> wxGenericScrolledWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9936 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-30 12:35:54 +00:00
Václav Slavík
6957a370ff minor comments tweaking
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9935 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-29 22:24:54 +00:00
Václav Slavík
468ae730db changed wxAddBasePath to wxHtmlCotentsItem's method
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-29 22:14:02 +00:00
Robert Roebling
aafe448833 Native wxScrolledWindow finishing touches.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9933 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-29 18:35:13 +00:00
Václav Slavík
5e8e25e729 cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9932 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-29 17:58:12 +00:00
Václav Slavík
9749497156 cleanup and reformatting to match indentation style of the rest of wx
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9931 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-29 17:57:59 +00:00
Václav Slavík
dad9554b4c indentation fixes; virtual dtor for all platforms, not only MacOS X
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9930 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-29 17:57:35 +00:00
Václav Slavík
d969af82fc makefile.unx's now default to OpenGL, not Mesa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9929 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-29 17:57:22 +00:00
Robert Roebling
30954328be wxScrolledWindow is now a native widget under GTK.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9928 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-29 15:27:57 +00:00
Julian Smart
fa1c6ab937 Updated version numbers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-29 13:43:22 +00:00
Julian Smart
e74a9319f9 Updated distribution scripts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9926 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-29 13:42:03 +00:00
Václav Slavík
c97e7fa8db added xpmdecod.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9925 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-28 23:39:09 +00:00
Václav Slavík
c3f4609ebb fixed gcc pragmas in fs_*.h,cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9920 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-28 23:31:03 +00:00
Václav Slavík
0de01330ba added imagxpm.h and xpmdecod
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9919 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-28 23:30:43 +00:00
Václav Slavík
b86e511a9b documented XPM support and updated status of TIFF handler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9918 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-28 23:30:35 +00:00
Václav Slavík
424f5e2700 added wxXPMDecoder
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-28 23:30:24 +00:00
Václav Slavík
9d8bdf2dbc added XPM demo to samples/image
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9915 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-28 23:30:11 +00:00
Robert Roebling
7f0275efe2 add #define wxUSE_SPINCTRL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9914 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-28 14:45:57 +00:00
Robert Roebling
079c842cae Implement wxRB_GROUP
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9913 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-28 14:45:11 +00:00
Gilles Depeyrot
3e968053fb added common imagxpm files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9912 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-28 13:35:16 +00:00
Gilles Depeyrot
56cff98620 corrections for Mac OS X
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9911 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-28 13:32:21 +00:00
Gilles Depeyrot
f040060e2f corrections for modifications made to common mimetype code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9910 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-28 13:31:46 +00:00
Václav Slavík
6523de8a56 oops, forgot to check in change that adds WX_ICONV_TAKES_CHAR
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9907 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-27 18:22:47 +00:00
Robin Dunn
00a32dc1fb Made wxSplitterWindow conform to the docs with respect to using a
negative sash position in the Split* methods.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9905 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-27 16:57:11 +00:00
Robert Roebling
29f45f85e9 Maybe compilation works now.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9904 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-27 16:30:22 +00:00
Julian Smart
71d04f7ffd Added showing the default URL in DisplayContents and DisplayIndex
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9903 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-27 15:04:57 +00:00
George Tasker
b6c8bd6959 There was no icon file in this example, causing compilation with VC to fail. I just stole a DialogEditor icon to use here
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9902 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-27 03:41:47 +00:00
George Tasker
c03b48d7f8 Fixes problem where child window does not appear immediately (until second child is added) in the WINDOWS menu.
OGL Studio sample did not even show the child frame when a new one was created [bug reported by Julian].
This patch supplied by Markus Greither


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9901 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-27 03:36:13 +00:00
Vadim Zeitlin
88c49a0f21 compilation fix (sorry)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9900 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-27 00:34:18 +00:00
Robin Dunn
df05452ec0 generated source updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9899 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-27 00:16:34 +00:00
Robin Dunn
7905ec5558 Now that XPMs can be written in wxGTK, updated my conversion tools to
actually do it.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9898 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-27 00:16:02 +00:00
Vadim Zeitlin
b0a2157c88 translate MDI menu items
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9897 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-27 00:10:05 +00:00
Václav Slavík
28c6addc20 fixed SIZEOF_WCHAR_T detection
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9896 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-26 22:46:50 +00:00
Václav Slavík
891000d61b removed duplicities in HTML entities tables
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9895 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-26 22:37:27 +00:00
Kendall Bennett
53a240f02b Updates to OS/2 makefiles.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-26 22:30:07 +00:00
Julian Smart
e143729845 Fixed Simple Toolbar bug; removed 2 pixel kludge in splash screen
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9893 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-26 20:34:19 +00:00
Robert Roebling
67a6726a2c Added Greg's wxBitmapButton patch, take 2.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9892 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-26 18:58:09 +00:00
Vadim Zeitlin
6d56eb5c56 applied patch 417699 (remove WXDLLEXPORT from inline functions)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9891 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-26 16:38:11 +00:00
Vadim Zeitlin
7d88e2447e applied patch 419155 (OLE x-compilation with mingw)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9890 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-26 16:17:14 +00:00
Vadim Zeitlin
1216f52d92 fixed wxUSE_MAC not being defined under Unix => -D_REENTRANT was missing resulting in Solaris compilation failure
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9889 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-26 14:13:01 +00:00
George Tasker
a701b7f87e $(EXTRAINC) moved to the beginning of INC= line so that if a user wants to override the location of include directories with their own, it is possible
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9886 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-26 10:39:01 +00:00
Julian Smart
963a1fcd6e Minor mods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-26 10:17:58 +00:00
Stefan Csomor
94fdced0a0 adjusted for vaseks addition of USE_IMAGE and USE_XMP
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-26 10:17:12 +00:00
Robin Dunn
c2229593ba test for replacing menus
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9883 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-26 06:34:58 +00:00
George Tasker
a0b1b91fe6 Fixed BCC compilation warning if wxUSE_HELP was 1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9882 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-26 01:12:48 +00:00
George Tasker
9ef2e675a5 Changed ::Fit() to only fit the sizer if the window is the top level window
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9881 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-26 01:08:19 +00:00
Václav Slavík
b93d0d082d added fool-proof test for sizeof(wchar_t) that works on SGI/Irix. This a workaround for autoconf's limitation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9877 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-25 18:36:05 +00:00
George Tasker
65ba4113c6 Fixes ::Fit() and ::SetSizeHints() to keep the dialog sized so that it will not grow outside the display area of the screen. NEcessary to fix the problems seen in wxAnyChoiceDialog() derived classes where the dialog grows too big to see the top or bottom of the dialog
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9876 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-25 16:08:22 +00:00
Julian Smart
3b59b26706 Added MS Word template file to be applied to manual before generation of PDF
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9875 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-25 15:45:24 +00:00
Julian Smart
a98f98ac6f Some doc corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9874 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-25 15:38:00 +00:00
Julian Smart
6a611b39fe Added .emacs tip to coding standards; fixed doc bugs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9872 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-25 11:06:38 +00:00
Václav Slavík
95c8801cdf added check for iconv() version; fixed strconv.cpp to compile with both prototypes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9871 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-24 22:16:24 +00:00
Václav Slavík
1309ba6c7e implemented (more) correct <pre> handling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9870 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-24 22:05:19 +00:00
Julian Smart
3da2715fb8 Corrected include/wx/palette.h; added wxGenericTreeCtrl::SetFont
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9869 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-24 16:38:02 +00:00
Vadim Zeitlin
2c1c448a24 regenerated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9868 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-24 13:37:49 +00:00
Vadim Zeitlin
1cf8c0a9d4 openbsd support added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9867 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-24 13:35:47 +00:00
Vadim Zeitlin
a06c1b9b72 Unix compilation fixes for new MIME code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9866 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-24 00:07:04 +00:00
Vadim Zeitlin
2b813b73cd applied MIME patch(es) from Chris Elliott
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9865 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-23 23:46:21 +00:00
Vadim Zeitlin
4ea45e6ba3 fir for Sun CC 6.0 compilation of wxGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9864 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-23 23:34:07 +00:00
Vadim Zeitlin
e545ddb6e5 no changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9863 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-23 23:33:34 +00:00
Vadim Zeitlin
6d51f22029 some ifdef's - now it might compile without wxUSE_IMAGE although not tested
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9862 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-23 23:31:42 +00:00
David Webster
08399e45e7 add wxUSE_IMAGE to setup.h and GetHFONT to wxFont.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9861 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-23 18:33:05 +00:00
David Webster
5fd2b2c6ae new y position transforms in dc. Def updates and add imagexpm.cpp to make.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9860 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-23 18:32:05 +00:00
David Webster
cffbfebc68 Moving y pos transofrmation code to wxOS2::wxDC elimiantes need for some #ifdef __WXPM__ code here.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9859 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-23 18:31:23 +00:00
Julian Smart
0bbfe845ed Added support for more special characters
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9858 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-23 14:55:37 +00:00
Julian Smart
eba0e3477b Added imagxpm.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9857 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-23 14:45:04 +00:00
Stefan Neis
cb21bd1b10 Added include file for non-precompiled headers.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9856 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 23:10:14 +00:00
Václav Slavík
31929f8009 added wxXPMHandler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9855 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 22:34:37 +00:00
Václav Slavík
c96ea65713 added wxUSE_IMAGE; added write-only wxXPMHandler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9854 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 22:31:53 +00:00
Václav Slavík
a8d4e3ac60 added test for XPM writing; ConvertToBitmap, ConvertToImage changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9853 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 22:25:18 +00:00
Václav Slavík
45ef9db336 moved gtk/palette.cpp to generic/paletteg.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9852 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 22:25:09 +00:00
Václav Slavík
ce113d5ffe moved gtk/palette.h to generic/paletteg.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9851 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 22:24:37 +00:00
Václav Slavík
0046ff7c4f added wxUSE_IMAGE, wxUSE_XPM
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9850 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 22:23:05 +00:00
Václav Slavík
3ff75b5a4f added wxXPMHandler and paletteg.cpp/h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9849 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 22:21:59 +00:00
Václav Slavík
775c6f0cd2 added wxUSE_IMAGE; added write-only wxXPMHandler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9848 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 22:21:21 +00:00
Stefan Neis
a92d972108 Added define missing in EMX headers.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9847 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 20:40:59 +00:00
Stefan Neis
b9c15d1092 Added missing include for non-precompiled headers.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9846 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 20:38:36 +00:00
Stefan Neis
efe7d6ff7e Adapted SetData function to common API (taking a reference
instead of a pointer)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9845 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 20:36:00 +00:00
Stefan Neis
3417f6618c Added missing includes for non-precompiled headers.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9844 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 20:32:01 +00:00
Vadim Zeitlin
7529690de8 don't include unnecessary headers in the distribution
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9843 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 16:12:34 +00:00
Robert Roebling
5cd09f0b8d Toplevel windows now send both activate and focus
events under wxGTK - and probably under wxMSW
    as well?


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9842 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 14:46:18 +00:00
Robert Roebling
f1339c5685 My iconv (GLIBC 2.2) uses char** as the second
parameter. altough it is the in-buffer for the
    character conversion. I added some very ugly
    conversion to strconv to make it compile. While
    being at it, I also reformated the whole file,
    it looks less like Assembler or Perl now.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9840 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 14:06:55 +00:00
Vadim Zeitlin
3f2bcf3437 detabified
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9839 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 12:24:51 +00:00
Vadim Zeitlin
1f3943e027 fixing mngw32 (cross)compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9838 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 11:53:11 +00:00
Robert Roebling
942bef71b0 Applied BMP patch.
Applied deferred wxBitmapButton patch.
  Added error checking to wxFileStream and wxFFileStream.
  Corrected activate event things.

  All these patches work in the stable branch, the
   dev-branch does not currently compile.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9836 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-22 10:20:56 +00:00
Václav Slavík
b06a6b20d5 synced wxImage,wxBitmap docs with my changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@9832 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-04-21 23:18:05 +00:00
7235 changed files with 1874957 additions and 2104 deletions

48
.cvsignore Normal file
View File

@@ -0,0 +1,48 @@
system.list
bin
.gdb_history
Test
config.cache
configarg.cache
config.status
system.list
linux.system.cache
wx-config
config.log
linux-gnu.system.cache
*.dsp
*.dsw
*.plg
*.opt
*.aps
*.ncb
*.pro
*.opt
*.d
*.swp
*.swo
Release
Debug
ReleaseDLL
DebugDLL
robert
stamp-h.in
Makefile
configure
setup.h
stamp-h
libtool
aclocal.m4
base
gtk
motif
win32
base-debug
gtk-debug
motif-debug
win32-debug
base-release
gtk-release
motif-release
win32-release
*tags

257
BuildCVS.txt Normal file
View File

@@ -0,0 +1,257 @@
------------------------------------------------------------------------
How to build the sources from CVS
------------------------------------------------------------------------
Please use the install.txt files in docs/gtk, docs/msw, docs/motif, docs/mac
etc. alongside these instructions.
I) Windows using plain makefiles
----------------------------------------
a) If using Microsoft Visual C++ 5.0 or 6.0
Ensure that the command-line compiler and tools (including
nmake) are installed and ready to run. Depending on your
installation there may be a batch file (named something like
VCVARS32.BAT) that needs to be run to set correct environment
varaibles and PATH entries.
Continue with item c) below.
b) If using the GNU Mingw32 or GNU Cygwin32 compilers
You can get Mingw32 from http://www.mingw.org
Cygwin32 is available at http://www.cygwin.com
The makefile might have small problems with Cygwin's tools
so it is recommended to use Mingw32 and its toolchain instead
if possible.
-> Set your path so that it includes the directory
where your compiler and tools reside
-> If your are using an old Mingw32 version (gcc-2.95 or older),
you might need to fix some headers with the patches contained
in the wxWin\Mingw32-gcc295.patches file. PLEASE APPLY THESE
PATCHES BY HAND! There are apparently a few different versions
of the headers floating around. Note that these patches are
not needed if you are using Mingw32 gcc-2.95.2 or newer.
-> Edit wx/src/makeg95.env and set the MINGW32 variable at the top of
the file to either 1 (you have Mingw32) or 0 (you have Cygwin32).
If using MINGW32, also set the MINGW32VERSION variable
appropiately.
c) Build instructions
-> Assumming 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), for example:
#define wxUSE_ODBC 0
#define wxUSE_SOCKETS 1
#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_LIBJPEG 1
#define wxUSE_LIBPNG 1
and std iostreams are disabled with
#define wxUSE_STD_IOSTREAM 0
-> type: cd c:\wxWin\src\msw
-> type: make -f makefile.g95 (if using GNU tools)
or type: nmake -f makefile.vc (if using MS VC++)
II) Unix ports
--------------
Building wxGTK or wxMotif completely without configure
won't ever work, but there is now a new makefile system
that works without libtool and automake, using only
configure to create what is needed.
In order to create configure, you need to have the
GNU autoconf package (version 2.13 or 2.14) installed
on your system and type run "autoconf" in the base
directory (or run the autogen.sh script in the same
directory, which just calls autoconf).
Set WXWIN environment variable to the base directory such
as ~/wxWindows (this is actually not really needed).
-> type: export WXWIN=~/wxWindows
-> type: md mybuild
-> type: cd mybuild
-> type: ../configure --with-motif
or type: ../configure --with-gtk
-> type: make
-> type: su <type root password>
-> type: make install
-> type: ldconfig
-> type: exit
Call configure with --disable-shared to create a static
library. Calling "make uninstall" will remove the installed
library and "make dist" will create a distribution (not
yet complete).
III) Windows using configure
----------------------------------------
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) Classic MacOS using CodeWarrior (eg MacOS 8.x/9.x)
----------------------------------------
Refer to the readme.txt and install.txt files in docs/mac to build
wxWindows under Classic Mac OS using CodeWarrior.
If you are checking out the CVS sources using cvs under Mac OS X and
compiling under Classic Mac OS, make sure that all text files have a
Mac OS type of 'TEXT' otherwise CodeWarrior may ignore them. Checking
out the CVS sources using cvs under Mac OS X creates untyped files
which can lead to compialtion errors under CodeWarrior which are hard
to track down.
V) MacOS X using configure and the Developer Tools
----------------------------------------
You need to have the Developer Tools installed. If this is not the case,
you will need to register at the Apple Developer web site (this is a free
registration) in order to download the Developer Tools installer.
In order to create configure, you need to have the
GNU autoconf package (version 2.13 or 2.14) installed
on your system and type run "autoconf" in the base
directory (or run the autogen.sh script in the same
directory, which just calls autoconf).
-> type: mkdir macbuild
-> type: cd macbuild
-> type: ../configure --with-mac
or type: ../configure
-> type: make
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
(or whatever you called it)
Now run configure. There are two ways to do this
-> ../configure --host=i586-mingw32 --build=i586-linux --with-mingw \
--enable-dnd=no --without-odbc
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.
[ Update: some new mingw32 versions now have a new set of windows header
files, which apparently can handle ole. Untested at the moment ]
ODBC files don't compile as of 13.10.99 - may be this will be fixed by the
moment you're reading these lines.
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
and wait, wait, wait. Don't leave the room, because the minute you do there
will be a compile error :-)
NB: you risk to get quite a few warnings about "ANSI C++ forbids implicit
conversion from 'void *'" in all places where va_arg macro is used. This
is due to a bug in (some versions of) mingw32 headers which may be
corrected by editing the file
${install_prefix}/lib/gcc-lib/i586-mingw32/egcs-2.91.57/include/stdarg.h
(instead of egcs-2.91.57 you may have something different), searching for
the lines
/* Define __gnuc_va_list. */
#ifndef __GNUC_VA_LIST
#define __GNUC_VA_LIST
#if defined(__svr4__) || defined(_AIX) || defined(_M_UNIX) || defined(__NetBSD__)
typedef char *__gnuc_va_list;
#else
typedef void *__gnuc_va_list;
#endif
#endif
and adding "|| defined(_WIN32)" to the list of platforms on which
__gnuc_va_list is char *.
If this is successful, you end up with a libwx_msw.a in win32/lib. Now try
building the minimal sample:
-> cd samples/minimal
-> make
and run it with wine, for example (or copy to a Windows box)
-> 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.

1406
Makefile.in Normal file

File diff suppressed because it is too large Load Diff

169
Mingw32-gcc295.patches Normal file
View File

@@ -0,0 +1,169 @@
*** \gcc-inc\basetyps.h Sat Jul 31 16:48:36 1999
--- basetyps.h Fri Aug 06 11:14:36 1999
***************
*** 74,91 ****
--- 74,97 ----
STDMETHOD(Clone)(IENUM_THIS_(I) I**) PURE; \
}
#define DECLARE_ENUMERATOR(T) DECLARE_ENUMERATOR_(IEnum##T,T)
+ #ifndef GUID_DEFINED
+ #define GUID_DEFINED
typedef struct _GUID
{
unsigned long Data1;
unsigned short Data2;
unsigned short Data3;
unsigned char Data4[8];
} GUID;
+ #endif /* GUID_DEFINED */
typedef GUID *REFGUID;
typedef GUID *LPGUID;
+ #ifndef UUID_DEFINED
+ #define UUID_DEFINED
typedef GUID UUID;
+ #endif /* UUID_DEFINED */
typedef GUID IID;
typedef GUID CLSID;
typedef CLSID *LPCLSID;
typedef IID *LPIID;
*** \gcc-inc\oaidl.h Sat Jul 31 16:48:42 1999
--- oaidl.h Fri Aug 06 13:18:48 1999
***************
*** 39,44 ****
--- 39,53 ----
#define IMPLTYPEFLAG_FRESTRICTED 4
#define IMPLTYPEFLAG_FDEFAULTVTABLE 8
+ #define DISPID_UNKNOWN ( -1 )
+ #define DISPID_VALUE ( 0 )
+ #define DISPID_PROPERTYPUT ( -3 )
+ #define DISPID_NEWENUM ( -4 )
+ #define DISPID_EVALUATE ( -5 )
+ #define DISPID_CONSTRUCTOR ( -6 )
+ #define DISPID_DESTRUCTOR ( -7 )
+ #define DISPID_COLLECT ( -8 )
+
typedef interface ITypeLib *LPTYPELIB;
typedef interface ICreateTypeInfo *LPCREATETYPEINFO;
typedef interface ICreateTypeInfo2 *LPCREATETYPEINFO2;
***************
*** 49,54 ****
--- 58,73 ----
typedef interface IDispatch *LPDISPATCH;
typedef interface ICreateErrorInfo *LPCREATEERRORINFO;
+ extern "C" const IID IID_ITypeLib;
+ extern "C" const IID IID_ICreateTypeInfo;
+ extern "C" const IID IID_ICreateTypeInfo2;
+ extern "C" const IID IID_ICreateTypeLib;
+ extern "C" const IID IID_ICreateTypeLib2;
+ extern "C" const IID IID_ITypeInfo;
+ extern "C" const IID IID_IErrorInfo;
+ extern "C" const IID IID_IDispatch;
+ extern "C" const IID IID_ICreateErrorInfo;
+
typedef enum tagSYSKIND {
SYS_WIN16,SYS_WIN32,SYS_MAC
} SYSKIND;
***************
*** 375,382 ****
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetTypeInfoCount)(THIS_ UINT*) PURE;
STDMETHOD(GetTypeInfo)(THIS_ UINT,LCID,LPTYPEINFO*) PURE;
! STDMETHOD(GetIDsOfNames)(THIS_ REFIID,LPOLESTR*,UINT,LCID,DISPID)
PURE;
! STDMETHOD(Invoked)(THIS_ DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*) PURE;
};
#ifdef __cplusplus
--- 394,401 ----
STDMETHOD_(ULONG,Release)(THIS) PURE;
STDMETHOD(GetTypeInfoCount)(THIS_ UINT*) PURE;
STDMETHOD(GetTypeInfo)(THIS_ UINT,LCID,LPTYPEINFO*) PURE;
! STDMETHOD(GetIDsOfNames)(THIS_ REFIID,LPOLESTR*,UINT,LCID,DISPID*)
PURE;
! STDMETHOD(Invoke)(THIS_ DISPID,REFIID,LCID,WORD,DISPPARAMS*,VARIANT*,EXCEPINFO*,UINT*) PURE;
};
#ifdef __cplusplus
*** \gcc-inc\objidl.h Sat Jul 31 16:48:42 1999
--- objidl.h Fri Aug 06 11:00:19 1999
***************
*** 627,633 ****
STDMETHOD(QueryGetData)(THIS_ FORMATETC*) PURE;
STDMETHOD(GetCanonicalFormatEtc)(THIS_ FORMATETC*,FORMATETC*) PURE;
STDMETHOD(SetData)(THIS_ FORMATETC*,STGMEDIUM*,BOOL) PURE;
! STDMETHOD(EnumFormatEtc)(THIS_ DWORD,IEnumFORMATETC*) PURE;
STDMETHOD(DAdvise)(THIS_ FORMATETC*,DWORD,IAdviseSink*,PDWORD) PURE;
STDMETHOD(DUnadvise)(THIS_ DWORD) PURE;
STDMETHOD(EnumDAdvise)(THIS_ IEnumSTATDATA**);
--- 627,633 ----
STDMETHOD(QueryGetData)(THIS_ FORMATETC*) PURE;
STDMETHOD(GetCanonicalFormatEtc)(THIS_ FORMATETC*,FORMATETC*) PURE;
STDMETHOD(SetData)(THIS_ FORMATETC*,STGMEDIUM*,BOOL) PURE;
! STDMETHOD(EnumFormatEtc)(THIS_ DWORD,IEnumFORMATETC**) PURE;
STDMETHOD(DAdvise)(THIS_ FORMATETC*,DWORD,IAdviseSink*,PDWORD) PURE;
STDMETHOD(DUnadvise)(THIS_ DWORD) PURE;
STDMETHOD(EnumDAdvise)(THIS_ IEnumSTATDATA**);
--- i386-mingw32\include\stdio.h Sun Aug 1 06:18:20 1999
+++ stdio.h Sun Nov 7 03:41:40 1999
@@ -203,9 +203,12 @@
int fprintf (FILE* filePrintTo, const char* szFormat, ...);
int printf (const char* szFormat, ...);
int sprintf (char* caBuffer, const char* szFormat, ...);
+int _snprintf (char* caBuffer, size_t n, const char* szFormat, ...);
int vfprintf (FILE* filePrintTo, const char* szFormat, va_list varg);
int vprintf (const char* szFormat, va_list varg);
int vsprintf (char* caBuffer, const char* szFormat, va_list varg);
+int _vsnprintf (char* caBuffer, size_t n, const char* szFormat,
+ va_list varg);
/* Wide character versions */
int fwprintf (FILE* filePrintTo, const wchar_t* wsFormat, ...);
--- i386-mingw32\include\winbase.h Sat Jul 31 17:48:48 1999
+++ winbase.h Fri Feb 25 01:49:08 2000
@@ -989,7 +989,7 @@
BOOL WINAPI CopyFileExW(LPCWSTR,LPCWSTR,LPPROGRESS_ROUTINE,LPVOID,LPBOOL,DWORD);
#define RtlMoveMemory memmove
#define RtlCopyMemory memcpy
-#define RtlFillMemory memset
+#define RtlFillMemory(d,l,f) memset ((d),(f),(l))
#define RtlZeroMemory(d,l) memset((d),0,(l))
#define MoveMemory RtlMoveMemory
#define CopyMemory RtlCopyMemory
--- i386-mingw32\include\winsock.h Sat Jul 31 17:48:50 1999
+++ winsock.h Mon Mar 20 13:47:12 2000
@@ -13,6 +13,10 @@
#define _GNU_H_WINDOWS32_SOCKETS
#include <windows.h>
+#ifdef __cplusplus
+extern "C" {
+#endif
+
#ifndef _SYS_TYPES_H
typedef unsigned char u_char;
typedef unsigned short u_short;
@@ -495,4 +499,9 @@
typedef struct timeval TIMEVAL;
typedef struct timeval *PTIMEVAL;
typedef struct timeval *LPTIMEVAL;
+
+#ifdef __cplusplus
+}
#endif
+#endif
+

194
aclocal.m4 vendored Normal file
View File

@@ -0,0 +1,194 @@
# Configure paths for GTK+
# Owen Taylor 97-11-3
dnl AM_PATH_GTK_2_0([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND [, MODULES]]]])
dnl Test for GTK, and define GTK_CFLAGS and GTK_LIBS
dnl
AC_DEFUN(AM_PATH_GTK_2_0,
[dnl
dnl Get the cflags and libraries from the gtk-config-2.0 script
dnl
AC_ARG_WITH(gtk-prefix,[ --with-gtk-prefix=PFX Prefix where GTK is installed (optional)],
gtk_config_prefix="$withval", gtk_config_prefix="")
AC_ARG_WITH(gtk-exec-prefix,[ --with-gtk-exec-prefix=PFX Exec prefix where GTK is installed (optional)],
gtk_config_exec_prefix="$withval", gtk_config_exec_prefix="")
AC_ARG_ENABLE(gtktest, [ --disable-gtktest Do not try to compile and run a test GTK program],
, enable_gtktest=yes)
for module in . $4
do
case "$module" in
gthread)
gtk_config_args="$gtk_config_args gthread"
;;
esac
done
if test x$gtk_config_exec_prefix != x ; then
gtk_config_args="$gtk_config_args --exec-prefix=$gtk_config_exec_prefix"
if test x${GTK_CONFIG_2_0+set} != xset ; then
GTK_CONFIG_2_0=$gtk_config_exec_prefix/bin/gtk-config-2.0
fi
fi
if test x$gtk_config_prefix != x ; then
gtk_config_args="$gtk_config_args --prefix=$gtk_config_prefix"
if test x${GTK_CONFIG_2_0+set} != xset ; then
GTK_CONFIG_2_0=$gtk_config_prefix/bin/gtk-config-2.0
fi
fi
AC_PATH_PROG(GTK_CONFIG_2_0, gtk-config-2.0, no)
min_gtk_version=ifelse([$1], ,1.3.1,$1)
AC_MSG_CHECKING(for GTK - version >= $min_gtk_version)
no_gtk=""
if test "$GTK_CONFIG_2_0" = "no" ; then
no_gtk=yes
else
GTK_CFLAGS=`$GTK_CONFIG_2_0 $gtk_config_args --cflags`
GTK_LIBS=`$GTK_CONFIG_2_0 $gtk_config_args --libs`
gtk_config_major_version=`$GTK_CONFIG_2_0 $gtk_config_args --version | \
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
gtk_config_minor_version=`$GTK_CONFIG_2_0 $gtk_config_args --version | \
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
gtk_config_micro_version=`$GTK_CONFIG_2_0 $gtk_config_args --version | \
sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
if test "x$enable_gtktest" = "xyes" ; then
ac_save_CFLAGS="$CFLAGS"
ac_save_LIBS="$LIBS"
CFLAGS="$CFLAGS $GTK_CFLAGS"
LIBS="$GTK_LIBS $LIBS"
dnl
dnl Now check if the installed GTK is sufficiently new. (Also sanity
dnl checks the results of gtk-config-2.0 to some extent
dnl
rm -f conf.gtktest
AC_TRY_RUN([
#include <gtk/gtk.h>
#include <stdio.h>
#include <stdlib.h>
int
main ()
{
int major, minor, micro;
char *tmp_version;
system ("touch conf.gtktest");
/* HP/UX 9 (%@#!) writes to sscanf strings */
tmp_version = g_strdup("$min_gtk_version");
if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
printf("%s, bad version string\n", "$min_gtk_version");
exit(1);
}
if ((gtk_major_version != $gtk_config_major_version) ||
(gtk_minor_version != $gtk_config_minor_version) ||
(gtk_micro_version != $gtk_config_micro_version))
{
printf("\n*** 'gtk-config-2.0 --version' returned %d.%d.%d, but GTK+ (%d.%d.%d)\n",
$gtk_config_major_version, $gtk_config_minor_version, $gtk_config_micro_version,
gtk_major_version, gtk_minor_version, gtk_micro_version);
printf ("*** was found! If gtk-config-2.0 was correct, then it is best\n");
printf ("*** to remove the old version of GTK+. You may also be able to fix the error\n");
printf("*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing\n");
printf("*** /etc/ld.so.conf. Make sure you have run ldconfig if that is\n");
printf("*** required on your system.\n");
printf("*** If gtk-config-2.0 was wrong, set the environment variable GTK_CONFIG_2_0\n");
printf("*** to point to the correct copy of gtk-config-2.0, and remove the file config.cache\n");
printf("*** before re-running configure\n");
}
#if defined (GTK_MAJOR_VERSION) && defined (GTK_MINOR_VERSION) && defined (GTK_MICRO_VERSION)
else if ((gtk_major_version != GTK_MAJOR_VERSION) ||
(gtk_minor_version != GTK_MINOR_VERSION) ||
(gtk_micro_version != GTK_MICRO_VERSION))
{
printf("*** GTK+ header files (version %d.%d.%d) do not match\n",
GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION);
printf("*** library (version %d.%d.%d)\n",
gtk_major_version, gtk_minor_version, gtk_micro_version);
}
#endif /* defined (GTK_MAJOR_VERSION) ... */
else
{
if ((gtk_major_version > major) ||
((gtk_major_version == major) && (gtk_minor_version > minor)) ||
((gtk_major_version == major) && (gtk_minor_version == minor) && (gtk_micro_version >= micro)))
{
return 0;
}
else
{
printf("\n*** An old version of GTK+ (%d.%d.%d) was found.\n",
gtk_major_version, gtk_minor_version, gtk_micro_version);
printf("*** You need a version of GTK+ newer than %d.%d.%d. The latest version of\n",
major, minor, micro);
printf("*** GTK+ is always available from ftp://ftp.gtk.org.\n");
printf("***\n");
printf("*** If you have already installed a sufficiently new version, this error\n");
printf("*** probably means that the wrong copy of the gtk-config-2.0 shell script is\n");
printf("*** being found. The easiest way to fix this is to remove the old version\n");
printf("*** of GTK+, but you can also set the GTK_CONFIG_2_0 environment to point to the\n");
printf("*** correct copy of gtk-config-2.0. (In this case, you will have to\n");
printf("*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf\n");
printf("*** so that the correct libraries are found at run-time))\n");
}
}
return 1;
}
],, no_gtk=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
CFLAGS="$ac_save_CFLAGS"
LIBS="$ac_save_LIBS"
fi
fi
if test "x$no_gtk" = x ; then
AC_MSG_RESULT(yes (version $gtk_config_major_version.$gtk_config_minor_version.$gtk_config_micro_version))
ifelse([$2], , :, [$2])
else
AC_MSG_RESULT(no)
if test "$GTK_CONFIG_2_0" = "no" ; then
echo "*** The gtk-config-2.0 script installed by GTK could not be found"
echo "*** If GTK was installed in PREFIX, make sure PREFIX/bin is in"
echo "*** your path, or set the GTK_CONFIG_2_0 environment variable to the"
echo "*** full path to gtk-config-2.0."
else
if test -f conf.gtktest ; then
:
else
echo "*** Could not run GTK test program, checking why..."
CFLAGS="$CFLAGS $GTK_CFLAGS"
LIBS="$LIBS $GTK_LIBS"
AC_TRY_LINK([
#include <gtk/gtk.h>
#include <stdio.h>
], [ return ((gtk_major_version) || (gtk_minor_version) || (gtk_micro_version)); ],
[ echo "*** The test program compiled, but did not run. This usually means"
echo "*** that the run-time linker is not finding GTK or finding the wrong"
echo "*** version of GTK. If it is not finding GTK, you'll need to set your"
echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
echo "*** to the installed location Also, make sure you have run ldconfig if that"
echo "*** is required on your system"
echo "***"
echo "*** If you have an old version installed, it is best to remove it, although"
echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"
echo "***"
echo "*** If you have a RedHat 5.0 system, you should remove the GTK package that"
echo "*** came with the system with the command"
echo "***"
echo "*** rpm --erase --nodeps gtk gtk-devel" ],
[ echo "*** The test program failed to compile or link. See the file config.log for the"
echo "*** exact error that occured. This usually means GTK was incorrectly installed"
echo "*** or that you have moved GTK since it was installed. In the latter case, you"
echo "*** may want to edit the gtk-config-2.0 script: $GTK_CONFIG_2_0" ])
CFLAGS="$ac_save_CFLAGS"
LIBS="$ac_save_LIBS"
fi
fi
GTK_CFLAGS=""
GTK_LIBS=""
ifelse([$3], , :, [$3])
fi
AC_SUBST(GTK_CFLAGS)
AC_SUBST(GTK_LIBS)
rm -f conf.gtktest
])

2
autogen.sh Executable file
View File

@@ -0,0 +1,2 @@
#!/bin/sh
autoconf

1305
config.guess vendored Executable file

File diff suppressed because it is too large Load Diff

1332
config.sub vendored Executable file

File diff suppressed because it is too large Load Diff

16590
configure vendored Executable file

File diff suppressed because it is too large Load Diff

4349
configure.in Normal file

File diff suppressed because it is too large Load Diff

15
contrib/Makefile.in Normal file
View File

@@ -0,0 +1,15 @@
#
# Makefile : Builds wxWindows utils for Unix.
#
all:
cd src; make
clean:
cd src; make clean
cd samples; make clean
cd utils; make clean
samples:
cd samples; make

1018
contrib/configure vendored Executable file

File diff suppressed because it is too large Load Diff

70
contrib/configure.in Normal file
View File

@@ -0,0 +1,70 @@
dnl Process this file with autoconf to produce a configure script.
AC_REVISION($Id$)dnl
AC_INIT(Makefile.in)
dnl ---------------
dnl MMedia specific
dnl ---------------
dnl Check for ESD
ESD_LINK=
AC_CHECK_HEADER(esd.h, [
AC_CHECK_LIB(esd, esd_close, [
ESD_LINK="-lesd"
])
])
if test "$ESD_LINK" != "" ; then
echo "ESound detected"
fi
dnl -----------
dnl Final subst
PATH_IFS=$wx_cv_path_ifs
WX_TARGET_LIBRARY=$wx_cv_target_library
WX_TARGET_LIBRARY_TYPE=$wx_cv_target_libtype
AC_SUBST(PATH_IFS)
AC_SUBST(ESD_LINK)
AC_SUBST(WX_TARGET_LIBRARY)
AC_SUBST(WX_TARGET_LIBRARY_TYPE)
dnl -----------
dnl File output
AC_OUTPUT([
Makefile
src/Makefile
src/ogl/Makefile
src/mmedia/Makefile
src/stc/Makefile
src/xrc/Makefile
src/canvas/Makefile
src/gizmos/Makefile
src/plot/Makefile
src/applet/Makefile
samples/Makefile
samples/mmedia/Makefile
samples/ogl/Makefile
samples/ogl/ogledit/Makefile
samples/ogl/studio/Makefile
samples/stc/Makefile
samples/canvas/Makefile
samples/canvas/test/Makefile
samples/canvas/simple/Makefile
samples/gizmos/Makefile
samples/gizmos/multicell/Makefile
samples/gizmos/splittree/Makefile
samples/gizmos/editlbox/Makefile
samples/xrc/Makefile
samples/plot/Makefile
samples/applet/Makefile
utils/Makefile
utils/wxrc/Makefile
utils/wxrcedit/Makefile
utils/convertrc/Makefile
])

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 440 B

View File

@@ -0,0 +1,9 @@
\chapter{Bugs}\label{bugs}%
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}
These are the known bugs.
\begin{itemize}\itemsep=0pt
\item No bugs
\end{itemize}

Binary file not shown.

After

Width:  |  Height:  |  Size: 138 B

View File

@@ -0,0 +1,24 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/cdbase.h at 26/Feb/00 14:52:12
%
\section{\class{wxCDAudio}}\label{wxcdaudio}
\wxheading{Derived from}
wxObject
\wxheading{Data structures}
{\small
\begin{verbatim}
typedef struct wxCDtime {
wxUint8 track
};
\end{verbatim}
}
{\small \begin{verbatim}
typedef enum { PLAYING, PAUSED, STOPPED } CDstatus
\end{verbatim}}

View File

@@ -0,0 +1,66 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/cdunix.h at 26/Feb/00 14:52:10
%
\section{\class{wxCDAudioLinux}}\label{wxcdaudiolinux}
\wxheading{Derived from}
\helpref{wxCDAudio}{wxcdaudio}
\wxheading{Data structures}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxCDAudioLinux::wxCDAudioLinux}\label{wxcdaudiolinuxwxcdaudiolinux}
\func{}{wxCDAudioLinux}{\void}
\func{}{wxCDAudioLinux}{\param{const char* }{dev\_name}}
\membersection{wxCDAudioLinux::\destruct{wxCDAudioLinux}}\label{wxcdaudiolinuxdtor}
\func{}{\destruct{wxCDAudioLinux}}{\void}
\membersection{wxCDAudioLinux::Play}\label{wxcdaudiolinuxplay}
\func{bool}{Play}{\param{const wxCDtime\& }{beg\_time}, \param{const wxCDtime\& }{end\_time}}
\membersection{wxCDAudioLinux::Pause}\label{wxcdaudiolinuxpause}
\func{bool}{Pause}{\void}
\membersection{wxCDAudioLinux::Resume}\label{wxcdaudiolinuxresume}
\func{bool}{Resume}{\void}
\membersection{wxCDAudioLinux::GetStatus}\label{wxcdaudiolinuxgetstatus}
\func{CDstatus}{GetStatus}{\void}
\membersection{wxCDAudioLinux::GetTime}\label{wxcdaudiolinuxgettime}
\func{wxCDtime}{GetTime}{\void}
\membersection{wxCDAudioLinux::GetToc}\label{wxcdaudiolinuxgettoc}
\func{CDtoc\&}{GetToc}{\void}
\membersection{wxCDAudioLinux::Ok}\label{wxcdaudiolinuxok}
\constfunc{bool}{Ok}{\void}
\membersection{wxCDAudioLinux::OpenDevice}\label{wxcdaudiolinuxopendevice}
\func{void}{OpenDevice}{\param{const char* }{dev\_name}}

View File

@@ -0,0 +1,78 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/cdwin.h at 26/Feb/00 14:52:15
%
\section{\class{wxCDAudioWin}}\label{wxcdaudiowin}
\wxheading{Derived from}
\helpref{wxCDAudio}{wxcdaudio}
\wxheading{Data structures}
{\small
\begin{verbatim}
typedef struct CDAW\_Internal {
MCIDEVICEID dev\_id
};
\end{verbatim}
}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxCDAudioWin::wxCDAudioWin}\label{wxcdaudiowinwxcdaudiowin}
\func{}{wxCDAudioWin}{\void}
\func{}{wxCDAudioWin}{\param{const char* }{dev\_name}}
\membersection{wxCDAudioWin::\destruct{wxCDAudioWin}}\label{wxcdaudiowindtor}
\func{}{\destruct{wxCDAudioWin}}{\void}
\membersection{wxCDAudioWin::Play}\label{wxcdaudiowinplay}
\func{bool}{Play}{\param{const wxCDtime\& }{beg\_time}, \param{const wxCDtime\& }{end\_time}}
\membersection{wxCDAudioWin::Pause}\label{wxcdaudiowinpause}
\func{bool}{Pause}{\void}
\membersection{wxCDAudioWin::Resume}\label{wxcdaudiowinresume}
\func{bool}{Resume}{\void}
\membersection{wxCDAudioWin::GetStatus}\label{wxcdaudiowingetstatus}
\func{CDstatus}{GetStatus}{\void}
\membersection{wxCDAudioWin::GetTime}\label{wxcdaudiowingettime}
\func{wxCDtime}{GetTime}{\void}
\membersection{wxCDAudioWin::GetToc}\label{wxcdaudiowingettoc}
\func{const CDtoc\&}{GetToc}{\void}
\membersection{wxCDAudioWin::Ok}\label{wxcdaudiowinok}
\constfunc{bool}{Ok}{\void}
\membersection{wxCDAudioWin::PrepareToc}\label{wxcdaudiowinpreparetoc}
\func{void}{PrepareToc}{\void}

View File

@@ -0,0 +1,111 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/cdbase.h at 26/Feb/00 14:52:12
%
\section{\class{CDtoc}}\label{cdtoc}
Table of contents manager
\wxheading{Derived from}
No base class
\wxheading{Data structures}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{CDtoc::CDtoc}\label{cdtoccdtoc}
\func{}{CDtoc}{\param{wxCDtime\& }{tot\_tm}, \param{wxCDtime* }{trks\_tm}, \param{wxCDtime* }{trks\_pos}}
\membersection{CDtoc::GetTrackTime}\label{cdtocgettracktime}
\constfunc{wxCDtime}{GetTrackTime}{\param{wxUint8 }{track}}
Returns the length of the specified track
track: track to get length
\membersection{CDtoc::GetTrackPos}\label{cdtocgettrackpos}
\constfunc{wxCDtime}{GetTrackPos}{\param{wxUint8 }{track}}
Returns the position of the specified track
track: track to get position
\membersection{CDtoc::GetTotalTime}\label{cdtocgettotaltime}
\constfunc{wxCDtime}{GetTotalTime}{\void}
Returns the total time
\membersection{wxCDAudio::wxCDAudio}\label{wxcdaudiowxcdaudio}
\func{}{wxCDAudio}{\void}
\membersection{wxCDAudio::\destruct{wxCDAudio}}\label{wxcdaudiodtor}
\func{}{\destruct{wxCDAudio}}{\void}
\membersection{wxCDAudio::Play}\label{wxcdaudioplay}
\func{bool}{Play}{\param{const wxCDtime\& }{beg\_play}, \param{const wxCDtime\& }{end\_play}}
Play audio at the specified position
\func{bool}{Play}{\param{const wxCDtime\& }{beg\_play}}
Play audio from the specified to the end of the CD audio
\func{bool}{Play}{\param{wxUint8 }{beg\_track}, \param{wxUint8 }{end\_track = 0}}
\membersection{wxCDAudio::Pause}\label{wxcdaudiopause}
\func{bool}{Pause}{\void}
Pause the audio playing
\membersection{wxCDAudio::Resume}\label{wxcdaudioresume}
\func{bool}{Resume}{\void}
Resume a paused audio playing
\membersection{wxCDAudio::GetStatus}\label{wxcdaudiogetstatus}
\func{CDstatus}{GetStatus}{\void}
Get the current CD status
\membersection{wxCDAudio::GetTime}\label{wxcdaudiogettime}
\func{wxCDtime}{GetTime}{\void}
Get the current playing time
\membersection{wxCDAudio::GetToc}\label{wxcdaudiogettoc}
\func{const CDtoc\&}{GetToc}{\void}
Returns the table of contents
\membersection{wxCDAudio::Ok}\label{wxcdaudiook}
\constfunc{bool}{Ok}{\void}
CD ok

View File

@@ -0,0 +1,3 @@
\chapter{Change log}
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}

View File

@@ -0,0 +1,13 @@
\chapter{Class reference}\label{classref}
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}
These are the main Mmedia classes.
\input cdaudio.tex
\input cdaudlnx.tex
\input cdaudwin.tex
\input cdtoc.tex
\input sndbase.tex
\input sndfile.tex
\input sndfrmt.tex

Binary file not shown.

After

Width:  |  Height:  |  Size: 231 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 164 B

View File

@@ -0,0 +1,47 @@
\chapter{Introduction}
\pagenumbering{arabic}%
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}
The MMedia wxWindows extension is a wxWindows library which provides you
a full set of multimedia classes including sound recording/playing,
cd audio playing and video playing. The API is portable and can be used
on any supported systems with the insurance the behaviour will be the
same.
\section{File structure}
These are the files that comprise the mmedia library.
\begin{description}\itemsep=0pt
\item[sndbase.h] Header for wxSoundStream base class and wxSoundFormat base class.
\item[sndbase.cpp] Basic objects implementation.
\item[sndfile.h] wxSoundFileStream base class header.
\item[sndfile.cpp] wxSoundFileStream base class implementation.
\item[sndpcm.h] wxSoundFormatPcm class header.
\item[sndpcm.cpp] wxSoundFormatPcm class implementation.
\item[sndcpcm.h] wxSoundCodecPcm class header (PCM converter).
\item[sndcpcm.cpp] wxSoundCodecPcm class implementation (PCM converter).
\item[sndulaw.h]
\item[sndulaw.cpp]
\item[sndg72x.h]
\item[sndg72x.cpp]
\item[sndoss.h]
\item[sndoss.cpp]
\item[sndesd.h]
\item[sndesd.cpp]
\item[sndwin.h]
\item[sndwin.cpp]
\item[cdbase.h]
\item[cdbase.cpp]
\item[cdunix.h]
\item[cdunix.cpp]
\item[cdwin.h]
\item[cdwin.cpp]
\item[vidbase.h]
\item[vidbase.cpp]
\item[vidxanm.h]
\item[vidxanm.cpp]
\item[vidwin.h]
\item[vidwin.cpp]
\end{description}

View File

@@ -0,0 +1,45 @@
\documentstyle[a4,makeidx,verbatim,texhelp,fancyheadings]{report}
\definecolour{black}{0}{0}{0}%
\definecolour{cyan}{0}{255}{255}%
\definecolour{green}{0}{255}{0}%
\definecolour{magenta}{255}{0}{255}%
\definecolour{red}{255}{0}{0}%
\definecolour{blue}{0}{0}{200}%
\definecolour{yellow}{255}{255}{0}%
\definecolour{white}{255}{255}{255}%
\input psbox.tex
\parindent 0pt
\parskip 11pt
\title{MMedia for wxWindows}
\author{Guilhem Lavaux}
\date{March 2000}
\makeindex
\begin{document}
\maketitle
\pagestyle{fancyplain}
\bibliographystyle{plain}
\pagenumbering{roman}
\setheader{{\it CONTENTS}}{}{}{}{}{{\it CONTENTS}}
\setfooter{\thepage}{}{}{}{}{\thepage}
\tableofcontents%
\input{intro.tex}
%
\input{sample.tex}
%
\input{classes.tex}
%
\input{topics.tex}
%
\input{bugs.tex}
%
\input{changes.tex}
%
\addcontentsline{toc}{chapter}{Index}
\setheader{{\it INDEX}}{}{}{}{}{{\it INDEX}}
\setfooter{\thepage}{}{}{}{}{\thepage}%
\printindex
\end{document}

View File

@@ -0,0 +1,520 @@
%
% %%%%%%% %%%%% %%%%%% %%%%% % %
% % % % % % % % % %
% % % % % % % % % %
% %%%%%%% %%%%% %%%%%% % % %
% % % % % % % % %
% % % % % % % % %
% % %%%%%% %%%%%% %%%%% % %
%
% By Jean Orloff
% Comments & suggestions by e-mail: ORLOFF@surya11.cern.ch
% No modification of this file allowed if not e-sent to me.
%
% A simple way to measure the size of encapsulated postscript figures
% from inside TeX, and to use it for automatically formatting texts
% with inserted figures. Works both under Plain TeX-based macros
% (Phyzzx, Harvmac, Psizzl, ...) and LaTeX environment.
% Provides exactly the same result on any PostScript printer provided
% the single instruction \psfor... is changed to fit the needs of the
% particular dvi->ps translator used.
% History:
% 1.31: adds \psforDVIALW(?)
% 1.30: adds \splitfile & \joinfiles for multi-file management
% 1.24: fix error handling & add \psonlyboxes
% 1.23: adds \putsp@ce for OzTeX fix
% 1.22: makes \drawingBox \global for use in Phyzzx
% 1.21: accepts %%BoundingBox: (atend)
% 1.20: tries to add \psfordvitps for the TeXPS package.
% 1.10: adds \psforoztex, error handling...
%2345678 1 2345678 2 2345678 3 2345678 4 2345678 5 2345678 6 2345678 7 23456789
%
\def\temp{1.31}
\let\tempp=\relax
\expandafter\ifx\csname psboxversion\endcsname\relax
\message{version: \temp}
\else
\ifdim\temp cm>\psboxversion cm
\message{version: \temp}
\else
\message{psbox(\psboxversion) is already loaded: I won't load
psbox(\temp)!}
\let\temp=\psboxversion
\let\tempp=\endinput
\fi
\fi
\tempp
\let\psboxversion=\temp
\catcode`\@=11
% Every macro likes a little privacy...
%
% Some common defs
%
\def\execute#1{#1}% NOT stupid: cs in #1 are then identified BEFORE execution
\def\psm@keother#1{\catcode`#112\relax}% borrowed from latex
\def\executeinspecs#1{%
\execute{\begingroup\let\do\psm@keother\dospecials\catcode`\^^M=9#1\endgroup}}
%
%Trying to tame the variety of \special commands for Postscript: the
% universal internal command \PSspeci@l##1##2 takes ##1 to be the
% filename and ##2 to be the integer scale factor*1000 (as for usual
% TeX \scale commands)
%
\def\psfortextures{% For TeXtures on the Macintosh
%-----------------
\def\PSspeci@l##1##2{%
\special{illustration ##1\space scaled ##2}%
}}
%
\def\psfordvitops{% For the DVItoPS converter on IBM mainframes
%----------------
\def\PSspeci@l##1##2{%
\special{dvitops: import ##1\space \the\drawingwd \the\drawinght}%
}}
%
\def\psfordvips{% For DVIPS converter on VAX, UNIX and PC's
%--------------
\def\PSspeci@l##1##2{%
% \special{/@scaleunit 1000 def}% never read dox without trying!
\d@my=0.1bp \d@mx=\drawingwd \divide\d@mx by\d@my%
\special{PSfile=##1\space llx=\psllx\space lly=\pslly\space%
urx=\psurx\space ury=\psury\space rwi=\number\d@mx}%
}}
%
\def\psforoztex{% For the OzTeX shareware on the Macintosh
%--------------
\def\PSspeci@l##1##2{%
\special{##1 \space
##2 1000 div dup scale
\putsp@ce{\number-\psllx} \putsp@ce{\number-\pslly} translate
}%
}}
\def\putsp@ce#1{#1 }
%
\def\psfordvitps{% From the UNIX TeXPS package, vers.>3.12
%---------------
% Convert a dimension into the number \psn@sp (in scaled points)
\def\psdimt@n@sp##1{\d@mx=##1\relax\edef\psn@sp{\number\d@mx}}
\def\PSspeci@l##1##2{%
% psfig.psr contains the def of "startTexFig": if you can locate it
% and include the correct pathname, it should work
\special{dvitps: Include0 "psfig.psr"}% contains def of "startTexFig"
\psdimt@n@sp{\drawingwd}
\special{dvitps: Literal "\psn@sp\space"}
\psdimt@n@sp{\drawinght}
\special{dvitps: Literal "\psn@sp\space"}
\psdimt@n@sp{\psllx bp}
\special{dvitps: Literal "\psn@sp\space"}
\psdimt@n@sp{\pslly bp}
\special{dvitps: Literal "\psn@sp\space"}
\psdimt@n@sp{\psurx bp}
\special{dvitps: Literal "\psn@sp\space"}
\psdimt@n@sp{\psury bp}
\special{dvitps: Literal "\psn@sp\space startTexFig\space"}
\special{dvitps: Include1 "##1"}
\special{dvitps: Literal "endTexFig\space"}
}}
\def\psforDVIALW{% Try for dvialw, a UNIX public domain
%---------------
\def\PSspeci@l##1##2{
\special{language "PS"
literal "##2 1000 div dup scale"
include "##1"}}}
\def\psonlyboxes{% Draft-like behaviour if none of the others works
%---------------
\def\PSspeci@l##1##2{%
\at(0cm;0cm){\boxit{\vbox to\drawinght
{\vss
\hbox to\drawingwd{\at(0cm;0cm){\hbox{(##1)}}\hss}
}}}
}%
}
%
\def\psloc@lerr#1{%
\let\savedPSspeci@l=\PSspeci@l%
\def\PSspeci@l##1##2{%
\at(0cm;0cm){\boxit{\vbox to\drawinght
{\vss
\hbox to\drawingwd{\at(0cm;0cm){\hbox{(##1) #1}}\hss}
}}}
\let\PSspeci@l=\savedPSspeci@l% restore normal output for other figs!
}%
}
%
%\def\psfor... add your own!
%
% \ReadPSize{PSfilename} reads the dimensions of a PostScript drawing
% and stores it in \drawinght(wd)
\newread\pst@mpin
\newdimen\drawinght\newdimen\drawingwd
\newdimen\psxoffset\newdimen\psyoffset
\newbox\drawingBox
\newif\ifNotB@undingBox
\newhelp\PShelp{Proceed: you'll have a 5cm square blank box instead of
your graphics (Jean Orloff).}
\def\@mpty{}
\def\s@tsize#1 #2 #3 #4\@ndsize{
\def\psllx{#1}\def\pslly{#2}%
\def\psurx{#3}\def\psury{#4}% needed by a crazyness of dvips!
\ifx\psurx\@mpty\NotB@undingBoxtrue% this is not a valid one!
\else
\drawinght=#4bp\advance\drawinght by-#2bp
\drawingwd=#3bp\advance\drawingwd by-#1bp
% !Units related by crazy factors as bp/pt=72.27/72 should be BANNED!
\fi
}
\def\sc@nline#1:#2\@ndline{\edef\p@rameter{#1}\edef\v@lue{#2}}
\def\g@bblefirstblank#1#2:{\ifx#1 \else#1\fi#2}
\def\psm@keother#1{\catcode`#112\relax}% borrowed from latex
\def\execute#1{#1}% Seems stupid, but cs are identified BEFORE execution
{\catcode`\%=12
\xdef\B@undingBox{%%BoundingBox}
} %% is not a true comment in PostScript, even if % is!
\def\ReadPSize#1{
\edef\PSfilename{#1}
\openin\pst@mpin=#1\relax
\ifeof\pst@mpin \errhelp=\PShelp
\errmessage{I haven't found your postscript file (\PSfilename)}
\psloc@lerr{was not found}
\s@tsize 0 0 142 142\@ndsize
\closein\pst@mpin
\else
\immediate\write\psbj@inaux{#1,}
\loop
\executeinspecs{\catcode`\ =10\global\read\pst@mpin to\n@xtline}
\ifeof\pst@mpin
\errhelp=\PShelp
\errmessage{(\PSfilename) is not an Encapsulated PostScript File:
I could not find any \B@undingBox: line.}
\edef\v@lue{0 0 142 142:}
\psloc@lerr{is not an EPSFile}
\NotB@undingBoxfalse
\else
\expandafter\sc@nline\n@xtline:\@ndline
\ifx\p@rameter\B@undingBox\NotB@undingBoxfalse
\edef\t@mp{%
\expandafter\g@bblefirstblank\v@lue\space\space\space}
\expandafter\s@tsize\t@mp\@ndsize
\else\NotB@undingBoxtrue
\fi
\fi
\ifNotB@undingBox\repeat
\closein\pst@mpin
\fi
\message{#1}
}
%
% \psboxto(xdim;ydim){psfilename}: you specify the dimensions and
% TeX uniformly scales to fit the largest one. If xdim=0pt, the
% scale is fully determined by ydim and vice versa.
% Notice: psboxes are a real vboxes; couldn't take hbox otherwise all
% indentation and all cr's would be interpreted as spaces (hugh!).
%
\newcount\xscale \newcount\yscale \newdimen\pscm\pscm=1cm
\newdimen\d@mx \newdimen\d@my
\let\ps@nnotation=\relax
\def\psboxto(#1;#2)#3{\vbox{
\ReadPSize{#3}
\divide\drawingwd by 1000
\divide\drawinght by 1000
\d@mx=#1
\ifdim\d@mx=0pt\xscale=1000
\else \xscale=\d@mx \divide \xscale by \drawingwd\fi
\d@my=#2
\ifdim\d@my=0pt\yscale=1000
\else \yscale=\d@my \divide \yscale by \drawinght\fi
\ifnum\yscale=1000
\else\ifnum\xscale=1000\xscale=\yscale
\else\ifnum\yscale<\xscale\xscale=\yscale\fi
\fi
\fi
\divide \psxoffset by 1000\multiply\psxoffset by \xscale
\divide \psyoffset by 1000\multiply\psyoffset by \xscale
\global\divide\pscm by 1000
\global\multiply\pscm by\xscale
\multiply\drawingwd by\xscale \multiply\drawinght by\xscale
\ifdim\d@mx=0pt\d@mx=\drawingwd\fi
\ifdim\d@my=0pt\d@my=\drawinght\fi
\message{scaled \the\xscale}
\hbox to\d@mx{\hss\vbox to\d@my{\vss
\global\setbox\drawingBox=\hbox to 0pt{\kern\psxoffset\vbox to 0pt{
\kern-\psyoffset
\PSspeci@l{\PSfilename}{\the\xscale}
\vss}\hss\ps@nnotation}
\global\ht\drawingBox=\the\drawinght
\global\wd\drawingBox=\the\drawingwd
\baselineskip=0pt
\copy\drawingBox
\vss}\hss}
\global\psxoffset=0pt
\global\psyoffset=0pt% These are local to one figure
\global\pscm=1cm
\global\drawingwd=\drawingwd
\global\drawinght=\drawinght
}}
%
% \psboxscaled{scalefactor*1000}{PSfilename} allows to bypass the
% rounding errors of TeX integer divisions for situations where the
% TeX box should fit the original BoundingBox with a precision better
% than 1/1000.
%
\def\psboxscaled#1#2{\vbox{
\ReadPSize{#2}
\xscale=#1
\message{scaled \the\xscale}
\divide\drawingwd by 1000\multiply\drawingwd by\xscale
\divide\drawinght by 1000\multiply\drawinght by\xscale
\divide \psxoffset by 1000\multiply\psxoffset by \xscale
\divide \psyoffset by 1000\multiply\psyoffset by \xscale
\global\divide\pscm by 1000
\global\multiply\pscm by\xscale
\global\setbox\drawingBox=\hbox to 0pt{\kern\psxoffset\vbox to 0pt{
\kern-\psyoffset
\PSspeci@l{\PSfilename}{\the\xscale}
\vss}\hss\ps@nnotation}
\global\ht\drawingBox=\the\drawinght
\global\wd\drawingBox=\the\drawingwd
\baselineskip=0pt
\copy\drawingBox
\global\psxoffset=0pt
\global\psyoffset=0pt% These are local to one figure
\global\pscm=1cm
\global\drawingwd=\drawingwd
\global\drawinght=\drawinght
}}
%
% \psbox{PSfilename} makes a TeX box having the minimal size to
% enclose the picture
\def\psbox#1{\psboxscaled{1000}{#1}}
%
%
% \joinfiles file1, file2, ...n \into joinedfilename .
% makes one file out of many
% \splitfile joinedfilename
% the opposite
%
%\def\execute#1{#1}% NOT stupid: cs in #1 are then identified BEFORE execution
%\def\psm@keother#1{\catcode`#112\relax}% borrowed from latex
%\def\executeinspecs#1{%
%\execute{\begingroup\let\do\psm@keother\dospecials\catcode`\^^M=9#1\endgroup}}
%\newread\pst@mpin
\newif\ifn@teof\n@teoftrue
\newif\ifc@ntrolline
\newif\ifmatch
\newread\j@insplitin
\newwrite\j@insplitout
\newwrite\psbj@inaux
\immediate\openout\psbj@inaux=psbjoin.aux
\immediate\write\psbj@inaux{\string\joinfiles}
\immediate\write\psbj@inaux{\jobname,}
%
% We redefine input to keep track of the various files inputted
%
\immediate\let\oldinput=\input
\def\input#1 {
\immediate\write\psbj@inaux{#1,}
\oldinput #1 }
\def\empty{}
\def\setmatchif#1\contains#2{
\def\match##1#2##2\endmatch{
\def\tmp{##2}
\ifx\empty\tmp
\matchfalse
\else
\matchtrue
\fi}
\match#1#2\endmatch}
\def\warnopenout#1#2{
\setmatchif{TrashMe,psbjoin.aux,psbjoin.all}\contains{#2}
\ifmatch
\else
\immediate\openin\pst@mpin=#2
\ifeof\pst@mpin
\else
\errhelp{If the content of this file is so precious to you, abort (ie
press x or e) and rename it before retrying.}
\errmessage{I'm just about to replace your file named #2}
\fi
\immediate\closein\pst@mpin
\fi
\message{#2}
\immediate\openout#1=#2}
% No comments allowed below: % will have an unusual catcode
{
\catcode`\%=12
\gdef\splitfile#1 {
\immediate\openin\j@insplitin=#1
\message{Splitting file #1 into:}
\warnopenout\j@insplitout{TrashMe}
\loop
\ifeof
\j@insplitin\immediate\closein\j@insplitin\n@teoffalse
\else
\n@teoftrue
\executeinspecs{\global\read\j@insplitin to\spl@tinline\expandafter
\ch@ckbeginnewfile\spl@tinline%Beginning-Of-File-Named:%\endcheck}
\ifc@ntrolline
\else
\toks0=\expandafter{\spl@tinline}
\immediate\write\j@insplitout{\the\toks0}
\fi
\fi
\ifn@teof\repeat
\immediate\closeout\j@insplitout}
\gdef\ch@ckbeginnewfile#1%Beginning-Of-File-Named:#2%#3\endcheck{
\def\t@mp{#1}
\ifx\empty\t@mp
\def\t@mp{#3}
\ifx\empty\t@mp
\global\c@ntrollinefalse
\else
\immediate\closeout\j@insplitout
\warnopenout\j@insplitout{#2}
\global\c@ntrollinetrue
\fi
\else
\global\c@ntrollinefalse
\fi}
\gdef\joinfiles#1\into#2 {
\message{Joining following files into}
\warnopenout\j@insplitout{#2}
\message{:}
{
\edef\w@##1{\immediate\write\j@insplitout{##1}}
\w@{% This text was produced with psbox's \string\joinfiles.}
\w@{% To decompose and tex it:}
\w@{%-save this with a filename CONTAINING ONLY LETTERS, and no extensions}
\w@{% (say, JOINTFIL), in some uncrowded directory;}
\w@{%-make sure you can \string\input\space psbox.tex (version>=1.3);}
\w@{%-tex JOINTFIL using Plain, or LaTeX, or whatever is needed by}
\w@{% the first part in the joining (after splitting JOINTFIL into}
\w@{% it's constituents, TeX will try to process it as it stands).}
\w@{\string\input\space psbox.tex}
\w@{\string\splitfile{\string\jobname}}
}
\tre@tfilelist#1, \endtre@t
\immediate\closeout\j@insplitout}
\gdef\tre@tfilelist#1, #2\endtre@t{
\def\t@mp{#1}
\ifx\empty\t@mp
\else
\llj@in{#1}
\tre@tfilelist#2, \endtre@t
\fi}
\gdef\llj@in#1{
\immediate\openin\j@insplitin=#1
\ifeof\j@insplitin
\errmessage{I couldn't find file #1.}
\else
\message{#1}
\toks0={%Beginning-Of-File-Named:#1}
\immediate\write\j@insplitout{\the\toks0}
\executeinspecs{\global\read\j@insplitin to\oldj@ininline}
\loop
\ifeof\j@insplitin\immediate\closein\j@insplitin\n@teoffalse
\else\n@teoftrue
\executeinspecs{\global\read\j@insplitin to\j@ininline}
\toks0=\expandafter{\oldj@ininline}
\let\oldj@ininline=\j@ininline
\immediate\write\j@insplitout{\the\toks0}
\fi
\ifn@teof
\repeat
\immediate\closein\j@insplitin
\fi}
}
% To be put at the end of a file, for making an tar-like file containing
% everything it used.
\def\autojoin{
\immediate\write\psbj@inaux{\string\into\space psbjoin.all}
\immediate\closeout\psbj@inaux
\input psbjoin.aux
}
%
% Annotations & Captions etc...
%
%
% \centinsert{anybox} is just a centered \midinsert, but is included as
% people barely use the original inserts from TeX.
%
\def\centinsert#1{\midinsert\line{\hss#1\hss}\endinsert}
\def\psannotate#1#2{\def\ps@nnotation{#2\global\let\ps@nnotation=\relax}#1}
\def\pscaption#1#2{\vbox{
\setbox\drawingBox=#1
\copy\drawingBox
\vskip\baselineskip
\vbox{\hsize=\wd\drawingBox\setbox0=\hbox{#2}
\ifdim\wd0>\hsize
\noindent\unhbox0\tolerance=5000
\else\centerline{\box0}
\fi
}}}
% for compatibility with older versions
\def\psfig#1#2#3{\pscaption{\psannotate{#1}{#2}}{#3}}
\def\psfigurebox#1#2#3{\pscaption{\psannotate{\psbox{#1}}{#2}}{#3}}
%
% \at(#1;#2)#3 puts #3 at #1-higher and #2-right of the current
% position without moving it (to be used in annotations).
\def\at(#1;#2)#3{\setbox0=\hbox{#3}\ht0=0pt\dp0=0pt
\rlap{\kern#1\vbox to0pt{\kern-#2\box0\vss}}}
%
% \gridfill(ht;wd) makes a 1cm*1cm grid of ht by wd whose lower-left
% corner is the current point
\newdimen\gridht \newdimen\gridwd
\def\gridfill(#1;#2){
\setbox0=\hbox to 1\pscm
{\vrule height1\pscm width.4pt\leaders\hrule\hfill}
\gridht=#1
\divide\gridht by \ht0
\multiply\gridht by \ht0
\gridwd=#2
\divide\gridwd by \wd0
\multiply\gridwd by \wd0
\advance \gridwd by \wd0
\vbox to \gridht{\leaders\hbox to\gridwd{\leaders\box0\hfill}\vfill}}
%
% Useful to measure where to put annotations
\def\fillinggrid{\at(0cm;0cm){\vbox{
\gridfill(\drawinght;\drawingwd)}}}
%
% \textleftof\anybox: Sample text\endtext
% inserts "Sample text" on the left of \anybox ie \vbox, \psbox.
% \textrightof is the symmetric (not documented, too uggly)
% Welcome any suggestion about clean wraparound macros from
% TeXhackers reading this
%
\def\textleftof#1:{
\setbox1=#1
\setbox0=\vbox\bgroup
\advance\hsize by -\wd1 \advance\hsize by -2em}
\def\textrightof#1:{
\setbox0=#1
\setbox1=\vbox\bgroup
\advance\hsize by -\wd0 \advance\hsize by -2em}
\def\endtext{
\egroup
\hbox to \hsize{\valign{\vfil##\vfil\cr%
\box0\cr%
\noalign{\hss}\box1\cr}}}
%
% \frameit{\thick}{\skip}{\anybox}
% draws with thickness \thick a box around \anybox, leaving \skip of
% blank around it. eg \frameit{0.5pt}{1pt}{\hbox{hello}}
% \boxit{\anybox} is a shortcut.
\def\frameit#1#2#3{\hbox{\vrule width#1\vbox{
\hrule height#1\vskip#2\hbox{\hskip#2\vbox{#3}\hskip#2}%
\vskip#2\hrule height#1}\vrule width#1}}
\def\boxit#1{\frameit{0.4pt}{0pt}{#1}}
%
%
\catcode`\@=12 % cs containing @ are unreachable
%
% CUSTOMIZE YOUR DEFAULT DRIVER:
% Uncomment the line corresponding to your TeX system:
%\psfortextures% For TeXtures on the Macintosh
%\psforoztex % For OzTeX shareware on the Macintosh
%\psfordvitops % For the DVItoPS converter for TeX on IBM mainframes
\psfordvips % For DVIPS converter on VAX and UNIX
%\psfordvitps % For dvitps from TeXPS package under UNIX
%\psforDVIALW % For DVIALW, UNIX public domain
%\psonlyboxes % Blank Boxes (when all else fails).

View File

@@ -0,0 +1,6 @@
\chapter{MMboard: a sample MMedia application}\label{mmboard}%
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}
To be written.

View File

@@ -0,0 +1,68 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/sndaiff.h at 26/Feb/00 14:52:29
%
\section{\class{wxSoundAiff}}\label{wxsoundaiff}
AIFF codec
\wxheading{Derived from}
\helpref{wxSoundFileStream}{wxsoundfilestream}
\wxheading{Data structures}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxSoundAiff::wxSoundAiff}\label{wxsoundaiffwxsoundaiff}
\func{}{wxSoundAiff}{\param{wxInputStream\& }{stream}, \param{wxSoundStream\& }{io\_sound}}
\func{}{wxSoundAiff}{\param{wxOutputStream\& }{stream}, \param{wxSoundStream\& }{io\_sound}}
\membersection{wxSoundAiff::\destruct{wxSoundAiff}}\label{wxsoundaiffdtor}
\func{}{\destruct{wxSoundAiff}}{\void}
\membersection{wxSoundAiff::CanRead}\label{wxsoundaiffcanread}
\func{bool}{CanRead}{\void}
\membersection{wxSoundAiff::GetCodecName}\label{wxsoundaiffgetcodecname}
\constfunc{wxString}{GetCodecName}{\void}
\membersection{wxSoundAiff::PrepareToPlay}\label{wxsoundaiffpreparetoplay}
\func{bool}{PrepareToPlay}{\void}
\membersection{wxSoundAiff::PrepareToRecord}\label{wxsoundaiffpreparetorecord}
\func{bool}{PrepareToRecord}{\param{wxUint32 }{time}}
\membersection{wxSoundAiff::FinishRecording}\label{wxsoundaifffinishrecording}
\func{bool}{FinishRecording}{\void}
\membersection{wxSoundAiff::RepositionStream}\label{wxsoundaiffrepositionstream}
\func{bool}{RepositionStream}{\param{wxUint32 }{position}}
\membersection{wxSoundAiff::GetData}\label{wxsoundaiffgetdata}
\func{wxUint32}{GetData}{\param{void* }{buffer}, \param{wxUint32 }{len}}
\membersection{wxSoundAiff::PutData}\label{wxsoundaiffputdata}
\func{wxUint32}{PutData}{\param{const void* }{buffer}, \param{wxUint32 }{len}}

View File

@@ -0,0 +1,294 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Name: sndbase.tex
%% Purpose: wxMMedia docs
%% Author: Guilhem Lavaux <lavaux@easynet.fr>
%% Modified by:
%% Created: 2000
%% RCS-ID: $Id$
%% Copyright: (c) wxWindows team
%% Licence: wxWindows licence
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{\class{wxSoundStream}}\label{wxsoundstream}
Base class for sound streams
\wxheading{Derived from}
No base class
\wxheading{Include files}
<wx/mmedia/sndbase.h>
\wxheading{Data structures}
%%
%% wxSoundStream errors
%%
\wxheading{wxSoundStream errors}
\twocolwidtha{7cm}
\begin{twocollist}\itemsep=0pt
\twocolitem{{\bf wxSOUND\_NOERR}}{No error occured}
\twocolitem{{\bf wxSOUND\_IOERR}}{An input/output error occured, it may concern
either a driver or a file}
\twocolitem{{\bf wxSOUND\_INVFRMT}}{The sound format passed to the function is
invalid. Generally, it means that you passed out of range values to the codec
stream or you don't pass the right sound format object to the right sound codec
stream.}
\twocolitem{{\bf wxSOUND\_INVDEV}}{Invalid device. Generally, it means that the
sound stream didn't manage to open the device driver due to an invalid parameter
or to the fact that sound is not supported on this computer.}
\twocolitem{{\bf wxSOUND\_NOEXACT}}{No exact matching sound codec has been found for
this sound format. It means that the sound driver didn't manage to setup the sound
card with the specified values.}
\twocolitem{{\bf wxSOUND\_NOCODEC}}{No matching codec has been found. Generally, it
may happen when you call wxSoundRouterStream::SetSoundFormat().}
\twocolitem{{\bf wxSOUND\_MEMERR}}{Not enough memory.}
\end{twocollist}
%%
%% C callback
%%
\wxheading{C callback for wxSound event}
When a sound event is generated, it may either call the internal sound event
processor (which can be inherited) or call a C function. Its definition is:
\begin{verbatim}
typedef void (*wxSoundCallback)(wxSoundStream *stream, int evt,
void *cdata);
\end{verbatim}
The {\bf stream} parameter represents the current wxSoundStream.
The {\bf evt} parameter represents the sound event which is the cause of the calling. (See \helpref{wxSound events}{wxsoundstream}).
The {\bf cdata} parameter represents the user callback data which were specified
when the user called \helpref{wxSoundStream::Register}{wxsoundstreamregister}.
{\it Note:} There are two other ways to catch sound events: you can inherit the
sound stream and redefine \helpref{wxSoundStream::OnSoundEvent}{wxsoundstreamonsoundevent}, or you can reroute the events to another sound stream using \helpref{wxSoundStream::SetEventHandler}{wxsoundstreamseteventhandler}.
%%
%% wxSoundStream streaming mode
%%
\wxheading{wxSound streaming mode}
The wxSoundStream object can work in three different modes. These modes are specified
at the call to \helpref{wxSoundStream::StartProduction}{wxsoundstreamstartproduction}
and cannot be changed until you call
\helpref{wxSoundStream::StopProduction}{wxsoundstreamstopproduction}.
The {\bf wxSOUND\_INPUT} mode is the recording mode. It generates {\bf wxSOUND\_INPUT}
events and you cannot use wxSoundStream::Write().
The {\bf wxSOUND\_OUTPUT} mode is the playing mode. It generates {\bf wxSOUND\_OUTPUT}
events and you cannot use wxSoundStream::Read().
The {\bf wxSOUND\_DUPLEX} mode activates the full duplex mode. The full duplex requires
you to make synchronous call to \helpref{wxSoundStream::Read}{wxsoundstreamread} and
\helpref{wxSoundStream::Write}{wxsoundstreamwrite}. This means that you must be
careful with realtime problems. Each time you call Read you must call Write.
%%
%% wxSoundStream events
%%
\wxheading{wxSoundStream events}
The sound events are generated when the sound driver (or the sound stream) completes
a previous sound buffer. There are two possible sound events and two meanings.
The {\bf wxSOUND\_INPUT} event is generated when the sound stream has a new input
buffer ready to be read. You know that you can read a buffer of the size
\helpref{GetBestSize()}{wxsoundstreamgetbestsize} without blocking.
The {\bf wxSOUND\_OUTPUT} event is generated when the sound stream has completed a
previous buffer. This buffer has been sent to the sound driver and it is ready to
process a new buffer. Consequently, \helpref{Write}{wxsoundstreamwrite} will not
block too.
\latexignore{\rtfignore{\wxheading{Members}}}
%% Ctor && Dtor
\membersection{wxSoundStream::wxSoundStream}\label{wxsoundstreamwxsoundstream}
\func{}{wxSoundStream}{\void}
Default constructor.
\membersection{wxSoundStream::\destruct{wxSoundStream}}\label{wxsoundstreamdtor}
\func{}{\destruct{wxSoundStream}}{\void}
Destructor. The destructor stops automatically all started production and destroys
any temporary buffer.
%%
%% Read
%%
\membersection{wxSoundStream::Read}\label{wxsoundstreamread}
\func{wxSoundStream\&}{Read}{\param{void* }{buffer}, \param{wxUint32 }{len}}
Reads {\it len} bytes from the sound stream. This call may block the user so
use it carefully when you need to intensively refresh the GUI. You may be
interested by sound events: see \helpref{wxSoundStream::OnSoundEvent}{wxsoundstreamonsoundevent}.
It is better to use the size returned by \helpref{wxSoundStream::GetBestSize}{wxsoundstreamgetbestsize}: this may improve performance or accuracy of the
sound event system.
\wxheading{Parameters}
\docparam{len}{{\it len} is expressed in bytes. If you need to do conversions between bytes
and seconds use wxSoundFormat.
See \helpref{wxSoundFormatBase}{wxsoundformatbase}, \helpref{wxSoundStream::GetSoundFormat}{wxsoundstreamgetsoundformat}.}
\docparam{data}{Data in \it{buffer} are coded using the sound format attached to this sound
stream. The format is specified with
\helpref{SetSoundFormat}{wxsoundstreamsetsoundformat}.}
%%
%% Write
%%
\membersection{wxSoundStream::Write}\label{wxsoundstreamwrite}
\func{wxSoundStream\&}{Write}{\param{const void* }{buffer}, \param{wxUint32 }{len}}
Writes \it{len} bytes to the sound stream. This call may block the user so
use it carefully. You may be interested by sound events: see
\helpref{wxSoundStream::OnSoundEvent}{wxsoundstreamonsoundevent}.
It is better to use the size returned by \helpref{wxSoundStream::GetBestSize}{wxsoundstreamgetbestsize}: this may improve performance or accuracy of the
sound event system.
\wxheading{Parameters}
\docparam{len}{This is expressed in bytes. If you need to do conversions between bytes
and seconds use wxSoundFormat.
See \helpref{wxSoundFormatBase}{wxsoundformatbase}, \helpref{wxSoundStream::GetSoundFormat}{wxsoundstreamgetsoundformat}.}
\docparam{buffer}{Data in \it{buffer} are coded using the sound format attached to this sound
stream. The format is specified with
\helpref{SetSoundFormat}{wxsoundstreamsetsoundformat}.}
%%
%% GetBestSize
%%
\membersection{wxSoundStream::GetBestSize}\label{wxsoundstreamgetbestsize}
\constfunc{wxUint32}{GetBestSize}{\void}
This function returns the best size for IO calls. The best size provides you
a good alignment for data to be written (or read) to (or from) the sound stream.
So, when, for example, a sound event is sent, you are sure the sound stream
will not block for this buffer size.
%%
%% wxSoundStream:SetSoundFormat
%%
\membersection{wxSoundStream::SetSoundFormat}\label{wxsoundstreamsetsoundformat}
\func{bool}{SetSoundFormat}{\param{const wxSoundFormatBase\& }{format}}
SetSoundFormat is one of the key function of the wxSoundStream object.
It specifies the sound format the user needs. SetSoundFormat tries to
apply the format to the current sound stream (it can be a sound file or a
sound driver). Then, either it manages to apply it and it returns {\bf TRUE},
or it could not and it returns {\bf FALSE}. In this case, you must check
the error with
\helpref{wxSoundStream::GetError}{wxsoundstreamgeterror}. See
\helpref{wxSoundStream errors section}{wxsoundstream} for more details.
\wxheading{Note}
The {\bf format} object can be destroyed after the call. The object does not need it.
\wxheading{Note}
If the error is {\bf wxSOUND\_NOTEXACT}, the stream tries to find the best
approaching format and setups it. You can check the format which it applied
with \helpref{wxSoundStream::GetSoundFormat}{wxsoundstreamgetsoundformat}.
%%
%% GetSoundFormat
%%
\membersection{wxSoundStream::GetSoundFormat}\label{wxsoundstreamgetsoundformat}
\constfunc{wxSoundFormatBase\&}{GetSoundFormat}{\void}
It returns a reference to the current sound format of the stream represented by a
wxSoundFormatBase object. This object {\it must not} be destroyed by anyone except
the stream itself.
%%
%% SetCallback
%%
\membersection{wxSoundStream::SetCallback}\label{wxsoundstreamregister}
\func{void}{Register}{\param{int }{evt}, \param{wxSoundCallback }{cbk}, \param{void* }{cdata}}
It installs a C callback for wxSoundStream events. The C callbacks are still
useful to avoid hard inheritance. You can install only one callback per event.
Each callback has its callback data.
%%
%% StartProduction
%%
\membersection{wxSoundStream::StartProduction}\label{wxsoundstreamstartproduction}
\func{bool}{StartProduction}{\param{int }{evt}}
StartProduction starts the sound streaming. {\it evt} may be one of
{\bf wxSOUND\_INPUT}, {\bf wxSOUND\_OUTPUT} or {\bf wxSOUND\_DUPLEX}.
You cannot specify several flags at the same time. Starting the production
may automaticaly in position of buffer underrun (only in the case you activated
recording). Actually this may happen the sound IO queue is too short.
It is also advised that you fill quickly enough the sound IO queue when the
driver requests it (through a wxSoundEvent).
\membersection{wxSoundStream::StopProduction}\label{wxsoundstreamstopproduction}
\func{bool}{StopProduction}{\void}
I stops the async notifier and the sound streaming straightly.
\membersection{wxSoundStream::SetEventHandler}\label{wxsoundstreamseteventhandler}
\func{void}{SetEventHandler}{\param{wxSoundStream* }{handler}}
Sets the event handler: if it is non-null, all events are routed to it.
\membersection{wxSoundStream::GetError}\label{wxsoundstreamgeterror}
\constfunc{wxSoundError}{GetError}{\void}
It returns the last error which occured.
\membersection{wxSoundStream::GetLastAccess}\label{wxsoundstreamgetlastaccess}
\constfunc{wxUint32}{GetLastAccess}{\void}
It returns the number of bytes which were effectively written to/read from the sound stream.
\membersection{wxSoundStream::QueueFilled}\label{wxsoundstreamqueuefilled}
\constfunc{bool}{QueueFilled}{\void}
It returns whether the sound IO queue is full. When it is full, the next IO call will block
until the IO queue has at least one empty entry.
\membersection{wxSoundStream::OnSoundEvent}\label{wxsoundstreamonsoundevent}
\func{void}{OnSoundEvent}{\param{int }{evt}}
It is called by the wxSoundStream when a new sound event occured.

View File

@@ -0,0 +1,39 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/sndcodec.h at 26/Feb/00 14:26:29
%
\section{\class{wxSoundStreamCodec}}\label{wxsoundstreamcodec}
\wxheading{Derived from}
\helpref{wxSoundStream}{wxsoundstream}
\wxheading{Data structures}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxSoundStreamCodec::wxSoundStreamCodec}\label{wxsoundstreamcodecwxsoundstreamcodec}
\func{}{wxSoundStreamCodec}{\param{wxSoundStream\& }{snd\_io}}
\membersection{wxSoundStreamCodec::\destruct{wxSoundStreamCodec}}\label{wxsoundstreamcodecdtor}
\func{}{\destruct{wxSoundStreamCodec}}{\void}
\membersection{wxSoundStreamCodec::StartProduction}\label{wxsoundstreamcodecstartproduction}
\func{bool}{StartProduction}{\param{int }{evt}}
\membersection{wxSoundStreamCodec::StopProduction}\label{wxsoundstreamcodecstopproduction}
\func{bool}{StopProduction}{\void}
\membersection{wxSoundStreamCodec::GetBestSize}\label{wxsoundstreamcodecgetbestsize}
\constfunc{wxUint32}{GetBestSize}{\void}

View File

@@ -0,0 +1,64 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/sndesd.h at 26/Feb/00 14:26:56
%
\section{\class{wxSoundStreamESD}}\label{wxsoundstreamesd}
ESD output class
\wxheading{Derived from}
\helpref{wxSoundStream}{wxsoundstream}
\wxheading{Data structures}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxSoundStreamESD::wxSoundStreamESD}\label{wxsoundstreamesdwxsoundstreamesd}
\func{}{wxSoundStreamESD}{\param{const wxString\& }{hostname = "localhost"}}
\membersection{wxSoundStreamESD::\destruct{wxSoundStreamESD}}\label{wxsoundstreamesddtor}
\func{}{\destruct{wxSoundStreamESD}}{\void}
\membersection{wxSoundStreamESD::Read}\label{wxsoundstreamesdread}
\func{wxSoundStream\&}{Read}{\param{void* }{buffer}, \param{wxUint32 }{len}}
\membersection{wxSoundStreamESD::Write}\label{wxsoundstreamesdwrite}
\func{wxSoundStream\&}{Write}{\param{const void* }{buffer}, \param{wxUint32 }{len}}
\membersection{wxSoundStreamESD::SetSoundFormat}\label{wxsoundstreamesdsetsoundformat}
\func{bool}{SetSoundFormat}{\param{const wxSoundFormatBase\& }{format}}
\membersection{wxSoundStreamESD::StartProduction}\label{wxsoundstreamesdstartproduction}
\func{bool}{StartProduction}{\param{int }{evt}}
\membersection{wxSoundStreamESD::StopProduction}\label{wxsoundstreamesdstopproduction}
\func{bool}{StopProduction}{\void}
\membersection{wxSoundStreamESD::WakeUpEvt}\label{wxsoundstreamesdwakeupevt}
\func{void}{WakeUpEvt}{\param{int }{evt}}
You should not call this.
\membersection{wxSoundStreamESD::QueueFilled}\label{wxsoundstreamesdqueuefilled}
\constfunc{bool}{QueueFilled}{\void}

View File

@@ -0,0 +1,87 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/sndg72x.h at 26/Feb/00 14:52:19
%
\section{\class{wxSoundFormatG72X}}\label{wxsoundformatg72x}
G72X format
\wxheading{Derived from}
\helpref{wxSoundFormatBase}{wxsoundformatbase}
\wxheading{Data structures}
{\small \begin{verbatim}
typedef enum {
wxSOUND\_G721,
wxSOUND\_G723\_24,
wxSOUND\_G723\_40
} wxSoundG72XType
\end{verbatim}}
{\small \begin{verbatim}
typedef struct g72x\_state g72state
\end{verbatim}}
This fixes a bug in Mingw95
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxSoundFormatG72X::wxSoundFormatG72X}\label{wxsoundformatg72xwxsoundformatg72x}
\func{}{wxSoundFormatG72X}{\void}
\membersection{wxSoundFormatG72X::\destruct{wxSoundFormatG72X}}\label{wxsoundformatg72xdtor}
\func{}{\destruct{wxSoundFormatG72X}}{\void}
\membersection{wxSoundFormatG72X::SetG72XType}\label{wxsoundformatg72xsetg72xtype}
\func{void}{SetG72XType}{\param{wxSoundG72XType }{type}}
\membersection{wxSoundFormatG72X::GetG72XType}\label{wxsoundformatg72xgetg72xtype}
\constfunc{wxSoundG72XType}{GetG72XType}{\void}
\membersection{wxSoundFormatG72X::SetSampleRate}\label{wxsoundformatg72xsetsamplerate}
\func{void}{SetSampleRate}{\param{wxUint32 }{srate}}
\membersection{wxSoundFormatG72X::GetSampleRate}\label{wxsoundformatg72xgetsamplerate}
\constfunc{wxUint32}{GetSampleRate}{\void}
\membersection{wxSoundFormatG72X::GetType}\label{wxsoundformatg72xgettype}
\constfunc{wxSoundFormatType}{GetType}{\void}
\membersection{wxSoundFormatG72X::Clone}\label{wxsoundformatg72xclone}
\constfunc{wxSoundFormatBase*}{Clone}{\void}
\membersection{wxSoundFormatG72X::GetTimeFromBytes}\label{wxsoundformatg72xgettimefrombytes}
\constfunc{wxUint32}{GetTimeFromBytes}{\param{wxUint32 }{bytes}}
\membersection{wxSoundFormatG72X::GetBytesFromTime}\label{wxsoundformatg72xgetbytesfromtime}
\constfunc{wxUint32}{GetBytesFromTime}{\param{wxUint32 }{time}}
\membersection{wxSoundFormatG72X::operator!=}\label{wxsoundformatg72xoperatorneq}
\constfunc{bool}{operator!=}{\param{const wxSoundFormatBase\& }{frmt2}}

View File

@@ -0,0 +1,243 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Name: sndfile.tex
%% Purpose: wxMMedia docs
%% Author: Guilhem Lavaux <lavaux@easynet.fr>
%% Modified by:
%% Created: 2000
%% RCS-ID: $Id$
%% Copyright: (c) wxWindows team
%% Licence: wxWindows licence
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{\class{wxSoundFileStream}}\label{wxsoundfilestream}
Base class for file coders/decoders. This class is not constructor (it is an abstract
class).
\wxheading{Derived from}
\helpref{wxSoundStream}{wxsoundstream}
\wxheading{Include file}
wx/sndfile.h
\wxheading{Data structures}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxSoundFileStream::wxSoundFileStream}\label{wxsoundfilestreamwxsoundfilestream}
\func{}{wxSoundFileStream}{\param{wxInputStream\& }{stream}, \param{wxSoundStream\& }{io\_sound}}
It constructs a new file decoder object which will send
audio data to the specified sound stream.
The {\it stream} is the input stream to be decoded. The
{\it io\_sound} is the destination sound stream.
Once it has been constructed, you cannot change any of
the specified streams nor the direction of the stream.
You will have access to the playback functions.
\func{}{wxSoundFileStream}{\param{wxOutputStream\& }{stream}, \param{wxSoundStream\& }{io\_sound}}
It constructs a new file coder object which will get
data to be recorded from the specified sound stream.
The {\it stream} is the output wxStream. The {\it io\_sound}
is the source sound stream of the audio data. Once
it has been constructed, you cannot change any of
the specified streams nor the direction of the stream.
\membersection{wxSoundFileStream::\destruct{wxSoundFileStream}}\label{wxsoundfilestreamdtor}
\func{}{\destruct{wxSoundFileStream}}{\void}
It destroys the current sound file codec.
\membersection{wxSoundFileStream::Play}\label{wxsoundfilestreamplay}
\func{bool}{Play}{\void}
It starts playing the file. The playing begins, in background
in nearly all cases, after the return of the function. The
codec returns to a {\bf stopped} state when it reaches the
end of the file.
On success, it returns TRUE.
\membersection{wxSoundFileStream::Record}\label{wxsoundfilestreamrecord}
\func{bool}{Record}{\param{wxUint32 }{time}}
It starts recording data from the sound stream and writing them
to the output stream. You have to precise the recording length in
parameter. This length is expressed in seconds. If you want to
control the record length (using \helpref{Stop}{wxsoundfilestreamstop}),
you can set it to wxSOUND\_INFINITE\_TIME.
On success, it returns TRUE.
\membersection{wxSoundFileStream::Stop}\label{wxsoundfilestreamstop}
\func{bool}{Stop}{\void}
It stops either recording or playing. Whatever happens (even unexpected
errors), the stream is stopped when the function returns. When you are
in recording mode, the file headers are updated and flushed if possible
(ie: if the output stream is seekable).
On success, it returns TRUE.
\membersection{wxSoundFileStream::Pause}\label{wxsoundfilestreampause}
\func{bool}{Pause}{\void}
The file codec tries to pause the stream: it means that it stops audio
production but keep the file pointer at the place.
If the file codec is already paused, it returns FALSE.
On success, it returns TREE.
\membersection{wxSoundFileStream::Resume}\label{wxsoundfilestreamresume}
\func{bool}{Resume}{\void}
When the file codec has been paused using
\helpref{Pause}{wxsoundfilestreampause}, you could be interrested in
resuming it. This is the goal of this function.
\membersection{wxSoundFileStream::IsStopped}\label{wxsoundfilestreamisstopped}
\constfunc{bool}{IsStopped}{\void}
It returns TRUE when the stream is stopped, in another case it returns
FALSE.
\membersection{wxSoundFileStream::IsPaused}\label{wxsoundfilestreamispaused}
\constfunc{bool}{IsPaused}{\void}
It returns TRUE when the stream is paused, in another case it returns
FALSE.
\membersection{wxSoundFileStream::StartProduction}\label{wxsoundfilestreamstartproduction}
\func{bool}{StartProduction}{\param{int }{evt}}
It is really not advised you call this function. From the wxSoundFileStream
point of view it is an internal function. Internally, it is called after
the file stream has been prepared to be played or to receive audio data and
when it wants to start processing audio data.
\membersection{wxSoundFileStream::StopProduction}\label{wxsoundfilestreamstopproduction}
\func{bool}{StopProduction}{\void}
As for \helpref{StartProduction}{wxsoundfilestreamstopproduction}, it is not
advised for you to call this function. It is called by
\helpref{Stop}{wxsoundfilestreamstop} when it needs to stop the audio data
processing.
\membersection{wxSoundFileStream::GetLength}\label{wxsoundfilestreamgetlength}
\func{wxUint32}{GetLength}{\void}
It returns the audio data length of the file stream. This length is expressed
in bytes. If you need the length in seconds, you will need to use
\helpref{GetSoundFormat}{wxsoundstreamgetsoundformat} and
\helpref{GetTimeFromBytes}{wxsoundformatbasegettimefrombytes}.
\membersection{wxSoundFileStream::GetPosition}\label{wxsoundfilestreamgetposition}
\func{wxUint32}{GetPosition}{\void}
It returns the current position in the soundfile stream. The position
is expressed in bytes. If you need the length in seconds, you will need to use
\helpref{GetSoundFormat}{wxsoundstreamgetsoundformat} and
\helpref{GetTimeFromBytes}{wxsoundformatbasegettimefrombytes}.
\membersection{wxSoundFileStream::SetPosition}\label{wxsoundfilestreamsetposition}
\func{wxUint32}{SetPosition}{\param{wxUint32 }{new\_position}}
It sets the current in the soundfile stream. The position
{\it new\_position} must be expressed in bytes. You can get
a length/position in bytes from a time value using
\helpref{GetSoundFormat}{wxsoundstreamgetsoundformat} and
\helpref{GetTimeFromBytes}{wxsoundformatbasegettimefrombytes}.
On success, it returns TRUE.
\wxheading{Warning}
Some wxStream may not be capable to support this function as
it may not support the seekable functionnality. If this happens,
it returns FALSE and leave the stream at the same position.
\membersection{wxSoundFileStream::Read}\label{wxsoundfilestreamread}
\func{wxSoundStream\&}{Read}{\param{void* }{buffer}, \param{wxUint32 }{len}}
You can obtain the audio data encoded in the file using this function.
But it must be considered as an internal function. Used carelessly, it
may corrupt the current state of the stream.
Data are returned using in the original file coding (You must use a sound
format object to decode it).
\membersection{wxSoundFileStream::Write}\label{wxsoundfilestreamwrite}
\func{wxSoundStream\&}{Write}{\param{const void* }{buffer}, \param{wxUint32 }{len}}
You can put encoded audio data to the file using this function.
But it must be considered as an internal function. Used carelessly, it
may corrupt the current state of the stream.
Data must be coded with the specified file coding (You must use a sound
format object to do this).
\membersection{wxSoundFileStream::SetSoundFormat}\label{wxsoundfilestreamsetsoundformat}
\func{bool}{SetSoundFormat}{\param{const wxSoundFormatBase\& }{format}}
\membersection{wxSoundFileStream::GetCodecName}\label{wxsoundfilestreamgetcodecname}
\constfunc{wxString}{GetCodecName}{\void}
This function returns the Codec name. This is useful for those who
want to build a player (But also in some other case).
\membersection{wxSoundFileStream::CanRead}\label{wxsoundfilestreamcanread}
\func{bool}{CanRead}{\void}
You should use this function to test whether this file codec can read
the stream you passed to it.
\membersection{wxSoundFileStream::PrepareToPlay}\label{wxsoundfilestreampreparetoplay}
\func{bool}{PrepareToPlay}{\void}
It is called by wxSoundFileStream to prepare the specific file loader
to prepare itself to play the file. Actually, this includes reading
headers and setting the various parameters of the sound format.
This should not be called by an external user but it should be
implemented when you inherit wxSoundFileStream to build a new codec.
It must return when the file is identified and the parameters have
been set. In all other cases, you must return FALSE.
\membersection{wxSoundFileStream::PrepareToRecord}\label{wxsoundfilestreampreparetorecord}
\func{bool}{PrepareToRecord}{\param{wxUint32 }{time}}
\membersection{wxSoundFileStream::FinishRecording}\label{wxsoundfilestreamfinishrecording}
\func{bool}{FinishRecording}{\void}
\membersection{wxSoundFileStream::RepositionStream}\label{wxsoundfilestreamrepositionstream}
\func{bool}{RepositionStream}{\param{wxUint32 }{position}}
This is called by wxSoundFileStream::SetPosition to seek the input stream
to the right position. This must be overidden by the file codec class.
The position is relative to the beginning of the samples.
If it is impossible (as for a piped input stream), you must return FALSE.
\membersection{wxSoundFileStream::FinishPreparation}\label{wxsoundfilestreamfinishpreparation}
\func{void}{FinishPreparation}{\param{wxUint32 }{len}}
This is an internal function but it must called by the file codec class when
the "playing" preparation is finished and you know the size of the stream.
If it is an {\it infinite} stream, you should set this to wxSOUND\_INFINITE\_TIME.
\membersection{wxSoundFileStream::GetData}\label{wxsoundfilestreamgetdata}
\func{wxUint32}{GetData}{\param{void* }{buffer}, \param{wxUint32 }{len}}
This is called by wxSoundFileStream when it needs to get new sound data to
send to the device driver (or to a conversion codec). This must be eventually
overidden by the file codec class. The default behaviour is simply to read from
the input stream.
\membersection{wxSoundFileStream::PutData}\label{wxsoundfilestreamputdata}
\func{wxUint32}{PutData}{\param{const void* }{buffer}, \param{wxUint32 }{len}}
This is called by wxSoundFileStream when it needs to put new sound data received
from the device driver (or from a conversion codec). This must be eventually
overidden by the file codec class. The default behaviour is simply to write to
the input stream.

View File

@@ -0,0 +1,104 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/sndpcm.h at 26/Feb/00 14:26:33
%
\section{\class{wxSoundFormatPcm}}\label{wxsoundformatpcm}
PCM specification class
\wxheading{Derived from}
\helpref{wxSoundFormatBase}{wxsoundformatbase}
\wxheading{Data structures}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxSoundFormatPcm::wxSoundFormatPcm}\label{wxsoundformatpcmwxsoundformatpcm}
\func{}{wxSoundFormatPcm}{\param{wxUint32 }{srate = 22500}, \param{wxUint8 }{bps = 8}, \param{wxUint16 }{channels = 2}, \param{bool }{sign = TRUE}, \param{int }{order = wxLITTLE\_ENDIAN}}
\membersection{wxSoundFormatPcm::\destruct{wxSoundFormatPcm}}\label{wxsoundformatpcmdtor}
\func{}{\destruct{wxSoundFormatPcm}}{\void}
\membersection{wxSoundFormatPcm::SetSampleRate}\label{wxsoundformatpcmsetsamplerate}
\func{void}{SetSampleRate}{\param{wxUint32 }{srate}}
\membersection{wxSoundFormatPcm::SetBPS}\label{wxsoundformatpcmsetbps}
\func{void}{SetBPS}{\param{wxUint8 }{bps}}
\membersection{wxSoundFormatPcm::SetChannels}\label{wxsoundformatpcmsetchannels}
\func{void}{SetChannels}{\param{wxUint16 }{nchannels}}
\membersection{wxSoundFormatPcm::SetOrder}\label{wxsoundformatpcmsetorder}
\func{void}{SetOrder}{\param{int }{order}}
\membersection{wxSoundFormatPcm::Signed}\label{wxsoundformatpcmsigned}
\func{void}{Signed}{\param{bool }{sign}}
\membersection{wxSoundFormatPcm::GetSampleRate}\label{wxsoundformatpcmgetsamplerate}
\constfunc{wxUint32}{GetSampleRate}{\void}
\membersection{wxSoundFormatPcm::GetBPS}\label{wxsoundformatpcmgetbps}
\constfunc{wxUint8}{GetBPS}{\void}
\membersection{wxSoundFormatPcm::GetChannels}\label{wxsoundformatpcmgetchannels}
\constfunc{wxUint16}{GetChannels}{\void}
\membersection{wxSoundFormatPcm::GetOrder}\label{wxsoundformatpcmgetorder}
\constfunc{int}{GetOrder}{\void}
\membersection{wxSoundFormatPcm::Signed}\label{wxsoundformatpcmgetsigned}
\constfunc{bool}{Signed}{\void}
\membersection{wxSoundFormatPcm::GetType}\label{wxsoundformatpcmgettype}
\constfunc{wxSoundFormatType}{GetType}{\void}
\membersection{wxSoundFormatPcm::Clone}\label{wxsoundformatpcmclone}
\constfunc{wxSoundFormatBase*}{Clone}{\void}
\membersection{wxSoundFormatPcm::GetTimeFromBytes}\label{wxsoundformatpcmgettimefrombytes}
\constfunc{wxUint32}{GetTimeFromBytes}{\param{wxUint32 }{bytes}}
\membersection{wxSoundFormatPcm::GetBytesFromTime}\label{wxsoundformatpcmgetbytesfromtime}
\constfunc{wxUint32}{GetBytesFromTime}{\param{wxUint32 }{time}}
\membersection{wxSoundFormatPcm::operator!}\label{wxsoundformatpcmoperatornot}
\constfunc{bool}{operator!}{\param{const wxSoundFormatBase\& }{frmt2}}

View File

@@ -0,0 +1,69 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/sndbase.h at 26/Feb/00 14:23:29
%
\section{\class{wxSoundFormatBase}}\label{wxsoundformatbase}
Base class for sound format specification
\wxheading{Derived from}
No base class
\wxheading{Data structures}
{\small \begin{verbatim}
typedef enum {
wxSOUND\_NOFORMAT,
wxSOUND\_PCM,
wxSOUND\_ULAW,
wxSOUND\_G72X,
wxSOUND\_MSADPCM
} wxSoundFormatType
\end{verbatim}}
wxSoundFormatType: it specifies the format family of the sound data
which will be passed to the stream.
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxSoundFormatBase::wxSoundFormatBase}\label{wxsoundformatbasewxsoundformatbase}
\func{}{wxSoundFormatBase}{\void}
\membersection{wxSoundFormatBase::\destruct{wxSoundFormatBase}}\label{wxsoundformatbasedtor}
\func{}{\destruct{wxSoundFormatBase}}{\void}
\membersection{wxSoundFormatBase::GetType}\label{wxsoundformatbasegettype}
\constfunc{wxSoundFormatType}{GetType}{\void}
It returns a "standard" format type.
\membersection{wxSoundFormatBase::Clone}\label{wxsoundformatbaseclone}
\constfunc{wxSoundFormatBase*}{Clone}{\void}
It clones the current format.
\membersection{wxSoundFormatBase::GetTimeFromBytes}\label{wxsoundformatbasegettimefrombytes}
\constfunc{wxUint32}{GetTimeFromBytes}{\param{wxUint32 }{bytes}}
\membersection{wxSoundFormatBase::GetBytesFromTime}\label{wxsoundformatbasegetbytesfromtime}
\constfunc{wxUint32}{GetBytesFromTime}{\param{wxUint32 }{time}}
\membersection{wxSoundFormatBase::operator!=}\label{wxsoundformatbaseoperatorneq}
\constfunc{bool}{operator!=}{\param{const wxSoundFormatBase\& }{frmt2}}

View File

@@ -0,0 +1,74 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/sndulaw.h at 26/Feb/00 14:52:25
%
\section{\class{wxSoundFormatUlaw}}\label{wxsoundformatulaw}
ULAW format
\wxheading{Derived from}
\helpref{wxSoundFormatBase}{wxsoundformatbase}
\wxheading{Data structures}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxSoundFormatUlaw::wxSoundFormatUlaw}\label{wxsoundformatulawwxsoundformatulaw}
\func{}{wxSoundFormatUlaw}{\void}
\membersection{wxSoundFormatUlaw::\destruct{wxSoundFormatUlaw}}\label{wxsoundformatulawdtor}
\func{}{\destruct{wxSoundFormatUlaw}}{\void}
\membersection{wxSoundFormatUlaw::SetSampleRate}\label{wxsoundformatulawsetsamplerate}
\func{void}{SetSampleRate}{\param{wxUint32 }{srate}}
\membersection{wxSoundFormatUlaw::GetSampleRate}\label{wxsoundformatulawgetsamplerate}
\constfunc{wxUint32}{GetSampleRate}{\void}
\membersection{wxSoundFormatUlaw::SetChannels}\label{wxsoundformatulawsetchannels}
\func{void}{SetChannels}{\param{wxUint8 }{channels}}
\membersection{wxSoundFormatUlaw::GetChannels}\label{wxsoundformatulawgetchannels}
\constfunc{wxUint8}{GetChannels}{\void}
\membersection{wxSoundFormatUlaw::GetType}\label{wxsoundformatulawgettype}
\constfunc{wxSoundFormatType}{GetType}{\void}
\membersection{wxSoundFormatUlaw::Clone}\label{wxsoundformatulawclone}
\constfunc{wxSoundFormatBase*}{Clone}{\void}
\membersection{wxSoundFormatUlaw::GetTimeFromBytes}\label{wxsoundformatulawgettimefrombytes}
\constfunc{wxUint32}{GetTimeFromBytes}{\param{wxUint32 }{bytes}}
\membersection{wxSoundFormatUlaw::GetBytesFromTime}\label{wxsoundformatulawgetbytesfromtime}
\constfunc{wxUint32}{GetBytesFromTime}{\param{wxUint32 }{time}}
\membersection{wxSoundFormatUlaw::operator!=}\label{wxsoundformatulawoperatorneq}
\constfunc{bool}{operator!=}{\param{const wxSoundFormatBase\& }{frmt2}}

View File

@@ -0,0 +1,54 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/sndg72x.h at 26/Feb/00 14:52:19
%
\section{\class{wxSoundStreamG72X}}\label{wxsoundstreamg72x}
ULAW converter class
\wxheading{Derived from}
\helpref{wxSoundStreamCodec}{wxsoundstreamcodec}
\wxheading{Data structures}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxSoundStreamG72X::wxSoundStreamG72X}\label{wxsoundstreamg72xwxsoundstreamg72x}
\func{}{wxSoundStreamG72X}{\param{wxSoundStream\& }{sndio}}
\membersection{wxSoundStreamG72X::\destruct{wxSoundStreamG72X}}\label{wxsoundstreamg72xdtor}
\func{}{\destruct{wxSoundStreamG72X}}{\void}
\membersection{wxSoundStreamG72X::Read}\label{wxsoundstreamg72xread}
\func{wxSoundStream\&}{Read}{\param{void* }{buffer}, \param{wxUint32 }{len}}
\membersection{wxSoundStreamG72X::Write}\label{wxsoundstreamg72xwrite}
\func{wxSoundStream\&}{Write}{\param{const void* }{buffer}, \param{wxUint32 }{len}}
\membersection{wxSoundStreamG72X::SetSoundFormat}\label{wxsoundstreamg72xsetsoundformat}
\func{bool}{SetSoundFormat}{\param{const wxSoundFormatBase\& }{format}}
\membersection{wxSoundStreamG72X::PutBits}\label{wxsoundstreamg72xputbits}
\func{void}{PutBits}{\param{wxUint8 }{bits}}
\membersection{wxSoundStreamG72X::GetBits}\label{wxsoundstreamg72xgetbits}
\func{wxUint8}{GetBits}{\void}

View File

@@ -0,0 +1,71 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/sndoss.h at 26/Feb/00 14:26:53
%
\section{\class{wxSoundStreamOSS}}\label{wxsoundstreamoss}
OSS output class
\wxheading{Derived from}
\helpref{wxSoundStream}{wxsoundstream}
\wxheading{Data structures}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxSoundStreamOSS::wxSoundStreamOSS}\label{wxsoundstreamosswxsoundstreamoss}
\func{}{wxSoundStreamOSS}{\param{const wxString\& }{dev\_name = \_T("/dev/dsp")}}
\membersection{wxSoundStreamOSS::\destruct{wxSoundStreamOSS}}\label{wxsoundstreamossdtor}
\func{}{\destruct{wxSoundStreamOSS}}{\void}
\membersection{wxSoundStreamOSS::Read}\label{wxsoundstreamossread}
\func{wxSoundStream\&}{Read}{\param{void* }{buffer}, \param{wxUint32 }{len}}
\membersection{wxSoundStreamOSS::Write}\label{wxsoundstreamosswrite}
\func{wxSoundStream\&}{Write}{\param{const void* }{buffer}, \param{wxUint32 }{len}}
\membersection{wxSoundStreamOSS::GetBestSize}\label{wxsoundstreamossgetbestsize}
\constfunc{wxUint32}{GetBestSize}{\void}
\membersection{wxSoundStreamOSS::SetSoundFormat}\label{wxsoundstreamosssetsoundformat}
\func{bool}{SetSoundFormat}{\param{const wxSoundFormatBase\& }{format}}
\membersection{wxSoundStreamOSS::StartProduction}\label{wxsoundstreamossstartproduction}
\func{bool}{StartProduction}{\param{int }{evt}}
\membersection{wxSoundStreamOSS::StopProduction}\label{wxsoundstreamossstopproduction}
\func{bool}{StopProduction}{\void}
\membersection{wxSoundStreamOSS::QueueFilled}\label{wxsoundstreamossqueuefilled}
\constfunc{bool}{QueueFilled}{\void}
\membersection{wxSoundStreamOSS::WakeUpEvt}\label{wxsoundstreamosswakeupevt}
\func{void}{WakeUpEvt}{\param{int }{evt}}
You should not call this.

View File

@@ -0,0 +1,48 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/sndcpcm.h at 26/Feb/00 14:26:35
%
\section{\class{wxSoundStreamPcm}}\label{wxsoundstreampcm}
PCM converter class
\wxheading{Derived from}
\helpref{wxSoundStreamCodec}{wxsoundstreamcodec}
\wxheading{Data structures}
{\small \begin{verbatim}
typedef void (*ConverterType)(const char *buf\_in, char *buf\_out, wxUint32 len) ConverterType
\end{verbatim}}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxSoundStreamPcm::wxSoundStreamPcm}\label{wxsoundstreampcmwxsoundstreampcm}
\func{}{wxSoundStreamPcm}{\param{wxSoundStream\& }{sndio}}
\membersection{wxSoundStreamPcm::\destruct{wxSoundStreamPcm}}\label{wxsoundstreampcmdtor}
\func{}{\destruct{wxSoundStreamPcm}}{\void}
\membersection{wxSoundStreamPcm::Read}\label{wxsoundstreampcmread}
\func{wxSoundStream\&}{Read}{\param{void* }{buffer}, \param{wxUint32 }{len}}
\membersection{wxSoundStreamPcm::Write}\label{wxsoundstreampcmwrite}
\func{wxSoundStream\&}{Write}{\param{const void* }{buffer}, \param{wxUint32 }{len}}
\membersection{wxSoundStreamPcm::SetSoundFormat}\label{wxsoundstreampcmsetsoundformat}
\func{bool}{SetSoundFormat}{\param{const wxSoundFormatBase\& }{format}}

View File

@@ -0,0 +1,37 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/sndfile.h at 26/Feb/00 14:26:42
%
\section{\class{wxSoundRouterStream}}\label{wxsoundrouterstream}
This is the router "codec" class. It should do codec routing when the device
driver does not deal with a format.
\wxheading{Derived from}
\helpref{wxSoundStreamCodec}{wxsoundstreamcodec}
\wxheading{Data structures}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxSoundRouterStream::wxSoundRouterStream}\label{wxsoundrouterstreamwxsoundrouterstream}
\func{}{wxSoundRouterStream}{\param{wxSoundStream\& }{sndio}}
\helpref{wxSoundCodec}{wxsoundcodec}
\membersection{wxSoundRouterStream::\destruct{wxSoundRouterStream}}\label{wxsoundrouterstreamdtor}
\func{}{\destruct{wxSoundRouterStream}}{\void}
Destructor.
\membersection{wxSoundRouterStream::SetSoundFormat}\label{wxsoundrouterstreamsetsoundformat}
\func{bool}{SetSoundFormat}{\param{const wxSoundFormatBase\& }{format}}
SetSoundFormat will first try to setup the device driver with the specified
format. If this fails, it will try to find a codec which will convert the
input format to a valid format for the device driver. It uses an internal
codec database.

View File

@@ -0,0 +1,49 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/sndulaw.h at 26/Feb/00 14:52:25
%
\section{\class{wxSoundStreamUlaw}}\label{wxsoundstreamulaw}
ULAW converter class
\wxheading{Derived from}
\helpref{wxSoundStreamCodec}{wxsoundstreamcodec}
\wxheading{Data structures}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxSoundStreamUlaw::wxSoundStreamUlaw}\label{wxsoundstreamulawwxsoundstreamulaw}
\func{}{wxSoundStreamUlaw}{\param{wxSoundStream\& }{sndio}}
\membersection{wxSoundStreamUlaw::\destruct{wxSoundStreamUlaw}}\label{wxsoundstreamulawdtor}
\func{}{\destruct{wxSoundStreamUlaw}}{\void}
\membersection{wxSoundStreamUlaw::Read}\label{wxsoundstreamulawread}
\func{wxSoundStream\&}{Read}{\param{void* }{buffer}, \param{wxUint32 }{len}}
\membersection{wxSoundStreamUlaw::Write}\label{wxsoundstreamulawwrite}
\func{wxSoundStream\&}{Write}{\param{const void* }{buffer}, \param{wxUint32 }{len}}
\membersection{wxSoundStreamUlaw::SetSoundFormat}\label{wxsoundstreamulawsetsoundformat}
\func{bool}{SetSoundFormat}{\param{const wxSoundFormatBase\& }{format}}
\membersection{wxSoundStreamUlaw::GetBestSize}\label{wxsoundstreamulawgetbestsize}
\constfunc{wxUint32}{GetBestSize}{\void}

View File

@@ -0,0 +1,91 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/sndwav.h at 26/Feb/00 14:26:40
%
\section{\class{wxSoundWave}}\label{wxsoundwave}
WAVE codec
\wxheading{Derived from}
\helpref{wxSoundFileStream}{wxsoundfilestream}
\wxheading{Data structures}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxSoundWave::wxSoundWave}\label{wxsoundwavewxsoundwave}
\func{}{wxSoundWave}{\param{wxInputStream\& }{stream}, \param{wxSoundStream\& }{io\_sound}}
\func{}{wxSoundWave}{\param{wxOutputStream\& }{stream}, \param{wxSoundStream\& }{io\_sound}}
\membersection{wxSoundWave::\destruct{wxSoundWave}}\label{wxsoundwavedtor}
\func{}{\destruct{wxSoundWave}}{\void}
\membersection{wxSoundWave::CanRead}\label{wxsoundwavecanread}
\func{bool}{CanRead}{\void}
\membersection{wxSoundWave::GetCodecName}\label{wxsoundwavegetcodecname}
\constfunc{wxString}{GetCodecName}{\void}
\membersection{wxSoundWave::PrepareToPlay}\label{wxsoundwavepreparetoplay}
\func{bool}{PrepareToPlay}{\void}
\membersection{wxSoundWave::PrepareToRecord}\label{wxsoundwavepreparetorecord}
\func{bool}{PrepareToRecord}{\param{wxUint32 }{time}}
\membersection{wxSoundWave::FinishRecording}\label{wxsoundwavefinishrecording}
\func{bool}{FinishRecording}{\void}
\membersection{wxSoundWave::RepositionStream}\label{wxsoundwaverepositionstream}
\func{bool}{RepositionStream}{\param{wxUint32 }{position}}
\membersection{wxSoundWave::GetData}\label{wxsoundwavegetdata}
\func{wxUint32}{GetData}{\param{void* }{buffer}, \param{wxUint32 }{len}}
\membersection{wxSoundWave::PutData}\label{wxsoundwaveputdata}
\func{wxUint32}{PutData}{\param{const void* }{buffer}, \param{wxUint32 }{len}}
\membersection{wxSoundWave::HandleOutputPCM}\label{wxsoundwavehandleoutputpcm}
\func{bool}{HandleOutputPCM}{\param{wxDataInputStream\& }{data}, \param{wxUint16 }{channels}, \param{wxUint32 }{sample\_fq}, \param{wxUint32 }{byte\_p\_sec}, \param{wxUint16 }{byte\_p\_spl}, \param{wxUint16 }{bits\_p\_spl}}
\membersection{wxSoundWave::HandleOutputG721}\label{wxsoundwavehandleoutputg721}
\func{bool}{HandleOutputG721}{\param{wxDataInputStream\& }{data}, \param{wxUint16 }{channels}, \param{wxUint32 }{sample\_fq}, \param{wxUint32 }{byte\_p\_sec}, \param{wxUint16 }{byte\_p\_spl}, \param{wxUint16 }{bits\_p\_spl}}
\membersection{wxSoundWave::HandleInputPCM}\label{wxsoundwavehandleinputpcm}
\func{wxSoundFormatBase*}{HandleInputPCM}{\param{wxDataOutputStream\& }{data}}
\membersection{wxSoundWave::HandleInputG72X}\label{wxsoundwavehandleinputg72x}
\func{wxSoundFormatBase*}{HandleInputG72X}{\param{wxDataOutputStream\& }{data}}

View File

@@ -0,0 +1,140 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/sndwin.h at 26/Feb/00 14:26:51
%
\section{\class{wxSoundStreamWin}}\label{wxsoundstreamwin}
\wxheading{Derived from}
\helpref{wxSoundStream}{wxsoundstream}
\wxheading{Data structures}
{\small \begin{verbatim}
typedef struct \_wxSoundInternal wxSoundInternal
\end{verbatim}}
{\small \begin{verbatim}
typedef struct \_wxSoundInfoHeader wxSoundInfoHeader
\end{verbatim}}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxSoundStreamWin::wxSoundStreamWin}\label{wxsoundstreamwinwxsoundstreamwin}
\func{}{wxSoundStreamWin}{\void}
\membersection{wxSoundStreamWin::\destruct{wxSoundStreamWin}}\label{wxsoundstreamwindtor}
\func{}{\destruct{wxSoundStreamWin}}{\void}
\membersection{wxSoundStreamWin::Write}\label{wxsoundstreamwinwrite}
\func{wxSoundStream\&}{Write}{\param{const void* }{buffer}, \param{wxUint32 }{len}}
\membersection{wxSoundStreamWin::Read}\label{wxsoundstreamwinread}
\func{wxSoundStream\&}{Read}{\param{void* }{buffer}, \param{wxUint32 }{len}}
\membersection{wxSoundStreamWin::SetSoundFormat}\label{wxsoundstreamwinsetsoundformat}
\func{bool}{SetSoundFormat}{\param{wxSoundFormatBase\& }{base}}
\membersection{wxSoundStreamWin::StartProduction}\label{wxsoundstreamwinstartproduction}
\func{bool}{StartProduction}{\param{int }{evt}}
\membersection{wxSoundStreamWin::StopProduction}\label{wxsoundstreamwinstopproduction}
\func{bool}{StopProduction}{\void}
\membersection{wxSoundStreamWin::QueueFilled}\label{wxsoundstreamwinqueuefilled}
\constfunc{bool}{QueueFilled}{\void}
\membersection{wxSoundStreamWin::NotifyDoneBuffer}\label{wxsoundstreamwinnotifydonebuffer}
\func{void}{NotifyDoneBuffer}{\param{wxUint32 }{dev\_handle}, \param{int }{flag}}
Internal but defined as public
\membersection{wxSoundStreamWin::GetBestSize}\label{wxsoundstreamwingetbestsize}
\constfunc{wxUint32}{GetBestSize}{\void}
\membersection{wxSoundStreamWin::CreateSndWindow}\label{wxsoundstreamwincreatesndwindow}
\func{void}{CreateSndWindow}{\void}
\membersection{wxSoundStreamWin::DestroySndWindow}\label{wxsoundstreamwindestroysndwindow}
\func{void}{DestroySndWindow}{\void}
\membersection{wxSoundStreamWin::OpenDevice}\label{wxsoundstreamwinopendevice}
\func{bool}{OpenDevice}{\param{int }{mode}}
\membersection{wxSoundStreamWin::CloseDevice}\label{wxsoundstreamwinclosedevice}
\func{void}{CloseDevice}{\void}
\membersection{wxSoundStreamWin::AllocHeader}\label{wxsoundstreamwinallocheader}
\func{wxSoundInfoHeader*}{AllocHeader}{\param{int }{mode}}
\membersection{wxSoundStreamWin::FreeHeader}\label{wxsoundstreamwinfreeheader}
\func{void}{FreeHeader}{\param{wxSoundInfoHeader* }{header}, \param{int }{mode}}
\membersection{wxSoundStreamWin::AllocHeaders}\label{wxsoundstreamwinallocheaders}
\func{bool}{AllocHeaders}{\param{int }{mode}}
\membersection{wxSoundStreamWin::FreeHeaders}\label{wxsoundstreamwinfreeheaders}
\func{void}{FreeHeaders}{\param{int }{mode}}
\membersection{wxSoundStreamWin::WaitFor}\label{wxsoundstreamwinwaitfor}
\func{void}{WaitFor}{\param{wxSoundInfoHeader* }{info}}
\membersection{wxSoundStreamWin::AddToQueue}\label{wxsoundstreamwinaddtoqueue}
\func{bool}{AddToQueue}{\param{wxSoundInfoHeader* }{info}}
\membersection{wxSoundStreamWin::ClearHeader}\label{wxsoundstreamwinclearheader}
\func{void}{ClearHeader}{\param{wxSoundInfoHeader* }{info}}
\membersection{wxSoundStreamWin::NextFragmentOutput}\label{wxsoundstreamwinnextfragmentoutput}
\func{wxSoundInfoHeader*}{NextFragmentOutput}{\void}
\membersection{wxSoundStreamWin::NextFragmentInput}\label{wxsoundstreamwinnextfragmentinput}
\func{wxSoundInfoHeader*}{NextFragmentInput}{\void}

View File

@@ -0,0 +1,35 @@
; Last change: JAC 13 Oct 100 5:16 pm
runTwice = yes
titleFontSize = 12
authorFontSize = 10
chapterFontSize = 12
sectionFontSize = 12
subsectionFontSize = 12
headerRule = yes
footerRule = yes
useHeadingStyles = yes
listItemIndent=40
generateHPJ = yes
htmlBrowseButtons = bitmap
winHelpVersion = 3
winHelpContents = yes
winHelpTitle = "MMedia Manual"
truncateFilenames = no
combineSubSections = yes
\overview [2] {\rtfonly{See also }\settransparency{on}\sethotspotcolour{off}\sethotspotunderline{on}\winhelponly{\image{}{books.bmp}\settransparency{off}}
\htmlonly{\image{}{books.gif}}\helpref{#1}{#2}
\sethotspotcolour{on}\sethotspotunderline{on}}
\docparam [2]{\parskip{0}{\it #1}\htmlignore{\par}\parskip{10}\indented{1cm}{#2}}
\wxheading [1]{{\bf \htmlignore{\fcol{blue}{#1}}\htmlonly{\fcol{red}{#1}}}}
\const [0] {{\bf const}}
\constfunc [3] {{\bf #1} {\bf #2}(#3) {\bf const}\index{#2}}
\windowstyle [1] {{\bf #1}\index{#1}}
;;
;; These two are for generating MS HTML Help project, contents and index files.
;;
htmlWorkshopFiles = true
htmlIndex = true
\pythonnote [1] {{\bf \fcol{blue}{wxPython note:}} #1}
%\pythonnote [1] {}

View File

@@ -0,0 +1,298 @@
% LaTeX style file
% Name: texhelp.sty
% Author: Julian Smart
%
% Purpose
% -------
% Style file to enable the simultaneous preparation of printed LaTeX and on-line
% hypertext manuals.
% Use in conjunction with Tex2RTF (see Tex2RTF documentation).
%
% Note that if a non-ASCII character starts a newline and there should be a space
% between the last word on the previous line and the first word on this line,
% you need to use \rtfsp to generate a space in Windows Help. \rtfsp is ignored
% in all other formats.
%
% Julian Smart
% Artificial Intelligence Applications Institute
%
%
% ============== C++/CLIPS Documentation Facilities ==============
%
% Each class definition should be typeset with e.g.
%
% \section{\class{Name}: Parent}
%
% followed by a description of the class.
% Each member should follow:
%
% \membersection{wxName::Member}
%
% with a description of what this member does.
% Then, one (or more if overloaded) member (function) in detail:
%
% \func{return type}{name}{args}
% or
% \member{type}{name}
%
% where args is a list of \param{type}{name}, ...
% Function, e.g.
% e.g. to typeset
%
% void DoIt(char *string);
%
% write:
%
% \func{void}{DoIt}{\param{char *}{string}}
%
\newcommand{\func}[3]{\hangafter=1\noindent\hangindent=10mm
{{\it #1} {\bf #2}\index{#2}}(#3)}
% For function/type definition where the name is a pointer,
% e.g. to typeset
%
% typedef void (*wxFunction)(wxObject&)
%
% write:
%
% \pfunc{typedef void}{wxFunction}{param{wxObject&}}
\newcommand{\pfunc}[3]{\hangafter=1\noindent\hangindent=10mm
{{\it #1} ({\bf *#2})\index{#2}}(#3)}
% Use an ordinary \section command for class name definitions.
% This is used for a member, such as wxBitmap: GetDepth
\newcommand{\membersection}[1]{\subsection*{#1}\index{#1}}
% CLIPS function
\newcommand{\clipsfunc}[3]{\hangafter=1\noindent\hangindent=10mm
{{\bf #1} ({\bf #2}\index{#2}}#3)}
\newcommand{\clipssection}[1]{\chapter{#1}}
% This is used for a CLIPS function name
\newcommand{\functionsection}[1]{\subsection*{#1}}
% Member: a type and a name
\newcommand{\member}[2]{{\bf #1 \it #2}}
% C++ Parameter: a type and a name (no intervening space)
\newcommand{\param}[2]{{\it #1}{\bf #2}}
% CLIPS Parameter: a type and a name (one intervening space)
\newcommand{\cparam}[2]{{\bf #1} {\it #2}}
% Class: puts in index
\newcommand{\class}[1]{#1\index{#1}}
%\newcommand{\docparam}[2]{\parskip=0pt {\it #1}\par\parskip=10pt\begin{indented}{1cm}{#2}\end{indented}}
% Void type
\newcommand{\void}{{\it void}}
% Typeset destructor
\newcommand{\destruct}[1]{{$\sim$}#1}
% Typeset insert/extract operators
\newcommand{\cinsert}{$<<$}
\newcommand{\cextract}{$>>$}
% =================== Hypertext facilities ===================
%
% To insert hyperlinks (or references, in Latex), \label the sections
% or membersections \label{ref-label} immediately after the section, on the same line,
% and use \helpref{text-to-show}{ref-label} to make a reference.
%
% Type text with section reference
\newcommand{\helpref}[2]{{\it #1} (p.\ \pageref{#2}) }
% Type text with URL in verbatim mode
\newcommand{\urlref}[2]{#1 (\verb$#2$)}
% Don't typeset section number in LaTeX
\newcommand{\helprefn}[2]{{\it #1}}
% Like helpref, but popup text in WinHelp instead of hyperlinked
\newcommand{\popref}[2]{{\it #1}}
% Like footnote, but popup text.
\newcommand{\footnotepopup}[2]{{\it #1}\footnote{#2}}
% =================== On-line help specific macros ===================
%
% Global document font size/family, help only.
\newcommand{\helpfontsize}[1]{}
\newcommand{\helpfontfamily}[1]{}
% Ignore in all on-line help
\newcommand{\helpignore}[1]{#1}
% Only print in all on-line help
\newcommand{\helponly}[1]{}
% Ignore in LaTeX
\newcommand{\latexignore}[1]{}
% Only print in LaTeX
\newcommand{\latexonly}[1]{#1}
% Ignore in linear RTF
\newcommand{\rtfignore}[1]{#1}
% Only print in linear RTF
\newcommand{\rtfonly}[1]{}
% Ignore in WinHelp RTF
\newcommand{\winhelpignore}[1]{#1}
% Only print in WinHelp RTF
\newcommand{\winhelponly}[1]{}
% Ignore in wxHelp
\newcommand{\xlpignore}[1]{#1}
% Only print in wxHelp
\newcommand{\xlponly}[1]{}
% Ignore in HTML
\newcommand{\htmlignore}[1]{#1}
% Only print in HTML
\newcommand{\htmlonly}[1]{}
% Input a file only for help system (binder thickness is not a limitation
% in help systems!)
\newcommand{\helpinput}[1]{}
\newcommand{\rtfsp}{ } % Force a space in RTF, ignore in Latex
% =================== Miscellaneous macros ===================
%
% Headings consistent with generated ones
\newcommand{\myheading}[1]{\vspace*{25pt}
\begin{flushleft}
{\LARGE \bf #1}
\end{flushleft}
\vskip 20pt
}
% Heading with entry in contents page.
\newcommand{\chapterheading}[1]{\myheading{#1}
\addcontentsline{toc}{chapter}{#1}}
\newcommand{\sectionheading}[1]{\myheading{#1}
\addcontentsline{toc}{section}{#1}}
% Glossary environment
\newenvironment{helpglossary}{\newpage\chapterheading{Glossary}\begin{description}}{\end{description}}
% Glossary entry
\newcommand{\gloss}[1]{\item[#1]\index{#1}}
% Image: EPS in Latex, BMP or MF (whatever's available) in RTF. Requires psbox.
\newcommand{\image}[2]{\psboxto(#1){#2}}
% Image, left aligned (HTML)
\newcommand{\imager}[2]{\psboxto(#1){#2}}
% Image, right aligned (HTML)
\newcommand{\imagel}[2]{\psboxto(#1){#2}}
% Imagemap: principally for HTML only. In Latex,
% acts like \image.
\newcommand{\imagemap}[3]{\psboxto(#1){#2}}
% Headers and footers
% \setheader{EvenPageLeft}{EvenPageCentre}{EvenPageRight}
% {OddPageLeft}{OddPageCentre}{OddPageRight}
\newcommand{\setheader}[6]{
\lhead[\fancyplain{}{#1}]{\fancyplain{}{#4}}
\chead[\fancyplain{}{#2}]{\fancyplain{}{#5}}
\rhead[\fancyplain{}{#3}]{\fancyplain{}{#6}}
}
% \setfooter{EvenPageLeft}{EvenPageCentre}{EvenPageRight}
% {OddPageLeft}{OddPageCentre}{OddPageRight}
\newcommand{\setfooter}[6]{
\lfoot[\fancyplain{#1}{#1}]{\fancyplain{#4}{#4}}
\cfoot[\fancyplain{#2}{#2}]{\fancyplain{#5}{#5}}
\rfoot[\fancyplain{#3}{#3}]{\fancyplain{#6}{#6}}
}
% Needed for telling RTF where margin paragraph should go
% in mirrored margins mode.
\newcommand{\marginpareven}[1]{\hspace*{0pt}\marginpar{#1}}
\newcommand{\marginparodd}[1]{\hspace*{0pt}\marginpar{#1}}
% Environment for two-column table popular in WinHelp and manuals.
\newcommand{\twocolwidtha}[1]{\def\twocolwidthaval{#1}}
\newcommand{\twocolwidthb}[1]{\def\twocolwidthbval{#1}}
\newcommand{\twocolspacing}[1]{\def\twocolspacingval{#1}}
\twocolwidtha{3cm}
\twocolwidthb{8.5cm}
\twocolspacing{2}
\newcommand{\twocolitem}[2]{#1 & #2\\}
\newcommand{\twocolitemruled}[2]{#1 & #2\\\hline}
\newenvironment{twocollist}{\renewcommand{\arraystretch}{\twocolspacingval}\begin{tabular}{lp{\twocolwidthbval}}}%
{\end{tabular}\renewcommand{\arraystretch}{1}}
% Specifying table rows for RTF compatibility
\newcommand{\row}[1]{#1\\}
% Use for the last ruled row for correct RTF generation.
\newcommand{\ruledrow}[1]{#1\\\hline}
% Indentation environment. Arg1 is left margin size
\newenvironment{indented}[1]{\begin{list}{}{\leftmargin=#1}\item[]}%
{\end{list}}
% Framed box of text, normal formatting.
\newcommand{\normalbox}[1]{\fbox{\vbox{#1}}}
% Double-framed box of text.
\newcommand{\normalboxd}[1]{\fbox{\fbox{\vbox{#1}}}}
% WITHDRAWN -- can't do in RTF, easily.
% Framed box of text, horizontally centred. Ragged right within box.
% \newcommand{\centeredbox}[2]{\begin{center}\fbox{\parbox{#1}{\raggedright#2}}\end{center}}
% Double-framed box of text, horizontally centred. Ragged right within box.
% \newcommand{\centeredboxd}[2]{\begin{center}\fbox{\fbox{\parbox{#1}{\raggedright#2}}}\end{center}}
% toocomplex environment: simply prints the argument in LaTeX,
% comes out verbatim in all generated formats.
\newenvironment{toocomplex}{}{}
% Colour: dummy commands since LaTeX doesn't support colour.
% \definecolour{name}{red}{blue}{green}
% \fcol{name}{text} ; Foreground
% \bcol{name}{text} ; Background
\newcommand{\definecolour}[4]{}
\newcommand{\definecolor}[4]{}
\newcommand{\fcol}[2]{#2}
\newcommand{\bcol}[2]{#2}
\newcommand{\sethotspotcolour}[1]{}
\newcommand{\sethotspotunderline}[1]{}
\newcommand{\settransparency}[1]{}
\newcommand{\backslashraw}[0]{}
\newcommand{\lbraceraw}[0]{}
\newcommand{\rbraceraw}[0]{}
\newcommand{\registered}[0]{(r)}
\newcommand{\background}[1]{}
\newcommand{\textcolour}[1]{}
\newcommand{\overview}[2]{See \helpref{#1}{#2}.}
\newcommand{\docparam}[2]{{\it #1}\begin{list}{}{\leftmargin=1cm}\item[]
#2%
\end{list}}
\newcommand{\wxheading}[1]{{\bf #1}}
\newcommand{\const}[0]{{\bf const}}
\newcommand{\constfunc}[3]{{\bf #1} {\bf #2}(#3) {\bf const}\index{#2}}
\newcommand{\windowstyle}[1]{{\bf #1}\index{#1}}
\addtolength{\textwidth}{1in}
\addtolength{\oddsidemargin}{-0.5in}
\addtolength{\topmargin}{-0.5in}
\addtolength{\textheight}{1in}
\sloppy

View File

@@ -0,0 +1,10 @@
\chapter{Topic overviews}\label{overviews}
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}
The following sections describe particular topics.
\section{MMedia extension overview}\label{mmedoverview}
To be written.

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 B

View File

@@ -0,0 +1,173 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/vidbase.h at 26/Feb/00 14:51:56
%
\section{\class{wxVideoBaseDriver}}\label{wxvideobasedriver}
Classes definition
\wxheading{Derived from}
wxObject
\wxheading{Data structures}
{\small \begin{verbatim}
typedef enum {
wxVIDEO\_MSAVI,
wxVIDEO\_MPEG,
wxVIDEO\_QT,
wxVIDEO\_GIF,
wxVIDEO\_JMOV,
wxVIDEO\_FLI,
wxVIDEO\_IFF,
wxVIDEO\_SGI,
wxVIDEO\_MPEG2
} wxVideoType
\end{verbatim}}
wxMMedia2 (video) types
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxVideoBaseDriver::wxVideoBaseDriver}\label{wxvideobasedriverwxvideobasedriver}
\func{}{wxVideoBaseDriver}{\void}
Ctors
\membersection{wxVideoBaseDriver::wxVideoBaseDriver}\label{wxvideobasedriverwxvideobasedriver}
\func{}{wxVideoBaseDriver}{\param{wxInputStream\& }{str}}
\membersection{wxVideoBaseDriver::wxVideoBaseDriver}\label{wxvideobasedriverwxvideobasedriver}
\func{}{wxVideoBaseDriver}{\param{const wxString\& }{filename}}
\membersection{wxVideoBaseDriver::\destruct{wxVideoBaseDriver}}\label{wxvideobasedriverdtor}
\func{}{\destruct{wxVideoBaseDriver}}{\void}
Dtor
\membersection{wxVideoBaseDriver::Play}\label{wxvideobasedriverplay}
\func{bool}{Play}{\void}
Usual functions ... They all return FALSE in case of errors.
\membersection{wxVideoBaseDriver::Stop}\label{wxvideobasedriverstop}
\func{bool}{Stop}{\void}
\membersection{wxVideoBaseDriver::Pause}\label{wxvideobasedriverpause}
\func{bool}{Pause}{\void}
\membersection{wxVideoBaseDriver::Resume}\label{wxvideobasedriverresume}
\func{bool}{Resume}{\void}
\membersection{wxVideoBaseDriver::SetSize}\label{wxvideobasedriversetsize}
\func{bool}{SetSize}{\param{wxSize }{size}}
Size management
\membersection{wxVideoBaseDriver::GetSize}\label{wxvideobasedrivergetsize}
\constfunc{bool}{GetSize}{\param{wxSize\& }{size}}
\membersection{wxVideoBaseDriver::IsCapable}\label{wxvideobasedriveriscapable}
\constfunc{bool}{IsCapable}{\param{wxVideoType }{WXUNUSED(v\_type)}}
Test the capability of the driver to handle the specified type
\membersection{wxVideoBaseDriver::GetMovieCodec}\label{wxvideobasedrivergetmoviecodec}
\constfunc{wxString}{GetMovieCodec}{\void}
Return the video codec name
\membersection{wxVideoBaseDriver::GetAudioCodec}\label{wxvideobasedrivergetaudiocodec}
\constfunc{wxString}{GetAudioCodec}{\void}
Return the audio codec name
\membersection{wxVideoBaseDriver::GetSampleRate}\label{wxvideobasedrivergetsamplerate}
\constfunc{wxUint32}{GetSampleRate}{\void}
Return misc info about audio
\membersection{wxVideoBaseDriver::GetChannels}\label{wxvideobasedrivergetchannels}
\constfunc{wxUint8}{GetChannels}{\void}
\membersection{wxVideoBaseDriver::GetBPS}\label{wxvideobasedrivergetbps}
\constfunc{wxUint8}{GetBPS}{\void}
\membersection{wxVideoBaseDriver::GetFrameRate}\label{wxvideobasedrivergetframerate}
\constfunc{double}{GetFrameRate}{\void}
Return frame rate
\membersection{wxVideoBaseDriver::GetNbFrames}\label{wxvideobasedrivergetnbframes}
\constfunc{wxUint32}{GetNbFrames}{\void}
Return number of frames
\membersection{wxVideoBaseDriver::OnFinished}\label{wxvideobasedriveronfinished}
\func{void}{OnFinished}{\void}
Called when the movie finished
\membersection{wxVideoBaseDriver::AttachOutput}\label{wxvideobasedriverattachoutput}
\func{bool}{AttachOutput}{\param{wxWindow\& }{output}}
Attaches the video output to a window. The video will be shown in that window.
\membersection{wxVideoBaseDriver::DetachOutput}\label{wxvideobasedriverdetachoutput}
\func{void}{DetachOutput}{\void}
\membersection{wxVideoBaseDriver::IsPaused}\label{wxvideobasedriverispaused}
\constfunc{bool}{IsPaused}{\void}
They return the state of the movie.
\membersection{wxVideoBaseDriver::IsStopped}\label{wxvideobasedriverisstopped}
\constfunc{bool}{IsStopped}{\void}

View File

@@ -0,0 +1,148 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/vidwin.h at 26/Feb/00 14:52:03
%
\section{\class{wxVideoWindows}}\label{wxvideowindows}
Class definition
\wxheading{Derived from}
\helpref{wxVideoBaseDriver}{wxvideobasedriver}
\wxheading{Data structures}
{\small \begin{verbatim}
typedef struct VIDW\_Internal {
MCIDEVICEID m\_dev\_id
};
\end{verbatim}}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxVideoWindows::OpenFile}\label{wxvideowindowsopenfile}
\func{void}{OpenFile}{\void}
\membersection{wxVideoWindows::wxVideoWindows}\label{wxvideowindowswxvideowindows}
\func{}{wxVideoWindows}{\void}
\membersection{wxVideoWindows::wxVideoWindows}\label{wxvideowindowswxvideowindows}
\func{}{wxVideoWindows}{\param{wxInputStream\& }{str}}
\membersection{wxVideoWindows::wxVideoWindows}\label{wxvideowindowswxvideowindows}
\func{}{wxVideoWindows}{\param{const wxString\& }{fname}}
\membersection{wxVideoWindows::\destruct{wxVideoWindows}}\label{wxvideowindowsdtor}
\func{}{\destruct{wxVideoWindows}}{\void}
\membersection{wxVideoWindows::Play}\label{wxvideowindowsplay}
\func{bool}{Play}{\void}
\membersection{wxVideoWindows::Stop}\label{wxvideowindowsstop}
\func{bool}{Stop}{\void}
\membersection{wxVideoWindows::Pause}\label{wxvideowindowspause}
\func{bool}{Pause}{\void}
\membersection{wxVideoWindows::Resume}\label{wxvideowindowsresume}
\func{bool}{Resume}{\void}
\membersection{wxVideoWindows::GetSize}\label{wxvideowindowsgetsize}
\constfunc{bool}{GetSize}{\param{wxSize\& }{size}}
\membersection{wxVideoWindows::SetSize}\label{wxvideowindowssetsize}
\func{bool}{SetSize}{\param{wxSize }{size}}
\membersection{wxVideoWindows::GetMovieCodec}\label{wxvideowindowsgetmoviecodec}
\constfunc{wxString}{GetMovieCodec}{\void}
Return codec name for each stream.
\membersection{wxVideoWindows::GetAudioCodec}\label{wxvideowindowsgetaudiocodec}
\constfunc{wxString}{GetAudioCodec}{\void}
\membersection{wxVideoWindows::GetSampleRate}\label{wxvideowindowsgetsamplerate}
\constfunc{wxUint32}{GetSampleRate}{\void}
Return misc. info about audio
\membersection{wxVideoWindows::GetChannels}\label{wxvideowindowsgetchannels}
\constfunc{wxUint8}{GetChannels}{\void}
\membersection{wxVideoWindows::GetBPS}\label{wxvideowindowsgetbps}
\constfunc{wxUint8}{GetBPS}{\void}
\membersection{wxVideoWindows::GetFrameRate}\label{wxvideowindowsgetframerate}
\constfunc{double}{GetFrameRate}{\void}
Return the frame rate of the video (in frames/second)
\membersection{wxVideoWindows::GetNbFrames}\label{wxvideowindowsgetnbframes}
\constfunc{wxUint32}{GetNbFrames}{\void}
Return the total number of frames in the movie
\membersection{wxVideoWindows::IsCapable}\label{wxvideowindowsiscapable}
\func{bool}{IsCapable}{\param{wxVideoType }{v\_type}}
\membersection{wxVideoWindows::AttachOutput}\label{wxvideowindowsattachoutput}
\func{bool}{AttachOutput}{\param{wxWindow\& }{output}}
\membersection{wxVideoWindows::DetachOutput}\label{wxvideowindowsdetachoutput}
\func{void}{DetachOutput}{\void}
\membersection{wxVideoWindows::IsPaused}\label{wxvideowindowsispaused}
\constfunc{bool}{IsPaused}{\void}
\membersection{wxVideoWindows::IsStopped}\label{wxvideowindowsisstopped}
\constfunc{bool}{IsStopped}{\void}

View File

@@ -0,0 +1,170 @@
%
% automatically generated by HelpGen from
% /home/guilhem/PROJECTS/wxWindows/utils/wxMMedia2/lib/vidxanm.h at 26/Feb/00 14:52:06
%
\section{\class{wxVideoXANIM}}\label{wxvideoxanim}
Class definition
\wxheading{Derived from}
\helpref{wxVideoBaseDriver}{wxvideobasedriver}
\wxheading{Data structures}
{\small \begin{verbatim}
typedef struct wxXANIMinternal {
Display *xanim\_dpy
\end{verbatim}}
\latexignore{\rtfignore{\wxheading{Members}}}
\membersection{wxVideoXANIM::wxVideoXANIM}\label{wxvideoxanimwxvideoxanim}
\func{}{wxVideoXANIM}{\void}
\membersection{wxVideoXANIM::wxVideoXANIM}\label{wxvideoxanimwxvideoxanim}
\func{}{wxVideoXANIM}{\param{wxInputStream\& }{str}}
\membersection{wxVideoXANIM::wxVideoXANIM}\label{wxvideoxanimwxvideoxanim}
\func{}{wxVideoXANIM}{\param{const wxString\& }{filename}}
\membersection{wxVideoXANIM::\destruct{wxVideoXANIM}}\label{wxvideoxanimdtor}
\func{}{\destruct{wxVideoXANIM}}{\void}
\membersection{wxVideoXANIM::Play}\label{wxvideoxanimplay}
\func{bool}{Play}{\void}
\membersection{wxVideoXANIM::Pause}\label{wxvideoxanimpause}
\func{bool}{Pause}{\void}
\membersection{wxVideoXANIM::Resume}\label{wxvideoxanimresume}
\func{bool}{Resume}{\void}
\membersection{wxVideoXANIM::Stop}\label{wxvideoxanimstop}
\func{bool}{Stop}{\void}
\membersection{wxVideoXANIM::SetVolume}\label{wxvideoxanimsetvolume}
\func{bool}{SetVolume}{\param{wxUint8 }{vol}}
\membersection{wxVideoXANIM::SetSize}\label{wxvideoxanimsetsize}
\func{bool}{SetSize}{\param{wxSize }{size}}
\membersection{wxVideoXANIM::GetSize}\label{wxvideoxanimgetsize}
\constfunc{bool}{GetSize}{\param{wxSize\& }{size}}
\membersection{wxVideoXANIM::GetMovieCodec}\label{wxvideoxanimgetmoviecodec}
\constfunc{wxString}{GetMovieCodec}{\void}
Return the video codec name
\membersection{wxVideoXANIM::GetAudioCodec}\label{wxvideoxanimgetaudiocodec}
\constfunc{wxString}{GetAudioCodec}{\void}
Return the audio codec name
\membersection{wxVideoXANIM::GetSampleRate}\label{wxvideoxanimgetsamplerate}
\constfunc{wxUint32}{GetSampleRate}{\void}
Return misc info about audio
\membersection{wxVideoXANIM::GetChannels}\label{wxvideoxanimgetchannels}
\constfunc{wxUint8}{GetChannels}{\void}
\membersection{wxVideoXANIM::GetBPS}\label{wxvideoxanimgetbps}
\constfunc{wxUint8}{GetBPS}{\void}
\membersection{wxVideoXANIM::GetFrameRate}\label{wxvideoxanimgetframerate}
\constfunc{double}{GetFrameRate}{\void}
Return frame rate
\membersection{wxVideoXANIM::GetNbFrames}\label{wxvideoxanimgetnbframes}
\constfunc{wxUint32}{GetNbFrames}{\void}
Return number of frames in the movie
\membersection{wxVideoXANIM::IsCapable}\label{wxvideoxanimiscapable}
\constfunc{bool}{IsCapable}{\param{wxVideoType }{v\_type}}
\membersection{wxVideoXANIM::AttachOutput}\label{wxvideoxanimattachoutput}
\func{bool}{AttachOutput}{\param{wxWindow\& }{output}}
\membersection{wxVideoXANIM::DetachOutput}\label{wxvideoxanimdetachoutput}
\func{void}{DetachOutput}{\void}
\membersection{wxVideoXANIM::IsPaused}\label{wxvideoxanimispaused}
\constfunc{bool}{IsPaused}{\void}
\membersection{wxVideoXANIM::IsStopped}\label{wxvideoxanimisstopped}
\constfunc{bool}{IsStopped}{\void}
\membersection{wxVideoXANIM::RestartXANIM}\label{wxvideoxanimrestartxanim}
\func{bool}{RestartXANIM}{\void}
Start the subprocess with the right parameters
\membersection{wxVideoXANIM::SendCommand}\label{wxvideoxanimsendcommand}
\func{bool}{SendCommand}{\param{const char* }{command}, \param{char** }{ret = NULL}, \param{wxUint32* }{size = NULL}}
Send a command to the subprocess
\membersection{wxVideoXANIM::CollectInfo}\label{wxvideoxanimcollectinfo}
\func{bool}{CollectInfo}{\void}
Collect informations from XAnim

Binary file not shown.

After

Width:  |  Height:  |  Size: 978 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 440 B

View File

@@ -0,0 +1,11 @@
\chapter{Bugs}\label{bugs}%
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}
These are the known bugs.
\begin{itemize}\itemsep=0pt
\item In the OGLEdit sample, .dia files are output double-spaced
due to an unidentified bug in the way a stream is converted to a file.
\end{itemize}

Binary file not shown.

After

Width:  |  Height:  |  Size: 138 B

View File

@@ -0,0 +1,19 @@
\chapter{Change log}
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}
Version 3.0, September 8th 1998
\begin{itemize}\itemsep=0pt
\item Version for wxWindows 2.0.
\item Various enhancements especially to wxDrawnShape
(multiple metafiles, for different orientations).
\item More ability to override functions e.g. OnSizeDragLeft, so events can be
intercepted for Do/Undo.
\end{itemize}
Version 2.0, June 1st 1996
\begin{itemize}\itemsep=0pt
\item First publicly released version.
\end{itemize}

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 996 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 959 B

View File

@@ -0,0 +1,47 @@
\chapter{Introduction}
\pagenumbering{arabic}%
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}
Object Graphics Library (\ogl) is a C++ library supporting the creation and
manipulation of simple and complex graphic images on a canvas.
It can be found in the directory {\tt utils/ogl/src} in the
wxWindows distribution. The file {\tt ogl.h} must be included to make use
of the library.
Please see \helpref{OGL overview}{ogloverview} for a general description how the object library works. For details,
please see the \helpref{class reference}{classref}.
\section{File structure}
These are the files that comprise the \ogl\ library.
\begin{description}\itemsep=0pt
\item[basic.h] Header for basic objects such as wxShape and wxRectangleShape.
\item[basic.cpp] Basic objects implementation (1).
\item[basic2.cpp] Basic objects implementation (2).
\item[bmpshape.h] wxBitmapShape class header.
\item[bmpshape.cpp] wxBitmapShape implementation.
\item[canvas.h] wxShapeCanvas class header.
\item[canvas.cpp] wxShapeCanvas class implementation.
\item[composit.h] Composite object class header.
\item[composit.cpp] Composite object class implementation.
\item[constrnt.h] Constraint classes header.
\item[constrnt.cpp] Constraint classes implementation.
\item[divided.h] Divided object class header.
\item[divided.cpp] Divided object class implementation.
\item[drawn.h] Drawn (metafile) object class header.
\item[drawn.cpp] Drawn (metafile) object class implementation.
\item[graphics.h] Main include file.
\item[lines.h] wxLineShape class header.
\item[lines.cpp] wxLineShape class implementation.
\item[misc.h] Miscellaneous graphics functions header.
\item[misc.cpp] Miscellaneous graphics functions implementation.
\item[ogldiag.h] wxDiagram class header.
\item[ogldiag.cpp] wxDiagram implementation.
\item[mfutils.h] Metafile utilities header.
\item[mfutils.cpp] Metafile utilities implementation.
\end{description}

View File

@@ -0,0 +1,17 @@
[OPTIONS]
BMROOT=d:\wx2\wxwind~1\contrib\docs\latex\ogl ; Assume that bitmaps are where the source is
TITLE=OGL Manual
CONTENTS=Contents
COMPRESS=HIGH
[FILES]
ogl.rtf
[CONFIG]
CreateButton("Up", "&Up", "JumpId(`ogl.hlp', `Contents')")
BrowseButtons()
[MAP]
[BITMAPS]

View File

@@ -0,0 +1,46 @@
\documentstyle[a4,makeidx,verbatim,texhelp,fancyhea,mysober,mytitle]{report}
\newcommand{\ogl}[0]{{OGL}}%
\definecolour{black}{0}{0}{0}%
\definecolour{cyan}{0}{255}{255}%
\definecolour{green}{0}{255}{0}%
\definecolour{magenta}{255}{0}{255}%
\definecolour{red}{255}{0}{0}%
\definecolour{blue}{0}{0}{200}%
\definecolour{yellow}{255}{255}{0}%
\definecolour{white}{255}{255}{255}%
\input psbox.tex
\parindent 0pt
\parskip 11pt
\title{Object Graphics Library 3.0}
\author{Julian Smart}
\date{September 1998}
\makeindex
\begin{document}
\maketitle
\pagestyle{fancyplain}
\bibliographystyle{plain}
\pagenumbering{roman}
\setheader{{\it CONTENTS}}{}{}{}{}{{\it CONTENTS}}
\setfooter{\thepage}{}{}{}{}{\thepage}
\tableofcontents%
\input{intro.tex}
%
\input{sample.tex}
%
\input{classes.tex}
%
\input{topics.tex}
%
\input{bugs.tex}
%
\input{changes.tex}
%
\addcontentsline{toc}{chapter}{Index}
\setheader{{\it INDEX}}{}{}{}{}{{\it INDEX}}
\setfooter{\thepage}{}{}{}{}{\thepage}%
\printindex
\end{document}

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.0 KiB

View File

@@ -0,0 +1,87 @@
\chapter{OGLEdit: a sample OGL application}\label{ogledit}%
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}
OGLEdit is a sample OGL application that allows the user to draw, edit,
save and load a few shapes. It should clarify aspects of OGL usage, and
can act as a template for similar applications. OGLEdit can be found in\rtfsp
{\tt samples/ogledit} in the OGL distribution.
$$\image{10cm;0cm}{ogledit.eps}$$\par
The wxWindows document/view model has been used in OGL, to reduce the amount of
housekeeping logic required to get it up and running. OGLEdit also provides
a demonstration of the Undo/Redo capability supported by the document/view classes,
and how a typical application might implement this feature.
\section{OGLEdit files}
OGLEdit comprises the following source files.
\begin{itemize}\itemsep=0pt
\item doc.h, doc.cpp: MyDiagram, DiagramDocument, DiagramCommand, MyEvtHandler
classes related to diagram functionality and documents.
\item view.h, view.cpp: MyCanvas, DiagramView classes related to visualisation of
the diagram.
\item ogledit.h, ogledit.cpp: MyFrame, MyApp classes related to the overall application.
\item palette.h, palette.cpp: EditorToolPalette implementing the shape palette.
\end{itemize}
\section{How OGLEdit works}
OGLEdit defines a DiagramDocument class, each of instance of which holds a MyDiagram
member which itself contains the shapes.
In order to implement specific mouse behaviour for shapes, a class MyEvtHandler is
defined which is `plugged into' each shape when it is created, instead of overriding each shape class
individually. This event handler class also holds a label string.
The DiagramCommand class is the key to implementing Undo/Redo. Each instance of DiagramCommand
stores enough information about an operation (create, delete, change colour etc.) to allow
it to carry out (or undo) its command. In DiagramView::OnMenuCommand, when the user initiates the
command, a new DiagramCommand instance is created which is then sent to the document's
command processor (see wxWindows manual for more information about doc/view and command
processing).
Apart from menu commands, another way commands are initiated is by the user left-clicking on
the canvas or right-dragging on a node. MyCanvas::OnLeftClick in view.cpp shows how
the appropriate wxClassInfo is passed to a DiagramCommand, to allow DiagramCommand::Do
to create a new shape given the wxClassInfo.
The MyEvtHandler right-drag methods in doc.cpp implement drawing a line between
two shapes, detecting where the right mouse button was released and looking for a second
shape. Again, a new DiagramCommand instance is created and passed to the command
processor to carry out the command.
DiagramCommand::Do and DiagramCommand::Undo embody much of the
interesting interaction with the OGL library. A complication of note
when implementing undo is the problem of deleting a node shape which has
one or more arcs attached to it. If you delete the node, the arc(s)
should be deleted too. But multiple arc deletion represents more information
that can be incorporated in the existing DiagramCommand scheme. OGLEdit
copes with this by treating each arc deletion as a separate command, and
sending Cut commands recursively, providing an undo path. Undoing such a
Cut will only undo one command at a time - not a one to one
correspondence with the original command - but it's a reasonable
compromise and preserves Do/Undo whilst keeping our DiagramCommand class
simple.
\section{Possible enhancements}
OGLEdit is very simplistic and does not employ the more advanced features
of OGL, such as:
\begin{itemize}\itemsep=0pt
\item attachment points (arcs are drawn to particular points on a shape)
\item metafile and bitmaps shapes
\item divided rectangles
\item composite shapes, and constraints
\item creating labels in shape regions
\item arc labels (OGL has support for three movable labels per arc)
\item spline and multiple-segment line arcs
\item adding annotations to node and arc shapes
\item line-straightening (supported by OGL) and alignment (not supported directly by OGL)
\end{itemize}
These could be added to OGLEdit, at the risk of making it a less
useful example for beginners.

View File

@@ -0,0 +1,35 @@
; Last change: JAC 13 Oct 100 5:11 pm
runTwice = yes
titleFontSize = 12
authorFontSize = 10
chapterFontSize = 12
sectionFontSize = 12
subsectionFontSize = 12
headerRule = yes
footerRule = yes
useHeadingStyles = yes
listItemIndent=40
generateHPJ = no
htmlBrowseButtons = bitmap
winHelpVersion = 3
winHelpContents = yes
winHelpTitle = "OGL Manual"
truncateFilenames = yes
combineSubSections = yes
\overview [2] {\rtfonly{See also }\settransparency{on}\sethotspotcolour{off}\sethotspotunderline{on}\winhelponly{\image{}{books.bmp}\settransparency{off}}
\htmlonly{\image{}{books.gif}}\helpref{#1}{#2}
\sethotspotcolour{on}\sethotspotunderline{on}}
\docparam [2]{\parskip{0}{\it #1}\htmlignore{\par}\parskip{10}\indented{1cm}{#2}}
\wxheading [1]{{\bf \htmlignore{\fcol{blue}{#1}}\htmlonly{\fcol{red}{#1}}}}
\const [0] {{\bf const}}
\constfunc [3] {{\bf #1} {\bf #2}(#3) {\bf const}\index{#2}}
\windowstyle [1] {{\bf #1}\index{#1}}
;;
;; These two are for generating MS HTML Help project, contents and index files.
;;
htmlWorkshopFiles = true
htmlIndex = true
\pythonnote [1] {{\bf \fcol{blue}{wxPython note:}} #1}
%\pythonnote [1] {}

View File

@@ -0,0 +1,298 @@
% LaTeX style file
% Name: texhelp.sty
% Author: Julian Smart
%
% Purpose
% -------
% Style file to enable the simultaneous preparation of printed LaTeX and on-line
% hypertext manuals.
% Use in conjunction with Tex2RTF (see Tex2RTF documentation).
%
% Note that if a non-ASCII character starts a newline and there should be a space
% between the last word on the previous line and the first word on this line,
% you need to use \rtfsp to generate a space in Windows Help. \rtfsp is ignored
% in all other formats.
%
% Julian Smart
% Artificial Intelligence Applications Institute
%
%
% ============== C++/CLIPS Documentation Facilities ==============
%
% Each class definition should be typeset with e.g.
%
% \section{\class{Name}: Parent}
%
% followed by a description of the class.
% Each member should follow:
%
% \membersection{wxName::Member}
%
% with a description of what this member does.
% Then, one (or more if overloaded) member (function) in detail:
%
% \func{return type}{name}{args}
% or
% \member{type}{name}
%
% where args is a list of \param{type}{name}, ...
% Function, e.g.
% e.g. to typeset
%
% void DoIt(char *string);
%
% write:
%
% \func{void}{DoIt}{\param{char *}{string}}
%
\newcommand{\func}[3]{\hangafter=1\noindent\hangindent=10mm
{{\it #1} {\bf #2}\index{#2}}(#3)}
% For function/type definition where the name is a pointer,
% e.g. to typeset
%
% typedef void (*wxFunction)(wxObject&)
%
% write:
%
% \pfunc{typedef void}{wxFunction}{param{wxObject&}}
\newcommand{\pfunc}[3]{\hangafter=1\noindent\hangindent=10mm
{{\it #1} ({\bf *#2})\index{#2}}(#3)}
% Use an ordinary \section command for class name definitions.
% This is used for a member, such as wxBitmap: GetDepth
\newcommand{\membersection}[1]{\subsection*{#1}\index{#1}}
% CLIPS function
\newcommand{\clipsfunc}[3]{\hangafter=1\noindent\hangindent=10mm
{{\bf #1} ({\bf #2}\index{#2}}#3)}
\newcommand{\clipssection}[1]{\chapter{#1}}
% This is used for a CLIPS function name
\newcommand{\functionsection}[1]{\subsection*{#1}}
% Member: a type and a name
\newcommand{\member}[2]{{\bf #1 \it #2}}
% C++ Parameter: a type and a name (no intervening space)
\newcommand{\param}[2]{{\it #1}{\bf #2}}
% CLIPS Parameter: a type and a name (one intervening space)
\newcommand{\cparam}[2]{{\bf #1} {\it #2}}
% Class: puts in index
\newcommand{\class}[1]{#1\index{#1}}
%\newcommand{\docparam}[2]{\parskip=0pt {\it #1}\par\parskip=10pt\begin{indented}{1cm}{#2}\end{indented}}
% Void type
\newcommand{\void}{{\it void}}
% Typeset destructor
\newcommand{\destruct}[1]{{$\sim$}#1}
% Typeset insert/extract operators
\newcommand{\cinsert}{$<<$}
\newcommand{\cextract}{$>>$}
% =================== Hypertext facilities ===================
%
% To insert hyperlinks (or references, in Latex), \label the sections
% or membersections \label{ref-label} immediately after the section, on the same line,
% and use \helpref{text-to-show}{ref-label} to make a reference.
%
% Type text with section reference
\newcommand{\helpref}[2]{{\it #1} (p.\ \pageref{#2}) }
% Type text with URL in verbatim mode
\newcommand{\urlref}[2]{#1 (\verb$#2$)}
% Don't typeset section number in LaTeX
\newcommand{\helprefn}[2]{{\it #1}}
% Like helpref, but popup text in WinHelp instead of hyperlinked
\newcommand{\popref}[2]{{\it #1}}
% Like footnote, but popup text.
\newcommand{\footnotepopup}[2]{{\it #1}\footnote{#2}}
% =================== On-line help specific macros ===================
%
% Global document font size/family, help only.
\newcommand{\helpfontsize}[1]{}
\newcommand{\helpfontfamily}[1]{}
% Ignore in all on-line help
\newcommand{\helpignore}[1]{#1}
% Only print in all on-line help
\newcommand{\helponly}[1]{}
% Ignore in LaTeX
\newcommand{\latexignore}[1]{}
% Only print in LaTeX
\newcommand{\latexonly}[1]{#1}
% Ignore in linear RTF
\newcommand{\rtfignore}[1]{#1}
% Only print in linear RTF
\newcommand{\rtfonly}[1]{}
% Ignore in WinHelp RTF
\newcommand{\winhelpignore}[1]{#1}
% Only print in WinHelp RTF
\newcommand{\winhelponly}[1]{}
% Ignore in wxHelp
\newcommand{\xlpignore}[1]{#1}
% Only print in wxHelp
\newcommand{\xlponly}[1]{}
% Ignore in HTML
\newcommand{\htmlignore}[1]{#1}
% Only print in HTML
\newcommand{\htmlonly}[1]{}
% Input a file only for help system (binder thickness is not a limitation
% in help systems!)
\newcommand{\helpinput}[1]{}
\newcommand{\rtfsp}{ } % Force a space in RTF, ignore in Latex
% =================== Miscellaneous macros ===================
%
% Headings consistent with generated ones
\newcommand{\myheading}[1]{\vspace*{25pt}
\begin{flushleft}
{\LARGE \bf #1}
\end{flushleft}
\vskip 20pt
}
% Heading with entry in contents page.
\newcommand{\chapterheading}[1]{\myheading{#1}
\addcontentsline{toc}{chapter}{#1}}
\newcommand{\sectionheading}[1]{\myheading{#1}
\addcontentsline{toc}{section}{#1}}
% Glossary environment
\newenvironment{helpglossary}{\newpage\chapterheading{Glossary}\begin{description}}{\end{description}}
% Glossary entry
\newcommand{\gloss}[1]{\item[#1]\index{#1}}
% Image: EPS in Latex, BMP or MF (whatever's available) in RTF. Requires psbox.
\newcommand{\image}[2]{\psboxto(#1){#2}}
% Image, left aligned (HTML)
\newcommand{\imager}[2]{\psboxto(#1){#2}}
% Image, right aligned (HTML)
\newcommand{\imagel}[2]{\psboxto(#1){#2}}
% Imagemap: principally for HTML only. In Latex,
% acts like \image.
\newcommand{\imagemap}[3]{\psboxto(#1){#2}}
% Headers and footers
% \setheader{EvenPageLeft}{EvenPageCentre}{EvenPageRight}
% {OddPageLeft}{OddPageCentre}{OddPageRight}
\newcommand{\setheader}[6]{
\lhead[\fancyplain{}{#1}]{\fancyplain{}{#4}}
\chead[\fancyplain{}{#2}]{\fancyplain{}{#5}}
\rhead[\fancyplain{}{#3}]{\fancyplain{}{#6}}
}
% \setfooter{EvenPageLeft}{EvenPageCentre}{EvenPageRight}
% {OddPageLeft}{OddPageCentre}{OddPageRight}
\newcommand{\setfooter}[6]{
\lfoot[\fancyplain{#1}{#1}]{\fancyplain{#4}{#4}}
\cfoot[\fancyplain{#2}{#2}]{\fancyplain{#5}{#5}}
\rfoot[\fancyplain{#3}{#3}]{\fancyplain{#6}{#6}}
}
% Needed for telling RTF where margin paragraph should go
% in mirrored margins mode.
\newcommand{\marginpareven}[1]{\hspace*{0pt}\marginpar{#1}}
\newcommand{\marginparodd}[1]{\hspace*{0pt}\marginpar{#1}}
% Environment for two-column table popular in WinHelp and manuals.
\newcommand{\twocolwidtha}[1]{\def\twocolwidthaval{#1}}
\newcommand{\twocolwidthb}[1]{\def\twocolwidthbval{#1}}
\newcommand{\twocolspacing}[1]{\def\twocolspacingval{#1}}
\twocolwidtha{3cm}
\twocolwidthb{8.5cm}
\twocolspacing{2}
\newcommand{\twocolitem}[2]{#1 & #2\\}
\newcommand{\twocolitemruled}[2]{#1 & #2\\\hline}
\newenvironment{twocollist}{\renewcommand{\arraystretch}{\twocolspacingval}\begin{tabular}{lp{\twocolwidthbval}}}%
{\end{tabular}\renewcommand{\arraystretch}{1}}
% Specifying table rows for RTF compatibility
\newcommand{\row}[1]{#1\\}
% Use for the last ruled row for correct RTF generation.
\newcommand{\ruledrow}[1]{#1\\\hline}
% Indentation environment. Arg1 is left margin size
\newenvironment{indented}[1]{\begin{list}{}{\leftmargin=#1}\item[]}%
{\end{list}}
% Framed box of text, normal formatting.
\newcommand{\normalbox}[1]{\fbox{\vbox{#1}}}
% Double-framed box of text.
\newcommand{\normalboxd}[1]{\fbox{\fbox{\vbox{#1}}}}
% WITHDRAWN -- can't do in RTF, easily.
% Framed box of text, horizontally centred. Ragged right within box.
% \newcommand{\centeredbox}[2]{\begin{center}\fbox{\parbox{#1}{\raggedright#2}}\end{center}}
% Double-framed box of text, horizontally centred. Ragged right within box.
% \newcommand{\centeredboxd}[2]{\begin{center}\fbox{\fbox{\parbox{#1}{\raggedright#2}}}\end{center}}
% toocomplex environment: simply prints the argument in LaTeX,
% comes out verbatim in all generated formats.
\newenvironment{toocomplex}{}{}
% Colour: dummy commands since LaTeX doesn't support colour.
% \definecolour{name}{red}{blue}{green}
% \fcol{name}{text} ; Foreground
% \bcol{name}{text} ; Background
\newcommand{\definecolour}[4]{}
\newcommand{\definecolor}[4]{}
\newcommand{\fcol}[2]{#2}
\newcommand{\bcol}[2]{#2}
\newcommand{\sethotspotcolour}[1]{}
\newcommand{\sethotspotunderline}[1]{}
\newcommand{\settransparency}[1]{}
\newcommand{\backslashraw}[0]{}
\newcommand{\lbraceraw}[0]{}
\newcommand{\rbraceraw}[0]{}
\newcommand{\registered}[0]{(r)}
\newcommand{\background}[1]{}
\newcommand{\textcolour}[1]{}
\newcommand{\overview}[2]{See \helpref{#1}{#2}.}
\newcommand{\docparam}[2]{{\it #1}\begin{list}{}{\leftmargin=1cm}\item[]
#2%
\end{list}}
\newcommand{\wxheading}[1]{{\bf #1}}
\newcommand{\const}[0]{{\bf const}}
\newcommand{\constfunc}[3]{{\bf #1} {\bf #2}(#3) {\bf const}\index{#2}}
\newcommand{\windowstyle}[1]{{\bf #1}\index{#1}}
\addtolength{\textwidth}{1in}
\addtolength{\oddsidemargin}{-0.5in}
\addtolength{\topmargin}{-0.5in}
\addtolength{\textheight}{1in}
\sloppy

View File

@@ -0,0 +1,161 @@
\chapter{Topic overviews}
\setheader{{\it CHAPTER \thechapter}}{}{}{}{}{{\it CHAPTER \thechapter}}%
\setfooter{\thepage}{}{}{}{}{\thepage}
The following sections describe particular topics.
\section{OGL overview}\label{ogloverview}
\helpref{wxShapeCanvas}{wxshapecanvas}, derived from {\bf wxCanvas}, is the drawing area
for a number of \helpref{wxShape}{wxshape} instances. Everything drawn on a
wxShapeCanvas is derived from wxShape, which provides virtual
member functions for redrawing, creating and destroying
resize/selection `handles', movement and erasing behaviour, mouse
click behaviour, calculating the bounding box of the shape, linking
nodes with arcs, and so on.
The way a client application copes with `damage' to the canvas is to
erase (white out) anything should no longer be displayed, redraw the shape,
and then redraw everything on the canvas to repair any damage. If quick edit
mode is on for the canvas, the complete should be omitted by OGL and the
application.
Selection handles (called control points in the code) are implemented as
wxRectangleShapes.
Events are passed to shapes by the canvas in a high-level form, for example {\bf OnLeftClick},
{\bf OnBeginDragLeft}, {\bf OnDragLeft}, {\bf OnEndDragLeft}. The canvas decides
what is a click and what is a drag, whether it is on a shape or the canvas itself,
and (by interrogating the shape) which attachment point the click is associated with.
In order to provide event-handling flexibility, each shapes has an `event handler' associated with it,
which by default is the shape itself (all shapes derive from wxShapeEvtHandler).
An application can modify the event-handling behaviour simply by plugging a new
event handler into the shape. This can avoid the need for multiple inheritance when
new properties and behaviour are required for a number of different shape classes: instead
of overriding each class, one new event handler class can be defined and used for all
existing shape classes.
A range of shapes have been predefined in the library, including rectangles, ellipses,
polygons. A client application can derive from these shapes and/or derive entirely
new shapes from wxShape.
Instances of a class called \helpref{wxDiagram}{wxdiagram} organise collections of
shapes, providing default file input and output behaviour.
\section{wxDividedShape overview}\label{dividedshapeoverview}
Classes: \helpref{wxDividedShape}{wxdividedshape}
A wxDividedShape is a rectangle with a number of vertical divisions. Each
division may have its text formatted with independent characteristics, and
the size of each division relative to the whole image may be specified.
Once a wxDividedShape has been created, the user may move the divisions with the
mouse. By pressing Ctrl while right-clicking, the region attributes can be edited.
Here are examples of creating wxDividedShape objects:
{\small
\begin{verbatim}
/*
* Divided rectangle with 3 regions
*
*/
wxDividedShape *dividedRect = new wxDividedShape(50, 60);
wxShapeRegion *region = new wxShapeRegion;
region->SetProportions(0.0, 0.25);
dividedRect->AddRegion(region);
region = new wxShapeRegion;
region->SetProportions(0.0, 0.5);
dividedRect->AddRegion(region);
region = new wxShapeRegion;
region->SetProportions(0.0, 0.25);
dividedRect->AddRegion(region);
dividedRect->SetSize(50, 60); // Allow it to calculate region sizes
dividedRect->SetPen(wxBLACK_PEN);
dividedRect->SetBrush(wxWHITE_BRUSH);
dividedRect->Show(TRUE);
dividedRect->NameRegions();
/*
* Divided rectangle with 3 regions, rounded
*
*/
wxDividedShape *dividedRect3 = new wxDividedShape(50, 60);
dividedRect3->SetCornerRadius(-0.4);
region = new wxShapeRegion;
region->SetProportions(0.0, 0.25);
dividedRect3->AddRegion(region);
region = new wxShapeRegion;
region->SetProportions(0.0, 0.5);
dividedRect3->AddRegion(region);
region = new wxShapeRegion;
region->SetProportions(0.0, 0.25);
dividedRect3->AddRegion(region);
dividedRect3->SetSize(50, 60); // Allow it to calculate region sizes
dividedRect3->SetPen(wxBLACK_PEN);
dividedRect3->SetBrush(wxWHITE_BRUSH);
dividedRect3->Show(TRUE);
dividedRect3->NameRegions();
\end{verbatim}
}
\section{wxCompositeShape overview}\label{compositeshapeoverview}
Classes: \helpref{wxCompositeShape}{wxcompositeshape}, \helpref{wxOGLConstraint}{wxoglconstraint}
The wxCompositeShape allows fairly complex shapes to be created, and maintains
a set of constraints which specify the layout and proportions of child shapes.
Add child shapes to a wxCompositeShape using \helpref{AddChild}{wxcompositeshapeaddchild}, and
add constraints using \helpref{AddConstraint}{wxcompositeshapeaddconstraint}.
After children and shapes have been added, call \helpref{Recompute}{wxcompositeshaperecompute} which
will return TRUE is the constraints could be satisfied, FALSE otherwise. If
constraints have been correctly and consistently specified, this call will succeed.
If there is more than one child, constraints must be specified: OGL cannot calculate
the size and position of children otherwise. Don't assume that children will simply
move relative to the parent without the use of constraints.
To specify a constraint, you need three things:
\begin{enumerate}\itemsep=0pt
\item a constraint type, such as gyCONSTRAINT\_CENTRED\_VERTICALLY;
\item a reference shape, with respect to which other shapes are going to be positioned - the\rtfsp
{\it constraining} shape;
\item a list of one or more shapes to be constrained: the {\it constrained} shapes.
\end{enumerate}
The constraining shape can be either the parent of the constrained shapes, or a sibling. The
constrained shapes must all be siblings of each other.
For an exhaustive list and description of the available constraint types, see the \helpref{wxOGLConstraint constructor}{wxoglconstraintconstr}.
Note that most constraints operate in one dimension only (vertically or horizontally), so you will
usually need to specify constraints in pairs.
You can set the spacing between constraining and constrained shapes by
calling \helpref{wxOGLConstraint::SetSpacing}{wxoglconstraintsetspacing}.
Finally, a wxCompositeShape can have {\it divisions}, which are special child shapes of class
wxDivisionShape (not to be confused with wxDividedShape). The purpose of this is to allow
the composite to be divided into user-adjustable regions (divisions) into which other shapes
can be dropped dynamically, given suitable application code. Divisons allow the child
shapes to have an identity of their own - they can be manipulated independently of their container -
but to behave as if they are contained with the division, moving with the parent shape.
Divisions boundaries can themselves be moved using the mouse.
To create an initial division, call \helpref{wxCompositeShape::MakeContainer}{wxcompositeshapemakecontainer}.
Make further divisions by calling \helpref{wxDivisionShape::Divide}{wxdivisionshapedivide}.

Binary file not shown.

After

Width:  |  Height:  |  Size: 998 B

View File

@@ -0,0 +1,85 @@
/****************************************************************************
*
* wxWindows HTML Applet Package
*
* Copyright (C) 1991-2001 SciTech Software, Inc.
* All rights reserved.
*
* ========================================================================
*
* The contents of this file are subject to the wxWindows License
* Version 3.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
* http://www.wxwindows.org/licence3.txt
*
* Software distributed under the License is distributed on an
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the License for the specific language governing
* rights and limitations under the License.
*
* ========================================================================
*
* Language: ANSI C++
* Environment: Any
*
* Description: Header file for the wxApplet class
*
****************************************************************************/
#ifndef __WX_APPLET_H
#define __WX_APPLET_H
#include "wx/panel.h"
#include "wx/html/htmlwin.h"
// Forward declaration
class wxHtmlAppletWindow;
/*--------------------------- Class Definitions ---------------------------*/
/****************************************************************************
REMARKS:
Defines the abstract base class for wxApplet objects.
****************************************************************************/
class wxApplet : public wxPanel {
private:
DECLARE_ABSTRACT_CLASS(wxApplet);
DECLARE_EVENT_TABLE();
protected:
//wxHtmlAppletWindow *m_parent;
// Special handler for background erase messages
void OnEraseBackground(wxEraseEvent&);
public:
// Constructor (called during dynamic creation)
wxApplet() { m_parent = NULL; };
// Psuedo virtual constructor
virtual bool Create(
wxHtmlAppletWindow *parent,
const wxHtmlTag& params,
const wxSize& size,
long style = wxTAB_TRAVERSAL | wxNO_BORDER);
// Virtual destructor
virtual ~wxApplet();
// Handle HTML navigation to a new URL
virtual void OnLinkClicked(const wxHtmlLinkInfo& link) = 0;
// Handle HTML navigation forward command in applet
virtual void OnHistoryForward() = 0;
// Handle HTML navigation back command in applet
virtual void OnHistoryBack() = 0;
// Handle messages from the wxAppletManager and other applets
virtual void OnMessage(wxEvent& msg) = 0;
};
#endif // __WX_APPLET_H

View File

@@ -0,0 +1,95 @@
/****************************************************************************
*
* wxWindows HTML Applet Package
*
* Copyright (C) 1991-2001 SciTech Software, Inc.
* All rights reserved.
*
* ========================================================================
*
* The contents of this file are subject to the wxWindows License
* Version 3.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
* http://www.wxwindows.org/licence3.txt
*
* Software distributed under the License is distributed on an
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the License for the specific language governing
* rights and limitations under the License.
*
* ========================================================================
*
* Language: ANSI C++
* Environment: Any
*
* Description: Header file for wxEchoVariable Class, Dynamically constructed
* objects representing variables in SSI #echo directive
*
****************************************************************************/
#ifndef __WX_ECHOVAR_H
#define __WX_ECHOVAR_H
/*--------------------------- Class Definitions ---------------------------*/
/****************************************************************************
REMARKS:
wxEchoVariable class Definition
****************************************************************************/
class wxEchoVariable : public wxObject {
private:
DECLARE_ABSTRACT_CLASS(wxEchoVariable);
public:
wxEchoVariable() : wxObject() {}
~wxEchoVariable() {}
/****************************************************************************
RETURNS:
The boolean value of the variable
PARAMETERS:
parms - Optional parameter string passed from parm= field in HTML
REMARKS:
To create new variables for the #echo HTML preprocessing directives
you need to derive classes from wxEchoVariable and override the
pure virtual GetValue function. However this should not be done directly
but by using the BEGIN_ECHO_VARIABLE and END_ECHO_VARIABLE macros
SEE ALSO:
wxEchoPrep, BEGIN_ECHO_VARIABLE, END_ECHO_VARIABLE
****************************************************************************/
virtual wxString GetValue(const char *parms = NULL) const = 0;
public:
// static function to retrieve any variable avaliable
static wxString GetValue(const wxString &cls, const char *parms = NULL);
};
/*--------------------------------- MACROS --------------------------------*/
#define ECHO_PARM (_BEV_parm)
#define BEGIN_ECHO_VARIABLE(name) \
class wxEchoVariable##name : public wxEchoVariable { \
private: \
DECLARE_DYNAMIC_CLASS(wxEchoVariable##name##); \
public: \
wxEchoVariable##name##() : wxEchoVariable() {} \
virtual wxString GetValue(const char *parms = NULL) const; \
}; \
IMPLEMENT_DYNAMIC_CLASS(wxEchoVariable##name##, wxEchoVariable); \
wxString wxEchoVariable##name :: GetValue(const char *parms) const { \
wxString _BEV_parm = wxString(parms);
#define END_ECHO_VARIABLE(name, returnval) \
return returnval; \
}
#define STRING_ECHO_VARIABLE(name, string) \
BEGIN_ECHO_VARIABLE(##name##); \
END_ECHO_VARIABLE(##name##, wxString(##string##))
#endif // __WX_ECHOVAR_H

View File

@@ -0,0 +1,95 @@
/****************************************************************************
*
* wxWindows HTML Applet Package
*
* Copyright (C) 1991-2001 SciTech Software, Inc.
* All rights reserved.
*
* ========================================================================
*
* The contents of this file are subject to the wxWindows License
* Version 3.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
* http://www.wxwindows.org/licence3.txt
*
* Software distributed under the License is distributed on an
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the License for the specific language governing
* rights and limitations under the License.
*
* ========================================================================
*
* Language: ANSI C++
* Environment: Any
*
* Description: Header file for wxIfElseVariable Class, Dynamically constructed
* objects representing variables in SSI #if, #else and #endif directives
*
****************************************************************************/
#ifndef __WX_IFELSEVAR_H
#define __WX_IFELSEVAR_H
/*--------------------------- Class Definitions ---------------------------*/
/****************************************************************************
REMARKS:
This class is used to create variables for the HTML preprocessor #if, #else,
and #endif directives.
SEE ALSO:
wxIfElsePrep
****************************************************************************/
class wxIfElseVariable : public wxObject {
private:
DECLARE_ABSTRACT_CLASS(wxIfElseVariable);
public:
wxIfElseVariable() : wxObject() {}
~wxIfElseVariable() {}
/****************************************************************************
RETURNS:
The boolean value of the variable
REMARKS:
To create new variables for the #if, #else and #endif HTML preprocessing
blocks you need to derive classes from wxIfElseVariable and override the
pure virtual GetValue function. However this should not be done directly
but by using the BEGIN_IFELSE_VARIABLE and END_IFELSE_VARIABLE macros
SEE ALSO:
wxIfElsePrep, BEGIN_IFELSE_VARIABLE, END_IFELSE_VARIABLE
****************************************************************************/
virtual bool GetValue() const = 0;
public:
// static function to retrieve any variable avaliable
static bool GetValue(const wxString &cls);
};
/*--------------------------------- MACROS --------------------------------*/
#define BEGIN_IFELSE_VARIABLE(name) \
class wxIfElseVariable##name : public wxIfElseVariable { \
private: \
DECLARE_DYNAMIC_CLASS(wxIfElseVariable##name##); \
public: \
wxIfElseVariable##name##() : wxIfElseVariable() {} \
virtual bool GetValue() const; \
}; \
IMPLEMENT_DYNAMIC_CLASS(wxIfElseVariable##name##, wxIfElseVariable); \
bool wxIfElseVariable##name :: GetValue() const {
#define END_IFELSE_VARIABLE(name, returnval) \
return returnval; \
}
#define IFELSE_VARIABLE(name, state) \
BEGIN_IFELSE_VARIABLE(##name##); \
END_IFELSE_VARIABLE(##name##, bool (state))
#endif // __WX_IFELSEVAR_H

View File

@@ -0,0 +1,109 @@
/****************************************************************************
*
* wxWindows HTML Applet Package
*
* Copyright (C) 1991-2001 SciTech Software, Inc.
* All rights reserved.
*
* ========================================================================
*
* The contents of this file are subject to the wxWindows License
* Version 3.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
* http://www.wxwindows.org/licence3.txt
*
* Software distributed under the License is distributed on an
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the License for the specific language governing
* rights and limitations under the License.
*
* ========================================================================
*
* Language: ANSI C++
* Environment: Any
*
* Description: Header file for the wxLoadPage Event class
*
****************************************************************************/
#ifndef __WX_LOAD_PAGE_H
#define __WX_LOAD_PAGE_H
#include "wx/html/htmlwin.h"
// Forward declaration
class wxHtmlAppletWindow;
// If we are compiling this code into a library that links against
// the DLL, we need to remove all the __declspec(dllimports) that
// would declare our classes below incorrectly.
#ifndef WXMAKINGDLL
#undef WXDLLEXPORT
#define WXDLLEXPORT
#endif
// Declare our local load page event type
BEGIN_DECLARE_EVENT_TYPES()
DECLARE_EVENT_TYPE(wxEVT_LOAD_PAGE, wxEVT_USER_FIRST+1)
DECLARE_EVENT_TYPE(wxEVT_PAGE_LOADED, wxEVT_USER_FIRST+2)
END_DECLARE_EVENT_TYPES()
/*--------------------------- Class Definitions ---------------------------*/
/****************************************************************************
REMARKS:
Defines the class for load page events.
****************************************************************************/
class wxLoadPageEvent : public wxEvent {
DECLARE_DYNAMIC_CLASS(wxLoadPageEvent);
protected:
wxString m_hRef;
wxHtmlAppletWindow *m_htmlWindow;
public:
// Constructor
wxLoadPageEvent(const wxString &hRef = "",wxHtmlAppletWindow *htmlWindow = NULL);
// Destructor
~wxLoadPageEvent() {}
// Return the hmtl window for the load page operation
wxHtmlAppletWindow *GetHtmlWindow() { return m_htmlWindow; };
// Get the hRef string for the load page operation
const wxString & GetHRef() { return m_hRef; };
// Copy constructor for the object
void CopyObject(wxObject& obj) const;
};
// Define the macro to create our event type
typedef void (wxEvtHandler::*wxLoadPageEventFunction)(wxLoadPageEvent&);
#define EVT_LOAD_PAGE(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_LOAD_PAGE, -1, -1, (wxObjectEventFunction)(wxEventFunction)(wxLoadPageEventFunction) & fn, (wxObject *) NULL ),
/****************************************************************************
REMARKS:
Defines the class for pageloaded events.
****************************************************************************/
class wxPageLoadedEvent : public wxEvent {
DECLARE_DYNAMIC_CLASS(wxPageLoadedEvent);
public:
// Constructor
wxPageLoadedEvent();
// Destructor
~wxPageLoadedEvent() {}
// Copy constructor for the object
void CopyObject(wxObject& obj) const;
};
// Define the macro to create our event type
typedef void (wxEvtHandler::*wxPageLoadedEventFunction)(wxPageLoadedEvent&);
#define EVT_PAGE_LOADED(fn) DECLARE_EVENT_TABLE_ENTRY( wxEVT_PAGE_LOADED, -1, -1, (wxObjectEventFunction)(wxEventFunction)(wxPageLoadedEventFunction) & fn, (wxObject *) NULL ),
#endif // __WX_LOAD_PAGE_H

View File

@@ -0,0 +1,59 @@
/****************************************************************************
*
* wxWindows HTML Applet Package
*
* Copyright (C) 1991-2001 SciTech Software, Inc.
* All rights reserved.
*
* ========================================================================
*
* The contents of this file are subject to the wxWindows License
* Version 3.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
* http://www.wxwindows.org/licence3.txt
*
* Software distributed under the License is distributed on an
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the License for the specific language governing
* rights and limitations under the License.
*
* ========================================================================
*
* Language: ANSI C++
* Environment: Any
*
* Description: Header file for the Preprocessor of the #echo directive
* in wxHTML.
*
****************************************************************************/
#ifndef __WX_PREPECHO_H
#define __WX_PREPECHO_H
#include "wx/html/htmlproc.h"
/*--------------------------- Class Definitions ---------------------------*/
/****************************************************************************
REMARKS:
Echo Preprocessor class Definition
****************************************************************************/
class wxEchoPrep : public wxHtmlProcessor {
private:
//DECLARE_DYNAMIC_CLASS(wxEchoPrep);
public:
wxEchoPrep() : wxHtmlProcessor() {}
~wxEchoPrep() {}
// Process input text and return processed result
wxString Process(const wxString& text) const;
// Return priority value of this processor. The higher, the sooner
// is the processor applied to the text.
int GetPriority() const { return wxHTML_PRIORITY_SYSTEM-2; }
};
#endif // __WX_PREPECHO_H

View File

@@ -0,0 +1,59 @@
/****************************************************************************
*
* wxWindows HTML Applet Package
*
* Copyright (C) 1991-2001 SciTech Software, Inc.
* All rights reserved.
*
* ========================================================================
*
* The contents of this file are subject to the wxWindows License
* Version 3.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
* http://www.wxwindows.org/licence3.txt
*
* Software distributed under the License is distributed on an
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the License for the specific language governing
* rights and limitations under the License.
*
* ========================================================================
*
* Language: ANSI C++
* Environment: Any
*
* Description: Header file for the Preprocessor of the #if SSI directive
* in wxHTML.
*
****************************************************************************/
#ifndef __WX_PREPIFELSE_H
#define __WX_PREPIFELSE_H
#include "wx/html/htmlproc.h"
/*--------------------------- Class Definitions ---------------------------*/
/****************************************************************************
REMARKS:
If Else Preprocessor class Definition
****************************************************************************/
class wxIfElsePrep : public wxHtmlProcessor {
private:
//DECLARE_DYNAMIC_CLASS(wxIfElsePrep);
public:
wxIfElsePrep() : wxHtmlProcessor() {}
~wxIfElsePrep() {}
// Process input text and return processed result
wxString Process(const wxString& text) const;
// Return priority value of this processor. The higher, the sooner
// is the processor applied to the text.
int GetPriority() const { return wxHTML_PRIORITY_SYSTEM-2; }
};
#endif // __WX_PREPECHO_H

View File

@@ -0,0 +1,63 @@
/****************************************************************************
*
* wxWindows HTML Applet Package
*
* Copyright (C) 1991-2001 SciTech Software, Inc.
* All rights reserved.
*
* ========================================================================
*
* The contents of this file are subject to the wxWindows License
* Version 3.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
* http://www.wxwindows.org/licence3.txt
*
* Software distributed under the License is distributed on an
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the License for the specific language governing
* rights and limitations under the License.
*
* ========================================================================
*
* Language: ANSI C++
* Environment: Any
*
* Description: Header file for the Preprocessor of the #include directive
* in wxHTML.
*
****************************************************************************/
#ifndef __WX_PREPINCLUDE_H
#define __WX_PREPINCLUDE_H
#include "wx/html/htmlproc.h"
/*--------------------------- Class Definitions ---------------------------*/
/****************************************************************************
REMARKS:
wxIncludePrep class Definition
****************************************************************************/
class wxIncludePrep : public wxHtmlProcessor {
private:
//DECLARE_DYNAMIC_CLASS(wxIncludePrep);
wxString DOC_ROOT;
public:
wxIncludePrep() : wxHtmlProcessor() {DOC_ROOT = wxString("");}
~wxIncludePrep() {}
// Process input text and return processed result
wxString Process(const wxString& text) const;
// Return priority value of this processor. The higher, the sooner
// is the processor applied to the text.
int GetPriority() const { return wxHTML_PRIORITY_SYSTEM; }
void ChangeDirectory(const wxString &dir);
wxString GetDirectory() { return DOC_ROOT; }
};
#endif // __WX_PREPINCLUDE_H

View File

@@ -0,0 +1,165 @@
/****************************************************************************
*
* wxWindows HTML Applet Package
*
* Copyright (C) 1991-2001 SciTech Software, Inc.
* All rights reserved.
*
* ========================================================================
*
* The contents of this file are subject to the wxWindows License
* Version 3.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
* http://www.wxwindows.org/licence3.txt
*
* Software distributed under the License is distributed on an
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the License for the specific language governing
* rights and limitations under the License.
*
* ========================================================================
*
* Language: ANSI C++
* Environment: Any
*
* Description: Header file for the wxHtmlAppletWindow class
*
****************************************************************************/
#ifndef __WX_APPLET_WINDOW_H
#define __WX_APPLET_WINDOW_H
#include "wx/html/htmlwin.h"
// Forward declare
class wxApplet;
class wxLoadPageEvent;
class wxPageLoadedEvent;
class wxIncludePrep;
// Declare a linked list of wxApplet pointers
WX_DECLARE_LIST(wxApplet, wxAppletList);
/*--------------------------- Class Definitions ---------------------------*/
/****************************************************************************
REMARKS:
Defines the class for virtual-link data types
****************************************************************************/
class VirtualData : public wxObject {
private:
wxString m_name;
wxString m_group;
wxString m_href;
public:
// Ctors
VirtualData(
wxString& name,
wxString& group,
wxString& href );
// Gets
wxString GetName(){ return m_name;};
wxString GetGroup(){ return m_group;};
wxString GetHref(){ return m_href;};
// Sets
void SetName (wxString& s){ m_name = s; };
void SetGroup(wxString& s){ m_group = s; };
void SetHref (wxString& s){ m_href = s; };
};
/****************************************************************************
REMARKS:
Defines the class for wxAppletWindow. This class is derived from the
wxHtmlWindow class and extends it with functionality to handle embedded
wxApplet's on the HTML pages.
****************************************************************************/
class wxHtmlAppletWindow : public wxHtmlWindow {
private:
DECLARE_CLASS(wxHtmlAppletWindow);
DECLARE_EVENT_TABLE();
bool m_mutexLock;
wxIncludePrep *incPreprocessor; // deleted by list it is added too in constructor
protected:
wxAppletList m_AppletList;
static wxHashTable m_Cookies;
wxToolBarBase *m_NavBar;
int m_NavBackId;
int m_NavForwardId;
public:
// Constructor
wxHtmlAppletWindow(
wxWindow *parent,
wxWindowID id = -1,
wxToolBarBase *navBar = NULL,
int navBackId = -1,
int navForwardId = -1,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxHW_SCROLLBAR_AUTO,
const wxString& name = "htmlAppletWindow");
// Destructor
~wxHtmlAppletWindow();
// Create an instance of an applet based on it's class name
wxApplet *CreateApplet(
const wxString& classId,
const wxString& iName,
const wxHtmlTag &params,
const wxSize& size);
// Find an instance of an applet based on it's class name
wxApplet *FindApplet(const wxString& className);
// Remove an applet from the window. Called during applet destruction
bool RemoveApplet(const wxApplet *applet);
// Load a new URL page
virtual bool LoadPage(const wxString& location);
// Called when users clicked on hypertext link.
virtual void OnLinkClicked(const wxHtmlLinkInfo& link);
// Handles forward navigation within the HTML stack
bool HistoryForward();
// Handles backwards navigation within the HTML stack
bool HistoryBack();
// Broadcast a message to all applets on the page
void SendMessage(wxEvent& msg);
// Register a cookie of data in the applet manager
bool RegisterCookie(const wxString& name,wxObject *cookie);
// UnRegister a cookie of data in the applet manager
bool UnRegisterCookie(const wxString& name);
// Find a cookie of data given it's public name
wxObject *FindCookie(const wxString& name);
// Event handlers to load a new page
void OnLoadPage(wxLoadPageEvent &event);
// Event handlers to load a new page
void OnPageLoaded(wxPageLoadedEvent &event);
// LoadPage mutex locks
void Lock() { m_mutexLock = true;};
void UnLock() { m_mutexLock = false;};
// Returns TRUE if the mutex is locked, FALSE otherwise.
bool IsLocked() { return m_mutexLock;};
// Tries to lock the mutex. If it can't, returns immediately with false.
bool TryLock();
};
#endif // __WX_APPLET_WINDOW_H

View File

@@ -0,0 +1,76 @@
#ifndef __WXBOUNDINGBOX_H__
#define __WXBOUNDINGBOX_H__
#ifdef __GNUG__
#pragma interface "bbox.cpp"
#endif
#ifndef WX_PRECOMP
#include "wx/wx.h"
#endif
#include "wx/matrix.h"
#include "wx/geometry.h"
enum OVERLAP {_IN,_ON,_OUT};
//Purpose The wxBoundingBox class stores one wxBoundingBox.
//The wxBoundingBox is defined by two coordiates,
//a upperleft coordinate and a lowerright coordinate.
class wxBoundingBox
{
public:
wxBoundingBox();
wxBoundingBox(wxBoundingBox&);
wxBoundingBox(const wxPoint2DDouble&);
wxBoundingBox(double xmin, double ymin, double xmax, double ymax);
bool And(wxBoundingBox*, double Marge = 0);
void EnLarge(const double Marge);
void Shrink(const double Marge);
void Expand(const wxPoint2DDouble& , const wxPoint2DDouble&);
void Expand(const wxPoint2DDouble&);
void Expand(double x,double y);
void Expand(const wxBoundingBox& bbox);
OVERLAP Intersect( wxBoundingBox &, double Marge = 0);
bool LineIntersect(const wxPoint2DDouble& begin, const wxPoint2DDouble& end );
bool PointInBox( const wxPoint2DDouble&, double Marge = 0);
bool PointInBox( double, double, double Marge = 0);
void Reset();
void Translate( wxPoint2DDouble& );
void MapBbox( const wxTransformMatrix& matrix);
double GetWidth() {return m_maxx-m_minx;};
double GetHeight(){return m_maxy-m_miny;};
bool GetValid() const;
void SetValid(bool);
void SetBoundingBox(const wxPoint2DDouble& a_point);
void SetMin(double, double);
void SetMax(double, double);
inline wxPoint2DDouble GetMin();
inline wxPoint2DDouble GetMax();
inline double GetMinX(){return m_minx;};
inline double GetMinY(){return m_miny;};
inline double GetMaxX(){return m_maxx;};
inline double GetMaxY(){return m_maxy;};
wxBoundingBox& operator+( wxBoundingBox& );
wxBoundingBox& operator=( const wxBoundingBox& );
protected:
//bounding box in world
double m_minx;
double m_miny;
double m_maxx;
double m_maxy;
bool m_validbbox;
};
#endif

View File

@@ -0,0 +1,859 @@
/////////////////////////////////////////////////////////////////////////////
// Name: canvas.h
// Author: Robert Roebling
// Created: XX/XX/XX
// Copyright: 2000 (c) Robert Roebling
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __WXCANVAS_H__
#define __WXCANVAS_H__
#ifdef __GNUG__
#pragma interface "canvas.cpp"
#endif
#ifndef WX_PRECOMP
#include "wx/wx.h"
#endif
#include "wx/image.h"
#include "wx/txtstrm.h"
#include "wx/geometry.h"
#include "wx/matrix.h"
#include "bbox.h"
//----------------------------------------------------------------------------
// decls
//----------------------------------------------------------------------------
class wxCanvas;
class wxCanvasAdmin;
//----------------------------------------------------------------------------
// wxCanvasObject
//----------------------------------------------------------------------------
enum wxDRAG_MODE
{
wxDRAG_RECTANGLE,
wxDRAG_ONTOP,
wxDRAG_REDRAW
};
//:defenition
// wxCanvasObject is the base class for Canvas Objects.
// All Objects for drawing one the canvas are derived from this class.
// It supports dragging and moving methods that can be used in derived
// classes for defining several ways of dragging.
// Also it is possible to plug in events handlers to do this for all derived classes at once.
//
// wxCanvasObjects have themselves as their event handlers by default,
// but their event handlers could be set to another object entirely. This
// separation can reduce the amount of derivation required, and allow
// alteration of a wxCanvasObject functionality
class wxCanvasObject: public wxEvtHandler
{
public:
wxCanvasObject();
//If the position (x,y) is within the object this return a pointer to the object
//Normally this function needs to be defined for each derived wxCanvasObject.
//The default is a simple bounding box test.
virtual wxCanvasObject* IsHitWorld( double x, double y, double margin = 0 );
//render this object to the canvas (either on its buffer or directly on the canvas)
//this depends on the wxDC that is set for the active canvas.
virtual void Render(wxTransformMatrix* cworld, int clip_x, int clip_y, int clip_width, int clip_height );
//x position in world coordinates of the object
virtual double GetPosX()=0;
//y position in world coordinates of the object
virtual double GetPosY()=0;
//set position in world coordinates for the object
virtual void SetPosXY( double x, double y)=0;
//absolute moving the object to position x,y in world coordinates
//also does an update of the old and new area
virtual void MoveAbsolute( double x, double y );
//relative moving the object to position x,y in world coordinates
//also does an update of the old and new area
virtual void MoveRelative( double x, double y );
//relative translate the object to position x,y in world coordinates
//does NOT update the old and new area
//this function must be defined for each derived object,
//it is used internally for dragging and moving objects.
virtual void TransLate( double x, double y )=0;
//choose one of the three diffrenet drag methods |
//DRAG_RECTANGLE = as a rectangle when drag is in progress |
//DRAG_ONTOP = only redraw the object when dragging |
//DRAG_REDRAW = redraw the damaged areas when dragging
void SetDragMode(wxDRAG_MODE mode) { m_dragmode=mode; };
//return the dragmode
wxDRAG_MODE GetDragMode() { return m_dragmode; };
//called when starting a drag
virtual void DragStart();
//called when dragging is in progress
virtual void DragRelative( double x, double y);
//called when dragging is ended
virtual void DragEnd();
//return the object if it is part of the given object or
//if the given object is part of a group within this object.
//For group objects this means recursively search for it.
virtual wxCanvasObject* Contains( wxCanvasObject* obj );
//calculate the boundingbox in world coordinates
virtual void CalcBoundingBox()=0;
//write the object as SVG (scalable vector grafhics
virtual void WriteSVG( wxTextOutputStream &stream );
//get the administrator for the object,
//this will give access to the canvas's where it is displayed upon.
//It is used to render the object to the active canvas.
//Conversion from world to Device coordinates and visa versa is
//done using the Active canvas at that moment.
wxCanvasAdmin *GetAdmin() { return m_admin; }
//set the administrator
virtual void SetAdmin( wxCanvasAdmin *admin ) { m_admin = admin; }
//is this a control type of canvas object
bool IsControl() { return m_isControl; }
//is this a vector type of canvas object
bool IsVector() { return m_isVector; }
//is this an Image type of canvas object
bool IsImage() { return m_isImage; }
//get minimum X of the boundingbox in world coordinates
inline double GetXMin() { return m_bbox.GetMinX(); }
//get minimum Y of the boundingbox in world coordinates
inline double GetYMin() { return m_bbox.GetMinY(); }
//get maximum X of the boundingbox in world coordinates
inline double GetXMax() { return m_bbox.GetMaxX(); }
//get maximum Y of the boundingbox in world coordinates
inline double GetYMax() { return m_bbox.GetMaxY(); }
//get boundingbox
inline wxBoundingBox GetBbox() { return m_bbox; }
//redirect all mouse events for the canvas to this object
void CaptureMouse();
//release the mouse capture for this object
void ReleaseMouse();
//is the mouse captured for this object
bool IsCapturedMouse();
//set if this object will visible (be rendered or not)
inline void SetVisible(bool visible) { m_visible=visible; }
//get visibility
inline bool GetVisible() {return m_visible; }
//can the object be dragged
inline void SetDraggable(bool drag) { m_dragable=drag; }
//get if the object can be dragged
inline bool GetDraggable() {return m_dragable; }
//get absolute area in the device coordinates where the object
//its boundingbox in world coordinates is first translated using the matrix.
wxRect GetAbsoluteArea(const wxTransformMatrix& cworld);
//get currently used eventhandler (always the first in the list)
wxEvtHandler *GetEventHandler() const { return m_eventHandler; }
//process an event for the object, starting with the first eventhandler
// in the list.
bool ProcessCanvasObjectEvent(wxEvent& event);
// push/pop event handler: allows to chain a custom event handler to
// already existing ones
void PushEventHandler( wxEvtHandler *handler );
//remove first eventhandler in the list (one will be always stay in)
wxEvtHandler *PopEventHandler( bool deleteHandler = FALSE );
//append an eventhandler to the list, this event handler will be called
//if the other skipped the event to process.
void AppendEventHandler(wxEvtHandler *handler);
//remove last event handler in the list (one will always stay in)
wxEvtHandler *RemoveLastEventHandler(bool deleteHandler);
protected:
//administator for rendering and accessing the canvas's
wxCanvasAdmin* m_admin;
//active event handler, default the object itself
wxEvtHandler* m_eventHandler;
bool m_isControl:1;
bool m_isVector:1;
bool m_isImage:1;
bool m_visible:1;
bool m_dragable:1;
wxDRAG_MODE m_dragmode:3;
//boundingbox in world coordinates
wxBoundingBox m_bbox;
//used for dragging
wxBitmap m_atnewpos;
};
//:defenition
// wxCanvasObjectGroup is a container for wxCanvas derived Objects.
// It renders itself by calling the render methods of the wxCanvasObjects it contains.
// It can have nested groups also, in the same way as the other wxCanvasObjects it already contains.
// The group has a matrix to position/rotate/scale the group.
class wxCanvasObjectGroup: public wxCanvasObject
{
public:
wxCanvasObjectGroup(double x, double y);
virtual ~wxCanvasObjectGroup();
void SetAdmin(wxCanvasAdmin* admin);
//prepend a wxCanvasObject to this group
virtual void Prepend( wxCanvasObject* obj );
//append a wxCanvasObject to this group
virtual void Append( wxCanvasObject* obj );
//insert a wxCanvasObject to this group
virtual void Insert( size_t before, wxCanvasObject* obj );
//remove the given object from the group
virtual void Remove( wxCanvasObject* obj );
//those this group contain the given object.
//in case of nested groups also search in there to the lowwest level.
virtual wxCanvasObject* Contains( wxCanvasObject* obj );
//returns index of the given wxCanvasObject in this group
virtual int IndexOf( wxCanvasObject* obj );
double GetPosX() { return lworld.GetValue(2,0); }
double GetPosY() { return lworld.GetValue(2,1); }
void SetPosXY( double x, double y) {lworld.SetValue(2,0,x);lworld.SetValue(2,1,y);CalcBoundingBox();};
void TransLate( double x, double y );
void CalcBoundingBox();
//remove all wxCanvasObjects from the group (flag for deletion of the objectsalso)
void DeleteContents( bool );
virtual void Render(wxTransformMatrix* cworld,int x, int y, int width, int height );
virtual void WriteSVG( wxTextOutputStream &stream );
//recursive call the IsHitWorld on all contained objects, the first
//one that is hit will be returned
wxCanvasObject* IsHitWorld( double x, double y, double margin = 0 );
//recursive calls for contained objects to set eventhandlers,
//and also sets its own eventhandler
void PushEventHandler( wxEvtHandler *handler );
//recursive calls for contained objects to set eventhandlers,
//and also sets its own eventhandler
wxEvtHandler *PopEventHandler( bool deleteHandler = FALSE );
//recursive calls for contained objects to set eventhandlers,
//and also sets its own eventhandler
void AppendEventHandler(wxEvtHandler *handler);
//recursive calls for contained objects to set eventhandlers,
//and also sets its own eventhandler
wxEvtHandler *RemoveLastEventHandler(bool deleteHandler);
protected:
//to position the object
wxTransformMatrix lworld;
wxList m_objects;
friend class wxCanvas;
};
//:defenition
// wxCanvasObjectRef is a reference to any wxCanvasObject derived class.
// It does not duplicate the referenced object.
// It has a matrix to reposition/rotate/scale the object it references.
// The position/matrix of the referenced Object is accumulated with the one here.
class wxCanvasObjectRef: public wxCanvasObject
{
public:
wxCanvasObjectRef(double x, double y,wxCanvasObject* obj);
//set rotation for the reference
void SetRotation(double rotation);
//set scale in x and y ( > zero)
void SetScale( double scalex, double scaley );
void SetAdmin(wxCanvasAdmin* admin);
double GetPosX() { return lworld.GetValue(2,0); }
double GetPosY() { return lworld.GetValue(2,1); }
void SetPosXY( double x, double y) {lworld.SetValue(2,0,x);lworld.SetValue(2,1,y);CalcBoundingBox();};
void TransLate( double x, double y );
void CalcBoundingBox();
virtual void Render(wxTransformMatrix* cworld,int x, int y, int width, int height );
virtual void WriteSVG( wxTextOutputStream &stream );
//return this object if one of the objects it references is hit
wxCanvasObject* IsHitWorld( double x, double y, double margin = 0 );
virtual wxCanvasObject* Contains( wxCanvasObject* obj );
//recursive calls for contained objects to set eventhandlers,
//and also sets its own eventhandler
void PushEventHandler( wxEvtHandler *handler );
//recursive calls for contained objects to set eventhandlers,
//and also sets its own eventhandler
wxEvtHandler *PopEventHandler( bool deleteHandler = FALSE );
//recursive calls for contained objects to set eventhandlers,
//and also sets its own eventhandler
void AppendEventHandler(wxEvtHandler *handler);
//recursive calls for contained objects to set eventhandlers,
//and also sets its own eventhandler
wxEvtHandler *RemoveLastEventHandler(bool deleteHandler);
protected:
//to position the object
wxTransformMatrix lworld;
//reference to another wxCanvasObject
wxCanvasObject* m_obj;
};
//:defenition
// wxCanvasRect
class wxCanvasRect: public wxCanvasObject
{
public:
wxCanvasRect( double x, double y, double w, double h , double radius=0 );
void SetBrush( const wxBrush& brush) { m_brush = brush; };
void SetPen( const wxPen& pen) { m_pen = pen; CalcBoundingBox(); };
double GetPosX() { return m_x; }
double GetPosY() { return m_y; }
void SetPosXY( double x, double y) {m_x=x; m_y=y; CalcBoundingBox();};
void TransLate( double x, double y );
void CalcBoundingBox();
virtual void Render(wxTransformMatrix* cworld, int clip_x, int clip_y, int clip_width, int clip_height );
virtual void WriteSVG( wxTextOutputStream &stream );
private:
wxPen m_pen;
wxBrush m_brush;
double m_x;
double m_y;
double m_width;
double m_height;
double m_radius;
};
//----------------------------------------------------------------------------
// wxCanvasCircle
//----------------------------------------------------------------------------
class wxCanvasCircle: public wxCanvasObject
{
public:
wxCanvasCircle( double x, double y, double radius );
void SetBrush( const wxBrush& brush) { m_brush = brush; };
void SetPen( const wxPen& pen) { m_pen = pen; CalcBoundingBox(); };
double GetPosX() { return m_x; }
double GetPosY() { return m_y; }
void SetPosXY( double x, double y) {m_x=x; m_y=y;CalcBoundingBox(); };
void TransLate( double x, double y );
void CalcBoundingBox();
virtual void Render(wxTransformMatrix* cworld, int clip_x, int clip_y, int clip_width, int clip_height );
virtual void WriteSVG( wxTextOutputStream &stream );
wxCanvasObject* IsHitWorld( double x, double y, double margin = 0 );
private:
wxPen m_pen;
wxBrush m_brush;
double m_x;
double m_y;
double m_radius;
};
//:defenition
// wxCanvasEllipse
class wxCanvasEllipse: public wxCanvasObject
{
public:
wxCanvasEllipse( double x, double y, double width, double height );
void SetBrush( const wxBrush& brush) { m_brush = brush; };
void SetPen( const wxPen& pen) { m_pen = pen; CalcBoundingBox(); };
double GetPosX() { return m_x; }
double GetPosY() { return m_y; }
void SetPosXY( double x, double y) {m_x=x; m_y=y; CalcBoundingBox();};
void TransLate( double x, double y );
void CalcBoundingBox();
virtual void Render(wxTransformMatrix* cworld, int clip_x, int clip_y, int clip_width, int clip_height );
virtual void WriteSVG( wxTextOutputStream &stream );
wxCanvasObject* IsHitWorld( double x, double y, double margin = 0 );
private:
wxPen m_pen;
wxBrush m_brush;
double m_x;
double m_y;
double m_width;
double m_height;
};
//:defenition
// wxCanvasEllipticArc
class wxCanvasEllipticArc: public wxCanvasObject
{
public:
wxCanvasEllipticArc( double x, double y, double width, double height, double start, double end );
void SetBrush( const wxBrush& brush) { m_brush = brush; };
void SetPen( const wxPen& pen) { m_pen = pen; CalcBoundingBox(); };
double GetPosX() { return m_x; }
double GetPosY() { return m_y; }
void SetPosXY( double x, double y) {m_x=x; m_y=y; CalcBoundingBox();};
void TransLate( double x, double y );
void CalcBoundingBox();
virtual void Render(wxTransformMatrix* cworld, int clip_x, int clip_y, int clip_width, int clip_height );
virtual void WriteSVG( wxTextOutputStream &stream );
wxCanvasObject* IsHitWorld( double x, double y, double margin = 0 );
private:
wxPen m_pen;
wxBrush m_brush;
double m_x;
double m_y;
double m_width;
double m_height;
double m_start;
double m_end;
};
//:defenition
// wxCanvasLine
class wxCanvasLine: public wxCanvasObject
{
public:
wxCanvasLine( double x1, double y1, double x2, double y2 );
void SetPen( const wxPen& pen) { m_pen = pen; CalcBoundingBox(); };
double GetPosX() { return m_x1; }
double GetPosY() { return m_y1; }
void SetPosXY( double x, double y) {m_x1=x; m_y1=y; CalcBoundingBox();};
void TransLate( double x, double y );
void CalcBoundingBox();
virtual void Render(wxTransformMatrix* cworld, int clip_x, int clip_y, int clip_width, int clip_height );
virtual void WriteSVG( wxTextOutputStream &stream );
wxCanvasObject* IsHitWorld( double x, double y, double margin = 0 );
private:
wxPen m_pen;
double m_x1;
double m_y1;
double m_x2;
double m_y2;
};
//:defenition
// wxCanvasImage
class wxCanvasImage: public wxCanvasObject
{
public:
wxCanvasImage( const wxImage &image, double x, double y, double w, double h );
double GetPosX() { return m_x; }
double GetPosY() { return m_y; }
void SetPosXY( double x, double y);
void TransLate( double x, double y );
void CalcBoundingBox();
virtual void Render(wxTransformMatrix* cworld, int clip_x, int clip_y, int clip_width, int clip_height );
virtual void WriteSVG( wxTextOutputStream &stream );
private:
double m_x;
double m_y;
double m_width;
double m_height;
wxImage m_image;
int m_orgw,m_orgh;
// cache
wxBitmap m_cBitmap;
wxImage m_cImage;
int m_cW;
int m_cH;
double m_cR;
};
//----------------------------------------------------------------------------
// wxCanvasControl
//----------------------------------------------------------------------------
class wxCanvasControl: public wxCanvasObject
{
public:
wxCanvasControl( wxWindow *control );
~wxCanvasControl();
double GetPosX();
double GetPosY();
void SetPosXY( double x, double y);
void TransLate( double x, double y );
void MoveRelative( double x, double y );
void CalcBoundingBox();
private:
wxWindow *m_control;
};
//:defenition
// wxCanvasText
class wxCanvasText: public wxCanvasObject
{
public:
wxCanvasText( const wxString &text, double x, double y, const wxString &foneFile, int size );
~wxCanvasText();
double GetPosX() { return m_x; }
double GetPosY() { return m_y; }
void SetPosXY( double x, double y) {m_x=x; m_y=y;CalcBoundingBox(); };
void TransLate( double x, double y );
void CalcBoundingBox();
virtual void Render(wxTransformMatrix* cworld, int clip_x, int clip_y, int clip_width, int clip_height );
virtual void WriteSVG( wxTextOutputStream &stream );
void SetRGB( unsigned char red, unsigned char green, unsigned char blue );
void SetFlag( int flag );
int GetFlag() { return m_flag; }
private:
wxString m_text;
double m_x;
double m_y;
unsigned char *m_alpha;
void *m_faceData;
int m_flag;
int m_red;
int m_green;
int m_blue;
wxString m_fontFileName;
int m_size;
};
//:defenition
// wxCanvas is used to display a wxCanvasGroupObject, which contains wxCanvasObject derived
// drawable objects. The group to draw is called the root.
// All objects are defined in world coordinates, relative to its parent (e.g. nested groups)
// There are methods to convert from world to device coordinates and visa versa.
// Rendering a draw is normally started on the root, it to a buffer, afterwords
// an update of the damaged parts will blitted from the buffer to the screen.
// This is done in Idle time, but can also be forced.
// World coordinates can be with the Y axis going up are down.
// The area of the drawing in world coordinates that is visible on the canvas
// can be set. Parts of this area can be zoomed into resulting in scroll bars
// to be displayed.
class wxCanvas: public wxScrolledWindow
{
public:
// constructors and destructors
wxCanvas( wxCanvasAdmin* admin ,wxWindow *parent, wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxScrolledWindowStyle );
virtual ~wxCanvas();
//background colour for the canvas
virtual void SetColour( const wxColour& background );
//update the area given in device coordinates
virtual void Update( int x, int y, int width, int height, bool blit = TRUE );
//blit all updated areas now to the screen, else it will happen in idle time.
//Use this to support dragging for instance, becuase in such cases idle time
//will take to long.
virtual void UpdateNow();
//prevent canvas activety
virtual void Freeze();
//allow canvas activety
virtual void Thaw();
//get the buffer that is used for rendering in general
inline wxBitmap *GetBuffer() { return &m_buffer; }
//get the DC that is used for rendering
inline wxDC *GetDC() { return m_renderDC; }
//set the DC that is used for rendering
inline void SetDC(wxDC* dc) { m_renderDC=dc; }
inline int GetBufferWidth() { return m_buffer.GetWidth(); }
inline int GetBufferHeight() { return m_buffer.GetHeight(); }
//updating is needed for the canvas if the buffer did change
bool NeedUpdate() { return m_needUpdate; }
bool IsFrozen() { return m_frozen; }
//blit damaged areas in the buffer to the screen
void BlitBuffer( wxDC &dc );
//redirect events to this canvas object
void SetCaptureMouse( wxCanvasObject *obj );
//are events redirected, if so return the object else NULL
inline wxCanvasObject* GetCaptured() { return m_captureMouse;}
//set the root group where the objects for this canvas are stored
void SetRoot(wxCanvasObjectGroup* aroot){m_root=aroot;}
//get root group that is displayed on the canvas
wxCanvasObjectGroup* GetRoot(){return m_root;}
//scroll the window in device coordinates
virtual void ScrollWindow( int dx, int dy,
const wxRect* rect = (wxRect *) NULL );
//get y axis orientation
virtual bool GetYaxis() { return FALSE; }
//get the visible part in world coordinates
virtual double GetMinX() const;
virtual double GetMinY() const;
virtual double GetMaxX() const;
virtual double GetMaxY() const;
//convert from window to virtual coordinates
virtual double DeviceToLogicalX(int x) const;
virtual double DeviceToLogicalY(int y) const;
virtual double DeviceToLogicalXRel(int x) const;
virtual double DeviceToLogicalYRel(int y) const;
virtual int LogicalToDeviceX(double x) const;
virtual int LogicalToDeviceY(double y) const;
virtual int LogicalToDeviceXRel(double x) const;
virtual int LogicalToDeviceYRel(double y) const;
protected:
wxBitmap m_buffer;
//always available and m_buffer selected
wxDC* m_renderDC;
bool m_needUpdate;
wxList m_updateRects;
wxCanvasObjectGroup* m_root;
wxColour m_background;
bool m_frozen;
wxCanvasObject *m_lastMouse;
wxCanvasObject *m_captureMouse;
int m_oldDeviceX,m_oldDeviceY;
wxCanvasAdmin* m_admin;
private:
int m_bufferX,m_bufferY;
protected:
void OnMouse( wxMouseEvent &event );
void OnPaint( wxPaintEvent &event );
void OnSize( wxSizeEvent &event );
void OnIdle( wxIdleEvent &event );
void OnSetFocus( wxFocusEvent &event );
void OnKillFocus( wxFocusEvent &event );
void OnEraseBackground( wxEraseEvent &event );
private:
DECLARE_CLASS(wxCanvas)
DECLARE_EVENT_TABLE()
};
class wxVectorCanvas: public wxCanvas
{
public:
// constructors and destructors
wxVectorCanvas( wxCanvasAdmin* admin ,wxWindow *parent, wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
long style = wxScrolledWindowStyle );
//scroll the window in device coordinates
virtual void ScrollWindow( int dx, int dy,
const wxRect* rect = (wxRect *) NULL );
//set if the Yaxis goes up or down
void SetYaxis(bool up) { m_yaxis=up; }
//get currently used Yaxis setting
virtual bool GetYaxis() { return m_yaxis; }
//to set the total area in world coordinates that can be scrolled.
// when totaly zoomed out (SetMappingScroll same size as given here),
// this will be the area displayed.
// To display all of a drawing, set this here to the boundingbox of the root group
// of the canvas.
void SetScroll(double vx1,double vy1,double vx2,double vy2);
//given the virtual size to be displayed, the mappingmatrix will be calculated
//in such a manner that it fits (same ratio in width and height) to the window size.
//The window size is used to intitialize the mapping.
//The virtual size is just an indication, it will be ajusted to fit in the client window ratio.
//When border is set an extra margin is added so that the drawing will fit nicely.
// To display all of a drawing, set this here to the boundingbox of the root group
// of the canvas.
void SetMappingScroll(double vx1,double vy1,double vx2,double vy2,bool border);
//matrix for calculating the virtual coordinate given a screen coordinate
wxTransformMatrix GetInverseMappingMatrix();
//matrix for calculating the screen coordinate given a virtual coordinate
wxTransformMatrix GetMappingMatrix();
//get minimum X of the visible part in world coordinates
virtual double GetMinX() const;
virtual double GetMinY() const;
virtual double GetMaxX() const;
virtual double GetMaxY() const;
//convert from window to virtual coordinates and back
virtual double DeviceToLogicalX(int x) const;
virtual double DeviceToLogicalY(int y) const;
virtual double DeviceToLogicalXRel(int x) const;
virtual double DeviceToLogicalYRel(int y) const;
virtual int LogicalToDeviceX(double x) const;
virtual int LogicalToDeviceY(double y) const;
virtual int LogicalToDeviceXRel(double x) const;
virtual int LogicalToDeviceYRel(double y) const;
protected:
// up or down
bool m_yaxis;
// holds the matrix for mapping from virtual to screen coordinates
wxTransformMatrix m_mapping_matrix;
// holds the inverse of the mapping matrix
wxTransformMatrix m_inverse_mapping;
//virtual coordinates of total drawing
double m_virtm_minX, m_virtm_minY, m_virtm_maxX, m_virtm_maxY;
// virtual coordinates box
double m_virt_minX, m_virt_minY, m_virt_maxX, m_virt_maxY;
// bounding box
double m_minX, m_minY, m_maxX, m_maxY;
//are scroll bars active?
bool m_scrolled;
private:
void OnScroll(wxScrollWinEvent& event);
void OnChar( wxKeyEvent &event );
void OnSize( wxSizeEvent &event );
private:
DECLARE_CLASS(wxVectorCanvas)
DECLARE_EVENT_TABLE()
};
//:defenition
//Contains a list of wxCanvas Objects that will be maintained through this class.
//Each wxCanvasObject can be displayed on several wxCanvas Objects at the same time.
//The active wxCanvas is used to render and convert coordinates from world to device.
//So it is important to set the active wxCanvas based on the wxCanvas that has the focus
//or is scrolled etc. This is normally done within wxCanvas when appropriate.
class wxCanvasAdmin
{
public:
// constructors and destructors
wxCanvasAdmin();
virtual ~wxCanvasAdmin();
//convert from window to virtual coordinates
double DeviceToLogicalX(int x) const;
//convert from window to virtual coordinates
double DeviceToLogicalY(int y) const;
//convert from window to virtual coordinates relatif
double DeviceToLogicalXRel(int x) const;
//convert from window to virtual coordinates relatif
double DeviceToLogicalYRel(int y) const;
//convert from virtual to window coordinates
int LogicalToDeviceX(double x) const;
//convert from virtual to window coordinates
int LogicalToDeviceY(double y) const;
//convert from virtual to window coordinates relatif
int LogicalToDeviceXRel(double x) const;
//convert from virtual to window coordinates relatif
int LogicalToDeviceYRel(double y) const;
//update in the buffer off all canvases, the area given in world coordinates
virtual void Update(wxCanvasObject* obj, double x, double y, double width, double height);
//blit all updated areas now to the screen, else it will happen in idle time.
//Use this to support dragging for instance, becuase in such cases idle time
//will take to long.
virtual void UpdateNow();
//append another canvas
virtual void Append( wxCanvas* canvas );
//remove a canvas
virtual void Remove( wxCanvas* canvas );
//set the given canvas as active (for rendering, coordinate conversion etc.)
void SetActive(wxCanvas* activate);
//get active canvas
inline wxCanvas* GetActive() {return m_active;};
private:
wxList m_canvaslist;
wxCanvas* m_active;
};
#endif
// WXCANVAS

View File

@@ -0,0 +1,58 @@
/////////////////////////////////////////////////////////////////////////////
// Name: liner.h
// Author: Klaas Holwerda
// Created: 1/10/2000
// Copyright: 2000 (c) Klaas Holwerda
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __WXLINER_H
#define __WXLINER_H
#ifdef __GNUG__
#pragma interface "liner.cpp"
#endif
#include "wx/geometry.h"
enum OUTPRODUCT {R_IS_LEFT,R_IS_ON,R_IS_RIGHT};
// Status of a point to a wxLine
enum R_PointStatus {R_LEFT_SIDE, R_RIGHT_SIDE, R_ON_AREA, R_IN_AREA};
class wxLine
{
public:
// constructors and destructor
wxLine( double x1, double y1, double x2, double y2 );
wxLine( const wxPoint2DDouble& a, const wxPoint2DDouble& b);
~wxLine();
wxPoint2DDouble GetBeginPoint(); // Get the beginpoint from a wxLine
wxPoint2DDouble GetEndPoint(); // Get the endpoint from a wxLine
bool CheckIntersect( wxLine&, double Marge); // Check if two wxLines intersects
int Intersect( wxLine&, wxPoint2DDouble& bp ,wxPoint2DDouble& ep ,double Marge) ; // Intersects two wxLines
bool Intersect( wxLine& lijn, wxPoint2DDouble& crossing); //intersect two (infinit) lines
R_PointStatus PointOnLine( const wxPoint2DDouble& a_Point, double& Distance, double Marge ); //For an infinite wxLine
R_PointStatus PointInLine( const wxPoint2DDouble& a_Point, double& Distance, double Marge ); //For a non-infinite wxLine
OUTPRODUCT OutProduct( const wxLine& two, double accur); // outproduct of two wxLines
double Calculate_Y( double X); // Caclulate Y if X is known
void Virtual_Point( wxPoint2DDouble& a_point, double distance) const;
wxLine& operator=( const wxLine&); // assignment operator
void CalculateLineParameters(); // Calculate the parameters if nessecary
void OffsetContour( const wxLine& nextline, double factor,wxPoint2DDouble& offsetpoint) const;
private:
int ActionOnTable1(R_PointStatus,R_PointStatus); // Function needed for Intersect
int ActionOnTable2(R_PointStatus,R_PointStatus); // Function needed for Intersect
double m_AA;
double m_BB;
double m_CC;
wxPoint2DDouble m_a;
wxPoint2DDouble m_b;
bool m_valid_parameters;
};
#endif

View File

@@ -0,0 +1,220 @@
/////////////////////////////////////////////////////////////////////////////
// Name: polygon.h
// Author: Klaas Holwerda
// Created: XX/XX/XX
// Copyright: 2000 (c) Klaas Holwerda
// Licence: wxWindows Licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __WXPOLYGON_H__
#define __WXPOLYGON_H__
#ifdef __GNUG__
#pragma interface "polygon.cpp"
#endif
#ifndef WX_PRECOMP
#include "wx/wx.h"
#endif
#include "wx/matrix.h"
#include "wx/geometry.h"
#include "bbox.h"
#include "canvas.h"
enum INOUTPOLY {OUTSIDE_POLY,INSIDE_POLY,ON_POLY};
//----------------------------------------------------------------------------
// wxCanvasPolygon
//----------------------------------------------------------------------------
class wxCanvasPolygon: public wxCanvasObject
{
public:
wxCanvasPolygon( int n, wxPoint2DDouble points[], bool spline = FALSE );
~wxCanvasPolygon();
void SetBrush( const wxBrush& brush) { m_brush = brush; }
void SetPen( const wxPen& pen) { m_pen = pen; CalcBoundingBox(); }
//set colour 1
//being the background color if filling with a monochrome bitmap
//or in case of gradient filling the starting colour for the fill
void SetColour1( const wxColour& fg) { m_textfg=fg;}
//set colour 1
//being the foreground color if filling with a monochrome bitmap
//or in case of gradient filling the ending colour for the fill
void SetColour2( const wxColour& bg) { m_textbg=bg;}
//transparent filling when bitmapbrush is monochrome
void SetTransParent(bool transp) { m_transp=transp;}
//gradient filling using lines chnging in colour from colour1 to colour2
void SetGradient(bool gradient, const wxPen& gpen, double distance)
{ m_gradient=gradient;
m_gpen=gpen;
m_gdistance=distance;
}
double GetPosX() { return m_points[0].m_x; }
double GetPosY() { return m_points[0].m_y; }
void SetPosXY( double x, double y);
void TransLate( double x, double y );
void CalcBoundingBox();
virtual void Render(wxTransformMatrix* cworld, int clip_x, int clip_y, int clip_width, int clip_height );
virtual void WriteSVG( wxTextOutputStream &stream );
wxCanvasObject* IsHitWorld( double x, double y, double margin = 0 );
INOUTPOLY PointInPolygon(const wxPoint2DDouble& P, double marge);
private:
bool MoveUp(double horline, int& index, int direction);
void DetectCriticalPoints();
void FillPolygon(wxTransformMatrix* cworld, int clip_x, int clip_y, int clip_width, int clip_height );
wxList m_CRlist;
wxList m_AETlist;
wxBrush m_brush;
wxPen m_pen;
wxColour m_textbg;
wxColour m_textfg;
//if brush is of type bitmap with a mask fill with mask transparent
bool m_transp;
bool m_gradient;
wxPen m_gpen;
double m_gdistance;
bool m_spline;
int m_n;
wxPoint2DDouble* m_points;
};
//----------------------------------------------------------------------------
// wxCanvasPolyline
//----------------------------------------------------------------------------
class wxCanvasPolyline: public wxCanvasObject
{
public:
wxCanvasPolyline(int n, wxPoint2DDouble points[]);
~wxCanvasPolyline();
void SetPen( const wxPen& pen) { m_pen = pen; CalcBoundingBox(); }
double GetPosX() { return m_points[0].m_x; }
double GetPosY() { return m_points[0].m_y; }
void SetPosXY( double x, double y);
void TransLate( double x, double y );
void CalcBoundingBox();
virtual void Render(wxTransformMatrix* cworld, int clip_x, int clip_y, int clip_width, int clip_height );
virtual void WriteSVG( wxTextOutputStream &stream );
wxCanvasObject* IsHitWorld( double x, double y, double margin = 0 );
bool PointOnPolyline(const wxPoint2DDouble& P, double marge);
private:
wxPen m_pen;
int m_n;
wxPoint2DDouble* m_points;
};
//----------------------------------------------------------------------------
// wxCanvasPolygon
//----------------------------------------------------------------------------
class wxCanvasPolygonL: public wxCanvasObject
{
public:
wxCanvasPolygonL(wxList* points, bool spline = FALSE);
~wxCanvasPolygonL();
void SetBrush( const wxBrush& brush) { m_brush = brush; }
void SetPen( const wxPen& pen) { m_pen = pen; CalcBoundingBox(); }
void SetColour1( const wxColour& fg) { m_textfg=fg;}
void SetColour2( const wxColour& bg) { m_textbg=bg;}
void SetTransParent(bool transp) { m_transp=transp;}
double GetPosX();
double GetPosY();
void SetPosXY( double x, double y);
void TransLate( double x, double y );
void CalcBoundingBox();
virtual void Render(wxTransformMatrix* cworld, int clip_x, int clip_y, int clip_width, int clip_height );
virtual void WriteSVG( wxTextOutputStream &stream );
wxCanvasObject* IsHitWorld( double x, double y, double margin = 0 );
INOUTPOLY PointInPolygon(const wxPoint2DDouble& P, double marge);
private:
wxBrush m_brush;
wxPen m_pen;
bool m_spline;
wxColour m_textbg;
wxColour m_textfg;
//if brush is of type bitmap with a mask fill with mask transparent
bool m_transp;
wxList* m_lpoints;
};
//----------------------------------------------------------------------------
// wxCanvasPolyline
//----------------------------------------------------------------------------
class wxCanvasPolylineL: public wxCanvasObject
{
public:
wxCanvasPolylineL(wxList* points, bool spline );
~wxCanvasPolylineL();
void SetPen( const wxPen& pen) { m_pen = pen; CalcBoundingBox(); }
double GetPosX();
double GetPosY();
void SetPosXY( double x, double y);
void TransLate( double x, double y );
void CalcBoundingBox();
virtual void Render(wxTransformMatrix* cworld, int clip_x, int clip_y, int clip_width, int clip_height );
virtual void WriteSVG( wxTextOutputStream &stream );
wxCanvasObject* IsHitWorld( double x, double y, double margin = 0 );
bool PointOnPolyline(const wxPoint2DDouble& P, double marge);
private:
wxPen m_pen;
bool m_spline;
wxList* m_lpoints;
};
//active edge table
class wxAET
{
public:
inline void CalculateLineParameters( const wxPoint2DDouble& p1 , const wxPoint2DDouble& p2 );
inline void CalculateXs( double y );
//line paramters
bool m_horizontal;
double m_BdivA;
double m_CdivA;
int m_index;
int m_direction;
//intersection point with scanline;
double m_xs;
};
#endif

View File

@@ -0,0 +1,59 @@
/////////////////////////////////////////////////////////////////////////////
// Name: editlbox.h
// Purpose: ListBox with editable items
// Author: Vaclav Slavik
// RCS-ID: $Id$
// Copyright: (c) Vaclav Slavik
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef __WX_EDITLBOX_H__
#define __WX_EDITLBOX_H__
#ifdef __GNUG__
#pragma interface "editlbox.h"
#endif
#include "wx/panel.h"
class WXDLLEXPORT wxBitmapButton;
class WXDLLEXPORT wxListCtrl;
class WXDLLEXPORT wxListEvent;
// This class provides a composite control that lets the
// user easily enter list of strings
class WXDLLEXPORT wxEditableListBox : public wxPanel
{
DECLARE_CLASS(wxEditableListBox);
public:
wxEditableListBox(wxWindow *parent, wxWindowID id,
const wxString& label,
const wxPoint& pos = wxDefaultPosition,
const wxSize& size = wxDefaultSize,
const wxString& name = wxT("editableListBox"));
void SetStrings(const wxArrayString& strings);
void GetStrings(wxArrayString& strings);
protected:
wxBitmapButton *m_bDel, *m_bNew, *m_bUp, *m_bDown, *m_bEdit;
wxListCtrl *m_listCtrl;
int m_selection;
bool m_edittingNew;
void OnItemSelected(wxListEvent& event);
void OnEndLabelEdit(wxListEvent& event);
void OnNewItem(wxCommandEvent& event);
void OnDelItem(wxCommandEvent& event);
void OnEditItem(wxCommandEvent& event);
void OnUpItem(wxCommandEvent& event);
void OnDownItem(wxCommandEvent& event);
DECLARE_EVENT_TABLE()
};
#endif

View File

@@ -0,0 +1,167 @@
/////////////////////////////////////////////////////////////////////////////
// Name: multicell.h
// Purpose: provide two new classes for layout, wxMultiCellSizer and wxMultiCellCanvas
// Author: Jonathan Bayer
// Modified by:
// Created:
// RCS-ID: $Id:
// Copyright: (c) Jonathan Bayer
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
// This was inspired by the gbsizer class written by Alex Andruschak
#ifndef __WX_MULTICELL_H__
#define __WX_MULTICELL_H__
#ifdef __GNUG__
#pragma interface "multicell.h"
#endif
// ----------------------------------------------------------------------------
// headers
// ----------------------------------------------------------------------------
// The classes are derived from wxSizer
#include "wx/sizer.h"
// ----------------------------------------------------------------------------
// constants
// ----------------------------------------------------------------------------
enum wxResizable
{
wxNOT_RESIZABLE = 0x00,
wxHORIZENTAL_RESIZABLE = 0x01,
wxVERTICAL_RESIZABLE = 0x10,
wxRESIZABLE = 0x11
};
//---------------------------------------------------------------------------
// classes
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
// wxMultiCellItemHandle
//---------------------------------------------------------------------------
class WXDLLEXPORT wxMultiCellItemHandle: public wxObject
{
DECLARE_CLASS(wxMultiCellItemHandle);
protected:
int m_column;
int m_row;
int m_width;
int m_height;
wxResizable m_style;
wxSize m_fixedSize;
int m_alignment;
wxSize m_weight;
public:
wxMultiCellItemHandle( int row, int column, int height = 1, int width = 1, wxSize size = wxDefaultSize, wxResizable style = wxNOT_RESIZABLE, wxSize weight = wxSize(1,1), int align = wxALIGN_NOT);
wxMultiCellItemHandle( int row, int column, wxSize size, wxResizable style = wxNOT_RESIZABLE, wxSize weight = wxSize(1,1), int align = wxALIGN_NOT);
wxMultiCellItemHandle( int row, int column, wxResizable style, wxSize weight = wxSize(1,1), int align = wxALIGN_NOT);
wxMultiCellItemHandle( int row, int column, int align);
int GetColumn();
int GetRow();
int GetWidth();
int GetHeight();
wxResizable GetStyle();
wxSize GetLocalSize();
int GetAlignment();
wxSize GetWeight();
private:
void Initialize( int row, int column, int height = 1, int width = 1, wxSize size = wxDefaultSize, wxResizable style = wxNOT_RESIZABLE, wxSize weight = wxSize(1,1), int align = wxALIGN_NOT);
};
//---------------------------------------------------------------------------
// wxMultiCellSizer
//---------------------------------------------------------------------------
class WXDLLEXPORT wxMultiCellSizer : virtual public wxSizer
{
DECLARE_CLASS(wxMultiCellSizer);
protected:
wxSize m_cell_count;
public:
wxMultiCellSizer(wxSize & size);
wxMultiCellSizer(int rows, int cols);
~wxMultiCellSizer();
virtual void RecalcSizes();
virtual wxSize CalcMin();
bool SetDefaultCellSize(wxSize size);
bool SetColumnWidth(int column, int colSize = 5, bool expandable = FALSE);
bool SetRowHeight(int row, int rowSize = 5, bool expandable = FALSE);
bool EnableGridLines(wxWindow *win);
bool SetGridPen(wxPen *pen);
void OnPaint(wxDC& dc);
private:
void GetMinimums();
int Sum(int *array, int x);
private:
int *m_maxHeight;
int *m_maxWidth;
int *m_rowStretch;
int *m_colStretch;
wxSize **m_weights;
wxSize **m_minSizes;
int m_maxWeights;
wxSize m_defaultCellSize;
wxWindow *m_win; // usually used for debugging
wxPen *m_pen;
void DrawGridLines(wxDC& dc);
void Initialize(wxSize size);
};
// wxCell is used internally, so we don't need to declare it here
class wxCell;
//---------------------------------------------------------------------------
// wxMultiCellCanvas
//---------------------------------------------------------------------------
class wxMultiCellCanvas : public wxFlexGridSizer
{
public:
wxMultiCellCanvas(wxWindow *parent, int numRows = 2, int numCols = 2);
void Add(wxWindow *win, unsigned int row, unsigned int col);
void Resize(int numRows, int numCols);
int MaxRows()
{
return m_maxRows;
};
int MaxCols()
{
return m_maxCols;
};
void CalculateConstraints();
void SetMinCellSize(const wxSize size)
{
m_minCellSize = size;
};
private:
wxWindow *m_parent;
unsigned int m_maxRows, m_maxCols;
wxSize m_minCellSize;
wxCell **m_cells;
};
#endif
/*** End of File ***/

View File

@@ -0,0 +1,227 @@
/////////////////////////////////////////////////////////////////////////////
// Name: splittree.h
// Purpose: Classes to achieve a remotely-scrolled tree in a splitter
// window that can be scrolled by a scrolled window higher in the
// hierarchy
// Author: Julian Smart
// Modified by:
// Created: 8/7/2000
// RCS-ID: $Id$
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_SPLITTREE_H_
#define _WX_SPLITTREE_H_
#ifdef __GNUG__
#pragma interface "splittree.h"
#endif
// Set this to 1 to use generic tree control (doesn't yet work properly)
#define USE_GENERIC_TREECTRL 0
#include "wx/wx.h"
#include "wx/treectrl.h"
#include "wx/splitter.h"
#include "wx/scrolwin.h"
#if USE_GENERIC_TREECTRL
#include "wx/generic/treectlg.h"
#ifndef wxTreeCtrl
#define wxTreeCtrl wxGenericTreeCtrl
#define sm_classwxTreeCtrl sm_classwxGenericTreeCtrl
#endif
#endif
class wxRemotelyScrolledTreeCtrl;
class wxThinSplitterWindow;
class wxSplitterScrolledWindow;
/*
* wxRemotelyScrolledTreeCtrl
*
* This tree control disables its vertical scrollbar and catches scroll
* events passed by a scrolled window higher in the hierarchy.
* It also updates the scrolled window vertical scrollbar as appropriate.
*/
class wxRemotelyScrolledTreeCtrl: public wxTreeCtrl
{
DECLARE_CLASS(wxRemotelyScrolledTreeCtrl)
public:
wxRemotelyScrolledTreeCtrl(wxWindow* parent, wxWindowID id, const wxPoint& pt = wxDefaultPosition,
const wxSize& sz = wxDefaultSize, long style = wxTR_HAS_BUTTONS);
~wxRemotelyScrolledTreeCtrl();
//// Events
void OnSize(wxSizeEvent& event);
void OnExpand(wxTreeEvent& event);
void OnScroll(wxScrollWinEvent& event);
//// Overrides
// Override this in case we're using the generic tree control.
// Calls to this should disable the vertical scrollbar.
// Number of pixels per user unit (0 or -1 for no scrollbar)
// Length of virtual canvas in user units
// Length of page in user units
virtual void SetScrollbars(int pixelsPerUnitX, int pixelsPerUnitY,
int noUnitsX, int noUnitsY,
int xPos = 0, int yPos = 0,
bool noRefresh = FALSE );
// In case we're using the generic tree control.
// Get the view start
virtual void GetViewStart(int *x, int *y) const;
// In case we're using the generic tree control.
virtual void PrepareDC(wxDC& dc);
// In case we're using the generic tree control.
virtual int GetScrollPos(int orient) const;
//// Helpers
void HideVScrollbar();
// Calculate the tree overall size so we can set the scrollbar
// correctly
void CalcTreeSize(wxRect& rect);
void CalcTreeSize(const wxTreeItemId& id, wxRect& rect);
// Adjust the containing wxScrolledWindow's scrollbars appropriately
void AdjustRemoteScrollbars();
// Find the scrolled window that contains this control
wxScrolledWindow* GetScrolledWindow() const;
// Scroll to the given line (in scroll units where each unit is
// the height of an item)
void ScrollToLine(int posHoriz, int posVert);
//// Accessors
// The companion window is one which will get notified when certain
// events happen such as node expansion
void SetCompanionWindow(wxWindow* companion) { m_companionWindow = companion; }
wxWindow* GetCompanionWindow() const { return m_companionWindow; }
DECLARE_EVENT_TABLE()
protected:
wxWindow* m_companionWindow;
};
/*
* wxTreeCompanionWindow
*
* A window displaying values associated with tree control items.
*/
class wxTreeCompanionWindow: public wxWindow
{
public:
DECLARE_CLASS(wxTreeCompanionWindow)
wxTreeCompanionWindow(wxWindow* parent, wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition,
const wxSize& sz = wxDefaultSize,
long style = 0);
//// Overrides
virtual void DrawItem(wxDC& dc, wxTreeItemId id, const wxRect& rect);
//// Events
void OnPaint(wxPaintEvent& event);
void OnScroll(wxScrollWinEvent& event);
void OnExpand(wxTreeEvent& event);
//// Operations
//// Accessors
wxRemotelyScrolledTreeCtrl* GetTreeCtrl() const { return m_treeCtrl; };
void SetTreeCtrl(wxRemotelyScrolledTreeCtrl* treeCtrl) { m_treeCtrl = treeCtrl; }
//// Data members
protected:
wxRemotelyScrolledTreeCtrl* m_treeCtrl;
DECLARE_EVENT_TABLE()
};
/*
* wxThinSplitterWindow
*
* Implements a splitter with a less obvious sash
* than the usual one.
*/
class wxThinSplitterWindow: public wxSplitterWindow
{
public:
DECLARE_DYNAMIC_CLASS(wxThinSplitterWindow)
wxThinSplitterWindow(wxWindow* parent, wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition,
const wxSize& sz = wxDefaultSize,
long style = wxSP_3D | wxCLIP_CHILDREN);
//// Overrides
void SizeWindows();
// Tests for x, y over sash. Overriding this allows us to increase
// the tolerance.
bool SashHitTest(int x, int y, int tolerance = 2);
void DrawSash(wxDC& dc);
//// Events
void OnSize(wxSizeEvent& event);
//// Operations
//// Accessors
//// Data members
protected:
DECLARE_EVENT_TABLE()
};
/*
* wxSplitterScrolledWindow
*
* This scrolled window is aware of the fact that one of its
* children is a splitter window. It passes on its scroll events
* (after some processing) to both splitter children for them
* scroll appropriately.
*/
class wxSplitterScrolledWindow: public wxScrolledWindow
{
public:
DECLARE_DYNAMIC_CLASS(wxSplitterScrolledWindow)
wxSplitterScrolledWindow(wxWindow* parent, wxWindowID id = -1,
const wxPoint& pos = wxDefaultPosition,
const wxSize& sz = wxDefaultSize,
long style = 0);
//// Overrides
//// Events
void OnScroll(wxScrollWinEvent& event);
void OnSize(wxSizeEvent& event);
//// Operations
//// Accessors
//// Data members
public:
DECLARE_EVENT_TABLE()
};
#endif
// _SPLITTREE_H_

View File

@@ -0,0 +1,74 @@
// ---------------------------------------------------------------------------
// Name: cdbase.h
// Purpose: wxMMedia
// Author: Guilhem Lavaux
// Created: 1997
// Updated: 1998, 1999, 2000
// Copyright: (C) 1997, 1998, 1999, 2000 Guilhem Lavaux
// License: wxWindows license
// ---------------------------------------------------------------------------
#ifndef __CDA_base_H__
#define __CDA_base_H__
#ifdef __GNUG__
#pragma interface "cdbase.h"
#endif
#include "wx/defs.h"
#include "wx/object.h"
typedef struct wxCDtime {
wxUint8 track;
wxUint8 hour, min, sec;
} wxCDtime;
class WXDLLEXPORT wxCDAudio : public wxObject {
DECLARE_ABSTRACT_CLASS(wxCDAudio)
public:
typedef enum { PLAYING, PAUSED, STOPPED } CDstatus;
// Table of contents manager
class WXDLLEXPORT CDtoc {
protected:
wxCDtime *tracks_time, *tracks_pos;
wxCDtime total_time;
public:
//
CDtoc(wxCDtime& tot_tm, wxCDtime *trks_tm, wxCDtime *trks_pos)
{ tracks_time = trks_tm; total_time = tot_tm; tracks_pos = trks_pos; }
// Returns the length of the specified track
// track: track to get length
wxCDtime GetTrackTime(wxUint8 track) const;
// Returns the position of the specified track
// track: track to get position
wxCDtime GetTrackPos(wxUint8 track) const;
// Returns the total time
inline wxCDtime GetTotalTime() const { return total_time; }
};
public:
//
wxCDAudio() : wxObject() {}
//
virtual ~wxCDAudio() {}
// Play audio at the specified position
virtual bool Play(const wxCDtime& beg_play, const wxCDtime& end_play) = 0;
// Play audio from the specified to the end of the CD audio
bool Play(const wxCDtime& beg_play);
//
bool Play(wxUint8 beg_track, wxUint8 end_track = 0);
// Pause the audio playing
virtual bool Pause() = 0;
// Resume a paused audio playing
virtual bool Resume() = 0;
// Get the current CD status
virtual CDstatus GetStatus() = 0;
// Get the current playing time
virtual wxCDtime GetTime() = 0;
// Returns the table of contents
virtual const CDtoc& GetToc() = 0;
// CD ok
virtual bool Ok() const = 0;
};
#endif

View File

@@ -0,0 +1,58 @@
// ---------------------------------------------------------------------------
// Name: cdunix.h
// Purpose: wxMMedia
// Author: Guilhem Lavaux
// Created: 1997
// Updated: 2000
// Copyright: (C) 1997, 1998, 1999, 2000 Guilhem Lavaux
// License: wxWindows license
// ---------------------------------------------------------------------------
#ifndef __CDUNIXH__
#define __CDUNIXH__
#ifdef __GNUG__
#pragma interface "cdunix.h"
#endif
#include "wx/defs.h"
#include "wx/object.h"
#include "wx/string.h"
#include "wx/mmedia/cdbase.h"
///
class WXDLLEXPORT wxCDAudioLinux : public wxCDAudio {
DECLARE_DYNAMIC_CLASS(wxCDAudioLinux)
protected:
wxCDtime m_time;
CDstatus m_status;
CDtoc *m_toc;
int m_fd;
wxCDtime *m_trksize, *m_trkpos;
public:
///
wxCDAudioLinux();
///
wxCDAudioLinux(const wxString& dev_name);
///
virtual ~wxCDAudioLinux();
///
virtual bool Play(const wxCDtime& beg_time, const wxCDtime& end_time);
///
virtual bool Pause();
///
virtual bool Resume();
///
virtual CDstatus GetStatus();
///
virtual wxCDtime GetTime();
///
virtual CDtoc& GetToc();
///
virtual inline bool Ok() const { return (m_fd != -1); }
protected:
///
void OpenDevice(const wxString& dev_name);
};
#endif

View File

@@ -0,0 +1,62 @@
// /////////////////////////////////////////////////////////////////////////////
// Name: cdwin.h
// Purpose: wxMMedia
// Author: Guilhem Lavaux
// Created: 1997
// Updated: 1998
// Copyright: (C) 1997, 1998, Guilhem Lavaux
// License: wxWindows license
// /////////////////////////////////////////////////////////////////////////////
#ifndef __CDA_win_H__
#define __CDA_win_H__
#ifdef __GNUG__
#pragma interface
#endif
#include "wx/wxprec.h"
#include "cdbase.h"
#ifdef WXMMEDIA_INTERNAL
#include <windows.h>
#include <mmsystem.h>
typedef struct CDAW_Internal {
MCIDEVICEID dev_id;
} CDAW_Internal;
#endif
///
class WXDLLEXPORT wxCDAudioWin : public wxCDAudio {
DECLARE_DYNAMIC_CLASS(wxCDAudioWin)
protected:
struct CDAW_Internal *m_internal;
wxCDtime *m_trksize, *m_trkpos;
CDtoc *m_toc;
bool m_ok;
public:
///
wxCDAudioWin(void);
///
wxCDAudioWin(const char *dev_name);
///
virtual ~wxCDAudioWin(void);
///
virtual bool Play(const wxCDtime& beg_time, const wxCDtime& end_time);
///
virtual bool Pause(void);
///
virtual bool Resume(void);
///
virtual CDstatus GetStatus(void);
///
virtual wxCDtime GetTime(void);
///
virtual const CDtoc& GetToc(void);
///
virtual inline bool Ok(void) const { return m_ok; }
protected:
void PrepareToc();
};
#endif

View File

@@ -0,0 +1,123 @@
/*
* This source code is a product of Sun Microsystems, Inc. and is provided
* for unrestricted use. Users may copy or modify this source code without
* charge.
*
* SUN SOURCE CODE IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING
* THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR
* PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE.
*
* Sun source code is provided with no support and without any obligation on
* the part of Sun Microsystems, Inc. to assist in its use, correction,
* modification or enhancement.
*
* SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE
* INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY THIS SOFTWARE
* OR ANY PART THEREOF.
*
* In no event will Sun Microsystems, Inc. be liable for any lost revenue
* or profits or other special, indirect and consequential damages, even if
* Sun has been advised of the possibility of such damages.
*
* Sun Microsystems, Inc.
* 2550 Garcia Avenue
* Mountain View, California 94043
*/
/*
* g72x.h
*
* Header file for CCITT conversion routines.
*
*/
#ifndef _G72X_H
#define _G72X_H
#define AUDIO_ENCODING_ULAW (1) /* ISDN u-law */
#define AUDIO_ENCODING_ALAW (2) /* ISDN A-law */
#define AUDIO_ENCODING_LINEAR (3) /* PCM 2's-complement (0-center) */
/*
* The following is the definition of the state structure
* used by the G.721/G.723 encoder and decoder to preserve their internal
* state between successive calls. The meanings of the majority
* of the state structure fields are explained in detail in the
* CCITT Recommendation G.721. The field names are essentially indentical
* to variable names in the bit level description of the coding algorithm
* included in this Recommendation.
*/
struct g72x_state {
long yl; /* Locked or steady state step size multiplier. */
short yu; /* Unlocked or non-steady state step size multiplier. */
short dms; /* Short term energy estimate. */
short dml; /* Long term energy estimate. */
short ap; /* Linear weighting coefficient of 'yl' and 'yu'. */
short a[2]; /* Coefficients of pole portion of prediction filter. */
short b[6]; /* Coefficients of zero portion of prediction filter. */
short pk[2]; /*
* Signs of previous two samples of a partially
* reconstructed signal.
*/
short dq[6]; /*
* Previous 6 samples of the quantized difference
* signal represented in an internal floating point
* format.
*/
short sr[2]; /*
* Previous 2 samples of the quantized difference
* signal represented in an internal floating point
* format.
*/
char td; /* delayed tone detect, new in 1988 version */
};
/* External function definitions. */
extern unsigned char linear2alaw (int pcm_val); /* 2's complement (16-bit range) */
extern int alaw2linear (unsigned char a_val);
extern unsigned char linear2ulaw (int pcm_val); /* 2's complement (16-bit range) */
extern int ulaw2linear (unsigned char u_val);
extern int predictor_zero (struct g72x_state *state_ptr);
extern int predictor_pole (struct g72x_state *state_ptr);
extern int step_size (struct g72x_state *state_ptr);
extern int quantize (int d, int y, short *table, int size);
extern int reconstruct (int sign, int dqln, int y);
extern void update
( int code_size, int y, int wi, int fi, int dq
, int sr, int dqsez, struct g72x_state *state_ptr);
int tandem_adjust_alaw
(int sr, int se, int y, int i, int sign, short *qtab);
int tandem_adjust_ulaw
(int sr, int se, int y, int i, int sign, short *qtab);
extern void g72x_init_state (struct g72x_state *);
extern int g721_encoder(
int sample,
int in_coding,
struct g72x_state *state_ptr);
extern int g721_decoder(
int code,
int out_coding,
struct g72x_state *state_ptr);
extern int g723_24_encoder(
int sample,
int in_coding,
struct g72x_state *state_ptr);
extern int g723_24_decoder(
int code,
int out_coding,
struct g72x_state *state_ptr);
extern int g723_40_encoder(
int sample,
int in_coding,
struct g72x_state *state_ptr);
extern int g723_40_decoder(
int code,
int out_coding,
struct g72x_state *state_ptr);
#endif /* !_G72X_H */

View File

@@ -0,0 +1,46 @@
// --------------------------------------------------------------------------
// Name: sndaiff.h
// Purpose:
// Date: 08/11/1999
// Author: Guilhem Lavaux <lavaux@easynet.fr> (C) 1999
// CVSID: $Id$
// --------------------------------------------------------------------------
#ifndef _WX_SNDAIFF_H
#define _WX_SNDAIFF_H
#ifdef __GNUG__
#pragma interface "sndaiff.h"
#endif
#include "wx/defs.h"
#include "wx/stream.h"
#include "wx/mmedia/sndbase.h"
#include "wx/mmedia/sndcodec.h"
#include "wx/mmedia/sndfile.h"
//
// AIFF codec
//
class WXDLLEXPORT wxSoundAiff: public wxSoundFileStream {
public:
wxSoundAiff(wxInputStream& stream, wxSoundStream& io_sound);
wxSoundAiff(wxOutputStream& stream, wxSoundStream& io_sound);
~wxSoundAiff();
bool CanRead();
wxString GetCodecName() const;
protected:
bool PrepareToPlay();
bool PrepareToRecord(wxUint32 time);
bool FinishRecording();
bool RepositionStream(wxUint32 position);
wxUint32 GetData(void *buffer, wxUint32 len);
wxUint32 PutData(const void *buffer, wxUint32 len);
protected:
off_t m_base_offset;
};
#endif

View File

@@ -0,0 +1,171 @@
// --------------------------------------------------------------------------
// Name: sndbase.h
// Purpose:
// Date: 08/11/1999
// Author: Guilhem Lavaux <lavaux@easynet.fr> (C) 1999
// CVSID: $Id$
// --------------------------------------------------------------------------
#ifndef _WX_SNDBASE_H
#define _WX_SNDBASE_H
#ifdef __GNUG__
#pragma interface "sndbase.h"
#endif
#include "wx/defs.h"
// ------------------------------------------------------------------------
// DEFINITIONS
// ---------------------
// Sound streaming mode:
// - wxSOUND_INPUT: simple recording mode
// - wxSOUND_OUTPUT: simple playing mode
// - wxSOUND_DUPLEX: full duplex record/play at the same time
// ---------------------
enum {
wxSOUND_INPUT = 1,
wxSOUND_OUTPUT = 2,
wxSOUND_DUPLEX = wxSOUND_INPUT | wxSOUND_OUTPUT,
};
// ---------------------
// wxSoundFormatType: it specifies the format family of the sound data
// which will be passed to the stream.
// ---------------------
typedef enum {
wxSOUND_NOFORMAT,
wxSOUND_PCM,
wxSOUND_ULAW,
wxSOUND_G72X,
wxSOUND_MSADPCM
} wxSoundFormatType;
// ---------------------
// wxSoundError:
// - wxSOUND_NOERR: No error occured
// - wxSOUND_IOERR: an input/output error occured, it may concern either
// a driver or a file
// - wxSOUND_INVFRMT: the sound format passed to the function is invalid.
// Generally, it means that you passed out of range values
// to the codec stream or you don't pass the right sound
// format object to the right sound codec stream.
// - wxSOUND_INVDEV: Invalid device. Generally, it means that the sound stream
// didn't manage to open the device driver due to an invalid// parameter or to the fact that sound is not supported on
// this computer.
// - wxSOUND_NOEXACT: No exact matching sound codec has been found for
// this sound format. It means that the sound driver didn't
// manage to setup the sound card with the specified
// values.
// - wxSOUND_NOCODEC: No matching codec has been found. Generally, it
// may happen when you call
// wxSoundRouterStream::SetSoundFormat().
// - wxSOUND_MEMERR: Not enough memory.
// - wxSOUND_NOTSTARTED: You did not start the production using
// StartProduction()
// ---------------------
typedef enum {
wxSOUND_NOERROR,
wxSOUND_IOERROR,
wxSOUND_INVFRMT,
wxSOUND_INVDEV,
wxSOUND_NOEXACT,
wxSOUND_INVSTRM,
wxSOUND_NOCODEC,
wxSOUND_MEMERROR,
wxSOUND_NOTSTARTED
} wxSoundError;
class WXDLLEXPORT wxSoundStream;
// ---------------------
// wxSoundCallback(stream, evt, cdata): C callback for sound event.
// - stream: current wxSoundStream
// - evt: the sound event which has occured, it may be wxSOUND_INPUT,
// wxSOUND_OUTPUT or wxSOUND_DUPLEX
// - cdata: User callback data
// ---------------------
typedef void (*wxSoundCallback)(wxSoundStream *stream, int evt,
void *cdata);
//
// Base class for sound format specification
//
class WXDLLEXPORT wxSoundFormatBase {
public:
wxSoundFormatBase();
virtual ~wxSoundFormatBase();
// It returns a "standard" format type.
virtual wxSoundFormatType GetType() const { return wxSOUND_NOFORMAT; }
// It clones the current format.
virtual wxSoundFormatBase *Clone() const;
virtual wxUint32 GetTimeFromBytes(wxUint32 bytes) const = 0;
virtual wxUint32 GetBytesFromTime(wxUint32 time) const = 0;
virtual bool operator !=(const wxSoundFormatBase& frmt2) const;
};
//
// Base class for sound streams
//
class WXDLLEXPORT wxSoundStream {
public:
wxSoundStream();
virtual ~wxSoundStream();
// Reads "len" bytes from the sound stream.
virtual wxSoundStream& Read(void *buffer, wxUint32 len) = 0;
// Writes "len" byte to the sound stream.
virtual wxSoundStream& Write(const void *buffer, wxUint32 len) = 0;
// Returns the best size for IO calls
virtual wxUint32 GetBestSize() const { return 1024; }
// SetSoundFormat returns TRUE when the format can be handled.
virtual bool SetSoundFormat(const wxSoundFormatBase& format);
// GetSoundFormat returns the current sound format.
wxSoundFormatBase& GetSoundFormat() const { return *m_sndformat; }
// Register a callback for a specified async event.
void SetCallback(int evt, wxSoundCallback cbk, void *cdata);
// Starts the async notifier. After this call, the stream begins either
// recording or playing or the two at the same time.
virtual bool StartProduction(int evt) = 0;
// Stops the async notifier.
virtual bool StopProduction() = 0;
// Sets the event handler: if it is non-null, all events are routed to it.
void SetEventHandler(wxSoundStream *handler) { m_handler = handler; }
wxSoundError GetError() const { return m_snderror; }
wxUint32 GetLastAccess() const { return m_lastcount; }
// This is only useful for device (I think).
virtual bool QueueFilled() const { return TRUE; }
protected:
// Current sound format
wxSoundFormatBase *m_sndformat;
// Last error
wxSoundError m_snderror;
// Last access
wxUint32 m_lastcount;
// Event handler
wxSoundStream *m_handler;
wxSoundCallback m_callback[2];
void *m_cdata[2];
protected:
// Handles event
virtual void OnSoundEvent(int evt);
};
#endif

View File

@@ -0,0 +1,32 @@
// --------------------------------------------------------------------------
// Name: sndcodec.h
// Purpose:
// Date: 08/11/1999
// Author: Guilhem Lavaux <lavaux@easynet.fr> (C) 1999
// CVSID: $Id$
// --------------------------------------------------------------------------
#ifndef _WX_SNDCODEC_H
#define _WX_SNDCODEC_H
#ifdef __GNUG__
#pragma interface "sndcodec.h"
#endif
#include "wx/defs.h"
#include "wx/mmedia/sndbase.h"
class WXDLLEXPORT wxSoundStreamCodec: public wxSoundStream {
public:
wxSoundStreamCodec(wxSoundStream& snd_io);
~wxSoundStreamCodec();
bool StartProduction(int evt);
bool StopProduction();
wxUint32 GetBestSize() const;
protected:
wxSoundStream *m_sndio;
};
#endif

View File

@@ -0,0 +1,54 @@
// --------------------------------------------------------------------------
// Name: sndcpcm.h
// Purpose:
// Date: 08/11/1999
// Author: Guilhem Lavaux <lavaux@easynet.fr> (C) 1999
// CVSID: $Id$
// --------------------------------------------------------------------------
#ifndef _WX_SNDCPCM_H
#define _WX_SNDCPCM_H
#ifdef __GNUG__
#pragma interface "sndcpcm.h"
#endif
#include "wx/defs.h"
#include "wx/mmedia/sndbase.h"
#include "wx/mmedia/sndcodec.h"
//
// PCM converter class
//
class WXDLLEXPORT wxSoundStreamPcm: public wxSoundStreamCodec {
public:
typedef void (*ConverterType)(const void *buf_in, void *buf_out,
wxUint32 len);
wxSoundStreamPcm(wxSoundStream& sndio);
~wxSoundStreamPcm();
wxSoundStream& Read(void *buffer, wxUint32 len);
wxSoundStream& Write(const void *buffer, wxUint32 len);
bool SetSoundFormat(const wxSoundFormatBase& format);
wxUint32 GetBestSize() const;
protected:
wxUint32 GetReadSize(wxUint32 len) const;
wxUint32 GetWriteSize(wxUint32 len) const;
protected:
ConverterType m_function_out, m_function_in;
// Static temporary buffer
char *m_prebuffer;
wxUint32 m_prebuffer_size;
// Estimated best size to fit into the static buffer
wxUint32 m_best_size;
// Multiplier for IO buffer size
float m_multiplier_in, m_multiplier_out;
};
#endif

View File

@@ -0,0 +1,53 @@
// --------------------------------------------------------------------------
// Name: sndesd.h
// Purpose:
// Date: 08/11/1999
// Author: Guilhem Lavaux <lavaux@easynet.fr> (C) 1999
// CVSID: $Id$
// --------------------------------------------------------------------------
#ifndef _WX_SNDESD_H
#define _WX_SNDESD_H
#ifdef __GNUG__
#pragma interface "sndesd.h"
#endif
#include "wx/defs.h"
#include "wx/string.h"
#include "wx/mmedia/sndbase.h"
#include "wx/mmedia/sndpcm.h"
//
// ESD output class
//
class wxSoundStreamESD : public wxSoundStream {
public:
wxSoundStreamESD(const wxString& hostname = wxT("localhost"));
~wxSoundStreamESD();
wxSoundStream& Read(void *buffer, wxUint32 len);
wxSoundStream& Write(const void *buffer, wxUint32 len);
bool SetSoundFormat(const wxSoundFormatBase& format);
bool StartProduction(int evt);
bool StopProduction();
// You should not call this.
void WakeUpEvt(int evt);
bool QueueFilled() const { return m_q_filled; }
protected:
int m_fd_input, m_fd_output; // ESD fds
int m_tag_input, m_tag_output; // GLIB tags
bool m_esd_stop; // Stream started ?
bool m_esd_ok; // ESD detected
wxString m_hostname; // ESD host
bool m_q_filled; // queue filled
private:
void DetectBest(wxSoundFormatPcm *pcm);
};
#endif

View File

@@ -0,0 +1,125 @@
// --------------------------------------------------------------------------
// Name: sndfile.h
// Purpose:
// Date: 08/11/1999
// Author: Guilhem Lavaux <lavaux@easynet.fr> (C) 1999
// CVSID: $Id$
// --------------------------------------------------------------------------
#ifndef _WX_SNDFILE_H
#define _WX_SNDFILE_H
#include "wx/defs.h"
#include "wx/stream.h"
#include "wx/mmedia/sndbase.h"
#include "wx/mmedia/sndcodec.h"
#define wxSOUND_INFINITE_TIME ((wxUint32)-1)
//
// Codec router class
//
class WXDLLEXPORT wxSoundRouterStream: public wxSoundStreamCodec {
public:
wxSoundRouterStream(wxSoundStream& sndio);
~wxSoundRouterStream();
wxSoundStream& Read(void *buffer, wxUint32 len);
wxSoundStream& Write(const void *buffer, wxUint32 len);
bool SetSoundFormat(const wxSoundFormatBase& format);
bool StartProduction(int evt);
bool StopProduction();
wxUint32 GetBestSize() const;
protected:
wxSoundStream *m_router;
};
typedef enum {
wxSOUND_FILE_STOPPED,
wxSOUND_FILE_PAUSED,
wxSOUND_FILE_PLAYING,
wxSOUND_FILE_RECORDING
} wxSoundFileState;
//
// Base class for file coders/decoders
//
class wxSoundFileStream: public wxSoundStream {
public:
wxSoundFileStream(wxInputStream& stream, wxSoundStream& io_sound);
wxSoundFileStream(wxOutputStream& stream, wxSoundStream& io_sound);
~wxSoundFileStream();
// Usual sound file calls (Play, Stop, ...)
bool Play();
bool Record(wxUint32 time);
bool Stop();
bool Pause();
bool Resume();
// Functions which return the current state
bool IsStopped() const { return m_state == wxSOUND_FILE_STOPPED; }
bool IsPaused() const { return m_state == wxSOUND_FILE_PAUSED; }
// A user should not call these two functions.
// Several things must be done before calling them.
// Users should use Play(), ...
bool StartProduction(int evt);
bool StopProduction();
// These three functions deals with the length, the position in the sound file.
// All the values are expressed in bytes. If you need the values expressed
// in terms of time, you have to use GetSoundFormat().GetTimeFromBytes(...)
wxUint32 GetLength();
wxUint32 GetPosition();
wxUint32 SetPosition(wxUint32 new_position);
// These two functions use the sound format specified by GetSoundFormat().
// All samples must be encoded in that format.
wxSoundStream& Read(void *buffer, wxUint32 len);
wxSoundStream& Write(const void *buffer, wxUint32 len);
// This function set the sound format of the file. !! It must be used only
// when you are in output mode (concerning the file) !! If you are in
// input mode (concerning the file) you can't use this function to modify
// the format of the samples returned by Read() !
// For this action, you must use wxSoundRouterStream applied to wxSoundFileStream.
bool SetSoundFormat(const wxSoundFormatBase& format);
// This function returns the Codec name. This is useful for those who want to build
// a player (But also in some other case).
virtual wxString GetCodecName() const;
// You should use this function to test whether this file codec can read
// the stream you passed to it.
virtual bool CanRead() { return FALSE; }
protected:
wxSoundRouterStream m_codec;
wxSoundStream *m_sndio;
wxInputStream *m_input;
wxOutputStream *m_output;
wxSoundFileState m_state, m_oldstate;
wxUint32 m_length, m_bytes_left;
bool m_prepared;
protected:
virtual bool PrepareToPlay() = 0;
virtual bool PrepareToRecord(wxUint32 time) = 0;
virtual bool FinishRecording() = 0;
virtual bool RepositionStream(wxUint32 position) = 0;
void FinishPreparation(wxUint32 len);
virtual wxUint32 GetData(void *buffer, wxUint32 len) = 0;
virtual wxUint32 PutData(const void *buffer, wxUint32 len) = 0;
void OnSoundEvent(int evt);
};
#endif

View File

@@ -0,0 +1,85 @@
// --------------------------------------------------------------------------
// Name: sndg72x.h
// Purpose:
// Date: 08/26/1999
// Author: Guilhem Lavaux <lavaux@easynet.fr> (C) 1999
// CVSID: $Id$
// --------------------------------------------------------------------------
#ifndef _WX_SNDG72X_H
#define _WX_SNDG72X_H
#ifdef __GNUG__
#pragma interface "sndg72x.h"
#endif
#include "wx/defs.h"
#include "wx/mmedia/sndbase.h"
#include "wx/mmedia/sndcodec.h"
#include "wx/mmedia/sndbase.h"
typedef enum {
wxSOUND_G721,
wxSOUND_G723_24,
wxSOUND_G723_40
} wxSoundG72XType;
// This fixes a bug in Mingw95
typedef struct g72x_state g72state;
//
// G72X format
//
class WXDLLEXPORT wxSoundFormatG72X: public wxSoundFormatBase {
public:
wxSoundFormatG72X();
~wxSoundFormatG72X();
void SetG72XType(wxSoundG72XType type);
wxSoundG72XType GetG72XType() const { return m_g72x_type; }
void SetSampleRate(wxUint32 srate);
wxUint32 GetSampleRate() const;
wxSoundFormatType GetType() const { return wxSOUND_G72X; }
wxSoundFormatBase *Clone() const;
wxUint32 GetTimeFromBytes(wxUint32 bytes) const;
wxUint32 GetBytesFromTime(wxUint32 time) const;
bool operator !=(const wxSoundFormatBase& frmt2) const;
protected:
wxUint32 m_srate;
wxSoundG72XType m_g72x_type;
};
//
// ULAW converter class
//
class WXDLLEXPORT wxSoundRouterStream;
class WXDLLEXPORT wxSoundStreamG72X: public wxSoundStreamCodec {
public:
wxSoundStreamG72X(wxSoundStream& sndio);
~wxSoundStreamG72X();
wxSoundStream& Read(void *buffer, wxUint32 len);
wxSoundStream& Write(const void *buffer, wxUint32 len);
bool SetSoundFormat(const wxSoundFormatBase& format);
protected:
wxSoundRouterStream *m_router;
wxUint8 m_n_bits, m_current_mask, m_current_b_pos, m_current_byte;
wxUint8 *m_io_buffer;
g72state *m_state;
int (*m_coder)(int code, int in_code, struct g72x_state *state);
int (*m_decoder)(int code, int out_code, struct g72x_state *state);
protected:
void PutBits(wxUint8 bits);
wxUint8 GetBits();
};
#endif

View File

@@ -0,0 +1,104 @@
// --------------------------------------------------------------------------
// Name: sndmsad(pcm).h
// Purpose: MS ADPCM codec
// Date: 25/02/2000
// Author: Guilhem Lavaux <lavaux@easynet.fr> (C) 2000
// CVSID: $Id$
// --------------------------------------------------------------------------
#ifndef _WX_SNDMSAD_H
#define _WX_SNDMSAD_H
#ifdef __GNUG__
#pragma interface "sndmsad.h"
#endif
#include "wx/defs.h"
#include "wx/dynarray.h"
#include "wx/mmedia/sndcodec.h"
#include "wx/mmedia/sndbase.h"
WX_DEFINE_EXPORTED_ARRAY(wxInt16, wxMSAdpcmCoeffs);
//
// MSADPCM format
//
class WXDLLEXPORT wxSoundFormatMSAdpcm: public wxSoundFormatBase {
public:
wxSoundFormatMSAdpcm();
~wxSoundFormatMSAdpcm();
void SetSampleRate(wxUint32 srate);
wxUint32 GetSampleRate() const;
void SetCoefs(wxInt16 **coefs, wxUint16 ncoefs, wxUint16 coefs_len);
void GetCoefs(wxInt16 **&coefs, wxUint16& ncoefs,
wxUint16& coefs_len) const;
void SetBlockSize(wxUint16 block_size);
wxUint16 GetBlockSize() const;
void SetChannels(wxUint16 channels);
wxUint16 GetChannels() const;
wxSoundFormatType GetType() const { return wxSOUND_MSADPCM; }
wxSoundFormatBase *Clone() const;
wxUint32 GetTimeFromBytes(wxUint32 bytes) const;
wxUint32 GetBytesFromTime(wxUint32 time) const;
bool operator !=(const wxSoundFormatBase& frmt2) const;
protected:
wxUint32 m_srate, m_nchannels;
wxInt16 **m_coefs;
wxUint16 m_ncoefs, m_coefs_len;
wxUint16 m_block_size;
};
//
// MS ADPCM converter class
//
class WXDLLEXPORT wxSoundRouterStream;
class WXDLLEXPORT wxSoundStreamMSAdpcm: public wxSoundStreamCodec {
public:
wxSoundStreamMSAdpcm(wxSoundStream& sndio);
~wxSoundStreamMSAdpcm();
wxSoundStream& Read(void *buffer, wxUint32 len);
wxSoundStream& Write(const void *buffer, wxUint32 len);
bool SetSoundFormat(const wxSoundFormatBase& format);
wxUint32 GetBestSize() const;
protected:
wxSoundRouterStream *m_router;
typedef struct {
wxInt32 predictor;
wxInt16 samp1;
wxInt16 samp2;
wxInt16 coeff[2];
wxInt32 iDelta;
} AdpcmState;
AdpcmState m_state[1];
bool m_got_header;
bool m_stereo;
wxInt16 **m_coefs;
wxUint16 m_block_size;
wxUint16 m_ncoefs;
wxUint16 m_next_block;
protected:
wxUint32 DecodeMonoADPCM(const void *in_buffer, void *out_buffer,
wxUint32 in_len);
wxUint32 DecodeStereoADPCM(const void *in_buffer, void *out_buffer,
wxUint32 in_len);
void Nibble(wxInt8 nyb,
AdpcmState *state,
wxInt16 **out_buffer);
};
#endif

View File

@@ -0,0 +1,55 @@
// --------------------------------------------------------------------------
// Name: sndoss.h
// Purpose:
// Date: 08/11/1999
// Author: Guilhem Lavaux <lavaux@easynet.fr> (C) 1999
// CVSID: $Id$
// --------------------------------------------------------------------------
#ifndef _WX_SNDOSS_H
#define _WX_SNDOSS_H
#ifdef __GNUG__
#pragma interface "sndoss.h"
#endif
#include "wx/defs.h"
#include "wx/string.h"
#include "wx/mmedia/sndbase.h"
#include "wx/mmedia/sndpcm.h"
//
// OSS output class
//
class WXDLLEXPORT wxSoundStreamOSS : public wxSoundStream {
public:
wxSoundStreamOSS(const wxString& dev_name = wxT("/dev/dsp"));
~wxSoundStreamOSS();
wxSoundStream& Read(void *buffer, wxUint32 len);
wxSoundStream& Write(const void *buffer, wxUint32 len);
wxUint32 GetBestSize() const;
bool SetSoundFormat(const wxSoundFormatBase& format);
bool StartProduction(int evt);
bool StopProduction();
bool QueueFilled() const;
// You should not call this.
void WakeUpEvt(int evt);
protected:
// OSS device
int m_fd;
wxUint32 m_bufsize;
int m_tag;
bool m_oss_stop, m_oss_ok, m_q_filled;
wxString m_devname;
private:
bool SetupFormat(wxSoundFormatPcm *pcm);
void DetectBest(wxSoundFormatPcm *pcm);
};
#endif

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