Compare commits

..

2366 Commits

Author SHA1 Message Date
Bryan Petty
0b2c8aadbb This commit was manufactured by cvs2svn to create tag
'b4_big_updates'.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/tags/b4_big_updates@33056 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-25 20:34:52 +00:00
Robin Dunn
1fed7edaa7 Be a little smarter about converting unicode command-lines to string objects.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33055 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-25 20:34:52 +00:00
Robin Dunn
8bd882eec1 A little cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33054 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-25 20:16:27 +00:00
Robin Dunn
818f944269 Moved some of the linux builds to a new build host
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33053 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-25 19:55:55 +00:00
Robin Dunn
41c48dbbe1 Added GetCount, GetCountRGB, and GetCountColour methods to
wx.ImageHistogram.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33052 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-25 19:54:29 +00:00
Stefan Csomor
28dd2407e1 adding font fallbacks for non existing glyphs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33051 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-25 17:42:16 +00:00
Włodzimierz Skiba
d53e5a41d3 Warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33050 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-25 17:40:31 +00:00
Stefan Csomor
5c3c8676d6 add the mac specific encodings correctly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33049 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-25 17:31:38 +00:00
Robert Roebling
da19de3613 Create wxPopUpWindow hidden initially (like MSW, where
this happens since it derives from wxTLW, I think).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33048 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-25 17:23:08 +00:00
Stefan Csomor
2539aa882d create a true empty string and not a null CFStringRef
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33047 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-25 16:34:55 +00:00
Michael Wetherell
63c4f6da73 configure fix for OS/2 from Dave Parsons and David Webster
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33046 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-25 16:32:45 +00:00
Robert Roebling
7e02769822 Applied wxPopWindow less flicker patch.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33045 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-25 13:40:40 +00:00
Robert Roebling
7b3eaf8fd1 Initialized vars to something in wxToolBarBase.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33044 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-25 13:36:37 +00:00
Vadim Zeitlin
bd87d59d57 reversed disabling of deferred resizing in the last check in
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33043 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-25 11:45:24 +00:00
Vadim Zeitlin
7e068925aa fixed child window resizing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33042 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-25 11:44:09 +00:00
Vadim Zeitlin
a7daa76eed more cosmetic changes: type-safe Connect()s, removed unnecessary ifdefs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33041 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-25 11:04:54 +00:00
Michael Wetherell
8019e60483 Fix wxZipInputStream::SeekI (returns wxInvalidOffset before first read)
patch 1169934 by Artur Kornacki


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33040 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 23:48:06 +00:00
Vadim Zeitlin
67631cee52 don't call SetSize() twice in ResizeChild(), this is useless
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33039 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 23:35:42 +00:00
Vadim Zeitlin
a12546634d fix handling Alt-key events in wxComboBox
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33038 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 22:29:30 +00:00
Robin Dunn
f9a5ba047c Delay some of the cascading resizes to work around a bug with defered
resizes in wxMSW.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33037 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 20:37:48 +00:00
Włodzimierz Skiba
e443232d2e Warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33036 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 20:07:00 +00:00
Włodzimierz Skiba
489f6cf713 Fix for ambiguities which happen in STL=1 mode under DigitalMars C++.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33035 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 20:01:55 +00:00
Włodzimierz Skiba
7c11806499 winundef.h serves for other compilators too with STL turned on.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33034 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 17:51:57 +00:00
Robin Dunn
3837a853c9 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33033 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 17:51:57 +00:00
Włodzimierz Skiba
ddc80eb4eb Incomplete wxUSE_* warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33032 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 17:49:56 +00:00
Robin Dunn
396fb5091d reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33031 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 17:42:48 +00:00
Robin Dunn
7e24348eb8 Applied patch [ 1170019 ] Fix for wxGTK drop button in datectlg.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33030 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 17:34:42 +00:00
Robin Dunn
6be3205071 version number update
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33029 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 16:51:49 +00:00
Robin Dunn
38260cced8 docstring update
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33028 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 16:48:04 +00:00
Robin Dunn
c8b67ceba6 Added IsFalse()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33027 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 16:47:40 +00:00
Robin Dunn
3261b933ad Tile() now has a parameter
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33026 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 16:47:23 +00:00
Robin Dunn
dd898dd8bd Only use locale.getdefaultlocale()[1] if sys.getdefaultencoding() is
still "ascii"


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33025 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 16:45:57 +00:00
Robin Dunn
6c56259a08 use wxEventType instead of enum
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33024 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 16:44:03 +00:00
Robin Dunn
8a272d3db1 copy *.py files too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33023 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 16:42:40 +00:00
Robin Dunn
89252543a5 fix string substitution
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33022 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 16:41:57 +00:00
Chris Elliott
31f658e477 remove erroneous comment
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33021 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 13:23:53 +00:00
Chris Elliott
4ab2824cc6 fix icoinse bug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33020 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 13:21:12 +00:00
Vadim Zeitlin
3a6bdcad42 cleanup/reformatting
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33019 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 10:44:11 +00:00
Julian Smart
102d46f3d6 version.rc fix regeneration
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33018 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 10:29:47 +00:00
Vadim Zeitlin
0ed0bcc873 cleanup: define events correctly, define type-safe event macros, reformatted
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33017 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 10:27:27 +00:00
Julian Smart
85d8df29aa Switch deferred sizing off by default
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33016 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 09:28:51 +00:00
Vadim Zeitlin
0832aaafb8 file dialog with wxMULTIPLE style still doesn't allow to select multiple files but at least it does return the single file which it does allow to select now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33015 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 02:49:20 +00:00
Vadim Zeitlin
01b92baa9c lame temporary "fix" for file names which are not UTF-8 encoded
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33014 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 02:42:15 +00:00
Vadim Zeitlin
f5a1953b34 added wxConvFileName which is a variable, not define as wxConvFile; added comments explaining what different wxConvXXXs are for
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33013 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 00:59:08 +00:00
Vadim Zeitlin
31f1a50e61 don't forget cards drawn on the canvas; general cleanup (patch 1164209)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33012 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 00:40:12 +00:00
Vadim Zeitlin
bd019edddc removed pragma interface/implementation (useless and they were in wrong order provoking gcc 3.4 warning)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33011 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 00:37:19 +00:00
Vadim Zeitlin
4c85ab7569 added wxRendererNative::DrawDropArrow (patch 1166596)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33010 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-24 00:22:04 +00:00
Vadim Zeitlin
ddf14c1346 src/common/wxchar.cpps/wxConvLocal/wxConvLibs/g as otherwise we may fail to convert the result of libc functions (and, presumably, they might not accept what we give them on input) in Unicode build, see patch 1168341
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33009 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 23:49:36 +00:00
Vadim Zeitlin
9348da2fc0 fixed broken wxCtime() implementation (wrong buffer size count, wrong conversion)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33008 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 23:45:45 +00:00
Vadim Zeitlin
0f00be4b33 Wait() should now return correct exit code even if thread state was EXITED (replaces patch 1166425)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33007 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 21:29:04 +00:00
Vadim Zeitlin
7dccdf8120 simplifications of checks for themed-background sysopt and compilation fixes for wxUSE_UXTHEME == 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33006 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 21:11:09 +00:00
Vadim Zeitlin
de359565ae adjust the rectangle before calling DrawThemeBackground() (patch 1158282)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33005 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 20:59:00 +00:00
Vadim Zeitlin
8de6b9bbb8 added IsFalse() to simplify code doing HasOption(very-long-option-name) && !GetOptionInt(the-same-very-long-option-name) elsewhere
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 20:48:50 +00:00
Vadim Zeitlin
9ddb394878 use GTK_WRAP_WORD instead of GTK_WRAP_WORD_CHAR which is not defined in older GTK versions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33003 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 20:04:31 +00:00
Robin Dunn
62075bca1f Fix wxRTTI for wxGnomePrintDC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33002 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 17:54:39 +00:00
Robin Dunn
7cc52cd8dd Initialize m_privData before doign the assignment
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33001 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 17:53:43 +00:00
Julian Smart
8f3844fb86 Further srcdir -> top_srcdir corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33000 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 16:45:59 +00:00
Julian Smart
e395058687 use default position, not 0, 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32999 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 13:43:39 +00:00
Julian Smart
12124149fe Use top_srcdir for finding version.rc
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32998 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 13:11:08 +00:00
Julian Smart
8c9f8f91cd Updated version to 2.5.5
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32997 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 13:05:13 +00:00
Julian Smart
b388e8cdec Elliptic arc fix for getting bounds
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32996 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 11:36:04 +00:00
Julian Smart
6f63513785 Assert fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32995 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 11:31:03 +00:00
Julian Smart
73680834a6 wxUSE_DEPRECATED set to 0 by default
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32994 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 11:28:50 +00:00
David Elliott
4508c2b01b GCC 4.0 (Apple 4059) is a little bit pickier than 3.3.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 05:51:15 +00:00
David Elliott
acd3dca8bb Comment out extraneous include wx/wxprec.h (part of other commented out stuff)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32992 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 05:48:42 +00:00
David Elliott
3a5910cbe9 Blind bug fix to bug reported by Angel Kry.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32991 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 05:12:12 +00:00
Vadim Zeitlin
628c219e64 wxTextCtrl with wxTE_RICH2 style now uses RichEdit 4.1 if available (replaces patch 1160809)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32990 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 00:18:44 +00:00
Vadim Zeitlin
8397cab4da clear m_aTypes array in Clear() as well (patch 1165866)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32989 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-23 00:17:49 +00:00
Julian Smart
05d344d2ef We need wxUSE_COMMON_DIALOGS for PPC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32988 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-22 21:02:42 +00:00
Julian Smart
f686d43ee0 Removed unreadable/out of date guidelines.txt (any wisdom can go into the wxWinCE topic
in the manual instead)
Added note about builds for different SDKs using same lib names


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32987 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-22 20:56:16 +00:00
Vadim Zeitlin
e586908a65 corrected GetAppName() link
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32986 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-22 20:17:53 +00:00
Vadim Zeitlin
df1b5a2a9f added debugrpt sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32985 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-22 20:15:51 +00:00
Włodzimierz Skiba
660296aa90 Wrap <commdlgs.h> as <commctls.h>. Required makefiles rebuilded.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32984 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-22 19:39:54 +00:00
Włodzimierz Skiba
f5c479ccfc Build fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32983 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-22 19:28:37 +00:00
Julian Smart
b875c8a8fc Include frame.h to get wxFRAME_SHAPED
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32982 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-22 15:02:57 +00:00
Włodzimierz Skiba
438eb6502b Fix for accessing environment variable with Watcom format.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32981 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-22 12:59:41 +00:00
Julian Smart
7b4a652a8b DEBUGREPORT
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32980 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-22 10:38:26 +00:00
Julian Smart
102c045464 Do the right thing for Smartphone if creating button sizer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32979 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-22 10:34:35 +00:00
Julian Smart
a33685f4b8 Don't use debug report under CE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-22 09:41:21 +00:00
Julian Smart
26ce51716a wxUSE_COMMON_DIALOGS must be 0 for eVC++ 3
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32977 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-22 08:15:28 +00:00
Vadim Zeitlin
e6994168fe more about GetRect() (patch 1158730)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32976 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 23:49:46 +00:00
Vadim Zeitlin
28fad9e402 fixed unused function warning in GTK+ 2 compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32975 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 23:46:58 +00:00
Vadim Zeitlin
865bb3251e GTK+ callbacks must have C linkage (patch 1157384)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32974 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 23:42:26 +00:00
Vadim Zeitlin
7d4813a0c1 speed up SetColumnWidth() by caching max column width (patch 1156866)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 23:35:53 +00:00
Vadim Zeitlin
e99b22a133 fixed wxTE_WORDWRAP description; wxTE_LINEWRAP supported in wxGTK2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32972 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 23:25:38 +00:00
Vadim Zeitlin
c211082373 added support for wxTE_LINEWRAP; use GTK_WRAP_WORD_CHAR for wxTE_WORDWRAP instead of GTK_WRAP_WORD (parts of patch 1156507)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32971 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 23:23:46 +00:00
Vadim Zeitlin
44353523d8 document (and check for it with assert) that wxGetKeyState(WXK_[LMR]BUTTON) doesn't work (patch 1156279)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32970 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 23:05:16 +00:00
Vadim Zeitlin
ab46ac0e4b support wxFRAME_SHAPED, it works for dialogs too (patch 1153757)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32969 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 22:57:15 +00:00
Vadim Zeitlin
517e41dbfb use WXDLLIMPEXP_FL with event types declarations (patch 1076516)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32968 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 22:52:59 +00:00
Vadim Zeitlin
f5b3b37ede remove odbc lib to prevent rpm errors about unpackaged files (patch 1151783)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32967 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 22:46:37 +00:00
Julian Smart
43499aa4a1 Adapt lib to eVC++ 3/4/PPC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32966 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 22:18:25 +00:00
Vadim Zeitlin
f014d4bf3e fixed library order (important for static linking under Unix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32965 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 20:24:06 +00:00
Włodzimierz Skiba
3baa26624a More wxWidgets in wxPoem demo code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32964 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 20:22:39 +00:00
Vadim Zeitlin
a603d77ec1 build debugrpt sample if wxUSE_DEBUGREPORT
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32963 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 20:21:04 +00:00
Vadim Zeitlin
1635893246 define USE_QA so that qa library is built
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32962 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 19:36:04 +00:00
Vadim Zeitlin
478cde3220 fixed Context_Current spelling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32961 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 19:27:32 +00:00
Vadim Zeitlin
af1276806b added links to wxDebugReport
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32960 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 18:40:47 +00:00
Vadim Zeitlin
4e0e7d3935 documented wxDebugReport and related classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32959 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 18:28:27 +00:00
Włodzimierz Skiba
9690a43935 Sanity check.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32958 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 17:30:10 +00:00
Włodzimierz Skiba
6f0d2ceef5 Dummy warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32957 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 17:29:16 +00:00
Włodzimierz Skiba
b552060aaf 32 bit range for wxSlider (#1166390).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32956 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 17:25:55 +00:00
Włodzimierz Skiba
baa1771049 Check for empty page location to avoid crash in lack of selected book (solves bug #1121381).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32955 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 16:09:04 +00:00
Vadim Zeitlin
4ed30bab75 fixed path to wx/debugrpt.h header (had extra include subdir)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32954 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 16:06:47 +00:00
Vadim Zeitlin
5301d1f7aa fixed warnings about possibly uninitialized variables; commented non trivial piece of code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32953 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 12:45:24 +00:00
Vadim Zeitlin
ba30efbc53 unreachable code warning fix (Unicode build)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32952 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 12:44:28 +00:00
Vadim Zeitlin
0d97c09023 added orient parameter to wxMDIParentFrame::Tile()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32951 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 12:27:49 +00:00
Vadim Zeitlin
3b880f293e another compilation fix after wxMenuBar ctor patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32950 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 11:29:40 +00:00
Vadim Zeitlin
514ee25088 fixed SetColumnWidth() in wxLC_LIST mode (set column to 0, not -1)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32949 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 10:36:59 +00:00
Vadim Zeitlin
6671c68b08 regenerated after qa lib changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32948 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 10:36:27 +00:00
Vadim Zeitlin
c0e20ab239 added qa dll
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32947 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 10:34:10 +00:00
Vadim Zeitlin
4fce94faca generated makefiles after qa library creation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32946 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 01:07:00 +00:00
Vadim Zeitlin
0978fcb3d6 set wxUSE_DEBUGREPORT to 1 by default again
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32945 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 00:51:20 +00:00
Vadim Zeitlin
cde948b4db mention which files should be changed when adding a new library in a few places where this was less clear
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 00:15:29 +00:00
Vadim Zeitlin
d40a56d0db added closing parenthesis inside comment, no real changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 00:14:50 +00:00
Vadim Zeitlin
61639efb66 added qa library (currently consisting of wxDebugReport and related classes only); moved debugrpt.* files there
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-21 00:11:06 +00:00
Vadim Zeitlin
b7e4c6681d define wxNO_RTTI/EXCEPTIONS/THREADS if corresponding USE_XXX is set to 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32941 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-20 22:08:19 +00:00
Mattia Barbon
ca7dc59aeb Fix wxFileConf crash demonstrated by the 'DeleteLastGroup'
unit test.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-20 20:08:46 +00:00
Julian Smart
f4dea58dc1 Updated readme
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-20 19:35:36 +00:00
David Webster
0d598bae33 Fixes compile warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-20 18:51:53 +00:00
Vadim Zeitlin
686a3ee080 Seek(-1, mode) should work instead of giving an error if mode != wxFromStart
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32937 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-20 18:48:58 +00:00
Julian Smart
d0eba44dcb Compilo fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32936 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-20 17:12:39 +00:00
Vadim Zeitlin
ce76f779c6 added wxString ctor from std::string (inside #ifdef wxUSE_STD_STRING); removed pragma interface/implementation which force all inline functions to be defined in string.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32935 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-20 15:42:41 +00:00
Vadim Zeitlin
05c3f0fc73 oops, removed duplicate SetIcons[s]() added in last commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-20 15:10:30 +00:00
Vadim Zeitlin
d11e8786ed wxMDIChildFrame::Maximize() should have default value for its argument just as wxFrame does; override other functions which don't make sense for wxGTK implementation of MDI
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32933 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-20 15:04:27 +00:00
Julian Smart
4012b958f2 Fixes for WinCE toolbar
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32932 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-20 12:02:55 +00:00
Julian Smart
86231bdca2 Removed spurious file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32931 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-20 11:58:20 +00:00
Julian Smart
422d719d54 Fixes for WinCE toolbar
Don't disable wxFileConfig for WinCE
Don't disable common dialogs for WinCE


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32930 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-20 11:54:26 +00:00
Julian Smart
503602dfe7 Fix wxFileConfig for WinCE
Provide standard WinCE Windows path for wxStandardPaths


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32929 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-20 11:52:33 +00:00
Vadim Zeitlin
a6f96659c3 compilation fix after last commit (missing semicolon added)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32928 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-20 11:01:08 +00:00
Mattia Barbon
fb52f6cf85 Allow building with GCC 2.95.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 23:11:03 +00:00
Mattia Barbon
26531700c7 Correct compilation conditions for wxURL::SetProxy.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32926 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 23:09:31 +00:00
Mattia Barbon
c27bcbd5a7 Use the correct WXDLLEXPORT declaration.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32925 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 23:07:02 +00:00
Mattia Barbon
eab489c8d3 Avoid redefining _GNU_SOURCE.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32924 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 23:04:27 +00:00
Robin Dunn
63e2147c8b Fixed bug #1163384. Moved the code that handles activating the cell
editors to a EVT_CHAR event handler.  This is done so the character
inserted into the editor will be the "cooked" char value (including
accented or composed keys) rather than the raw code provided by the
EVT_KEY_DOWN.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32923 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 22:33:17 +00:00
Robin Dunn
88c6b2812a reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32922 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 22:21:07 +00:00
Robin Dunn
7b85d63014 Turn off the expando-matic rubber band thing for mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32921 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 22:03:08 +00:00
Robin Dunn
d82c254280 Better capture of unicode character events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32920 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 22:02:25 +00:00
Robin Dunn
f1e759d755 docstring update
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32919 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 21:55:11 +00:00
Robin Dunn
4fee07f2ff wxTE_CAPITALIZE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32918 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 21:54:25 +00:00
Robin Dunn
2d672d179e wxEVT_HIBERNATE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32917 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 21:53:38 +00:00
Robin Dunn
08dcfb9266 Add some new WXK codes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 21:53:17 +00:00
Robin Dunn
0d5b83dc3c Ensure that the encoding returned from locale.getdefaultlocale() is
valid, default to sys.getdefaultencoding() if not.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32915 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 21:52:49 +00:00
Robin Dunn
38f7d8013a Call evt.Skip by default
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32914 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 21:14:52 +00:00
Julian Smart
ea9aa80e7c Fixed toolbar bitmap bug introduced by deriving wxToolMenuBar
from wxToolBar
Documented PPC installation


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32913 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 19:51:51 +00:00
Julian Smart
199da884d7 Added scripts to demonstrate how to package a PocketPC app
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32912 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 19:45:57 +00:00
Vadim Zeitlin
3eeb7e105e added a test for/example of assert dialog box
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32911 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 16:14:58 +00:00
Vadim Zeitlin
6c8f8d923a show call stack in the assert dialog box
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32910 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 16:14:19 +00:00
Vadim Zeitlin
6ca154fcc1 removed C++ comment added by last commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32909 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 15:44:56 +00:00
Julian Smart
ec5f0c2412 Added wxDialog::GetToolBar for PocketPC
Added note about creating installers for PPC


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32908 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 12:06:56 +00:00
Robin Dunn
83c84d5908 Bumped subrelease number
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32907 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 00:38:46 +00:00
Julian Smart
f7eaa62f23 (Flickery) fix for droppings when there are no notebook pages
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32906 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 21:38:09 +00:00
Ryan Norton
f8fe8a9e82 Fix recursiveness on error...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32905 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 19:57:54 +00:00
Ryan Norton
16461bbc99 * Turn off by default...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32904 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 19:46:53 +00:00
Ryan Norton
52fe43410e * Quicktime lib no longer needed....
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32903 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 19:45:31 +00:00
Ryan Norton
d7a9c895d5 * Dynamically load all quicktime stuff using a version of Robert Roeblings wxDL_ macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32902 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 19:44:34 +00:00
Włodzimierz Skiba
682214d5c6 Fixed bug #1022383: 'several ComboBoxes appear selected'
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32901 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 19:32:20 +00:00
Julian Smart
b0dd9c00ab Expanded wxSystemOptions docs, documented wxTE_CAPITALIZE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32900 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 19:20:33 +00:00
Ryan Norton
7d084e4d63 * Fix refreshing bug with control not showing up intially and asserting on resize
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32899 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 17:34:46 +00:00
Vadim Zeitlin
5493c0ce27 include extern variables declarations in the tags file too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32898 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 16:51:03 +00:00
Vadim Zeitlin
013984337a restored const operator[]s for the compilers which need them
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32897 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 15:27:14 +00:00
Vadim Zeitlin
9994e2daa0 continue with generating EVT_CONTEXT_MENU if EVT_TREE_ITEM_MENU not handled
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32896 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 15:16:22 +00:00
Vadim Zeitlin
ef46ef23cb added EVT_TREE_ITEM_MENU test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32895 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 15:13:41 +00:00
Vadim Zeitlin
bee09d36e2 avoid asserts from calling isprint(c) with non ASCII c
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 15:03:14 +00:00
Julian Smart
afafd942a1 Added WXK_SPECIAL... keycodes for special hardware buttons
Made (Un)RegisterHotKey WinCE-aware.
Added wxEVT_HIBERNATE event.
Now fakes wxEVT_ACTIVATE_APP to be symmetrical with wxEVT_HIBERNATE.
Added wxTE_CAPITALIZE for CAPEDIT controls.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32893 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 14:26:57 +00:00
Vadim Zeitlin
87a39e3b55 compilation fix after last commit (missing semicolon added)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32892 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 14:07:22 +00:00
Ryan Norton
14af6816d0 * Update for new event handler stuff
* Update notebook page text on file change
* Some other misc. cleanups (remove strmiids.lib dependancy, cleanup enums, etc.)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32891 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 11:50:18 +00:00
Ryan Norton
4153a503ba Update for new event handler stuff
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32890 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 11:46:52 +00:00
Ryan Norton
a2a444e3a5 Reworked directshow implementation.
* Removes the strmiids.lib dependancy
* Uses the direct quartz automation interface, thus removing the dshow.h header dependancy
* Let COM handle loading quartz.dll


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32889 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 11:04:32 +00:00
Julian Smart
26f26e06c4 Script updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32888 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 10:11:37 +00:00
Julian Smart
df31591376 Add sample icon
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32887 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 10:05:27 +00:00
Julian Smart
598152189f Use sample icon, and title correction
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32886 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 09:46:49 +00:00
Julian Smart
18922659eb Use sample icon
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 09:44:42 +00:00
Julian Smart
8ddd9176a4 Doc tweaks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 09:33:00 +00:00
Julian Smart
9eab353ce3 SetSashSize doc'ed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32883 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 09:31:19 +00:00
Dimitri Schoolwerth
d2103c8ca5 fixed signed/unsigned mismatch warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32881 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-18 00:16:53 +00:00
Vadim Zeitlin
294ea16de3 implemented wxMenuBar ctor taking array of menus/titles for all ports; added optional flags argument to it (patch 1162726)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32880 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 23:45:24 +00:00
Vadim Zeitlin
e71693c340 return if abort dialog couldn't be created (part of patch 1160117)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32879 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 23:24:30 +00:00
Vadim Zeitlin
e24b680c59 fixed bug due to missing break in GetColourFromGTKWidget() (part of patch 1160117)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32878 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 23:23:57 +00:00
Vadim Zeitlin
7d3e806d86 missing break in ParseFormat() (part of patch 1160117)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32877 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 23:23:15 +00:00
Vadim Zeitlin
60d8e88654 iterator methods fixes (patch 1164808)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32876 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 23:19:13 +00:00
Vadim Zeitlin
af80bc9294 fixed wxDateTime::SetToWeekDayInSameWeek(Sun, Monday_First)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32875 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 23:11:00 +00:00
Vadim Zeitlin
0356c2597e revert togglable tools to previous state if the change was vetoed by OnLeftClick()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32874 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 22:58:31 +00:00
Vadim Zeitlin
b618daa350 removed #ifdef __WXMAC__ as the code is now the same in both branches anyhow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32873 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 22:39:27 +00:00
Robin Dunn
0b634ddd08 Use Update() instead of yielding and waiting for the update to happen there.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32872 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 22:35:53 +00:00
Vadim Zeitlin
c20ab85b60 GetVirtualSize() returns client size values for the m_virtualSize components which are not set (i.e. allow setting only one component of m_virtualSize instead of either none or both)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32871 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 22:29:20 +00:00
Vadim Zeitlin
f18f464cba don't set virtual size of the window to (0, 0) if scrollbars are removed from it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32870 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 22:27:28 +00:00
Vadim Zeitlin
e731c9ada2 removed just added UnsetVirtualSize(), it's not needed finally
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32869 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 22:19:50 +00:00
Vadim Zeitlin
0bb405ac54 added UnsetVirtualSize()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32868 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 22:18:16 +00:00
Vadim Zeitlin
a66faa07e5 removed commented out calls to ReleaseMouse() (no real changes)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32867 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 21:38:19 +00:00
Julian Smart
844adaa47a Provided GetBestVirtualSize and DoGetBestSize implementations for
generic and GTK+ wxScrolledWindow.

wxWindowBase::DoGetBestSize was returning a virtual size if there were child
controls, which was then used to set the scrolled window actual size.
Similarly, wxWindowBase::GetBestVirtualSize was returning
the actual window size; now we return the virtual size
for dimensions that have scrolling (e.g. vertical scrolling
direction), or the minimum/actual size for those that don't
(e.g. the maximum control width if there is no horizontal
scrolling).

This allows the scrolled window to be properly sized, whereas
before it would start off at the virtual size (giving
enormous layouts).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32866 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 21:21:45 +00:00
Vadim Zeitlin
50c06297bd added wxSizerSpacer and modified wxSizerItem to contain a pointer to either
wxWindow, wxSizer or wxSizerSpacer (instead of containing either a pointer or
just wxSize for spacers) and implement IsShown() and Show() by forwarding it
to the appropriate pointer: this means that now you can directly hide/show
windows/sizers/spacers instead of having to pass by containing sizers
Show(child) method


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32865 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 21:17:38 +00:00
Vadim Zeitlin
9d9ad67384 removed const operator[]s (should fix 1162115)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32864 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 20:16:45 +00:00
David Elliott
0e6fa1d908 Fixed MW and XLC tests when using -C (cache) option with configure.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32863 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 17:47:33 +00:00
Włodzimierz Skiba
27b2dd53f6 Fixed strange situation when we had wxPathExists and wxDirExists with the same finctionality. Using wxPathExists instead wxFileExists (fixes bug #865628). Minor source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32862 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 17:46:32 +00:00
David Elliott
fbb7dfffb0 Updated configure and aclocal.m4 for new 0.1.8 Bakefile on account of
the recent commit to autoconf_inc.m4 using Bakefile 0.1.8 (CVS).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32861 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 17:38:51 +00:00
Julian Smart
7acf6a921e Small fixes for compiling Cygwin (with --disable-sockets)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32860 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 12:43:15 +00:00
Julian Smart
1f867767ac Correct compilo for non-WinCE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32859 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 09:54:20 +00:00
Julian Smart
e61ec95a3c stopwatch.h needed for wxGetLocalTimeMillis
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32858 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 09:10:35 +00:00
Jouk Jansen
eaa6f9ad2b Committing in .
setup.h_vms : updated VMS configuration
 msgdlg.cpp : corrected include file path

 Modified Files:
 	wxWidgets/setup.h_vms wxWidgets/src/motif/msgdlg.cpp
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32857 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-17 08:05:04 +00:00
Robin Dunn
82479312aa Drop the "rc"
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32855 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-16 22:54:41 +00:00
Robin Dunn
8da2fe32f9 The --enable-rpath configure option doesn't work the same way it did
before.  Work around that by specifying the rpath option myself on the
setup.py command-line.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32854 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-16 22:53:59 +00:00
Julian Smart
a9102b3671 Implemented PocketPC menubar/toolbar as wxToolMenuBar derived
from wxToolBar, solving the problem of how normal toolbars
can co-exist with combined ones. Tidied up WinCE toolbar code.
Implemented wxToolBar as 'dummy' toolbar under Smartphone.
Dialogs now show an empty menubar to hide inactive one
underneath.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32853 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-16 17:51:41 +00:00
Włodzimierz Skiba
2ecf902bc8 Use defs.h (and automatically setup.h and chkconf.h) before first wxUSE_* check (bug #1164141).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32852 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-16 16:18:31 +00:00
Kevin Hock
3e275c2d1d Unlike the preferences item which should only be enabled if it exists and is enabled, the quit item should be enabled unless it both exists and is disabled, otherwise Quit will not be enabled unless the application specifically adds wxID_EXIT. This should fix David's bug but still retain the old functionality. [ modified previously committed patch 1160343 ]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32851 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-16 16:03:17 +00:00
Julian Smart
9f995cfd1c Not forgetting PalmOS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32850 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-16 10:20:20 +00:00
Julian Smart
c75d190a0a Added wxWINDOWS_POCKETPC, wxWINDOWS_SMARTPHONE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32849 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-16 10:18:13 +00:00
Julian Smart
ef826e2496 Removed checklistbox test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32848 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-16 09:09:01 +00:00
Kevin Hock
c2cb80c865 Allow using negative angles with DrawRotatedText. [ patch 1162771 ]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32847 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-16 05:31:13 +00:00
Kevin Hock
e9626c1b1f Quit application menu item needs special handling like the Preferences item. [ patch 1160343 ]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32846 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-16 05:16:55 +00:00
Kevin Hock
e400d27dcc Added comments explaining more about the changes in my last commit. Also, removed __DARWIN__ check for enabling CONNECTION events, always wait to enable them until after the connect() call.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32845 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-16 05:11:37 +00:00
Vadim Zeitlin
88783bc499 set wxUSE_DEBUGREPORT to 0 by default; fixed a couple of typos
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32844 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-15 23:20:47 +00:00
Julian Smart
280e0cc4fe UPdated notes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32843 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-15 21:51:14 +00:00
Julian Smart
5292c055a6 Chose different set of buttons for toolbar
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32842 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-15 21:50:22 +00:00
Julian Smart
ac1f013c40 Fixed wxToolBar for WinCE so normal bitmaps can be used;
no longer uses standard buttons.
wxToolBar under Smartphone no longer tries to create
buttons since a toolbar makes no sense on this platform.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32841 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-15 21:48:20 +00:00
Julian Smart
445511b3cd Regenerated files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32840 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-15 21:22:24 +00:00
Julian Smart
9034c5906c WinCE doesn't have wxCheckListBox, and doesn't like wxRmDir
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32839 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-15 21:18:06 +00:00
Włodzimierz Skiba
53bc349182 SetLeft|RightMenu is supposed to be API for all smartphones. TODO comment.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32838 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-15 21:10:18 +00:00
Julian Smart
3be8026d1d Fixed wxPropertySheetDialog for Smartphone
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32837 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-15 20:55:59 +00:00
Włodzimierz Skiba
c7bde65d2b More wxWidgets in poem demo.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32836 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-15 20:33:42 +00:00
Julian Smart
fc3bb38313 Fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32835 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-15 17:40:42 +00:00
Julian Smart
658070d130 No zero id
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32834 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-15 11:56:58 +00:00
Julian Smart
525bc4fc77 Don't start ids at zero
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32833 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-15 11:29:14 +00:00
Julian Smart
3c9287bbb4 Added wxPropertySheetDialog for implementing settings dialogs
in the appropriate way on small devices and desktop platforms
(abstracting is the only way to unify the API)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32832 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 22:40:44 +00:00
Vadim Zeitlin
d44444105b simplified code (removed 2 unnecessary tests) in CalcMin(), no real changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32831 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 22:26:56 +00:00
Julian Smart
23b1018f14 Improve standard button spacing on Windows
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32830 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 22:24:09 +00:00
Mattia Barbon
543ab300e7 Remove wrong clasing bracket.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32829 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 21:55:29 +00:00
Mattia Barbon
168da56b8f Blind fix for VC6 compilation when wxUSE_STL == 1.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32828 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 21:52:57 +00:00
Vadim Zeitlin
1e1ef90060 disable debug report for now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32827 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 20:40:24 +00:00
Włodzimierz Skiba
ba9bbf1388 'Dummy' warning fixes (might be used uninitialized).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32826 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 20:00:42 +00:00
Włodzimierz Skiba
6ca3a32256 Unicode fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32825 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 19:52:52 +00:00
Julian Smart
b669780b33 Updated symbols
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32824 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 19:13:45 +00:00
Julian Smart
9ceeecb94e Frames have Ctrl+Q accelerator set automatically, as per the
PocketPC guidelines
Documented issues in manual under wxWinCE topic.
wxDEFAULT_DIALOG_STYLES rationalised so we can make use of
styles such as wxCLOSE_BOX in future (OK button on titlebar)
Added Set/GetAffirmativeId and DoOK so that titlebar OK button
can be customised


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32823 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 17:15:06 +00:00
Julian Smart
f8a10a3d2b Don't call Layout
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32822 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 17:10:32 +00:00
Roman Rolinsky
364a2be07a README scrolling fix
fix for Mac (opts inside try/except)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32821 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 17:09:40 +00:00
Robin Dunn
30a2241127 If the parents are nothing but a panel and a frame then
MSWGetBgBrushForChild will still return NULL.  Fallback to a solid
background colour in this case.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32820 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 17:09:00 +00:00
Julian Smart
e5c990b3a6 More PocketPC adaptations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32819 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 16:37:02 +00:00
Vadim Zeitlin
905372991f made GetDataDir() return the directory where the program is installed under MSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32818 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 16:05:52 +00:00
Julian Smart
aaf803e981 Define Ctrl+Q accelerator on PocketPC for quitting the application, as
per guidelines


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32817 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 14:50:18 +00:00
George Tasker
f6a9f9ad28 Added support (barely tested) for MaxDB from MySQL
Added dbmsFutureX to the database enumerations to allow for adding support for new databases between releases of wxWidgets


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32816 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 14:41:12 +00:00
George Tasker
2889677e28 Fixed unicode builds that were not on MSW
Added dbmsFutureX to the database enumerations to allow for adding support for new databases between releases of wxWidgets


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32815 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 14:40:05 +00:00
Kevin Hock
4845680170 Removed unneeded semicolon after DECLARE_DYNAMIC_CLASS [ bug 1162938 ]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32814 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 14:38:48 +00:00
Dimitri Schoolwerth
720afa24b0 refactored scrollbar creation code to use CreateControl, MSWCreateControl, and MSWGetStyle: fixes default colour inheriting from parent and allows the scrollbar to be hidden initially (with 2-step creation)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32813 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 13:31:11 +00:00
Włodzimierz Skiba
a376ab3039 Incomplete setup build fix (wxPalmOS).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32812 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 10:19:26 +00:00
Chris Elliott
0d727861fe fix bug which was trashing gifs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32811 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 09:08:50 +00:00
David Elliott
1d1af5eaf0 Make wxCocoa compile on Tiger.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32810 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 04:47:28 +00:00
Ryan Norton
e605541c36 "test" for testing a [fixed] proxy crash (from last commit)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32809 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 03:33:50 +00:00
David Elliott
7be8c821b7 Dammit, try it again this time actually removing it instead of adding it
again (forgot to give patch the -R).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32808 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 02:15:41 +00:00
David Elliott
b35bb76271 Reverted 1.32. This breaks my Tiger builds which is part of the reason
I reverted the last incarnation of this in the first place!!!


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32807 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 02:12:15 +00:00
David Elliott
869719f581 Rebaked (changes to proper WXMAC/NOTWXMAC handling from the other day)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32806 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 01:45:36 +00:00
David Elliott
08cd454f76 Update to include recent acinclude.m4 changes.
Yes, they aren't any longer used by configure but they're still in
acinclude.m4 so now they're here too.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32805 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 01:42:56 +00:00
Michael Wetherell
74fe675195 The DLL version of Watcom's C runtime doesn't have fileno, but the static
version does


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32804 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 01:24:40 +00:00
Michael Wetherell
78a94517c0 Temporary fix for Watcom link error 'fileno'
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32803 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-13 21:01:37 +00:00
Robert Roebling
f893066ba1 Query for "default_border" not "default_outside_border" since
that is what is done in the gtk code.
  Correct wrong pos in scrolled window.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32802 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-13 18:57:10 +00:00
Michael Wetherell
e0357c0234 Add wxTempFileOutputStream, patch 1152042 by Stas Sergeev
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32801 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-13 18:23:20 +00:00
Julian Smart
03d776096f Added wxNB_FLAT for WinCE property sheet tabs
Titlebar OK button on PocketPC now looks for OK, Cancel, Close buttons.
Dialog size now takes into account SIP or menubar.
Panels more naturally white on PocketPC.
wxDIALOG_EX_CONTEXTHELP ignored on WinCE since it interferes
with correct titlebar style.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32800 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-13 17:46:23 +00:00
Julian Smart
15025f06ae PocketPC adaptations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32799 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-13 17:32:40 +00:00
Julian Smart
b554cf6371 Added wxNB_FLAT for WinCE property sheet tabs
Titlebar OK button on PocketPC now looks for OK, Cancel, Close buttons.
Dialog size now takes into account SIP or menubar.
Panels more naturally white on PocketPC.
wxDIALOG_EX_CONTEXTHELP ignored on WinCE since it interferes
with correct titlebar style.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32798 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-13 17:31:23 +00:00
Mattia Barbon
30bda36c48 Fixed compilation for GCC 3.4 when wxUSE_STL == 1.
Should be compatible with VC6.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32797 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-13 17:08:43 +00:00
Michael Wetherell
e126517457 Add wxTempFileOutputStream
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32796 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-13 16:20:51 +00:00
Włodzimierz Skiba
5a053c22d8 Better margin on Smartphone.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32795 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-13 15:35:33 +00:00
Włodzimierz Skiba
01d2bf4def Correct sending of wxW event from wxChoice on MS Smartphone.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32794 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-13 15:32:30 +00:00
Włodzimierz Skiba
0bb0e26c0c Make Smartphone buildable with current flags.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32793 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-13 15:26:54 +00:00
Robin Dunn
287cb697c9 regenerated ReST docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32792 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 22:04:54 +00:00
Robin Dunn
822e03eeff Don't use the PyGILState_* APIs with Python 2.3, it causes a problem
with Boa's debugger.  :-(


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32791 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 21:03:18 +00:00
Robin Dunn
85ee4fe906 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32790 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 21:01:55 +00:00
Robin Dunn
7b625c3120 Add a note about a few other wxGTK changes that were made
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32789 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 21:01:03 +00:00
Robin Dunn
8c1a4666a8 disable debugreport option
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32788 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 21:00:19 +00:00
Robin Dunn
7db509e27e some demo tweaks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32787 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 20:59:15 +00:00
Robin Dunn
6d25091f7b Bumped up rc number
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32786 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 20:58:38 +00:00
Robin Dunn
156ab66d5b "As is" means the current size (or position) not the best size.
Factored out AsIs size calculations to an inline so it can be
experimented with further if desired.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32785 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 20:57:14 +00:00
Vadim Zeitlin
cf72919c84 ensure that either RTLD_LAZY or RTLD_NOW is always used as calling dlopen() with flags == 0 fails withrecent glibc versions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32784 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 20:43:58 +00:00
Vadim Zeitlin
e62e17d735 changed wxDL_DEFAULT to be same as wxDL_NOW as this makes more sense for portable programs because wxDL_NOW is the only flag supported by Win32
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32783 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 20:37:53 +00:00
Robin Dunn
a95f9d4f8e reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32782 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 20:33:57 +00:00
Robin Dunn
0c549c5fd6 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32781 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 20:26:57 +00:00
Robin Dunn
1e255b00ce Allow wxStaticText to have a custom fg without a custom bg
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32780 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 20:25:19 +00:00
David Elliott
a685a06c96 Fix compilation of generic message dialog.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32779 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 19:35:44 +00:00
David Elliott
2e5cb6c2a3 Added trailing newline.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32778 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 19:24:19 +00:00
David Elliott
cadbf2a8e4 Added back trailing newline. Please be more careful when using dumb editors like Xcode's.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32777 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 19:20:52 +00:00
Vadim Zeitlin
d1dc690d80 readded back wxUSE_OLE and wxUSE_WXDIB
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32776 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 19:11:09 +00:00
Robin Dunn
76144efee5 Oops
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32775 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 18:09:19 +00:00
Robin Dunn
8e7da44f18 GetSize --> GetSizeHint
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32774 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 18:07:04 +00:00
Gilles Depeyrot
220aea7b09 corrected typo in comment
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32773 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 14:16:28 +00:00
Robert Roebling
faac0284d3 gtk updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32772 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 12:26:01 +00:00
Robert Roebling
384188277d Correct orientation of splitter sash again.
Query splitter sash size at runtime.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32771 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 12:24:10 +00:00
Robert Roebling
8fbc991227 Make tree control more GTK-is in the HTML help system.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32770 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 10:44:25 +00:00
Robert Roebling
e53a95bcb1 Applied patch for ArtProvider.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32769 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 10:33:00 +00:00
Robert Roebling
ab5ea030d8 There shouldn't be any need to draw the backgound
under a sash.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32768 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-12 10:30:47 +00:00
Dimitri Schoolwerth
3f1c2da6cc ignore vc_dll directory
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32767 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 22:49:34 +00:00
Michael Wetherell
8bce5cda15 Add samples mobile and ownerdrw. Make sample richedit available on all
platforms for fixing.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32766 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 22:13:23 +00:00
David Elliott
18647d11af Add BASE_MACOSX_HDR and use it from BASE_PLATFORM_HDR like BASE_MACOSX_SRC
is used from BASE_PLATFORM_SRC.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32765 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 21:48:10 +00:00
David Elliott
df3c72ad7e Rename BASE_MAC_OSX_(SRC|HDR) to BASE_MACOSX_WXMAC_(SRC|HDR).
Put $BASE_MAC_(SRC|HDR) inside of these definitions since they're
always needed for these cases anyway.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32764 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 21:42:46 +00:00
David Elliott
ad07ce2bbd Renamed BASE_DARWIN_(SRC|HDR) to BASE_MACOSX_NOTWXMAC_(SRC|HDR)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32763 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 21:34:00 +00:00
Robert Roebling
5b89b4dc32 GTK compilation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32762 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 21:03:10 +00:00
Robert Roebling
5ac8ce9e05 GTK+ 2.0 compilation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32761 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 20:47:45 +00:00
Vadim Zeitlin
2b1d737b3e compilation fix for non PCH build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32760 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 18:59:31 +00:00
Robert Roebling
eaac61c37a Compilo.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32759 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 18:56:05 +00:00
Vadim Zeitlin
985604c166 don't use private URL in the sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32758 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 15:44:37 +00:00
Włodzimierz Skiba
e5b5075810 Base for wxMessageDialog with common checks for style.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 15:34:42 +00:00
Włodzimierz Skiba
2cdd63c6b1 Warning and build fixes focused with Borland and Watcom.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32756 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 15:12:57 +00:00
Vadim Zeitlin
794fe8cd2f call wxOle[Un]Initialize() in wxClipboard ctor/dtor to ensure that when wxTheClipboard is destroyed at program shutdown and its Clear() method is called OLE is still initialized
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32755 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 11:49:44 +00:00
Vadim Zeitlin
360ae33f43 extracted code calling {Ole|Co}[Un]Initialize() to wxOle[Un]Initialize() functions in oleutils.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32754 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 11:47:13 +00:00
Vadim Zeitlin
61ad154c01 Unix compilation warning fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32753 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 11:19:03 +00:00
Jouk Jansen
a98ce49a41 Committing in .
OPenVMS updates

 Modified Files:
 	wxWidgets/setup.h_vms wxWidgets/src/unix/stdpaths.cpp
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32752 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 09:33:29 +00:00
Stefan Csomor
8f39b6c48e border handling streamlined
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32751 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 09:15:01 +00:00
Włodzimierz Skiba
beedefb940 Use empty check consistent with other parts.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32750 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 07:35:51 +00:00
Włodzimierz Skiba
a14132e13a Bring back help turned off as in previous WinCE setup.h. Perhaps it should be !__SMARTPHONE__.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32749 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 07:32:27 +00:00
Włodzimierz Skiba
2227439bea chkconf.h of wince has to be included in files.bkl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32748 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 07:21:36 +00:00
Vadim Zeitlin
54e80d76a2 added debugrpt.cpp and dbgrptg.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32747 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 03:03:35 +00:00
Vadim Zeitlin
f57ba564cb test background bitmap
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32746 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 03:02:44 +00:00
Vadim Zeitlin
8f68093d2a do use PCH with gsocket.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32745 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 03:01:22 +00:00
Vadim Zeitlin
ce4fd7b577 added wxDebugReport
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32744 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 02:55:21 +00:00
Vadim Zeitlin
1de1196ab3 gave default value of wxID_ANY to id parameter of wxStaticLine ctor as nobody uses anything else for it anyhow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32743 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 02:13:30 +00:00
Vadim Zeitlin
e72ac08291 added wxSizerFlags::Left/Right()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32742 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 01:55:23 +00:00
Vadim Zeitlin
9fa2da4a72 correct relative paths for headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32741 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 01:15:47 +00:00
Vadim Zeitlin
6a98f32b27 regenerated with /EHsc instead of /GX (this requires cvs bakefile, please don't overwrite these changes with previous bakefile versions)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32740 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 00:26:53 +00:00
Vadim Zeitlin
36b6448cc3 added wxUSE_DEBUGREPORT
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32739 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 00:19:17 +00:00
Vadim Zeitlin
60b881f7a6 cosmetic fix to a message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32738 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 00:19:09 +00:00
Vadim Zeitlin
110a0fea88 corrected wxLogErrors() in Clear() and Flush()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32737 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-11 00:02:27 +00:00
Robin Dunn
c9caa6bbe9 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32736 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 23:55:12 +00:00
Robin Dunn
303f572ea9 add default action methods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32735 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 23:54:14 +00:00
Robert Roebling
19874feb47 Reenable dead keys under GTK2.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32734 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 23:06:48 +00:00
Julian Smart
3534fc20dd When drawing a solid page background, don't use theme painting
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32733 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 22:02:05 +00:00
Włodzimierz Skiba
667601991b Missing API of wxMenuItem. const corrections. PalmOS specific note.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32732 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 20:51:37 +00:00
Włodzimierz Skiba
54ca2f7eb0 Warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32731 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 20:14:14 +00:00
Włodzimierz Skiba
17131ffd75 Disable wxID_EXIT on PalmOS with all consequences in content of menu (separators). Remove msw related code in wxPalmOS.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32730 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 19:59:01 +00:00
Vadim Zeitlin
9600e53035 disable drag and drop
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32729 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 19:37:21 +00:00
Włodzimierz Skiba
53d09d5558 Use initial book from available controls. Select it in menu correctly.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32728 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 19:34:58 +00:00
Vadim Zeitlin
6f8a4ba11c wxGetEnv() should return wxChar *, even if it's a macro and not a function
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32727 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 19:23:33 +00:00
Włodzimierz Skiba
311131d369 Apart smartphones use choicebook when notebook is not available (like testing smartphone layout using desktop build).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32726 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 19:22:46 +00:00
Václav Slavík
679eea8dec use dummy.cpp with eVC, too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32725 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 19:20:32 +00:00
Václav Slavík
442253be2d use dummy.cpp with eVC, too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 19:20:16 +00:00
Vadim Zeitlin
2f5e2c177c define wxGetEnv() as macro, not inline function, for WinCE as otherwise extended.c compilation fails
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 19:20:04 +00:00
Vadim Zeitlin
67acaf80e7 Unicode fix after last commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32722 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 19:19:09 +00:00
Vadim Zeitlin
32669a1323 ignore build files for stuff which is not in the cvs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32721 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 19:16:07 +00:00
Vadim Zeitlin
cbffcf1117 define wxGetenv() for WinCE which doesn't have _tgetenv() to always return NULL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32720 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 19:14:53 +00:00
Vadim Zeitlin
766763d092 use wxGetenv() instead of getenv() which doesn't exist under WinCE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32719 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 19:14:04 +00:00
Vadim Zeitlin
5e7f00a137 moved WinCE-specific part into wx/msw/wince/chkconf.h; added more stuff to it (partly moved from wince/setup.h)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32718 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 19:11:57 +00:00
Robin Dunn
13304c1b9b Give the wxChoice an explicit width so the min size of the panel won't
be too large, preventing the splitter from resizing it back down to a
manageble size.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32717 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 19:07:15 +00:00
Vadim Zeitlin
4652511f90 disable wxUSE_EXCEPTIONS when compiling with VC++ but without /GX (a.k.a. /EHsc) switch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32716 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 19:06:26 +00:00
Vadim Zeitlin
9205cb3f26 unused param warning with wxUSE_OLE=0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32715 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 18:54:53 +00:00
Vadim Zeitlin
5e9ccdeb95 generate (common part of) include/wx/msw/wince/setup.h automatically, as for MSW, Mac and Unix setup.h versions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32714 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 18:26:29 +00:00
Stefan Csomor
f2c3f2a8c9 cursor setting corrected
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32713 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 15:47:43 +00:00
Stefan Csomor
a86831340f make sure we don't have two associations pointing to the same control
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32712 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 15:46:31 +00:00
Vadim Zeitlin
6aafd4a27a check that wxYES and wxNO are always used together as the native msg box can't use them separately (related to bug 1160422)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32711 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 14:49:52 +00:00
Włodzimierz Skiba
5e63b67d36 Smartphone adjustements to generic log dialog.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32710 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 14:18:42 +00:00
Robin Dunn
8845e31e26 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32709 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 00:45:31 +00:00
Robin Dunn
061d64dd01 Catch possible exception from getdefaultlocale
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32708 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-10 00:41:44 +00:00
Julian Smart
7c52903569 Added some missing samples
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32707 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-09 23:17:01 +00:00
Václav Slavík
7b3dba4927 fixed wxrc's dependencies
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32706 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-09 23:01:35 +00:00
Václav Slavík
54ab3bb8b3 AddFile usage clarifications
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32705 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-09 22:52:07 +00:00
Robin Dunn
5a44633293 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32704 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-09 22:49:23 +00:00
Robin Dunn
af7c9f73d9 Added some missing files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32703 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-09 22:31:00 +00:00
Robin Dunn
8793725c62 User newer APIs for setting up scrolling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32702 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-09 22:30:18 +00:00
Robin Dunn
6e6b35578d Use the PyGILState_* APIs on Python >= 2.3
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32701 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-09 22:28:52 +00:00
Robert Roebling
168f82ce0a Compilo.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32700 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-09 19:04:46 +00:00
Ryan Norton
b14ba1f117 cgimagecreate from wxbitmap crashes 10.2 - turn off. Put in right click handler to avoid double-creation of the menus
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32699 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-09 18:54:52 +00:00
Ryan Norton
099c3b27c2 Don't pass empty string to wxFileNameFSSpec or you get a crash
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32698 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-09 18:53:45 +00:00
Kevin Hock
bb154f79f3 Automatic use of MSG_NOSIGNAL or SO_NOSIGPIPE (checked at compile time); moved enabling of connection events on Darwin after connection has been accepted in WaitConnection; in Connect, enable events only after connection has succeeded rather than unconditionally before; do not close connection when a socket call results in EWOULDBLOCK, EAGAIN or EINTR, as these do not indicate a closed connection; loop around calls to send and recv so that socket calls returning EINTR can be immediately retried; check for invalid socket pointer in Detected_Read
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32697 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-09 18:12:27 +00:00
Dimitri Schoolwerth
ed6d701058 minor cleanup (doc typos fixed, removed tabs)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32696 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-09 16:37:36 +00:00
Włodzimierz Skiba
d94c09cdc6 Missing casts to event handling functions.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32695 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-09 16:29:59 +00:00
Vadim Zeitlin
ef0aea5ad4 made wxStaticCast more backwards compatible by allowing it to cast away const as well (in release build)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32694 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-09 15:23:49 +00:00
Włodzimierz Skiba
74b99d0f8a WinCE fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32693 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-09 07:36:34 +00:00
Włodzimierz Skiba
5e10aed554 Missing flags.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32692 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-09 07:29:27 +00:00
Vadim Zeitlin
c7e1d00462 slightly clarified msw.window.no-clip-children test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32691 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-09 00:02:55 +00:00
Robert Roebling
f0e5a44df1 Applied dir control token patch.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32690 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 22:55:26 +00:00
Robert Roebling
917ae499da Applied DnD patch, adding a field for setting a default action.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32689 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 22:50:46 +00:00
Robert Roebling
c376d80f40 Override OnSize in the scrollsub sample to disable
sizer and scrollarea interferance.
  Made some code in wxScrolledWindow slightly clearer
    and removed a hack for something that shouldn't
    happen any more.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32688 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 22:37:46 +00:00
Ryan Norton
40e32bca6c Fix crash when using a proxy (m_protocol already gets cleaned up via CleanData())
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32687 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 21:05:39 +00:00
Włodzimierz Skiba
8bc3ec1ff5 Casting fix for events. Needs check by ARM eVC4 users.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32686 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 20:53:16 +00:00
Włodzimierz Skiba
656dad21d8 More cleaning and wxFileOffset usage.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32685 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 20:43:57 +00:00
Robin Dunn
f491ed976a reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32684 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 20:43:27 +00:00
Vadim Zeitlin
6a168c177c return name and extension by const ref, not by value, to prevent bugs as the one just fixed by patch 1159289 from compiling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32683 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 20:16:44 +00:00
Vadim Zeitlin
795c9ab863 fixed wrong use of = instead of == (patch 1159289)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32682 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 20:13:58 +00:00
Vadim Zeitlin
04bea5f8fd removed unused wxDirToWinStyle() (part of patch 1159289)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32681 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 20:11:06 +00:00
Kevin Hock
8e27732a43 GTK1 compilation fix from Mart R., followup to patch 1157735
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32680 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 20:02:51 +00:00
Kevin Hock
1e75cc48ca Removed descriptions of now-private m_ variables and moved the detailed information about the event information for each field to the appropriate Get() method descriptions.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32679 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 19:37:38 +00:00
Włodzimierz Skiba
08acda4fa8 Correct header filename (part of bug #1154011).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32678 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 15:18:36 +00:00
Vadim Zeitlin
5df6b3dcbd don't need AC_CXX_DYNAMIC_CAST for now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32677 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 13:12:21 +00:00
Vadim Zeitlin
73fbb031f5 use static_cast<> for wxStaticCast; updated comment in front of wxDynamicCast()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32676 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 13:09:25 +00:00
Vadim Zeitlin
f303447b5c mention Linux/AMD64 build fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32675 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 11:17:48 +00:00
Vadim Zeitlin
330be53493 removed wx_dynamic_cast(), it can't be implemented properly without real dynamic_cast<>
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32674 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 11:17:01 +00:00
Vadim Zeitlin
ed6dd18ae8 set wxDIALOG_UNIT_COMPATIBILITY to 0 by default
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32673 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 10:56:46 +00:00
Włodzimierz Skiba
7d0d80bd1c Allow forward declaration of wxSlider in wxMSW (bug 1157614). Remove unused header from wxSliderMSW.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32672 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 10:44:38 +00:00
Vadim Zeitlin
7e4fb3b816 fixed loop deleting the old filters in SetWildcard() after last commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32671 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 10:37:35 +00:00
Włodzimierz Skiba
a28b4703b5 Missing flags.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32670 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 10:04:24 +00:00
Włodzimierz Skiba
395b5a7626 XTI has own wxObjectEventFunction and has to follow event.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32669 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 09:51:20 +00:00
Robin Dunn
a3c8bbc1b4 Workaround for toolbartool tooltip not getting written to the XRC file.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32668 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 01:47:45 +00:00
Robin Dunn
6932ae6888 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32667 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 01:16:49 +00:00
Robin Dunn
b1f8726218 Fix compilation error
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32666 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 01:14:33 +00:00
Robin Dunn
8f4d7c19ba reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32665 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 01:06:44 +00:00
Robin Dunn
4a065572bf Little tweaks to match CVS changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32664 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 00:43:06 +00:00
Robin Dunn
43d6e3cae1 Move wxPyCallback back to derive from wxObject
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32663 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 00:41:35 +00:00
Vadim Zeitlin
7c3928159c honour stateMask in GetItem() too (patch 1153451)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32662 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 00:40:06 +00:00
Robin Dunn
116627da19 Allow wxBufferedDC to be constructed with just a wxDC.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32661 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 00:38:53 +00:00
Vadim Zeitlin
fe6cf12844 init member variables properly (patch 1156088)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32660 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 00:29:56 +00:00
Vadim Zeitlin
58e5044be7 update from Hakki Dogusan
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32659 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 00:10:32 +00:00
Vadim Zeitlin
d86ea20ff4 added wxUSE_STDPATHS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32658 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 00:08:54 +00:00
Vadim Zeitlin
05eb2d40c3 PPC 2003 SDK doesn't seem to have setlocale() neither so just don't use it under Win CE at all
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32657 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 00:07:55 +00:00
Vadim Zeitlin
4f0436e465 fixed bug in Set(double jdn): don't test whether the date is valid before setting it (closes 1158535)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32656 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-08 00:01:32 +00:00
Vadim Zeitlin
58385af016 fix top margin for static box sizer when wxDIALOG_UNIT_COMPATIBILITY == 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32655 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 23:41:07 +00:00
Vadim Zeitlin
5dd070c25b extracted platform-specific code to determine static box borders to wxStaticBox::GetBordersForSizer()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32654 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 23:37:15 +00:00
Vadim Zeitlin
7e75449835 don't exclude msw/gsocket.cpp and msw/gsockmsw.cpp from using PCH, there is no reason to do it now that these files are in C++ and not in C
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32653 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 23:07:31 +00:00
Vadim Zeitlin
cd9a8d40c9 added wxUSE_STDPATHS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32652 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 22:48:04 +00:00
Vadim Zeitlin
69dada2e7a added file with WinCE-specific configuration options checks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32651 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 22:42:59 +00:00
Vadim Zeitlin
e44501a0cb compilation fix for CE with Standard SDK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32650 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 22:40:51 +00:00
Vadim Zeitlin
07158944d8 added wxUSE_STDPATHS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32649 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 22:37:58 +00:00
Julian Smart
1aca952110 Need wxFULL_REPAINT_ON_SIZE for the background to erase properly (needs to be
optimized)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32648 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 22:17:01 +00:00
Vadim Zeitlin
831c288955 compilation fix for VC6 (patch 1158433)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32647 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 22:12:46 +00:00
Julian Smart
32a1ea1c5d Added metal styles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32646 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 21:52:17 +00:00
Julian Smart
5bd78bbc2b Added wxFRAME_EX_METAL, wxDIALOG_EX_METAL for Mac metal appearance (saves #ifdefing)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32645 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 21:50:11 +00:00
Vadim Zeitlin
f12a2bcfe9 look in /usr/lib64 before standard locations, this should fix build on Linux AMD64
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32644 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 21:35:06 +00:00
Julian Smart
0f36a8d7bc Removed very very obsolete flags from 1.x
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32643 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 20:44:06 +00:00
Włodzimierz Skiba
d7e3abf70f More wxFileOffset usage and making layout of the code little more readable.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32642 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 20:18:47 +00:00
Vadim Zeitlin
6f0344c7ff fix evaluation order bug (patch 1158099)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32641 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 20:06:14 +00:00
Vadim Zeitlin
040e5f77e6 harmless warning fixes for WinCE (mostly unused parameters)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32640 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 19:50:06 +00:00
Vadim Zeitlin
abf912c5a1 harmless warning fixes for WinCE (mostly unused parameters)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32639 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 19:26:51 +00:00
Vadim Zeitlin
d5d5101391 fix to avoid eVC crashes: restored wxObjectEventFunction declaration so that it defines a wxObject method, not wxEvtHandler one
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32638 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 19:22:00 +00:00
Włodzimierz Skiba
86a2f7226f Inform settings about wxWindow class existence.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32637 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 19:10:42 +00:00
Robin Dunn
52e82b22b0 Don't enable the mediactrl on jaguar
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32636 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 18:28:20 +00:00
Włodzimierz Skiba
e9b64c5ea8 Warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32635 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 17:39:22 +00:00
Robert Roebling
9b0b5ba76e Applied GetSystemMetric patch to suppurt GTK and multihead
display.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32634 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 17:38:31 +00:00
Robert Roebling
2fe417e4c4 Applied patch to reenable single selection mode.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32633 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 17:27:20 +00:00
Robert Roebling
33fe475aeb This fixes a problem in the two tree and list controls that
are trigger if the user app shows dialog in reaction to
   the user pressing e.g. <ENTER>. The edit text control will
   lose focus and emit another event. Might be possible to
   fix without adding another field, but this way it surely
   works.
  Also added correction to treecontrol as per listcontrol in
   the situation when a label change happens by losing the
   focus and the user cannot reject it, another event is emitted.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32632 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 17:25:29 +00:00
Robert Roebling
885dd59789 Readd support for prelight tree control triangles (visual
effect when mouse is over the triangle/button)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32631 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 17:20:41 +00:00
Robert Roebling
f05e0979c2 Use GtkPixmap instead of GtkImage as the latter incorrectly
displays greyed images for some reason.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32630 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 17:19:02 +00:00
Vadim Zeitlin
499bbaeba3 replaced complicated and not working test for WinCE version with a simple and working test for whether WM_CONTEXTMENU is defined
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32629 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 02:11:30 +00:00
Vadim Zeitlin
4d7c537dfa added wxUSE_DATEPICKCTRL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32628 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-07 02:01:45 +00:00
Julian Smart
8004cd7a28 Removed spurious comment
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32627 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-06 20:47:38 +00:00
Julian Smart
1d3f4b50d6 Doc tweaks
SetAxisOrientation: Y is top down by default, not bottom up!


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32626 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-06 17:16:58 +00:00
Vadim Zeitlin
1d836590aa fix warning about comparing (signed) -1 with (unsigned) in_addr_t under Solaris
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32625 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-06 13:43:56 +00:00
Vadim Zeitlin
5f8ba10e86 replaced C++ comment with a C one
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32624 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-06 12:16:24 +00:00
Robin Dunn
331c8101d2 Added toolbar wxTB_TEXT flag and tool label property
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32623 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-06 03:31:21 +00:00
Vadim Zeitlin
f6d43eda3e (blind) GTK1 compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32622 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-05 23:36:07 +00:00
Michael Wetherell
9802983f15 Fix for problem with wxGetFileKind on WinCE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32621 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-05 23:24:17 +00:00
Mattia Barbon
0fcb9befd9 Use the common wxParseCommonDialogsFilter function
in wxMotif wxFileDialog.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32620 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-05 17:16:44 +00:00
Mattia Barbon
80f7ea17cb Avoid uninitialized variable warnings.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32619 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-05 16:13:55 +00:00
Mattia Barbon
dad285d71f Use the IsMDIChild() function instead of wxRTTI,
avoiding linking MDI classes in all programs.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32618 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-05 16:11:29 +00:00
Mattia Barbon
3543c79e6f Corrected wxStringListBase implementation of
DeleteFunction. Since wxStringList, when wxUSE_STL == 1
is a list of object (not pointers to objects) it requires
and empty DeleteFunction.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32617 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-05 16:09:20 +00:00
Mattia Barbon
f455ffb2da Use the correct WXDLLIMPEXT declaration for
wxStringListBase.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32616 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-05 16:06:02 +00:00
Robin Dunn
9c874b4822 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32615 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-05 00:57:36 +00:00
Robin Dunn
b95b5a5b25 Docstring updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32614 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-05 00:52:48 +00:00
Robin Dunn
dc2360764d Added wx.ArtProvider.GetSize
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32613 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-05 00:52:07 +00:00
Robin Dunn
aff4cc5c90 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32612 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-05 00:40:30 +00:00
Robin Dunn
9fb252467c bump the version flags
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32611 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-05 00:24:31 +00:00
Robin Dunn
cb501b1009 Tweak how we cheat on the resource files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32610 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-05 00:21:00 +00:00
Robin Dunn
2314e5ec5c Add Resize, SetRGBRect, Size, and GetOrFindMaskColour methods to wx.Image
Added wx.Rect.IsEmpty


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32609 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-05 00:18:49 +00:00
Robin Dunn
c3fc056e63 Added wx.Rect.IsEmpty
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32608 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-05 00:17:37 +00:00
Robin Dunn
f5bac082ec Add Resize, SetRGBRect, Size, and GetOrFindMaskColour methods to wx.Image
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32607 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-05 00:15:45 +00:00
Robin Dunn
e7cece45fb Remove refrences to building OGL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32606 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-05 00:13:58 +00:00
Robert Roebling
a90c0600bb Try to catch theme change on the fly in button in
order to resize buttons.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32605 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-04 23:23:05 +00:00
Włodzimierz Skiba
19311d4e7c Better wxFile support, warning fixes and minor source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32604 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-04 19:32:40 +00:00
Włodzimierz Skiba
289cd4e2dc Unicode markup.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32603 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-04 19:29:28 +00:00
Włodzimierz Skiba
29b53ef977 Removed ambiguity between deprecated and new constructor.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-04 19:27:02 +00:00
Włodzimierz Skiba
4c2740ec0f Small warning fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32601 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-04 19:23:28 +00:00
Włodzimierz Skiba
be51756712 Name conflict correction.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32600 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-04 19:19:19 +00:00
Robert Roebling
863e0817fe Trying to get default button placement and size right.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32599 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-04 19:14:24 +00:00
Robert Roebling
b737ad10de Applied John L's patches for curson scaling, image resizing
without scaling and the art provider resize bitmap patch.
    I'll look into adapting the generic file dialog to it.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32598 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-04 18:33:57 +00:00
Robert Roebling
0b40f3d80b Changed wxFileName::SetExt() as per the discussion, added
ClearExt() and SetEmptyExt() and documented it.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32597 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-04 17:31:18 +00:00
Włodzimierz Skiba
de5dc0febd #pragma implementation fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32596 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-04 07:24:04 +00:00
Włodzimierz Skiba
a986efd0c8 Complete wxW set of files in PalmOS makefile (still builds fine due to wxUSE_XXX flags). Initial (BASE) movement towards files.bkl.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32595 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-04 07:18:47 +00:00
Włodzimierz Skiba
5c95f4b29f Warning fixes for formating.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32594 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 21:07:12 +00:00
Robin Dunn
3ad32babc1 reworded a bit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32593 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 20:57:37 +00:00
Włodzimierz Skiba
cdc93e0c16 Warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32592 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 20:21:34 +00:00
Robin Dunn
e2950dbb1f reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32591 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 20:13:45 +00:00
Robin Dunn
67a5217c4f new style flags for wxBufferedDC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32590 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 19:58:32 +00:00
Robin Dunn
d02ea46cad Add copy ctor for wxPyCBInputStream and use it to prevent double
deletion of the wxInputStream passed to wxFSFile


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32589 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 19:56:42 +00:00
Włodzimierz Skiba
c8547e17ca Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32588 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 19:50:33 +00:00
Włodzimierz Skiba
b6b375a917 Allow build without fatal exceptions support.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32587 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 19:46:15 +00:00
Robert Roebling
4d4edca33b Adapt SetExt() to new availability of m_hasExt. I also
added SetNoExt() as there needs to be a way to remove
   the extension. One wonders what SetExt( "" ) is supposed
   to do. Maybe adding SetEmptyExt() would be better and
   backwards compatible.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32586 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 19:45:24 +00:00
Włodzimierz Skiba
55c91e8a3f Usage of common default colours in OGL + minor warning fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32585 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 19:37:15 +00:00
Włodzimierz Skiba
1e24d8f783 Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32584 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 19:21:53 +00:00
Włodzimierz Skiba
72f09e49c9 Warning fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32583 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 19:19:43 +00:00
Włodzimierz Skiba
ba4796547a Follow api of wxInputStream (warning fixes).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32582 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 19:17:45 +00:00
Włodzimierz Skiba
4e22a1f243 Warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32581 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 19:15:38 +00:00
Włodzimierz Skiba
287d71d992 Huge streams checking and warning fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32580 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 19:12:18 +00:00
Włodzimierz Skiba
2a9c090515 Recent commits added new variables for length when there is already one available with warnings silenced.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32579 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 19:09:11 +00:00
Václav Slavík
b3c03420c8 fixed crash when wxHtmlWindow's content is updated when making selection
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32578 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 17:18:47 +00:00
Vadim Zeitlin
f281f29f89 fixed bug in ReadAll(): it always returned error when reading files with DOS EOLs in text mode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32577 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 13:46:42 +00:00
Jouk Jansen
dbbd41ae33 Committing in .
OpenVMS compile support updates

 Modified Files:
 	wxWidgets/setup.h_vms wxWidgets/src/common/descrip.mms
 	wxWidgets/src/common/string.cpp
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32576 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 12:52:43 +00:00
Vadim Zeitlin
7adf0b4de2 use HINSTANCE for first DllMain() parameter (should fix compilation with VC 2005)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32575 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 10:54:59 +00:00
Vadim Zeitlin
9f8d3f61a9 added wx_dynamic_cast()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32574 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 10:53:55 +00:00
Vadim Zeitlin
d1150ea70f added AC_CXX_DYNAMIC_CAST
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32573 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 10:39:46 +00:00
Julian Smart
265a3864bb Added wxBUFFER_VIRTUAL_AREA, wxBUFFER_CLIENT_AREA to buffered DC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32572 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 06:56:15 +00:00
Robin Dunn
fb113b165e Add SetDefault()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32571 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-03 01:51:53 +00:00
Michael Wetherell
520a495c59 Add forcelnk.h and version.rc to distribution tars and zips
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32570 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 22:49:32 +00:00
Ryan Norton
7a80bdc851 get rid of duplicate comment :)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32569 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 22:16:48 +00:00
Robin Dunn
dcb8fc74ac reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32568 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 22:11:28 +00:00
Robin Dunn
562ecc3143 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32567 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 22:02:55 +00:00
Robin Dunn
1b14227e64 Reduce the value of the fkey guard for unicode characters
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32566 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 21:35:50 +00:00
Robin Dunn
7f2a8ba844 allow border flags
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32565 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 20:42:17 +00:00
Robin Dunn
4afab8bd72 more build load-balancing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32564 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 20:41:36 +00:00
Robin Dunn
d8ac06aaf7 don't need to import xml.sax anymore
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32563 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 20:38:43 +00:00
Robin Dunn
3dd67a18b7 Add GetToolTip accessor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32562 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 18:32:52 +00:00
Robin Dunn
4f73709d9c Set the mouse pos for the drag events, add support for the tooltip event
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32561 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 18:32:28 +00:00
Robin Dunn
77b7cd4fc3 Set the mouse pos for the drag events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32560 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 18:31:54 +00:00
Stefan Csomor
2d17efa94e unicode character events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32559 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 17:45:49 +00:00
Włodzimierz Skiba
e5ecf1fc24 In MSWUniv wxWindow and wxWindowMSW are different classes so we can't access some of protected members (catched only by Borland). Therefore some of the flags related to background needs reading API.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32558 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 10:57:08 +00:00
Julian Smart
1c96869800 Must use GetAdjustedBestSize for getting child window sizes, since
DoGetBestSize returns standard control size e.g. 100x100 on Windows,
and not an explicit size passed to it. This may be because the splitter
window isn't a true sizer and m_bestSizeCache isn't updated properly
(see window.h, GetBestSize: IsFullySpecified fails.)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32557 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 10:44:17 +00:00
Julian Smart
96991c58ed Fixed wxBufferedPaintDC for scrolled windows
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32556 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 08:16:48 +00:00
Ryan Norton
64344db66c *** empty log message ***
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32555 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 05:17:20 +00:00
Ryan Norton
af7e4f87c9 note that GetFromWindow is windows only
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32554 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 02:47:47 +00:00
Ryan Norton
940bbac18f Document wxDisplay::GetFromWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32553 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 01:08:35 +00:00
Ryan Norton
2f43eb9808 fix unresolved reference
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32552 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 01:05:21 +00:00
Ryan Norton
bc8e3eadaf fix backslashes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32551 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 01:03:42 +00:00
Ryan Norton
4c98885ee8 grammer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32550 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 00:54:57 +00:00
Ryan Norton
2ed08aeea3 clear up the 'something'
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32549 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 00:53:19 +00:00
Ryan Norton
cf0d7921e4 reword a bit - get rid of mention of the platforms it supports because nearly all of them do now (all major ones do)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32548 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 00:51:53 +00:00
Kevin Hock
13ba38f46e Add missing wxFileDialog flags to both dialog overview and wxFileDialog description (modified patch 1154022)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32547 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-02 00:15:48 +00:00
Robin Dunn
280432a984 Added newDirectory flag to DirBrowseButton
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32546 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 23:52:44 +00:00
Robin Dunn
38aff7bb01 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32545 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 23:49:52 +00:00
Robin Dunn
08e2c57078 Make IsSelected be a bit more specific
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32544 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 23:36:05 +00:00
Mattia Barbon
899c6fad26 Revert my last commit, GetClientAreaOrigin was already implemented
in common code by ABX.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32543 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 20:18:09 +00:00
Kevin Hock
f842e673f6 Revert last change moving wxFloodFill from imagfill.cpp to dcbase.cpp, which broke compilation across the board when wxUSE_IMAGE is defined.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32542 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 19:13:24 +00:00
Vadim Zeitlin
4a10132773 restored alpha test in raw image frame (why had it been commented out?)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32541 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 17:52:50 +00:00
Vadim Zeitlin
12e50065b4 don't use WXDLLEXPORT with nested template classes: this doesn't work
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32540 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 17:49:27 +00:00
Vadim Zeitlin
2a7367398e don't try to save invalid image: added a wxCHECK(Ok()) to Save() overloads which didn't already have it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32539 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 17:42:28 +00:00
Michael Wetherell
96ed08f775 Minor fixes for gcc
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32538 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 17:11:15 +00:00
Michael Wetherell
0b78747f48 Add samples to configure: ipc, keyboard, listbox, multimon, popup, vscroll
richedit (partly), regtest, nativdlg, oleauto


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32537 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 17:08:52 +00:00
Włodzimierz Skiba
21fe01e299 Warning fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32536 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 16:53:22 +00:00
Robin Dunn
b0f3dd44e4 Use GetMark if available
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32535 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 16:22:31 +00:00
Stefan Csomor
ddc548ec77 correct placard under toolbar
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32534 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 15:47:17 +00:00
Michael Wetherell
09d350c0bc No res-include for rpmspec wx24dsp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32533 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 14:13:22 +00:00
Michael Wetherell
36aa1961e9 Add $(TOP_SRCDIR)include for windres
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 14:09:37 +00:00
Włodzimierz Skiba
226e577403 Warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32531 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 11:54:44 +00:00
Włodzimierz Skiba
249b31b53b Missing header.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32530 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 11:43:52 +00:00
Ryan Norton
5e0526df03 wxUSE_TOOLTIPS and wxUSE_IMAGE furthur fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32529 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 11:30:21 +00:00
Ryan Norton
b610cc76ee Move wxDoFloodFill to dc.cpp so that it can be 'used' without wxImage. Fixes related to this
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32528 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 11:10:34 +00:00
Ryan Norton
23af264e46 work w/o bitmap button
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32527 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 11:06:27 +00:00
Ryan Norton
132422c4b9 More wxUSE_STATTEXT fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32526 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 10:59:19 +00:00
Ryan Norton
001e76a930 wxUSE_STATTEXT fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32525 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 10:55:32 +00:00
Ryan Norton
a6c91f7da9 compilo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32524 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 10:48:07 +00:00
Ryan Norton
58c5c7ecd2 wxUSE_IMAGLIST fix (good grief...)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32523 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 10:42:02 +00:00
Ryan Norton
c81c6d5400 wxUSE_TOOLTIPS fix (good grief I think I just did this a couple days ago...)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32522 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 10:33:51 +00:00
Ryan Norton
c545950d8c wxUSE_XX fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32521 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 10:28:13 +00:00
Ryan Norton
fa0c64d629 wxUSE_XXX fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32520 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 10:27:10 +00:00
Ryan Norton
d2945f3350 fixup for last commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32519 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 10:25:54 +00:00
Ryan Norton
da76c2ce81 more wxUSE_IMAGE FUN
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32518 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 10:23:45 +00:00
Ryan Norton
476a5decba wxUSE_IMAGE cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32517 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 10:19:55 +00:00
Vadim Zeitlin
d60e233244 fix for crash when using wxEXEC_NODISABLE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32516 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 10:19:24 +00:00
Ryan Norton
d45318b8b6 wxUSE_IMAGE cleanup, fix warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32515 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 10:16:28 +00:00
Ryan Norton
e3e34b267b compile w/o tooltips
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32514 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 09:54:25 +00:00
Włodzimierz Skiba
72f48155d8 wxChoicebook styles typo fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32513 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 09:36:31 +00:00
Julian Smart
f354202554 Typo fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32512 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 09:24:56 +00:00
Włodzimierz Skiba
5a439c1aa4 More styles in XRC handlers of book controls.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32511 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 07:38:09 +00:00
Stefan Csomor
5614fdec8b have CGImage Support in all OSX builds
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32510 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 05:45:25 +00:00
Stefan Csomor
30e77b5c9f have CGImage Support in all OSX builds
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32509 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 05:31:37 +00:00
Stefan Csomor
7890a36c9c fix for non-quartz branch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 05:21:06 +00:00
Vadim Zeitlin
7b0d5c59eb don't compare iterator after calling erase() in ProcessPendingEvents() (replaces patch 1153906)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32507 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 01:26:34 +00:00
Vadim Zeitlin
cd30330fc6 added accessor function to hide __VISAGECPP__ ugliness and avoid having #ifdef's for it every other line
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32506 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 01:21:04 +00:00
Vadim Zeitlin
9e91f49d7d update from Hiroshi Saito (patch 1153720)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32505 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 01:15:49 +00:00
Vadim Zeitlin
4e1ba52e0a added wxDP_ALLOWNONE (patch 1153889)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32504 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-01 00:03:55 +00:00
Václav Slavík
260c165f31 workaround for lack of res-define in our custom formats
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32503 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 23:05:13 +00:00
Robert Roebling
d504085d5b Minimal layout change.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32502 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 22:29:06 +00:00
Julian Smart
d0a0dbd57d Search path correction (in line with intl.cpp)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32501 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 21:16:23 +00:00
Włodzimierz Skiba
84f5e95e86 Don't use the 'unix-like' check for Palm.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32500 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 21:14:43 +00:00
Robin Dunn
edef8600a6 delete singleInstanceChecker when exiting
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32499 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 20:35:34 +00:00
Robin Dunn
f75e95f5f4 NotebookSizer is deprecated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32498 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 20:32:02 +00:00
Robert Roebling
8017ee9be3 Implemented wxRadioBox using a GtkTable.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32497 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 20:31:31 +00:00
Robin Dunn
74b8945829 Updates for doc/view from Morgan Hua
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32496 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 20:16:34 +00:00
Ryan Norton
9314633b78 note wxURI change
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32495 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 20:09:07 +00:00
Robin Dunn
7fbf8399dd reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32494 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 20:06:19 +00:00
Robin Dunn
7a0c9b3917 Updates for MouseGestures
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32493 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 20:03:35 +00:00
Ryan Norton
4860d40db4 rename wxURI::GetUser to wxURI::GetUserInfo and add wxURI::GetUser and wxURI::GetPassword
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32492 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 20:01:44 +00:00
Robin Dunn
b9d6a5f3d8 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32491 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 19:47:34 +00:00
Robin Dunn
03cef64339 Oops, checked in wrong file by mistake. Reverted last change.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32490 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 19:34:13 +00:00
Robin Dunn
8c87c6b429 updated setup.h changes for MSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32489 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 19:31:49 +00:00
Robin Dunn
6a84cd6d39 Don't build the old versions of OGL or iewin by default anymore
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32488 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 19:30:29 +00:00
Robin Dunn
a0c70b7642 Don't build the old versions of OGL or iewin by default anymore
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32487 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 19:19:25 +00:00
Włodzimierz Skiba
1bdd1007d1 Missing include.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32486 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 18:50:44 +00:00
Włodzimierz Skiba
9aaf11927c XRC for wxListbook [patch 1152306] and wxChoicebook. Regenerated makefiles.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32485 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 18:46:49 +00:00
Robin Dunn
9df51bd066 Added more image options
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32484 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 18:45:29 +00:00
Robin Dunn
766abb5bc9 Patch from Will Sadkin:
Enclosed are two patches, one for timectrl, re: exceptions (now?)
    thrown on wxDateTime.strftime(%p) in a non-am/pm locale, and one
    for a problem that prevented input into the integer digit of a
    integerwidth=1 numctrl, if the current value was 0.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32483 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 18:45:13 +00:00
Robin Dunn
7e8f0df953 Undeprecated AddWindow, AddSizer, AddSpacer and etc.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32482 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 18:43:47 +00:00
Robin Dunn
a62e4b56c4 Added wx.PrintData.Get/SetPrivData
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32481 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 18:43:15 +00:00
Robin Dunn
e4e84ccdb6 GetSelection is available on wxGTK now too.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32480 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 18:41:36 +00:00
Robin Dunn
13112643aa Added GetBitmap, GetIcon to wx.ImageList.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32479 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 18:41:07 +00:00
Robin Dunn
2b020ec774 Fix GetAmPmStrings wrapper
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32478 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 18:40:52 +00:00
Robin Dunn
e63d6c308f doc updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32477 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 18:40:32 +00:00
Robin Dunn
2bf6b425b4 Build/distrib updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32476 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 18:37:29 +00:00
Robin Dunn
a96fdef31f use wxMin
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32475 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 18:36:57 +00:00
Robin Dunn
10a2749bd7 avoid buffer overrun
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32474 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 18:35:34 +00:00
Ryan Norton
6a7dd4b3ab wxDisplay::GetFromWindow is only on msw evidently
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32473 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 18:18:30 +00:00
Stefan Csomor
7e7f40ed5f mask access row bytes fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32472 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 17:28:43 +00:00
Vadim Zeitlin
1a6255e664 trying to fix dmc warning about potential overload ambiguity
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32471 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 17:23:19 +00:00
Vadim Zeitlin
27e090842d return const ref to label from GetLabel() and other accessors instead of copying it, this fixes 1153178
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32470 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 17:20:12 +00:00
Chris Elliott
8318f30f10 fix missing defines with DMC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32469 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 16:13:59 +00:00
Vadim Zeitlin
3ba9ea7267 removed strange bit flipping under wxGTK when saving TIFFs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32468 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 16:05:04 +00:00
Stefan Csomor
1bf168351b correcting last commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32467 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 16:02:17 +00:00
Robert Roebling
3b439e60e0 This change will make the parent TLW come to
the front again after it has been sent to
    the back for some unknown reason, after a
    message dialog has been show.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32466 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 15:14:20 +00:00
Julian Smart
e9729fc70c Unicode fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 15:01:30 +00:00
Robert Roebling
4e1a9bc7c9 Apply combobox patch II.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32464 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 14:45:58 +00:00
Julian Smart
fa51336154 Removed call to obsolete (and presumably redundant) SetPageSize
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32463 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 14:41:37 +00:00
Robert Roebling
83dc6964f0 Changed ComboDropDown button under GTK+ so that it
will create a transparent button. This works for
    the date control, but should be generalized somehow.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32462 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 14:38:47 +00:00
Julian Smart
7ab378223c Documented wxImage XPM data ctor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32461 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 13:55:59 +00:00
Vadim Zeitlin
98b5a1e920 don't hide m_cal when disabling the control (bug 1150830)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 13:08:47 +00:00
Vadim Zeitlin
bc8699718d restored manual calls to gtk_glwindow_realized/map_callback() and added comment explaining why they're (sometimes) needed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32459 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 12:28:36 +00:00
Julian Smart
510c9b78e3 Applied patch [ 1121371 ] configtool NULL pointer accesses
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32458 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 11:36:59 +00:00
Julian Smart
84aa68c427 Applied socket destruction bug patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32457 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 11:36:03 +00:00
Julian Smart
f07067b7da WinCE doesn't have DFCS_FLAT
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32456 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 11:34:26 +00:00
Julian Smart
c5fe22f8f4 WinCE doesn't have GetThreadLocale
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32455 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 11:33:07 +00:00
Julian Smart
9a08c20ec2 MSW doesn't have EOVERFLOW, WinCE additionally doesn't have errno.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32454 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 11:31:20 +00:00
Julian Smart
cad61c3e8f Added XPM ctor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32453 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 11:00:07 +00:00
Vadim Zeitlin
284be59b10 compilation fix for non-debug build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32452 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 10:53:55 +00:00
Stefan Csomor
e661674164 10.2 additions for non compositing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32451 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 09:30:12 +00:00
Stefan Csomor
025357ca4f cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32450 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 06:14:32 +00:00
Stefan Csomor
1b14412585 no_rtti fix was not having correct eval order
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32449 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 05:18:28 +00:00
Ryan Norton
2c47c53728 fix for bug raised in patch [ 1145715 ] endless loop in wxString::PrintV
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32448 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 02:47:51 +00:00
Ryan Norton
ce29e4fbe5 partially fix bug [ wxwindows-Bugs-1145813 ] Centre() Doesn't Work With Dual Monitors , and note other part of bug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32447 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 02:25:33 +00:00
Kevin Hock
626fd61904 Casting grouping (Get/SetNativeContext), fixes 10.2 compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32446 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 02:24:35 +00:00
Dimitri Schoolwerth
e8144c3153 removed trailing comma from enum
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32445 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 02:10:54 +00:00
Ryan Norton
6fcf77f4c7 comment and 'fix' bug 1145623
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32444 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 02:00:12 +00:00
Robert Roebling
aa96f01c02 Add PrivData() field to wxPrintData since MSW's printer
sometimes seem to save data in an extra field. The
    original author of the patch chose to save it in char*
    so I kept that, although void* would probably be correct.
    The patch is against 2.4.2 and the code has been reshuffled
    since then so that the patch had to be redone entirely.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32443 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 01:51:59 +00:00
Vadim Zeitlin
74124ea961 show tooltips for the text control part of the spin control as well (bug 735044)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32442 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 01:23:03 +00:00
Vadim Zeitlin
1306e7d6ec made Add() public so that it could be called for addition HWNDs making part of the same logical wxWindow from other classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32441 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 01:22:35 +00:00
Vadim Zeitlin
1c01dd1629 1. added possibility to test setting tooltip for the widget
2. added WidgetPage::GetWidget2() for pages like the spin one which shows
   2 widgets and not only one


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32440 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 01:15:46 +00:00
Vadim Zeitlin
cd5e74bad9 wxUniv compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32439 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 01:06:48 +00:00
Vadim Zeitlin
fcae713511 another test for DST bug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32438 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 00:23:05 +00:00
Vadim Zeitlin
981cc5bbe9 fixed test to actually work
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32437 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 00:20:31 +00:00
Vadim Zeitlin
dfecbee579 support filenames with empty extension (foo.) (bug 1078200)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32436 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 00:18:37 +00:00
Vadim Zeitlin
21b9b5e292 fixed last commit to not break ToString() for negative numbers but still fix it for wxLongLong(LONG_MIN, 0) for which Negate() doesn't work
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32435 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-28 00:13:38 +00:00
Michael Wetherell
238ecedea7 Detect SIZEOF_WCHAR_T when cross-compiling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32434 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 23:18:33 +00:00
Vadim Zeitlin
1d4037aa1f fixed ToString() for negative long longs (bug 1101426)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32433 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 23:08:13 +00:00
Václav Slavík
e508567a95 GTK+ headers aren't needed anymore
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32432 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 21:55:26 +00:00
Stefan Csomor
b60f5ca56d no_rtti fix was not having correct eval order
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32431 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 20:49:59 +00:00
Michael Wetherell
e6bdaaad1d Move wxUSE_POSTSCRIPT_ARCHITECTURE_IN_MSW out of the common section in
setup_inc.h to tackle the problem raised by patch 1152046.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32430 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 20:31:24 +00:00
Stefan Csomor
86e9492322 guard for 10.2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32429 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 19:31:10 +00:00
Robert Roebling
c958d025fa The position (mouse pos) returned by wxKeyEvent sometimes
was wrong, as it reported the position relative to the
    TLW (this is what a bug report claims, in any case).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32428 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 17:47:57 +00:00
Stefan Csomor
bc8f7aeed2 old style casts for no-rtti builds
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32427 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 17:01:16 +00:00
Vadim Zeitlin
f686d8ad4f further resized icons to 16*15 (still patch 1151163)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32426 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 16:42:51 +00:00
Vadim Zeitlin
1f621c2fd6 set WS_GROUP on the first button in the group, fixes hangs inside native radiobox code (bug 1091714)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32425 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 16:39:56 +00:00
Robert Roebling
19ac2f446a SetLabel() no longer invalidates the font which
was previously set.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32424 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 16:35:30 +00:00
Vadim Zeitlin
cc893cea58 refersh after changing the image (patch 1151163)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32423 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 15:58:34 +00:00
Vadim Zeitlin
1813c06b6b cropped icons to 16*16 (patch 1151163)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32422 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 15:57:19 +00:00
Vadim Zeitlin
ca9fb418d2 added default ctor and fixed copying of wxFileData (patch 1149384)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32421 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 15:54:25 +00:00
Mattia Barbon
85bb33f492 Updated Italian translation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32420 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 15:46:47 +00:00
Vadim Zeitlin
c46b98daaf refresh bitmap when it's label changes, this is necessary for wxMSW and maybe wxGTK and shouldn't hurt much for other ports
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32419 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 15:43:58 +00:00
Vadim Zeitlin
ed1288c1d5 better compatibility with old wxList in wxUSE_STL==1 mode (patch 1075432)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32418 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 15:40:39 +00:00
Mattia Barbon
37da386f77 Use the same error message for wxMSW and wxMac.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32417 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 15:39:36 +00:00
Vadim Zeitlin
dc683654a1 fix to previous patch: don't crash when saving in 16bpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32416 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 15:36:21 +00:00
Vadim Zeitlin
5a566d89be added tests for savin PNG images in different formats; don't ask for BMP bpp if not saving as BMP
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32415 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 15:25:55 +00:00
Vadim Zeitlin
a4efa72179 added support for saving grey and grey-red PNG images (patch 985447)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32414 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 15:24:50 +00:00
Stefan Csomor
04d4e6846e ommission
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32413 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 14:58:09 +00:00
Stefan Csomor
21638402ef cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32412 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 14:57:25 +00:00
Stefan Csomor
1a15a38f8f cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32411 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 14:47:42 +00:00
Stefan Csomor
1f1c8bd4d1 moving compositing knowledge into utility classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32410 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 14:47:09 +00:00
Stefan Csomor
cd7800274b scrolling UPP moved
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32409 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 14:44:36 +00:00
Vadim Zeitlin
61f3feadce fix for BCC compilation (see patch 1101702)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 14:43:31 +00:00
Vadim Zeitlin
3602872ab3 compilation fix (missing header) (patch 1151763)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32407 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 14:35:34 +00:00
Julian Smart
e8332ccfe0 Tweaks to install guide
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32406 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 14:06:34 +00:00
Václav Slavík
d181c36eb6 include version information in DLLs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32405 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 12:03:11 +00:00
Václav Slavík
de5dd00644 copyright and name updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 12:01:46 +00:00
Julian Smart
2a138829cb Added GetIcon, GetBitmap to wxImageList
Tweaked DC and bitmap docs


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32403 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 11:55:01 +00:00
Stefan Csomor
285b5ce090 cleanup, adding common methods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32402 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 11:41:01 +00:00
Julian Smart
f45fac95d6 Fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32401 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 10:54:09 +00:00
Julian Smart
49bf4e3e68 Added GetBitmap, GetIcon to wxImageList
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32400 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 10:36:58 +00:00
Ryan Norton
9075301655 fix compilation - Stefan see my last commit bundle :)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32399 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 10:02:20 +00:00
Stefan Csomor
76c7012c6f cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32398 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 09:51:45 +00:00
Stefan Csomor
02a55765c4 cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32397 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 09:49:19 +00:00
Stefan Csomor
789ae0cfa2 reintroducing non-composited functionality due to DataBrowser Bugs under 10.2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32396 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 09:10:52 +00:00
Stefan Csomor
9b89f11ad8 reintroducing non-composited functionality due to DataBrowser Bugs under 10.2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32395 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-27 08:54:16 +00:00
Julian Smart
3a9929405b Added wxFULL_REPAINT_ON_RESIZE and sample icon to OpenGL samples
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 20:03:27 +00:00
Robin Dunn
7257be76ea Finalize --> Realize
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32393 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 18:02:02 +00:00
Robert Roebling
f9a2692dbe Commited fix for HP compiler in raw bitmap code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32392 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 17:26:24 +00:00
Mattia Barbon
53ce655c5b Add implementation for pure virtual method.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32391 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 15:51:46 +00:00
Mattia Barbon
f29aaf78dc No real change.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32390 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 15:45:10 +00:00
Michael Wetherell
18a1516c4b Move wxGetOSFHandle to include/wx/msw/private.h since it needs HANDLE anyway
and make it a macro. Make the 'default' return value for wxGetFileKind
wxFILE_KIND_DISK and add a comment explaining what it's for.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32389 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 15:31:42 +00:00
Julian Smart
5a22377ee5 Spacing is better on GTK+ and (hopefully) Mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32388 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 14:40:39 +00:00
Vadim Zeitlin
96916d41ab update from Martin Srebotnjak <miles@filmsi.net>
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32387 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 13:06:58 +00:00
Ryan Norton
6cbe14ba98 guess it wasn't
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32386 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 11:30:55 +00:00
Ryan Norton
a4567ae7fe I'm assuming this was meant to be included
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32385 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 10:23:39 +00:00
Ryan Norton
dccd9b0cca setup.h regeration
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32384 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 10:19:54 +00:00
Ryan Norton
fcfc65d38f use_gstreamer fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32383 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 10:09:34 +00:00
Ryan Norton
af79064d31 change superflous elif to else
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32382 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 10:05:56 +00:00
Ryan Norton
a933a5449e fix for nonsupporting carbon builds
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32381 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 10:05:05 +00:00
Ryan Norton
1b5bee64fd Fix error and some warnings - wxTopLevelWindowMac needs toplevel.h, but we only need a plain window - warnings are an unused variable (commented out) and passing floats in place of shorts - and why is this file in wxBase anyway? Oh well...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32380 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 10:00:30 +00:00
Robin Dunn
24d7cbea55 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32379 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 03:32:46 +00:00
Robin Dunn
109b9ba582 The key event for the shift key should not start the cell editor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32378 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 03:16:46 +00:00
Robin Dunn
9718534022 minor tweaks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32377 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 01:13:12 +00:00
Robin Dunn
66cf41cb6c Correct GetString check message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32376 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 00:19:35 +00:00
Robin Dunn
55ae28331f Range check the index in GetString
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32375 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-26 00:18:24 +00:00
Robin Dunn
d1dc2b32e0 Added docview modules from Peter Yared and Morgan Hua
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32374 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-25 23:50:26 +00:00
Włodzimierz Skiba
18c45cd6dc Various warning fixes and minor source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32373 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-25 20:38:17 +00:00
Włodzimierz Skiba
a2dc319b12 BASE, NET and CORE separation in PalmOS build.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32372 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-25 19:16:55 +00:00
Julian Smart
9a679df67d Use wxIMAGE_OPTION_QUALITY
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32371 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-25 17:25:23 +00:00
Julian Smart
1fe7a7c744 Added wxIMAGE_OPTION_QUALITY
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32370 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-25 17:24:37 +00:00
Stefan Csomor
ff38d8c1eb add mac theme -> rgb color conversion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32369 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-25 16:51:58 +00:00
Stefan Csomor
94c80d5254 submenus have to work in these as well
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32368 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-25 14:19:33 +00:00
Włodzimierz Skiba
994e41cb4d More wxFile fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32367 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-25 14:16:42 +00:00
Stefan Csomor
5de694f065 new MLTE implementation, using our own scrolling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32366 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-25 13:57:37 +00:00
Stefan Csomor
29ee02dfe1 avoid negative widths, moved deeper down
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32365 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-25 13:49:49 +00:00
Stefan Csomor
c0624ca254 avoid negative widths
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32364 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-25 13:45:33 +00:00
Vadim Zeitlin
2eda91db29 fix for disabling the control (bug 1150830)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32363 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-25 11:07:39 +00:00
Włodzimierz Skiba
337dc4c1f6 Use of date picker control flag must be somehow defined.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32362 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-25 11:07:00 +00:00
Włodzimierz Skiba
a809b45d59 Completed sync of BASE_CMN_SRC between PalmOS and bakefiles. Missing features (stdpaths) added and buildable.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32361 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-25 09:44:49 +00:00
Chris Elliott
f5b14075b4 daily build of inno msw
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32360 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-25 09:08:34 +00:00
Julian Smart
9dabade20b Make HTCLIENT code off by default
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32359 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-25 08:08:22 +00:00
Robin Dunn
c1280d1ef6 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32358 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 19:52:14 +00:00
Robin Dunn
3d6c749c6c Some build tweaks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32357 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 19:50:53 +00:00
Robin Dunn
2da0c077ce bumped subrelease number
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32356 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 18:41:51 +00:00
Robin Dunn
5207975ffb Took out IsValid. It is not public everywhere.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32355 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 18:34:50 +00:00
Robin Dunn
69e8c95a47 Add IsValid()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32354 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 18:22:52 +00:00
Robin Dunn
6a210755f3 no-op methods for ownerdrawn methods in wxMenuItem
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32353 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 18:21:57 +00:00
Włodzimierz Skiba
683510536f Next step on bringing PalmOS build to the same filelist as in bakefiles: adjustements in file related wxAPI.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32352 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 18:01:42 +00:00
Vadim Zeitlin
f469584d64 fix for SetValue() losing effect after focus change (patch 1150911)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32351 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 16:58:14 +00:00
Vadim Zeitlin
456639ac87 really fixed bug with DST in Set(h, m, s, ms) (see patch 1097811)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32350 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 16:51:43 +00:00
Vadim Zeitlin
7474e2cb62 use correct colour for the toolbar initially (patch 1150657)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32349 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 15:22:31 +00:00
Włodzimierz Skiba
5c7022599b Provide to Borland the same fix as for Cygwin due to historic placement of Borland between Unix compilers. Needs further fix with move of Borland into MSW section in filefn.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32348 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 15:18:36 +00:00
Vadim Zeitlin
ed62f740a1 added missing virtual dtors to base classes (patch 1150945)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32347 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 14:33:32 +00:00
Stefan Csomor
4e4770405a under compositing windows when using the 'classic' mlte we must remove and reinsert the scrollbars as they have been inserted 'out of embedding order' onto the root control
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32346 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 14:20:34 +00:00
Stefan Csomor
1688bb3899 add version checks instead of symbol checks, so that CW builds do not complain on 10.2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32345 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 14:09:39 +00:00
Stefan Csomor
91ae6e3a94 notifying children of absolute position changes, add version checks instead of symbol checks, so that CW builds do not complain on 10.2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32344 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 14:09:08 +00:00
Stefan Csomor
37d0bfa875 making implementation independent of a wx-peer of that control
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32343 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 14:07:55 +00:00
Stefan Csomor
89a66f111b forwarding position changed events to peer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32342 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 14:06:15 +00:00
Włodzimierz Skiba
d289329218 Further improvements in composite controls (wxRadioBox) on PalmOS.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32341 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 10:51:11 +00:00
Włodzimierz Skiba
acb1070b08 Small move towards similar set of files as in bakefiles for catching all the possible conflicts in sources and include and verify all missing files like extended.c
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32340 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 10:48:18 +00:00
Włodzimierz Skiba
f1b1ecf020 PalmOS headers have ssize_t with no sign of it so we have to assume they are always there. Missed semicolon.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32339 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 10:43:27 +00:00
Julian Smart
6aa0103384 Restored mouse sensitivity for static box and static bitmap
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32338 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-24 08:26:50 +00:00
Vadim Zeitlin
fc46781591 update from Michalis Kabrianis (patch 1145218)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32337 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 22:55:37 +00:00
Włodzimierz Skiba
17fb35240e More support in wxRadioBox for PalmOS. Refreshing fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32336 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 20:46:32 +00:00
Włodzimierz Skiba
d8245a8160 wxDocManager::GetTemplates was missing (#1149847)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32335 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 20:08:51 +00:00
Stefan Csomor
d56db55ea0 force icon type for tools, as PICTs are not shown
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32334 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 18:19:45 +00:00
Stefan Csomor
45cf8535da scaling for 24x24 and 64x64 sizes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32333 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 18:18:33 +00:00
Stefan Csomor
7a9263008b HITextView fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32332 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 17:16:30 +00:00
Włodzimierz Skiba
6cb0bfdf9d Linup API of wxRadioBox::Show on all ports. Move wxRadioBox::IsValid from wxUniversal to base class (+ GTK which do not use base class) and use it where applicable. Minor source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32331 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 17:04:16 +00:00
Vadim Zeitlin
a97cd79840 don't redefine NOMINMAX if already defined (mingw32 does this apparently)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32330 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 16:54:16 +00:00
Włodzimierz Skiba
fa50c0e3bf Linup API of wxRadioBox::Show on all ports. Move wxRadioBox::IsValid from wxUniversal to base class (+ GTK which do not use base class) and use it where applicable. Minor source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32329 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 16:52:31 +00:00
Stefan Csomor
55866801f0 switch OSX implementations to unicode text ctrl meanwhile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32328 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 16:48:19 +00:00
Vadim Zeitlin
622c514586 removed checks for compilers supporting wxUSE_ON_FATAL_EXCEPTION, it's in wx/chkconf.h now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32327 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 16:46:01 +00:00
Vadim Zeitlin
a8e4cf2522 build ODBC sample under MSW too if wxUSE_ODBC (closes 1083805)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32326 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 16:44:20 +00:00
Włodzimierz Skiba
789f679516 Linup API of wxRadioBox::Show on all ports. Move wxRadioBox::IsValid from wxUniversal to base class (+ GTK which do not use base class) and use it where applicable. Minor source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32325 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 16:39:25 +00:00
Chris Elliott
14fc1a0c5c daily build of docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32324 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 16:36:08 +00:00
Vadim Zeitlin
f677733ce3 update from Martin Srebotnjak <miles@filmsi.net>
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32323 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 16:24:27 +00:00
Stefan Csomor
bcbbfab838 along the same change in dc
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32322 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 16:18:00 +00:00
Stefan Csomor
0f7817ab1f revamping classic MLTE implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32321 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 16:13:14 +00:00
Stefan Csomor
637013ebf4 adding peer back to wxWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32320 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 16:08:34 +00:00
Stefan Csomor
dad7b12aee adding peer back to wxWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32319 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 15:53:06 +00:00
Stefan Csomor
6449b3a8e9 carbon cfm fixes, factoring code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32318 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 15:52:05 +00:00
Włodzimierz Skiba
8b6d589d51 Presentation of hiding and disabling of the items in wxRadioBox.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32317 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 15:50:48 +00:00
Stefan Csomor
23ad132ca3 carbon cfm fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32316 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 15:48:52 +00:00
Stefan Csomor
b905d6cc08 adding a peer pointing back to wxWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32315 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 15:46:03 +00:00
Stefan Csomor
e2f865d857 moving all border invalidations into one area, also opening peer access for all
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32314 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 15:39:15 +00:00
Włodzimierz Skiba
33babf75a7 Registered PalmOS creatorID for minimal sample for the future bakefile support. Non influence on other formats.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32313 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-23 13:12:54 +00:00
Dimitri Schoolwerth
491a2b094b use a larger font again for wxMSW (the chopping off was caused by a wxStaticText resizing bug which has been fixed)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32312 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-22 23:08:35 +00:00
Robert Roebling
376c0148ef Better correction to the wxListBox misbehaviour.
Strangely, the listbox sends out 2 events upon
   the first selection.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32311 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-22 22:45:32 +00:00
Václav Slavík
64f9c10094 fixed wxDateTime::ParseFormat to correctly handle '%x' on Windows
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32310 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-22 16:48:34 +00:00
Włodzimierz Skiba
8795498cd9 Licence name correction.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32309 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-22 15:09:56 +00:00
Włodzimierz Skiba
03021f718b More connections between wxWindow and wxRadioBox.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32308 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-22 14:48:31 +00:00
Michael Wetherell
851b16b935 Removed dependency on wx/html/forcelnk.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32307 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-22 10:41:48 +00:00
Włodzimierz Skiba
11f4a34413 More wxAPI for radiobox of PalmOS.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32306 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-22 07:22:11 +00:00
Ryan Norton
e84e2baf03 fix some 'might not be initialized in this function' warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32305 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-22 07:15:57 +00:00
Włodzimierz Skiba
f050223c83 wxRect::SetSize documented.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32304 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-22 07:15:18 +00:00
Dimitri Schoolwerth
e1e36a3e21 don't create a png alpha image if we don't have to
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32303 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-22 00:13:51 +00:00
Robert Roebling
1e2cb856c4 Show that the GTK+ listbox doesn't deselect any item
in MULTIPLE mode when clicked upon.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32302 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 22:46:34 +00:00
Włodzimierz Skiba
1a87edf286 Consistent wxWindow::Enable with wxRadioBox::Enable for control and its items. wxRadioBox of PalmOS. Little source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32301 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 21:02:41 +00:00
Robin Dunn
1814658d67 fixed compile error
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32300 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 18:34:20 +00:00
Stefan Csomor
42f8298f6f warning fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32299 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 18:33:03 +00:00
Robin Dunn
21334a4689 Treat the numpad enter key the same as the main enter key
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32298 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 17:32:16 +00:00
Stefan Csomor
fb7e28db37 XTI fix for VC 7.1 (VC 8.0 didn't complain)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32297 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 16:33:22 +00:00
Stefan Csomor
0d5eaa5096 drawing circles with a transparent pen was filling of course...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32296 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 14:37:42 +00:00
Stefan Csomor
969cfbc085 fix for quartz case
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32295 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 14:32:59 +00:00
Julian Smart
f43a6e5ca9 Updated FAQs from web site
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32293 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 14:19:50 +00:00
Stefan Csomor
852a8f8b53 warning cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32292 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 14:00:52 +00:00
Stefan Csomor
68654a8295 trials for proper synchronizing between different contexts on the same window
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32291 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 13:57:05 +00:00
Stefan Csomor
796a6ef04a adapting to bitmaprefdata changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32290 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 13:53:22 +00:00
Stefan Csomor
24260aaea7 first step into modernizing MLTE-Classic as it still seems to be the most complete answer to our needs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32289 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 13:51:51 +00:00
Stefan Csomor
542f604ff6 carbon cfm / classic fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32288 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 13:50:19 +00:00
Stefan Csomor
b28aeea5ca moving native format generation into bitmap ref data because of the owner semantics (we don't know when to release a PicHandle otherwise
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32287 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 13:48:21 +00:00
Stefan Csomor
6d2c830a3c moving native format generation into bitmap ref data because of the owner semantics (we don't know when to release a PicHandle otherwise
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32286 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 13:42:35 +00:00
Julian Smart
aac97549ab Don't inherit background from parent if we're top-level
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32285 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 11:41:59 +00:00
Julian Smart
26da541358 Added --norpms switch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32284 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 09:21:56 +00:00
Julian Smart
5054c9365a Corrected compilo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32283 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 09:20:42 +00:00
Dimitri Schoolwerth
e0cb07e376 reworded parts of the 'alpha channel support' paragraph
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32282 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 02:13:25 +00:00
Vadim Zeitlin
cb0791531f added debug/release DLL configurations so that VC++ chooses the right one when building wx as DLL (should close 877037)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32281 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 02:11:03 +00:00
Dimitri Schoolwerth
b3ced90555 fixed MSVC6 truncation warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32280 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 02:09:08 +00:00
Vadim Zeitlin
baec3aee00 don't define min/max macros in windows.h (closes 1052256)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32279 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 02:06:21 +00:00
Vadim Zeitlin
aefcdeee3f declare variable used in source code example (bug 1093638)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32278 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 01:56:35 +00:00
Vadim Zeitlin
a0573e8eb0 removed ambiguity from wxGLCanvas ctors (bug 1102544)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32277 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 01:52:23 +00:00
Vadim Zeitlin
91d90dd20b removed mention of client data, there is none in this class (bug 1144820)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32276 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 01:44:46 +00:00
Vadim Zeitlin
1b965a9cfb call gdk_flush() in Update() (see discussion of patch 1047642)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32275 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 01:24:22 +00:00
Vadim Zeitlin
09d8cc190d update from James Bishop
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32274 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 00:24:33 +00:00
Vadim Zeitlin
89448b5dd7 use different image for pressed button state
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32273 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 00:10:56 +00:00
Vadim Zeitlin
7cf3223a80 implementation of wxRendererXP::DrawComboBoxDropButton() (patch 1144845)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32272 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-21 00:04:24 +00:00
Václav Slavík
86834940ec fixed spec files: no data files are installed under prefix/share/wx anymore
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32271 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 22:22:44 +00:00
Robert Roebling
e04507df82 Changed wxFopen() calls to use c_str
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32270 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 20:50:17 +00:00
Robert Roebling
ef00dc0917 Applied patch to allow resizing the popup window.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32269 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 20:46:37 +00:00
Robert Roebling
4fcfa27cb3 Added LDOWN handler for wxListBox so that it wil
deselect a selected item if clicke upon. This is
   actually not the native GTK+ behaviour, but the
   native behaviour seems just broken.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32268 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 20:39:51 +00:00
Robert Roebling
4adb6d28f7 Commited fix for wrong background colour in TLWs. I don't
know if this will play well with themes. Alternatively,
   one could change one of the few lines below to parent == this;


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32267 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 19:35:40 +00:00
Vadim Zeitlin
1bbcb0d516 force wxUSE_THREADS/EXCEPTIONS to 0 if wxNO_THREADS/EXCEPTIONS is defined
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32266 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 19:15:43 +00:00
Vadim Zeitlin
b39c4812ca mention wxNO_THREADS/EXCEPTIONS in comment before wxUSE_THREADS/EXCEPTIONs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32265 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 19:13:23 +00:00
Vadim Zeitlin
78603ad208 define wxNO_(THREADS|RTTI|EXCEPTIONS) if the corresponding feature is disabled
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32264 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 19:01:56 +00:00
Vadim Zeitlin
50e768b95a removed explicit calls to gtk_glwindow_(realized/map)_callback() as they should be called by GTK+ itself anyhow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32263 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 18:58:53 +00:00
Julian Smart
bee44427ef Duplicate label corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32262 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 18:25:14 +00:00
Vadim Zeitlin
b9e34846ec mention [_]UNICODE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32261 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 18:09:10 +00:00
Vadim Zeitlin
a9b99afc8b regenerated after adding USE_THREADS and USE_RTTI flags
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32260 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 17:31:36 +00:00
Vadim Zeitlin
0e10e38d8b more minor doc corrections (patch 1144628)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32259 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 17:06:25 +00:00
Julian Smart
008881c3f0 Font correction
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32258 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 16:41:49 +00:00
Stefan Csomor
64f553a486 toggle corrected for click as well
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32257 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 16:41:09 +00:00
Stefan Csomor
d351c8ee8f added missing files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32256 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 16:27:19 +00:00
Stefan Csomor
9954f65067 cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32255 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 16:26:10 +00:00
Stefan Csomor
f572d6495f changing include type for XCode
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32254 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 16:24:35 +00:00
Julian Smart
2ef6026900 menu name consistency
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32253 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 16:14:03 +00:00
Julian Smart
dbfb85a765 Doc fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32252 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 15:57:24 +00:00
Julian Smart
77e0a6d8c3 Identifiers can't be zero
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32251 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 15:35:13 +00:00
Vadim Zeitlin
327d463e26 old translation file which apparently never got checked in somehow...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32250 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 15:32:03 +00:00
Vadim Zeitlin
9d31b36c00 Norwegian Bokmal is named nb, not nb_NO -- renamed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32249 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 15:24:14 +00:00
Vadim Zeitlin
f420a70918 wxUniv compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32248 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 15:09:20 +00:00
Vadim Zeitlin
4e5c6c33c5 cleanup of TrackMouseEvent() code (use a single #ifdef instead of 3 different ones to test for the same thing)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32247 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 15:07:19 +00:00
Vadim Zeitlin
8067659371 compilation fix for wxUSE_STL==1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32246 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 14:38:17 +00:00
Vadim Zeitlin
c2efd89044 added USE_RTTI (instead of it being set by USE_EXCEPTIONS)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32245 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 14:14:08 +00:00
Václav Slavík
d1e5aa0793 added USE_THREADS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32244 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 13:22:24 +00:00
Julian Smart
4df9240fe8 wxrc no longer lives under contrib
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32243 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 13:07:11 +00:00
Vadim Zeitlin
a91bcd3b54 removed wxLoadBitmap() introduced in 1.37 -> 1.38; just use DIBs under Windows CE as well, we surely shouldn't duplicate system functions _especially_ on a platform with limited resources such as CE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32242 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 12:07:25 +00:00
Julian Smart
71f2ad997a Don't repaint window if hidden
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32241 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 10:39:50 +00:00
Julian Smart
8ee64db5c1 Fix for compilo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32240 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 10:35:51 +00:00
Ryan Norton
16c81607bf if wxUSE_XXX fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32239 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 09:33:04 +00:00
Ryan Norton
a6900d1083 use on cocoa without fontmapper
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32238 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 08:45:29 +00:00
David Elliott
7e00fd890f Don't build when __WXMAC__ is defined but __WXMAC_OSX__ is not (i.e. CFM).
FIXME: We really ought to put this (as well as the existing __WXWINCE__ check)
into files.bkl but I have no idea how to do it cleanly.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32237 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 03:45:11 +00:00
Kevin Hock
a3b8b891fb Color dialog sliders make more sense inverted, with 0 at the bottom (slide the scale UP to add color, consistent with other "generic" color dialogs in other programs).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32236 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 03:22:54 +00:00
David Elliott
248eaddf7a Don't automatically define WX_PRECOMP when building using configure.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32235 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 02:19:52 +00:00
Vadim Zeitlin
bc13e77252 use native gtk_paint_expander() to implement DrawTreeItemButton() under GTK+ 2.0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32234 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 01:54:51 +00:00
Dimitri Schoolwerth
28d90b8963 minor textual fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32233 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 01:54:32 +00:00
Vadim Zeitlin
a8ac548ed0 trying to draw transparent arrow instead of opaque one but it doesn't seem to change anything
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32232 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 01:33:03 +00:00
Vadim Zeitlin
e1befae3d2 yet more corrections to drop down button drawing: don't draw a border around the arrow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32231 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 01:06:42 +00:00
Vadim Zeitlin
9d9e32a07a don't use invalid font in wxDC used for measuring text extent
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32230 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 00:52:49 +00:00
Vadim Zeitlin
b49f58fe12 compilation fix after last patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32229 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 00:45:10 +00:00
Robin Dunn
68350608bc reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32228 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 00:15:10 +00:00
Vadim Zeitlin
afad4a880e added OnSysColourChanged() (modified patch 1103439)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32227 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 00:12:01 +00:00
Vadim Zeitlin
0f35356305 minor docs corrections (patch 1144566)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32226 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 00:07:35 +00:00
Robin Dunn
719493e14b On wxMac don't call Refresh from FullPaint as that is the biggest
cause of the performance problems.  Instead call refresh when the
AutoComp window is displayed or hidden to ensure that borders,
etc. are drawn/erased as needed.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32225 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 23:45:18 +00:00
Robin Dunn
32478f52ad re-enable wxDrawWindowOnDC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32224 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 23:08:26 +00:00
Robin Dunn
0c243d9389 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32223 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 23:05:19 +00:00
Robin Dunn
a85598a170 Add more art IDs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32222 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 22:59:48 +00:00
Robin Dunn
655e17cf4e Add InitAlpha
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32221 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 22:55:35 +00:00
Vadim Zeitlin
94ac840b49 oops, fixed crash introduced in last check in
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32220 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 22:53:22 +00:00
Vadim Zeitlin
c6e8c6f84a compilation fix (need meth.h for fabs)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32219 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 22:48:26 +00:00
Vadim Zeitlin
a6ed2b09a3 set string length to 0 in AllocBeforeWrite() just to be tidy (replaces patch 1123226)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32218 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 22:46:06 +00:00
Robin Dunn
b718902586 Add tab methods to NavigationKeyEvent
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32217 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 22:39:17 +00:00
Robin Dunn
6e1eab530e Add more art IDs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32216 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 22:37:24 +00:00
Vadim Zeitlin
298ca00cdc added wxNavigationEvent::FromTab flag
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32215 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 21:59:21 +00:00
Vadim Zeitlin
7ff1b620e8 fix (with unknown but apparently beneficial effects) for TAB navigation in radio buttons (patch 1038330)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32214 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 21:58:48 +00:00
Vadim Zeitlin
828f093601 added InitAlpha() (replaces patch 991168)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32213 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 21:51:37 +00:00
Vadim Zeitlin
1dfd425a8c reenable WS_TABSTOP (patch 1045547)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32212 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 21:09:49 +00:00
Vadim Zeitlin
78a87a5d73 process CBN_SELENDOK and not only CBN_SELCHANGE (patch 1083907)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32211 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 20:57:50 +00:00
Vadim Zeitlin
964f23b70e fix for Create(wxDateInvalidDate)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32210 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 20:52:38 +00:00
Vadim Zeitlin
8008807eb1 we don't need to use solid colour for background drawing when we're inside notebook any longer, so no need to override MSWGetBgBrushForSelf()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32209 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 20:50:59 +00:00
Vadim Zeitlin
07c1932792 added MSWPrintChild() for drawing child background (replaces patch 1108389)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32208 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 20:49:50 +00:00
Robin Dunn
31059a74bd Fixed compile error
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32207 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 20:16:37 +00:00
Vadim Zeitlin
b76786ccca added missing LFs to the header
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32206 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 20:16:29 +00:00
Stefan Csomor
08c8555e0b guarding against non supported logical modes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32205 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 20:04:05 +00:00
Stefan Csomor
69342052a4 use theme drawing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32204 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 19:56:23 +00:00
Stefan Csomor
d108f23649 adapt to mac l&f
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32203 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 19:55:18 +00:00
Vadim Zeitlin
4bd6ae0fad extracted check for wxListCtrl in WM_PRINT handler to wxListCtrl itself, base class shouldn't have to worry about its derived classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32202 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 19:24:46 +00:00
Vadim Zeitlin
2fbef27947 fixes after wx-config and other changes (patch 1076156)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32201 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 18:17:58 +00:00
Stefan Csomor
2480cf888f Adding theme drawing for list header under 10.3
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32200 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 17:43:50 +00:00
Stefan Csomor
e604288b3e EVT_CHAR_HOOK added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32199 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 17:37:45 +00:00
Vadim Zeitlin
26f60eb6a4 don't steal EVT_RIGHT_UP in rich edit controls for context menu (patch 1143823)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32198 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 17:27:30 +00:00
Vadim Zeitlin
51d2fa37c4 more visual improvements to owner-drawn menus (patch 1143785)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32197 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 17:25:37 +00:00
Vadim Zeitlin
525165fa0a update for 2.5.4 from Francisco Vila <francisco.vila@hispalinux.es>
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32196 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 17:11:04 +00:00
Vadim Zeitlin
0afa5859ab wxGenericListCtrl::SetItemState(-1) now changes the state of all items (patch 1101650)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32195 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 17:07:17 +00:00
Vadim Zeitlin
50f65637a8 added more icons (for GTK only) (patch 1097684)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32194 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 16:56:13 +00:00
Vadim Zeitlin
62d9eab60c fixed hash collisions in ZIP files (patch 1082026)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32193 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 16:53:49 +00:00
Vadim Zeitlin
f260c476e4 wxCommandProcessor::MarkAsSaved() and IsDirty() added (modified patch 1062556)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32192 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 16:52:08 +00:00
Vadim Zeitlin
8348e2cbf3 fix operator=() (patch 1126195)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32191 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 16:35:00 +00:00
Vadim Zeitlin
07d0abae96 document GetOptionInt() as returning 0 for the options which are not present
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32190 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 16:33:38 +00:00
Vadim Zeitlin
fe9308c639 more options for JPEG and TIFF handlers (slightly modified patch 1044470)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32189 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 16:32:29 +00:00
Vadim Zeitlin
a4622f29d8 draw drop down button using native calls (patch 1144389)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32188 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 15:54:07 +00:00
Vadim Zeitlin
3e15dde396 added wxMBConv parameter for wxFFile::ReadAll() and documented it (improved patch 1041642)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32187 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 15:53:04 +00:00
Stefan Csomor
b2f3b00bd2 switching to IconRefs for menu bitmaps
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32186 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 15:42:37 +00:00
Stefan Csomor
a8f234d2a9 cleaning up, adding support for Quartz / Themeing before 10.3
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32185 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 15:34:35 +00:00
Stefan Csomor
4a63451be5 fixes, adding paint handler for non OSX case toplevel window
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32184 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 15:30:16 +00:00
Stefan Csomor
431c82e03e adding PICT conversion for IconRef
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32183 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 15:24:13 +00:00
Vadim Zeitlin
fb3aacd727 use const char * buffer to fix CW compilation (patch 1117210)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32182 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 15:20:13 +00:00
Vadim Zeitlin
7c44c64c9e fixes after wx-config changes (patch 1076155)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32181 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 15:15:07 +00:00
Vadim Zeitlin
f52c3131bf VK_MENU is WXK_ALT, notWXK_MENU (patch 1119601)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32180 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 15:08:36 +00:00
Vadim Zeitlin
930fb29eb8 fixes for MSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32179 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 14:25:21 +00:00
Mattia Barbon
2f1ed91f46 Updated but not completed Italian translation. Translated all
non-error strings.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32178 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 14:07:46 +00:00
Vadim Zeitlin
29faa33b2a update from Jonas Rydberg (patch 1143491)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32177 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 14:00:05 +00:00
Stefan Neis
e201b348b9 Bugfixes for OS/2.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32176 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 13:58:40 +00:00
Vadim Zeitlin
0577693d67 changed wx version to 2.5.4
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32175 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 13:51:18 +00:00
Vadim Zeitlin
ef5736d4d0 update from Jaakko Salli (patch 1123796)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32174 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 13:49:24 +00:00
Vadim Zeitlin
407020995e 1. undid the "simplification" of patch 1096066 which resulted in a crash
(see this patch discussion)
2. check that all views agree to close before starting to delete them
3. commented the code so that the next poor soul looking at it will know
   that deleting a view can delete the document which deletes -- surely
   wasn't obvious to me...


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32172 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 13:45:31 +00:00
Vadim Zeitlin
bd2d8bfde1 update (recoded to UTF-8) from liouxiao@hotmail.com
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32171 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 13:17:26 +00:00
David Elliott
6177576129 include wx/setup.h and check to make sure it's not the configure created
setup.h before doing anything specific for Metrowerks.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32170 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 08:27:01 +00:00
David Elliott
9273ffba9b Check for xlC and add -qunique to CXXFLAGS if we're using it.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32169 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 08:16:00 +00:00
David Elliott
480ccd2194 Check to see if -ext o option is required to get compiler to write
foo.o instead of foo.c.o or foo.cc.o.  (MetroWerks)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32168 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 07:14:14 +00:00
David Elliott
4d7ec9f1e7 When host is OS X (PowerPC Darwin) check if compiler defines __POWERPC__
before defining it in setup.h and if -D__CF_USE_FRAMEWORK_INCLUDES__ is
required for CoreFoundation headers (MW).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32167 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 06:58:25 +00:00
Kevin Hock
e327fddf5f ENTER and LEAVE mouse events for multi-line text controls on GTK2, from Mart R. - Closes bug 1015324.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32166 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 06:10:55 +00:00
Stefan Csomor
53e8c532c6 corrected bitmap mask -> Image conversion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32165 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 05:29:05 +00:00
David Elliott
1cbf5bc6df Use plain extern instead of extern "C" for vsnprintf declaration when not
compiling as C++.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32164 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 04:22:27 +00:00
Kevin Hock
8b939bc081 Added newline at the end, eliminates gcc warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32163 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 04:04:08 +00:00
David Elliott
94acd38ec2 Rebaked with Bakefile 0.1.7.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32162 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 03:56:12 +00:00
Kevin Hock
22095a6e1a Sample update - wxTE_AUTO_URL from Mart R. [patch 1126182]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32161 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 02:57:46 +00:00
Kevin Hock
d69b094f36 Documentation - wxTE_AUTO_URL for wxGTK2 from Mart R. [patch 1126182]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32160 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 02:56:40 +00:00
Kevin Hock
9440c3d0e9 wxTE_AUTO_URL for wxGTK2 from Mart R. [patch 1126182]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32159 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-19 02:55:32 +00:00
Vadim Zeitlin
f131c6bc04 another update from Martin Srebotnjak <miles@filmsi.net>
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32158 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 23:26:35 +00:00
Kevin Ollivier
764e66945a Adding GetPartialTextExtents implementation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32157 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 23:21:27 +00:00
Włodzimierz Skiba
0dacfb8ad6 Most important polish translations.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32156 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 20:55:46 +00:00
Robin Dunn
6f016d5401 Patch #1143556: mods to SashWindow demo: auto-generate IDs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32155 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 20:25:05 +00:00
Stefan Csomor
fec8346a04 using correct theme heights for header on mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32154 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 20:23:02 +00:00
Stefan Csomor
5a904a32e6 new layout was messing with separator positions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32153 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 20:21:35 +00:00
Stefan Csomor
30f1ed9e44 guard quartz specific code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32152 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 20:20:18 +00:00
Robin Dunn
53aa7709e0 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32151 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 19:33:00 +00:00
Robin Dunn
ac03a19f93 wxPyCallback needs to derive from wxEvtHandler now since the
wxObjectEventFunction typedef changed.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32150 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 19:28:16 +00:00
Robin Dunn
ec17cfa927 Don't know if this is right but it fixes a compile error...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32149 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 19:24:09 +00:00
Robin Dunn
51c5e1f21e Added wx.lib.gestures module from Daniel Pozmanter which supports
using Mouse Gestures in an application.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32148 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 18:02:19 +00:00
Robin Dunn
d8b49350e6 Fix the use of Today() for when invalid date is passed to ctor. Also
set best/min size using size passed to ctor.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32147 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 17:58:25 +00:00
Robin Dunn
718903fe64 wxStdButtonSizer Finalise --> Realize
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32146 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 17:49:03 +00:00
Stefan Csomor
1181ee3f2d setting up correct port origin as well
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32145 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 16:52:32 +00:00
Stefan Csomor
9f391ae154 reintroducing direct access, clipping to client area in dc
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32144 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 16:48:22 +00:00
Stefan Csomor
880f536912 reintroducing direct access, cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32143 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 16:47:07 +00:00
Włodzimierz Skiba
df57c15cce Typo fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32142 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 10:23:07 +00:00
Dimitri Schoolwerth
8d75fba6c9 use prefix file; (auto-)removed some of the unused ftp/java/x86 settings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32141 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 09:57:57 +00:00
Dimitri Schoolwerth
d0c5744137 don't redefine __WXMAC__
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32140 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 09:53:47 +00:00
Stefan Csomor
73fd9428ef correcting support for more tool sizes, support for Toggle Appearance under OSX, layout tools more nicely, hittesting for entire area of control
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32139 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 07:28:08 +00:00
Stefan Csomor
410a8eafab having fixed size icons, scaling from other common formats, otherwise the icons don't get scaled correctly by the OS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32138 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 07:19:14 +00:00
Stefan Csomor
8d3b6b8aa1 alpha support for Scale added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32137 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 07:14:07 +00:00
Robin Dunn
71699da48d typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32136 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 05:21:49 +00:00
Robin Dunn
91334b48e2 Added wx.DatePickerCtrl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32135 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 04:52:13 +00:00
Robin Dunn
006f35560e Avoid doing a str(object) since in some cases it can result in very
large strings


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32134 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 04:50:41 +00:00
Robin Dunn
6f25918850 Don't override methods that are in wxControlWithItems
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32133 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 04:48:26 +00:00
Robin Dunn
7c1f6b54a5 docstring fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32132 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 04:46:57 +00:00
Robin Dunn
24054d48e9 can't have a zero sized font
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32131 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 04:46:40 +00:00
Robin Dunn
4d2d4dde45 Removed Loop and IsLooped methods, other cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32130 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 04:44:43 +00:00
Ryan Norton
179e085f05 wxUSE_XXX related fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32129 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 04:43:47 +00:00
Robin Dunn
3136b08220 Add SetBackgroundImage
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32128 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 04:42:04 +00:00
Robin Dunn
b3b61cdaa0 Added wx.DatePickerCtrl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32127 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 04:38:30 +00:00
Robin Dunn
eba2f031e7 Select an item using the value passed to the ctor/Create
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32126 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 04:07:11 +00:00
Robin Dunn
d64396087f Avoid wxTaskBarIconAreaBase::DoPopupMenu unresolved symbol in GTK < 2.1 builds
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32125 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 04:06:08 +00:00
Ryan Norton
83efadb7f3 [ 1123124 ] wxStringBase::Alloc can change string length
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32124 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-18 03:53:56 +00:00
Vadim Zeitlin
518ba66331 revert to the old flicker-less version when background bitmap is not used
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32123 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-17 23:55:53 +00:00
Vadim Zeitlin
94ab4d929b minor cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32122 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-17 23:20:39 +00:00
Vadim Zeitlin
a69e2a0ac7 corrected wxRTTI macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32121 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-17 23:17:30 +00:00
Vadim Zeitlin
38511687af more tweaks to drop down arrow drawing (Andreas Pflug)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32120 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-17 18:29:22 +00:00
Vadim Zeitlin
96eb51bbf7 fixed typo in EVT_COMMAND definition
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32119 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-17 16:56:35 +00:00
Ryan Norton
16cafacf24 use without url
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32118 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-17 13:13:01 +00:00
Ryan Norton
4669dcb216 sockets require stopwatch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32117 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-17 10:53:37 +00:00
Ryan Norton
4b8f9d466f Use without mimetypes enabled
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32116 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-17 10:43:52 +00:00
Ryan Norton
859906241d compile wxFileXXXStream without wxFFileXXXStream
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32115 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-17 10:42:22 +00:00
Ryan Norton
2d1659cf32 Enable compilation on mac without wxFontMapper
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32114 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-17 10:38:45 +00:00
Ryan Norton
c5ceb215a9 gcc doesn't have pragma warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32113 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-17 10:19:31 +00:00
Ryan Norton
c6d60564cb int argument/unsigned int arg warning fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32112 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-17 10:17:04 +00:00
Julian Smart
87b8de0fce Added PalmOS to release scripts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32111 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-17 09:37:13 +00:00
Stefan Csomor
abbcdf3ff7 24x24 bitmaps and separator for flat style added
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32110 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-17 08:44:37 +00:00
Ryan Norton
8f248607e5 ComboBox for cocoa
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32109 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-17 04:45:13 +00:00
Kevin Ollivier
c605b871f0 Added empty methods for wxIcon functions to match the API on other platforms.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32108 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-17 03:20:16 +00:00
Vadim Zeitlin
d891cf3527 update from Hans F. Nordhaug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32107 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-17 00:25:13 +00:00
Ryan Norton
50d2af52a5 implement some missing methods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32106 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-16 23:44:18 +00:00
Robert Roebling
836dded82b Applied background colour patch for Motif notebooks
(actually in generic tab control code).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32105 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-16 23:08:22 +00:00
Robert Roebling
b6de8445dc Removed the complex popup test.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32104 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-16 22:36:54 +00:00
Julian Smart
aa29eefaef Fixed windows not displaying on SmartPhone
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32103 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-16 22:08:57 +00:00
Dimitri Schoolwerth
1eeb64fb65 fixed wxlib Mach-O debug and release compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32102 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-16 20:59:19 +00:00
Włodzimierz Skiba
c47addef10 wxPoint/Size/Rect() causes the same code with (0,0) initialization and is incomparably more readable and clear.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32101 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-16 20:34:34 +00:00
Stefan Csomor
ee799df7ff added non-bordered toolbar tools
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32100 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-16 20:13:48 +00:00
Dimitri Schoolwerth
1d49979f74 fixed Mach-O compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32099 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-16 20:09:35 +00:00
Dimitri Schoolwerth
00a1d2e004 minor typo fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32098 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-16 19:25:35 +00:00
Włodzimierz Skiba
432968bf3d 'Compatibility' fix for connecting events.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32097 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-16 18:02:48 +00:00
Vadim Zeitlin
7fc24fb152 tiny script to generate tags for wxMSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32096 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-16 16:38:49 +00:00
Julian Smart
94f5392355 Standard dialogs becoming useable on WinCE.
Make standard button sizer horizontal on WinCE since
vertically it looks atrocious (app will need to reduce
number of buttons if they don't fit)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32095 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-16 15:37:09 +00:00
Julian Smart
26a12ab34c Added assert (WinCE doesn't report checked status correctly)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32094 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-16 14:44:15 +00:00
Vadim Zeitlin
4b4f6e0fdd use WX_DEFINE_ARRAY_PTR instead of WX_DEFINE_ARRAY to suppress warnings about operator->()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32093 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-16 10:14:42 +00:00
Włodzimierz Skiba
6058220154 Native PalmOS wxLongLong. Introduction of wxULongLong_t due to 'unsigned' not working on internally typedefed wxLongLong_t (both unsigned wxLongLong_t and wxULongLong_t should work for other platforms). Improvements in wxDatePicker control on PalmOS.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32092 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-16 09:35:31 +00:00
Julian Smart
b734b2cafa WinCE doesn't have _set_se_translator
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32091 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-16 00:08:28 +00:00
Robert Roebling
024e9a4cea Better resizing code fro wxComboBox.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32090 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 23:19:32 +00:00
Julian Smart
c0aadc6f40 Absolutely no idea what DisableAutomaticSETranslator is but
WinCE doesn't like it


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32089 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 22:54:38 +00:00
Julian Smart
2d5ba36548 Ignorant WinCE fixes for compile breakage
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32088 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 22:52:27 +00:00
Robert Roebling
388413fca8 Typo.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32087 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 21:56:07 +00:00
Robert Roebling
0ff2a74d0c Implemented wxBitmap::HasAlpha() and ::UseAlpha().
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32086 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 20:27:46 +00:00
Stefan Csomor
a4ea2d8dbb guard against errors like in wxStringBase::AllocBeforeWrite code (1123226)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32085 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 20:00:52 +00:00
Robert Roebling
85445d3445 Typo.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32084 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 19:55:39 +00:00
Robert Roebling
2555c77a81 Committed currently disabled code that implements
the wxStopWatch based on QueryPerformanceCounter()
   I'll do more testing if I can, but here is the code
   for other to look at.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32083 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 19:50:27 +00:00
Ryan Norton
8e475be490 fixup for missing variable
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32082 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 19:19:51 +00:00
Ryan Norton
c08d805c5a [ 1123256 ] wxString operator+ pre-allocates buffer then throws it away ---- and ---- [ 1123195 ] Avoid double-copy in two wxStringBase functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32081 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 19:12:36 +00:00
Robert Roebling
b46a190c27 Fixed mem leak in wxColour::Set()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32080 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 18:43:33 +00:00
Robert Roebling
e66faf3d43 Applied pango font patch for X11.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32079 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 18:31:10 +00:00
Vadim Zeitlin
ac10c957a5 !USE_PCH compilation fix after last check in
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32078 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 17:32:49 +00:00
Vadim Zeitlin
88e04461ee removed m_isCaretAtEnd optimization added in rev 1.232 as we don't always detect when the carets position changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32077 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 14:02:25 +00:00
Vadim Zeitlin
b629d6d933 corrected EVT_TEXT_URL() definition, its handler takes wxTextUrlEvent and not wxCommandEvent
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32076 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 13:57:52 +00:00
Julian Smart
9f8b5032ab Typo correction
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32075 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 13:34:11 +00:00
Julian Smart
184686f656 Small doc corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32074 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 13:17:10 +00:00
Vadim Zeitlin
8812e09868 reuse code from wxDC::GetMultiLineTextExtent() instead of duplicating it here
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32073 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 12:22:07 +00:00
Vadim Zeitlin
d2fde247b6 (blind) fix for virtual function hiding warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32072 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 12:16:33 +00:00
Vadim Zeitlin
853fab0276 merged new strings into updated translation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32071 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 12:05:21 +00:00
Vadim Zeitlin
e554d626b7 (blind) fix for ambiguity between Disconnect() overloads
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32070 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 12:04:53 +00:00
Vadim Zeitlin
b62613041d use type-safe Connect()s
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32069 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 11:59:55 +00:00
Vadim Zeitlin
6981afa11f update from Martin Srebotnjak
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32068 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 11:58:41 +00:00
Vadim Zeitlin
18e3348481 documented new overloaded Connect() and wxFooEventHandler macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32067 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 11:42:36 +00:00
Ryan Norton
641cdc233d fix CFDictionary/Number/String combo memory leak in wxChoice - also gets rid of all the memory leaks in the display sample that i thought were mine...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32066 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 09:56:44 +00:00
Julian Smart
5cd2a6aecc Added EVT_COMMAND_CONTEXT_MENU with id arg
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32065 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 09:28:00 +00:00
Włodzimierz Skiba
6a27c749b3 wxDatePicker and wxDateTime for PalmOS. Remove conflict with internal maxDays in PalmOS. #if wxUSE_XXX for limited builds.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32064 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 07:24:37 +00:00
Stefan Csomor
a63b47551e theme brush erasing and cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32063 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 06:29:14 +00:00
Stefan Csomor
c79aad8b24 moving focus and border handling at one place, adding HITheme implementations, grow-box painting
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32062 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 06:15:22 +00:00
Stefan Csomor
e2f9288358 clipping to client area
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32061 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 06:11:29 +00:00
Stefan Csomor
cc44c7102f slowly approaching dcscreen...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32060 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 06:08:17 +00:00
Stefan Csomor
ea68b70605 icon - bitmap conversions corrections (size is not always the 'standard' 32 pixels)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32059 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 06:05:52 +00:00
Stefan Csomor
b610b1db09 getting rid of redundant redraws
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32058 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 06:03:59 +00:00
Stefan Csomor
1bf38b0eda toplevel background behaviour changed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32057 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 06:02:05 +00:00
Stefan Csomor
9cc62fc819 compile warnings, M_BITMAPDATA privatized
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32056 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 06:00:32 +00:00
Stefan Csomor
ddb08e02c4 drawing fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32055 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 05:50:48 +00:00
Ryan Norton
92cd4cf182 Note the media lib
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32054 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 01:40:50 +00:00
Ryan Norton
566e85f6ec Use the new event handler macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32053 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 01:20:27 +00:00
Ryan Norton
116a877a9c include mondorian xpmm on cocoa too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32052 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 00:56:51 +00:00
Vadim Zeitlin
c4e2838090 use wxDC::GetMultiLineTextExtent() instead of duplicating its code in wxButton::DoGetBestSize()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32051 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 00:37:12 +00:00
Vadim Zeitlin
814863411d updated all .po files for 2.5.4
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32050 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 00:27:10 +00:00
Vadim Zeitlin
854bac91fd remove INSTANCE declaration which uses wrong dll export convention and is unneeded anyhow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32049 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-15 00:02:09 +00:00
Vadim Zeitlin
7fa03f0434 define wxFooHandler() macros for all wxFooEvents to make it possible to use Connect() type-safely; simplified event macros definitions by extracing common part to wx__DECLARE_EVTn()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32048 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 23:53:48 +00:00
Ryan Norton
2ff29ddf87 fix null-pointer crash
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32047 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 23:00:27 +00:00
Ryan Norton
da9d044c68 Needs to inherit from wxSliderBase for new ValueInvertOrNot Change
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32046 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 22:27:07 +00:00
Ryan Norton
65442ab650 Finalize wxJoystick on mac. Note change. Pretty up joystick sample a bit. Don't logsyserror when wxSound can't find a file - its annoying.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32045 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 20:12:11 +00:00
Włodzimierz Skiba
01526d4f6c Common code for the same handling of wxSL_INVERSE.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32044 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 19:29:37 +00:00
Stefan Csomor
cd0bbd03d7 added alpha channel support to ShrinkBy
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32043 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 19:29:09 +00:00
Włodzimierz Skiba
a7c58211db Minor editing.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32042 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 18:28:56 +00:00
Włodzimierz Skiba
b444ce1161 Build fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32041 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 18:08:24 +00:00
Włodzimierz Skiba
60bea0cfb5 Oups...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32040 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 18:05:38 +00:00
Julian Smart
5cb1ae8b79 Added wxContextMenuEvent
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32039 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 15:40:06 +00:00
Dimitri Schoolwerth
8516a98b54 fixed MSVC6's "C4702: unreachable code" warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32038 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 14:59:57 +00:00
Dimitri Schoolwerth
724a248d8d fixed Cygwin compilation (can't use extern "C" in C compilation)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32037 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 14:53:28 +00:00
Dimitri Schoolwerth
7722d490f2 fixed Cygwin compilation (there's no _get_osfhandle)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32036 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 14:48:35 +00:00
Václav Slavík
e06a429949 bakefile-0.1.7 changes affect wx,too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32035 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 13:17:00 +00:00
Jouk Jansen
62af4df1f4 Committing in .
OpenVMS setup file update

 Modified Files:
 	wxWidgets/setup.h_vms
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32034 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 12:02:16 +00:00
Jouk Jansen
bc21780e18 Committing in .
Some more ; fixes

 Modified Files:
 	wxWidgets/include/wx/motif/tglbtn.h
 	wxWidgets/src/motif/evtloop.cpp wxWidgets/src/x11/bitmap.cpp
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32033 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 11:11:56 +00:00
Włodzimierz Skiba
324eeecb3c Inversed slider and wrapper for datepicker control on PalmOS. WinHandle instead of HWND as WXWidget type. Cleaning from wxMSW specific API. Moving controls support. Non deprecated API in new port. Refreshing of whole and portions of windows.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32032 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 10:49:02 +00:00
Vadim Zeitlin
e7846404f7 no changes, just mention gtk_paint_expander() in comment
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32031 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 10:18:31 +00:00
Ryan Norton
4cb1d3daa2 Move HID stuff into both OSX builds. Add preliminary joystick for OSX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32030 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 09:38:42 +00:00
Stefan Neis
f6a9b35e1f Force OMF mode for DLL builds.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32029 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 08:41:52 +00:00
Stefan Csomor
69ea41a788 cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32028 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 05:51:52 +00:00
Stefan Csomor
72d4ce98fb ssize_t is always defined in OSX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32027 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 05:50:02 +00:00
Ryan Norton
7fcb33e5f7 warnin - move pict to where it belongs :)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32026 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 04:18:53 +00:00
Ryan Norton
6cac01a672 warnins!
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32025 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 04:06:10 +00:00
Ryan Norton
e928c28c89 warning and compilos
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32024 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 03:57:18 +00:00
Ryan Norton
df21986cb7 10.2 fix for CG
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32023 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 03:46:28 +00:00
Ron Lee
e05a12c99d Now needs wxBitmap as a concrete type.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32022 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-14 00:10:01 +00:00
Vadim Zeitlin
97e490f8b0 added support for background bitmap specified in background attribute of the HTML body tag
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32021 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 23:17:12 +00:00
Stefan Neis
1cffa15b8e Added support for current version of "emxomf".
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32020 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 23:09:33 +00:00
Vadim Zeitlin
bb56e01e3a removed trailing CRs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32019 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 23:08:09 +00:00
Vadim Zeitlin
f21c319d1a corrected link to the list test page
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32018 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 23:06:42 +00:00
Ryan Norton
9149aa8c96 compilo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32017 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 21:22:19 +00:00
Václav Slavík
391a765ede moved GNOME printing code back to wxCore and fixed for --enable-plugins case
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32016 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 21:09:46 +00:00
Václav Slavík
2e35017918 moved GNOME printing code back to wxCore and fixed for --enable-plugins case
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32015 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 21:06:55 +00:00
Stefan Neis
7f8c0d74d7 Simplified and extended compiler detection for OS/2.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32014 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 21:00:00 +00:00
Michael Wetherell
e21f30b925 Add some information for HP-UX 11i
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32013 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 20:28:32 +00:00
Ryan Norton
05d8deda20 compile fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32012 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 19:58:07 +00:00
Ryan Norton
544bdbbee2 compile fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32011 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 19:57:11 +00:00
Václav Slavík
313ffa19c6 don't crash on unterminated CDATA elements (patch #1117629)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32010 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 19:40:03 +00:00
Vadim Zeitlin
fd8278bfe1 replaced wxLogDebugs() with wxLogTrace()S
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32009 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 19:30:21 +00:00
Vadim Zeitlin
8ba7c77150 don't duplicate wxItemContainer methods in wxRadioBoxBase, instead extract the common intersection to a new wxItemContainerImmutable class and derive wxRadioBoxBase from it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32008 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 19:01:17 +00:00
Vadim Zeitlin
e9923becbe include wx/rawbmp.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32007 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 17:17:12 +00:00
Vadim Zeitlin
d2400c3ff3 another compilation fix: added dummy UseAlpha(0 and HasAlpha()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32006 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 17:16:33 +00:00
Vadim Zeitlin
f383c5b89c compilation fix for raw bitmaps (can't include wx/rawbmp.h from wx/bitmap.h as the former includes the latter!)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32005 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 17:14:19 +00:00
Vadim Zeitlin
c6179a847d 1. added SetSelection() to wxItemContainer and removed its declarations
from derived classes
2. made wxItemContainer::Select() non virtual: it simply calls SetSelection()
3. renamed wxListBox::SetSelection(n, select) to DoSetSelection() for all
   ports and defined non virtual SetSelection() overloads in the base class
   to avoid virtual functions hiding


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 17:08:27 +00:00
Stefan Neis
1aa3e471fe Improved support for OS/2's ancient version of "ash" - since it is about
20% faster on configure than up-to-date (pd)ksh ports it's worth
        this small change, IMHO.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32003 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 17:00:48 +00:00
Stefan Csomor
d1fabc1211 source compatible way to solve the background problem
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32002 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 16:48:00 +00:00
Stefan Csomor
bfef8c703e changed back, as I found a source compatible way to solve the background problem
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32001 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 16:45:34 +00:00
Vadim Zeitlin
64fa6f167e removed multiple duplicate copies (with subtly different behaviour) of SetStringSelection(); left only one of them in wxItemContainer (and another one in wxRadioBoxBase, to be removed)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32000 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 16:29:31 +00:00
Vadim Zeitlin
7f461f8a05 copy the right part of the existing background to the memory buffer (corrects junk during scrolling introduced by last change)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31999 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 16:08:10 +00:00
Robert Roebling
a947a1e5e8 Documentedm, that the print setup dialog has been
made obsolete.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31998 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 15:44:27 +00:00
Vadim Zeitlin
b18eb01cd1 added test for not erasing background
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31997 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 15:42:31 +00:00
Robert Roebling
284f2b59db Added raw bitmap access support to GTK 2.0.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31996 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 15:35:43 +00:00
Robert Roebling
ca37cfde6a Small correction to erase sample, added PrepareDC()
to erase background handler.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31995 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 14:36:15 +00:00
Stefan Csomor
6e38077e6c wxMac needs inherited on paint for the correct background as well
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31994 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 14:31:30 +00:00
Stefan Csomor
b014adcc3e adding clipping support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 14:29:09 +00:00
Stefan Csomor
ff3795eeaf default painting back to OnPaint handler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31992 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 14:28:11 +00:00
Robert Roebling
2b43d5885d Comment out line that set the VirtualSizeHints() upon
calling SetScrollbars().


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31991 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 13:44:08 +00:00
Vadim Zeitlin
68a7581156 latest version of generic wxDatePickerCtrl doesn't require wxUSE_POPUPWIN any more
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31990 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 13:12:28 +00:00
Vadim Zeitlin
b7e542bee8 fixes for wxDP_ALLOWNONE case
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31989 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 13:08:13 +00:00
Vadim Zeitlin
2436cac777 fixes for wxDP_ALLOWNONE handling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31988 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 13:07:20 +00:00
Vadim Zeitlin
3200f37d25 added support for wxDP_ALLOWNONE in wxMSW; documented it; added test for it in the sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31987 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 12:57:38 +00:00
Julian Smart
b29ca6c2fe wxFopen arg fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31986 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 12:54:37 +00:00
Julian Smart
17d64ebc98 Fix for arg to wxFopen
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31985 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 12:53:09 +00:00
Vadim Zeitlin
1721a8c028 bug fixes for using wxTransientPopupWindow and wxDP_ALLOWNONE support from Andreas Pflug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31984 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 12:44:14 +00:00
Ron Lee
c7ff293b42 Enable gnomeprint support for the .debs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31983 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 12:38:16 +00:00
Ron Lee
8ec45325ea Add extra^2 debug mode to wx-config for brute force one pass debugging
of new platforms.

Import $EGREP from configure, posix `grep -E` is not endemic yet.

Clean up debian/rules for removed afm files.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31982 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 08:53:36 +00:00
Stefan Csomor
cb4b09661b adding focus and border quartz support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31981 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 07:36:49 +00:00
Stefan Csomor
71cc158eaa adding metafile and clipboard support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31980 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 05:59:04 +00:00
Vadim Zeitlin
79c5fe4be8 added test for Blit()ting OnEraseBackground() results in OnPaint()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31979 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 01:14:36 +00:00
Vadim Zeitlin
2458d90b1d changed Remove/InsertDir() parameter type to size_t from int; added RemoveLastDir()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 00:55:27 +00:00
Ryan Norton
48a4834d6d note wxMediaCtrl change - all that work for one line lol
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31977 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-13 00:23:51 +00:00
Robert Roebling
878ddad57a Reapplied patch to change the two scrolled window implementations
to no longer clip the last bits as a rounding error. I had to
    change GetVirtualSize() as per my mail to devs.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31976 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 23:44:24 +00:00
Ryan Norton
a4945572ca Rework to include gnome preferences. Correct signal methods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31975 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 23:24:40 +00:00
Michael Wetherell
0912690b65 Rename wxGetFileType to wxGetFileKind
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31974 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 21:53:51 +00:00
Michael Wetherell
9e8e867ff9 Rename wxUSE_ARCSTREAM to wxUSE_ARCHIVE_STREAMS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31973 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 21:40:48 +00:00
Ryan Norton
b4a345a67a changes based on message #6 in my thread with Vaclav :)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31972 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 21:00:37 +00:00
Julian Smart
f1e5c798c8 GetPixel and FloodFill (in this case) not supported by CoreGraphics
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31971 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 20:51:23 +00:00
Ryan Norton
05db64b2e9 slight warnings in wxprinterdc docs about constructor confusion - see http://www.solidsteel.nl/users/wxwidgets/viewtopic.php?t=1247 for more
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31970 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 20:00:13 +00:00
Vadim Zeitlin
bf25eaeb66 corrected header name (closes 1121351)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31969 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 19:42:07 +00:00
Ryan Norton
dae87f93ab change configure to better detect gstreamer. Check create is valid in mediaplayer sample. Comment the heck out of the unix mediaplayer.cpp.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31968 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 19:32:26 +00:00
Julian Smart
162a956bb6 Regenerated makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31967 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 19:01:50 +00:00
Julian Smart
b14abf14c7 Regenerated makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31966 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 18:53:20 +00:00
Julian Smart
d3d0b8dba7 Regenerated makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31965 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 18:38:47 +00:00
Robert Roebling
85b38e0bd1 Added GetPureVitualSize() returning just m_virtualSize.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31964 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 15:53:25 +00:00
Vadim Zeitlin
1ac4716dd2 compilation fix for !wxUSE_ON_FATAL_EXCEPTION
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31963 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 13:54:52 +00:00
Robert Roebling
bf67b13520 Revert patch again, as the scrollbars are now always shown.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31962 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 12:36:12 +00:00
Julian Smart
a2d3a3d1d3 Patch by David Brinegar to fix menubar updating after modal dialog shown
See thread: [wx-dev] [wxMac] Menubar UI updates when launching from Finder


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31961 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 12:31:02 +00:00
Stefan Csomor
5ecd392970 Mac Core Graphics Implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31960 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 12:03:54 +00:00
Stefan Csomor
20b6985553 Mac Core Graphics Implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31959 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 11:34:05 +00:00
Julian Smart
271fa25083 Applied [ 1059554 ] patch for [1028659] fixes a couple of bugs with menus
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31958 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 10:42:00 +00:00
Julian Smart
77b88df26f Applied patch [ 1120683 ] Fix for wxDateTime::Format() under Windows CE
by upcase


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31957 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 10:15:18 +00:00
Robert Roebling
bf06fe48ad ALso correct scrollbar calc to not clip division remainder
from the displayed area.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31956 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 08:51:53 +00:00
Ryan Norton
bc03601097 Cleanup mediaplayer sample a bit - get rid of bad loop/islooped since it has internal state
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31955 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 02:32:29 +00:00
Ryan Norton
bbe5510dcf underscore fix(es)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31954 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 02:29:42 +00:00
Ryan Norton
ce756cb06a properly detect gstreamer and libxml headers and libs, reflect that wxMediaCtrl now on unix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31953 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-12 01:30:39 +00:00
Robin Dunn
68985f0e57 Initialize the new data memebers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31952 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 23:54:47 +00:00
Robin Dunn
e8d51145fe reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31951 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 23:40:42 +00:00
Robin Dunn
d429e18743 On wxMSW Move an invisible system caret around with the Scintilla
caret to help screen readers and such can follow.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31950 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 23:36:59 +00:00
Robert Roebling
e8cd0e5884 Correct rounding up vs. rounding down error in GTK+
wxScrolledWindow so that no contents is ever hidden,


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31949 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 23:01:58 +00:00
Robert Roebling
a2ac55f54d Make wxTLW::Raise() actually bring the window to the top
and give it the WM's focus (if supported).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31948 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 23:00:31 +00:00
Robin Dunn
a33203cb9f Updated to Scintilla 1.62
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 22:53:19 +00:00
Vadim Zeitlin
cc9a39576a added possibility to throw different objects and crash directly from the main frame; use OnExceptionInMainLoop() instead of overriding HandleEvent()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31937 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 22:33:09 +00:00
Vadim Zeitlin
226c11c076 don't translate Win32 structured exceptions into C++ ones (requires always using a special wxEntry for MSW in init.cpp)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31936 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 22:31:23 +00:00
Robert Roebling
4843cdfe0f Made gnome printing stuff return wxPRINT_CANCELLED if
it has been canceled.
  Moved the FORCE_LINK code from app.cpp to the sample
    as I cannot find the right place for it. We'd need
    an empty extrya file for ADV lib only for that.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31935 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 22:16:41 +00:00
Julian Smart
67edd0c796 Doc tweaks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 21:18:42 +00:00
Julian Smart
dceb1c097c Misc doc fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31933 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 20:08:51 +00:00
Robin Dunn
c6b65b76a1 wx.SL_INVERSE works for the big 3 now.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31932 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 20:00:18 +00:00
Vadim Zeitlin
106a79999d don't hardcode the array size as done by last commit, just what exactly was the point of this change?
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31931 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 18:33:42 +00:00
Robert Roebling
2e5c710e90 Make wxConvFile wxConvLibc.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31930 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 18:31:01 +00:00
Julian Smart
0827d10be2 Reduced Number Of Capitals And Other Fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31929 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 17:46:05 +00:00
Julian Smart
17902387c4 English corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31928 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 17:35:19 +00:00
Włodzimierz Skiba
b742a43b2a wxBookCtrl overview.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 16:24:25 +00:00
Michael Wetherell
51fb93f1bd Add uxtheme.h to files.bkl, patch 1120747 from Tim Kosse
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31926 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 13:31:05 +00:00
Václav Slavík
a2897d4322 install xh_datectrl.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31925 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 13:12:11 +00:00
Michael Wetherell
3c70014d96 Add wxGetFileType and IsSeekable
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31924 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 12:39:03 +00:00
Julian Smart
af44de02ae Spacing fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31923 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 12:01:38 +00:00
Ryan Norton
419237157d Change copyright
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31922 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 11:06:11 +00:00
Włodzimierz Skiba
8b5d5223d1 Various cleanings.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31921 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 10:42:05 +00:00
Ryan Norton
7b9472b9c8 Fixup latex in tchanges.tex for rtf
Make pretty bullets for tchages.tex instead of dashes
Postfix ands with slash and don't use tilde
Lots of other niceties for tchanges.tex

Add tchanes.tex back to the topics


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31920 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 10:40:10 +00:00
Julian Smart
685bf1829b Updated date
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31919 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 09:31:10 +00:00
Julian Smart
93710ae8e6 Avoid double-define on WinCE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31918 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 09:20:59 +00:00
Julian Smart
c87fc2859d Don't use mnemonics for OK, Cancel and Close under Windows, to follow
style guidelines


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31917 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 09:19:34 +00:00
Julian Smart
461edab540 Don't include tchanges.tex until it's converted to Latex syntax
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 08:58:57 +00:00
Julian Smart
e9f4f51d06 Missing standard ids
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31915 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 08:55:45 +00:00
Włodzimierz Skiba
be4e4e27aa Use parents client size and origin in placement of controls.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31914 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 06:56:47 +00:00
Kevin Hock
6bee5ffba4 wxSL_INVERSE for MSW. Heavily modified patch 1096922.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31912 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 04:11:47 +00:00
Kevin Hock
7ad71baf8e Updated wxSlider docs now that wxSL_INVERSE is available on MSW, GTK and Mac.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31911 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 04:11:23 +00:00
Robin Dunn
7b45094a1c typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31910 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 00:22:54 +00:00
Robin Dunn
e41c39d681 Also increment WX_CURRENT and WX_AGE according to the directions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31909 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 00:21:31 +00:00
Robin Dunn
c163da42f0 typos
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31908 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-11 00:18:40 +00:00
Robin Dunn
18ef9f51b5 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31907 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 22:32:48 +00:00
Robin Dunn
874cc42557 Put the deprecation wrapper on __init__, not the class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31906 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 22:28:44 +00:00
Julian Smart
260c9c7df3 Version
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31905 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 22:07:50 +00:00
Włodzimierz Skiba
2997ca30d6 Use default constructors for wxSize/Point/Rect.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31904 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 21:33:56 +00:00
Włodzimierz Skiba
1c6dd11c98 Build fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31903 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 21:14:55 +00:00
Robert Roebling
2376eee248 Corrected button height for multiline buttons.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31902 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 20:29:19 +00:00
Włodzimierz Skiba
8b523dc546 Warning fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31901 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 19:22:20 +00:00
Włodzimierz Skiba
0966aee3d9 wxEmptyString decorations.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31900 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 17:25:11 +00:00
Julian Smart
8f3516688b Applied patch [ 1096612 ] FL: fix close button on wxGTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31899 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 16:35:12 +00:00
Julian Smart
92850d6b2f Applied patch [ 1117207 ] changed the test for SQL_C_WCHAR
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31898 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 16:31:13 +00:00
Michael Wetherell
070e8453c0 Compile console apps with wxUSE_GUI=0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31897 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 16:26:34 +00:00
Julian Smart
105fc244a1 Applied patch [ 1113565 ] generic treectl multiselection
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31896 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 15:33:51 +00:00
Julian Smart
60f9468293 Applied [ 1110257 ] wxFoldPanelBar does not display correctly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31895 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 15:29:58 +00:00
Julian Smart
dbfb61b3a4 Applied patch [ 1119239 ] Adds socket support for Windows CE platforms
by 'upcase'


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 14:55:27 +00:00
Ryan Norton
e47570f11c remove superflous comments
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31893 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 14:39:33 +00:00
Michael Wetherell
e6477b92b7 Separate out zip specific parts of the archive test suite
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31892 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 14:06:08 +00:00
Michael Wetherell
81f9033602 Add wxUSE_ARCSTREAM so that other archive classes can be used without wxZip
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31891 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 13:54:41 +00:00
Julian Smart
50bf89f702 Version update
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31890 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 12:54:34 +00:00
Ryan Norton
d7d73110cd wxSockAddr docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31889 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 11:05:53 +00:00
Ryan Norton
1e22656e8e wxMediaCtrl unix port with gstreamer usable version :)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31888 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 10:54:06 +00:00
Włodzimierz Skiba
cb00a262dc wxWindow::GetClientAreaOrigin duplicated wxWindowBase method.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31887 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 10:49:35 +00:00
Włodzimierz Skiba
00208f47e3 wxWindow::GetClientAreaOrigin duplicated wxWindowBase method.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31886 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 10:43:00 +00:00
Włodzimierz Skiba
a44f67c382 wxWindow::GetClientAreaOrigin duplicated wxWindowBase method.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 10:36:29 +00:00
Włodzimierz Skiba
c0ae5ebe05 wxWindow::GetClientAreaOrigin duplicated wxWindowBase method.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 10:27:12 +00:00
Włodzimierz Skiba
f241653c17 wxWindow::GetClientAreaOrigin duplicated wxWindowBase method. Working wxFrame::GetClientAreaOrigin. Screen size metric.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31883 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-10 09:22:12 +00:00
Robert Roebling
1b24b2b48c Applied patch for more compliant wxScrolbar event
generation order.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31882 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-09 22:49:32 +00:00
Vadim Zeitlin
bf6461219d redraw the grid when it's enabled/disabled
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31881 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-09 22:31:30 +00:00
Julian Smart
241421a60d Applied patch [ 1113624 ] MSW DLL requires global new/delete ops inline
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31880 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-09 21:36:10 +00:00
Julian Smart
e4d192ff29 Applied patch [ 1116706 ] wxRendererGeneric::DrawComboBoxDropButton position fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31879 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-09 21:34:05 +00:00
Vadim Zeitlin
72d87edb68 don't use wxBG_STYLE_CUSTOM for GTK1, it breaks background painting there
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31878 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-09 20:56:54 +00:00
Vadim Zeitlin
12148be28d don't suppress default erase background logic, we do have to paint bg somewhere
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31877 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-09 20:43:27 +00:00
Michael Wetherell
2fc79cf212 'rpath' for hpux
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31876 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-09 18:44:54 +00:00
Vadim Zeitlin
a03ae1721d don't erase the background of wxHtmlWindow unconditionally
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31875 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-09 18:33:00 +00:00
Ryan Norton
f68ca36e0d Fix eval order of arguments...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31874 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-09 17:40:10 +00:00
Julian Smart
8410a7104a Fixed delete
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31873 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-09 16:57:22 +00:00
Włodzimierz Skiba
5e091b2b01 Better markup to wxRegKey. Do not list generic renderer member in native renderer section. Do not link to wxStringList and wxApp::OnQueryEndSession because they are removed from docs.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31872 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-09 16:22:25 +00:00
Jouk Jansen
777105f2b7 ----------------------------------------------------------------------
Committing in .

 -delete superfluous semicolons
 -Update OpenVMS compile support

 Modified Files:
 	wxWidgets/include/wx/gtk/region.h
 	wxWidgets/include/wx/gtk/textctrl.h
 	wxWidgets/include/wx/motif/icon.h
 	wxWidgets/include/wx/x11/region.h
 	wxWidgets/src/common/descrip.mms
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31871 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-09 15:01:49 +00:00
Włodzimierz Skiba
f31a409829 .empty() string decorations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31870 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-09 14:19:49 +00:00
Włodzimierz Skiba
fde6325769 Semicolon removed for Borland
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31869 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-09 14:14:21 +00:00
Włodzimierz Skiba
a420c7ed70 Update to Bakefile 0.1.6
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31868 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-09 10:56:07 +00:00
Włodzimierz Skiba
be7c2a2033 wxPalmOS frame code clearning from MSW specific parts. Initial GetClientAreaOrigin implementation for wxFrame.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31867 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-09 07:07:46 +00:00
Włodzimierz Skiba
22dd38478f World is more than WXUNIV vs. MSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31866 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-09 07:04:09 +00:00
Włodzimierz Skiba
78d93bf65a Use wxICON as portable feature.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31865 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 21:00:40 +00:00
Włodzimierz Skiba
dd6a7fb41a Minor decorations.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31864 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 20:58:19 +00:00
Włodzimierz Skiba
a34d583222 MinGW warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31863 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 20:57:12 +00:00
Robin Dunn
50b58dec17 Check accelerators before sending EVT_CHAR
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31862 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 17:02:57 +00:00
Robin Dunn
4d3ab2a036 Allow EVT_CHAR events in a wxGTK2 build for F-keys, and other
non-alphanumeric keys.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31861 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 16:23:27 +00:00
Michael Wetherell
cb32743940 Rebaked test.bkl for new tests largefile, size, point
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31860 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 16:10:29 +00:00
Michael Wetherell
f69fc95c93 Minor compilo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31859 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 15:39:40 +00:00
Julian Smart
7f1a9dd7f0 Last change undone
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31858 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 15:38:21 +00:00
Julian Smart
b5f2794059 Restored a couple of label
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31857 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 15:09:22 +00:00
Julian Smart
2e3a3b9aff Set m_count to zero in DeleteAllItems
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31856 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 15:03:18 +00:00
Julian Smart
0e2e3ffd64 Corrections; don't use long section headings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31855 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 13:50:25 +00:00
Włodzimierz Skiba
9548f38086 Minor decorations.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31854 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 13:02:34 +00:00
Włodzimierz Skiba
6b99f53e39 Semicolon fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31853 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 12:37:49 +00:00
Włodzimierz Skiba
8be10866ce wxSlider event handling as described by Vadim in thread 'Slider events' at wx-dev. More changes towards wxRadioBox on Palm.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31852 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 09:38:08 +00:00
Ryan Norton
8e1611724c regen configure for tab sample removal
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31851 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 04:20:17 +00:00
Ryan Norton
92d2f5cbd3 Remove tab sample as per 2.6 wiki todo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31850 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 04:10:45 +00:00
Ryan Norton
52e812428f Duplicate impl of wxVariant == because GCC can't tell if one depreciated method is being used inside another
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31849 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 03:25:05 +00:00
Ryan Norton
af7bb44ca4 Patch [ 1118343 ] Use wxTextValidator::SetIncludes in wxDatePickerCtrlGeneric
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31848 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 03:16:09 +00:00
Ron Lee
8f98c6c007 Make it possible to actually build cvs with a version of bakefile
that does not have a 'critical bug'.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31847 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 03:05:42 +00:00
Ron Lee
c12a74b0d8 No *.h in src/common/ anymore.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31846 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 03:01:31 +00:00
Ryan Norton
7ad56d275d Remove traces of wxIniConfig from docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31845 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-08 00:04:14 +00:00
Ryan Norton
f94a790daf change wxTextValidator to use wxArrayString instead of wxStringList
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31844 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 23:46:42 +00:00
Ryan Norton
2c3a10641d depereciate stringlist stuff in wxVariant
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31843 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 22:51:30 +00:00
Ryan Norton
ec9eba4b78 Remove almost all traces of wxStringList - (still exists in wxTextValidator)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31842 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 22:42:42 +00:00
Robert Roebling
c51c475202 Added screen locking code to popup window for X11.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31841 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 22:37:24 +00:00
Ryan Norton
9919dac1c8 Previosly removed BuildWhereStmt really did exist, but as BuildWhereClause - not BuildWhereStmt :)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31840 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 22:36:04 +00:00
Robert Roebling
f4bb632cde Lock whole screen when popup is open under GTK+.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31839 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 21:48:06 +00:00
Robin Dunn
091fdbfacb reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31838 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 21:04:17 +00:00
Mattia Barbon
d21f1d8f15 wxGTK compilation fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31837 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 21:00:47 +00:00
Mattia Barbon
0dcd06dd64 Fixed error in my previous commit causing
wxDialupManager to be always disabled.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31836 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 20:59:33 +00:00
Robin Dunn
e79c8a7c10 Add a sample of a wx.StaticBox
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31835 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 20:53:50 +00:00
Robin Dunn
8e738329a9 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31834 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 20:52:34 +00:00
Robin Dunn
e6bd0b8ba6 updated with new stuff
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31833 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 20:51:37 +00:00
Julian Smart
4e4cea52b3 Version number updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31832 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 20:49:47 +00:00
Robin Dunn
2d830433c3 a little cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31831 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 20:43:22 +00:00
Robin Dunn
7ab7156341 Don't do str() on Numeric arrays
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31830 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 20:43:00 +00:00
Robin Dunn
9c7d63962a Added wxNB_NOPAGETHEME and GetThemeBackgroundColour
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31829 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 20:41:57 +00:00
Robin Dunn
d1b3d685a7 Don't add wxfilesdir twice
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31828 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 20:35:43 +00:00
Robin Dunn
ca30acad7a wx.Rect.Inflate/Defalte docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31827 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 20:26:28 +00:00
Julian Smart
1c7415463d Don't release capture unless we already have it.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31826 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 20:16:53 +00:00
Robin Dunn
0f9da07463 Use wx.StdDialogButtonSizer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31825 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 19:27:56 +00:00
Robin Dunn
f35d1a03b2 update version number, add build_options patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31824 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 19:17:17 +00:00
Julian Smart
807f503834 Added validator to generic date picker control
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31823 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 18:37:43 +00:00
Vadim Zeitlin
d62b93c467 no changes, just added a couple of virtual keywords
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31822 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 16:50:33 +00:00
Włodzimierz Skiba
721a962699 wxSizeEvent for wxPalmTLW. wxScrollEvent for wxSlider.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31821 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 15:20:01 +00:00
Julian Smart
95b838bed2 Workaround for static controls appearing with a white background
on otherwise grey panels on WinCE


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31820 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 14:57:14 +00:00
Julian Smart
e4535381d5 Life! made more WinCE-friendly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31819 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 14:55:41 +00:00
Václav Slavík
1ee3fb3846 use wxUSE_DATEPICKCTRL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31818 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 12:22:09 +00:00
Václav Slavík
310e47b3be added wxDatePickerCtrl XRC control
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31817 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 11:32:01 +00:00
Stefan Csomor
5a7d1ad8a3 DebugAlloc and DebugFree must be present also if there is no overridden global new as wxObject::new still needs it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31816 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 10:12:12 +00:00
Ryan Norton
27bb69ac80 Remove event handlers wxApp::OnQueryEndSession and wxDialog::OnCharHook from docs...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31815 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 04:52:40 +00:00
Ryan Norton
f05074ad60 Remove depreciated wxTabCtrl and wxTabEvent API from docs...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31814 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 04:40:35 +00:00
Vadim Zeitlin
66d2fa18ee blind fix for XTI compilation after last change
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31813 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 23:21:59 +00:00
Václav Slavík
564872cfe9 update for the next bakefile version (no effect with current bakefile)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31812 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 22:57:31 +00:00
Robert Roebling
709feaf70c GTK 1.2 compilo/link error.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31811 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 21:39:11 +00:00
Robert Roebling
fbe99a7ea8 GTK 1.2 compilation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31810 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 21:29:24 +00:00
Julian Smart
c6430ed0ae Can now set msw.window.no-clip-children to 1 to eliminate weird
refresh behaviour (delays between a window being erased and repainted,
giving a ghostly gradual-redraw effect). May be a temporary 'fix'
until properly fixed before 2.6.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31809 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 20:03:35 +00:00
Julian Smart
f2b7be7ad5 Set solid colour for whole control, not pages
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31808 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 19:41:45 +00:00
Julian Smart
25057abaac Can suppress themed notebook page with wxNB_NOPAGETHEME or
setting system option msw.notebook.themed-background to 0


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31807 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 19:17:35 +00:00
Julian Smart
0090a1538c Restored the ability to set the background colour for a toolbar on Windows
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31806 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 18:42:43 +00:00
Ryan Norton
9a75ba66de Doc fixes N-Z edition. Thanks to Arnout for pointing these out. Also I fixed some others as I went along...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31805 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 18:25:54 +00:00
Robert Roebling
f7204798e2 I think I found out how GTK+ want popup windows
to be handled...


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31804 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 18:24:02 +00:00
Mattia Barbon
2fd1cf7daf wxX11 compilation fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31803 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 17:55:52 +00:00
Mattia Barbon
96be256b3e Replaced TRUE and FALSE with true and false
(or True and False when calling Motif APIs).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31802 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 17:38:33 +00:00
Ryan Norton
f6e9a8189c Doc fixes A-M edition. Thanks to Arnout for pointing these out. Also I fixed some others as I went along...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31801 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 17:27:04 +00:00
Václav Slavík
3f029bd314 updated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31800 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 17:15:21 +00:00
Stefan Neis
d3e9dd9409 fixed double delete in UpdateAttrRows/Cols introduced by patch 1104355.
[ Only the change for UpdateAttrRowsOrCols was valid. ]


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31799 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 17:10:01 +00:00
Stefan Csomor
1a183bb1d3 NULL warning fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31798 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 16:28:03 +00:00
Stefan Csomor
02250fa1ef proper style includes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31797 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 16:27:06 +00:00
Stefan Csomor
5b74902d6d type fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31796 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 16:26:13 +00:00
Vadim Zeitlin
3839f37ed3 removed trailing semicolons after DECLARE_DYNAMIC_CLASS(), Borland chokes on them
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31795 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 16:17:18 +00:00
Stefan Csomor
77eddfb7f5 fixing NULL warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31794 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 16:02:39 +00:00
Stefan Csomor
b409fa1959 fixing NULL vs 0 warnings in gcc 4
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31793 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 15:59:08 +00:00
Stefan Csomor
819f6fb9f0 needed for avoiding double typedefs in xcode builds
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31792 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 15:57:19 +00:00
Stefan Csomor
449816adfd newline before EOF fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31791 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 15:52:53 +00:00
Vadim Zeitlin
8127b29715 use DECLARE_DYNAMIC_CLASS instead of DECLARE_ABSTRACT_CLASS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31790 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 15:48:00 +00:00
Vadim Zeitlin
dedc8f0d3f regenerated after adding popup sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31789 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 15:46:37 +00:00
Gilles Depeyrot
3bf2bdfb7d corrected initialization of private wxBitmapHandler members in wxPICTResourceHandler constructor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31788 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 14:36:03 +00:00
Gilles Depeyrot
e369bddbfb order wxFontRefData member constructor initialization according to member declaration
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31787 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 14:28:21 +00:00
Robert Roebling
18216ae352 Applied context menu patch.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31786 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 12:45:26 +00:00
Robert Roebling
fa6ca47e01 Applied compilation fix for memory.cpp.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31785 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 12:42:34 +00:00
Stefan Csomor
34a3f96a85 newline before EOF fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31784 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 11:57:25 +00:00
Julian Smart
a236af7b74 Script updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31783 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 11:52:28 +00:00
Stefan Csomor
0856acc63d newline before EOF fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31782 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 11:29:39 +00:00
Julian Smart
5aaabb3710 Spiner -> Spinner
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31781 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 11:27:19 +00:00
Stefan Csomor
19d360adbe As members have gone private, use Accessors
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31780 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 11:19:58 +00:00
Julian Smart
ef9ed995cf Fix for menu items not being disabled after a modal dialog is shown
on app startup


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31779 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 11:12:48 +00:00
Mattia Barbon
60c474a0c4 Miscellaneous compilation and warning fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31778 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 10:41:35 +00:00
Ryan Norton
38b9e339b6 wxRegKey docs by C.C.Chakkaradeep latexitized, sorted, with some minor edits.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31777 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 03:17:39 +00:00
Ryan Norton
bb772a8edf Various underscore doc fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31776 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 02:47:31 +00:00
Vadim Zeitlin
14ca93a0d9 two changes and some cleanup:
1. DECLARE_ABSTRACT_CLASS() shouldn't declare wxCreateObject() (which is not
   defined by IMPLEMENT_ABSTRACT_CLASS())
2. don't make GetClassInfo() declaration inside DECLARE_CLASS inline in an
   attempt to fix linking problems with HP-UX compiler


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31775 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 01:52:19 +00:00
Vadim Zeitlin
543ad8984b ensure that _WIN32_IE is defined to max value before including commctrl.h, otherwise we don't get support for 32bit spin button range even if the headers have it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31774 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 01:31:26 +00:00
Kevin Hock
cdec37ac77 As per the docs, the value returned is -1 if the value entered is out of range [patch 1116606]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31773 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 00:43:44 +00:00
Ryan Norton
f5409ef1f7 char->wxChar
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31772 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-06 00:27:38 +00:00
Vadim Zeitlin
3478658890 added complex popup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31771 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-05 18:44:25 +00:00
Vadim Zeitlin
43f813d1de created bakefile and generated all makefiles from it; renamed minimal.cpp to popup.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31770 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-05 18:38:26 +00:00
Robert Roebling
f127216013 Reorganized char and keydown event code, hoping
that Input Method handling is still not broken.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31769 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-05 15:25:32 +00:00
Robert Roebling
effc8cf18b Forgot one.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31768 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-05 14:18:55 +00:00
Robert Roebling
4b61c88d55 Second try to add "support" for deriving from
wxBitmapHandlerBase.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31767 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-05 14:17:27 +00:00
Robert Roebling
c8e1af672f Add comment about wxBitmap::SetPalette() not being implemented
under GTK+.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31766 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-05 13:12:41 +00:00
Robert Roebling
4611dd06a1 Make wxBitmap inherit from wxBitmapBase
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31765 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-05 13:08:44 +00:00
Robert Roebling
58b907f6e1 _conncect_after() should be used for controls emitting
command events so as to not confuse GTK+ if the user
    intercepts them too early.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31764 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-05 12:51:05 +00:00
Robert Roebling
1175aa4e13 Blind patch for SetFont() in Unicode mode for wxX11.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31763 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-05 12:49:08 +00:00
Ryan Norton
0c5c0375b9 Put _something_ there for now....
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31762 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-05 11:59:06 +00:00
Robert Roebling
98d5b42b4a added test for wxPopupTransientWindow.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31761 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-05 11:35:48 +00:00
Ryan Norton
ddc90a8d52 unix mediactrl stubs...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31760 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 22:47:48 +00:00
Ryan Norton
4b60077b40 FIX positioning problems with carbon media control - CreateMovieControl positioning is broken in that it resizes to the WindowRef parent, not its real one [thus making you wonder if EmbedControl even _works_ with CreateMovieControl], so we do our own.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31759 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 22:24:14 +00:00
Julian Smart
9b433fceec Fix for assertions when updating UI and focus is on read-only combobox
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31758 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 21:35:54 +00:00
Robin Dunn
f062c0e2ee Patch #1113284: wx.lib.calendar SetBusType() problem
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 19:35:40 +00:00
Robin Dunn
e981e2b555 the window takes ownership of the caret
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31756 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 19:15:02 +00:00
Ryan Norton
10a535200d Massive commenting/professionalize and add some other new fun stuff to mediaplayer sample
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31755 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 19:04:58 +00:00
Robin Dunn
5fd656d503 Use the unicode character, if available in the event
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31754 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 18:48:09 +00:00
Ryan Norton
0b6d471427 fix cocoa wxTimer Stop crash, proper autorelease stuff in cocoa wxtimer, use our own custom c implementation for cocoa wxMediaCtrl because NSMovieView implementation isnt very good
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31753 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 17:56:49 +00:00
Ryan Norton
2fcd7f64a5 cocoa wxTimer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31752 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 17:21:28 +00:00
Ryan Norton
086d7f3177 update to patch [ 1077074 ] Unit test for large file support from Mike
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31751 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 15:15:20 +00:00
Vadim Zeitlin
8673a12505 fixed Inflate() to not move the rectangle (patch 1114622)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31750 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 11:04:43 +00:00
Ryan Norton
48714f7495 patch [ 1077074 ] Unit test for large file support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31749 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 09:43:47 +00:00
Chris Elliott
20ac3ed644 fix path for pdf
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31748 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 09:41:20 +00:00
Vadim Zeitlin
2af7511ea7 a better fix for using builtin regex under BSD (also fixes compilation for Mac OS X) (patch 1089445)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31747 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 09:37:55 +00:00
Vadim Zeitlin
1b072e196e fixed stub code compilation (don't use PSYMBOL_INFO)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31746 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 09:23:05 +00:00
Julian Smart
e475c7a513 Updated version to 2.5.4
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31745 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 08:33:00 +00:00
Ryan Norton
ecd20d4a91 make cocoa mediactrl usable. Some touchups to carbon mediactrl code. Add notebook support to mediaplayer sample.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31744 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 07:49:40 +00:00
Ryan Norton
4f9cd1cb7f use wx/math.h for math constants - avoids redifinition warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31743 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 05:59:28 +00:00
Ryan Norton
2692aef43b fix double->unsigned char warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31742 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 05:57:10 +00:00
Ryan Norton
39707b8019 fix warnings on cocoa 10.2 also
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31741 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-04 05:52:32 +00:00
Ryan Norton
7115e540ec dispose of old control for new one
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31740 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 23:25:22 +00:00
Ryan Norton
4fc81cbc05 prelimanary wxMediaCtrl cocoa support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31739 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 23:12:46 +00:00
Robin Dunn
c777887718 Ensure the wxVListBox gets the focus when it is clicked upon
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31738 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 22:41:08 +00:00
Robin Dunn
33971536c5 Shorten key names, add some tooltips
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31737 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 22:38:20 +00:00
Robin Dunn
ab4b69b9bc fix for read-only combobox
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31736 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 22:37:08 +00:00
Robin Dunn
33a84aceab Attempt to display the unicode character if running a unicode build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31735 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 22:36:38 +00:00
Mattia Barbon
b843b628c9 Automatically disable wxDialupManager for wxMac and wxCocoa,
skip dialup sample if wxDialupManager is disabled.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31734 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 22:34:54 +00:00
Mattia Barbon
74e2116a4b Compilation fix for wxUSE_STACKWALKER == 0.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31733 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 22:26:44 +00:00
Mattia Barbon
a23fe00df6 wxX11 linking fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31732 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 22:18:18 +00:00
Mattia Barbon
516a572204 Motif compilation fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31731 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 22:14:24 +00:00
Robin Dunn
08a19f6407 Include the size of any window borders (size vs. clientsize
differences) in the window's bestsize


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31730 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 22:11:43 +00:00
Robin Dunn
4719e58dc1 Patch [ 1114647 ] Mouse wheel support for wxVScrolledWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31729 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 19:18:59 +00:00
Robin Dunn
4fb6c97e93 Selected --> IsSelected
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31728 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 19:12:57 +00:00
Julian Smart
b4b799f391 Disable wxMediaCtrl for WinCE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31727 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 15:29:09 +00:00
Robert Roebling
f2e935373d Fix for listbox problem, when created on invisible
window. Shown in wxWizard sample.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31726 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 15:28:14 +00:00
Robert Roebling
ad975781eb Fixed missing key down events (probably introduced
by IM patch.)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31725 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 13:33:36 +00:00
Chris Elliott
b70d3b9f44 add commands to make non-existent directories when done first time
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 12:56:25 +00:00
Robert Roebling
fdfb84751f Committed Raise()Lower() fix.
Committed second part for Input Methode character fix.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 12:52:38 +00:00
Robert Roebling
95fd7c35e0 Blind fix for Compilo.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31722 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 12:30:18 +00:00
Ryan Norton
3b5023b99a CreateMovieControl change for wxMediaCtrl on OSX 10.2 and up
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31721 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 11:11:36 +00:00
Ryan Norton
3aa79a0117 comment out unused stuff for warning fixing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31720 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 09:55:38 +00:00
Julian Smart
30b1153d64 Correction to previous fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31719 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 09:54:02 +00:00
Ryan Norton
b9160e5eac fix pointer conversion warnings on OSX 10.2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31718 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 09:52:40 +00:00
Julian Smart
65ab10020b Fix for GCC compilation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31717 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 09:45:32 +00:00
Robin Dunn
31a01a24c8 Avoid name clash with wx.App.OnExit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31716 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 03:09:17 +00:00
Robin Dunn
39ac28747f Add ability to copy the event log to the clipboard
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31715 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-03 03:08:37 +00:00
Robin Dunn
fef4c27a1c reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31714 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-02 22:55:18 +00:00
Robin Dunn
a7593631f1 misc
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31713 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-02 22:36:36 +00:00
Robin Dunn
8fc680f47c All the demo samples return a panel now, no need to cater for frames
or dialogs.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31712 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-02 22:35:27 +00:00
Robin Dunn
8815349a37 Some new def's, parameters, methods, etc. resulting from recent changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31711 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-02 22:34:07 +00:00
Vadim Zeitlin
3e3a3e177c move check for compilers not supporting SEH to wx/chkconf.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31710 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-02 17:46:20 +00:00
George Tasker
3387ea2966 Buffer Overflow error corrected - SF patch #1110550
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31709 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-02 14:49:55 +00:00
George Tasker
69baadbbd1 Unicode build fixes for GTK not knowing what SQL_WCHAR and SQL_WVARCHAR are in non-unicode builds
Buffer overrun fix


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31708 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-02 14:38:05 +00:00
George Tasker
580820e398 Buffer overrun fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31707 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-02 14:37:42 +00:00
George Tasker
81b8978525 Unicode build fixes for GTK not knowing what SQL_WCHAR and SQL_WVARCHAR are in non-unicode builds
Removed old commented out code that is not needed (cleanup)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31706 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-02 14:37:16 +00:00
Włodzimierz Skiba
525d858363 Last .empty() string source cleaning before 2.5.4.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31705 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-02 13:57:02 +00:00
Vadim Zeitlin
5c2a509fca invalidate cache when RefreshLine[s]() is called
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31704 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-02 11:08:48 +00:00
Włodzimierz Skiba
5b72333dfe Flags for wxStaticText alignment. Destroying of the control. Internal minor reorganization.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31703 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-02 07:02:50 +00:00
Vadim Zeitlin
1d41ed0a1c added test for items updating and some comments
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31702 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-02 00:11:52 +00:00
Vadim Zeitlin
aead8a4eab invalidate cache when RefreshLine[s]() is called
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31701 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-02 00:09:59 +00:00
Vadim Zeitlin
2289dcea2b stubs for wxUSE_DBGHELP == 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31700 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-01 21:37:07 +00:00
Włodzimierz Skiba
677ded9539 MinGW warning fixes. Source cleaning. Stock items.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31699 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-01 20:44:06 +00:00
Włodzimierz Skiba
eda6fa912b MinGW warning fixes. Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31698 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-01 20:37:14 +00:00
Włodzimierz Skiba
e7694e3be8 MinGW warning fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31697 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-01 20:34:39 +00:00
Włodzimierz Skiba
26364344e5 As small as possible reorganization within wxDateTime to please PCH in DLL build under Borland.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31696 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-01 19:54:43 +00:00
Włodzimierz Skiba
b494c48b31 .empty() string cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31695 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-01 19:37:36 +00:00
Włodzimierz Skiba
bcf576ccfe wxR?_USE_CHECKBOX style for wxPalmOS.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31694 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-01 18:36:34 +00:00
Włodzimierz Skiba
d79decb5b4 Readable style name.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31693 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-01 15:10:59 +00:00
Vadim Zeitlin
97d216abcb set wxUSE_CRASHREPORT and wxUSE_STACKWALKER to 0 as well, and not only wxUSE_ON_FATAL_EXCEPTION, if the compiler doesn't support SEH
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31692 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-01 11:59:21 +00:00
Vadim Zeitlin
2441fb445a (harmless) warning fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31691 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-01 11:53:37 +00:00
Włodzimierz Skiba
9a727a3bb8 Further cleaning of the wxPalmOS radiobox code. Sending update event from slider. New styles for wxRadioBox and wxRadioButton for using alternative appearance of the control.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31690 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-01 09:58:58 +00:00
Jouk Jansen
7712a6a5ff Committing in .
Update configuration of wxX11 for OpenVMS

 Modified Files:
 	wxWidgets/setup.h_vms
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31689 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-01 07:30:54 +00:00
Vadim Zeitlin
9a8a9e9942 compilation fix for last commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31688 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-01 01:20:52 +00:00
Vadim Zeitlin
9982dcfe4b fix for losing time information (if present) when converting datetime (fixed patch 1113307)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31687 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 23:57:25 +00:00
Vadim Zeitlin
5e67eb9737 - use CreateWindowEx(), please explain why CreateWindow() is needed if it is
- use window name if it has no title (patch 1106877)
- corrected error message when window creation fails


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31686 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 23:45:52 +00:00
Vadim Zeitlin
0ae4d1210a define WXMAKINGDLL_GL if WXMAKINGDLL (patch 1106875)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31685 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 22:36:05 +00:00
Vadim Zeitlin
8af94d3bf1 reset m_currentView in wxDocManager::Clear() (patch 1106872)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31684 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 22:34:38 +00:00
Vadim Zeitlin
6b5403c8d6 fixes for animated GIFs playing (patch 1097003)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31683 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 22:21:11 +00:00
Vadim Zeitlin
be575a0160 enclose zip arguments in quotes, fixes behaviour for paths which contain spaces (fixed patch 1092970)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31682 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 22:17:18 +00:00
Vadim Zeitlin
d5a93fda41 apparently unneeded temporary iterator variable removed (patch 1096066)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31681 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 22:15:11 +00:00
Vadim Zeitlin
adbc621dcb replaced a weird (and wrong when wxUSE_STL == 1) test for string being empty with empty() call (patch 1089458)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31680 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 22:08:33 +00:00
Roman Rolinsky
ab24d4425a Locate command, etc.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31679 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 19:57:50 +00:00
Roman Rolinsky
fd91945141 Batch of changes:
- converting relative paths to absolute to compensate chdir
  - added Locate command (Edit menu)
  - Notebook children are highlighted correctly (at least on wxGTK 2.5.3)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31678 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 19:49:04 +00:00
Włodzimierz Skiba
5d2ac6b8c6 Enhanced stock labels usage. Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31677 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 18:18:18 +00:00
Robert Roebling
faa9724741 Changed note that enter/leave events ARE supported
natively under Windows.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31676 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 18:04:21 +00:00
Włodzimierz Skiba
6759ff7d4d Enhanced stock labels usage. Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31675 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 18:02:36 +00:00
Robert Roebling
efea3c8700 Correct link prob.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31674 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 17:59:35 +00:00
Włodzimierz Skiba
634629fa28 Enhanced wxGetStockLabel() with parameters which replace platform specific #ifdefs for wxPalmOS and wxWinCE and better serve for getting consistent wxMenuItem and wxToolBar labels (with documentation).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31673 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 17:57:35 +00:00
Robert Roebling
343b1669f3 Set state of internal thread object upon ::Exit
to EXITED. This is consistent with MSW and
    fixes a crash with double deletion.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31672 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 17:55:20 +00:00
Vadim Zeitlin
36f1f45649 fixed the checked flag value for events from check items in popup menus (patch 1079015; closes bug 1071598)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31671 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 15:11:10 +00:00
Włodzimierz Skiba
a152561c76 Native wxStaticText. Cleaning of wxRadioBox code before native implementation. Events for wxButton, wxCheckBox, wxToggleButton, wxRadioButton sended from within wxTLW. Internal improvements in structure of wxControl. Pass full palm event to handlers (instead of ID only). Last palm control ID with value which allow portable IDs with wxMSW (according to comment in msw code).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31670 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 08:04:44 +00:00
Vadim Zeitlin
9cc311d32c fixed bug in Set() on DST days (patch 1097811)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31669 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 01:39:54 +00:00
Vadim Zeitlin
a480d0ab83 added test for the DST bug (patch 1097811)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31668 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 01:36:28 +00:00
Vadim Zeitlin
00b34ed7ed added a few more UTF-[78] tests
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31667 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 01:14:53 +00:00
Vadim Zeitlin
667e5b3e05 MultiByteToWideChar(CP_UTF7, MB_ERR_INVALID_CHARS, ...) fails, so don't use MB_ERR_INVALID_CHARS for UTF7 for now (even if it means that ill-formed UTF7 is not detected)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31666 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 01:13:04 +00:00
Vadim Zeitlin
ec54fe9e18 added small UTF 8 conversion test case
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31665 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-31 00:31:47 +00:00
Kevin Hock
900a87655f Clean up indentation / tabs from previous patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31664 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-30 22:51:21 +00:00
Kevin Hock
eb3d60a26f Clean up indentation / tabs from previous patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31663 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-30 22:45:40 +00:00
Robert Roebling
8df443926c Applied selection patch from G.R.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31662 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-30 21:51:02 +00:00
Kevin Ollivier
acb7a89ad0 Fixed problem with incorrect panel background on OS X.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31661 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-30 21:30:38 +00:00
Kevin Ollivier
261ba880dd Added support for wxID_CONTEXT_HELP to wxStdDialogButtonSizer.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31660 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-30 20:56:43 +00:00
Kevin Ollivier
09ff2ee163 Fixed a long-standing issue where wxSlider controls with a hardcoded size would misplace their labels behind the slider control.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31659 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-30 20:10:41 +00:00
Vadim Zeitlin
c1637c8933 use custom class which doesn't redraw everything on resize instead of SysTabCtl32 to fix flicker when resizing (modified patch 1107148)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31658 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-30 16:59:04 +00:00
Vadim Zeitlin
77ec05d477 added ClassRegistrar (wraps Register/UnregisterClass Win32 API calls)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31657 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-30 16:57:57 +00:00
Vadim Zeitlin
8cfa09bdab added eraseBg argument to RefreshRect() too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31656 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-30 16:56:15 +00:00
Vadim Zeitlin
0fcd3b92e3 don't use WS_POPUP for frames using wxFRAME_TOOL_WINDOW style (patch 1107460)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31655 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-30 15:45:37 +00:00
Vadim Zeitlin
3f48c8e275 moved Begin/EndDeferWindowPos() calls to WM_SIZE handler itself, don't use WM_WINDOWPOSCHANGING/ED as they sometimes don't come in pairs (slightly modified patch 1107147)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31654 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-30 15:39:05 +00:00
Vadim Zeitlin
bcd1ec333a fixed typo in last commit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31653 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-30 15:01:32 +00:00
Robert Roebling
b357f3fc2d Use wxEXEC_NODISABLE while querying CUPS about printers.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31652 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-30 14:56:21 +00:00
Robert Roebling
1883238904 Documented SetItemDropEffect
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31651 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-30 14:23:30 +00:00
Robert Roebling
001a26f974 I changed something, but I forgot what.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31650 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-30 13:04:05 +00:00
Robert Roebling
f675893925 Applied popup patch for deleting the handlers
correctly.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31649 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-30 12:49:00 +00:00
Robert Roebling
f6fca1f80e Applied IM patch.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31648 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-30 12:47:14 +00:00
Robert Roebling
9fce43b779 Commited SetHilightDropEffect patch.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31647 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-30 12:44:50 +00:00
Kevin Hock
eaefbb887c Make list consistent with tree in terms of Vetoed changes closing the inline edit and right-clicking on an item selecting it [patch 1110252]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31646 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 23:52:55 +00:00
Vadim Zeitlin
07763c990e do reset m_count to 0 after deleting all the items in the control (was broken by last commit)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31645 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 21:26:25 +00:00
Vadim Zeitlin
bc5f4d9899 (blind) compilation fixes for OS X 10.2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31644 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 21:19:52 +00:00
Vadim Zeitlin
5ac52b5da0 don't run the thread if its creation failed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31643 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 20:49:14 +00:00
Stefan Csomor
d9af087c42 move FixMath include into non darwin part
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31642 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 20:04:03 +00:00
Robert Roebling
4ecd9342fd One more place where we need to use connect_after
in order not to confuse GTK+. This fixes the
    wxTreeCtrl crash.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31641 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 12:02:35 +00:00
Robert Roebling
dbc37e6880 Removed trailing semicolons.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31640 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 11:41:40 +00:00
Robert Roebling
537a0880d2 Tried to restore wxPopupTransientWindow functionality
under GTK+.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31639 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 11:32:46 +00:00
Robin Dunn
087f594ba1 wxMac has wxSound::Stop now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31638 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 01:32:48 +00:00
Robin Dunn
7557b9b542 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31637 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 01:30:42 +00:00
Robin Dunn
19a6943a67 Don't use the parent's defered sizing handle if the window in question
is a top-level window


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31636 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 01:24:40 +00:00
Robin Dunn
54563c57da Some little demo tweaks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31635 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 01:17:02 +00:00
Robin Dunn
ce6780cfe3 log IsEditCancelled too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31634 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 01:15:43 +00:00
Robin Dunn
7f873aa41d wxSL_* labels moved to a different module
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31633 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 01:14:08 +00:00
Robin Dunn
23f8f9853e Allow wxCustomDataObject ctor to be able to take the format name
string directly and to automatically make the wxDataFormat from it.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31632 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 01:13:07 +00:00
Robin Dunn
e5bc90ee89 Added some alternate constructors for the data classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31631 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 01:09:45 +00:00
Robin Dunn
bc8e922f7e Change the name
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31630 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 01:08:53 +00:00
Robin Dunn
39d160c3b2 Some TODO notes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31629 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 01:08:29 +00:00
Robin Dunn
35e7d66928 Docstring fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31628 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 01:07:46 +00:00
Robin Dunn
24c5243d09 Call CalculatePaperSizeFromId when SetPrintData or the assignment
operator is used.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31627 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 01:06:10 +00:00
Robin Dunn
1db4e8dd8d Use wxTRANSPARENT_BRUSH so the rectangles around the text is not
filled in.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31626 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 01:04:54 +00:00
Robin Dunn
c145a47c6e Patch #1111679
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31625 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 01:03:07 +00:00
Robin Dunn
b931414d91 Don't fail assertion about image size mismatch if the size hasn't been
set yet.  If the size hasn't been set then set it when the first image
is added.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31624 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 01:00:01 +00:00
Václav Slavík
89be85c244 fixed wxUSE_CONFIG_NATIVE after setup.h changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31623 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-29 00:53:51 +00:00
Václav Slavík
c07e76fae4 added wx-lib template for building static libs (no linking)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31622 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-28 22:25:08 +00:00
Václav Slavík
6cab647638 fixed linking against 3rd party libs in Unicode build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31621 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-28 22:11:00 +00:00
Włodzimierz Skiba
dc3155f13e Warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31620 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-28 20:56:09 +00:00
Włodzimierz Skiba
f62ff2f1cb Warning fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31619 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-28 20:54:28 +00:00
Kevin Hock
b4a5e7b6f1 Close tree edit even if the change is vetoed to be consistent with MSW [patch 1110252]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31618 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-28 19:01:40 +00:00
Robin Dunn
3e172c2019 wxEVT_MOUSEWHEEL is always defined, no #if needed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31617 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-28 16:38:06 +00:00
Włodzimierz Skiba
808e3bce62 Use stock labels. Native wxRadioButton. Getting position and size for the controls. Getting size for wxTLW. Default size and position for wxButton according to l&f guidelines. Removed wxUSE_CTL3D from wxPalmOS port. Better font for controls.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31616 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-28 10:58:13 +00:00
Stefan Csomor
613a24f7d2 CoreGraphics dev
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31615 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-28 05:47:01 +00:00
Stefan Csomor
3d63970769 FixMath fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31614 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-28 05:40:55 +00:00
Kevin Hock
e8cf9a5f01 Do not modify selection if right-click is on a selected item [patch 1111174]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31613 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-28 03:41:01 +00:00
Václav Slavík
83c7f6a7ac added bakefile presets for creation of user makefiles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31612 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-27 22:47:37 +00:00
Stefan Csomor
ba9a486d43 ATSUStyle taken from font
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31611 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-27 21:43:06 +00:00
Kevin Hock
1fd7e0f5f4 Mac vertical sliders consistent with MSW/GTK vertical sliders with 0 oriented at the top rather than the bottom (use wxSL_INVERSE to orient in Mac-native way).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31610 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-27 21:20:42 +00:00
Kevin Hock
0281278534 Add support for wxSL_INVERSE flag. Also uses new inverse logic to make Mac vertical sliders consistent with MSW/GTK vertical sliders with 0 oriented at the top rather than the bottom (use wxSL_INVERSE to orient in Mac-native way).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31609 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-27 21:18:47 +00:00
Stefan Csomor
2996adee33 pragma , precomp support
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31608 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-27 21:10:44 +00:00
Stefan Csomor
3e5270737b ATSU Support in font extended
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31607 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-27 21:09:20 +00:00
Stefan Csomor
3d1a4878f3 pragma and prec-header patch applied
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31606 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-27 21:05:47 +00:00
Włodzimierz Skiba
c3816108b4 Warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31605 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-27 20:20:45 +00:00
Włodzimierz Skiba
ba88951339 Get/SetValue() and other improvements to the native PalmOS controls.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31604 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-27 11:01:06 +00:00
Stefan Csomor
a8e9860d9f pragma and prec-header patch applied
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31603 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-27 11:00:32 +00:00
Stefan Csomor
7bca6cefea storing ATSU style in the font itself
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-27 10:57:10 +00:00
Kevin Hock
065f010fe3 Added wxUSE_MENUS_NATIVE wrapper around DoPopupMenu to match header
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31601 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-26 21:14:19 +00:00
Robin Dunn
06223aa37a Allow unicode objects in wxPyDrawTextList
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31600 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-26 19:25:31 +00:00
Stefan Neis
e4a1c661cd Fixed C++ comments.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31599 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-26 16:19:36 +00:00
Stefan Neis
2349d7c7fe Cleanup for previous bug fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31598 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-26 16:07:55 +00:00
Stefan Neis
d1f8e97b03 Fixed a compilation problem on AIX.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31597 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-26 16:03:51 +00:00
Jouk Jansen
9bea227d4e Committing in .
Update OpenVMS compile support

 Modified Files:
 	wxWidgets/setup.h_vms wxWidgets/src/common/descrip.mms
 	wxWidgets/src/generic/descrip.mms
 	wxWidgets/src/unix/descrip.mms
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31596 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-26 07:35:28 +00:00
Włodzimierz Skiba
732e46f552 Syntax fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31595 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-25 15:59:24 +00:00
Włodzimierz Skiba
11846af338 Warning fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31594 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-25 15:49:14 +00:00
Vadim Zeitlin
7a46263195 fixed memory leak with client data when using DeleteAllItems() (bug 1107215)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31593 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-25 13:58:01 +00:00
Włodzimierz Skiba
5fae0f97a1 TrackMouse DMC fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31592 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-25 12:22:56 +00:00
Włodzimierz Skiba
14778505d8 comment in C code fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31591 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-25 11:52:17 +00:00
Włodzimierz Skiba
2312c9e1d0 Save dialog for printing. Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31590 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-25 07:24:11 +00:00
Włodzimierz Skiba
bdb5436554 wxButton, wxCheckBox, wxSlider, wxToggleButton native implementations for PalmOS.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31589 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-25 06:55:10 +00:00
Włodzimierz Skiba
3a0c618112 Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31588 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-24 16:41:35 +00:00
Julian Smart
6fdd4565f4 Doc fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31587 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-24 16:37:28 +00:00
Kevin Hock
58c5fe3bef Create non-GUI log target until GUI logging is available, allows stderr messages in non-Unicode builds when GTK fails to initialize (Patch 1017789)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31586 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-24 14:45:46 +00:00
Dimitri Schoolwerth
0f770734ae fixed unreachable code warning (MSVC6)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31585 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-24 14:44:10 +00:00
Dimitri Schoolwerth
53a26bf774 fixed unused param warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31584 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-24 14:39:20 +00:00
Dimitri Schoolwerth
d6959d6f9e applied patch #1044865 (fixes problem: "On Win2K, the month combobox's dropdown height in the wxCalendar is only about 1 pixel")
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31583 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-24 14:30:51 +00:00
Włodzimierz Skiba
450a1593ef Code cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31582 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-24 13:17:05 +00:00
Włodzimierz Skiba
e3f2384e48 Unicode markup.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31581 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-24 11:16:42 +00:00
Włodzimierz Skiba
03f01e6372 Missing include.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31580 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-24 11:15:03 +00:00
Włodzimierz Skiba
b1c741f8a2 Avoid hiding virtual wxWindow::IsEnabled() in wxMenuBar class.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31579 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-24 11:14:09 +00:00
Włodzimierz Skiba
db101bd352 Native PalmOS wxControl and wxButton implementation. wxTLW without fixed size. Unused MSW code cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31578 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-24 07:38:52 +00:00
Włodzimierz Skiba
5125ea1f83 Note about deprecating some wxSystemSettings members.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31577 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-24 07:23:42 +00:00
Kevin Ollivier
fe3fc02e1c Fixing notebook 'flashing' bug where the WebView would flash while not visible.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31576 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-24 06:53:59 +00:00
Kevin Hock
36d2312197 For consistency between WMs and with MSW, TOOL_WINDOW explicilty includes NO_TASKBAR
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31575 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-24 05:08:42 +00:00
Kevin Hock
1147523508 For consistency between WMs and with MSW, TOOL_WINDOW explicitly includes NO_TASKBAR
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31574 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-24 05:07:50 +00:00
Robert Roebling
2afa9fa7a9 Forgot to commit sample testing update ui events
for wxTaskBarIcon.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31573 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-23 23:07:45 +00:00
Robert Roebling
0bd3b8eca1 Enable UpdateUI events in wxTaskBarIcon.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31572 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-23 22:39:03 +00:00
Kevin Hock
11ca2edf95 We need to update the scrollbar even if it's not shown, otherwise it can get stuck in a scrolled down position when the scrollbar disappears (such as deleting all items in a list control or resizing). Patch 1102197 for bug 861063
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31571 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-23 22:16:36 +00:00
Kevin Hock
2bcdbe0fb9 Added inverse checkbox to test sliders with wxSL_INVERSE style
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31570 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-23 20:17:21 +00:00
Robert Roebling
b3bd613abb Applied patch for keyboard control in composite
windows as discussed in patch 1102862.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31569 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-23 18:44:19 +00:00
Robert Roebling
03ed1dae4f Fixed compilation for GTK 1.2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31568 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-23 18:36:43 +00:00
Robin Dunn
9718d66a76 Fixed event binding in NotebookPage
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31567 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-23 15:21:30 +00:00
Kevin Ollivier
76bdc1d23a Added documentation for wxStdDialogButtonSizer.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31566 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-23 07:32:19 +00:00
Kevin Ollivier
39104bc1bd Greatly improved wxWebKitCtrl positioning logic to accomodate most situations.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31565 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-23 02:03:26 +00:00
Robert Roebling
dc2e913348 Probably a bug in the MINGW32 header.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31564 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-22 19:16:43 +00:00
Stefan Neis
097338d747 Removed setup0.h - we are using configure generated setup.h on OS/2.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31563 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-22 16:54:48 +00:00
Stefan Neis
aab52ea550 Blind fix for bug [ 1106890 ] (undeclared symbols on Solaris).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31562 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-22 14:13:32 +00:00
Kevin Hock
3baba4c60d gtk_range_set_inverted only available on GTK2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31561 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-22 13:48:38 +00:00
Mattia Barbon
55e3f1c4f9 Warning fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31560 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-22 13:42:33 +00:00
Mattia Barbon
10dcbe6369 Fix wxSortedArray::Index() when wxUSE_STL == 1, with tests.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31559 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-22 13:28:49 +00:00
Robin Dunn
104fa1124d Disable wxDatePickerCtrl if wxPopupWindow is not available
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31558 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 22:12:13 +00:00
Włodzimierz Skiba
e273151278 Headers cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31557 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 21:04:05 +00:00
Vadim Zeitlin
6c1635b598 added wxStaticBoxSizer ctor creating a new static box
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31556 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 20:56:39 +00:00
Robin Dunn
aeee37c362 * Some WXWIN_COMPATIBILITY_2_4 changes, as well as flagging other
things that will need fixing when WXWIN_COMPATIBILITY_2_4 is turned
  off.

* Create a custom version of the "default" ctor for wxCursor on wxGTK

* Switch to new format string and name string constants for default
  values

* Changes some public data members of event classes into properties as
  they are no longer public in the C++.

* Added wxSL_INVERSE


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31555 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 20:38:51 +00:00
Robin Dunn
d7f03cae7f Added setter to wxMoveEvent
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31554 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 20:25:38 +00:00
Kevin Hock
9da00e91b4 Do not emit a wxEVT_COMMAND_TEXT_UPDATED when the tab key is lifted (otherwise each time you tab into the combobox, the text updated event is fired, which is wrong)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31553 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 20:04:00 +00:00
Włodzimierz Skiba
16cba29d3a Warning fixes for MinGW.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31552 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 18:48:22 +00:00
Włodzimierz Skiba
f4fffffc95 Warning fixes for MinGW.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31551 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 18:26:01 +00:00
Robin Dunn
eba52a286d Patch #1106564, corrects possible 100% CPU load condition.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31550 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 18:23:35 +00:00
Włodzimierz Skiba
ef359b4350 Warning fixes for MinGW.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31549 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 18:15:42 +00:00
Vadim Zeitlin
77670008aa more forward declarations (trying to fix bug 1106829)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31548 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 17:54:08 +00:00
Vadim Zeitlin
4221a0e54c remove margins in the bitmap button
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31547 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 15:41:59 +00:00
Vadim Zeitlin
7402677a3a implemented DrawComboBoxDropButton() for classic Win32
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31546 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 15:36:56 +00:00
Vadim Zeitlin
f33cef9fec added DrawComboBoxDropButton()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31545 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 15:32:07 +00:00
Vadim Zeitlin
b6292ff062 compilation fix when used together with native control
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31544 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 15:08:19 +00:00
Vadim Zeitlin
7ff2dfbac2 added possibility to use generic date control if configured
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31543 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 15:05:32 +00:00
Vadim Zeitlin
08c8690cf0 check for error in GetSelection(long *, long *); clean up SetSelect(long, long)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31542 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 15:02:58 +00:00
Vadim Zeitlin
15c86b39a7 define wxHAS_NATIVE_DATEPICKCTRL in the header file to make it available to user code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31541 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 14:41:38 +00:00
Vadim Zeitlin
51cdee11e0 moved code working around combobox selection bug to wxComboBox: wxChoice doesn't have selection anyhow, why should it be there?
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31540 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 14:39:29 +00:00
Vadim Zeitlin
04049dbb0b added wxUSE_DATEPICKCTRL_GENERIC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31539 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 14:08:00 +00:00
Vadim Zeitlin
7ae712f566 renamed generic version to wxDatePickerCtrlGeneric to allow using it alongside the native one
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31538 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 13:44:01 +00:00
Vadim Zeitlin
d98766152b put datectlg.cpp in ADVANCED_SRC so that it can be used in all ports, even MSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31537 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 13:42:58 +00:00
Vadim Zeitlin
da98e9be4e added wxUSE_DATEPICKCTRL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31536 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 13:41:47 +00:00
Václav Slavík
097d3ba2ab compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31535 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 12:40:19 +00:00
Vadim Zeitlin
209afcf78c don't include wx/popupwin.h in the header, use forward declarations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31534 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 12:38:12 +00:00
Włodzimierz Skiba
6929fe3af8 Forgot to free string after usage.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31533 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 11:33:26 +00:00
Włodzimierz Skiba
e9c52a40d7 Start more than minimal TLW support.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 11:30:26 +00:00
Włodzimierz Skiba
b08cd3bf53 Reenable wxPalmOS status bar after recent changes. Start transition from faked drawing of the bar to usage of the native status bar. Source cleaning as usually.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31531 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 11:22:11 +00:00
Kevin Hock
1e219378a3 Add support for wxSL_INVERSE using gtk_range_set_inverted
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31530 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 05:14:49 +00:00
Kevin Hock
5101728b68 wxSL_INVERSE added, noted as being wxGTK only (for now)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31529 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 05:13:24 +00:00
Kevin Hock
5224bb9485 Add wxSL_INVERSE flag
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31528 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 05:12:29 +00:00
Kevin Hock
b7d6b7faf2 Fixed name strings to match documentation (Expanded patch 1098784)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31527 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 03:56:16 +00:00
Vadim Zeitlin
d5ae99f5e8 switched to using wxPopupWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31526 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 02:00:07 +00:00
Vadim Zeitlin
91edf16cb8 define wxDateEvent static stuff here
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31525 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 01:27:34 +00:00
Vadim Zeitlin
cb1ef83399 use ResetTime() in Today() instead of dealing with raw struct tm which introduces a bug around DST changes (replaces patch 1097811)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31524 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-21 01:21:35 +00:00
Robin Dunn
767d6c83a3 Fix typos
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31523 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-20 20:55:06 +00:00
David Elliott
9598655399 Add support for Metrowerks compilers.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31522 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-20 17:33:07 +00:00
Włodzimierz Skiba
ae5e1dcb68 WM_CONTEXTMENU available since WinCE.NET
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31521 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-20 17:24:49 +00:00
Włodzimierz Skiba
61c2afedf4 Missing define.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31520 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-20 17:08:36 +00:00
David Elliott
c122b1645e Check for vsnprintf while using namespace std if its not found when not.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31519 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-20 17:03:58 +00:00
Vadim Zeitlin
d1fd3c2675 expanded the date picker part to show wxDP_XXX styles
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31518 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-20 16:23:34 +00:00
Vadim Zeitlin
2cfbeac814 added and implemented for MSW wxDP_SHOWCENTURY flag
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31517 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-20 16:22:48 +00:00
David Elliott
c08ebc6275 Make sure -DNO_GCC_PRAGMA is in wx-config output regardless of the reason.
Mostly reverts configure.in,1.916,1.917 and uses a simpler method.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31516 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-20 16:10:17 +00:00
Włodzimierz Skiba
8ea92b4d77 Simple wxBatteryPower API for the support in wxWinCE, wxPalmOS and any other mobile device with wxWidgets. Minor source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31515 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-20 16:09:23 +00:00
Włodzimierz Skiba
b7d216951f Syntax error fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31514 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-20 15:50:06 +00:00
Vadim Zeitlin
79e385875b compilation fix for CE: don't use GetModuleHandleA() which doesn't exist there
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31513 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-20 14:06:58 +00:00
Vadim Zeitlin
0aa7cb54a9 call InitCommonControlsEx() when using comtl32.dll <= 4.72; check for date picker availability for even earlier versions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31512 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-20 11:44:10 +00:00
Vadim Zeitlin
658252ef0c report more information about the control whose creation failed in the assert
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31511 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-20 11:32:14 +00:00
Vadim Zeitlin
6ee03aed39 fixed typo in testing whether wxUSE_NATIVE_STATUSBAR should be set to 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31510 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-20 10:07:07 +00:00
Włodzimierz Skiba
cc2c11e218 PalmOS description.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31509 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-20 06:56:35 +00:00
Vadim Zeitlin
e77620e90b wxUSE_CRASHREPORT/STACKWALKER may be sued without wxUSE_ON_FATAL_EXCEPTION
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-20 01:04:42 +00:00
Vadim Zeitlin
da4486fb82 trying to get wxUSE_NATIVE_STATUSBAR setting correctly: define it to 1 by default but reset it to 0 in wx/chkconf.h if it's not supported
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31507 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-20 01:01:55 +00:00
Robin Dunn
b5c4505960 Adjust the bounding box of the labels to client coordinants
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31506 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 22:06:13 +00:00
Kevin Hock
a962d4e057 Additional header files required
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31505 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 21:49:48 +00:00
Stefan Neis
fd6c94288f Compilation fix for OS/2.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31504 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 21:41:11 +00:00
Kevin Hock
7a3ba35d63 Additional header files required
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31503 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 21:38:26 +00:00
Stefan Neis
e9737edeee Compilation fixes for OS/2 (OS/2 still defines __UNIX__ :-( ).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31502 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 21:28:37 +00:00
Vadim Zeitlin
14bdf09396 Unicode compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31501 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 20:13:49 +00:00
Vadim Zeitlin
5385747ec6 use wxDP_SPIN by default under Win32
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31500 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 19:39:33 +00:00
Vadim Zeitlin
ac78ab7b0a corrected #if tests to use correct wxUSE_DATEPICKCTRL spelling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31499 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 19:34:23 +00:00
Vadim Zeitlin
29c8694822 added wxDP_SPIN/DROPDOWN styles (only Win32 native version implements the former)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31498 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 19:31:40 +00:00
Włodzimierz Skiba
7d8268a1d6 wxTextPos for all GetLastPosition with constants for special cases. Make it virtual everywhere. Avoid doubling typedefs. Always include textctrl.h for combobox.h. Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31497 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 16:25:34 +00:00
Vadim Zeitlin
4b134bb2ce compilation fixes; pruned API
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31496 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 15:57:30 +00:00
Włodzimierz Skiba
cad3d9c14c MinGW warning fix for hundreds of not initialized members.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31495 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 15:41:09 +00:00
Włodzimierz Skiba
d0468e8c29 MinGW warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31494 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 14:13:57 +00:00
Vadim Zeitlin
39df3acde9 added generic version of wxDatePickerCtrl from Andres Pflug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31493 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 13:55:48 +00:00
Václav Slavík
60b4fc9e8a hotfix for bakefile-0.1.5 bug: rpmspec format doesn't work because of missing precomp-headers-location
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31492 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 13:53:29 +00:00
Włodzimierz Skiba
b480f61be3 MinGW warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31491 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 13:46:19 +00:00
Włodzimierz Skiba
2ac08aeb99 MinGW warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31490 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 13:26:04 +00:00
Włodzimierz Skiba
c3fad64b42 Cookie is not for dummy initialization due to condition of setting it. Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31489 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 13:23:49 +00:00
Włodzimierz Skiba
04f4ed8150 DMC PCH requires additional parameter in new bakefiles.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31488 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 11:24:41 +00:00
Václav Slavík
04840eaa88 regenerated autoconf files using bakefile-0.1.5
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31487 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 10:57:49 +00:00
Václav Slavík
2fd4bec346 require bakefile-0.1.5 and use it's features
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31486 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 10:56:37 +00:00
Vadim Zeitlin
1730ac80d8 undef wxUSE_NATIVE_STATUSBAR before redefining it as 1 for wxMSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31485 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 09:51:50 +00:00
Włodzimierz Skiba
89438177fe Fix for incomplete setup (wxPalmOS case).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31484 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 06:50:18 +00:00
Włodzimierz Skiba
a0be690852 Fixes after removal of palmos/gccpriv.h.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31483 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 06:48:42 +00:00
David Elliott
b1d22ded8d Updated aclocal.m4 using Bakefile's CVS HEAD bakefile.m4 with
BAKEFILE_BAKEFILE_M4_VERSION set back to 0.1.4.
- Adds support for Metrowerks compilers.
- Improves dllar.sh used on OS/2.
- Allows autoconf to invalidate its cache when autoconf_inc.m4 is changed.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31482 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 03:42:42 +00:00
Vadim Zeitlin
f0bce4d4e0 fixed crash in wxKill() introduced by 1.116 patch (ironically named "proper
return value testing"); this is slightly modified patch 1098248


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31481 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 02:51:13 +00:00
Vadim Zeitlin
51e4e26670 reenabled WM_MOUSELEAVE event handling (patch 1104551); moved duplicated code in its handler in a new GenerateMouseLeave() method
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31480 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 02:31:09 +00:00
Vadim Zeitlin
e3c55eb333 don't return HTCLIENT for static bitmaps, this breaks mouse (leave) event generation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31479 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 02:29:42 +00:00
Vadim Zeitlin
21eefb768a (harmless) VC++ warning fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31478 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 02:28:34 +00:00
Vadim Zeitlin
4d373d20d6 define wxUSE_NATIVE_STATUSBAR as 1 for wxMSW builds
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31477 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 01:53:17 +00:00
Vadim Zeitlin
d164827a00 clarified what needs to be done to get useful results with this class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31476 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 01:49:32 +00:00
Vadim Zeitlin
a256039a12 documented wxStackWalker/Frame
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31475 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 01:42:25 +00:00
Vadim Zeitlin
eaff0f0d3f implemented wxStackWalker for Unix (using glibc-specific methods); moved wxUSE_STACKWALKER to common setu_inc.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31474 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-19 01:15:12 +00:00
Stefan Neis
e926f2efc7 Fixed some line breaks.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31473 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 23:36:04 +00:00
Włodzimierz Skiba
d471bb2d4c Less MSW related files in wxPalmOS port.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31472 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 21:27:06 +00:00
David Elliott
d20834167e Take -DWX_PRECOMP out of GCC_PRAGMA_FLAGS and put it into its own PCH_FLAGS.
If -DNO_GCC_PRAGMA is included in GCC_PRAGMA_FLAGS (because the platform
always requires it) then it won't be duplicated in PCH_FLAGS, but if
the platform does not normally need -DNO_GCC_PRAGMA then the flag
will be included in PCH_FLAGS because PCH always requires it.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31471 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 21:22:42 +00:00
Robin Dunn
bdbb07ede3 Use a panel
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31470 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 21:21:57 +00:00
Włodzimierz Skiba
e1d63b7935 Cleaning of headers.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31469 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 21:14:27 +00:00
Włodzimierz Skiba
252d21bd38 MinGW warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31468 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 20:23:48 +00:00
Włodzimierz Skiba
04a18b0d95 MinGW warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31467 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 20:13:00 +00:00
Włodzimierz Skiba
a09cd1895e MinGW warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31466 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 19:50:43 +00:00
Julian Smart
cd2e10d695 Skip processing in OnTextEnter so normal return processing works.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 17:44:56 +00:00
Włodzimierz Skiba
329a2be820 ctor/dtor not available in C code (MinGW fix).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31464 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 16:31:17 +00:00
Vadim Zeitlin
01dd42b61f fixed memory leak in UpdateAttr[Rows][Or][Cols] (patch 1104355)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31463 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 16:15:20 +00:00
Vadim Zeitlin
1539bf2744 fixed crash if an error happened inside WaitConnection() (patch 1093852)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31462 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 16:11:09 +00:00
Kevin Hock
92301a5915 Added DLL export for wxCommandEventStringHelper
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31461 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 16:07:44 +00:00
Kevin Hock
75a29298fa Fixed wxTextCtrl being undefined when not using precompiled headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 15:54:41 +00:00
Kevin Hock
72e430cd97 For efficiency reasons, text controls no longer set the string for each text updated event, but rather query for the string value only when GetString is called from an event handler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31459 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 15:17:05 +00:00
Kevin Hock
ab1931f98e GetString() method queries the control for the string when called, m_commandString is no longer set for each event and cached
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31458 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 15:15:49 +00:00
Kevin Hock
4bde3754eb Event member variables hidden, text control efficiency by not calling GetString for each event
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31457 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 15:14:19 +00:00
Kevin Hock
0599486175 Removed m_ variables from the documentation, since they are now protected and should not be used directly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31456 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 15:13:34 +00:00
Kevin Hock
b4b76d6115 Move member m_ variables to be protected rather than public to force usage of Set/Get rather than allow direct access. Compatibility with 2.4 keeps members private, and also creates a class to allow continued usage of m_commandString. GetString() will now get the text control's string when called, rather than store it and return it every time (huge performance gain by doing this, esp. on GTK2)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31455 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 15:12:53 +00:00
Kevin Hock
687706f5e7 Use event modifiers and accessors rather than m_ variables directly, which are now protected rather than public with 2.4 compatibility disabled
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31454 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 15:08:15 +00:00
Vadim Zeitlin
1e6eb02501 regenerated with correct substitutions for COND_WXUNIV_0 (fixes wxAdv build problems)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31453 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 13:56:38 +00:00
Vadim Zeitlin
7efaa702da wxUSE_CRASHREPORT and wxUSE_STACKWALKER can't be used if wxUSE_ON_FATAL_EXCEPTION == 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31452 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 13:39:08 +00:00
Vadim Zeitlin
738cadd897 reverted last commit, do this check in wx/chkconf.h instead
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31451 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 13:36:58 +00:00
Vadim Zeitlin
a353dc9852 more fixes to dllexport/import stuff for operator<<()s (still bug 1104372)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31450 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 13:15:20 +00:00
Vadim Zeitlin
58187c862c only define globals when wxUSE_BASE to avoid duplicate definitions in wxBase and wxMSW (closes 1104289)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31449 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 13:11:24 +00:00
Vadim Zeitlin
8228dac8ff wxUSE_CRASHREPORT and wxUSE_STACKWALKER can't be used if wxUSE_ON_FATAL_EXCEPTION == 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31448 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 13:10:16 +00:00
Vadim Zeitlin
5e4f63c810 Unicode compilation fix (patch 1104406)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31447 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 13:00:57 +00:00
Vadim Zeitlin
e84ba59e3e Unicode compilation fix for debugging code which is also commented out now
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31446 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 12:46:55 +00:00
Vadim Zeitlin
7fcdf88f88 added WXDLLIMPEXP_BASE for operator<<() functions (blind fix for bug 1104372)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31445 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 12:30:19 +00:00
Włodzimierz Skiba
f5d9cc735c PalmOS native colour dialog.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31444 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 10:31:24 +00:00
Włodzimierz Skiba
23ee4b4874 wxWinCE fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31443 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 10:10:23 +00:00
David Elliott
1a1e9ff1c3 Don't depend on m_cocoaWxToBoundsTransform not being released until after
we're done with it; retain/release it appropriately.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31442 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 03:47:33 +00:00
David Elliott
f48ab29b5c Sending copy to an instance infers ownership by the sender so we must
send release to the returned instance when we're done.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31441 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-18 03:32:52 +00:00
David Elliott
3e21fc053d Moved Clear() implementation into wxDC using a new virtual CocoaGetBounds()
to determine the rect to clear.  Also added CocoaUnapplyTransformations()
to bring the coordinate system back into Cocoa coordinates for those
cases such as Clear() where it makes more sense.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31440 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 21:30:53 +00:00
Włodzimierz Skiba
1aaf88d220 Common default datetime formats.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31439 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 21:29:23 +00:00
Włodzimierz Skiba
9b877d1846 Fix for limited build required by headers of free DMC.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31438 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 21:20:07 +00:00
Vadim Zeitlin
3d35dfa380 regenrated after ADVANCED_SRC/HDR split in native/Univ parts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31437 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 21:19:43 +00:00
Włodzimierz Skiba
331c1816d7 Stock buttons labels.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31436 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 19:21:56 +00:00
Julian Smart
73026ab913 Added AddWindowStyles() call
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31435 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 19:15:49 +00:00
Włodzimierz Skiba
60431236a3 MinGW fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31434 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 19:08:44 +00:00
Vadim Zeitlin
5bb52a5ff0 removed #ifndef __WXUNIVERSAL__ added in last commit, shouldn't be necessary any more after files.bkl to exclude this file from wxUniv builds
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31433 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 18:52:46 +00:00
Vadim Zeitlin
ca95ed8ed7 split ADVANCED_HDR/SRC in a part common to all ports and another one used only for the native ports (currently only wxMSW)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31432 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 18:51:43 +00:00
Włodzimierz Skiba
dbd9b4dbf2 Check wxMSWUniv condition earlier.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31431 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 14:35:05 +00:00
Włodzimierz Skiba
635465c3e3 wxMSWUniv build fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31430 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 14:20:52 +00:00
Vadim Zeitlin
5ef1ba92e6 fixed GetModuleHandleExA() call after last fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31429 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 14:04:09 +00:00
Włodzimierz Skiba
1f6c517ca5 Warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31428 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 13:49:03 +00:00
Włodzimierz Skiba
94534bf8db Build fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31427 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 13:47:50 +00:00
Włodzimierz Skiba
4510fc80f2 Missing include.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31426 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 13:45:43 +00:00
Włodzimierz Skiba
46da6d0629 Minor output simplification. Significantly influences all makefiles but nothing regenerated before incoming new bakefile release.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31425 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 13:02:12 +00:00
Vadim Zeitlin
1b3d358519 update from Janos Vegh
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31424 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 12:46:23 +00:00
David Elliott
d8e342b79e Make this compile on Darwin. Vadim, could you please check this is correct?
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31423 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 02:45:32 +00:00
Vadim Zeitlin
47e94dedd9 added GenerateNow()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31422 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 02:04:06 +00:00
Vadim Zeitlin
b059b79da7 disable an apparently harmless VC++ warning about /EHa being required with _set_se_translator()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31421 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 02:01:33 +00:00
Vadim Zeitlin
8c125d136d moved fatal exception handling code to msw/main.cpp from common code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31420 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 01:54:25 +00:00
Vadim Zeitlin
1065495bb1 accidnetally checked in file in DOS format last time, correcting this
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31419 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 01:53:52 +00:00
Vadim Zeitlin
107d0fd493 added {debughlp|stackwalk}.{h|cpp}
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31418 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 01:43:08 +00:00
Vadim Zeitlin
1b68f1da6e added wxUSE_CRASHREPORT and wxUSE_STACKWALKER; removed obsolete wxUSE_DYNAMIC_CLASSES
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31417 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 01:24:57 +00:00
Vadim Zeitlin
7beafee942 added wxStackWalker class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31416 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 01:23:20 +00:00
Vadim Zeitlin
83dee24ca2 refactored wxCrashReport to use new wxDbgHelpDLL class; added wxCrashContext
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31415 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 01:21:57 +00:00
Vadim Zeitlin
3d8b5d8502 created a reusable interface to dbghelp API
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31414 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 01:20:36 +00:00
Vadim Zeitlin
ac6b7b3c91 compilation fixes for !USE_PCH
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31413 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 01:14:21 +00:00
Vadim Zeitlin
a76d8a2953 only declare wxHandleFatalExceptions() when wxUSE_ON_FATAL_EXCEPTION == 1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31412 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 00:38:33 +00:00
Vadim Zeitlin
06d1d10faf remove obsolete wxUSE_CTL3D code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31411 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 00:37:11 +00:00
Vadim Zeitlin
ab9cf6366e implement date events here if wxDatePickerCtrl is not used (as we need them too)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31410 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 00:32:22 +00:00
Vadim Zeitlin
76cebbff35 added argc and argv arguments to wxInitializer ctor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31409 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-17 00:13:39 +00:00
Vadim Zeitlin
297ebe6b97 implemented wxDynamicLibrary::ListLoaded() for Linux; added test for it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 23:32:37 +00:00
Vadim Zeitlin
e259f83e0f small tweaks to wxDynamicLibrary test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31407 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 22:24:04 +00:00
Vadim Zeitlin
7586c7f900 regenerated after adding msw/datectrl.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31406 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 22:22:43 +00:00
Vadim Zeitlin
da55d0644f extracted Unix code in a separate new file (src/unix/dlunix.cpp), it remains only to refactor Mac/OS2 versions to finally fix the mess in common/dnylib.cpp...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31405 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 22:21:44 +00:00
Vadim Zeitlin
114a4501f8 regenerated to include msw/dlmsw.cpp and datectrl.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 20:56:58 +00:00
Vadim Zeitlin
defbed48e7 1. extracted MSW-specific part of wxDynamicLibrary in msw/dlmsw.cpp
2. added and documented wxDynamicLibrary::ListLoaded()


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31403 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 20:50:06 +00:00
Robert Roebling
c4526184a7 Use connect_signal_after for list events. This should
probably be done for all native control command events.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31402 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 16:54:50 +00:00
Vadim Zeitlin
370fd4c26e undid the last patch: set wxUSE_XXX to 0 in setup.h.in instead of having to do it manually in configure
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31401 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 15:58:54 +00:00
Vadim Zeitlin
f50f0a4826 regenerated with all common options set to 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31400 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 15:54:58 +00:00
Vadim Zeitlin
de1efd2d08 catch a few more defines, which were not of the wxUSE_XXX form, and set them to 0 as well
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31399 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 15:54:17 +00:00
Vadim Zeitlin
88e14c09a7 oops, sed replace was eating underscores
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31398 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 15:50:07 +00:00
Vadim Zeitlin
f1781e98b6 compilation fix for !USE_PCH
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31397 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 15:47:02 +00:00
Vadim Zeitlin
28999ba631 don't force wxUSE_EXTENDED_RTTI to eb 1 for Borland compiler (why?)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31396 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 15:46:22 +00:00
Vadim Zeitlin
8d51d7d2f9 1. set all wxUSE_XXXs to 0 in the generated setup.h.in
2. don't update the files unless necessary (i.e. check modification time)
3. show progress messages


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31395 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 15:44:44 +00:00
Robert Roebling
c7d94ca4f9 Applied patch for correct feedback from DND
actions (not all actions are allowed).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31394 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 15:33:28 +00:00
Robert Roebling
ac103441d1 Applied patch which solved conflicts between wxWidgets
and GTK+'s context menu code.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31393 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 15:27:15 +00:00
Robert Roebling
7c2f14eeb8 Commited scrollbar patch which sends lineup, linedown
events based on intercepting the mouse down events.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31392 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 15:23:16 +00:00
Vadim Zeitlin
748a468469 added code for hardware platform detection (__INTEL__, __POWERPC__, ... which were not set correctly before); added __IA64__
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31391 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 14:01:44 +00:00
Julian Smart
a6966de150 Doc update
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31390 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 14:00:18 +00:00
Julian Smart
b58deaecff Check for wxUSE_GLOBAL_MEMORY_OPERATORS before redefining new
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31389 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 13:40:04 +00:00
Julian Smart
aea22172ef Doc corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31388 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 13:33:19 +00:00
Robert Roebling
a77d6d2f9e Applied patch for rounded rectangle.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31387 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 12:58:52 +00:00
Vadim Zeitlin
dd3a2d9657 fixed wxUSE_3rdpartylib definitions for --without-3rdparty lib (patch 1103276)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31386 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 12:06:14 +00:00
Vadim Zeitlin
f1a9125b88 fixed export of hex values
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31385 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 00:32:11 +00:00
Vadim Zeitlin
20d8c31990 implemented Export(file)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31384 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-16 00:26:40 +00:00
Vadim Zeitlin
5fec5bb620 added mode parameter to wxFFileStream ctors taking wxFFile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31383 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 23:06:09 +00:00
Vadim Zeitlin
c67b4daf47 only define wxUSE_NATIVE_STATUSBAR for the ports which have it (MSW and Mac)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31382 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 21:07:04 +00:00
Vadim Zeitlin
1a765d9791 no need for vi modeline now that the extension is no longer .h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31381 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 21:05:41 +00:00
Vadim Zeitlin
881bfcd609 define wxUSE_GUI as 0 when --disable-gui is used
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31380 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 20:35:19 +00:00
Vadim Zeitlin
72bb50de24 removed unused wxUSE_NOGUI to avoid confusion with wxUSE_GUI
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31379 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 20:06:20 +00:00
Vadim Zeitlin
aa1f2541b6 removed all occurences of (obsolete) wxUSE_DYNAMIC_CLASSES
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31378 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 17:54:04 +00:00
Vadim Zeitlin
6d1ce8685f show "none" for gnomeprint in the summary when building wxBase instead of nothing at all
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31377 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 17:38:05 +00:00
Vadim Zeitlin
684eee12d8 mention wxUSE_DATEPICKCTRL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31376 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 17:12:51 +00:00
Vadim Zeitlin
e31e6ea75d moved styles logic to MSWGetStyle() (no real changes)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31375 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 17:10:34 +00:00
Vadim Zeitlin
32f1f66a3e wxMSW wxDatePickerCtrl header
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31374 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 17:08:07 +00:00
Vadim Zeitlin
2fddf89374 manage setup.h.in using update-setup.h too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31373 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 16:37:38 +00:00
Vadim Zeitlin
8d8f077eab manage wx/mac/setup0.h using build/update-setup.h too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31372 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 16:14:14 +00:00
Vadim Zeitlin
6d1fbf781e moved some Win32-specific settings from common file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31371 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 16:11:20 +00:00
Vadim Zeitlin
24ab5c03d9 added special comments used by build/update-setup.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31370 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 15:55:04 +00:00
Vadim Zeitlin
ff3a660baa added setup.h file containing the settings common to all ports and a script to update wx/*/setup.h using it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31369 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 15:54:00 +00:00
Vadim Zeitlin
ef78230168 removed obsolete wxUSE_CTL3D
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31368 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 14:45:20 +00:00
Vadim Zeitlin
23bec39ad3 typo in a link
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31367 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 01:37:40 +00:00
Vadim Zeitlin
feb72429e8 added API, docs and Win32 implementation of wxDatePickerCtrl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31366 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 01:31:10 +00:00
Vadim Zeitlin
f38d3607bb added missing default value for pos parameter of ctor/create; use wxID_ANY instead of -1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31365 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-15 01:18:29 +00:00
David Elliott
ee02254913 Split some of the recent code out to make it more reusable.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31364 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-14 19:24:27 +00:00
Robin Dunn
185f6036f8 Bug fix for [ 1059381 ] Mouse wheel does not work in listctrl with gtk2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31363 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-14 15:59:21 +00:00
David Elliott
9d208085a7 Forgot to commit this as part of the CocoaGetWxToBoundsTransform change.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31362 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-14 15:02:54 +00:00
David Elliott
db8512fe2b Forgot to initialize m_cocoaWxToBoundsTransform = nil;
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31361 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-14 14:27:49 +00:00
David Elliott
4db3c8ac63 Separate NSAffineTransform creation out of wxDC::CocoaApplyTransform into
static wxDC::CocoaGetWxToBoundsTransform.  Create the transform and store
it as a member variable in wxDC when focus is locked on the DC.
For wxClientDC and wxPaintDC call a new wxWindow::CocoaGetWxToBoundsTransform
which will eventually handle scrolling.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31360 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-14 14:22:03 +00:00
Włodzimierz Skiba
52f2ad0899 Common wxListCtrl control name.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31359 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-14 13:07:44 +00:00
Robin Dunn
51b83b3756 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31358 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-14 02:24:04 +00:00
Robin Dunn
e384095a6c Document the Show/Hide behaviour that wxSplitterWindow does to its children.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31357 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-14 01:58:50 +00:00
Robin Dunn
8f93b07538 ifdef out some experimental code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31356 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-14 01:49:17 +00:00
Robin Dunn
b256b4ef8e Ensure that the windows are shown when Initialize is called too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31355 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 23:43:19 +00:00
Robin Dunn
874d01fea7 Ensure that the windows are shown when splitting
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31354 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 23:34:55 +00:00
Robin Dunn
b76160efd2 Typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31353 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 21:38:15 +00:00
Robin Dunn
8d9be42a28 Patch from Prabhu Ramachandran to make introspection of lazily
evaluated objects not create the final object.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31352 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 21:18:17 +00:00
Robin Dunn
b81de788b4 untabified
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31351 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 21:15:52 +00:00
Robin Dunn
fec9bb97b3 a bit of code cleanupt
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31350 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 21:15:08 +00:00
Robin Dunn
acb0429704 Play nice with sizers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31349 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 21:14:15 +00:00
Robin Dunn
85f9dd19da define wxColour as being passed by reference so the typemap will work correctly.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31348 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 21:13:31 +00:00
Robin Dunn
4b60a5d70f HasTransparentBackground
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31347 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 21:12:44 +00:00
Robin Dunn
50ed1e35a1 Docstring typos
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31346 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 21:11:17 +00:00
Robin Dunn
a356336ecf wxNotebookNameStr
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31345 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 21:10:28 +00:00
Robin Dunn
b035e80b08 Virtualized HasTransparentBackground
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31344 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 21:09:05 +00:00
Robin Dunn
310660663f Clarified the description of event.Skip
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31343 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 20:54:45 +00:00
Robin Dunn
5568f3f768 Fixed line-endings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31342 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 20:53:55 +00:00
Robin Dunn
d31aa173fe notes about more changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31341 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 20:49:58 +00:00
Robin Dunn
3e905c526b added a missing \n the source
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31340 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 20:48:48 +00:00
Robin Dunn
e0b86f0787 untabified
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31339 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 20:47:03 +00:00
Robin Dunn
a91fbc8e34 Use sizers for layout
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31338 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 20:46:17 +00:00
Robin Dunn
644f2d8390 namespace fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31337 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 20:45:17 +00:00
Robin Dunn
fa289af6dc changed swig type table name
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31336 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 20:44:18 +00:00
Włodzimierz Skiba
e211b7b106 Common default notebook name.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31335 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 20:36:26 +00:00
Włodzimierz Skiba
630ad6c6b6 Common default notebook name.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31334 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 20:30:21 +00:00
Włodzimierz Skiba
2ad1ff540f Source cleaning, warning fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31333 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-13 19:57:24 +00:00
David Elliott
34c9978dac Add new methods to transform coordinates expressed in Cocoa's bounds rect to
and from those expressed in wxWidgets fashion.  Use these new methods to do
the translation for mouse events, child window position, and dirty rects.
Also improve DoMoveWindow to only dirty the old and new rects of the
control within its superview rather than the entire superview.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31332 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-12 20:51:35 +00:00
Julian Smart
7d098cfdd7 Don't return a broken accelerator object if the accelerator was not
recognised.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31331 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-12 16:06:13 +00:00
Włodzimierz Skiba
059a684d56 Shared build fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31330 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-12 16:02:39 +00:00
Włodzimierz Skiba
52069700e7 Warning fix and source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31329 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-12 16:01:33 +00:00
Włodzimierz Skiba
de516ffeea Warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31328 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-12 15:57:59 +00:00
Włodzimierz Skiba
419c6f4046 Don't overwrite 32bit value with 16bit one.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31327 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-12 15:56:42 +00:00
David Elliott
77d47192a8 Document that wxLogNull must be used with SetActiveTarget to supress logging.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31326 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-12 15:49:44 +00:00
David Elliott
0c28d8248e Implement using NSColor class methods for system colors.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31325 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-12 15:39:02 +00:00
David Elliott
c3c916e38f Improved whitespace in GetColour() so I can see what I'm doing.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31324 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-12 15:27:26 +00:00
Julian Smart
6914b57adc Made some functions virtual
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31323 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-12 13:13:08 +00:00
Vadim Zeitlin
e4d03677b9 reset m_hDWP to NULL after calling EndDeferWindowPos()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31322 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-12 12:58:59 +00:00
Jouk Jansen
13973396cb Committing in .
Updates for OpenVMS

 Modified Files:
 	wxWidgets/setup.h_vms wxWidgets/include/wx/db.h
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31321 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-12 07:47:40 +00:00
Robin Dunn
3dd9536f2e Fix for bug [ 1098263 ] wx.lib.ogl control points leak
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31320 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-12 03:48:06 +00:00
Włodzimierz Skiba
a6fb8636e5 Old API deprecated. Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31319 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-11 21:17:16 +00:00
Robin Dunn
53701799b4 Patch [ 1100272 ] wxFlexGridSizer works wrong when some rows/cols are hidden
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31318 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-11 19:01:22 +00:00
David Elliott
888c4e8f0d Renamed src/cocoa/settings.cpp to settings.mm.
Don't forget to rm .deps/corelib_settings.o.d in your build directory.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31317 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-11 18:57:38 +00:00
David Elliott
2a8db3cdda Implemented simplistic ConvertToImage()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31316 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-11 15:27:38 +00:00
David Elliott
b4918747ef Corrected m_depth assignment in CopyFromIcon
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31315 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-11 15:07:02 +00:00
David Elliott
68a8c89baa Implement CopyFromIcon
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31314 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-11 14:55:24 +00:00
David Elliott
67d2dac82e Replaced obviously incorrect code for SetFocus and DoFindFocus.
Effectively reverts revision 1.53.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31313 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-11 03:21:31 +00:00
David Elliott
f298b203b5 Renamed the wxWindowCocoaScroller class to wxWindowCocoaScrollView because
it was confusing.  Scroller is the Cocoa term for a scroll bar.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31312 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-11 01:55:42 +00:00
Vadim Zeitlin
25b0e7c897 factored out wxGetFullModuleName(HMODULE) from wxGetFullModuleName()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31311 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-10 19:43:55 +00:00
David Elliott
d8fdd58fa3 Add constructor and Set taking NSColor.
Change eqauality operator to check if the NSColor objects are the same
instance or if all of the color components (m_red/green/blue) are identical.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31310 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-10 18:37:36 +00:00
George Tasker
1837499892 Removed text saying that the wxODBC classes were not able to be used in Unicode builds. As of 2.5.3, Unicode and the ODBC classes work correctly together
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31309 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-10 18:31:54 +00:00
George Tasker
49742d4ecc Added a small bit more information about Unicode builds
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31308 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-10 18:30:17 +00:00
Włodzimierz Skiba
4179da8a81 Bug 1099143 and more occurences of the same set vs. get mistakes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31307 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-10 17:25:58 +00:00
Włodzimierz Skiba
050f0844eb Fixed references to 'wxdbindexdef'.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31306 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-10 17:24:05 +00:00
Włodzimierz Skiba
eecb33b018 Old API deprecated. Use new and remove old usage where necessary.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31305 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-10 17:21:16 +00:00
Stefan Csomor
e896726a47 reverted bitmap depth increases
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31304 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-10 08:52:47 +00:00
David Elliott
936170f407 Corrected some assertions (m_region.m_refData vs. m_refData)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31303 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-10 03:07:43 +00:00
David Elliott
bf428459fc Added wxMemoryDC::Clear()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31302 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-10 01:52:08 +00:00
Stefan Csomor
456fd7b661 optimizing gauge cpu usage
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31301 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-09 09:55:27 +00:00
Stefan Csomor
2b1fe32e2e no message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31300 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-09 09:52:34 +00:00
Stefan Csomor
0ff2493d74 added hack for making scrollbars really disappear under 10.2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31299 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-09 06:27:42 +00:00
Stefan Csomor
eda3f2b454 draw the focus rect ourselves
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31298 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-09 05:58:58 +00:00
Stefan Csomor
ae190e6447 fixed border calculation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31297 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-09 05:50:36 +00:00
Vadim Zeitlin
c50a4038e3 implemented wxIsDebuggerRunning() for Win32
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31296 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-08 17:44:46 +00:00
Robert Roebling
44c5573d2e Compile fixes for GTK 1.2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31295 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-08 15:41:04 +00:00
Stefan Neis
207645afd7 Removed -lcma (added in 1.813), since one can't apparently mix old
threads (-lcma, user land only) and new threads (-lpthread), see
        http://h21007.www2.hp.com/dspp/tech/tech_TechSoftwareDetailPage_IDX/1,1703,1741,00.html#faq-mix-threads
        (reported in patch #1096688 by M.J.Wetherell).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31294 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-08 13:56:35 +00:00
Robert Roebling
02a6e35839 Applied wxNO_BORDER patch for text control and combo box.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31293 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-08 10:35:15 +00:00
David Elliott
90970d696b Contains changes for autoconf_inc.m4,1.77,1.78 which was the big cleanup.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31292 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-08 03:29:27 +00:00
David Elliott
5b674b9d89 Regenerated configure. Contains changes for:
configure.in,1.909,1.910
configure.in,1.908,1.909
configure.in,1.906,1.907

Changes for configure.in,1.907,1.908 were already present as Vadim somehow
got that change in this file while leaving out 1.906,1.907 (hand edit?).

Note: I locally reverted autoconf_inc.m4,1.77,1.78 before doing this generation
so I can illustrate something.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31291 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-08 03:19:40 +00:00
Vadim Zeitlin
6b73af793f made FindWindow() member functions const (this makes it possible to use XRCCTRL() in const methods)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31290 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 23:51:04 +00:00
Robert Roebling
e3d64157d7 Added way to specify in generic tree control
if the drop effect (a line) should be drawn
   above or below the item.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31289 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 22:31:42 +00:00
Robert Roebling
daa7ae0c30 Corrected drag effect for tree control.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31288 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 22:09:08 +00:00
Václav Slavík
c575e45a24 fixed condition for using #pragmas
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31287 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 21:33:15 +00:00
Václav Slavík
0c9ff74f05 fixed condition for using #pragmas
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31286 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 21:27:20 +00:00
Vadim Zeitlin
1c16e6df8e harmless unused param warning fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31285 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 20:11:24 +00:00
Vadim Zeitlin
8d075f8d86 corrected bg colour inheritance once again: only immediate transparent children should inherit non inheritable parent bg colour
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31284 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 20:06:28 +00:00
Włodzimierz Skiba
2d67974d24 Old API clearly deprecated.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31283 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 20:03:22 +00:00
Stefan Csomor
fa9666fbe6 OS X savvy implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31282 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 19:48:48 +00:00
Robert Roebling
cf9d4c6766 Added wxFopen to the MSLU code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31281 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 18:48:30 +00:00
Robert Roebling
c34db1bee3 Removed useless defines for WinCE which is
always Unicode and never MSLU.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31280 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 18:47:29 +00:00
Włodzimierz Skiba
49abcb2f46 Remove some controls from limited screen area of Smartphone.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31279 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 18:30:36 +00:00
Robin Dunn
4df123bce5 Fix for Bug 1097510, reset m_selectionOld when the value changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31278 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 18:29:55 +00:00
Włodzimierz Skiba
8175d02570 MS Smartphone has no input other than phone buttons which limits pointing on screen. Perhaps in the future.....
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31277 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 18:27:43 +00:00
Włodzimierz Skiba
d910fe28f4 Include order fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31276 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 18:24:54 +00:00
Vadim Zeitlin
de371316a6 invalidate bg brush in the beginning of OnSize() to avoid using outdated brush for child pages background painting
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31275 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 17:33:33 +00:00
Vadim Zeitlin
52c3e064c7 don't ignore the background colour set for the dialog, even although it is a standard control
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31274 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 17:10:30 +00:00
Vadim Zeitlin
accbb1e758 use HasTransparentBackground() to correctly draw the background of static text/box on a window with non-inheritable (== own) background set
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31273 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 16:59:48 +00:00
Vadim Zeitlin
7c7a653bec moved HasTransparentBackground() from wxUniv to common wxWindow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31272 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 16:54:09 +00:00
Vadim Zeitlin
c1f3a14924 no changes; just removed some obsolete #ifdefs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31271 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 15:43:02 +00:00
Vadim Zeitlin
c581abbcad extracted background painting in a separate function so that it could be called from derived classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31270 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 14:38:07 +00:00
Vadim Zeitlin
fbeb9303dd FreeBSD compilation fixes: rename re_comp and re_exec
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31269 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-07 12:36:03 +00:00
Robert Roebling
fa78de8249 Added test to fontencoding -> codepage conversion
which should test if the codepage is actually
    installed on that version of Windows. Will do
    more testing.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31268 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-06 19:15:46 +00:00
Kevin Hock
5b5035ce5b whilst -> while
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31267 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-06 15:51:05 +00:00
Robert Roebling
9d6a9fdd13 Applied patched for combo box SELECTED events (no
long get lots of surplus events)
  Applied patch for menu hihglight colour detection.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31266 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-06 12:49:20 +00:00
Włodzimierz Skiba
b4efc9b931 Old API clearly deprecated. Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31265 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-06 12:41:27 +00:00
Robert Roebling
39caed1f6d Blind attempt make buttons centered in the generic
msg dialog if it's a yes/no dialog.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31264 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-06 12:35:47 +00:00
Robert Roebling
efba61bac0 Second try to commit compilo fix for sizer.cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31263 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-06 12:34:23 +00:00
Włodzimierz Skiba
923f4e79a2 Smartphone fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31262 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-06 12:31:46 +00:00
Włodzimierz Skiba
11d1f1599c wxUSE_LOG (Smartphone) fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31261 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-06 12:30:08 +00:00
Włodzimierz Skiba
9a2256da18 Use stock labels for Smartphone.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31260 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-06 12:22:06 +00:00
Włodzimierz Skiba
06442f7099 Lack of accelerators on Smartphones.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31259 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-06 12:20:15 +00:00
Włodzimierz Skiba
61f824b819 eVC3 warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31258 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-06 12:17:37 +00:00
Włodzimierz Skiba
0f769aab09 Build fix for NOPCH.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31257 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-06 12:04:51 +00:00
Robert Roebling
4b412d2382 wxEncodingConverter should and can be compiled
without wxFontMapper and its corresponding wxUSE_FONTMAP


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31256 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-06 11:53:53 +00:00
Robert Roebling
5a969262e1 #
Compile without fontmapper.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31255 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-06 11:52:05 +00:00
Vadim Zeitlin
3b72cd917f don't include wx/msw/wrapwin.h in public header; corrected the m_hDWP type instead
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31254 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-05 22:46:32 +00:00
Robin Dunn
d77016e8aa GetSystemColour --> GetColour
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31253 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-05 21:55:39 +00:00
Robin Dunn
a8f7294579 Add wxRTTI and OOR info for activex classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31252 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-05 21:54:32 +00:00
Robin Dunn
4a280b251a cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31251 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-05 21:52:41 +00:00
Robin Dunn
3ba9317588 More methods for wxStdDialogButtonSizer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31250 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-05 21:51:50 +00:00
Robin Dunn
cfa8c7d6cc Set the window id for key events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31249 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-05 21:33:11 +00:00
Włodzimierz Skiba
1729813a8d Old API clearly deprecated.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31248 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-05 19:25:02 +00:00
Włodzimierz Skiba
e32d4b8f07 wxMSWUniv wxWindowMSW vs. wxWindow fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31247 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-05 18:39:48 +00:00
Włodzimierz Skiba
69c695466d Removed all duplicated and complicated #ifdefs for enabling Skip and Abort in progress dialog (Smartphone fixes).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31246 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-05 18:37:42 +00:00
Włodzimierz Skiba
fa9a4f7f81 Error fix after recent changes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31245 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-05 18:32:29 +00:00
Włodzimierz Skiba
525665dfe7 Warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31244 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-05 18:30:10 +00:00
Włodzimierz Skiba
5c64f8d44f MS Smartphone fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31243 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-05 10:47:50 +00:00
Mattia Barbon
6c783b03a0 Check for end of buffer in wxMemoryInputStream::Peek.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31242 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-05 07:36:14 +00:00
Mattia Barbon
da6e77b8d6 Correct malloc()/delete[] mismatch.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31241 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-05 07:29:24 +00:00
Mattia Barbon
fcbeab2fd8 Additional sanity check.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31240 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-05 07:28:42 +00:00
Mattia Barbon
ca7766b4e5 Compilation fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31239 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-05 07:28:04 +00:00
Mattia Barbon
ce195ee632 Allow building with wxUSE_PROTOCOL_FTP/HTTP == 0.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31238 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-05 07:26:40 +00:00
Robin Dunn
d115ca5ef3 Continued tests of drawing a widget to a DC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31237 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-05 00:32:40 +00:00
Robert Roebling
b169661f86 Commit wxFontEncoding -> MS codepage conversion code
based on MSDN's docs instead of the round trip through
   character sets.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31236 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-04 22:22:23 +00:00
Włodzimierz Skiba
46697f31a5 Old API depreciated. Use of new API. Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31235 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-04 19:43:04 +00:00
Włodzimierz Skiba
ec157c8f95 Old API depreciated. Use of new API. Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31234 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-04 19:35:52 +00:00
Włodzimierz Skiba
4aa7ecf1fa Initial wxSystemSettings::GetColour() for PalmOS.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31233 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-04 19:19:39 +00:00
Vadim Zeitlin
220f77b0d2 restored using DeferWindowPos() for moving all windows at once (this does help with flicker somewhat) but now call EndDeferWindowPos() from WM_WINDOWPOSCHANGED handler, not WM_SIZE one which is never generated for the dialogs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31232 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-04 18:57:41 +00:00
Mattia Barbon
f5db5af932 Untabify.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31231 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-04 17:41:47 +00:00
Mattia Barbon
3c7896fd3f Change FIXME in TODO and clarify its meaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31230 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-04 17:40:43 +00:00
Mattia Barbon
27d1f929b5 Deprecation warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31229 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-04 17:35:35 +00:00
Vadim Zeitlin
1480c61ae8 fixed parameters to Blit()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31228 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-04 10:56:02 +00:00
Stefan Csomor
408aef5ec1 as we cannot handle zero commands properly, we have to warn
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31227 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-04 07:03:09 +00:00
Stefan Csomor
b51daa4f6c using lang param, to have a CFLanguage be consistent with C-Locale
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31226 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-04 06:45:27 +00:00
Stefan Csomor
1996c23f8c falling back to wxImage handler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31225 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-04 06:22:37 +00:00
Stefan Csomor
4b60ad0d8c 24 bit depth
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31224 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-04 06:20:54 +00:00
Robin Dunn
136518e5c0 Factor out the OnSize code so it can also be used in other places
where the header window needs to be adjusted.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31223 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-03 22:10:10 +00:00
Vadim Zeitlin
f78e4942ec added a test to check how exception handling works with Win32 SEH; corrected copyright
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31222 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-03 15:47:57 +00:00
Włodzimierz Skiba
3786ce5ad8 GCC warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31221 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-03 14:20:53 +00:00
Vadim Zeitlin
eb48778d4d fix to the last fix (see comments in patch 1093811)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31220 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-03 13:51:06 +00:00
Włodzimierz Skiba
6b5c476168 Pasting typo fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31219 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-03 07:22:48 +00:00
Włodzimierz Skiba
7d81eb8cee Full support to the native progress dialog.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31218 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-03 07:08:17 +00:00
Włodzimierz Skiba
974c2a5904 Incomplete (PalmOS) setup compatibility.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31217 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-03 07:03:31 +00:00
Vadim Zeitlin
26378b412c don't crash in wxStrftime() if conversion of strftime() result to Unicode fails (modified patch 1094100)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31216 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-02 23:54:40 +00:00
Vadim Zeitlin
bea561cec0 fixed crash when setting locale failed (replaces patch 1093811)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31215 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-02 23:44:36 +00:00
Vadim Zeitlin
9a84ce0d31 fixed IMPLEMENT_DYNAMIC_CLASS2 macro
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31214 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-02 22:52:22 +00:00
Vadim Zeitlin
e052a316bf added TOOL_RCLICKED test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31213 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-02 22:48:24 +00:00
Vadim Zeitlin
2334fef6ea pass correct tool id (and not always -1) to EVT_TOOL_RCLICKED() handler
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31212 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-02 22:46:52 +00:00
Robert Roebling
b181a50500 Allow to set the various buttons explicitly (and
not through IDs) in the wxStdButtonSizer.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31211 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-01 17:26:30 +00:00
Robert Roebling
62ade18051 Second attempt to fix a rare crash (bad mem access
after deletion of a control)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31210 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-01 13:36:29 +00:00
Robert Roebling
f4430b1889 German translation mostly uptodate now.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31209 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-01-01 11:39:12 +00:00
Robin Dunn
62d32a5fb1 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31208 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-31 23:16:03 +00:00
Robin Dunn
e8b4fd4bc1 Send EVT_TEXT from wxTextCtrl::SetValue to conform with the wx standard
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31207 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-31 23:01:01 +00:00
Robin Dunn
e505d15e07 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31206 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-31 22:58:48 +00:00
Robin Dunn
782ece57f0 updated note about the patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31205 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-31 22:56:39 +00:00
Robin Dunn
9283228f86 Added wxStdDialogButtonSizer, which is a a special sizer that knows
how to order and position standard buttons in order to conform to the
current platform's standards.  You simply need to add each `wx.Button`
to the sizer, and be sure to create the buttons using the standard
ID's.  Then call `Finalize` and the sizer will take care of the rest.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31204 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-31 22:55:57 +00:00
Robin Dunn
7bde93ff27 docstring fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31203 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-31 22:54:40 +00:00
Robin Dunn
8919bc42e4 Added EVT_COMMAND_TREE_ITEM_MENU
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31202 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-31 22:54:16 +00:00
Robin Dunn
191dea6de7 Added back wx.PD_SMOOTH
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31201 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-31 22:53:50 +00:00
Robin Dunn
e4b64104c8 fix compilo for when there are no precompiled headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31200 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-31 22:27:51 +00:00
Robin Dunn
e778b8f059 Correct some redraw glitches in the header when resizing, and also
double buffer the header to eliminate the rest of the flicker.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31199 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-31 20:21:44 +00:00
Robert Roebling
acf2ac3757 Applied modified form of the StdButtonSize patch.
Tested on GTK2, MSW and Mac.
  Adapted various generic dialogs to stretch the
    button sizer so that the buttons don't end
    up centered but right aligned.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31198 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-31 18:57:25 +00:00
Stefan Csomor
c3aee5c154 SetFocus fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31197 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-31 13:29:35 +00:00
Stefan Csomor
90b78a567f setting focus explicitely when using showmodal
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31196 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-31 13:19:18 +00:00
Robert Roebling
e10e94693f Fixes a rare crash.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31195 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-31 10:22:32 +00:00
Włodzimierz Skiba
555f645a40 wxDialog::Show is virtual as elsewhere. Native PalmOS progress dialog.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31194 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-31 07:08:11 +00:00
Włodzimierz Skiba
ecda94753a wxPD_CAN_SKIP for skipping parts of progress and reintroduced wxPD_SMOOTH after removal of modal dialog flag.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31193 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-30 15:07:28 +00:00
Robin Dunn
e7b97da356 Fix position of the movie when the immediate parent is not the
top-level parent and the offset from the top-level parent origin needs
to be accounted for.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31192 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-29 22:48:50 +00:00
Włodzimierz Skiba
d8d267726a Warning fixes, source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31191 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-29 21:19:39 +00:00
Włodzimierz Skiba
eb3e6de33b Fixes to FIXME about stock IDs usage.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31190 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-29 21:15:57 +00:00
Stefan Csomor
3feeb1e1e0 added RequestUserAttention
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31189 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-29 10:10:14 +00:00
Włodzimierz Skiba
23a59c2cbe Empty container and design description for native PalmOS wxPrefConfig. Remove MSW configs from PalmOS.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31188 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-29 09:48:43 +00:00
Stefan Csomor
6d63e2fc16 moving cursor update AFTER the mouse event handling, otherwise things like eg drawing a splitter from right to left leads to wrong cursor, because - at the time of the cursos update - the splitter is not yet move below the mouse pos.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31187 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-29 07:12:32 +00:00
David Elliott
4170c465f4 Added wxBitmap::UseAlpha() stub.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31186 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-29 04:00:28 +00:00
David Elliott
6bbbf0ad43 Some platforms that use socklen_t don't use it for the fifth argument to
getsockopt.  Do a separate test and define SOCKOPTLEN_T appropriately.

NOTE: Forgot to commit this earlier.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31185 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-29 03:55:10 +00:00
George Tasker
38ae3a1019 Added more support for using SQL_WVARCHAR and SQL_WCHAR data types
Blind postgres fixes for calls to TableExists() and TablePrivileges() inside the Open() function to not pass the user name when postgres is expecting the schema.  We REALLY need to add schema support...wish I had the time


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31184 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 22:30:27 +00:00
George Tasker
362a97bf56 Added more support for using SQL_WVARCHAR and SQL_WCHAR data types
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31183 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 22:28:42 +00:00
George Tasker
fcf3321f44 Added SQL_WVARCHAR and SQL_WCHAR to the data types that the sample checks to see if they are supported by the datasource when the DATATYPES button is pressed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31182 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 22:27:45 +00:00
David Elliott
12ef813cea Removed old bakefile cruft by doing a bakefile_gen -f autoconf -c followed
by a bakefile_gen -f autoconf.  I then hand edited the file to add
back in the dnl ### begin block 00_header ### line, the
BAKEFILE_AUTOCONF_INC_M4_VERSION="0.1.4" line (confusingly only generated by
a CVS copy newer than 0.1.4) and remove the dnl Conditions: line.

This file's size is now less than half of what it was!


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31181 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 22:06:17 +00:00
George Tasker
549c8cc2fe More parameter variable names fixed to make them more readable by replacing abbreviations with the full word
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31180 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 21:32:38 +00:00
Robin Dunn
669e06d77e Docs for [GS]etDefaultPyEncoding
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31179 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 21:16:50 +00:00
George Tasker
b803274045 Non-standard abbreviations of words in function/variable names changed to standard abbreviations or the entire word (e.g. colNo is now colNum)
If SetColDef is called with an out of range index, the function in debug will throw an assert msg, and call wxLogDebug(), and then return without doing anything.  The function now returns a boolean to indicate if the column definition was successfully created or not


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31178 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 21:10:12 +00:00
George Tasker
b8126f938c Compilation fix with last checkin....ooops
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31177 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 21:03:13 +00:00
George Tasker
998abc1506 Documentation updated to reflect Unicode support
Updated to show current function names


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31176 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 20:59:14 +00:00
George Tasker
7086c32ab8 Fixed some potential buffer overruns
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31175 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 20:01:33 +00:00
George Tasker
5f72522e58 Implemented a fix to allow Unicode builds to work with MSACCESS. This fix should be tested against other databases also to ensure that the determination of the type to be used for character strings correctly finds that right type in unicode mode for other DBs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31174 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 19:22:37 +00:00
George Tasker
2197177140 Lookup result windows now force the first column size to be no great than 20 characters to avoid the code that calls the DB to find the length of the longest string in column, as the code used to get that value is not necessarily portable across all DB platforms
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31173 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 18:35:08 +00:00
George Tasker
ee377e7f8b Changed error messages so that if a DB error occurs in the ListDb code, the native DB error message is displayed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31172 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 18:32:40 +00:00
George Tasker
aa324ea98d Changed the hardcoded table name to be in all caps for those DBs that only allow table names to be in caps
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31171 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 18:30:36 +00:00
David Elliott
d3c073a285 Rebaked (Bakefile 0.1.4). Corresponds to tests.bkl,1.30,1.31
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31170 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 18:18:04 +00:00
David Elliott
9fc97a71c5 Rebaked (Bakefile 0.1.4). Corresponds to dialogs.bkl,1.7,1.8
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31169 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 18:15:11 +00:00
David Elliott
3cab022fe5 Rebaked (Bakefile 0.1.4)
* Remove installation of afm and gsafm
* Remove configure during distclean
* Copy *.mpg files during SAMPLES_DIST


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31168 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 17:51:56 +00:00
Robert Roebling
30f5e34f64 Added TREE_ITEM_MENU event to MSW control.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31167 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 16:00:35 +00:00
Robert Roebling
6511d3078e Also check for range on Mac's spin controls.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31166 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 15:59:22 +00:00
Robert Roebling
ad8ddd1391 Check for range on wxSpinCtrl and wxSpinButton's GetValue()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31165 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 15:57:43 +00:00
Robert Roebling
c436b31065 Documented the special meaning of wxID_EXIT and wxID_ABOUT
under MacOS X.
 Documented the existence of the GNOME printing code.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31164 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 14:13:06 +00:00
George Tasker
af24a079f5 Added wxODBC changes to the log
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31163 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 13:34:21 +00:00
Włodzimierz Skiba
13cf383252 Outdated informations refreshed.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31162 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 12:14:27 +00:00
Stefan Csomor
e353795ec5 handling wxSTAY_ON_TOP by changing the window group instead of window class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31161 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 10:18:48 +00:00
Stefan Csomor
d5301e336f getting rid of redefines
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31160 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 10:16:51 +00:00
David Elliott
ddc1a35fc9 Some platforms that use socklen_t don't use it for the fifth argument to
getsockopt.  Do a separate test and define SOCKOPTLEN_T appropriately.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31159 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 03:17:50 +00:00
David Elliott
c81dc3db6b Retain/release the NSButtonCell during user action so that if the button
is deleted by the user action the program does not crash sending
the setHighlighted:NO message to it.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31158 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 01:40:03 +00:00
George Tasker
215a0070c1 Firebird DB support added. Basic testing is done, and appears to work fully. Need real users to test the additions please
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31157 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 00:33:09 +00:00
George Tasker
856e0fa454 Display message typo corrected
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31156 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-28 00:31:41 +00:00
Włodzimierz Skiba
f866562999 Adjust documentation to implementations and alphabetical order.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31155 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-27 20:48:31 +00:00
Włodzimierz Skiba
2b7295c904 GetFreeSpace is here since 1993 and returns crazy values. Let's have win64/win32 cases only.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31154 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-27 20:17:44 +00:00
Włodzimierz Skiba
51496782d1 wxLongLong to wxString operators.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31153 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-27 18:57:21 +00:00
Włodzimierz Skiba
9d8aca4832 Take best fitting type for available memory measurement.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31152 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-27 18:47:26 +00:00
Václav Slavík
49a1436640 blind fix for GCC compilation when #pragmas are honored
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31151 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-27 08:52:17 +00:00
Włodzimierz Skiba
5445a26cc4 MSW and source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31150 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-27 08:36:21 +00:00
Włodzimierz Skiba
d1df239915 Some PalmOS utils implementations.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31149 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-27 07:30:29 +00:00
Robert Roebling
f7c6f947cf Added TREE_ITEM_MENU event that gets sent if the
user hits the "Menu" key on the newer keyboards.
   So far generic control only.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31148 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-26 17:37:59 +00:00
Stefan Csomor
e01c2b43c4 unicode fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31147 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-26 09:16:29 +00:00
Roman Rolinsky
759c619e28 checking for dom.encoding == None
temporary fix for wxPyAssertion from XRC library


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31146 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-26 02:35:35 +00:00
Roman Rolinsky
f19b8f1124 wxIcon correctly handled now (it has no "icon" tag)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31145 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-26 02:32:23 +00:00
Robert Roebling
af3961b357 Deselect a child item on Collapse. Otherwise
we end up with 2 selected item even in
   single selection mode. This is a follow-up
   to the no-dangling pointer patch and also
   reflects MSW behaviour.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31144 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-25 18:27:59 +00:00
Robert Roebling
054004b96d Documented findings about how to use mo files
with MacOS X's bundles.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31143 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-25 15:04:30 +00:00
Vadim Zeitlin
ff1ce99740 added SetCmdLine(int, char **) overload even when building a Unicode app
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31142 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-25 01:58:36 +00:00
Julian Smart
5ab2950dc3 Doc corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31141 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-24 12:29:43 +00:00
Václav Slavík
2c15c98b33 security fix (patch 1089659)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31140 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-24 11:48:14 +00:00
Jouk Jansen
914ca1d826 Committing in .
correcting an obvious typo in the GTK1.x part

 Modified Files:
 	wxWidgets/src/gtk/choice.cpp
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31139 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-24 09:02:34 +00:00
Włodzimierz Skiba
65fd1c21b5 wxPalmOS port started its development so let's list it in the changes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31138 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-24 07:52:37 +00:00
Włodzimierz Skiba
12839f76d8 First nonminimal wxPalmOS functionality: enumeration of available volumes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31137 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-24 07:44:44 +00:00
Włodzimierz Skiba
f932daffcb wxPalmOS was introduced long after 2.4.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31136 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-24 07:41:53 +00:00
Robin Dunn
d6660ffabc Make the wx.MediaCtrl demo more functional, and add a sample movie.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31135 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-24 00:43:24 +00:00
Robin Dunn
36ed4f517f reSWIGged after 1.3.24 update
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31134 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-23 21:46:51 +00:00
Robin Dunn
3004cfd8ca reSWIGged after 1.3.24 update
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31133 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-23 21:39:36 +00:00
Robin Dunn
093d3ff1f7 reSWIGged after 1.3.24 update
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31132 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-23 21:34:11 +00:00
Robin Dunn
54e72b1a7f Typo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31131 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-23 21:29:41 +00:00
Robin Dunn
3c1705d911 Updated to SWIG 1.3.24 (plus a patch that corrects a bug and adds back
some things that were changed/removed from my patch I submitted to
them.)

Since it is now possible easily and simply share the SWIG type tables
across modules I reverted to always using the stock SWIG runtime
instead of my slightly hacked up version of it exported via the
wxPython C API.

The %name directive is now deprecated so replaced most uses of it with
a custom %Rename macro that uses %rename internally.  These will
evetually need to be replaced with a DocDecl macro when docstrings are
added.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31130 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-23 20:53:38 +00:00
Robin Dunn
dd06808a42 Allow Python 2.4
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31129 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-23 20:52:35 +00:00
Robin Dunn
1b8c7ba607 Updated to SWIG 1.3.24 (plus a patch that corrects a bug and adds back
some things that were changed/removed from my patch I submitted to
them.)

Since it is now possible easily and simply share the SWIG type tables
across modules I reverted to always using the stock SWIG runtime
instead of my slightly hacked up version of it exported via the
wxPython C API.

The %name directive is now deprecated so replaced most uses of it with
a custom %Rename macro that uses %rename internally.  These will
evetually need to be replaced with a DocDecl macro when docstrings are
added.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31128 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-23 20:44:09 +00:00
Włodzimierz Skiba
47261ba05f Deprecated methosd markup (documented).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31127 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-23 20:33:04 +00:00
Robin Dunn
de6ca7ff44 Changed GetSystemColour to GetColour
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31126 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-23 20:19:17 +00:00
Stefan Csomor
85fb220621 corrected setting the locale of the c-lib for mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31125 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-23 13:42:14 +00:00
Vadim Zeitlin
c95393460e simplified sizers, removed OnSize() which is not needed any more
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31124 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-22 23:54:03 +00:00
Vadim Zeitlin
bcc4aa97ff call SetBkColor() when using non default background
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31123 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-22 23:29:48 +00:00
Vadim Zeitlin
48d597ed96 last fix resulted in wrongly inheriting bg colour from the parent with m_inheritBgCol == false, fixed the fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31122 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-22 23:27:49 +00:00
Robin Dunn
63ec176495 Need to reset count when all items are deleted
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31121 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-22 22:02:29 +00:00
Vadim Zeitlin
b55ff31e20 fixes fo inheriting colours set with SetOwnBackround()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31120 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-22 21:09:01 +00:00
Vadim Zeitlin
dd12ce22d8 fixed background drawing for opaque controls
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31119 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-22 21:07:33 +00:00
Stefan Neis
026d8152a6 Applied patch [ 1088717 ] (_LARGEFILE_SOURCE fix for HP-UX).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31118 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-22 19:47:31 +00:00
Dimitri Schoolwerth
cbc9c06fe5 added FileConfig test case exposing a problem with deleting the last group
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31117 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-22 11:12:05 +00:00
Václav Slavík
3ec372c84f compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31116 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-22 09:21:42 +00:00
Włodzimierz Skiba
b6ae016a1f Final MSW/PalmOS split. Remove dump copies of MSW specific code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31115 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-22 07:35:19 +00:00
Włodzimierz Skiba
82ef81ed9c Final MSW/PalmOS split. Remove dump copies of MSW specific code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31114 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-22 07:22:25 +00:00
Ron Lee
7874328271 Fix for wxGTK compilation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31113 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-22 07:19:37 +00:00
Ron Lee
392857fb78 Fix for wxGTK compilation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31112 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-22 07:18:16 +00:00
Ron Lee
9adf429992 Fix wxGTK compilation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31111 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-22 07:07:24 +00:00
Ron Lee
eb57b07a27 Not quite as flexible, but lighter and sufficient.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31110 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-22 06:27:25 +00:00
Stefan Csomor
66ffb23b39 making sure we don't say we are visible while in destruction
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31109 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-22 05:51:02 +00:00
Ron Lee
3838e2d36e Only filter out duplicate -libraries. Let other constructs
fend for themselves.  This will avoid hiding problems in
configure.in and let the mac users have -framework et al.
pass through as they should.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31108 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-22 05:38:18 +00:00
Vadim Zeitlin
57be9aac75 reverted use of DeferWindowPos() instead of MoveWindow()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31107 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-22 01:05:13 +00:00
Włodzimierz Skiba
4430ec36d1 wxString and wxChar* access for file functions. Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31106 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-21 18:57:20 +00:00
Włodzimierz Skiba
a6f4dbbd86 wxString and wxChar* access for file functions. Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31105 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-21 17:44:50 +00:00
Włodzimierz Skiba
f50a1c3d66 wxString and wxChar* access for file functions. Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31104 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-21 17:35:42 +00:00
Włodzimierz Skiba
7e49601492 wxURI is enough for the basic url operations.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31103 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-21 17:20:47 +00:00
Włodzimierz Skiba
1296186133 Borland fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31102 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-21 16:41:55 +00:00
Włodzimierz Skiba
e2bcbdfbc7 Metric conversion constants not doubled in each port code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31101 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-21 16:25:59 +00:00
Stefan Csomor
885fb02fa1 moving Carbon Event Class out of USE_GUI
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31100 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-21 13:50:28 +00:00
Robin Dunn
689b42ee55 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31099 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-20 23:06:52 +00:00
Robin Dunn
1ae8f604a2 Added wxEXEC_NODISABLE flag
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31098 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-20 22:59:31 +00:00
Robin Dunn
11ec0dcea2 A little cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31097 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-20 22:52:03 +00:00
Robin Dunn
6bda7508c6 Added a note to self to look at adding ProvidesBackground in the future
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31096 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-20 22:51:09 +00:00
Robin Dunn
94fd5e4dc1 Allow the OOR reference to be saved without doing an INCREF. This
solves the circular reference problem with wx.Timer.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31095 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-20 22:50:29 +00:00
Robin Dunn
56a52e9094 Typemaps for wxFileOffset
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31094 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-20 22:46:20 +00:00
Robin Dunn
9c7e3e86fb Added wxEXEC_NODISABLE flag
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31093 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-20 22:44:52 +00:00
Robin Dunn
e3f1b5b535 new wxMediaCtrl API
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31092 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-20 22:43:11 +00:00
Włodzimierz Skiba
bbd030cd5c Warning fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31091 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-20 20:34:41 +00:00
Włodzimierz Skiba
2bacc6ab95 Further decoration.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31090 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-20 20:27:22 +00:00
Włodzimierz Skiba
12f6571f44 Fixed typo.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31089 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-20 20:24:34 +00:00
Włodzimierz Skiba
8e1bf7046e wxPalmOS mentioned.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31088 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-20 20:17:15 +00:00
Włodzimierz Skiba
4055ed8281 Use __WXPALMOS__ for PalmOS port which fits __WX$(TOOLKIT)__ of bakefiles. Do not depend on MSW macros in PalmOS port. Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31087 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-20 12:44:22 +00:00
Julian Smart
6305fabeeb VC++ 5 compatibility
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31086 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-20 09:24:55 +00:00
Vadim Zeitlin
028e7716ef wxGetInstance must be defined as extern C (patch 1085837)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31085 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-20 01:31:48 +00:00
Vadim Zeitlin
d35dce3a2e end label editing if the control loses focus (slightly modified patch 1084592)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31084 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-20 01:23:52 +00:00
Vadim Zeitlin
ca1ecff429 fixed dragging scrollbar in wxUniv: use wxMouseEvent::Dragging(), not Moving(), for tests (patch 1075176; bug 1053645)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31083 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-20 01:08:13 +00:00
Vadim Zeitlin
4d17215498 added flags parameter to wxExecute(wxArrayString *) overloads
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31082 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-20 00:03:35 +00:00
Vadim Zeitlin
f38f689990 added wxEXEC_NODISABLE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31081 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 23:59:28 +00:00
Vadim Zeitlin
de9815cb4f added a note about old/new selection inconcistency in events generated by wxNotebook::SetSelection()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31080 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 23:29:46 +00:00
Vadim Zeitlin
d778cb65f7 added test for Unicode/ANSI
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31079 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 23:12:05 +00:00
Vadim Zeitlin
d70471fe72 corrected wxMAKE_VERSION_STRING and wxMAKE_VERSION_DOT_STRING definitions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31078 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 23:08:43 +00:00
Vadim Zeitlin
d67fee71b8 IRIX compilation fix: don't redeclare usleep() if HAVE_USLEEP is defined
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31077 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 22:45:08 +00:00
Vadim Zeitlin
9b6ae4506e use DeferWindowPos() instead of MoveWindow() if possible; always use WS_CLIPCHILDREN; never use WS_CLIPSIBLINGS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31076 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 22:08:47 +00:00
Vadim Zeitlin
733f45ceb6 Win16 version is not used any longer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31075 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 21:30:00 +00:00
Vadim Zeitlin
cf8ff92f83 moved wxWindow::m_hMenu to wxFrame, it is not needed in the base class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31074 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 20:56:38 +00:00
Vadim Zeitlin
4cc4e7b6cc moved ProvidesBackground() from wxUniv to base wxWindow class; use it to prevent inheriting background brush beyond the windows which normally have their own background
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31073 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 20:51:06 +00:00
Vadim Zeitlin
24cb401947 only use our background for children if it's inheritable
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31072 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 20:39:36 +00:00
Vadim Zeitlin
98a02e87ad don't propagate our (non default) background to children: use SetOwnBgCol() instead of SetBgCol()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31071 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 20:36:41 +00:00
Vadim Zeitlin
b902e63922 corrected compilation error in va_copy() test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31070 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 20:24:28 +00:00
Vadim Zeitlin
d1a47dfe23 fixed background appearance for the controls with changed foreground colour
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31069 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 20:15:43 +00:00
Vadim Zeitlin
eb96212b6c do not inherit background colour in InheritAttributes() as it totally breaks themed backgrounds
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31068 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 19:55:01 +00:00
Stefan Neis
7e2bb04d4e Fixed typo.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31067 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 17:29:59 +00:00
Stefan Neis
73213bc32d Fixes for OS/2.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31066 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 17:22:34 +00:00
Stefan Neis
f8dc67b685 Do not export weak symbols from DLLs, as this causes problems in debug build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31065 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 17:20:01 +00:00
Stefan Csomor
a484859779 extended EventRef class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31064 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 16:41:41 +00:00
Stefan Csomor
8dfef0c246 correcting dangling refs / reuse
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31063 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 16:40:18 +00:00
Vadim Zeitlin
35b92f0530 documented GetWindow() method
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31062 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 14:48:29 +00:00
Vadim Zeitlin
763a868d69 use ../sample.* instead
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31061 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 14:45:39 +00:00
Vadim Zeitlin
62a2a12d3c use standard icon under Unix as well
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31060 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 14:41:45 +00:00
Vadim Zeitlin
84ff9d5f98 use standard icon; minor layout fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31059 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 14:40:46 +00:00
Vadim Zeitlin
00e5289408 use the standard .rc file
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31058 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 14:39:43 +00:00
Vadim Zeitlin
35f545409d make icons for different effects different
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31057 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-19 14:36:13 +00:00
Stefan Neis
687da5395f Added support for debug libraries.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31056 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-18 16:12:00 +00:00
Robert Roebling
5f3565a2fb Fix for the fix for wxChoice selection.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31055 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-18 13:13:52 +00:00
Stefan Csomor
d6c69b1772 wake up corrections : correcting ref count (mem-leak) , keeping weak ref to avoid double posting wakeup-events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31054 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-18 10:55:19 +00:00
Stefan Csomor
fbd3562061 Big Endian Fixes, LCID support (must be paired with LCID-Charset support on the .hhp interpretation side)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31053 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-18 10:37:12 +00:00
Robin Dunn
fc32cd4a59 Only test the high order bit from GetKeyState, otherwise we can have
bogus readings.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31052 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-17 16:31:14 +00:00
Ryan Norton
9180b5352f wxMediaCtrl API changes for 2.5.x/2.6
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31051 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-17 16:07:21 +00:00
Ryan Norton
ef31f15728 Document osx hack
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31050 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-17 15:41:00 +00:00
Ryan Norton
beaae8c3d6 Warning fixes for msvc - return function address explicitly
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31049 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-17 15:37:30 +00:00
Włodzimierz Skiba
b0e43bafc9 Unicode markup.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31048 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-17 12:12:00 +00:00
Włodzimierz Skiba
e70e15cc58 Follow wxTreeCtrl API.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31047 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-17 12:09:55 +00:00
Robin Dunn
5cbf236d83 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31046 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-17 02:10:00 +00:00
Robin Dunn
0d2653ff97 Added default values for some parameters
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31045 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-17 02:01:08 +00:00
Robin Dunn
850ab20b18 Added notes for recent changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31044 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-17 02:00:28 +00:00
Robin Dunn
3ed2b503d1 docstring
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31043 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-17 01:59:39 +00:00
Robin Dunn
3350d6521a ComputeScaleAndOrigin
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31042 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-17 01:58:59 +00:00
Vadim Zeitlin
44029ca4ef override AcceptsFocus() inherited from wxStaticBox to accept focus
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31041 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-17 01:43:19 +00:00
Vadim Zeitlin
47e388caa6 accept focus in radiobox again (broken by making it derive from static box which doesn't accept it)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31040 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-17 01:41:47 +00:00
Vadim Zeitlin
aca49b7913 corrected comment about wxRadioBox not deriving from wxStaticBox in wxMSW (now it does)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31039 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-17 01:35:10 +00:00
Vadim Zeitlin
301e257baf restored WS_EX_TRANSPARENT as otherwise background can be not drawn at all sometimes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31038 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-17 01:27:31 +00:00
Robin Dunn
e2b154e391 Build/installer support for building with MSVC 7.1 and Python 2.4
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31037 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-17 01:22:27 +00:00
David Elliott
b6e8e2417d Fixed typo(?)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31036 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-16 22:51:10 +00:00
Robin Dunn
884a37aed2 reset m_selectionOld when the selection is programatically changed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31035 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-16 21:26:55 +00:00
Włodzimierz Skiba
b1263dcfa3 Make ComputeScaleAndOrigin() as virtual part of wxDCBase and this way present on missing platforms. Add into manaul too.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31034 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-16 21:24:45 +00:00
Włodzimierz Skiba
4bfa318965 Send full url to wxHtmlWindow::OnOpeningURL validation (and therefore use wxURL to not duplicate code). Present it in statusbar of samples/html/test application.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31033 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-16 20:32:43 +00:00
Włodzimierz Skiba
ea4daac45c Fixed typo.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31032 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-16 19:44:44 +00:00
Włodzimierz Skiba
09cbc94fea wxUniversal fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31031 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-16 19:39:25 +00:00
Włodzimierz Skiba
d0430ee2ba GCC of PalmOS fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31030 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-16 19:36:11 +00:00
Vadim Zeitlin
ffb1629fba suppress annoying beeps when enter is pressed in combobox and there is no default button
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31029 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-16 13:25:54 +00:00
Vadim Zeitlin
27758ba7d4 restored accidentally removed code which deselects the previously selected button in SetSelection()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31028 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-16 13:21:33 +00:00
Vadim Zeitlin
97152f7856 fix memory leak when using styes (closes 1086273)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31027 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-16 10:24:37 +00:00
Robin Dunn
4f686d3271 untabified
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31026 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-16 06:05:09 +00:00
Vadim Zeitlin
976b3cb3d9 added GetBestSize() implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31025 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-16 02:39:11 +00:00
Vadim Zeitlin
6ed16512dd repaired setting foreground colours for the standard controls
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31024 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-16 01:50:34 +00:00
Robin Dunn
4293f84787 get the default encoding from the default locale.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31023 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-15 21:17:49 +00:00
Robin Dunn
27c9e43cc0 Instead of always using the Python default encoding for converting
string and unicode objects to/from wxStrings.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31022 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-15 21:15:28 +00:00
Julian Smart
e2ac17aa7a Further AFM removal
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31020 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-15 13:20:19 +00:00
Julian Smart
001a4430e9 Removed AFM files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31019 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-15 13:13:49 +00:00
Włodzimierz Skiba
e951b8e4e6 Move unused values into 2.4 compatibility. Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31018 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-15 12:22:51 +00:00
Jouk Jansen
f2ba382267 Committing in .
OpenVMS compile updates

 Modified Files:
 	wxWidgets/setup.h_vms wxWidgets/src/gtk/descrip.mms
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31017 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-15 08:02:07 +00:00
Jouk Jansen
41eb6d76b0 Committing in .
fix for gtk-1.x

 Modified Files:
 	wxWidgets/src/gtk/combobox.cpp
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31016 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-15 07:42:31 +00:00
Robin Dunn
b519803b43 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31015 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-14 22:49:50 +00:00
Robin Dunn
63cd6e0bbe Don't use WXDLLIMPEXP_MEDIA in the stub class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31014 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-14 22:48:24 +00:00
Robin Dunn
eadf221fb0 optionally add the media library if not a MONOLITHIC build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31013 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-14 22:46:28 +00:00
Włodzimierz Skiba
463c4d7193 wx/math.h integration
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31012 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-14 21:10:15 +00:00
Włodzimierz Skiba
b713f8919c wx/math.h integration
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31011 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-14 20:52:13 +00:00
Włodzimierz Skiba
83c5e93495 Be C file.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31010 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-14 20:34:23 +00:00
Włodzimierz Skiba
50c6bf91c8 Fixme removal.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31009 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-14 20:32:24 +00:00
Włodzimierz Skiba
d76bb5b289 Geometry operators tests.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31008 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-14 20:29:21 +00:00
Włodzimierz Skiba
3e8f9a4980 Geometry operators tests.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31007 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-14 20:29:20 +00:00
Robin Dunn
90f7243727 Don't call _setOORINfo from PreGrid
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31006 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-14 19:58:50 +00:00
Robin Dunn
ed8d127eb0 Added SetFocus and SetFocusIgnoringChildren to wx.Panel
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31005 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-14 19:57:58 +00:00
Robin Dunn
7353d81801 Applied patch #1084332: xrced does not respect encoding
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-14 19:39:09 +00:00
Vadim Zeitlin
b987387052 more wxUniv compilation fixes (bug 1085003)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31003 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-14 12:33:53 +00:00
Vadim Zeitlin
18c509fb88 compilation fix for WXWIN_COMPATIBILITY_2_4 == 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31002 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-14 12:30:42 +00:00
Robin Dunn
49e6b3c3cf deprecated Get/SetOptimization
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31001 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 23:15:45 +00:00
Robin Dunn
c9463abb23 Added
IsEditable
    Undo
    Redo
    SelectAll
    CanCopy
    CanCut
    CanPaste
    CanUndo
    CanRedo


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31000 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 23:06:19 +00:00
Robin Dunn
496d695b87 Deprecated NotebookSizer and BookCtrlSizer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30999 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 23:02:27 +00:00
Robin Dunn
cf4dfd1467 Added GetColoursCount
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30998 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 23:00:57 +00:00
Robin Dunn
4bfe9b91c3 Added gravity
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30997 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 22:46:45 +00:00
Robin Dunn
4e4a4ac83a Give Maximize and default param
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30996 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 22:39:44 +00:00
Robin Dunn
9eefe9f085 wxRect::union and docstring fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30995 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 22:38:06 +00:00
Vadim Zeitlin
7344726a7a undef CreateWindow too, even if we don't use it ourselves it's still a very common name and shouldn't be defined after including wxWindows headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30994 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 21:30:39 +00:00
Włodzimierz Skiba
3454ecd508 math.h/PI integration
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 20:10:59 +00:00
Vadim Zeitlin
e77c5d9682 reverted recent VK_OEM_PLUS change, do map it to '+' for now, but added a comment questioning whether this should be done at all
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30992 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 20:07:45 +00:00
Włodzimierz Skiba
e0d3147139 math.h/PI integration
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30991 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 20:04:51 +00:00
Włodzimierz Skiba
19edb09cd9 math.h/PI integration
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30990 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 19:54:38 +00:00
Włodzimierz Skiba
699bfc3d1a Avoid conflict with INFINITY of math.h.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30989 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 19:48:36 +00:00
Włodzimierz Skiba
956615e2f7 Further changes markup.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30988 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 19:46:02 +00:00
Vadim Zeitlin
bdd1a35ddc (blind) wxUniv compilation fix: define the method using wxWindow out of line, i.e. after wxWindow is defined
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30987 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 19:42:35 +00:00
Włodzimierz Skiba
3ad70d312e wx/msw/notebook.h needs wx/notebook.h in lack of precompiled headers.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30986 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 18:24:19 +00:00
Włodzimierz Skiba
bb8d428f33 Events table serves for RTTI too.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30985 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 14:08:08 +00:00
Julian Smart
f525dc5479 Added missing events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30984 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 10:49:13 +00:00
Julian Smart
78a445a86e Typo correction
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30983 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 09:18:34 +00:00
Vadim Zeitlin
5b870dc087 use WX_FORWARD_STD_METHODS_TO_SUBWINDOWS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30982 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 01:03:44 +00:00
Vadim Zeitlin
7249080588 added WX_FORWARD_STD_METHODS_TO_SUBWINDOWS macro
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30981 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 01:02:32 +00:00
Vadim Zeitlin
bd0a76e228 1. derived wxMSW radio box from static box because it includes the box anyhow
2. changed it to use wxSubwindows to cut down code duplication
3. deprecated Get/SetNumberOfRowsOrCols() which didn't do anything in neither
   MSW nor GTK (this is the only change in GTK code)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30980 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 01:00:35 +00:00
Robert Roebling
6de9d616ca Correctd orientation of sash handle.
Adapted some code in the native scrolling window
    to the generic version's code.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30979 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 00:29:32 +00:00
Vadim Zeitlin
b04093c949 use solid bacgkround for static box as pattern brush can't be properly aligned when it is painted
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 00:12:37 +00:00
Vadim Zeitlin
c4a95f6f99 implemented MSWGetBgBrush/ColourForChild() to propagate themed notebook background to children
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30977 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 00:11:14 +00:00
Vadim Zeitlin
c5bd3c6268 rewrote and virtualized the background erasing logic: each window may now
specify which background brush should be used for its children and each child
may also choose to use either background brush or (solid) background colour

wxWindow::OnEraseBackground() and wxControl::MSWControlColor() now use the
same code


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30976 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-13 00:09:54 +00:00
Vadim Zeitlin
042ce4ccba forward Enable() and SetFont() to the labels as well
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30975 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 21:51:11 +00:00
Vadim Zeitlin
052da7d572 added a few more composite functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30974 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 21:43:45 +00:00
Vadim Zeitlin
24181682fa don't use WS_EX_TRANSPARENT style, it doesn't seem to help with anything (if it is readded, please make sure to explain why exactly was it needed)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30972 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 20:27:35 +00:00
Vadim Zeitlin
5554336399 check for any parent with non default background in wxControl::MSWControlColor(), not just wxNotebook
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30971 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 20:21:16 +00:00
Vadim Zeitlin
7af99268d4 override MSWGetDefaultBgBrush() to use transparent brush
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30970 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 19:47:01 +00:00
Vadim Zeitlin
d34e375c9c added MSWGetDefaultBgBrush() to allow some derived classes to use transparent brush for erasing background
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30969 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 19:44:52 +00:00
Václav Slavík
98a50e202c even GUI test should be console app
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30968 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 19:25:46 +00:00
Vadim Zeitlin
e07e8195ae added a test for wxRect::Union()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30967 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 19:23:19 +00:00
Vadim Zeitlin
c71ce67511 fixed Union() for the case of this rectangle being empty
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30966 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 19:00:42 +00:00
Vadim Zeitlin
8a8dcc3421 position the labels correctly when we're created with fixed size
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30965 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 18:59:42 +00:00
Vadim Zeitlin
7fe985eede create controls with 1*1 size by default, not 0*0 as it wreaks havoc with wxRect::Union logic
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30964 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 18:56:36 +00:00
Vadim Zeitlin
bebc503c78 compilation fix for wxUSE_TOGGLEBTN == 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30963 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 18:32:26 +00:00
Vadim Zeitlin
5294a27e95 regenerated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30962 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 18:09:32 +00:00
Vadim Zeitlin
d5f330f9bc unused var warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30961 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 17:59:41 +00:00
Vadim Zeitlin
8a8997c3be fixed broken logic in ShowFullScreen() (some compiler warnings are helpful)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30960 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 17:58:33 +00:00
Vadim Zeitlin
8da1f9a99e delete children in ~wxWindow dtor and not in the base class ~wxWindowNative as it's too late there (replaces patch 1082605; closes bug 1068000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30959 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 17:47:06 +00:00
Vadim Zeitlin
0ce5a3a853 fixed SaveDIB() crash with BW images (patch 1045884)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30958 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 17:40:00 +00:00
Vadim Zeitlin
8193d58f17 include <windows.h> before <multimon.h>, should fix mingw32 compilation (bug 966947)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30957 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 17:34:36 +00:00
Stefan Csomor
0842200308 scrolling hack (always move our own scrollbars highest in z-order)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30956 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 15:22:49 +00:00
Václav Slavík
a0744a6b06 added GUI test program
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30955 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 12:35:45 +00:00
Václav Slavík
4d6b57d615 moved tests-only code to tests bakefile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30954 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 12:29:39 +00:00
Vadim Zeitlin
f8fbc92bdb disable gcc warning about class having private dtors and no friends (patch 1065318)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30953 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 11:55:37 +00:00
Vadim Zeitlin
70a7bd90f9 large files support for wxFFile (patch 1077980 from Mike Wetherell)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30952 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 11:53:53 +00:00
Vadim Zeitlin
34ea3c7491 only handle WM_NULL in wxIdleWakeUpModule if it is being removed from queue (part of patch 1080770)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30951 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 11:49:32 +00:00
Vadim Zeitlin
9af08eb826 use a linked list instead of array for saved messages to fix problems when Dispatch() is reentered (part of patch 1080770)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30950 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 11:47:57 +00:00
Vadim Zeitlin
18dbea4d81 stop processing pending events after processing all of them which had been in the queue when we started, not until there are none as this could result in an infinite loop (part of patch 1080770)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30949 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 11:44:46 +00:00
Vadim Zeitlin
5767e83699 fixed bug with lower-case colours in wxColourDatabase::AddColour() (patch 1074865)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30948 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 11:21:15 +00:00
Vadim Zeitlin
14b4c0ff12 gravity for splitter window (patch 1046105)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30947 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 11:19:36 +00:00
Vadim Zeitlin
4116fac052 cross-reference types in the generated docs (patch 1038083)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30946 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 11:12:25 +00:00
Vadim Zeitlin
ffa4348d33 give an error message if we're built in Unicode mode (in response to bug 1079224)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30945 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 11:03:31 +00:00
Vadim Zeitlin
dc9dadac18 include <windows.h> in tests for multimon.h, ddraw.h and dshow.h as otherwise they don't risk to work (closes 1083808)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 11:01:39 +00:00
Vadim Zeitlin
3ea9aa8f0e removed extra class qualifier from inline method
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 10:33:51 +00:00
Vadim Zeitlin
e5099bdf4b master setup.h for msvc users
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 10:33:03 +00:00
Stefan Csomor
9d51726702 10.4 header collision fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30941 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 10:00:39 +00:00
Ryan Norton
350a44d9c0 fix wxTheApp include
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 09:15:28 +00:00
Kevin Hock
a34cc2bf6d Revert change to wording... it is correct to have "aN 1800-page" because the full wording is "an eighteen hundred-page," where the an is clearly correct (say it out loud and it is clear than you would not say "a eighteen hundred-page")
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 01:37:40 +00:00
Vadim Zeitlin
ab022a5c7a don't look for notebooks beyond first top level parent in our hierarchy
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 00:09:40 +00:00
Vadim Zeitlin
e96ec686d8 never return NULL_BRUSH from WM_CTLCOLOR handler, it doesn't do much for most controls and breaks background erase for a few (slider, static text, static bitmap, ...)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30937 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-12 00:06:43 +00:00
Vadim Zeitlin
6181cef532 use MSWAlwaysDrawBg() to fix the problem with black background; rewrote/cleaned up the positioning and window creation code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30936 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-11 23:35:41 +00:00
Vadim Zeitlin
19fdd4efb6 helper class for implementing composite controls under MSW
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30935 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-11 23:35:27 +00:00
Vadim Zeitlin
c5c4c31e6c added MSWAlwaysDrawBg() to account for controls such as sliders which must not draw background with transparent brush no matter what
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-11 23:34:15 +00:00
Vadim Zeitlin
9688700c97 added wxRectFromRECT()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30933 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-11 23:32:20 +00:00
Vadim Zeitlin
df83b840bb added and documented wxRect::Union(); also moved some methods inline
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30932 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-11 23:29:55 +00:00
Robert Roebling
c28cb884de A bit of updating the changes.txt etc.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30931 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-11 21:54:12 +00:00
Robert Roebling
f773e9b0bb Backed-out PNG8 patch (no time to look at why
it breaks other PNGs).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30930 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-11 21:52:36 +00:00
Robert Roebling
3980000ca6 Whole bunch of minor doc updates from an external patch.
Also documented combobox's EVT_TEXT_ENTER


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30929 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-11 21:33:17 +00:00
Vadim Zeitlin
88379f1f2e translate VK_OEM_PLUS to '=', not '+', because this is what the unmodified key is
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30928 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-11 20:01:05 +00:00
Robert Roebling
ababa106ae Add SetFocusIgnoringChildren() to wxControlContainer. This
makes corresponding hacks in wxListCtrl and wxTreeCtrl
    obsolete. With docs.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-11 12:51:05 +00:00
Włodzimierz Skiba
d61f720033 Bug #1040683: Remove assert when deleting menu entry.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30926 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-10 16:20:13 +00:00
Włodzimierz Skiba
7a8d94185f wxFoldBar now also horizontal (with API methods renamed to mean length rather than height) and more with wxWidgets coding standards. Sample adjustement to changing orientation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30925 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-10 12:01:04 +00:00
Julian Smart
b9a59c919c Workaround for memory bug when using wxRegConfig and calling
SetPath.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30924 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-10 11:24:10 +00:00
Vadim Zeitlin
a21d4ad106 really implemented operator==(); reformatted a little
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30923 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-10 11:23:16 +00:00
Włodzimierz Skiba
de4b00500f Back to broken comparison until it is not fixed other way.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30922 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-10 07:28:25 +00:00
David Elliott
4c683a3021 Wrap wxImage specifics in wxUSE_IMAGE and wxBitmap specifics in wxUSE_GUI.
This allows the code to be used from wxBase with other image classes.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30921 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-10 01:53:31 +00:00
Vadim Zeitlin
55b5ddad74 compilation fix for wxUSE_DATAOBJ == 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30920 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-09 19:39:17 +00:00
Julian Smart
4e324a3fbf Combobox corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30919 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-09 15:27:54 +00:00
Julian Smart
150e31d208 Added further 'missing' wxTextCtrl-like functions to wxComboBox
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30918 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-09 15:16:51 +00:00
Ryan Norton
8d7ea2312e fixup {/'s with last commit
merge pre tag change from wxWebSite


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30917 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-09 15:10:07 +00:00
Julian Smart
966a4a52b6 Spelling corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30916 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-09 14:59:08 +00:00
Julian Smart
14186b44e7 Small correction
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30915 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-09 14:16:20 +00:00
Julian Smart
15a2de7e4f Misc FAQ mods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30914 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-09 14:14:01 +00:00
Robin Dunn
03e46024f9 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30913 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-09 00:21:25 +00:00
Robin Dunn
c9c2cf703c Use SetMinSize instead of SetSizeHints
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30912 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-09 00:21:19 +00:00
Mattia Barbon
7d9cfc5483 Moved tests for wxHashMap, wxHashSet and wxList
from console sample and converted them to unit tests.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30911 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-08 22:39:22 +00:00
Mattia Barbon
d7ab66a1cb Made wxHashSet compile again. Changed the return value
for insert() t match the one of wxHashMap (and of std::set).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30910 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-08 22:39:17 +00:00
Mattia Barbon
8cd74a14cd Documented wxHashSet.
Corrected documentation for wxHashMap::insert() mentioning
the correct return value.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30909 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-08 22:33:40 +00:00
Robert Roebling
e854ed477e Applied patch for PNG8 alpha mask.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30908 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-08 22:29:25 +00:00
Mattia Barbon
4ae1af0588 Check for Pango XFT presence (for wxX11).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30907 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-08 22:13:37 +00:00
Robert Roebling
78b3b018ce Corrected wxComboBox::GetValue() after a
selection has changed. Added test for
    that to the "widgets" sample.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30906 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-08 22:08:28 +00:00
Robin Dunn
df4192e384 Use SetMinSize instead of SetSizeHints
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30905 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-08 21:51:07 +00:00
Robin Dunn
95262b5fa5 Some tweaks for the wxMediaCtrl and enhaced the demo a bit
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30904 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-08 21:49:41 +00:00
Robin Dunn
28dfea7754 fix compilation error
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30903 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-08 20:36:13 +00:00
Julian Smart
55e0d33c97 Fixed spurious selection of combobox text during resize
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30902 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-08 17:51:48 +00:00
Włodzimierz Skiba
917be7ed06 wxPaletteBase introduction. wxPalette::GetColoursCount() in interface of all platforms. wxColourMap definition centralized and 2.4 only. Source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30901 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-08 17:43:18 +00:00
Włodzimierz Skiba
767e3be0fa Fix to FIXME: better nothing than broken comparison.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30900 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-08 17:17:37 +00:00
Włodzimierz Skiba
57e7524bad Fixed bug with lack of return default style if Ok() fails.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30899 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-08 17:15:06 +00:00
Włodzimierz Skiba
c193de847b Warning fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30898 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-08 17:12:53 +00:00
Włodzimierz Skiba
82ce8b17f7 wxApp decoration to changes list and missed new methods in wxApp section.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30897 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-08 17:00:29 +00:00
Julian Smart
df6735ecda Script updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30896 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-08 08:36:01 +00:00
Włodzimierz Skiba
ea76a6a5ca Fix to FIXME about using unused Get/SetOptimization.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30895 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-07 20:10:40 +00:00
Włodzimierz Skiba
c65650d7b5 wxURI/wxURL links in changes list.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-07 19:57:09 +00:00
Włodzimierz Skiba
a5b274d7fc Correct way of modyfing stc.cpp. Thanks Robin for quick guide :-)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30893 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-07 19:49:27 +00:00
Robin Dunn
1823fbb47a reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30892 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-07 18:02:20 +00:00
Robin Dunn
c6d428998f Added ImageFromDataWithAlpha ctor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30891 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-07 18:00:17 +00:00
Robin Dunn
553f11cdbf wx.GridBagSizer stor needs call to _setOORInfo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30890 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-07 17:58:39 +00:00
Robin Dunn
f63a6e0ccd Add wxTextEntryDialogStyle constant
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30889 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-07 17:57:53 +00:00
Robin Dunn
c1718b2c8a Add flags parameter to wx.Process.Kill and wx.Kill
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30888 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-07 17:56:22 +00:00
Robin Dunn
f6e56553ee Ensure that PlatformInfo is reverse-renamed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30887 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-07 17:54:57 +00:00
Robin Dunn
152d7d3516 made dates in comments consistent
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30886 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-07 17:53:56 +00:00
Stefan Csomor
577b58dfe9 fixing memory leak (reported by Ken Thomases)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-07 07:47:15 +00:00
Stefan Csomor
7596e51dbc fixing memory leak (reported by Ken Thomases)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-07 07:13:43 +00:00
Robert Roebling
9f37db4291 Made sample compile after removal of wxPrintSetupDialog.
Tweak makefile to work with GNOME printing.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30883 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-06 23:43:29 +00:00
Robert Roebling
4ba64bdeb2 Compilation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30882 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-06 23:41:28 +00:00
Václav Slavík
feb1c9fb0c fixed ShowFullScreen after somebody broke it by naively using gtk_show_fullscreen without checking if the WM supports it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30881 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-06 22:44:39 +00:00
Kevin Hock
0fec2f73ec wxHSCROLL works in GTK2, changed description to indicate no effect only on wxGTK1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30880 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-06 17:57:42 +00:00
Włodzimierz Skiba
5c750f949f Fix to FIXME removal for dummies ;-)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30879 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-06 17:37:31 +00:00
Włodzimierz Skiba
abc2a4ccec Warning fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30878 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-06 17:35:00 +00:00
Włodzimierz Skiba
c8b75e9498 ssize_t for wxFile, unsigned char markup for color components, whitespace source cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30877 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-06 17:32:42 +00:00
Włodzimierz Skiba
42e88ddb61 Further decorations in changes chapter. Missed methods in their base location.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30876 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-06 17:22:49 +00:00
Włodzimierz Skiba
c5789d1526 Use Get*Box instead Get*Region if you are asking about position and size. And it is enough to have it in base class only.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30874 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-06 15:48:50 +00:00
Robert Roebling
16edee16a7 Apply choice patch for proper handling of clearing
wxChoice (it reported a selection value of 0)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30873 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-06 12:47:06 +00:00
Václav Slavík
6372b068b2 fixed typos (patch 1079876)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30872 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-06 10:28:58 +00:00
Julian Smart
5e80ff3d31 Removed CF_NOSIMULATIONS flag to increase range of available fonts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30871 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-06 08:48:29 +00:00
Robert Roebling
77f706726c Implemented run-time checks for the GTK version
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30870 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-05 23:03:09 +00:00
Ryan Norton
d7b995a497 Fix overflow warnings (?)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30869 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-05 20:52:23 +00:00
Robert Roebling
4e1901b70e Moved the implemtation of the generic and the
native GTK 2.4 file dialogs into one place
   by making wxFileDialog derive from the
   generic variant and by then choosing which
   implementation to use. Later, we'll add
   run-time checks.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30868 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-05 20:30:18 +00:00
Kevin Hock
822cf31c27 Prevent GDK assertions when a window has a hidden (never shown) parent -- do not use wxRegionIterator over the parent if the parent is not mapped
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30867 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-05 19:40:01 +00:00
Kevin Hock
90470763da Freeze/Thaw implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30866 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-05 19:15:41 +00:00
Kevin Hock
b6ae8db82b Freeze/Thaw patch missed a place where m_buffer should be used
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30865 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-05 19:15:11 +00:00
Kevin Hock
636673edda Updating wording in Freeze to more accurately describe the situation under wxGTK where Freeze in a text control is most useful
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30864 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-05 19:14:34 +00:00
Julian Smart
bcfced3616 Neither PocketPC nor SmartPhone have SHBrowseForFolder
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30863 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-05 18:56:29 +00:00
Robert Roebling
121ade4fd3 Corrected patch.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30862 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-05 17:29:03 +00:00
Julian Smart
b4367c87f1 Simplification
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30861 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-05 17:02:17 +00:00
Robert Roebling
9ddf4854df Invalidate the best size after adding an item
to a wxChoice.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30860 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-05 16:56:56 +00:00
Robert Roebling
265accbe55 A little documentation about custom events as
per the discussion on the mailing list.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30859 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-05 16:30:54 +00:00
Julian Smart
ade0e73d18 Further Wince fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30858 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-05 14:11:35 +00:00
Julian Smart
9e67e54178 Moved GetDefaultAttributes outside wxUSE_RICHEDIT block
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30857 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-05 14:01:29 +00:00
Julian Smart
885b88a257 Unicode/WinCE corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30856 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-05 13:36:44 +00:00
Julian Smart
e0f6b731a8 Added flags argument to wxKill and wxProcess::Kill to allow it to
kill child processes.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30855 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-05 12:53:25 +00:00
Vadim Zeitlin
65c8ace850 update from herbert breunung
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30852 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-03 19:22:35 +00:00
Włodzimierz Skiba
c7dc771115 wxGDIObject is used earlier now so additional #include is required for those without PCH.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30851 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-03 17:31:53 +00:00
Włodzimierz Skiba
84df104241 Fix to FIXME: better nothing than broken comparison.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30850 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-03 15:38:35 +00:00
Włodzimierz Skiba
cb9d5bd07e wxBrushBase between wxBrush and wxGDIObject (class follows wxFontBase model).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30849 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-03 15:31:31 +00:00
Ryan Norton
7a4d2469f9 fix shared msw builds
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30848 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-02 23:17:51 +00:00
Kevin Hock
bdf0c19c6e Honor value of SetMaxLength, at least when typing (pasting still circumvents it). This is done by eating non-navigation/delete characters in OnChar.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30847 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-02 21:35:40 +00:00
Ryan Norton
2b138cc2bd hack around 10.2/10.3 bug with duplicate symbol
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30846 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-02 18:53:18 +00:00
Julian Smart
df1f4832e5 Spelling corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30845 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-02 16:16:51 +00:00
Julian Smart
a83ea9c15a Crash fix under VC++
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30844 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-02 16:14:49 +00:00
Julian Smart
aaf1bbfd62 Fixed memory checking on Unix by removing inlines and apply patch
by Mart Raudsepp


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30843 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-02 12:04:46 +00:00
Julian Smart
c242a1ec6d Use the right symbol
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30842 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-02 12:03:45 +00:00
Julian Smart
5c2cd0f67a Fix compilo on Unix using src/iodbc which has no SQL_C_WCHAR
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30841 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-02 09:42:03 +00:00
Ryan Norton
ff3d9a3532 better name - add newline to end of file for dumber compilers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30840 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-02 00:02:11 +00:00
Ryan Norton
c08dd08b3e add wxStripExtension test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30839 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-01 23:58:11 +00:00
Ryan Norton
2cbfa061b4 Correct mistakes in wxStripExtension - correct wxString::npos. Spurred by 1073642 filefn.cpp StripExtension(wxString &)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30838 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-01 23:55:42 +00:00
Robin Dunn
fab7c93158 ensure that yesr is an integer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30837 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-01 22:00:43 +00:00
Robert Roebling
d6c6acd640 Added support for GNOME print in static builds
also by adding the FORCE_LINK() statements.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30836 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-01 21:35:26 +00:00
Robert Roebling
4ea56379e3 Added support for static (inlined) wxImages with
alpha channel.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30835 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-01 21:33:38 +00:00
Robert Roebling
41b81aed52 Applied Freeze()/Thaw() patch for wxTextCtrtl.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30834 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-01 20:52:36 +00:00
Robert Roebling
70dfc4ed70 Compilo
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30833 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-01 19:15:46 +00:00
Robert Roebling
1523681581 Applied font scaling patch (GetTextExtent()) to
new printing code as well.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30832 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-01 18:44:50 +00:00
Robert Roebling
86baa52d22 Applied patch to "correct" hashmap's freeing
of memory.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30831 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-01 18:33:33 +00:00
Robert Roebling
0b18767089 Applied patch to correct EVT-CHAR
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30830 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-01 18:29:13 +00:00
Julian Smart
c86abb56d5 Include "wx/msw/msvcrt.h" for better leak reporting
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30829 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-01 14:46:16 +00:00
Julian Smart
ea787af196 Allow memcheck.cpp to be compiled without wxDebugContext (for e.g. testing
using other leak checkers).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30828 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-01 12:50:24 +00:00
Włodzimierz Skiba
68d411dc57 Missing wxWindow member, manual decorations to pure text list of changes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30827 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-01 08:53:31 +00:00
Kevin Hock
254973247e Create wxGtkTextApplyTagsFromAttr for common processing of text attributes from both wxGtkTextInsert and SetStyle (and any other place needed in the future) -- from Mart R.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30826 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-01 04:28:40 +00:00
Robin Dunn
f78cc8969d reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30825 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-01 00:12:58 +00:00
Robin Dunn
020303e6f9 Little tweaks to match recent wxWidgets updates
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30824 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-12-01 00:06:58 +00:00
Robin Dunn
4e819f106b In the wx.LogXXX function wrappers double all % characters so the log
function won't try to do parameter substitutions.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30823 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-30 22:10:31 +00:00
Włodzimierz Skiba
842215bbb7 Fixed old FIXME about unsigned result of sunstraction + a few changes to be able to compile at the same time wxLongLongNative and wxLongLongWx for unit tests about the same functionality (define wxLONGLONG_TEST_MODE for the build if you want to test it.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30822 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-30 21:21:23 +00:00
Włodzimierz Skiba
6e848e9310 Duplicate include order from regex because it's well tested already and avoids the error in Unicode DMC build.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30821 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-30 20:57:13 +00:00
Włodzimierz Skiba
891479a2da Additional wx*_HATCH styles comment.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30820 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-30 18:52:47 +00:00
Włodzimierz Skiba
ab9d0a8ca3 IS_HATCH macro replaced with wxBrush::IsHatch() + source and docs little cleaning.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30819 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-30 18:46:20 +00:00
Kevin Hock
44ac608d14 gtk_window_[un]fullscreen only available with GTK >= 2.2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30818 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-30 18:13:39 +00:00
Julian Smart
30413fd03e Added missing newline for Windows debug output
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30817 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-30 16:55:42 +00:00
Włodzimierz Skiba
e70fda0eab Not native long long fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30816 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-29 12:47:20 +00:00
Włodzimierz Skiba
86a9d44545 Include fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30815 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-29 12:44:11 +00:00
Robert Roebling
3314e67b6a Remove linking to libgnomeprint since we
load it at runtime now.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30814 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-28 22:57:43 +00:00
Robert Roebling
59c73be893 Made all of the GNOME print support based
on wxDynamicLibrary.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30813 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-28 22:55:44 +00:00
Robert Roebling
c2740a5aab Dirty hack to prevent double destruction of file dialog.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30812 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-28 22:54:13 +00:00
Stefan Neis
5bef7b5828 Separated MinGW and OS/2 specific tests for -DNO_GCC_PRAGMA since conditions
are slightly different.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30811 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-28 19:38:11 +00:00
Stefan Neis
937e42a324 Reuse workaround for MinGW's problems with pragma interface/implementation
and STL support on OS/2.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30810 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-28 18:42:15 +00:00
Stefan Neis
2461cfa0d9 Added support for compiling with wxUSE_STL set to 1.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30809 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-28 18:39:30 +00:00
Robert Roebling
c6efd6e0ec Start of run-time lookup of GNOME print libs.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30808 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-28 17:55:48 +00:00
Robert Roebling
a733492856 Reverted changes that set m_widget to NULL in native
GTK+ dialogs for now. The problem persists, that
    when quitting the native file dialog with ESC, the
    dialog will be destroyed twice.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30807 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-28 13:08:26 +00:00
Václav Slavík
6120f2fcdb fixed subtle SetDirectory bug re-introduced by latest changes (explained in comment in UpdateDialog); reintroduced UpdateDialog so that fixes like this are kept in single place and affect all ways of setting the patch
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30806 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-28 10:49:01 +00:00
Václav Slavík
c019209981 reverted, the problem is deeper than that
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30805 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-28 09:41:36 +00:00
Václav Slavík
e0107cbd45 fixed to not duplicate code needlessly; clarified why gtk_file_chooser_set_current_name is called as it is
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30804 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-28 09:33:43 +00:00
Robert Roebling
82c1f2a390 Make use of new Art.
Add sections to the dir dialog as per the
   GTK 2.4 file dialog (Home, Desktop, "/").


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30803 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-27 23:25:30 +00:00
Robert Roebling
ddf6088b1e Added new Art which GTK+ 2.4 defines and
which we should use.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30802 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-27 23:23:47 +00:00
Robert Roebling
f1dec25f31 Avoid error message when closing message
dialog with the X field from the WM.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30801 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-27 23:21:12 +00:00
Robert Roebling
c7f73af494 Make wxTR_NO_LINES default under GTK2
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30800 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-27 23:19:49 +00:00
Robert Roebling
76840ed0db Fixes for file dialog. No longer spits out
GTK error messages.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30799 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-27 23:18:40 +00:00
Václav Slavík
4ac725a3b3 renamed Render's argument to not obfuscate its meaning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30798 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-27 22:40:05 +00:00
Robert Roebling
39a77f4cd9 A bit of confusion over what is RGB stands for blue...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30797 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-27 18:48:33 +00:00
Robert Roebling
4d1bc39c96 Give native GTK+ look to wxGrid.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30796 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-27 16:30:03 +00:00
Václav Slavík
848c4eb27b fixed wxHtmlContainerCell to not render off-screen cells
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30795 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-27 13:08:54 +00:00
Robert Roebling
cac7ac30cb Added support for DrawEllipse and pen styles to
GNOME printing. Added test.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30794 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-27 12:50:01 +00:00
Julian Smart
ece835440d Doc corrections
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30793 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-27 10:39:33 +00:00
Václav Slavík
5f652d0da4 FreeBSD fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30792 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-26 16:43:18 +00:00
Ryan Norton
f44eaed650 patch 1073385
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30791 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-25 20:37:44 +00:00
Vadim Zeitlin
b494e2b008 added missing header needed at least by wxMotif under HP-UX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30790 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-25 18:08:29 +00:00
Włodzimierz Skiba
516ab39908 wxUSE_GAUGE/PROGRESSDLG condition.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30789 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-25 18:05:12 +00:00
Vadim Zeitlin
410c3efc05 removed cleanup module which was only used for working around bugs in memory debugging code which were fixed since
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30788 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-25 17:56:47 +00:00
Włodzimierz Skiba
e9043580b8 Nicer and longer fading.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30787 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-25 17:48:10 +00:00
Stefan Csomor
375bb200e3 removed explicit IDs for scrollbars on mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30786 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-25 17:42:50 +00:00
Włodzimierz Skiba
063b752ebc wxProgressDialog needs progress bar.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30785 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-25 17:00:31 +00:00
Włodzimierz Skiba
4d4e1be2ef DMC conflicts with old SC.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30784 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-25 16:53:41 +00:00
Ryan Norton
47b3cc5cac fix non-standard c warnings - stab to fix overflow warnings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30783 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-25 15:34:38 +00:00
Vadim Zeitlin
524065c14e added test for wxUSE_SCROLLBAR
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30782 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-25 14:53:08 +00:00
Vadim Zeitlin
2c62dd25cd changed the code to be really sure that exactly one update event is sent when SetValue() is called
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30781 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-25 14:43:54 +00:00
Václav Slavík
034e304169 updated to generate ZIP files with DOS line endings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30780 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-25 11:40:34 +00:00
Václav Slavík
2a2e4f4afa reverted Robert's over-optimisation, correct fix coming soon
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30779 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-25 08:32:49 +00:00
Stefan Csomor
64631e82fd const comparison operators
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30778 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-25 05:21:32 +00:00
Vadim Zeitlin
00cfda56d2 removed [GS]etAuto3D() which don't exist any more since quite some time
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30777 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 23:33:46 +00:00
Ryan Norton
d4052bcb78 replace apple extended code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30776 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 22:42:37 +00:00
Ryan Norton
2f4bebe8ff data stream test for extended
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30775 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 22:31:25 +00:00
Vadim Zeitlin
df10208f26 don't disable non top tabs if visual themes are not used
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30774 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 21:54:00 +00:00
Vadim Zeitlin
41bd216844 removed msw.xp-tab-ok, in fact it is not needed as tabs never work correctly with visual theme enabled
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30773 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 21:51:01 +00:00
Vadim Zeitlin
1972900ebf define inline stubs for methods even with wxUSE_SYSTEM_OPTIONS == 0 to make it possible to test for system options without #ifdefs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30772 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 21:25:55 +00:00
Ryan Norton
11219c9ede finish getting rid of background flicker (MCI backend)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30771 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 21:24:11 +00:00
Vadim Zeitlin
82a16d7e5e added (and documented) msw.xp-tab-ok option
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30770 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 21:24:09 +00:00
Ryan Norton
e163773d41 reduce black background flicker a bit - there is still some left sometimes initially (MCI backend)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30769 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 21:21:13 +00:00
Robert Roebling
58bd6224ac Changed the way invisble HTML cells are NOT
drawn so that no clipping is required.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30768 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 20:28:19 +00:00
Robin Dunn
6e0de3dfc4 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30767 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 20:10:40 +00:00
Robin Dunn
8ac8dba00c reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30766 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 19:52:08 +00:00
Robin Dunn
9828eeb4a3 added overview text for wx.MediaCtrl demo, udpated CHANGES
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30765 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 19:49:08 +00:00
Robin Dunn
4d5009f903 Fixes for the stubbed version so it will compile
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30764 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 19:45:41 +00:00
Robin Dunn
870501f0c9 Added wrappers for wx.MediaCtrl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30763 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 19:34:54 +00:00
Ryan Norton
503271a574 regen bakefiles - get rid of explicit size setting after ctor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30762 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 19:27:06 +00:00
Robin Dunn
256c055e88 Added wrappers for wx.MediaCtrl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30761 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 19:21:30 +00:00
Robin Dunn
2c25de3ff6 added GetSelection for wxMSW.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30760 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 19:15:52 +00:00
Ryan Norton
973dc0a8ee prevent function hiding - move NextBackend into protected
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30759 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 19:15:27 +00:00
Robin Dunn
b5093969a2 docstrings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30758 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 19:14:45 +00:00
Ryan Norton
4ac6131914 fix a loading bug - set size if movie is passed into ctor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 19:10:44 +00:00
Włodzimierz Skiba
1b1304a080 Distribute splash screen sample mpg.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30756 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 17:26:27 +00:00
Włodzimierz Skiba
6bb44116c2 wxUSE_SLIDER=0 fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30755 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 16:08:12 +00:00
Włodzimierz Skiba
455a9ca633 wxMediaCtrl in wxSplashScreen presentation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30754 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 15:49:40 +00:00
Włodzimierz Skiba
f730d6df2e Should be binary.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30753 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 15:46:53 +00:00
Włodzimierz Skiba
b1096e4573 wxMediaCtrl in wxSplashScreen presentation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30752 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 15:43:56 +00:00
Robert Roebling
0cf3b5429a Applied patch to stop crashing the tree control
when deleting a selected item. Also does something
   to the inplace edit control.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30751 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 15:03:28 +00:00
Robert Roebling
ad68ed32f7 Applied patch to remoce surplus text update evevt.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30750 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 14:51:44 +00:00
Robert Roebling
a9e003065d Applied kill patch (proper return value testing).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30749 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 14:38:49 +00:00
Włodzimierz Skiba
fc84bd0570 Expression simplifications for scaling and inflating.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30748 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 14:18:20 +00:00
Włodzimierz Skiba
11085e4baf Let's really remove border.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30747 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 14:01:47 +00:00
Jouk Jansen
44f3342ecc Committing in .
OpenVMS changes

 Modified Files:
	wxWidgets/descrip.mms wxWidgets/setup.h_vms
 	wxWidgets/src/common/descrip.mms
 	wxWidgets/src/unix/descrip.mms
 ----------------------------------------------------------------------


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30746 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 10:25:41 +00:00
Robin Dunn
c220a8ec4f More DLL build fixes for wxMediaCtrl
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30745 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-24 00:07:45 +00:00
Václav Slavík
f3613896af compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30744 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 21:01:00 +00:00
Włodzimierz Skiba
0e871ad039 Fixes for wxUSE_SPIN... == 0.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30743 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 20:08:56 +00:00
Włodzimierz Skiba
44d60c0b26 Fix for assert after left click on tree in generic dir dialog in native MSW build. Source cleaning and readability fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30742 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 19:58:47 +00:00
Robin Dunn
f05ebffd6b wxBookCtrl --> wxBookCtrlBase
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30741 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 18:43:26 +00:00
Robin Dunn
32bf5e4a38 wxPageSetupDialog no longer derives from wxDialog
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30740 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 18:20:41 +00:00
Robin Dunn
1c272b5d9e wxBookCtrl --> wxBookCtrlBase
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30739 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 18:20:03 +00:00
Robin Dunn
a3c9f0642c docstring
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30738 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 18:19:25 +00:00
Włodzimierz Skiba
b5a5b77df0 Be in sync with wxW version.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30737 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 17:40:26 +00:00
Julian Smart
4f6b4292aa Calculate better height for toolbar (add borders)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30736 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 16:51:15 +00:00
David Elliott
0a1390c7d8 Seek calls take an offset which can validly be negative. Use >= LONG_MIN not 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30735 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 16:22:43 +00:00
Vadim Zeitlin
6ab3c239ea regenerated
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30734 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 15:00:58 +00:00
Ryan Norton
316d19aca0 a stab at a dll fix for media lib
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30733 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 14:56:03 +00:00
Chris Elliott
fb88ba480b SF patch 1067466
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30732 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 14:54:38 +00:00
Ryan Norton
8f0ff17851 [ 1070686 ] wxOutputStream::Close()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30731 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 14:26:10 +00:00
Ryan Norton
95662a8379 Lots and lots and lots of MSVC fixes for archive stuff, some stuff from patch 1071373
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30730 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 13:49:43 +00:00
Dimitri Schoolwerth
36b79d445d fixed #includes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30729 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 12:53:57 +00:00
Vadim Zeitlin
b01a88e050 don't show the status bar after restoring normal view after full screen if it had been hidden all along (bug 1071354); code cleanup: removed unused variables, reduced #ifdefs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30728 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 12:53:34 +00:00
Ryan Norton
ff2b312fc8 dll fixes for media lib
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30727 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 12:46:51 +00:00
Vadim Zeitlin
1d55654928 update from Tsolakos Stavros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30726 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 12:29:53 +00:00
Włodzimierz Skiba
1af34108c4 wxCHB<->wxNB flags switch fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30725 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 12:02:15 +00:00
Włodzimierz Skiba
3e1a5afdd2 wxBookCtrl->wxBookCtrlBase. wxBookCtrl is now most suitable book for given platform. Samples adjustement.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 11:51:50 +00:00
Włodzimierz Skiba
61c083e781 wxBookCtrl->wxBookCtrlBase. wxBookCtrl is now most suitable book for given platform. Samples adjustement.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 11:45:07 +00:00
Julian Smart
13e175eafc Changed GPL to wxWindows Licence
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30722 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 09:54:12 +00:00
Vadim Zeitlin
8329fea8ad rebaked after adding src/tiff/tif_color.c
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30721 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-23 08:46:26 +00:00
Robin Dunn
b6176ab722 Fixes for DemoCodeEditor for when there is no STC available.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30720 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 22:31:04 +00:00
Vadim Zeitlin
f616aec7dc don't apply tab control background when using wxUniv, it renders background itself
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30719 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 22:19:34 +00:00
Robert Roebling
cffcf831ad Work in progress on printing stuff.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30718 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 21:50:31 +00:00
Julian Smart
6442cf6b20 Added licence line
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30717 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 21:07:50 +00:00
Julian Smart
ab4d1ea9cd Licence line
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30715 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 20:57:03 +00:00
Julian Smart
2422dcbcb0 Licence for Lacheck unclear, so removing from CVS
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30714 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 20:50:14 +00:00
David Elliott
90d3f91a04 Set m_minWidth, m_minHeight so that GetBestSize() works properly.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30713 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 20:41:04 +00:00
Julian Smart
053950ae73 Added missing licence line
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30712 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 20:40:22 +00:00
Julian Smart
a75d986396 Licence correction
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30711 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 20:28:28 +00:00
Julian Smart
c6afb815cf Fixed licence lines
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30709 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 20:22:27 +00:00
David Elliott
7bf8eb78aa Do not move the wxMDIParentFrame to (-10000,-10000) if it has a toolbar.
NOTE: Ideally the toolbar would be moved internally to wxMac into its own
floating frame and then the question of whether the parent frame should be
hidden would be one of "does it not have controls OTHER than a toolbar?"


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30708 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 20:19:37 +00:00
David Elliott
0bba37f51d Fix centering of top-level children of wxMDIParentFrame on Mac
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30706 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 20:10:53 +00:00
Julian Smart
58b9c9badd Added wxWindows licence to match other files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30705 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 20:10:26 +00:00
Julian Smart
05aa8cf3ef Added accidentally omitted license to match source files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30704 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 20:05:26 +00:00
Julian Smart
9838b28444 Doesn't conform to license conditions, so removing
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30703 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 19:57:59 +00:00
Julian Smart
4188e09243 Removed unnecessary files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30701 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 19:52:14 +00:00
Włodzimierz Skiba
f0fb3b3b60 GCC fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30700 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 19:32:37 +00:00
Włodzimierz Skiba
51e298bbbb GCC fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30698 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 17:48:33 +00:00
Włodzimierz Skiba
f9df3f0586 Warning fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30697 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 17:45:20 +00:00
Vadim Zeitlin
f43707413a (blind) fix for GTK2/Unicode crashes when copying text to the clipboard
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30696 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 17:37:58 +00:00
Ryan Norton
53638fe05b guess to get initial font selection working on OSX 10.3
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30695 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 17:18:58 +00:00
Kevin Hock
c2094564d7 At least under GTK2, we do not need m_widget->window to be non-NULL in order to successfully change the background colour
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30694 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 16:37:27 +00:00
Julian Smart
2faa8e74b5 Note about copy ctor
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30693 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 16:37:10 +00:00
Vadim Zeitlin
bb180f9057 compilation fix for USE_PCH == 0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30692 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 16:22:12 +00:00
Ryan Norton
6d5a34485b delete-->delete[]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30691 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 16:02:26 +00:00
Julian Smart
706fb8932a Changed Rocketeer licence to wxWindows licence, by authorisation
of the copyright holder, Johnny C. Norris II


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30690 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 15:55:34 +00:00
Włodzimierz Skiba
724d491f1d Empty line at the end.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30689 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 15:12:29 +00:00
Włodzimierz Skiba
9f9f75b380 Fix the assert of not reset highlighted menu item pointer.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30688 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 12:36:07 +00:00
Ryan Norton
18591f2f81 PutChar doc
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30687 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 05:25:13 +00:00
Ryan Norton
c5d99d7b5c UNICODE-capatable UTF8 implementation of wxStringXXXStream
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30686 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 05:05:04 +00:00
Ryan Norton
8899b155a1 [ 1068188 ] Precompiled header for the test program [Modified a bit]
Regen bakefiles for unit tests


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30685 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 05:00:19 +00:00
Kevin Hock
955f0add89 The presence of the effects controls (i.e. color) should not depend on whether or not a color is present in the font data, but rather whether or not EnableEffects is true or false
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30684 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-21 19:57:44 +00:00
Ryan Norton
8c6be1a881 Unicode logic fixes for AddEntries
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30683 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-21 19:21:17 +00:00
Ryan Norton
0868a03009 Hack around MSVC 6 for forward declarators (from Mike W)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30682 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-21 18:59:36 +00:00
Ryan Norton
ba8546912d wxTextOutputStream::PutChar and text stream test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30681 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-21 18:26:38 +00:00
Ryan Norton
2c09fb3b8b wxMemxxx --> wxTmemxxx, get rid of wxdocmpxxx impossible case
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30680 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-21 17:44:40 +00:00
Ryan Norton
4130044adf Remove silly include (from me I guess :))
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30679 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-21 17:11:38 +00:00
Ryan Norton
56863b1608 MSVC 6 compilo fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30678 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-21 17:10:25 +00:00
Vadim Zeitlin
39ccbf9a31 fix for a crash with wxUSE_STL == 1: test for failed conversion in GetValue()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30677 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-21 12:21:14 +00:00
Robin Dunn
891bb1943f reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30676 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-21 00:51:22 +00:00
Robin Dunn
148275d324 Make the event ID used for wx.CallAfter be an attribute of the app so
when and addition all wx.App objects are created a new ID will be
generated.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30675 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-21 00:49:01 +00:00
Robin Dunn
b0cafb9172 Make the event ID used for wx.CallAfter be an attribute of the app so
when and addition all wx.App objects are created a new ID will be
generated.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30674 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-21 00:43:38 +00:00
Robin Dunn
fc71d09b42 reSWIGged
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30673 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-21 00:29:20 +00:00
Robert Roebling
06cfd325c3 Huurrayy, the GNOME page setup dialog is
broken in its native version. All the
   fuss for nothing.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30672 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-20 23:11:40 +00:00
Robin Dunn
5f21cfa9f9 Fix wxInputStream out typemap to allow SWIG to determine if thisown
should be set or not.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30671 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-20 22:02:29 +00:00
Robert Roebling
891daf8c1e Forgot to commit this one.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30670 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-20 14:50:55 +00:00
Robert Roebling
08680429a2 Made wxPageSetupDialog a pimpl implementation.
Added a few clean-ups.
  Added native GNOME page setup dialog.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30669 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-20 14:46:25 +00:00
Václav Slavík
14470b4477 unzip.h is no longer needed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30668 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-20 11:13:31 +00:00
Václav Slavík
48ccbb3859 don't use precompiled headers with dosyacc.c
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30667 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-20 11:10:47 +00:00
111 changed files with 6297 additions and 38896 deletions

View File

@@ -1,4 +0,0 @@
tiffM*Data
tiffM5.mcp
Debug
Release

View File

@@ -1,21 +0,0 @@
Copyright (c) 1988-1997 Sam Leffler
Copyright (c) 1991-1997 Silicon Graphics, Inc.
Permission to use, copy, modify, distribute, and sell this software and
its documentation for any purpose is hereby granted without fee, provided
that (i) the above copyright notices and this permission notice appear in
all copies of the software and related documentation, and (ii) the names of
Sam Leffler and Silicon Graphics may not be used in any advertising or
publicity relating to the software without the specific, prior written
permission of Sam Leffler and Silicon Graphics.
THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
OF THIS SOFTWARE.

View File

@@ -1,229 +0,0 @@
#
# File: makefile.vc
# Author: David Webster
# Created: 2000
# Updated:
# Copyright: c) 2000, BHM
#
# "%W% %G%"
#
# Makefile : Builds os2tiff.lib library for OS/2 3.0/4.0
# Suffixes
OBJSUFF=obj
SRCSUFF=cpp
OS2FLAGS=/c /W2 /DOS232 /D__VISAGECPP__ /D__VISAGECPP30__ /DOS2_32 /Tdc /Q /N100
OS2LINKFLAGS=/BASE:0x00010000 /PMTYPE:PM /NOE /NOD /ALIGN:16
OS2LIBFLAGS=/NOL /NOE
OS2LIBS=CPPOM30.lib CPPOOC3.LIB OS2386.LIB
!if "$(WXMAKINGDLL)" != "0"
EXTRADLLFLAGS=/DWXMAKINGDLL=1 /Ge- /D__OS2DLL__
EXTRALNKFLAGS=/DLL
!endif
# Change WXDIR or WXWIN to wherever wxWindows is found
WXDIR = $(WXWIN)
OS2TIFFDIR=$(WXDIR)\src\tiff
OS2TIFFINC=$(WINTIFFDIR)
OS2TIFFLIB=$(WXDIR)\lib\os2tiff.lib
!if "$(WXMAKINGDLL)" != "1"
OS2TIFFLIB=$(WXDIR)\lib\os2tiff.lib
!else
OS2TIFFLIB=$(WXDIR)\lib\os2tiff.dll
!endif
INC=-I$(WXDIR)\src\TIFF -I$(OS2TIFFINC)
!ifndef FINAL
FINAL=0
!endif
!if "$(NOPCH)" == "1"
PCH=
PRECOMP=
MAKEPRECOMP=
!else
PCH=$(WXLIBNAME).pch
PRECOMP=/Si$(PCH)
MAKEPRECOMP=/Fi$(PCH)
!endif
!if "$(FINAL)" == "0"
!if "$(WXMAKINGDLL)" == "1"
D=DebugOS2DLL
!else
D=DebugOS2
!endif
OPT =
DEBUG_FLAGS= /Ti /D__WXDEBUG__ #/Fb
LINK_DEBUG_FLAGS=/DEBUG
CRTFLAG=/Gm /Gd
!else
# /O1 - smallest code
# /O2 - fastest code
!if "$(WXMAKINGDLL)" == "1"
D=RelseOS2DLL
!else
D=RelseOS2
!endif
OPT = /O+ /Oc /G5
DEBUG_FLAGS=
LINK_DEBUG_FLAGS=/RELEASE
CRTFLAG=/Gm /Gd
!endif
!if [md $(OS2TIFFDIR)\$D]
!endif
CPPFLAGS=$(OS2FLAGS) $(EXTRADLLFLAGS) $(DEBUG_FLAGS) $(PRECOMP) $(INC) $(OPT) $(CRTFLAG)
LINKFKAGS=$(OS2LINKFLAGS) $(EXTRALNKFLAGS)
{..\tiff}.c{..\tiff\$D}.obj:
@echo $<
icc @<<
$(CPPFLAGS) /Fo$@ /Tp $<
<<
OBJECTS = \
..\tiff\$D\tif_aux.obj \
..\tiff\$D\tif_close.obj \
..\tiff\$D\tif_codec.obj \
..\tiff\$D\tif_compress.obj \
..\tiff\$D\tif_dir.obj \
..\tiff\$D\tif_dirinfo.obj \
..\tiff\$D\tif_dirread.obj \
..\tiff\$D\tif_dirwrite.obj \
..\tiff\$D\tif_dumpmode.obj \
..\tiff\$D\tif_error.obj \
..\tiff\$D\tif_fax3.obj \
..\tiff\$D\tif_fax3sm.obj \
..\tiff\$D\tif_flush.obj \
..\tiff\$D\tif_getimage.obj \
..\tiff\$D\tif_jpeg.obj \
..\tiff\$D\tif_luv.obj \
..\tiff\$D\tif_lzw.obj \
..\tiff\$D\tif_next.obj \
..\tiff\$D\tif_open.obj \
..\tiff\$D\tif_os2.obj \
..\tiff\$D\tif_packbits.obj \
..\tiff\$D\tif_pixarlog.obj \
..\tiff\$D\tif_predict.obj \
..\tiff\$D\tif_print.obj \
..\tiff\$D\tif_read.obj \
..\tiff\$D\tif_strip.obj \
..\tiff\$D\tif_swab.obj \
..\tiff\$D\tif_thunder.obj \
..\tiff\$D\tif_tile.obj \
..\tiff\$D\tif_version.obj \
..\tiff\$D\tif_warning.obj \
..\tiff\$D\tif_write.obj \
..\tiff\$D\tif_zip.obj
LIBOBJECTS = \
tif_aux.obj \
tif_close.obj \
tif_codec.obj \
tif_compress.obj \
tif_dir.obj \
tif_dirinfo.obj \
tif_dirread.obj \
tif_dirwrite.obj \
tif_dumpmode.obj \
tif_error.obj \
tif_fax3.obj \
tif_fax3sm.obj \
tif_flush.obj \
tif_getimage.obj \
tif_jpeg.obj \
tif_luv.obj \
tif_lzw.obj \
tif_next.obj \
tif_open.obj \
tif_os2.obj \
tif_packbits.obj \
tif_pixarlog.obj \
tif_predict.obj \
tif_print.obj \
tif_read.obj \
tif_strip.obj \
tif_swab.obj \
tif_thunder.obj \
tif_tile.obj \
tif_version.obj \
tif_warning.obj \
tif_write.obj \
tif_zip.obj
all: $(OBJECTS) $(OS2TIFFLIB)
!if "$(WXMAKINGDLL)" != "1"
$(WXDIR)\lib\os2tiff.lib: $(LIBOBJECTS)
touch $(WXDIR)\lib\os2tiff.lib
del $(WXDIR)\lib\os2tiff.lib
ilib $(OS2LIBFLAGS) $@ @<<
$**;
<<
del *.obj
!else
# Update the dynamic link library
$(WXDIR)\lib\os2tiff.dll: $(OBJECTS)
icc @<<
/B" $(LINKFLAGS)" /Fe$@
$(LIBS)
$(OBJECTS)
$(WXDIR)\src\os2\os2tiff.def
<<
implib $(WXDIR)\lib\os2tiffd.lib $(WXDIR)\src\os2\os2tiff.def
!endif
clean:
del $(OS2TIFFLIB)
erase /N $(OS2TIFFDIR)\$D
rd $(OS2TIFFDIR)\$D
cleanall: clean
$(LIBOBJECTS):
copy ..\tiff\$D\tif_aux.obj
copy ..\tiff\$D\tif_close.obj
copy ..\tiff\$D\tif_codec.obj
copy ..\tiff\$D\tif_compress.obj
copy ..\tiff\$D\tif_dir.obj
copy ..\tiff\$D\tif_dirinfo.obj
copy ..\tiff\$D\tif_dirread.obj
copy ..\tiff\$D\tif_dirwrite.obj
copy ..\tiff\$D\tif_dumpmode.obj
copy ..\tiff\$D\tif_error.obj
copy ..\tiff\$D\tif_fax3.obj
copy ..\tiff\$D\tif_fax3sm.obj
copy ..\tiff\$D\tif_flush.obj
copy ..\tiff\$D\tif_getimage.obj
copy ..\tiff\$D\tif_jpeg.obj
copy ..\tiff\$D\tif_luv.obj
copy ..\tiff\$D\tif_lzw.obj
copy ..\tiff\$D\tif_next.obj
copy ..\tiff\$D\tif_open.obj
copy ..\tiff\$D\tif_os2.obj
copy ..\tiff\$D\tif_packbits.obj
copy ..\tiff\$D\tif_pixarlog.obj
copy ..\tiff\$D\tif_predict.obj
copy ..\tiff\$D\tif_print.obj
copy ..\tiff\$D\tif_read.obj
copy ..\tiff\$D\tif_strip.obj
copy ..\tiff\$D\tif_swab.obj
copy ..\tiff\$D\tif_thunder.obj
copy ..\tiff\$D\tif_tile.obj
copy ..\tiff\$D\tif_version.obj
copy ..\tiff\$D\tif_warning.obj
copy ..\tiff\$D\tif_write.obj
copy ..\tiff\$D\tif_zip.obj

View File

@@ -1,129 +0,0 @@
# $Header$
#
# Tag Image File Format Library
#
# Copyright (c) 1988-1997 Sam Leffler
# Copyright (c) 1991-1997 Silicon Graphics, Inc.
#
# Permission to use, copy, modify, distribute, and sell this software and
# its documentation for any purpose is hereby granted without fee, provided
# that (i) the above copyright notices and this permission notice appear in
# all copies of the software and related documentation, and (ii) the names of
# Sam Leffler and Silicon Graphics may not be used in any advertising or
# publicity relating to the software without the specific, prior written
# permission of Stanford and Silicon Graphics.
#
# THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
# EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
# WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
#
# IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
# ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
# OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
# WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
# LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
# OF THIS SOFTWARE.
#
DESTDIR=.
#
INSTALL=install
NULL=
IPATH= -I. -I../jpeg
CONF_LIBRARY=\
${NULL}
COPTS= -Oloop -cwagshf -d1 -b0 -v -DNDEBUG -rr -j135i
CFLAGS= ${COPTS} ${IPATH} ${CONF_LIBRARY}
#
INCS= tiff.h tiffio.h
SRCS= tif_fax3.c \
tif_fax4.c \
tif_aux.c \
tif_atari.c \
tif_ccittrle.c \
tif_close.c \
tif_compress.c \
tif_dir.c \
tif_dirinfo.c \
tif_dirread.c \
tif_dirwrite.c \
tif_dumpmode.c \
tif_error.c \
tif_getimage.c \
tif_jpeg.c \
tif_flush.c \
tif_lzw.c \
tif_next.c \
tif_open.c \
tif_packbits.c \
tif_print.c \
tif_read.c \
tif_swab.c \
tif_strip.c \
tif_thunder.c \
tif_tile.c \
tif_version.c \
tif_warning.c \
tif_write.c \
${NULL}
OBJS= tif_fax3.o \
tif_fax4.o \
tif_aux.o \
tif_atari.o \
tif_ccittrle.o \
tif_close.o \
tif_compress.o \
tif_dir.o \
tif_dirinfo.o \
tif_dirread.o \
tif_dirwrite.o \
tif_dumpmode.o \
tif_error.o \
tif_getimage.o \
tif_jpeg.o \
tif_flush.o \
tif_lzw.o \
tif_next.o \
tif_open.o \
tif_packbits.o \
tif_print.o \
tif_read.o \
tif_swab.o \
tif_strip.o \
tif_thunder.o \
tif_tile.o \
tif_version.o \
tif_warning.o \
tif_write.o \
${NULL}
ALL= tiffrnb.lib
all: ${ALL}
${ALL}: ${OBJS}
${AR} ${ARFLAGS} $@ r $<
${OBJS}: tiffio.h tiff.h tiffcomp.h tiffiop.h tiffconf.h
tif_fax3.o: tif_fax3.c g3states.h t4.h tif_fax3.h
g3states.h: mkg3states.c t4.h
${CC} -o mkg3states.ttp ${CFLAGS} mkg3states.c
./mkg3states -c > g3states.h
install: all installh
-for i in ${ALL}; do \
${INSTALL} -c -m 644 $$i ${DESTDIR}/lib/$$i; \
done
installh: ${INCS}
-for i in ${INCS}; do \
h=`basename $$i`; \
cmp -s $$i ${DESTDIR}/include/$$h || \
${INSTALL} -c -m 444 $$i ${DESTDIR}/include/$$h; \
done
clean:
rm -f ${ALL} ${OBJS} mkg3states.ttp mkg3states.o g3states.h
tags: ${SRCS}
${CTAGS} ${SRCS}

View File

@@ -1,61 +0,0 @@
$Header$
TIFF Software Distribution
--------------------------
This file is just a placeholder; all the documentation is now in
HTML in the html directory. To view the documentation point your
favorite WWW viewer at html/index.html; e.g.
netscape html/index.html
If you don't have an HTML viewer then you can read the HTML source
or fetch a PostScript version of this documentation from the directory
ftp://ftp.sgi.com/graphics/tiff/doc
If you can't hack either of these options then basically what you
want to do is:
% ./configure
% make
% su
# make install
If that doesn't do what you want, or something isn't clear then
sorry, but you're SOL.
Sam Leffler (sam@engr.sgi.com)
Use and Copyright
-----------------
Silicon Graphics has seen fit to allow me to give this work away. It
is free. There is no support or guarantee of any sort as to its
operations, correctness, or whatever. If you do anything useful with
all or parts of it you need to honor the copyright notices. I would
also be interested in knowing about it and, hopefully, be acknowledged.
The legal way of saying that is:
Copyright (c) 1988-1997 Sam Leffler
Copyright (c) 1991-1997 Silicon Graphics, Inc.
Permission to use, copy, modify, distribute, and sell this software and
its documentation for any purpose is hereby granted without fee, provided
that (i) the above copyright notices and this permission notice appear in
all copies of the software and related documentation, and (ii) the names of
Sam Leffler and Silicon Graphics may not be used in any advertising or
publicity relating to the software without the specific, prior written
permission of Sam Leffler and Silicon Graphics.
THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
OF THIS SOFTWARE.

View File

@@ -1,7 +0,0 @@
# $Header$
o tiffcmp read data by strip/tile instead of scanline
o YCbCr sampling support
o extracate colorspace conversion support
o look at isolating all codecs from TIFF library
o JPEG colormode order dependency problem

View File

@@ -1 +0,0 @@
3.6.1-2

File diff suppressed because it is too large Load Diff

View File

@@ -1,102 +0,0 @@
LIBRARY libtiff
EXPORTS TIFFOpen
TIFFGetVersion
TIFFClose
TIFFFlush
TIFFFlushData
TIFFGetField
TIFFVGetField
TIFFGetFieldDefaulted
TIFFVGetFieldDefaulted
TIFFGetTagListEntry
TIFFGetTagListCount
TIFFReadDirectory
TIFFScanlineSize
TIFFStripSize
TIFFVStripSize
TIFFRawStripSize
TIFFTileRowSize
TIFFTileSize
TIFFVTileSize
TIFFFileno
TIFFGetMode
TIFFIsTiled
TIFFIsByteSwapped
TIFFCIELabToRGBInit
TIFFCIELabToXYZ
TIFFXYZToRGB
TIFFYCbCrToRGBInit
TIFFYCbCrtoRGB
TIFFCurrentRow
TIFFCurrentDirectory
TIFFCurrentStrip
TIFFCurrentTile
TIFFDataWidth
TIFFReadBufferSetup
TIFFLastDirectory
TIFFSetDirectory
TIFFSetSubDirectory
TIFFUnlinkDirectory
TIFFSetField
TIFFVSetField
TIFFCheckpointDirectory
TIFFWriteDirectory
TIFFRewriteDirectory
TIFFPrintDirectory
TIFFReadScanline
TIFFWriteScanline
TIFFReadRGBAImage
TIFFReadRGBAImageOriented
TIFFPrintDirectory
TIFFReadScanline
TIFFWriteScanline
TIFFReadRGBAImage
TIFFFdOpen
TIFFClientOpen
TIFFFileName
TIFFError
TIFFWarning
TIFFSetErrorHandler
TIFFSetWarningHandler
TIFFComputeTile
TIFFCheckTile
TIFFNumberOfTiles
TIFFReadTile
TIFFWriteTile
TIFFComputeStrip
TIFFNumberOfStrips
TIFFRGBAImageBegin
TIFFRGBAImageEnd
TIFFReadEncodedStrip
TIFFReadRawStrip
TIFFReadEncodedTile
TIFFReadRawTile
TIFFReadRGBATile
TIFFReadRGBAStrip
TIFFWriteEncodedStrip
TIFFWriteRawStrip
TIFFWriteEncodedTile
TIFFWriteRawTile
TIFFSetWriteOffset
TIFFSwabDouble
TIFFSwabShort
TIFFSwabLong
TIFFSwabArrayOfShort
TIFFSwabArrayOfLong
TIFFSwabArrayOfDouble
TIFFReverseBits
TIFFGetBitRevTable
TIFFDefaultStripSize
TIFFDefaultTileSize
TIFFRasterScanlineSize
_TIFFmalloc
_TIFFrealloc
_TIFFfree
_TIFFmemset
_TIFFmemcpy
_TIFFmemcmp
TIFFCreateDirectory
TIFFDefaultStripSize

View File

@@ -1,54 +0,0 @@
##############################################################################
# Name: src/tiff/makefile.sc
# Purpose: build tiff Digital Mars 8.33 compiler
# Author: Chris Elliott
# Created: 21.01.03
# RCS-ID: $Id$
# Licence: wxWindows licence
##############################################################################
WXDIR = ..\..
include $(WXDIR)\src\makesc.env
LIBTARGET=$(WXDIR)\lib\tiff$(SC_SUFFIX).lib
THISDIR=$(WXDIR)\src\tiff
# variables
OBJECTS = \
$(THISDIR)\tif_aux.obj \
$(THISDIR)\tif_close.obj \
$(THISDIR)\tif_codec.obj \
$(THISDIR)\tif_compress.obj \
$(THISDIR)\tif_dir.obj \
$(THISDIR)\tif_dirinfo.obj \
$(THISDIR)\tif_dirread.obj \
$(THISDIR)\tif_dirwrite.obj \
$(THISDIR)\tif_dumpmode.obj \
$(THISDIR)\tif_error.obj \
$(THISDIR)\tif_fax3.obj \
$(THISDIR)\tif_fax3sm.obj \
$(THISDIR)\tif_flush.obj \
$(THISDIR)\tif_getimage.obj \
$(THISDIR)\tif_jpeg.obj \
$(THISDIR)\tif_luv.obj \
$(THISDIR)\tif_lzw.obj \
$(THISDIR)\tif_next.obj \
$(THISDIR)\tif_open.obj \
$(THISDIR)\tif_packbits.obj \
$(THISDIR)\tif_pixarlog.obj \
$(THISDIR)\tif_predict.obj \
$(THISDIR)\tif_print.obj \
$(THISDIR)\tif_read.obj \
$(THISDIR)\tif_strip.obj \
$(THISDIR)\tif_swab.obj \
$(THISDIR)\tif_thunder.obj \
$(THISDIR)\tif_tile.obj \
$(THISDIR)\tif_version.obj \
$(THISDIR)\tif_warning.obj \
$(THISDIR)\tif_win32.obj \
$(THISDIR)\tif_write.obj \
$(THISDIR)\tif_zip.obj \
include $(WXDIR)\src\makelib.sc

View File

@@ -1,93 +0,0 @@
#
# Simple MS VC++ Makefile
#
# To build:
# C:\libtiff\libtiff> nmake /f makefile.vc all
#
#
# Select _CONSOLE to build a library which reports errors to stderr, or
# _WINDOWED to build such that errors are reported via MessageBox().
#
WINMODE = -DTIF_PLATFORM_CONSOLE
#WINMODE = -DTIF_PLATFORM_WINDOWED
# Uncomment and edit following lines to enable JPEG support
#JPEG_SUPPORT = 1
#JPEGDIR = d:/projects/jpeg-6b
CC = cl
INCL = -I.
LIBS =
EXTRAFLAGS =
!IFDEF JPEG_SUPPORT
INCL = $(INCL) -I$(JPEGDIR)
EXTRAFLAGS = $(EXTRAFLAGS) -DJPEG_SUPPORT
!ENDIF
CFLAGS = /nologo /W3 $(INCL) $(WINMODE) $(EXTRAFLAGS)
OBJ = \
tif_aux.obj \
tif_close.obj \
tif_codec.obj \
tif_color.obj \
tif_compress.obj \
tif_dir.obj \
tif_dirinfo.obj \
tif_dirread.obj \
tif_dirwrite.obj \
tif_dumpmode.obj \
tif_error.obj \
tif_extension.obj \
tif_fax3.obj \
fax3sm_winnt.obj \
tif_getimage.obj \
tif_jpeg.obj \
tif_ojpeg.obj \
tif_flush.obj \
tif_luv.obj \
tif_lzw.obj \
tif_next.obj \
tif_open.obj \
tif_packbits.obj \
tif_pixarlog.obj \
tif_predict.obj \
tif_print.obj \
tif_read.obj \
tif_swab.obj \
tif_strip.obj \
tif_thunder.obj \
tif_tile.obj \
tif_win32.obj \
tif_version.obj \
tif_warning.obj \
tif_write.obj \
tif_zip.obj
VERSION = ..\VERSION
ALPHA = ..\dist\tiff.alpha
default: libtiff.lib
all: libtiff.lib libtiff.dll
libtiff.lib: tiffvers.h $(OBJ)
lib /out:libtiff.lib $(OBJ)
libtiff.dll: $(OBJ)
link /dll /def:libtiff.def /out:libtiff.dll /implib:libtiff_i.lib \
$(OBJ) $(LIBS)
tiffvers.h: $(VERSION) mkversion.c
$(CC) mkversion.c
if exist tiffvers.h del tiffvers.h
.\mkversion.exe -v $(VERSION) tiffvers.h
clean:
del *.obj *.lib libtiff.dll
tif_version.obj: tiffvers.h

View File

@@ -1,165 +0,0 @@
#!/binb/wmake.exe
#
# File: makefile.wat
# Author: Julian Smart
# Created: 1998
# Changelist: 2003-02-25 - Juergen Ulbts - update from wxWindows 2.5.x/HEAD branch
#
# Makefile : Builds TIFF library for Watcom C++, WIN32
# This makefile has to rename files because apparently Watcom C++
# can't deal with greater than 8.3 filenames (can't
# make tif_close.c, for example)
WXDIR = ..\..
EXTRACPPFLAGS=-i=..\zlib
!include $(WXDIR)\src\makewat.env
# set RENAME to 1 to rename the files to the short names -- this is needed
# with older Watcom versions
# RENAME=1
!ifeq RENAME 1
TIFF=
EXTRACPPFLAGS+=-dwxUSE_SHORTNAMES
!else
TIFF=tif_
!endif
WXLIB = $(WXDIR)\lib
LIBTARGET = $(WXLIB)\tiff$(WATCOM_SUFFIX).lib
OBJECTS= &
!ifeq RENAME 1
$(OUTPUTDIR)\_aux.obj &
!else
$(OUTPUTDIR)\tif_aux.obj &
!endif
$(OUTPUTDIR)\$(TIFF)close.obj &
$(OUTPUTDIR)\$(TIFF)codec.obj &
$(OUTPUTDIR)\$(TIFF)compress.obj &
$(OUTPUTDIR)\$(TIFF)dir.obj &
$(OUTPUTDIR)\$(TIFF)dirinfo.obj &
$(OUTPUTDIR)\$(TIFF)dirread.obj &
$(OUTPUTDIR)\$(TIFF)dirwrite.obj &
$(OUTPUTDIR)\$(TIFF)dumpmode.obj &
$(OUTPUTDIR)\$(TIFF)error.obj &
$(OUTPUTDIR)\$(TIFF)fax3.obj &
$(OUTPUTDIR)\$(TIFF)fax3sm.obj &
$(OUTPUTDIR)\$(TIFF)flush.obj &
$(OUTPUTDIR)\$(TIFF)getimage.obj &
$(OUTPUTDIR)\$(TIFF)jpeg.obj &
$(OUTPUTDIR)\$(TIFF)luv.obj &
$(OUTPUTDIR)\$(TIFF)lzw.obj &
$(OUTPUTDIR)\$(TIFF)next.obj &
$(OUTPUTDIR)\$(TIFF)open.obj &
$(OUTPUTDIR)\$(TIFF)packbits.obj &
$(OUTPUTDIR)\$(TIFF)pixarlog.obj &
$(OUTPUTDIR)\$(TIFF)predict.obj &
$(OUTPUTDIR)\$(TIFF)print.obj &
$(OUTPUTDIR)\$(TIFF)read.obj &
$(OUTPUTDIR)\$(TIFF)strip.obj &
$(OUTPUTDIR)\$(TIFF)swab.obj &
$(OUTPUTDIR)\$(TIFF)thunder.obj &
$(OUTPUTDIR)\$(TIFF)tile.obj &
$(OUTPUTDIR)\$(TIFF)version.obj &
$(OUTPUTDIR)\$(TIFF)warning.obj &
$(OUTPUTDIR)\$(TIFF)win32.obj &
$(OUTPUTDIR)\$(TIFF)write.obj &
$(OUTPUTDIR)\$(TIFF)zip.obj
all: $(OUTPUTDIR) $(RENAME) $(LIBTARGET) .SYMBOLIC
!ifeq RENAME 1
rename: .SYMBOLIC
copy tif_predict.h tif_pred.h
copy tif_aux.c _aux.c
copy tif_close.c close.c
copy tif_codec.c codec.c
copy tif_compress.c compress.c
copy tif_dir.c dir.c
copy tif_dirinfo.c dirinfo.c
copy tif_dirread.c dirread.c
copy tif_dirwrite.c dirwrite.c
copy tif_dumpmode.c dumpmode.c
copy tif_error.c error.c
copy tif_fax3.c fax3.c
copy tif_fax3sm.c fax3sm.c
copy tif_flush.c flush.c
copy tif_getimage.c getimage.c
copy tif_jpeg.c jpeg.c
copy tif_luv.c luv.c
copy tif_lzw.c lzw.c
copy tif_next.c next.c
copy tif_open.c open.c
copy tif_packbits.c packbits.c
copy tif_pixarlog.c pixarlog.c
copy tif_predict.c predict.c
copy tif_print.c print.c
copy tif_read.c read.c
copy tif_strip.c strip.c
copy tif_swab.c swab.c
copy tif_thunder.c thunder.c
copy tif_tile.c tile.c
copy tif_version.c version.c
copy tif_warning.c warning.c
copy tif_win32.c win32.c
copy tif_write.c write.c
copy tif_zip.c zip.c
!endif
$(OUTPUTDIR):
@if not exist $^@ mkdir $^@
LBCFILE=$(OUTPUTDIR)\tiff.lbc
$(LIBTARGET) : $(OBJECTS)
%create $(LBCFILE)
@for %i in ( $(OBJECTS) ) do @%append $(LBCFILE) +%i
wlib /q /b /c /n /p=512 $^@ @$(LBCFILE)
clean: .SYMBOLIC
-erase *.obj
-erase $(LIBTARGET)
-erase *.pch
-erase *.err
-erase *.lbc
!ifeq RENAME 1
-erase tif_pred.h
-erase _aux.c
-erase close.c
-erase codec.c
-erase compress.c
-erase dir.c
-erase dirinfo.c
-erase dirread.c
-erase dirwrite.c
-erase dumpmode.c
-erase error.c
-erase fax3.c
-erase fax3sm.c
-erase flush.c
-erase getimage.c
-erase jpeg.c
-erase luv.c
-erase lzw.c
-erase next.c
-erase open.c
-erase packbits.c
-erase pixarlog.c
-erase predict.c
-erase print.c
-erase read.c
-erase strip.c
-erase swab.c
-erase thunder.c
-erase tile.c
-erase version.c
-erase warning.c
-erase win32.c
-erase write.c
-erase zip.c
!endif
cleanall: clean

Binary file not shown.

View File

@@ -1,436 +0,0 @@
/* "$Header$ */
/*
* Copyright (c) 1991-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/* Initialise fax decoder tables
* Decoder support is derived, with permission, from the code
* in Frank Cringle's viewfax program;
* Copyright (C) 1990, 1995 Frank D. Cringle.
*/
#if defined(unix) || defined(__unix)
#include "port.h"
#else
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#endif
#include "tif_fax3.h"
#define streq(a,b) (strcmp(a,b) == 0)
/* NB: can't use names in tif_fax3.h 'cuz they are declared const */
TIFFFaxTabEnt MainTable[128];
TIFFFaxTabEnt WhiteTable[4096];
TIFFFaxTabEnt BlackTable[8192];
struct proto {
uint16 code; /* right justified, lsb-first, zero filled */
uint16 val; /* (pixel count)<<4 + code width */
};
static struct proto Pass[] = {
{ 0x0008, 4 },
{ 0, 0 }
};
static struct proto Horiz[] = {
{ 0x0004, 3 },
{ 0, 0 }
};
static struct proto V0[] = {
{ 0x0001, 1 },
{ 0, 0 }
};
static struct proto VR[] = {
{ 0x0006, (1<<4)+3 },
{ 0x0030, (2<<4)+6 },
{ 0x0060, (3<<4)+7 },
{ 0, 0 }
};
static struct proto VL[] = {
{ 0x0002, (1<<4)+3 },
{ 0x0010, (2<<4)+6 },
{ 0x0020, (3<<4)+7 },
{ 0, 0 }
};
static struct proto Ext[] = {
{ 0x0040, 7 },
{ 0, 0 }
};
static struct proto EOLV[] = {
{ 0x0000, 7 },
{ 0, 0 }
};
static struct proto MakeUpW[] = {
{ 0x001b, 1029 },
{ 0x0009, 2053 },
{ 0x003a, 3078 },
{ 0x0076, 4103 },
{ 0x006c, 5128 },
{ 0x00ec, 6152 },
{ 0x0026, 7176 },
{ 0x00a6, 8200 },
{ 0x0016, 9224 },
{ 0x00e6, 10248 },
{ 0x0066, 11273 },
{ 0x0166, 12297 },
{ 0x0096, 13321 },
{ 0x0196, 14345 },
{ 0x0056, 15369 },
{ 0x0156, 16393 },
{ 0x00d6, 17417 },
{ 0x01d6, 18441 },
{ 0x0036, 19465 },
{ 0x0136, 20489 },
{ 0x00b6, 21513 },
{ 0x01b6, 22537 },
{ 0x0032, 23561 },
{ 0x0132, 24585 },
{ 0x00b2, 25609 },
{ 0x0006, 26630 },
{ 0x01b2, 27657 },
{ 0, 0 }
};
static struct proto MakeUpB[] = {
{ 0x03c0, 1034 },
{ 0x0130, 2060 },
{ 0x0930, 3084 },
{ 0x0da0, 4108 },
{ 0x0cc0, 5132 },
{ 0x02c0, 6156 },
{ 0x0ac0, 7180 },
{ 0x06c0, 8205 },
{ 0x16c0, 9229 },
{ 0x0a40, 10253 },
{ 0x1a40, 11277 },
{ 0x0640, 12301 },
{ 0x1640, 13325 },
{ 0x09c0, 14349 },
{ 0x19c0, 15373 },
{ 0x05c0, 16397 },
{ 0x15c0, 17421 },
{ 0x0dc0, 18445 },
{ 0x1dc0, 19469 },
{ 0x0940, 20493 },
{ 0x1940, 21517 },
{ 0x0540, 22541 },
{ 0x1540, 23565 },
{ 0x0b40, 24589 },
{ 0x1b40, 25613 },
{ 0x04c0, 26637 },
{ 0x14c0, 27661 },
{ 0, 0 }
};
static struct proto MakeUp[] = {
{ 0x0080, 28683 },
{ 0x0180, 29707 },
{ 0x0580, 30731 },
{ 0x0480, 31756 },
{ 0x0c80, 32780 },
{ 0x0280, 33804 },
{ 0x0a80, 34828 },
{ 0x0680, 35852 },
{ 0x0e80, 36876 },
{ 0x0380, 37900 },
{ 0x0b80, 38924 },
{ 0x0780, 39948 },
{ 0x0f80, 40972 },
{ 0, 0 }
};
static struct proto TermW[] = {
{ 0x00ac, 8 },
{ 0x0038, 22 },
{ 0x000e, 36 },
{ 0x0001, 52 },
{ 0x000d, 68 },
{ 0x0003, 84 },
{ 0x0007, 100 },
{ 0x000f, 116 },
{ 0x0019, 133 },
{ 0x0005, 149 },
{ 0x001c, 165 },
{ 0x0002, 181 },
{ 0x0004, 198 },
{ 0x0030, 214 },
{ 0x000b, 230 },
{ 0x002b, 246 },
{ 0x0015, 262 },
{ 0x0035, 278 },
{ 0x0072, 295 },
{ 0x0018, 311 },
{ 0x0008, 327 },
{ 0x0074, 343 },
{ 0x0060, 359 },
{ 0x0010, 375 },
{ 0x000a, 391 },
{ 0x006a, 407 },
{ 0x0064, 423 },
{ 0x0012, 439 },
{ 0x000c, 455 },
{ 0x0040, 472 },
{ 0x00c0, 488 },
{ 0x0058, 504 },
{ 0x00d8, 520 },
{ 0x0048, 536 },
{ 0x00c8, 552 },
{ 0x0028, 568 },
{ 0x00a8, 584 },
{ 0x0068, 600 },
{ 0x00e8, 616 },
{ 0x0014, 632 },
{ 0x0094, 648 },
{ 0x0054, 664 },
{ 0x00d4, 680 },
{ 0x0034, 696 },
{ 0x00b4, 712 },
{ 0x0020, 728 },
{ 0x00a0, 744 },
{ 0x0050, 760 },
{ 0x00d0, 776 },
{ 0x004a, 792 },
{ 0x00ca, 808 },
{ 0x002a, 824 },
{ 0x00aa, 840 },
{ 0x0024, 856 },
{ 0x00a4, 872 },
{ 0x001a, 888 },
{ 0x009a, 904 },
{ 0x005a, 920 },
{ 0x00da, 936 },
{ 0x0052, 952 },
{ 0x00d2, 968 },
{ 0x004c, 984 },
{ 0x00cc, 1000 },
{ 0x002c, 1016 },
{ 0, 0 }
};
static struct proto TermB[] = {
{ 0x03b0, 10 },
{ 0x0002, 19 },
{ 0x0003, 34 },
{ 0x0001, 50 },
{ 0x0006, 67 },
{ 0x000c, 84 },
{ 0x0004, 100 },
{ 0x0018, 117 },
{ 0x0028, 134 },
{ 0x0008, 150 },
{ 0x0010, 167 },
{ 0x0050, 183 },
{ 0x0070, 199 },
{ 0x0020, 216 },
{ 0x00e0, 232 },
{ 0x0030, 249 },
{ 0x03a0, 266 },
{ 0x0060, 282 },
{ 0x0040, 298 },
{ 0x0730, 315 },
{ 0x00b0, 331 },
{ 0x01b0, 347 },
{ 0x0760, 363 },
{ 0x00a0, 379 },
{ 0x0740, 395 },
{ 0x00c0, 411 },
{ 0x0530, 428 },
{ 0x0d30, 444 },
{ 0x0330, 460 },
{ 0x0b30, 476 },
{ 0x0160, 492 },
{ 0x0960, 508 },
{ 0x0560, 524 },
{ 0x0d60, 540 },
{ 0x04b0, 556 },
{ 0x0cb0, 572 },
{ 0x02b0, 588 },
{ 0x0ab0, 604 },
{ 0x06b0, 620 },
{ 0x0eb0, 636 },
{ 0x0360, 652 },
{ 0x0b60, 668 },
{ 0x05b0, 684 },
{ 0x0db0, 700 },
{ 0x02a0, 716 },
{ 0x0aa0, 732 },
{ 0x06a0, 748 },
{ 0x0ea0, 764 },
{ 0x0260, 780 },
{ 0x0a60, 796 },
{ 0x04a0, 812 },
{ 0x0ca0, 828 },
{ 0x0240, 844 },
{ 0x0ec0, 860 },
{ 0x01c0, 876 },
{ 0x0e40, 892 },
{ 0x0140, 908 },
{ 0x01a0, 924 },
{ 0x09a0, 940 },
{ 0x0d40, 956 },
{ 0x0340, 972 },
{ 0x05a0, 988 },
{ 0x0660, 1004 },
{ 0x0e60, 1020 },
{ 0, 0 }
};
static struct proto EOLH[] = {
{ 0x0000, 11 },
{ 0, 0 }
};
static void
FillTable(TIFFFaxTabEnt *T, int Size, struct proto *P, int State)
{
int limit = 1 << Size;
while (P->val) {
int width = P->val & 15;
int param = P->val >> 4;
int incr = 1 << width;
int code;
for (code = P->code; code < limit; code += incr) {
TIFFFaxTabEnt *E = T+code;
E->State = State;
E->Width = width;
E->Param = param;
}
P++;
}
}
static char* storage_class = "";
static char* const_class = "";
static int packoutput = 1;
static char* prebrace = "";
static char* postbrace = "";
void
WriteTable(FILE* fd, const TIFFFaxTabEnt* T, int Size, const char* name)
{
int i;
char* sep;
fprintf(fd, "%s %s TIFFFaxTabEnt %s[%d] = {",
storage_class, const_class, name, Size);
if (packoutput) {
sep = "\n";
for (i = 0; i < Size; i++) {
fprintf(fd, "%s%s%d,%d,%d%s",
sep, prebrace, T->State, T->Width, (int) T->Param, postbrace);
if (((i+1) % 12) == 0)
sep = ",\n";
else
sep = ",";
T++;
}
} else {
sep = "\n ";
for (i = 0; i < Size; i++) {
fprintf(fd, "%s%s%3d,%3d,%4d%s",
sep, prebrace, T->State, T->Width, (int) T->Param, postbrace);
if (((i+1) % 6) == 0)
sep = ",\n ";
else
sep = ",";
T++;
}
}
fprintf(fd, "\n};\n");
}
/* initialise the huffman code tables */
int
main(int argc, char* argv[])
{
FILE* fd;
char* outputfile;
int c;
extern int optind;
extern char* optarg;
while ((c = getopt(argc, argv, "c:s:bp")) != -1)
switch (c) {
case 'c':
const_class = optarg;
break;
case 's':
storage_class = optarg;
break;
case 'p':
packoutput = 0;
break;
case 'b':
prebrace = "{";
postbrace = "}";
break;
case '?':
fprintf(stderr,
"usage: %s [-c const] [-s storage] [-p] [-b] file\n",
argv[0]);
return (-1);
}
outputfile = optind < argc ? argv[optind] : "g3states.h";
fd = fopen(outputfile, "w");
if (fd == NULL) {
fprintf(stderr, "%s: %s: Cannot create output file.\n",
argv[0], outputfile);
return (-2);
}
FillTable(MainTable, 7, Pass, S_Pass);
FillTable(MainTable, 7, Horiz, S_Horiz);
FillTable(MainTable, 7, V0, S_V0);
FillTable(MainTable, 7, VR, S_VR);
FillTable(MainTable, 7, VL, S_VL);
FillTable(MainTable, 7, Ext, S_Ext);
FillTable(MainTable, 7, EOLV, S_EOL);
FillTable(WhiteTable, 12, MakeUpW, S_MakeUpW);
FillTable(WhiteTable, 12, MakeUp, S_MakeUp);
FillTable(WhiteTable, 12, TermW, S_TermW);
FillTable(WhiteTable, 12, EOLH, S_EOL);
FillTable(BlackTable, 13, MakeUpB, S_MakeUpB);
FillTable(BlackTable, 13, MakeUp, S_MakeUp);
FillTable(BlackTable, 13, TermB, S_TermB);
FillTable(BlackTable, 13, EOLH, S_EOL);
fprintf(fd, "/* WARNING, this file was automatically generated by the\n");
fprintf(fd, " mkg3states program */\n");
fprintf(fd, "#include \"tiff.h\"\n");
fprintf(fd, "#include \"tif_fax3.h\"\n");
WriteTable(fd, MainTable, 128, "TIFFFaxMainTable");
WriteTable(fd, WhiteTable, 4096, "TIFFFaxWhiteTable");
WriteTable(fd, BlackTable, 8192, "TIFFFaxBlackTable");
fclose(fd);
return (0);
}

View File

@@ -1,72 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1991-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
#include "tiffcomp.h"
/*
* Hack program to construct tables used to find
* runs of zeros and ones in Group 3 Fax encoding.
*/
dumparray(name, runs)
char *name;
unsigned char runs[256];
{
register int i;
register char *sep;
printf("static u_char %s[256] = {\n", name);
sep = " ";
for (i = 0; i < 256; i++) {
printf("%s%d", sep, runs[i]);
if (((i + 1) % 16) == 0) {
printf(", /* 0x%02x - 0x%02x */\n", i-15, i);
sep = " ";
} else
sep = ", ";
}
printf("\n};\n");
}
main()
{
unsigned char runs[2][256];
memset(runs[0], 0, 256*sizeof (char));
memset(runs[1], 0, 256*sizeof (char));
{ register int run, runlen, i;
runlen = 1;
for (run = 0x80; run != 0xff; run = (run>>1)|0x80) {
for (i = run-1; i >= 0; i--) {
runs[1][run|i] = runlen;
runs[0][(~(run|i)) & 0xff] = runlen;
}
runlen++;
}
runs[1][0xff] = runs[0][0] = 8;
}
dumparray("bruns", runs[0]);
dumparray("wruns", runs[1]);
}

View File

@@ -1,148 +0,0 @@
/* "$Header$ */
/*
* Copyright (c) 1995-1997 Sam Leffler
* Copyright (c) 1995-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* Generate a library version string for systems that
* do not have a shell (by default this is done with
* awk and echo from the Makefile).
*
* This was written by Peter Greenham for Acorn systems.
*
* Syntax: mkversion [-v version-file] [<outfile>]
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
static void
usage(void)
{
fprintf(stderr,
"usage: mkversion [-v version-file]\n"
" [-r releasedate-file] [outfile]\n");
exit(-1);
}
static FILE*
openFile(char* filename)
{
FILE* fd = fopen(filename, "r");
if (fd == NULL) {
fprintf(stderr, "mkversion: %s: Could not open for reading.\n",
filename);
exit(-1);
}
return (fd);
}
int
main(int argc, char* argv[])
{
char* versionFile = "../VERSION";
char* releaseDateFile = "../RELEASE-DATE";
char version[128];
char rawReleaseDate[128];
char tiffLibVersion[128];
FILE* fd;
char* cp;
argc--, argv++;
while (argc > 0 && argv[0][0] == '-') {
if (strcmp(argv[0], "-v") == 0) {
if (argc < 1)
usage();
argc--, argv++;
versionFile = argv[0];
} else if (strcmp(argv[0], "-r") == 0) {
if (argc < 1)
usage();
argc--, argv++;
releaseDateFile = argv[0];
} else
usage();
argc--, argv++;
}
/*
* Read the VERSION file.
*/
fd = openFile(versionFile);
if (fgets(version, sizeof (version)-1, fd) == NULL) {
fprintf(stderr, "mkversion: No version information in %s.\n",
versionFile);
exit(-1);
}
cp = strchr(version, '\n');
if (cp)
*cp = '\0';
fclose(fd);
/*
* Read the RELEASE-DATE, and translate format to emit TIFFLIB_VERSION.
*/
fd = openFile(releaseDateFile);
if (fgets(rawReleaseDate, sizeof (rawReleaseDate)-1, fd) == NULL) {
fprintf(stderr, "mkversion: No release date information in %s.\n",
releaseDateFile);
exit(-1);
}
fclose(fd);
sprintf( tiffLibVersion, "#define TIFFLIB_VERSION %4.4s%2.2s%2.2s",
rawReleaseDate+6,
rawReleaseDate+0,
rawReleaseDate+3 );
/*
* Emit the tiffvers.h file.
*/
if (argc > 0) {
fd = fopen(argv[0], "w");
if (fd == NULL) {
fprintf(stderr, "mkversion: %s: Could not open for writing.\n",
argv[0]);
exit(-1);
}
} else
fd = stdout;
fprintf(fd, "#define TIFFLIB_VERSION_STR \"LIBTIFF, Version %s\\n", version);
fprintf(fd, "Copyright (c) 1988-1996 Sam Leffler\\n");
fprintf(fd, "Copyright (c) 1991-1996 Silicon Graphics, Inc.\"\n");
fprintf( fd,
"/*\n"
" * This define can be used in code that requires\n"
" * compilation-related definitions specific to a\n"
" * version or versions of the library. Runtime\n"
" * version checking should be done based on the\n"
" * string returned by TIFFGetVersion.\n"
" */\n" );
fprintf(fd, "%s\n", tiffLibVersion );
if (fd != stdout)
fclose(fd);
return (0);
}

View File

@@ -1,61 +0,0 @@
/*
* Warning, this file was automatically created by the TIFF configure script
* Actually, it has been modified to use wxWidgets' values.
* VERSION: v3.5.2
* DATE: Son Nov 28 15:15:07 GMT 1999
* TARGET:
* CCOMPILER:
*/
#ifndef _PORT_
#define _PORT_ 1
#ifdef __cplusplus
extern "C" {
#endif
#include "wx/setup.h"
#include <sys/types.h>
#define HOST_FILLORDER FILLORDER_LSB2MSB
/* wxWidgets defines WORDS_BIGENDIAN */
#ifdef WORDS_BIGENDIAN
#define HOST_BIGENDIAN 1
#else
#define HOST_BIGENDIAN 0
#endif
/* wxWidgets defines its own reading and writing routines */
/* #define HAVE_MMAP 1 */
#include <stdio.h>
#include <unistd.h>
#include <string.h>
#include <stdlib.h>
#include <fcntl.h>
typedef double dblparam_t;
#ifdef __STRICT_ANSI__
#define INLINE __inline__
#else
#define INLINE inline
#endif
#define GLOBALDATA(TYPE,NAME) extern TYPE NAME
/* wxWidgets defines wxUSE_LIBJPEG */
#if wxUSE_LIBJPEG
#define JPEG_SUPPORT
#endif
/* wxWidgets defines wxUSE_ZLIB */
#if wxUSE_ZLIB
#define ZIP_SUPPORT
#endif
#ifdef __cplusplus
}
#endif
#endif

View File

@@ -1,285 +0,0 @@
/* $Id$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
#ifndef _T4_
#define _T4_
/*
* CCITT T.4 1D Huffman runlength codes and
* related definitions. Given the small sizes
* of these tables it does not seem
* worthwhile to make code & length 8 bits.
*/
typedef struct tableentry {
unsigned short length; /* bit length of g3 code */
unsigned short code; /* g3 code */
short runlen; /* run length in bits */
} tableentry;
#define EOL 0x001 /* EOL code value - 0000 0000 0000 1 */
/* status values returned instead of a run length */
#define G3CODE_EOL -1 /* NB: ACT_EOL - ACT_WRUNT */
#define G3CODE_INVALID -2 /* NB: ACT_INVALID - ACT_WRUNT */
#define G3CODE_EOF -3 /* end of input data */
#define G3CODE_INCOMP -4 /* incomplete run code */
/*
* Note that these tables are ordered such that the
* index into the table is known to be either the
* run length, or (run length / 64) + a fixed offset.
*
* NB: The G3CODE_INVALID entries are only used
* during state generation (see mkg3states.c).
*/
#ifdef G3CODES
const tableentry TIFFFaxWhiteCodes[] = {
{ 8, 0x35, 0 }, /* 0011 0101 */
{ 6, 0x7, 1 }, /* 0001 11 */
{ 4, 0x7, 2 }, /* 0111 */
{ 4, 0x8, 3 }, /* 1000 */
{ 4, 0xB, 4 }, /* 1011 */
{ 4, 0xC, 5 }, /* 1100 */
{ 4, 0xE, 6 }, /* 1110 */
{ 4, 0xF, 7 }, /* 1111 */
{ 5, 0x13, 8 }, /* 1001 1 */
{ 5, 0x14, 9 }, /* 1010 0 */
{ 5, 0x7, 10 }, /* 0011 1 */
{ 5, 0x8, 11 }, /* 0100 0 */
{ 6, 0x8, 12 }, /* 0010 00 */
{ 6, 0x3, 13 }, /* 0000 11 */
{ 6, 0x34, 14 }, /* 1101 00 */
{ 6, 0x35, 15 }, /* 1101 01 */
{ 6, 0x2A, 16 }, /* 1010 10 */
{ 6, 0x2B, 17 }, /* 1010 11 */
{ 7, 0x27, 18 }, /* 0100 111 */
{ 7, 0xC, 19 }, /* 0001 100 */
{ 7, 0x8, 20 }, /* 0001 000 */
{ 7, 0x17, 21 }, /* 0010 111 */
{ 7, 0x3, 22 }, /* 0000 011 */
{ 7, 0x4, 23 }, /* 0000 100 */
{ 7, 0x28, 24 }, /* 0101 000 */
{ 7, 0x2B, 25 }, /* 0101 011 */
{ 7, 0x13, 26 }, /* 0010 011 */
{ 7, 0x24, 27 }, /* 0100 100 */
{ 7, 0x18, 28 }, /* 0011 000 */
{ 8, 0x2, 29 }, /* 0000 0010 */
{ 8, 0x3, 30 }, /* 0000 0011 */
{ 8, 0x1A, 31 }, /* 0001 1010 */
{ 8, 0x1B, 32 }, /* 0001 1011 */
{ 8, 0x12, 33 }, /* 0001 0010 */
{ 8, 0x13, 34 }, /* 0001 0011 */
{ 8, 0x14, 35 }, /* 0001 0100 */
{ 8, 0x15, 36 }, /* 0001 0101 */
{ 8, 0x16, 37 }, /* 0001 0110 */
{ 8, 0x17, 38 }, /* 0001 0111 */
{ 8, 0x28, 39 }, /* 0010 1000 */
{ 8, 0x29, 40 }, /* 0010 1001 */
{ 8, 0x2A, 41 }, /* 0010 1010 */
{ 8, 0x2B, 42 }, /* 0010 1011 */
{ 8, 0x2C, 43 }, /* 0010 1100 */
{ 8, 0x2D, 44 }, /* 0010 1101 */
{ 8, 0x4, 45 }, /* 0000 0100 */
{ 8, 0x5, 46 }, /* 0000 0101 */
{ 8, 0xA, 47 }, /* 0000 1010 */
{ 8, 0xB, 48 }, /* 0000 1011 */
{ 8, 0x52, 49 }, /* 0101 0010 */
{ 8, 0x53, 50 }, /* 0101 0011 */
{ 8, 0x54, 51 }, /* 0101 0100 */
{ 8, 0x55, 52 }, /* 0101 0101 */
{ 8, 0x24, 53 }, /* 0010 0100 */
{ 8, 0x25, 54 }, /* 0010 0101 */
{ 8, 0x58, 55 }, /* 0101 1000 */
{ 8, 0x59, 56 }, /* 0101 1001 */
{ 8, 0x5A, 57 }, /* 0101 1010 */
{ 8, 0x5B, 58 }, /* 0101 1011 */
{ 8, 0x4A, 59 }, /* 0100 1010 */
{ 8, 0x4B, 60 }, /* 0100 1011 */
{ 8, 0x32, 61 }, /* 0011 0010 */
{ 8, 0x33, 62 }, /* 0011 0011 */
{ 8, 0x34, 63 }, /* 0011 0100 */
{ 5, 0x1B, 64 }, /* 1101 1 */
{ 5, 0x12, 128 }, /* 1001 0 */
{ 6, 0x17, 192 }, /* 0101 11 */
{ 7, 0x37, 256 }, /* 0110 111 */
{ 8, 0x36, 320 }, /* 0011 0110 */
{ 8, 0x37, 384 }, /* 0011 0111 */
{ 8, 0x64, 448 }, /* 0110 0100 */
{ 8, 0x65, 512 }, /* 0110 0101 */
{ 8, 0x68, 576 }, /* 0110 1000 */
{ 8, 0x67, 640 }, /* 0110 0111 */
{ 9, 0xCC, 704 }, /* 0110 0110 0 */
{ 9, 0xCD, 768 }, /* 0110 0110 1 */
{ 9, 0xD2, 832 }, /* 0110 1001 0 */
{ 9, 0xD3, 896 }, /* 0110 1001 1 */
{ 9, 0xD4, 960 }, /* 0110 1010 0 */
{ 9, 0xD5, 1024 }, /* 0110 1010 1 */
{ 9, 0xD6, 1088 }, /* 0110 1011 0 */
{ 9, 0xD7, 1152 }, /* 0110 1011 1 */
{ 9, 0xD8, 1216 }, /* 0110 1100 0 */
{ 9, 0xD9, 1280 }, /* 0110 1100 1 */
{ 9, 0xDA, 1344 }, /* 0110 1101 0 */
{ 9, 0xDB, 1408 }, /* 0110 1101 1 */
{ 9, 0x98, 1472 }, /* 0100 1100 0 */
{ 9, 0x99, 1536 }, /* 0100 1100 1 */
{ 9, 0x9A, 1600 }, /* 0100 1101 0 */
{ 6, 0x18, 1664 }, /* 0110 00 */
{ 9, 0x9B, 1728 }, /* 0100 1101 1 */
{ 11, 0x8, 1792 }, /* 0000 0001 000 */
{ 11, 0xC, 1856 }, /* 0000 0001 100 */
{ 11, 0xD, 1920 }, /* 0000 0001 101 */
{ 12, 0x12, 1984 }, /* 0000 0001 0010 */
{ 12, 0x13, 2048 }, /* 0000 0001 0011 */
{ 12, 0x14, 2112 }, /* 0000 0001 0100 */
{ 12, 0x15, 2176 }, /* 0000 0001 0101 */
{ 12, 0x16, 2240 }, /* 0000 0001 0110 */
{ 12, 0x17, 2304 }, /* 0000 0001 0111 */
{ 12, 0x1C, 2368 }, /* 0000 0001 1100 */
{ 12, 0x1D, 2432 }, /* 0000 0001 1101 */
{ 12, 0x1E, 2496 }, /* 0000 0001 1110 */
{ 12, 0x1F, 2560 }, /* 0000 0001 1111 */
{ 12, 0x1, G3CODE_EOL }, /* 0000 0000 0001 */
{ 9, 0x1, G3CODE_INVALID }, /* 0000 0000 1 */
{ 10, 0x1, G3CODE_INVALID }, /* 0000 0000 01 */
{ 11, 0x1, G3CODE_INVALID }, /* 0000 0000 001 */
{ 12, 0x0, G3CODE_INVALID }, /* 0000 0000 0000 */
};
const tableentry TIFFFaxBlackCodes[] = {
{ 10, 0x37, 0 }, /* 0000 1101 11 */
{ 3, 0x2, 1 }, /* 010 */
{ 2, 0x3, 2 }, /* 11 */
{ 2, 0x2, 3 }, /* 10 */
{ 3, 0x3, 4 }, /* 011 */
{ 4, 0x3, 5 }, /* 0011 */
{ 4, 0x2, 6 }, /* 0010 */
{ 5, 0x3, 7 }, /* 0001 1 */
{ 6, 0x5, 8 }, /* 0001 01 */
{ 6, 0x4, 9 }, /* 0001 00 */
{ 7, 0x4, 10 }, /* 0000 100 */
{ 7, 0x5, 11 }, /* 0000 101 */
{ 7, 0x7, 12 }, /* 0000 111 */
{ 8, 0x4, 13 }, /* 0000 0100 */
{ 8, 0x7, 14 }, /* 0000 0111 */
{ 9, 0x18, 15 }, /* 0000 1100 0 */
{ 10, 0x17, 16 }, /* 0000 0101 11 */
{ 10, 0x18, 17 }, /* 0000 0110 00 */
{ 10, 0x8, 18 }, /* 0000 0010 00 */
{ 11, 0x67, 19 }, /* 0000 1100 111 */
{ 11, 0x68, 20 }, /* 0000 1101 000 */
{ 11, 0x6C, 21 }, /* 0000 1101 100 */
{ 11, 0x37, 22 }, /* 0000 0110 111 */
{ 11, 0x28, 23 }, /* 0000 0101 000 */
{ 11, 0x17, 24 }, /* 0000 0010 111 */
{ 11, 0x18, 25 }, /* 0000 0011 000 */
{ 12, 0xCA, 26 }, /* 0000 1100 1010 */
{ 12, 0xCB, 27 }, /* 0000 1100 1011 */
{ 12, 0xCC, 28 }, /* 0000 1100 1100 */
{ 12, 0xCD, 29 }, /* 0000 1100 1101 */
{ 12, 0x68, 30 }, /* 0000 0110 1000 */
{ 12, 0x69, 31 }, /* 0000 0110 1001 */
{ 12, 0x6A, 32 }, /* 0000 0110 1010 */
{ 12, 0x6B, 33 }, /* 0000 0110 1011 */
{ 12, 0xD2, 34 }, /* 0000 1101 0010 */
{ 12, 0xD3, 35 }, /* 0000 1101 0011 */
{ 12, 0xD4, 36 }, /* 0000 1101 0100 */
{ 12, 0xD5, 37 }, /* 0000 1101 0101 */
{ 12, 0xD6, 38 }, /* 0000 1101 0110 */
{ 12, 0xD7, 39 }, /* 0000 1101 0111 */
{ 12, 0x6C, 40 }, /* 0000 0110 1100 */
{ 12, 0x6D, 41 }, /* 0000 0110 1101 */
{ 12, 0xDA, 42 }, /* 0000 1101 1010 */
{ 12, 0xDB, 43 }, /* 0000 1101 1011 */
{ 12, 0x54, 44 }, /* 0000 0101 0100 */
{ 12, 0x55, 45 }, /* 0000 0101 0101 */
{ 12, 0x56, 46 }, /* 0000 0101 0110 */
{ 12, 0x57, 47 }, /* 0000 0101 0111 */
{ 12, 0x64, 48 }, /* 0000 0110 0100 */
{ 12, 0x65, 49 }, /* 0000 0110 0101 */
{ 12, 0x52, 50 }, /* 0000 0101 0010 */
{ 12, 0x53, 51 }, /* 0000 0101 0011 */
{ 12, 0x24, 52 }, /* 0000 0010 0100 */
{ 12, 0x37, 53 }, /* 0000 0011 0111 */
{ 12, 0x38, 54 }, /* 0000 0011 1000 */
{ 12, 0x27, 55 }, /* 0000 0010 0111 */
{ 12, 0x28, 56 }, /* 0000 0010 1000 */
{ 12, 0x58, 57 }, /* 0000 0101 1000 */
{ 12, 0x59, 58 }, /* 0000 0101 1001 */
{ 12, 0x2B, 59 }, /* 0000 0010 1011 */
{ 12, 0x2C, 60 }, /* 0000 0010 1100 */
{ 12, 0x5A, 61 }, /* 0000 0101 1010 */
{ 12, 0x66, 62 }, /* 0000 0110 0110 */
{ 12, 0x67, 63 }, /* 0000 0110 0111 */
{ 10, 0xF, 64 }, /* 0000 0011 11 */
{ 12, 0xC8, 128 }, /* 0000 1100 1000 */
{ 12, 0xC9, 192 }, /* 0000 1100 1001 */
{ 12, 0x5B, 256 }, /* 0000 0101 1011 */
{ 12, 0x33, 320 }, /* 0000 0011 0011 */
{ 12, 0x34, 384 }, /* 0000 0011 0100 */
{ 12, 0x35, 448 }, /* 0000 0011 0101 */
{ 13, 0x6C, 512 }, /* 0000 0011 0110 0 */
{ 13, 0x6D, 576 }, /* 0000 0011 0110 1 */
{ 13, 0x4A, 640 }, /* 0000 0010 0101 0 */
{ 13, 0x4B, 704 }, /* 0000 0010 0101 1 */
{ 13, 0x4C, 768 }, /* 0000 0010 0110 0 */
{ 13, 0x4D, 832 }, /* 0000 0010 0110 1 */
{ 13, 0x72, 896 }, /* 0000 0011 1001 0 */
{ 13, 0x73, 960 }, /* 0000 0011 1001 1 */
{ 13, 0x74, 1024 }, /* 0000 0011 1010 0 */
{ 13, 0x75, 1088 }, /* 0000 0011 1010 1 */
{ 13, 0x76, 1152 }, /* 0000 0011 1011 0 */
{ 13, 0x77, 1216 }, /* 0000 0011 1011 1 */
{ 13, 0x52, 1280 }, /* 0000 0010 1001 0 */
{ 13, 0x53, 1344 }, /* 0000 0010 1001 1 */
{ 13, 0x54, 1408 }, /* 0000 0010 1010 0 */
{ 13, 0x55, 1472 }, /* 0000 0010 1010 1 */
{ 13, 0x5A, 1536 }, /* 0000 0010 1101 0 */
{ 13, 0x5B, 1600 }, /* 0000 0010 1101 1 */
{ 13, 0x64, 1664 }, /* 0000 0011 0010 0 */
{ 13, 0x65, 1728 }, /* 0000 0011 0010 1 */
{ 11, 0x8, 1792 }, /* 0000 0001 000 */
{ 11, 0xC, 1856 }, /* 0000 0001 100 */
{ 11, 0xD, 1920 }, /* 0000 0001 101 */
{ 12, 0x12, 1984 }, /* 0000 0001 0010 */
{ 12, 0x13, 2048 }, /* 0000 0001 0011 */
{ 12, 0x14, 2112 }, /* 0000 0001 0100 */
{ 12, 0x15, 2176 }, /* 0000 0001 0101 */
{ 12, 0x16, 2240 }, /* 0000 0001 0110 */
{ 12, 0x17, 2304 }, /* 0000 0001 0111 */
{ 12, 0x1C, 2368 }, /* 0000 0001 1100 */
{ 12, 0x1D, 2432 }, /* 0000 0001 1101 */
{ 12, 0x1E, 2496 }, /* 0000 0001 1110 */
{ 12, 0x1F, 2560 }, /* 0000 0001 1111 */
{ 12, 0x1, G3CODE_EOL }, /* 0000 0000 0001 */
{ 9, 0x1, G3CODE_INVALID }, /* 0000 0000 1 */
{ 10, 0x1, G3CODE_INVALID }, /* 0000 0000 01 */
{ 11, 0x1, G3CODE_INVALID }, /* 0000 0000 001 */
{ 12, 0x0, G3CODE_INVALID }, /* 0000 0000 0000 */
};
#else
extern const tableentry TIFFFaxWhiteCodes[];
extern const tableentry TIFFFaxBlackCodes[];
#endif
#endif /* _T4_ */

View File

@@ -1,519 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library RISC OS specific Routines.
* Developed out of the Unix version.
* Peter Greenham, May 1995
*/
#include "tiffiop.h"
#include <stdio.h>
#include <stdlib.h>
/*
Low-level file handling
~~~~~~~~~~~~~~~~~~~~~~~
The functions in osfcn.h are unavailable when compiling under C, as it's a
C++ header. Therefore they have been implemented here.
Now, why have I done it this way?
The definitive API library for RISC OS is Jonathan Coxhead's OSLib, which
uses heavily optimised ARM assembler or even plain inline SWI calls for
maximum performance and minimum runtime size. However, I don't want to make
LIBTIFF need that to survive. Therefore I have also emulated the functions
using macros to _swi() and _swix() defined in the swis.h header, and
borrowing types from kernel.h, which is less efficient but doesn't need any
third-party libraries.
*/
#ifdef INCLUDE_OSLIB
#include "osfile.h"
#include "osgbpb.h"
#include "osargs.h"
#include "osfind.h"
#else
/* OSLIB EMULATION STARTS */
#include "kernel.h"
#include "swis.h"
/* From oslib:types.h */
typedef unsigned int bits;
typedef unsigned char byte;
#ifndef TRUE
#define TRUE 1
#endif
#ifndef FALSE
#define FALSE 0
#endif
#ifndef NULL
#define NULL 0
#endif
#ifndef SKIP
#define SKIP 0
#endif
/* From oslib:os.h */
typedef _kernel_oserror os_error;
typedef byte os_f;
/* From oslib:osfile.h */
#undef OS_File
#define OS_File 0x8
/* From oslib:osgbpb.h */
#undef OS_GBPB
#define OS_GBPB 0xC
#undef OSGBPB_Write
#define OSGBPB_Write 0x2
#undef OSGBPB_Read
#define OSGBPB_Read 0x4
extern os_error *xosgbpb_write (os_f file,
byte *data,
int size,
int *unwritten);
extern int osgbpb_write (os_f file,
byte *data,
int size);
#define xosgbpb_write(file, data, size, unwritten) \
(os_error*) _swix(OS_GBPB, _IN(0)|_IN(1)|_IN(2)|_IN(3)|_IN(4)|_OUT(3), \
OSGBPB_WriteAt, \
file, \
data, \
size, \
unwritten)
#define osgbpb_write(file, data, size) \
_swi(OS_GBPB, _IN(0)|_IN(1)|_IN(2)|_IN(3)|_RETURN(3), \
OSGBPB_Write, \
file, \
data, \
size)
extern os_error *xosgbpb_read (os_f file,
byte *buffer,
int size,
int *unread);
extern int osgbpb_read (os_f file,
byte *buffer,
int size);
#define xosgbpb_read(file, buffer, size, unread) \
(os_error*) _swix(OS_GBPB, _IN(0)|_IN(1)|_IN(2)|_IN(3)|_OUT(3), \
OSGBPB_Read, \
file, \
buffer, \
size, \
unread)
#define osgbpb_read(file, buffer, size) \
_swi(OS_GBPB, _IN(0)|_IN(1)|_IN(2)|_IN(3)|_RETURN(3), \
OSGBPB_Read, \
file, \
buffer, \
size)
/* From oslib:osfind.h */
#undef OS_Find
#define OS_Find 0xD
#undef OSFind_Openin
#define OSFind_Openin 0x40
#undef OSFind_Openout
#define OSFind_Openout 0x80
#undef OSFind_Openup
#define OSFind_Openup 0xC0
#undef OSFind_Close
#define OSFind_Close 0x0
#define xosfind_open(reason, file_name, path, file) \
(os_error*) _swix(OS_Find, _IN(0)|_IN(1)|_IN(2)|_OUT(0), \
reason, file_name, path, file)
#define osfind_open(reason, file_name, path) \
(os_f) _swi(OS_Find, _IN(0)|_IN(1)|_IN(2)|_RETURN(0), \
reason, file_name, path)
extern os_error *xosfind_openin (bits flags,
char *file_name,
char *path,
os_f *file);
extern os_f osfind_openin (bits flags,
char *file_name,
char *path);
#define xosfind_openin(flags, file_name, path, file) \
xosfind_open(flags | OSFind_Openin, file_name, path, file)
#define osfind_openin(flags, file_name, path) \
osfind_open(flags | OSFind_Openin, file_name, path)
extern os_error *xosfind_openout (bits flags,
char *file_name,
char *path,
os_f *file);
extern os_f osfind_openout (bits flags,
char *file_name,
char *path);
#define xosfind_openout(flags, file_name, path, file) \
xosfind_open(flags | OSFind_Openout, file_name, path, file)
#define osfind_openout(flags, file_name, path) \
osfind_open(flags | OSFind_Openout, file_name, path)
extern os_error *xosfind_openup (bits flags,
char *file_name,
char *path,
os_f *file);
extern os_f osfind_openup (bits flags,
char *file_name,
char *path);
#define xosfind_openup(flags, file_name, path, file) \
xosfind_open(flags | OSFind_Openup, file_name, path, file)
#define osfind_openup(flags, file_name, path) \
osfind_open(flags | OSFind_Openup, file_name, path)
extern os_error *xosfind_close (os_f file);
extern void osfind_close (os_f file);
#define xosfind_close(file) \
(os_error*) _swix(OS_Find, _IN(0)|_IN(1), \
OSFind_Close, \
file)
#define osfind_close(file) \
(void) _swi(OS_Find, _IN(0)|_IN(1), \
OSFind_Close, \
file)
/* From oslib:osargs.h */
#undef OS_Args
#define OS_Args 0x9
#undef OSArgs_ReadPtr
#define OSArgs_ReadPtr 0x0
#undef OSArgs_SetPtr
#define OSArgs_SetPtr 0x1
#undef OSArgs_ReadExt
#define OSArgs_ReadExt 0x2
extern os_error *xosargs_read_ptr (os_f file,
int *ptr);
extern int osargs_read_ptr (os_f file);
#define xosargs_read_ptr(file, ptr) \
(os_error*) _swix(OS_Args, _IN(0)|_IN(1)|_OUT(2), \
OSArgs_ReadPtr, \
file, \
ptr)
#define osargs_read_ptr(file) \
_swi(OS_Args, _IN(0)|_IN(1)|_RETURN(2), \
OSArgs_ReadPtr, \
file)
extern os_error *xosargs_set_ptr (os_f file,
int ptr);
extern void osargs_set_ptr (os_f file,
int ptr);
#define xosargs_set_ptr(file, ptr) \
(os_error*) _swix(OS_Args, _IN(0)|_IN(1)|_IN(2), \
OSArgs_SetPtr, \
file, \
ptr)
#define osargs_set_ptr(file, ptr) \
(void) _swi(OS_Args, _IN(0)|_IN(1)|_IN(2), \
OSArgs_SetPtr, \
file, \
ptr)
extern os_error *xosargs_read_ext (os_f file,
int *ext);
extern int osargs_read_ext (os_f file);
#define xosargs_read_ext(file, ext) \
(os_error*) _swix(OS_Args, _IN(0)|_IN(1)|_OUT(2), \
OSArgs_ReadExt, \
file, \
ext)
#define osargs_read_ext(file) \
_swi(OS_Args, _IN(0)|_IN(1)|_RETURN(2), \
OSArgs_ReadExt, \
file)
/* OSLIB EMULATION ENDS */
#endif
#ifndef __osfcn_h
/* Will be set or not during tiffcomp.h */
/* You get this to compile under C++? Please say how! */
extern int open(const char* name, int flags, int mode)
{
/* From what I can tell, should return <0 for failure */
os_error* e = (os_error*) 1; /* Cheeky way to use a pointer eh? :-) */
os_f file = (os_f) -1;
flags = flags;
switch(mode)
{
case O_RDONLY:
{
e = xosfind_openin(SKIP, name, SKIP, &file);
break;
}
case O_WRONLY:
case O_RDWR|O_CREAT:
case O_RDWR|O_CREAT|O_TRUNC:
{
e = xosfind_openout(SKIP, name, SKIP, &file);
break;
}
case O_RDWR:
{
e = xosfind_openup(SKIP, name, SKIP, &file);
break;
}
}
if (e)
{
file = (os_f) -1;
}
return (file);
}
extern int close(int fd)
{
return ((int) xosfind_close((os_f) fd));
}
extern int write(int fd, const char *buf, int nbytes)
{
/* Returns number of bytes written */
return (nbytes - osgbpb_write((os_f) fd, (const byte*) buf, nbytes));
}
extern int read(int fd, char *buf, int nbytes)
{
/* Returns number of bytes read */
return (nbytes - osgbpb_read((os_f) fd, (byte*) buf, nbytes));
}
extern off_t lseek(int fd, off_t offset, int whence)
{
int absolute = 0;
switch (whence)
{
case SEEK_SET:
{
absolute = (int) offset;
break;
}
case SEEK_CUR:
{
absolute = osargs_read_ptr((os_f) fd) + (int) offset;
break;
}
case SEEK_END:
{
absolute = osargs_read_ext((os_f) fd) + (int) offset;
break;
}
}
osargs_set_ptr((os_f) fd, absolute);
return ((off_t) osargs_read_ptr((os_f) fd));
}
#endif
static tsize_t
_tiffReadProc(thandle_t fd, tdata_t buf, tsize_t size)
{
return ((tsize_t) read((int) fd, buf, (size_t) size));
}
static tsize_t
_tiffWriteProc(thandle_t fd, tdata_t buf, tsize_t size)
{
return ((tsize_t) write((int) fd, buf, (size_t) size));
}
static toff_t
_tiffSeekProc(thandle_t fd, toff_t off, int whence)
{
return ((toff_t) lseek((int) fd, (off_t) off, whence));
}
static int
_tiffCloseProc(thandle_t fd)
{
return (close((int) fd));
}
static toff_t
_tiffSizeProc(thandle_t fd)
{
return (lseek((int) fd, SEEK_END, SEEK_SET));
}
#ifdef HAVE_MMAP
#error "I didn't know Acorn had that!"
#endif
/* !HAVE_MMAP */
static int
_tiffMapProc(thandle_t fd, tdata_t* pbase, toff_t* psize)
{
(void) fd; (void) pbase; (void) psize;
return (0);
}
static void
_tiffUnmapProc(thandle_t fd, tdata_t base, toff_t size)
{
(void) fd; (void) base; (void) size;
}
/*
* Open a TIFF file descriptor for read/writing.
*/
TIFF*
TIFFFdOpen(int fd, const char* name, const char* mode)
{
TIFF* tif;
tif = TIFFClientOpen(name, mode,
(thandle_t) fd,
_tiffReadProc, _tiffWriteProc,
_tiffSeekProc, _tiffCloseProc, _tiffSizeProc,
_tiffMapProc, _tiffUnmapProc);
if (tif)
{
tif->tif_fd = fd;
}
return (tif);
}
/*
* Open a TIFF file for read/writing.
*/
TIFF*
TIFFOpen(const char* name, const char* mode)
{
static const char module[] = "TIFFOpen";
int m, fd;
m = _TIFFgetMode(mode, module);
if (m == -1)
{
return ((TIFF*) 0);
}
fd = open(name, 0, m);
if (fd < 0)
{
TIFFError(module, "%s: Cannot open", name);
return ((TIFF *)0);
}
return (TIFFFdOpen(fd, name, mode));
}
void*
_TIFFmalloc(tsize_t s)
{
return (malloc((size_t) s));
}
void
_TIFFfree(tdata_t p)
{
free(p);
}
void*
_TIFFrealloc(tdata_t p, tsize_t s)
{
return (realloc(p, (size_t) s));
}
void
_TIFFmemset(tdata_t p, int v, tsize_t c)
{
memset(p, v, (size_t) c);
}
void
_TIFFmemcpy(tdata_t d, const tdata_t s, tsize_t c)
{
memcpy(d, s, (size_t) c);
}
int
_TIFFmemcmp(const tdata_t p1, const tdata_t p2, tsize_t c)
{
return (memcmp(p1, p2, (size_t) c));
}
static void
acornWarningHandler(const char* module, const char* fmt, va_list ap)
{
if (module != NULL)
{
fprintf(stderr, "%s: ", module);
}
fprintf(stderr, "Warning, ");
vfprintf(stderr, fmt, ap);
fprintf(stderr, ".\n");
}
TIFFErrorHandler _TIFFwarningHandler = acornWarningHandler;
static void
acornErrorHandler(const char* module, const char* fmt, va_list ap)
{
if (module != NULL)
{
fprintf(stderr, "%s: ", module);
}
vfprintf(stderr, fmt, ap);
fprintf(stderr, ".\n");
}
TIFFErrorHandler _TIFFerrorHandler = acornErrorHandler;

View File

@@ -1,274 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library Macintosh-specific routines.
*
* These routines use only Toolbox and high-level File Manager traps.
* They make no calls to the THINK C "unix" compatibility library. Also,
* malloc is not used directly but it is still referenced internally by
* the ANSI library in rare cases. Heap fragmentation by the malloc ring
* buffer is therefore minimized.
*
* O_RDONLY and O_RDWR are treated identically here. The tif_mode flag is
* checked in TIFFWriteCheck().
*
* Create below fills in a blank creator signature and sets the file type
* to 'TIFF'. It is much better for the application to do this by Create'ing
* the file first and TIFFOpen'ing it later.
* ---------
* This code has been "Carbonized", and may not work with older MacOS versions.
* If so, grab the tif_apple.c out of an older libtiff distribution, like
* 3.5.5 from www.libtiff.org.
*/
#include "tiffiop.h"
#include <Errors.h>
#include <Files.h>
#include <Memory.h>
#include <Script.h>
#if defined(__PPCC__) || defined(__SC__) || defined(__MRC__) || defined(applec)
#define CtoPstr c2pstr
#endif
static tsize_t
_tiffReadProc(thandle_t fd, tdata_t buf, tsize_t size)
{
return (FSRead((short) fd, (long*) &size, (char*) buf) == noErr ?
size : (tsize_t) -1);
}
static tsize_t
_tiffWriteProc(thandle_t fd, tdata_t buf, tsize_t size)
{
return (FSWrite((short) fd, (long*) &size, (char*) buf) == noErr ?
size : (tsize_t) -1);
}
static toff_t
_tiffSeekProc(thandle_t fd, toff_t off, int whence)
{
long fpos, size;
if (GetEOF((short) fd, &size) != noErr)
return EOF;
(void) GetFPos((short) fd, &fpos);
switch (whence) {
case SEEK_CUR:
if (off + fpos > size)
SetEOF((short) fd, off + fpos);
if (SetFPos((short) fd, fsFromMark, off) != noErr)
return EOF;
break;
case SEEK_END:
if (off > 0)
SetEOF((short) fd, off + size);
if (SetFPos((short) fd, fsFromStart, off + size) != noErr)
return EOF;
break;
case SEEK_SET:
if (off > size)
SetEOF((short) fd, off);
if (SetFPos((short) fd, fsFromStart, off) != noErr)
return EOF;
break;
}
return (toff_t)(GetFPos((short) fd, &fpos) == noErr ? fpos : EOF);
}
static int
_tiffMapProc(thandle_t fd, tdata_t* pbase, toff_t* psize)
{
return (0);
}
static void
_tiffUnmapProc(thandle_t fd, tdata_t base, toff_t size)
{
}
static int
_tiffCloseProc(thandle_t fd)
{
return (FSClose((short) fd));
}
static toff_t
_tiffSizeProc(thandle_t fd)
{
long size;
if (GetEOF((short) fd, &size) != noErr) {
TIFFError("_tiffSizeProc", "%s: Cannot get file size");
return (-1L);
}
return ((toff_t) size);
}
/*
* Open a TIFF file descriptor for read/writing.
*/
TIFF*
TIFFFdOpen(int fd, const char* name, const char* mode)
{
TIFF* tif;
tif = TIFFClientOpen(name, mode, (thandle_t) fd,
_tiffReadProc, _tiffWriteProc, _tiffSeekProc, _tiffCloseProc,
_tiffSizeProc, _tiffMapProc, _tiffUnmapProc);
if (tif)
tif->tif_fd = fd;
return (tif);
}
static void ourc2pstr( char* inString )
{
int sLen = strlen( inString );
BlockMoveData( inString, &inString[1], sLen );
inString[0] = sLen;
}
/*
* Open a TIFF file for read/writing.
*/
TIFF*
TIFFOpen(const char* name, const char* mode)
{
static const char module[] = "TIFFOpen";
Str255 pname;
FInfo finfo;
short fref;
OSErr err;
FSSpec fSpec;
strcpy((char*) pname, name);
ourc2pstr((char*) pname);
err = FSMakeFSSpec( 0, 0, pname, &fSpec );
switch (_TIFFgetMode(mode, module)) {
default:
return ((TIFF*) 0);
case O_RDWR | O_CREAT | O_TRUNC:
if (FSpGetFInfo(&fSpec, &finfo) == noErr)
FSpDelete(&fSpec);
/* fall through */
case O_RDWR | O_CREAT:
if ((err = FSpGetFInfo(&fSpec, &finfo)) == fnfErr) {
if (FSpCreate(&fSpec, ' ', 'TIFF', smSystemScript) != noErr)
goto badCreate;
if (FSpOpenDF(&fSpec, fsRdWrPerm, &fref) != noErr)
goto badOpen;
} else if (err == noErr) {
if (FSpOpenDF(&fSpec, fsRdWrPerm, &fref) != noErr)
goto badOpen;
} else
goto badOpen;
break;
case O_RDONLY:
if (FSpOpenDF(&fSpec, fsRdPerm, &fref) != noErr)
goto badOpen;
break;
case O_RDWR:
if (FSpOpenDF(&fSpec, fsRdWrPerm, &fref) != noErr)
goto badOpen;
break;
}
return (TIFFFdOpen((int) fref, name, mode));
badCreate:
TIFFError(module, "%s: Cannot create", name);
return ((TIFF*) 0);
badOpen:
TIFFError(module, "%s: Cannot open", name);
return ((TIFF*) 0);
}
void
_TIFFmemset(tdata_t p, int v, tsize_t c)
{
memset(p, v, (size_t) c);
}
void
_TIFFmemcpy(tdata_t d, const tdata_t s, tsize_t c)
{
memcpy(d, s, (size_t) c);
}
int
_TIFFmemcmp(const tdata_t p1, const tdata_t p2, tsize_t c)
{
return (memcmp(p1, p2, (size_t) c));
}
tdata_t
_TIFFmalloc(tsize_t s)
{
return (NewPtr((size_t) s));
}
void
_TIFFfree(tdata_t p)
{
DisposePtr(p);
}
tdata_t
_TIFFrealloc(tdata_t p, tsize_t s)
{
Ptr n = p;
SetPtrSize(p, (size_t) s);
if (MemError() && (n = NewPtr((size_t) s)) != NULL) {
BlockMove(p, n, GetPtrSize(p));
DisposePtr(p);
}
return ((tdata_t) n);
}
static void
appleWarningHandler(const char* module, const char* fmt, va_list ap)
{
if (module != NULL)
fprintf(stderr, "%s: ", module);
fprintf(stderr, "Warning, ");
vfprintf(stderr, fmt, ap);
fprintf(stderr, ".\n");
}
TIFFErrorHandler _TIFFwarningHandler = appleWarningHandler;
static void
appleErrorHandler(const char* module, const char* fmt, va_list ap)
{
if (module != NULL)
fprintf(stderr, "%s: ", module);
vfprintf(stderr, fmt, ap);
fprintf(stderr, ".\n");
}
TIFFErrorHandler _TIFFerrorHandler = appleErrorHandler;

View File

@@ -1,243 +0,0 @@
/* "$Header$" */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library ATARI-specific Routines.
*/
#include "tiffiop.h"
#if defined(__TURBOC__)
#include <tos.h>
#include <stdio.h>
#else
#include <osbind.h>
#include <fcntl.h>
#endif
#ifndef O_ACCMODE
#define O_ACCMODE 3
#endif
#include <errno.h>
#define AEFILNF -33
static tsize_t
_tiffReadProc(thandle_t fd, tdata_t buf, tsize_t size)
{
long r;
r = Fread((int) fd, size, buf);
if (r < 0) {
errno = (int)-r;
r = -1;
}
return r;
}
static tsize_t
_tiffWriteProc(thandle_t fd, tdata_t buf, tsize_t size)
{
long r;
r = Fwrite((int) fd, size, buf);
if (r < 0) {
errno = (int)-r;
r = -1;
}
return r;
}
static toff_t
_tiffSeekProc(thandle_t fd, off_t off, int whence)
{
char buf[256];
long current_off, expected_off, new_off;
if (whence == SEEK_END || off <= 0)
return Fseek(off, (int) fd, whence);
current_off = Fseek(0, (int) fd, SEEK_CUR); /* find out where we are */
if (whence == SEEK_SET)
expected_off = off;
else
expected_off = off + current_off;
new_off = Fseek(off, (int) fd, whence);
if (new_off == expected_off)
return new_off;
/* otherwise extend file -- zero filling the hole */
if (new_off < 0) /* error? */
new_off = Fseek(0, (int) fd, SEEK_END); /* go to eof */
_TIFFmemset(buf, 0, sizeof(buf));
while (expected_off > new_off) {
off = expected_off - new_off;
if (off > sizeof(buf))
off = sizeof(buf);
if ((current_off = Fwrite((int) fd, off, buf)) != off)
return (current_off > 0) ?
new_off + current_off : new_off;
new_off += off;
}
return new_off;
}
static int
_tiffCloseProc(thandle_t fd)
{
long r;
r = Fclose((int) fd);
if (r < 0) {
errno = (int)-r;
r = -1;
}
return (int)r;
}
static toff_t
_tiffSizeProc(thandle_t fd)
{
long pos, eof;
pos = Fseek(0, (int) fd, SEEK_CUR);
eof = Fseek(0, (int) fd, SEEK_END);
Fseek(pos, (int) fd, SEEK_SET);
return eof;
}
static int
_tiffMapProc(thandle_t fd, tdata_t* pbase, toff_t* psize)
{
return (0);
}
static void
_tiffUnmapProc(thandle_t fd, tdata_t base, toff_t size)
{
}
/*
* Open a TIFF file descriptor for read/writing.
*/
TIFF*
TIFFFdOpen(int fd, const char* name, const char* mode)
{
TIFF* tif;
tif = TIFFClientOpen(name, mode,
(thandle_t) fd,
_tiffReadProc, _tiffWriteProc, _tiffSeekProc, _tiffCloseProc,
_tiffSizeProc, _tiffMapProc, _tiffUnmapProc);
if (tif)
tif->tif_fd = fd;
return (tif);
}
/*
* Open a TIFF file for read/writing.
*/
TIFF*
TIFFOpen(const char* name, const char* mode)
{
static const char module[] = "TIFFOpen";
int m;
long fd;
m = _TIFFgetMode(mode, module);
if (m == -1)
return ((TIFF*)0);
if (m & O_TRUNC) {
fd = Fcreate(name, 0);
} else {
fd = Fopen(name, m & O_ACCMODE);
if (fd == AEFILNF && m & O_CREAT)
fd = Fcreate(name, 0);
}
if (fd < 0)
errno = (int)fd;
if (fd < 0) {
TIFFError(module, "%s: Cannot open", name);
return ((TIFF*)0);
}
return (TIFFFdOpen(fd, name, mode));
}
#include <stdlib.h>
tdata_t
_TIFFmalloc(tsize_t s)
{
return (malloc((size_t) s));
}
void
_TIFFfree(tdata_t p)
{
free(p);
}
tdata_t
_TIFFrealloc(tdata_t p, tsize_t s)
{
return (realloc(p, (size_t) s));
}
void
_TIFFmemset(tdata_t p, int v, size_t c)
{
memset(p, v, (size_t) c);
}
void
_TIFFmemcpy(tdata_t d, const tdata_t s, size_t c)
{
memcpy(d, s, (size_t) c);
}
int
_TIFFmemcmp(const tdata_t p1, const tdata_t p2, tsize_t c)
{
return (memcmp(p1, p2, (size_t) c));
}
static void
atariWarningHandler(const char* module, const char* fmt, va_list ap)
{
if (module != NULL)
fprintf(stderr, "%s: ", module);
fprintf(stderr, "Warning, ");
vfprintf(stderr, fmt, ap);
fprintf(stderr, ".\n");
}
TIFFErrorHandler _TIFFwarningHandler = atariWarningHandler;
static void
atariErrorHandler(const char* module, const char* fmt, va_list ap)
{
if (module != NULL)
fprintf(stderr, "%s: ", module);
vfprintf(stderr, fmt, ap);
fprintf(stderr, ".\n");
}
TIFFErrorHandler _TIFFerrorHandler = atariErrorHandler;

View File

@@ -1,248 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1991-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library.
*
* Auxiliary Support Routines.
*/
#include "tiffiop.h"
#include "tif_predict.h"
#include <math.h>
static int
TIFFDefaultTransferFunction(TIFFDirectory* td)
{
uint16 **tf = td->td_transferfunction;
tsize_t i, n, nbytes;
tf[0] = tf[1] = tf[2] = 0;
if (td->td_bitspersample >= sizeof(tsize_t) * 8 - 2)
return 0;
n = 1<<td->td_bitspersample;
nbytes = n * sizeof (uint16);
if (!(tf[0] = (uint16 *)_TIFFmalloc(nbytes)))
return 0;
tf[0][0] = 0;
for (i = 1; i < n; i++) {
double t = (double)i/((double) n-1.);
tf[0][i] = (uint16)floor(65535.*pow(t, 2.2) + .5);
}
if (td->td_samplesperpixel - td->td_extrasamples > 1) {
if (!(tf[1] = (uint16 *)_TIFFmalloc(nbytes)))
goto bad;
_TIFFmemcpy(tf[1], tf[0], nbytes);
if (!(tf[2] = (uint16 *)_TIFFmalloc(nbytes)))
goto bad;
_TIFFmemcpy(tf[2], tf[0], nbytes);
}
return 1;
bad:
if (tf[0])
_TIFFfree(tf[0]);
if (tf[1])
_TIFFfree(tf[1]);
if (tf[2])
_TIFFfree(tf[2]);
tf[0] = tf[1] = tf[2] = 0;
return 0;
}
static int
TIFFDefaultRefBlackWhite(TIFFDirectory* td)
{
int i;
if (!(td->td_refblackwhite = (float *)_TIFFmalloc(6*sizeof (float))))
return 0;
for (i = 0; i < 3; i++) {
td->td_refblackwhite[2*i+0] = 0;
td->td_refblackwhite[2*i+1] = (float)((1L<<td->td_bitspersample)-1L);
}
return 1;
}
/*
* Like TIFFGetField, but return any default
* value if the tag is not present in the directory.
*
* NB: We use the value in the directory, rather than
* explcit values so that defaults exist only one
* place in the library -- in TIFFDefaultDirectory.
*/
int
TIFFVGetFieldDefaulted(TIFF* tif, ttag_t tag, va_list ap)
{
TIFFDirectory *td = &tif->tif_dir;
if (TIFFVGetField(tif, tag, ap))
return (1);
switch (tag) {
case TIFFTAG_SUBFILETYPE:
*va_arg(ap, uint32 *) = td->td_subfiletype;
return (1);
case TIFFTAG_BITSPERSAMPLE:
*va_arg(ap, uint16 *) = td->td_bitspersample;
return (1);
case TIFFTAG_THRESHHOLDING:
*va_arg(ap, uint16 *) = td->td_threshholding;
return (1);
case TIFFTAG_FILLORDER:
*va_arg(ap, uint16 *) = td->td_fillorder;
return (1);
case TIFFTAG_ORIENTATION:
*va_arg(ap, uint16 *) = td->td_orientation;
return (1);
case TIFFTAG_SAMPLESPERPIXEL:
*va_arg(ap, uint16 *) = td->td_samplesperpixel;
return (1);
case TIFFTAG_ROWSPERSTRIP:
*va_arg(ap, uint32 *) = td->td_rowsperstrip;
return (1);
case TIFFTAG_MINSAMPLEVALUE:
*va_arg(ap, uint16 *) = td->td_minsamplevalue;
return (1);
case TIFFTAG_MAXSAMPLEVALUE:
*va_arg(ap, uint16 *) = td->td_maxsamplevalue;
return (1);
case TIFFTAG_PLANARCONFIG:
*va_arg(ap, uint16 *) = td->td_planarconfig;
return (1);
case TIFFTAG_RESOLUTIONUNIT:
*va_arg(ap, uint16 *) = td->td_resolutionunit;
return (1);
case TIFFTAG_PREDICTOR:
{
TIFFPredictorState* sp = (TIFFPredictorState*) tif->tif_data;
*va_arg(ap, uint16*) = (uint16) sp->predictor;
return (1);
}
case TIFFTAG_DOTRANGE:
*va_arg(ap, uint16 *) = 0;
*va_arg(ap, uint16 *) = (1<<td->td_bitspersample)-1;
return (1);
case TIFFTAG_INKSET:
*va_arg(ap, uint16 *) = td->td_inkset;
return (1);
case TIFFTAG_NUMBEROFINKS:
*va_arg(ap, uint16 *) = td->td_ninks;
return (1);
case TIFFTAG_EXTRASAMPLES:
*va_arg(ap, uint16 *) = td->td_extrasamples;
*va_arg(ap, uint16 **) = td->td_sampleinfo;
return (1);
case TIFFTAG_MATTEING:
*va_arg(ap, uint16 *) =
(td->td_extrasamples == 1 &&
td->td_sampleinfo[0] == EXTRASAMPLE_ASSOCALPHA);
return (1);
case TIFFTAG_TILEDEPTH:
*va_arg(ap, uint32 *) = td->td_tiledepth;
return (1);
case TIFFTAG_DATATYPE:
*va_arg(ap, uint16 *) = td->td_sampleformat-1;
return (1);
case TIFFTAG_SAMPLEFORMAT:
*va_arg(ap, uint16 *) = td->td_sampleformat;
return(1);
case TIFFTAG_IMAGEDEPTH:
*va_arg(ap, uint32 *) = td->td_imagedepth;
return (1);
case TIFFTAG_YCBCRCOEFFICIENTS:
if (!td->td_ycbcrcoeffs) {
td->td_ycbcrcoeffs = (float *)
_TIFFmalloc(3*sizeof (float));
if (!td->td_ycbcrcoeffs)
return (0);
/* defaults are from CCIR Recommendation 601-1 */
td->td_ycbcrcoeffs[0] = 0.299f;
td->td_ycbcrcoeffs[1] = 0.587f;
td->td_ycbcrcoeffs[2] = 0.114f;
}
*va_arg(ap, float **) = td->td_ycbcrcoeffs;
return (1);
case TIFFTAG_YCBCRSUBSAMPLING:
*va_arg(ap, uint16 *) = td->td_ycbcrsubsampling[0];
*va_arg(ap, uint16 *) = td->td_ycbcrsubsampling[1];
return (1);
case TIFFTAG_YCBCRPOSITIONING:
*va_arg(ap, uint16 *) = td->td_ycbcrpositioning;
return (1);
case TIFFTAG_WHITEPOINT:
if (!td->td_whitepoint) {
td->td_whitepoint = (float *)
_TIFFmalloc(2 * sizeof (float));
if (!td->td_whitepoint)
return (0);
/* TIFF 6.0 specification says that it is no default
value for the WhitePoint, but AdobePhotoshop TIFF
Technical Note tells that it should be CIE D50. */
td->td_whitepoint[0] =
D50_X0 / (D50_X0 + D50_Y0 + D50_Z0);
td->td_whitepoint[1] =
D50_Y0 / (D50_X0 + D50_Y0 + D50_Z0);
}
*va_arg(ap, float **) = td->td_whitepoint;
return (1);
case TIFFTAG_TRANSFERFUNCTION:
if (!td->td_transferfunction[0] &&
!TIFFDefaultTransferFunction(td)) {
TIFFError(tif->tif_name, "No space for \"TransferFunction\" tag");
return (0);
}
*va_arg(ap, uint16 **) = td->td_transferfunction[0];
if (td->td_samplesperpixel - td->td_extrasamples > 1) {
*va_arg(ap, uint16 **) = td->td_transferfunction[1];
*va_arg(ap, uint16 **) = td->td_transferfunction[2];
}
return (1);
case TIFFTAG_REFERENCEBLACKWHITE:
if (!td->td_refblackwhite && !TIFFDefaultRefBlackWhite(td))
return (0);
*va_arg(ap, float **) = td->td_refblackwhite;
return (1);
}
return (0);
}
/*
* Like TIFFGetField, but return any default
* value if the tag is not present in the directory.
*/
int
TIFFGetFieldDefaulted(TIFF* tif, ttag_t tag, ...)
{
int ok;
va_list ap;
va_start(ap, tag);
ok = TIFFVGetFieldDefaulted(tif, tag, ap);
va_end(ap);
return (ok);
}

View File

@@ -1,80 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library.
*/
#include "tiffiop.h"
void
TIFFClose(TIFF* tif)
{
if (tif->tif_mode != O_RDONLY)
/*
* Flush buffered data and directory (if dirty).
*/
TIFFFlush(tif);
(*tif->tif_cleanup)(tif);
TIFFFreeDirectory(tif);
if (tif->tif_dirlist)
_TIFFfree(tif->tif_dirlist);
/* Clean up client info links */
while( tif->tif_clientinfo )
{
TIFFClientInfoLink *link = tif->tif_clientinfo;
tif->tif_clientinfo = link->next;
_TIFFfree( link->name );
_TIFFfree( link );
}
if (tif->tif_rawdata && (tif->tif_flags&TIFF_MYBUFFER))
_TIFFfree(tif->tif_rawdata);
if (isMapped(tif))
TIFFUnmapFileContents(tif, tif->tif_base, tif->tif_size);
(void) TIFFCloseFile(tif);
if (tif->tif_nfields > 0)
{
int i;
for (i = 0; i < tif->tif_nfields; i++)
{
TIFFFieldInfo *fld = tif->tif_fieldinfo[i];
if (fld->field_bit == FIELD_CUSTOM &&
strncmp("Tag ", fld->field_name, 4) == 0)
{
_TIFFfree(fld->field_name);
_TIFFfree(fld);
}
}
_TIFFfree(tif->tif_fieldinfo);
}
_TIFFfree(tif);
}

View File

@@ -1,150 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library
*
* Builtin Compression Scheme Configuration Support.
*/
#include "tiffiop.h"
static int NotConfigured(TIFF*, int);
#ifndef LZW_SUPPORT
#define TIFFInitLZW NotConfigured
#endif
#ifndef PACKBITS_SUPPORT
#define TIFFInitPackbits NotConfigured
#endif
#ifndef THUNDER_SUPPORT
#define TIFFInitThunderScan NotConfigured
#endif
#ifndef NEXT_SUPPORT
#define TIFFInitNeXT NotConfigured
#endif
#ifndef JPEG_SUPPORT
#define TIFFInitJPEG NotConfigured
#endif
#ifndef OJPEG_SUPPORT
#define TIFFInitOJPEG NotConfigured
#endif
#ifndef CCITT_SUPPORT
#define TIFFInitCCITTRLE NotConfigured
#define TIFFInitCCITTRLEW NotConfigured
#define TIFFInitCCITTFax3 NotConfigured
#define TIFFInitCCITTFax4 NotConfigured
#endif
#ifndef JBIG_SUPPORT
#define TIFFInitJBIG NotConfigured
#endif
#ifndef ZIP_SUPPORT
#define TIFFInitZIP NotConfigured
#endif
#ifndef PIXARLOG_SUPPORT
#define TIFFInitPixarLog NotConfigured
#endif
#ifndef LOGLUV_SUPPORT
#define TIFFInitSGILog NotConfigured
#endif
/*
* Compression schemes statically built into the library.
*/
#ifdef VMS
const TIFFCodec _TIFFBuiltinCODECS[] = {
#else
TIFFCodec _TIFFBuiltinCODECS[] = {
#endif
{ "None", COMPRESSION_NONE, TIFFInitDumpMode },
{ "LZW", COMPRESSION_LZW, TIFFInitLZW },
{ "PackBits", COMPRESSION_PACKBITS, TIFFInitPackBits },
{ "ThunderScan", COMPRESSION_THUNDERSCAN,TIFFInitThunderScan },
{ "NeXT", COMPRESSION_NEXT, TIFFInitNeXT },
{ "JPEG", COMPRESSION_JPEG, TIFFInitJPEG },
{ "Old-style JPEG", COMPRESSION_OJPEG, TIFFInitOJPEG },
{ "CCITT RLE", COMPRESSION_CCITTRLE, TIFFInitCCITTRLE },
{ "CCITT RLE/W", COMPRESSION_CCITTRLEW, TIFFInitCCITTRLEW },
{ "CCITT Group 3", COMPRESSION_CCITTFAX3, TIFFInitCCITTFax3 },
{ "CCITT Group 4", COMPRESSION_CCITTFAX4, TIFFInitCCITTFax4 },
{ "ISO JBIG", COMPRESSION_JBIG, TIFFInitJBIG },
{ "Deflate", COMPRESSION_DEFLATE, TIFFInitZIP },
{ "AdobeDeflate", COMPRESSION_ADOBE_DEFLATE , TIFFInitZIP },
{ "PixarLog", COMPRESSION_PIXARLOG, TIFFInitPixarLog },
{ "SGILog", COMPRESSION_SGILOG, TIFFInitSGILog },
{ "SGILog24", COMPRESSION_SGILOG24, TIFFInitSGILog },
{ NULL }
};
static int
_notConfigured(TIFF* tif)
{
const TIFFCodec* c = TIFFFindCODEC(tif->tif_dir.td_compression);
TIFFError(tif->tif_name,
"%s compression support is not configured", c->name);
return (0);
}
static int
NotConfigured(TIFF* tif, int scheme)
{
(void) scheme;
tif->tif_decodestatus = FALSE;
tif->tif_setupdecode = _notConfigured;
tif->tif_encodestatus = FALSE;
tif->tif_setupencode = _notConfigured;
return (1);
}
/************************************************************************/
/* TIFFIsCODECConfigured() */
/************************************************************************/
/**
* Check whether we have working codec for the specific coding scheme.
*
* @return returns 1 if the codec is configured and working. Otherwise
* 0 will be returned.
*/
int
TIFFIsCODECConfigured(uint16 scheme)
{
const TIFFCodec* codec = TIFFFindCODEC(scheme);
if(codec == NULL) {
return 0;
}
if(codec->init == NULL) {
return 0;
}
if(codec->init != NotConfigured){
return 1;
}
return 0;
}

View File

@@ -1,268 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* CIE L*a*b* to CIE XYZ and CIE XYZ to RGB conversion routines are taken
* from the VIPS library (http://www.vips.ecs.soton.ac.uk) with
* the permission of John Cupitt, the VIPS author.
*/
/*
* TIFF Library.
*
* Color space conversion routines.
*/
#include "tiffiop.h"
#include <math.h>
/*
* Convert color value from the CIE L*a*b* 1976 space to CIE XYZ.
*/
void
TIFFCIELabToXYZ(TIFFCIELabToRGB *cielab, uint32 l, int32 a, int32 b,
float *X, float *Y, float *Z)
{
float L = (float)l * 100.0F / 255.0F;
float cby, tmp;
if( L < 8.856F ) {
*Y = (L * cielab->Y0) / 903.292F;
cby = 7.787F * (*Y / cielab->Y0) + 16.0F / 116.0F;
} else {
cby = (L + 16.0F) / 116.0F;
*Y = cielab->Y0 * cby * cby * cby;
}
tmp = (float)a / 500.0F + cby;
if( tmp < 0.2069F )
*X = cielab->X0 * (tmp - 0.13793F) / 7.787F;
else
*X = cielab->X0 * tmp * tmp * tmp;
tmp = cby - (float)b / 200.0F;
if( tmp < 0.2069F )
*Z = cielab->Z0 * (tmp - 0.13793F) / 7.787F;
else
*Z = cielab->Z0 * tmp * tmp * tmp;
}
#define RINT(R) ((uint32)((R)>0?((R)+0.5):((R)-0.5)))
/*
* Convert color value from the XYZ space to RGB.
*/
void
TIFFXYZToRGB(TIFFCIELabToRGB *cielab, float X, float Y, float Z,
uint32 *r, uint32 *g, uint32 *b)
{
int i;
float Yr, Yg, Yb;
float *matrix = &cielab->display.d_mat[0][0];
/* Multiply through the matrix to get luminosity values. */
Yr = matrix[0] * X + matrix[1] * Y + matrix[2] * Z;
Yg = matrix[3] * X + matrix[4] * Y + matrix[5] * Z;
Yb = matrix[6] * X + matrix[7] * Y + matrix[8] * Z;
/* Clip input */
Yr = TIFFmax( Yr, cielab->display.d_Y0R );
Yg = TIFFmax( Yg, cielab->display.d_Y0G );
Yb = TIFFmax( Yb, cielab->display.d_Y0B );
/* Turn luminosity to colour value. */
i = TIFFmin(cielab->range,
(int)((Yr - cielab->display.d_Y0R) / cielab->rstep));
*r = RINT(cielab->Yr2r[i]);
i = TIFFmin(cielab->range,
(int)((Yg - cielab->display.d_Y0G) / cielab->gstep));
*g = RINT(cielab->Yg2g[i]);
i = TIFFmin(cielab->range,
(int)((Yb - cielab->display.d_Y0B) / cielab->bstep));
*b = RINT(cielab->Yb2b[i]);
/* Clip output. */
*r = TIFFmin( *r, cielab->display.d_Vrwr );
*g = TIFFmin( *g, cielab->display.d_Vrwg );
*b = TIFFmin( *b, cielab->display.d_Vrwb );
}
#undef RINT
/*
* Allocate conversion state structures and make look_up tables for
* the Yr,Yb,Yg <=> r,g,b conversions.
*/
int
TIFFCIELabToRGBInit(TIFFCIELabToRGB* cielab,
TIFFDisplay *display, float *refWhite)
{
int i;
float gamma;
cielab->range = CIELABTORGB_TABLE_RANGE;
_TIFFmemcpy(&cielab->display, display, sizeof(TIFFDisplay));
/* Red */
gamma = 1.0F / cielab->display.d_gammaR ;
cielab->rstep =
(cielab->display.d_YCR - cielab->display.d_Y0R) / cielab->range;
for(i = 0; i <= cielab->range; i++) {
cielab->Yr2r[i] = cielab->display.d_Vrwr
* ((float)pow((double)i / cielab->range, gamma));
}
/* Green */
gamma = 1.0F / cielab->display.d_gammaG ;
cielab->gstep =
(cielab->display.d_YCR - cielab->display.d_Y0R) / cielab->range;
for(i = 0; i <= cielab->range; i++) {
cielab->Yg2g[i] = cielab->display.d_Vrwg
* ((float)pow((double)i / cielab->range, gamma));
}
/* Blue */
gamma = 1.0F / cielab->display.d_gammaB ;
cielab->bstep =
(cielab->display.d_YCR - cielab->display.d_Y0R) / cielab->range;
for(i = 0; i <= cielab->range; i++) {
cielab->Yb2b[i] = cielab->display.d_Vrwb
* ((float)pow((double)i / cielab->range, gamma));
}
/* Init reference white point */
cielab->X0 = refWhite[0];
cielab->Y0 = refWhite[1];
cielab->Z0 = refWhite[2];
return 0;
}
/*
* Convert color value from the YCbCr space to CIE XYZ.
* The colorspace conversion algorithm comes from the IJG v5a code;
* see below for more information on how it works.
*/
#define SHIFT 16
#define FIX(x) ((int32)((x) * (1L<<SHIFT) + 0.5))
#define ONE_HALF ((int32)(1<<(SHIFT-1)))
#define Code2V(c, RB, RW, CR) ((((c)-(int32)(RB))*(float)(CR))/(float)((RW)-(RB)))
#define CLAMP(f,min,max) ((f)<(min)?(min):(f)>(max)?(max):(f))
void
TIFFYCbCrtoRGB(TIFFYCbCrToRGB *ycbcr, uint32 Y, int32 Cb, int32 Cr,
uint32 *r, uint32 *g, uint32 *b)
{
/* XXX: Only 8-bit YCbCr input supported for now */
Y = CLAMP(Y, 0, 255), Cb = CLAMP(Cb, 0, 255), Cr = CLAMP(Cr, 0, 255);
*r = ycbcr->clamptab[ycbcr->Y_tab[Y] + ycbcr->Cr_r_tab[Cr]];
*g = ycbcr->clamptab[ycbcr->Y_tab[Y]
+ (int)((ycbcr->Cb_g_tab[Cb] + ycbcr->Cr_g_tab[Cr]) >> SHIFT)];
*b = ycbcr->clamptab[ycbcr->Y_tab[Y] + ycbcr->Cb_b_tab[Cb]];
}
/*
* Initialize the YCbCr->RGB conversion tables. The conversion
* is done according to the 6.0 spec:
*
* R = Y + Cr*(2 - 2*LumaRed)
* B = Y + Cb*(2 - 2*LumaBlue)
* G = Y
* - LumaBlue*Cb*(2-2*LumaBlue)/LumaGreen
* - LumaRed*Cr*(2-2*LumaRed)/LumaGreen
*
* To avoid floating point arithmetic the fractional constants that
* come out of the equations are represented as fixed point values
* in the range 0...2^16. We also eliminate multiplications by
* pre-calculating possible values indexed by Cb and Cr (this code
* assumes conversion is being done for 8-bit samples).
*/
int
TIFFYCbCrToRGBInit(TIFFYCbCrToRGB* ycbcr, float *luma, float *refBlackWhite)
{
TIFFRGBValue* clamptab;
int i;
#define LumaRed luma[0]
#define LumaGreen luma[1]
#define LumaBlue luma[2]
clamptab = (TIFFRGBValue*)(
(tidata_t) ycbcr+TIFFroundup(sizeof (TIFFYCbCrToRGB), sizeof (long)));
_TIFFmemset(clamptab, 0, 256); /* v < 0 => 0 */
ycbcr->clamptab = (clamptab += 256);
for (i = 0; i < 256; i++)
clamptab[i] = (TIFFRGBValue) i;
_TIFFmemset(clamptab+256, 255, 2*256); /* v > 255 => 255 */
ycbcr->Cr_r_tab = (int*) (clamptab + 3*256);
ycbcr->Cb_b_tab = ycbcr->Cr_r_tab + 256;
ycbcr->Cr_g_tab = (int32*) (ycbcr->Cb_b_tab + 256);
ycbcr->Cb_g_tab = ycbcr->Cr_g_tab + 256;
ycbcr->Y_tab = ycbcr->Cb_g_tab + 256;
{ float f1 = 2-2*LumaRed; int32 D1 = FIX(f1);
float f2 = LumaRed*f1/LumaGreen; int32 D2 = -FIX(f2);
float f3 = 2-2*LumaBlue; int32 D3 = FIX(f3);
float f4 = LumaBlue*f3/LumaGreen; int32 D4 = -FIX(f4);
int x;
#undef LumaBlue
#undef LumaGreen
#undef LumaRed
/*
* i is the actual input pixel value in the range 0..255
* Cb and Cr values are in the range -128..127 (actually
* they are in a range defined by the ReferenceBlackWhite
* tag) so there is some range shifting to do here when
* constructing tables indexed by the raw pixel data.
*/
for (i = 0, x = -128; i < 256; i++, x++) {
int32 Cr = (int32)Code2V(x, refBlackWhite[4] - 128.0F,
refBlackWhite[5] - 128.0F, 127);
int32 Cb = (int32)Code2V(x, refBlackWhite[2] - 128.0F,
refBlackWhite[3] - 128.0F, 127);
ycbcr->Cr_r_tab[i] = (int32)((D1*Cr + ONE_HALF)>>SHIFT);
ycbcr->Cb_b_tab[i] = (int32)((D3*Cb + ONE_HALF)>>SHIFT);
ycbcr->Cr_g_tab[i] = D2*Cr;
ycbcr->Cb_g_tab[i] = D4*Cb + ONE_HALF;
ycbcr->Y_tab[i] =
(int32)Code2V(x + 128, refBlackWhite[0], refBlackWhite[1], 255);
}
}
return 0;
}
#undef CLAMP
#undef Code2V
#undef SHIFT
#undef ONE_HALF
#undef FIX

View File

@@ -1,235 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library
*
* Compression Scheme Configuration Support.
*/
#include "tiffiop.h"
static int
TIFFNoEncode(TIFF* tif, char* method)
{
const TIFFCodec* c = TIFFFindCODEC(tif->tif_dir.td_compression);
if (c) {
if (! strncmp(c->name, "LZW", 3) ){
TIFFError(tif->tif_name,
"%s %s encoding is no longer implemented due to Unisys patent enforcement",
c->name, method);
} else {
TIFFError(tif->tif_name, "%s %s encoding is not implemented",
c->name, method);
}
}
else {
TIFFError(tif->tif_name,
"Compression scheme %u %s encoding is not implemented",
tif->tif_dir.td_compression, method);
}
return (-1);
}
int
_TIFFNoRowEncode(TIFF* tif, tidata_t pp, tsize_t cc, tsample_t s)
{
(void) pp; (void) cc; (void) s;
return (TIFFNoEncode(tif, "scanline"));
}
int
_TIFFNoStripEncode(TIFF* tif, tidata_t pp, tsize_t cc, tsample_t s)
{
(void) pp; (void) cc; (void) s;
return (TIFFNoEncode(tif, "strip"));
}
int
_TIFFNoTileEncode(TIFF* tif, tidata_t pp, tsize_t cc, tsample_t s)
{
(void) pp; (void) cc; (void) s;
return (TIFFNoEncode(tif, "tile"));
}
static int
TIFFNoDecode(TIFF* tif, char* method)
{
const TIFFCodec* c = TIFFFindCODEC(tif->tif_dir.td_compression);
if (c)
TIFFError(tif->tif_name, "%s %s decoding is not implemented",
c->name, method);
else
TIFFError(tif->tif_name,
"Compression scheme %u %s decoding is not implemented",
tif->tif_dir.td_compression, method);
return (-1);
}
int
_TIFFNoRowDecode(TIFF* tif, tidata_t pp, tsize_t cc, tsample_t s)
{
(void) pp; (void) cc; (void) s;
return (TIFFNoDecode(tif, "scanline"));
}
int
_TIFFNoStripDecode(TIFF* tif, tidata_t pp, tsize_t cc, tsample_t s)
{
(void) pp; (void) cc; (void) s;
return (TIFFNoDecode(tif, "strip"));
}
int
_TIFFNoTileDecode(TIFF* tif, tidata_t pp, tsize_t cc, tsample_t s)
{
(void) pp; (void) cc; (void) s;
return (TIFFNoDecode(tif, "tile"));
}
int
_TIFFNoSeek(TIFF* tif, uint32 off)
{
(void) off;
TIFFError(tif->tif_name,
"Compression algorithm does not support random access");
return (0);
}
int
_TIFFNoPreCode(TIFF* tif, tsample_t s)
{
(void) tif; (void) s;
return (1);
}
static int _TIFFtrue(TIFF* tif) { (void) tif; return (1); }
static void _TIFFvoid(TIFF* tif) { (void) tif; }
void
_TIFFSetDefaultCompressionState(TIFF* tif)
{
tif->tif_decodestatus = TRUE;
tif->tif_setupdecode = _TIFFtrue;
tif->tif_predecode = _TIFFNoPreCode;
tif->tif_decoderow = _TIFFNoRowDecode;
tif->tif_decodestrip = _TIFFNoStripDecode;
tif->tif_decodetile = _TIFFNoTileDecode;
tif->tif_encodestatus = TRUE;
tif->tif_setupencode = _TIFFtrue;
tif->tif_preencode = _TIFFNoPreCode;
tif->tif_postencode = _TIFFtrue;
tif->tif_encoderow = _TIFFNoRowEncode;
tif->tif_encodestrip = _TIFFNoStripEncode;
tif->tif_encodetile = _TIFFNoTileEncode;
tif->tif_close = _TIFFvoid;
tif->tif_seek = _TIFFNoSeek;
tif->tif_cleanup = _TIFFvoid;
tif->tif_defstripsize = _TIFFDefaultStripSize;
tif->tif_deftilesize = _TIFFDefaultTileSize;
tif->tif_flags &= ~TIFF_NOBITREV;
}
int
TIFFSetCompressionScheme(TIFF* tif, int scheme)
{
const TIFFCodec *c = TIFFFindCODEC((uint16) scheme);
_TIFFSetDefaultCompressionState(tif);
/*
* Don't treat an unknown compression scheme as an error.
* This permits applications to open files with data that
* the library does not have builtin support for, but which
* may still be meaningful.
*/
return (c ? (*c->init)(tif, scheme) : 1);
}
/*
* Other compression schemes may be registered. Registered
* schemes can also override the builtin versions provided
* by this library.
*/
typedef struct _codec {
struct _codec* next;
TIFFCodec* info;
} codec_t;
static codec_t* registeredCODECS = NULL;
const TIFFCodec*
TIFFFindCODEC(uint16 scheme)
{
const TIFFCodec* c;
codec_t* cd;
for (cd = registeredCODECS; cd; cd = cd->next)
if (cd->info->scheme == scheme)
return ((const TIFFCodec*) cd->info);
for (c = _TIFFBuiltinCODECS; c->name; c++)
if (c->scheme == scheme)
return (c);
return ((const TIFFCodec*) 0);
}
TIFFCodec*
TIFFRegisterCODEC(uint16 scheme, const char* name, TIFFInitMethod init)
{
codec_t* cd = (codec_t*)
_TIFFmalloc(sizeof (codec_t) + sizeof (TIFFCodec) + strlen(name)+1);
if (cd != NULL) {
cd->info = (TIFFCodec*) ((tidata_t) cd + sizeof (codec_t));
cd->info->name = (char*)
((tidata_t) cd->info + sizeof (TIFFCodec));
strcpy(cd->info->name, name);
cd->info->scheme = scheme;
cd->info->init = init;
cd->next = registeredCODECS;
registeredCODECS = cd;
} else {
TIFFError("TIFFRegisterCODEC",
"No space to register compression scheme %s", name);
return NULL;
}
return (cd->info);
}
void
TIFFUnRegisterCODEC(TIFFCodec* c)
{
codec_t* cd;
codec_t** pcd;
for (pcd = &registeredCODECS; (cd = *pcd); pcd = &cd->next)
if (cd->info == c) {
*pcd = cd->next;
_TIFFfree(cd);
return;
}
TIFFError("TIFFUnRegisterCODEC",
"Cannot remove compression scheme %s; not registered", c->name);
}

File diff suppressed because it is too large Load Diff

View File

@@ -1,267 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
#ifndef _TIFFDIR_
#define _TIFFDIR_
/*
* ``Library-private'' Directory-related Definitions.
*/
/*
* Internal format of a TIFF directory entry.
*/
typedef struct {
#define FIELD_SETLONGS 4
/* bit vector of fields that are set */
u_long td_fieldsset[FIELD_SETLONGS];
uint32 td_imagewidth, td_imagelength, td_imagedepth;
uint32 td_tilewidth, td_tilelength, td_tiledepth;
uint32 td_subfiletype;
uint16 td_bitspersample;
uint16 td_sampleformat;
uint16 td_compression;
uint16 td_photometric;
uint16 td_threshholding;
uint16 td_fillorder;
uint16 td_orientation;
uint16 td_samplesperpixel;
uint32 td_rowsperstrip;
uint16 td_minsamplevalue, td_maxsamplevalue;
double td_sminsamplevalue, td_smaxsamplevalue;
float td_xresolution, td_yresolution;
uint16 td_resolutionunit;
uint16 td_planarconfig;
float td_xposition, td_yposition;
uint16 td_pagenumber[2];
uint16* td_colormap[3];
uint16 td_halftonehints[2];
uint16 td_extrasamples;
uint16* td_sampleinfo;
double td_stonits;
char* td_documentname;
char* td_artist;
char* td_datetime;
char* td_hostcomputer;
char* td_imagedescription;
char* td_make;
char* td_model;
char* td_copyright;
char* td_pagename;
tstrip_t td_stripsperimage;
tstrip_t td_nstrips; /* size of offset & bytecount arrays */
uint32* td_stripoffset;
uint32* td_stripbytecount;
#if SUBIFD_SUPPORT
uint16 td_nsubifd;
uint32* td_subifd;
#endif
#ifdef YCBCR_SUPPORT
float* td_ycbcrcoeffs;
uint16 td_ycbcrsubsampling[2];
uint16 td_ycbcrpositioning;
#endif
#ifdef COLORIMETRY_SUPPORT
float* td_whitepoint;
float* td_primarychromas;
float* td_refblackwhite;
uint16* td_transferfunction[3];
#endif
#ifdef CMYK_SUPPORT
uint16 td_inkset;
uint16 td_ninks;
uint16 td_dotrange[2];
int td_inknameslen;
char* td_inknames;
char* td_targetprinter;
#endif
#ifdef ICC_SUPPORT
uint32 td_profileLength;
void *td_profileData;
#endif
#ifdef PHOTOSHOP_SUPPORT
uint32 td_photoshopLength;
void *td_photoshopData;
#endif
#ifdef IPTC_SUPPORT
uint32 td_richtiffiptcLength;
void *td_richtiffiptcData;
#endif
/* Begin Pixar Tag values. */
uint32 td_imagefullwidth, td_imagefulllength;
char* td_textureformat;
char* td_wrapmodes;
float td_fovcot;
float* td_matrixWorldToScreen;
float* td_matrixWorldToCamera;
/* End Pixar Tag Values. */
uint32 td_xmlpacketLength;
void *td_xmlpacketData;
int td_customValueCount;
TIFFTagValue *td_customValues;
} TIFFDirectory;
/*
* Field flags used to indicate fields that have
* been set in a directory, and to reference fields
* when manipulating a directory.
*/
/*
* FIELD_IGNORE is used to signify tags that are to
* be processed but otherwise ignored. This permits
* antiquated tags to be quietly read and discarded.
* Note that a bit *is* allocated for ignored tags;
* this is understood by the directory reading logic
* which uses this fact to avoid special-case handling
*/
#define FIELD_IGNORE 0
/* multi-item fields */
#define FIELD_IMAGEDIMENSIONS 1
#define FIELD_TILEDIMENSIONS 2
#define FIELD_RESOLUTION 3
#define FIELD_POSITION 4
/* single-item fields */
#define FIELD_SUBFILETYPE 5
#define FIELD_BITSPERSAMPLE 6
#define FIELD_COMPRESSION 7
#define FIELD_PHOTOMETRIC 8
#define FIELD_THRESHHOLDING 9
#define FIELD_FILLORDER 10
#define FIELD_DOCUMENTNAME 11
#define FIELD_IMAGEDESCRIPTION 12
#define FIELD_MAKE 13
#define FIELD_MODEL 14
#define FIELD_ORIENTATION 15
#define FIELD_SAMPLESPERPIXEL 16
#define FIELD_ROWSPERSTRIP 17
#define FIELD_MINSAMPLEVALUE 18
#define FIELD_MAXSAMPLEVALUE 19
#define FIELD_PLANARCONFIG 20
#define FIELD_PAGENAME 21
#define FIELD_RESOLUTIONUNIT 22
#define FIELD_PAGENUMBER 23
#define FIELD_STRIPBYTECOUNTS 24
#define FIELD_STRIPOFFSETS 25
#define FIELD_COLORMAP 26
#define FIELD_ARTIST 27
#define FIELD_DATETIME 28
#define FIELD_HOSTCOMPUTER 29
/* unused - was FIELD_SOFTWARE 30 */
#define FIELD_EXTRASAMPLES 31
#define FIELD_SAMPLEFORMAT 32
#define FIELD_SMINSAMPLEVALUE 33
#define FIELD_SMAXSAMPLEVALUE 34
#define FIELD_IMAGEDEPTH 35
#define FIELD_TILEDEPTH 36
#define FIELD_HALFTONEHINTS 37
#define FIELD_YCBCRCOEFFICIENTS 38
#define FIELD_YCBCRSUBSAMPLING 39
#define FIELD_YCBCRPOSITIONING 40
#define FIELD_REFBLACKWHITE 41
#define FIELD_WHITEPOINT 42
#define FIELD_PRIMARYCHROMAS 43
#define FIELD_TRANSFERFUNCTION 44
#define FIELD_INKSET 45
#define FIELD_INKNAMES 46
#define FIELD_DOTRANGE 47
#define FIELD_TARGETPRINTER 48
#define FIELD_SUBIFD 49
#define FIELD_NUMBEROFINKS 50
#define FIELD_ICCPROFILE 51
#define FIELD_PHOTOSHOP 52
#define FIELD_RICHTIFFIPTC 53
#define FIELD_STONITS 54
/* Begin PIXAR */
#define FIELD_IMAGEFULLWIDTH 55
#define FIELD_IMAGEFULLLENGTH 56
#define FIELD_TEXTUREFORMAT 57
#define FIELD_WRAPMODES 58
#define FIELD_FOVCOT 59
#define FIELD_MATRIX_WORLDTOSCREEN 60
#define FIELD_MATRIX_WORLDTOCAMERA 61
#define FIELD_COPYRIGHT 62
#define FIELD_XMLPACKET 63
/* FIELD_CUSTOM (see tiffio.h) 65 */
/* end of support for well-known tags; codec-private tags follow */
#define FIELD_CODEC 66 /* base of codec-private tags */
/*
* Pseudo-tags don't normally need field bits since they
* are not written to an output file (by definition).
* The library also has express logic to always query a
* codec for a pseudo-tag so allocating a field bit for
* one is a waste. If codec wants to promote the notion
* of a pseudo-tag being ``set'' or ``unset'' then it can
* do using internal state flags without polluting the
* field bit space defined for real tags.
*/
#define FIELD_PSEUDO 0
#define FIELD_LAST (32*FIELD_SETLONGS-1)
#define TIFFExtractData(tif, type, v) \
((uint32) ((tif)->tif_header.tiff_magic == TIFF_BIGENDIAN ? \
((v) >> (tif)->tif_typeshift[type]) & (tif)->tif_typemask[type] : \
(v) & (tif)->tif_typemask[type]))
#define TIFFInsertData(tif, type, v) \
((uint32) ((tif)->tif_header.tiff_magic == TIFF_BIGENDIAN ? \
((v) & (tif)->tif_typemask[type]) << (tif)->tif_typeshift[type] : \
(v) & (tif)->tif_typemask[type]))
#define BITn(n) (((u_long)1L)<<((n)&0x1f))
#define BITFIELDn(tif, n) ((tif)->tif_dir.td_fieldsset[(n)/32])
#define TIFFFieldSet(tif, field) (BITFIELDn(tif, field) & BITn(field))
#define TIFFSetFieldBit(tif, field) (BITFIELDn(tif, field) |= BITn(field))
#define TIFFClrFieldBit(tif, field) (BITFIELDn(tif, field) &= ~BITn(field))
#define FieldSet(fields, f) (fields[(f)/32] & BITn(f))
#define ResetFieldBit(fields, f) (fields[(f)/32] &= ~BITn(f))
#if defined(__cplusplus)
extern "C" {
#endif
extern void _TIFFSetupFieldInfo(TIFF*);
extern void _TIFFPrintFieldInfo(TIFF*, FILE*);
extern TIFFDataType _TIFFSampleToTagType(TIFF*);
extern const TIFFFieldInfo* _TIFFFindOrRegisterFieldInfo( TIFF *tif,
ttag_t tag,
TIFFDataType dt );
extern TIFFFieldInfo* _TIFFCreateAnonFieldInfo( TIFF *tif, ttag_t tag,
TIFFDataType dt );
#define _TIFFMergeFieldInfo TIFFMergeFieldInfo
#define _TIFFFindFieldInfo TIFFFindFieldInfo
#define _TIFFFieldWithTag TIFFFieldWithTag
#if defined(__cplusplus)
}
#endif
#endif /* _TIFFDIR_ */

View File

@@ -1,486 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library.
*
* Core Directory Tag Support.
*/
#include "tiffiop.h"
#include <stdlib.h>
#include <assert.h>
#include <stdio.h>
/*
* NB: NB: THIS ARRAY IS ASSUMED TO BE SORTED BY TAG.
* If a tag can have both LONG and SHORT types
* then the LONG must be placed before the SHORT for
* writing to work properly.
*
* NOTE: The second field (field_readcount) and third field (field_writecount)
* sometimes use the values TIFF_VARIABLE (-1), TIFF_VARIABLE2 (-3)
* and TIFFTAG_SPP (-2). The macros should be used but would throw off
* the formatting of the code, so please interprete the -1, -2 and -3
* values accordingly.
*/
#ifndef VMS
static
#endif
const TIFFFieldInfo tiffFieldInfo[] = {
{ TIFFTAG_SUBFILETYPE, 1, 1, TIFF_LONG, FIELD_SUBFILETYPE,
TRUE, FALSE, "SubfileType" },
/* XXX SHORT for compatibility w/ old versions of the library */
{ TIFFTAG_SUBFILETYPE, 1, 1, TIFF_SHORT, FIELD_SUBFILETYPE,
TRUE, FALSE, "SubfileType" },
{ TIFFTAG_OSUBFILETYPE, 1, 1, TIFF_SHORT, FIELD_SUBFILETYPE,
TRUE, FALSE, "OldSubfileType" },
{ TIFFTAG_IMAGEWIDTH, 1, 1, TIFF_LONG, FIELD_IMAGEDIMENSIONS,
FALSE, FALSE, "ImageWidth" },
{ TIFFTAG_IMAGEWIDTH, 1, 1, TIFF_SHORT, FIELD_IMAGEDIMENSIONS,
FALSE, FALSE, "ImageWidth" },
{ TIFFTAG_IMAGELENGTH, 1, 1, TIFF_LONG, FIELD_IMAGEDIMENSIONS,
TRUE, FALSE, "ImageLength" },
{ TIFFTAG_IMAGELENGTH, 1, 1, TIFF_SHORT, FIELD_IMAGEDIMENSIONS,
TRUE, FALSE, "ImageLength" },
/* XXX LONG for compatibility with some broken TIFF writers */
{ TIFFTAG_BITSPERSAMPLE, -1,-1, TIFF_LONG, FIELD_BITSPERSAMPLE,
FALSE, FALSE, "BitsPerSample" },
{ TIFFTAG_BITSPERSAMPLE, -1,-1, TIFF_SHORT, FIELD_BITSPERSAMPLE,
FALSE, FALSE, "BitsPerSample" },
/* XXX LONG for compatibility with some broken TIFF writers */
{ TIFFTAG_COMPRESSION, -1, 1, TIFF_LONG, FIELD_COMPRESSION,
FALSE, FALSE, "Compression" },
{ TIFFTAG_COMPRESSION, -1, 1, TIFF_SHORT, FIELD_COMPRESSION,
FALSE, FALSE, "Compression" },
/* XXX LONG for compatibility with some broken TIFF writers */
{ TIFFTAG_PHOTOMETRIC, 1, 1, TIFF_LONG, FIELD_PHOTOMETRIC,
FALSE, FALSE, "PhotometricInterpretation" },
{ TIFFTAG_PHOTOMETRIC, 1, 1, TIFF_SHORT, FIELD_PHOTOMETRIC,
FALSE, FALSE, "PhotometricInterpretation" },
{ TIFFTAG_THRESHHOLDING, 1, 1, TIFF_SHORT, FIELD_THRESHHOLDING,
TRUE, FALSE, "Threshholding" },
{ TIFFTAG_CELLWIDTH, 1, 1, TIFF_SHORT, FIELD_IGNORE,
TRUE, FALSE, "CellWidth" },
{ TIFFTAG_CELLLENGTH, 1, 1, TIFF_SHORT, FIELD_IGNORE,
TRUE, FALSE, "CellLength" },
{ TIFFTAG_FILLORDER, 1, 1, TIFF_SHORT, FIELD_FILLORDER,
FALSE, FALSE, "FillOrder" },
{ TIFFTAG_DOCUMENTNAME, -1,-1, TIFF_ASCII, FIELD_DOCUMENTNAME,
TRUE, FALSE, "DocumentName" },
{ TIFFTAG_IMAGEDESCRIPTION, -1,-1, TIFF_ASCII, FIELD_IMAGEDESCRIPTION,
TRUE, FALSE, "ImageDescription" },
{ TIFFTAG_MAKE, -1,-1, TIFF_ASCII, FIELD_MAKE,
TRUE, FALSE, "Make" },
{ TIFFTAG_MODEL, -1,-1, TIFF_ASCII, FIELD_MODEL,
TRUE, FALSE, "Model" },
{ TIFFTAG_STRIPOFFSETS, -1,-1, TIFF_LONG, FIELD_STRIPOFFSETS,
FALSE, FALSE, "StripOffsets" },
{ TIFFTAG_STRIPOFFSETS, -1,-1, TIFF_SHORT, FIELD_STRIPOFFSETS,
FALSE, FALSE, "StripOffsets" },
{ TIFFTAG_ORIENTATION, 1, 1, TIFF_SHORT, FIELD_ORIENTATION,
FALSE, FALSE, "Orientation" },
{ TIFFTAG_SAMPLESPERPIXEL, 1, 1, TIFF_SHORT, FIELD_SAMPLESPERPIXEL,
FALSE, FALSE, "SamplesPerPixel" },
{ TIFFTAG_ROWSPERSTRIP, 1, 1, TIFF_LONG, FIELD_ROWSPERSTRIP,
FALSE, FALSE, "RowsPerStrip" },
{ TIFFTAG_ROWSPERSTRIP, 1, 1, TIFF_SHORT, FIELD_ROWSPERSTRIP,
FALSE, FALSE, "RowsPerStrip" },
{ TIFFTAG_STRIPBYTECOUNTS, -1,-1, TIFF_LONG, FIELD_STRIPBYTECOUNTS,
FALSE, FALSE, "StripByteCounts" },
{ TIFFTAG_STRIPBYTECOUNTS, -1,-1, TIFF_SHORT, FIELD_STRIPBYTECOUNTS,
FALSE, FALSE, "StripByteCounts" },
{ TIFFTAG_MINSAMPLEVALUE, -2,-1, TIFF_SHORT, FIELD_MINSAMPLEVALUE,
TRUE, FALSE, "MinSampleValue" },
{ TIFFTAG_MAXSAMPLEVALUE, -2,-1, TIFF_SHORT, FIELD_MAXSAMPLEVALUE,
TRUE, FALSE, "MaxSampleValue" },
{ TIFFTAG_XRESOLUTION, 1, 1, TIFF_RATIONAL, FIELD_RESOLUTION,
FALSE, FALSE, "XResolution" },
{ TIFFTAG_YRESOLUTION, 1, 1, TIFF_RATIONAL, FIELD_RESOLUTION,
FALSE, FALSE, "YResolution" },
{ TIFFTAG_PLANARCONFIG, 1, 1, TIFF_SHORT, FIELD_PLANARCONFIG,
FALSE, FALSE, "PlanarConfiguration" },
{ TIFFTAG_PAGENAME, -1,-1, TIFF_ASCII, FIELD_PAGENAME,
TRUE, FALSE, "PageName" },
{ TIFFTAG_XPOSITION, 1, 1, TIFF_RATIONAL, FIELD_POSITION,
TRUE, FALSE, "XPosition" },
{ TIFFTAG_YPOSITION, 1, 1, TIFF_RATIONAL, FIELD_POSITION,
TRUE, FALSE, "YPosition" },
{ TIFFTAG_FREEOFFSETS, -1,-1, TIFF_LONG, FIELD_IGNORE,
FALSE, FALSE, "FreeOffsets" },
{ TIFFTAG_FREEBYTECOUNTS, -1,-1, TIFF_LONG, FIELD_IGNORE,
FALSE, FALSE, "FreeByteCounts" },
{ TIFFTAG_GRAYRESPONSEUNIT, 1, 1, TIFF_SHORT, FIELD_IGNORE,
TRUE, FALSE, "GrayResponseUnit" },
{ TIFFTAG_GRAYRESPONSECURVE,-1,-1, TIFF_SHORT, FIELD_IGNORE,
TRUE, FALSE, "GrayResponseCurve" },
{ TIFFTAG_RESOLUTIONUNIT, 1, 1, TIFF_SHORT, FIELD_RESOLUTIONUNIT,
FALSE, FALSE, "ResolutionUnit" },
{ TIFFTAG_PAGENUMBER, 2, 2, TIFF_SHORT, FIELD_PAGENUMBER,
TRUE, FALSE, "PageNumber" },
{ TIFFTAG_COLORRESPONSEUNIT, 1, 1, TIFF_SHORT, FIELD_IGNORE,
TRUE, FALSE, "ColorResponseUnit" },
{ TIFFTAG_TRANSFERFUNCTION, -1,-1, TIFF_SHORT, FIELD_TRANSFERFUNCTION,
TRUE, FALSE, "TransferFunction" },
{ TIFFTAG_SOFTWARE, -1,-1, TIFF_ASCII, FIELD_CUSTOM,
TRUE, FALSE, "Software" },
{ TIFFTAG_DATETIME, 20,20, TIFF_ASCII, FIELD_DATETIME,
TRUE, FALSE, "DateTime" },
{ TIFFTAG_ARTIST, -1,-1, TIFF_ASCII, FIELD_ARTIST,
TRUE, FALSE, "Artist" },
{ TIFFTAG_HOSTCOMPUTER, -1,-1, TIFF_ASCII, FIELD_HOSTCOMPUTER,
TRUE, FALSE, "HostComputer" },
{ TIFFTAG_WHITEPOINT, 2, 2, TIFF_RATIONAL,FIELD_WHITEPOINT,
TRUE, FALSE, "WhitePoint" },
{ TIFFTAG_PRIMARYCHROMATICITIES,6,6,TIFF_RATIONAL,FIELD_PRIMARYCHROMAS,
TRUE, FALSE, "PrimaryChromaticities" },
{ TIFFTAG_COLORMAP, -1,-1, TIFF_SHORT, FIELD_COLORMAP,
TRUE, FALSE, "ColorMap" },
{ TIFFTAG_HALFTONEHINTS, 2, 2, TIFF_SHORT, FIELD_HALFTONEHINTS,
TRUE, FALSE, "HalftoneHints" },
{ TIFFTAG_TILEWIDTH, 1, 1, TIFF_LONG, FIELD_TILEDIMENSIONS,
FALSE, FALSE, "TileWidth" },
{ TIFFTAG_TILEWIDTH, 1, 1, TIFF_SHORT, FIELD_TILEDIMENSIONS,
FALSE, FALSE, "TileWidth" },
{ TIFFTAG_TILELENGTH, 1, 1, TIFF_LONG, FIELD_TILEDIMENSIONS,
FALSE, FALSE, "TileLength" },
{ TIFFTAG_TILELENGTH, 1, 1, TIFF_SHORT, FIELD_TILEDIMENSIONS,
FALSE, FALSE, "TileLength" },
{ TIFFTAG_TILEOFFSETS, -1, 1, TIFF_LONG, FIELD_STRIPOFFSETS,
FALSE, FALSE, "TileOffsets" },
{ TIFFTAG_TILEBYTECOUNTS, -1, 1, TIFF_LONG, FIELD_STRIPBYTECOUNTS,
FALSE, FALSE, "TileByteCounts" },
{ TIFFTAG_TILEBYTECOUNTS, -1, 1, TIFF_SHORT, FIELD_STRIPBYTECOUNTS,
FALSE, FALSE, "TileByteCounts" },
{ TIFFTAG_SUBIFD, -1,-1, TIFF_LONG, FIELD_SUBIFD,
TRUE, TRUE, "SubIFD" },
{ TIFFTAG_INKSET, 1, 1, TIFF_SHORT, FIELD_INKSET,
FALSE, FALSE, "InkSet" },
{ TIFFTAG_INKNAMES, -1,-1, TIFF_ASCII, FIELD_INKNAMES,
TRUE, TRUE, "InkNames" },
{ TIFFTAG_NUMBEROFINKS, 1, 1, TIFF_SHORT, FIELD_NUMBEROFINKS,
TRUE, FALSE, "NumberOfInks" },
{ TIFFTAG_DOTRANGE, 2, 2, TIFF_SHORT, FIELD_DOTRANGE,
FALSE, FALSE, "DotRange" },
{ TIFFTAG_DOTRANGE, 2, 2, TIFF_BYTE, FIELD_DOTRANGE,
FALSE, FALSE, "DotRange" },
{ TIFFTAG_TARGETPRINTER, -1,-1, TIFF_ASCII, FIELD_TARGETPRINTER,
TRUE, FALSE, "TargetPrinter" },
{ TIFFTAG_EXTRASAMPLES, -1,-1, TIFF_SHORT, FIELD_EXTRASAMPLES,
FALSE, FALSE, "ExtraSamples" },
/* XXX for bogus Adobe Photoshop v2.5 files */
{ TIFFTAG_EXTRASAMPLES, -1,-1, TIFF_BYTE, FIELD_EXTRASAMPLES,
FALSE, FALSE, "ExtraSamples" },
{ TIFFTAG_SAMPLEFORMAT, -1,-1, TIFF_SHORT, FIELD_SAMPLEFORMAT,
FALSE, FALSE, "SampleFormat" },
{ TIFFTAG_SMINSAMPLEVALUE, -2,-1, TIFF_ANY, FIELD_SMINSAMPLEVALUE,
TRUE, FALSE, "SMinSampleValue" },
{ TIFFTAG_SMAXSAMPLEVALUE, -2,-1, TIFF_ANY, FIELD_SMAXSAMPLEVALUE,
TRUE, FALSE, "SMaxSampleValue" },
{ TIFFTAG_YCBCRCOEFFICIENTS, 3, 3, TIFF_RATIONAL, FIELD_YCBCRCOEFFICIENTS,
FALSE, FALSE, "YCbCrCoefficients" },
{ TIFFTAG_YCBCRSUBSAMPLING, 2, 2, TIFF_SHORT, FIELD_YCBCRSUBSAMPLING,
FALSE, FALSE, "YCbCrSubsampling" },
{ TIFFTAG_YCBCRPOSITIONING, 1, 1, TIFF_SHORT, FIELD_YCBCRPOSITIONING,
FALSE, FALSE, "YCbCrPositioning" },
{ TIFFTAG_REFERENCEBLACKWHITE,6,6,TIFF_RATIONAL, FIELD_REFBLACKWHITE,
TRUE, FALSE, "ReferenceBlackWhite" },
/* XXX temporarily accept LONG for backwards compatibility */
{ TIFFTAG_REFERENCEBLACKWHITE,6,6,TIFF_LONG, FIELD_REFBLACKWHITE,
TRUE, FALSE, "ReferenceBlackWhite" },
{ TIFFTAG_XMLPACKET, -1,-3, TIFF_UNDEFINED, FIELD_XMLPACKET,
FALSE, TRUE, "XMLPacket" },
/* begin SGI tags */
{ TIFFTAG_MATTEING, 1, 1, TIFF_SHORT, FIELD_EXTRASAMPLES,
FALSE, FALSE, "Matteing" },
{ TIFFTAG_DATATYPE, -2,-1, TIFF_SHORT, FIELD_SAMPLEFORMAT,
FALSE, FALSE, "DataType" },
{ TIFFTAG_IMAGEDEPTH, 1, 1, TIFF_LONG, FIELD_IMAGEDEPTH,
FALSE, FALSE, "ImageDepth" },
{ TIFFTAG_IMAGEDEPTH, 1, 1, TIFF_SHORT, FIELD_IMAGEDEPTH,
FALSE, FALSE, "ImageDepth" },
{ TIFFTAG_TILEDEPTH, 1, 1, TIFF_LONG, FIELD_TILEDEPTH,
FALSE, FALSE, "TileDepth" },
{ TIFFTAG_TILEDEPTH, 1, 1, TIFF_SHORT, FIELD_TILEDEPTH,
FALSE, FALSE, "TileDepth" },
/* end SGI tags */
/* begin Pixar tags */
{ TIFFTAG_PIXAR_IMAGEFULLWIDTH, 1, 1, TIFF_LONG, FIELD_IMAGEFULLWIDTH,
TRUE, FALSE, "ImageFullWidth" },
{ TIFFTAG_PIXAR_IMAGEFULLLENGTH, 1, 1, TIFF_LONG, FIELD_IMAGEFULLLENGTH,
TRUE, FALSE, "ImageFullLength" },
{ TIFFTAG_PIXAR_TEXTUREFORMAT, -1,-1, TIFF_ASCII, FIELD_TEXTUREFORMAT,
TRUE, FALSE, "TextureFormat" },
{ TIFFTAG_PIXAR_WRAPMODES, -1,-1, TIFF_ASCII, FIELD_WRAPMODES,
TRUE, FALSE, "TextureWrapModes" },
{ TIFFTAG_PIXAR_FOVCOT, 1, 1, TIFF_FLOAT, FIELD_FOVCOT,
TRUE, FALSE, "FieldOfViewCotan" },
{ TIFFTAG_PIXAR_MATRIX_WORLDTOSCREEN, 16,16, TIFF_FLOAT,
FIELD_MATRIX_WORLDTOSCREEN, TRUE, FALSE, "MatrixWorldToScreen" },
{ TIFFTAG_PIXAR_MATRIX_WORLDTOCAMERA, 16,16, TIFF_FLOAT,
FIELD_MATRIX_WORLDTOCAMERA, TRUE, FALSE, "MatrixWorldToCamera" },
{ TIFFTAG_COPYRIGHT, -1,-1, TIFF_ASCII, FIELD_COPYRIGHT,
TRUE, FALSE, "Copyright" },
/* end Pixar tags */
#ifdef IPTC_SUPPORT
#ifdef PHOTOSHOP_SUPPORT
{ TIFFTAG_RICHTIFFIPTC, -1,-1, TIFF_LONG, FIELD_RICHTIFFIPTC,
FALSE, TRUE, "RichTIFFIPTC" },
#else
{ TIFFTAG_RICHTIFFIPTC, -1,-3, TIFF_UNDEFINED, FIELD_RICHTIFFIPTC,
FALSE, TRUE, "RichTIFFIPTC" },
#endif
#endif
{ TIFFTAG_PHOTOSHOP, -1,-3, TIFF_BYTE, FIELD_PHOTOSHOP,
FALSE, TRUE, "Photoshop" },
{ TIFFTAG_ICCPROFILE, -1,-3, TIFF_UNDEFINED, FIELD_ICCPROFILE,
FALSE, TRUE, "ICC Profile" },
{ TIFFTAG_STONITS, 1, 1, TIFF_DOUBLE, FIELD_STONITS,
FALSE, FALSE, "StoNits" },
};
#define N(a) (sizeof (a) / sizeof (a[0]))
void
_TIFFSetupFieldInfo(TIFF* tif)
{
if (tif->tif_fieldinfo) {
int i;
for (i = 0; i < tif->tif_nfields; i++)
{
TIFFFieldInfo *fld = tif->tif_fieldinfo[i];
if (fld->field_bit == FIELD_CUSTOM &&
strncmp("Tag ", fld->field_name, 4) == 0)
{
_TIFFfree(fld->field_name);
_TIFFfree(fld);
}
}
_TIFFfree(tif->tif_fieldinfo);
tif->tif_nfields = 0;
}
_TIFFMergeFieldInfo(tif, tiffFieldInfo, N(tiffFieldInfo));
}
static int
tagCompare(const void* a, const void* b)
{
const TIFFFieldInfo* ta = *(const TIFFFieldInfo**) a;
const TIFFFieldInfo* tb = *(const TIFFFieldInfo**) b;
/* NB: be careful of return values for 16-bit platforms */
if (ta->field_tag != tb->field_tag)
return (ta->field_tag < tb->field_tag ? -1 : 1);
else
return ((int)tb->field_type - (int)ta->field_type);
}
void
_TIFFMergeFieldInfo(TIFF* tif, const TIFFFieldInfo info[], int n)
{
TIFFFieldInfo** tp;
int i;
if (tif->tif_nfields > 0) {
tif->tif_fieldinfo = (TIFFFieldInfo**)
_TIFFrealloc(tif->tif_fieldinfo,
(tif->tif_nfields+n) * sizeof (TIFFFieldInfo*));
} else {
tif->tif_fieldinfo = (TIFFFieldInfo**)
_TIFFmalloc(n * sizeof (TIFFFieldInfo*));
}
assert(tif->tif_fieldinfo != NULL);
tp = &tif->tif_fieldinfo[tif->tif_nfields];
for (i = 0; i < n; i++)
tp[i] = (TIFFFieldInfo*) &info[i]; /* XXX */
/* Sort the field info by tag number */
qsort(tif->tif_fieldinfo, (size_t) (tif->tif_nfields += n),
sizeof (TIFFFieldInfo*), tagCompare);
}
void
_TIFFPrintFieldInfo(TIFF* tif, FILE* fd)
{
int i;
fprintf(fd, "%s: \n", tif->tif_name);
for (i = 0; i < tif->tif_nfields; i++) {
const TIFFFieldInfo* fip = tif->tif_fieldinfo[i];
fprintf(fd, "field[%2d] %5lu, %2d, %2d, %d, %2d, %5s, %5s, %s\n"
, i
, (unsigned long) fip->field_tag
, fip->field_readcount, fip->field_writecount
, fip->field_type
, fip->field_bit
, fip->field_oktochange ? "TRUE" : "FALSE"
, fip->field_passcount ? "TRUE" : "FALSE"
, fip->field_name
);
}
}
/*
* Return size of TIFFDataType in bytes
*/
int
TIFFDataWidth(TIFFDataType type)
{
switch(type)
{
case 0: /* nothing */
case 1: /* TIFF_BYTE */
case 2: /* TIFF_ASCII */
case 6: /* TIFF_SBYTE */
case 7: /* TIFF_UNDEFINED */
return 1;
case 3: /* TIFF_SHORT */
case 8: /* TIFF_SSHORT */
return 2;
case 4: /* TIFF_LONG */
case 9: /* TIFF_SLONG */
case 11: /* TIFF_FLOAT */
case 13: /* TIFF_IFD */
return 4;
case 5: /* TIFF_RATIONAL */
case 10: /* TIFF_SRATIONAL */
case 12: /* TIFF_DOUBLE */
return 8;
default:
return 0; /* will return 0 for unknown types */
}
}
/*
* Return nearest TIFFDataType to the sample type of an image.
*/
TIFFDataType
_TIFFSampleToTagType(TIFF* tif)
{
uint32 bps = TIFFhowmany8(tif->tif_dir.td_bitspersample);
switch (tif->tif_dir.td_sampleformat) {
case SAMPLEFORMAT_IEEEFP:
return (bps == 4 ? TIFF_FLOAT : TIFF_DOUBLE);
case SAMPLEFORMAT_INT:
return (bps <= 1 ? TIFF_SBYTE :
bps <= 2 ? TIFF_SSHORT : TIFF_SLONG);
case SAMPLEFORMAT_UINT:
return (bps <= 1 ? TIFF_BYTE :
bps <= 2 ? TIFF_SHORT : TIFF_LONG);
case SAMPLEFORMAT_VOID:
return (TIFF_UNDEFINED);
}
/*NOTREACHED*/
return (TIFF_UNDEFINED);
}
const TIFFFieldInfo*
_TIFFFindFieldInfo(TIFF* tif, ttag_t tag, TIFFDataType dt)
{
static const TIFFFieldInfo *last = NULL;
int i, n;
if (last && last->field_tag == tag &&
(dt == TIFF_ANY || dt == last->field_type))
return (last);
/* NB: if table gets big, use sorted search (e.g. binary search) */
if(dt != TIFF_ANY) {
TIFFFieldInfo key = {0, 0, 0, 0, 0, 0, 0, 0};
key.field_tag = tag;
key.field_type = dt;
return((const TIFFFieldInfo *) bsearch(&key,
tif->tif_fieldinfo,
tif->tif_nfields,
sizeof(TIFFFieldInfo),
tagCompare));
} else for (i = 0, n = tif->tif_nfields; i < n; i++) {
const TIFFFieldInfo* fip = tif->tif_fieldinfo[i];
if (fip->field_tag == tag &&
(dt == TIFF_ANY || fip->field_type == dt))
return (last = fip);
}
return ((const TIFFFieldInfo *)0);
}
const TIFFFieldInfo*
_TIFFFieldWithTag(TIFF* tif, ttag_t tag)
{
const TIFFFieldInfo* fip = _TIFFFindFieldInfo(tif, tag, TIFF_ANY);
if (!fip) {
TIFFError("TIFFFieldWithTag",
"Internal error, unknown tag 0x%x", (u_int) tag);
assert(fip != NULL);
/*NOTREACHED*/
}
return (fip);
}
const TIFFFieldInfo*
_TIFFFindOrRegisterFieldInfo( TIFF *tif, ttag_t tag, TIFFDataType dt )
{
const TIFFFieldInfo *fld;
fld = _TIFFFindFieldInfo( tif, tag, dt );
if( fld == NULL )
{
fld = _TIFFCreateAnonFieldInfo( tif, tag, dt );
_TIFFMergeFieldInfo( tif, fld, 1 );
}
return fld;
}
TIFFFieldInfo*
_TIFFCreateAnonFieldInfo(TIFF *tif, ttag_t tag, TIFFDataType field_type)
{
TIFFFieldInfo *fld;
fld = (TIFFFieldInfo *) _TIFFmalloc(sizeof (TIFFFieldInfo));
if (fld == NULL)
return NULL;
_TIFFmemset( fld, 0, sizeof(TIFFFieldInfo) );
fld->field_tag = tag;
fld->field_readcount = TIFF_VARIABLE;
fld->field_writecount = TIFF_VARIABLE;
fld->field_type = field_type;
fld->field_bit = FIELD_CUSTOM;
fld->field_oktochange = TRUE;
fld->field_passcount = TRUE;
fld->field_name = (char *) _TIFFmalloc(32);
if (fld->field_name == NULL) {
_TIFFfree(fld);
return NULL;
}
/* note that this name is a special sign to TIFFClose() and
* _TIFFSetupFieldInfo() to free the field
*/
sprintf(fld->field_name, "Tag %d", (int) tag);
return fld;
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,118 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library.
*
* "Null" Compression Algorithm Support.
*/
#include "tiffiop.h"
#include <assert.h>
/*
* Encode a hunk of pixels.
*/
static int
DumpModeEncode(TIFF* tif, tidata_t pp, tsize_t cc, tsample_t s)
{
(void) s;
while (cc > 0) {
tsize_t n;
n = cc;
if (tif->tif_rawcc + n > tif->tif_rawdatasize)
n = tif->tif_rawdatasize - tif->tif_rawcc;
assert( n > 0 );
/*
* Avoid copy if client has setup raw
* data buffer to avoid extra copy.
*/
if (tif->tif_rawcp != pp)
_TIFFmemcpy(tif->tif_rawcp, pp, n);
tif->tif_rawcp += n;
tif->tif_rawcc += n;
pp += n;
cc -= n;
if (tif->tif_rawcc >= tif->tif_rawdatasize &&
!TIFFFlushData1(tif))
return (-1);
}
return (1);
}
/*
* Decode a hunk of pixels.
*/
static int
DumpModeDecode(TIFF* tif, tidata_t buf, tsize_t cc, tsample_t s)
{
(void) s;
if (tif->tif_rawcc < cc) {
TIFFError(tif->tif_name,
"DumpModeDecode: Not enough data for scanline %d",
tif->tif_row);
return (0);
}
/*
* Avoid copy if client has setup raw
* data buffer to avoid extra copy.
*/
if (tif->tif_rawcp != buf)
_TIFFmemcpy(buf, tif->tif_rawcp, cc);
tif->tif_rawcp += cc;
tif->tif_rawcc -= cc;
return (1);
}
/*
* Seek forwards nrows in the current strip.
*/
static int
DumpModeSeek(TIFF* tif, uint32 nrows)
{
tif->tif_rawcp += nrows * tif->tif_scanlinesize;
tif->tif_rawcc -= nrows * tif->tif_scanlinesize;
return (1);
}
/*
* Initialize dump mode.
*/
int
TIFFInitDumpMode(TIFF* tif, int scheme)
{
(void) scheme;
tif->tif_decoderow = DumpModeDecode;
tif->tif_decodestrip = DumpModeDecode;
tif->tif_decodetile = DumpModeDecode;
tif->tif_encoderow = DumpModeEncode;
tif->tif_encodestrip = DumpModeEncode;
tif->tif_encodetile = DumpModeEncode;
tif->tif_seek = DumpModeSeek;
return (1);
}

View File

@@ -1,49 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library.
*/
#include "tiffiop.h"
TIFFErrorHandler
TIFFSetErrorHandler(TIFFErrorHandler handler)
{
TIFFErrorHandler prev = _TIFFerrorHandler;
_TIFFerrorHandler = handler;
return (prev);
}
void
TIFFError(const char* module, const char* fmt, ...)
{
if (_TIFFerrorHandler) {
va_list ap;
va_start(ap, fmt);
(*_TIFFerrorHandler)(module, fmt, ap);
va_end(ap);
}
}

View File

@@ -1,112 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library.
*
* Various routines support external extension of the tag set, and other
* application extension capabilities.
*/
#include "tiffiop.h"
#include <assert.h>
int TIFFGetTagListCount( TIFF *tif )
{
TIFFDirectory* td = &tif->tif_dir;
return td->td_customValueCount;
}
ttag_t TIFFGetTagListEntry( TIFF *tif, int tag_index )
{
TIFFDirectory* td = &tif->tif_dir;
if( tag_index < 0 || tag_index >= td->td_customValueCount )
return (ttag_t) -1;
else
return td->td_customValues[tag_index].info->field_tag;
}
/*
** This provides read/write access to the TIFFTagMethods within the TIFF
** structure to application code without giving access to the private
** TIFF structure.
*/
TIFFTagMethods *TIFFAccessTagMethods( TIFF *tif )
{
return &(tif->tif_tagmethods);
}
void *TIFFGetClientInfo( TIFF *tif, const char *name )
{
TIFFClientInfoLink *link = tif->tif_clientinfo;
while( link != NULL && strcmp(link->name,name) != 0 )
link = link->next;
if( link != NULL )
return link->data;
else
return NULL;
}
void TIFFSetClientInfo( TIFF *tif, void *data, const char *name )
{
TIFFClientInfoLink *link = tif->tif_clientinfo;
/*
** Do we have an existing link with this name? If so, just
** set it.
*/
while( link != NULL && strcmp(link->name,name) != 0 )
link = link->next;
if( link != NULL )
{
link->data = data;
return;
}
/*
** Create a new link.
*/
link = (TIFFClientInfoLink *) _TIFFmalloc(sizeof(TIFFClientInfoLink));
assert (link != NULL);
link->next = tif->tif_clientinfo;
link->name = (char *) _TIFFmalloc(strlen(name)+1);
assert (link->name != NULL);
strcpy(link->name, name);
link->data = data;
tif->tif_clientinfo = link;
}

File diff suppressed because it is too large Load Diff

View File

@@ -1,525 +0,0 @@
/* $Id$ */
/*
* Copyright (c) 1990-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
#ifndef _FAX3_
#define _FAX3_
/*
* TIFF Library.
*
* CCITT Group 3 (T.4) and Group 4 (T.6) Decompression Support.
*
* Decoder support is derived, with permission, from the code
* in Frank Cringle's viewfax program;
* Copyright (C) 1990, 1995 Frank D. Cringle.
*/
#include "tiff.h"
/*
* To override the default routine used to image decoded
* spans one can use the pseduo tag TIFFTAG_FAXFILLFUNC.
* The routine must have the type signature given below;
* for example:
*
* fillruns(unsigned char* buf, uint32* runs, uint32* erun, uint32 lastx)
*
* where buf is place to set the bits, runs is the array of b&w run
* lengths (white then black), erun is the last run in the array, and
* lastx is the width of the row in pixels. Fill routines can assume
* the run array has room for at least lastx runs and can overwrite
* data in the run array as needed (e.g. to append zero runs to bring
* the count up to a nice multiple).
*/
typedef void (*TIFFFaxFillFunc)(unsigned char*, uint32*, uint32*, uint32);
/*
* The default run filler; made external for other decoders.
*/
#if defined(__cplusplus)
extern "C" {
#endif
extern void _TIFFFax3fillruns(unsigned char*, uint32*, uint32*, uint32);
#if defined(__cplusplus)
}
#endif
/* finite state machine codes */
#define S_Null 0
#define S_Pass 1
#define S_Horiz 2
#define S_V0 3
#define S_VR 4
#define S_VL 5
#define S_Ext 6
#define S_TermW 7
#define S_TermB 8
#define S_MakeUpW 9
#define S_MakeUpB 10
#define S_MakeUp 11
#define S_EOL 12
typedef struct { /* state table entry */
unsigned char State; /* see above */
unsigned char Width; /* width of code in bits */
uint32 Param; /* unsigned 32-bit run length in bits */
} TIFFFaxTabEnt;
extern const TIFFFaxTabEnt TIFFFaxMainTable[];
extern const TIFFFaxTabEnt TIFFFaxWhiteTable[];
extern const TIFFFaxTabEnt TIFFFaxBlackTable[];
/*
* The following macros define the majority of the G3/G4 decoder
* algorithm using the state tables defined elsewhere. To build
* a decoder you need some setup code and some glue code. Note
* that you may also need/want to change the way the NeedBits*
* macros get input data if, for example, you know the data to be
* decoded is properly aligned and oriented (doing so before running
* the decoder can be a big performance win).
*
* Consult the decoder in the TIFF library for an idea of what you
* need to define and setup to make use of these definitions.
*
* NB: to enable a debugging version of these macros define FAX3_DEBUG
* before including this file. Trace output goes to stdout.
*/
#ifndef EndOfData
#define EndOfData() (cp >= ep)
#endif
/*
* Need <=8 or <=16 bits of input data. Unlike viewfax we
* cannot use/assume a word-aligned, properly bit swizzled
* input data set because data may come from an arbitrarily
* aligned, read-only source such as a memory-mapped file.
* Note also that the viewfax decoder does not check for
* running off the end of the input data buffer. This is
* possible for G3-encoded data because it prescans the input
* data to count EOL markers, but can cause problems for G4
* data. In any event, we don't prescan and must watch for
* running out of data since we can't permit the library to
* scan past the end of the input data buffer.
*
* Finally, note that we must handle remaindered data at the end
* of a strip specially. The coder asks for a fixed number of
* bits when scanning for the next code. This may be more bits
* than are actually present in the data stream. If we appear
* to run out of data but still have some number of valid bits
* remaining then we makeup the requested amount with zeros and
* return successfully. If the returned data is incorrect then
* we should be called again and get a premature EOF error;
* otherwise we should get the right answer.
*/
#ifndef NeedBits8
#define NeedBits8(n,eoflab) do { \
if (BitsAvail < (n)) { \
if (EndOfData()) { \
if (BitsAvail == 0) /* no valid bits */ \
goto eoflab; \
BitsAvail = (n); /* pad with zeros */ \
} else { \
BitAcc |= ((uint32) bitmap[*cp++])<<BitsAvail; \
BitsAvail += 8; \
} \
} \
} while (0)
#endif
#ifndef NeedBits16
#define NeedBits16(n,eoflab) do { \
if (BitsAvail < (n)) { \
if (EndOfData()) { \
if (BitsAvail == 0) /* no valid bits */ \
goto eoflab; \
BitsAvail = (n); /* pad with zeros */ \
} else { \
BitAcc |= ((uint32) bitmap[*cp++])<<BitsAvail; \
if ((BitsAvail += 8) < (n)) { \
if (EndOfData()) { \
/* NB: we know BitsAvail is non-zero here */ \
BitsAvail = (n); /* pad with zeros */ \
} else { \
BitAcc |= ((uint32) bitmap[*cp++])<<BitsAvail; \
BitsAvail += 8; \
} \
} \
} \
} \
} while (0)
#endif
#define GetBits(n) (BitAcc & ((1<<(n))-1))
#define ClrBits(n) do { \
BitsAvail -= (n); \
BitAcc >>= (n); \
} while (0)
#ifdef FAX3_DEBUG
static const char* StateNames[] = {
"Null ",
"Pass ",
"Horiz ",
"V0 ",
"VR ",
"VL ",
"Ext ",
"TermW ",
"TermB ",
"MakeUpW",
"MakeUpB",
"MakeUp ",
"EOL ",
};
#define DEBUG_SHOW putchar(BitAcc & (1 << t) ? '1' : '0')
#define LOOKUP8(wid,tab,eoflab) do { \
int t; \
NeedBits8(wid,eoflab); \
TabEnt = tab + GetBits(wid); \
printf("%08lX/%d: %s%5d\t", (long) BitAcc, BitsAvail, \
StateNames[TabEnt->State], TabEnt->Param); \
for (t = 0; t < TabEnt->Width; t++) \
DEBUG_SHOW; \
putchar('\n'); \
fflush(stdout); \
ClrBits(TabEnt->Width); \
} while (0)
#define LOOKUP16(wid,tab,eoflab) do { \
int t; \
NeedBits16(wid,eoflab); \
TabEnt = tab + GetBits(wid); \
printf("%08lX/%d: %s%5d\t", (long) BitAcc, BitsAvail, \
StateNames[TabEnt->State], TabEnt->Param); \
for (t = 0; t < TabEnt->Width; t++) \
DEBUG_SHOW; \
putchar('\n'); \
fflush(stdout); \
ClrBits(TabEnt->Width); \
} while (0)
#define SETVAL(x) do { \
*pa++ = RunLength + (x); \
printf("SETVAL: %d\t%d\n", RunLength + (x), a0); \
a0 += x; \
RunLength = 0; \
} while (0)
#else
#define LOOKUP8(wid,tab,eoflab) do { \
NeedBits8(wid,eoflab); \
TabEnt = tab + GetBits(wid); \
ClrBits(TabEnt->Width); \
} while (0)
#define LOOKUP16(wid,tab,eoflab) do { \
NeedBits16(wid,eoflab); \
TabEnt = tab + GetBits(wid); \
ClrBits(TabEnt->Width); \
} while (0)
/*
* Append a run to the run length array for the
* current row and reset decoding state.
*/
#define SETVAL(x) do { \
*pa++ = RunLength + (x); \
a0 += (x); \
RunLength = 0; \
} while (0)
#endif
/*
* Synchronize input decoding at the start of each
* row by scanning for an EOL (if appropriate) and
* skipping any trash data that might be present
* after a decoding error. Note that the decoding
* done elsewhere that recognizes an EOL only consumes
* 11 consecutive zero bits. This means that if EOLcnt
* is non-zero then we still need to scan for the final flag
* bit that is part of the EOL code.
*/
#define SYNC_EOL(eoflab) do { \
if (EOLcnt == 0) { \
for (;;) { \
NeedBits16(11,eoflab); \
if (GetBits(11) == 0) \
break; \
ClrBits(1); \
} \
} \
for (;;) { \
NeedBits8(8,eoflab); \
if (GetBits(8)) \
break; \
ClrBits(8); \
} \
while (GetBits(1) == 0) \
ClrBits(1); \
ClrBits(1); /* EOL bit */ \
EOLcnt = 0; /* reset EOL counter/flag */ \
} while (0)
/*
* Cleanup the array of runs after decoding a row.
* We adjust final runs to insure the user buffer is not
* overwritten and/or undecoded area is white filled.
*/
#define CLEANUP_RUNS() do { \
if (RunLength) \
SETVAL(0); \
if (a0 != lastx) { \
badlength(a0, lastx); \
while (a0 > lastx && pa > thisrun) \
a0 -= *--pa; \
if (a0 < lastx) { \
if (a0 < 0) \
a0 = 0; \
if ((pa-thisrun)&1) \
SETVAL(0); \
SETVAL(lastx - a0); \
} else if (a0 > lastx) { \
SETVAL(lastx); \
SETVAL(0); \
} \
} \
} while (0)
/*
* Decode a line of 1D-encoded data.
*
* The line expanders are written as macros so that they can be reused
* but still have direct access to the local variables of the "calling"
* function.
*
* Note that unlike the original version we have to explicitly test for
* a0 >= lastx after each black/white run is decoded. This is because
* the original code depended on the input data being zero-padded to
* insure the decoder recognized an EOL before running out of data.
*/
#define EXPAND1D(eoflab) do { \
for (;;) { \
for (;;) { \
LOOKUP16(12, TIFFFaxWhiteTable, eof1d); \
switch (TabEnt->State) { \
case S_EOL: \
EOLcnt = 1; \
goto done1d; \
case S_TermW: \
SETVAL(TabEnt->Param); \
goto doneWhite1d; \
case S_MakeUpW: \
case S_MakeUp: \
a0 += TabEnt->Param; \
RunLength += TabEnt->Param; \
break; \
default: \
unexpected("WhiteTable", a0); \
goto done1d; \
} \
} \
doneWhite1d: \
if (a0 >= lastx) \
goto done1d; \
for (;;) { \
LOOKUP16(13, TIFFFaxBlackTable, eof1d); \
switch (TabEnt->State) { \
case S_EOL: \
EOLcnt = 1; \
goto done1d; \
case S_TermB: \
SETVAL(TabEnt->Param); \
goto doneBlack1d; \
case S_MakeUpB: \
case S_MakeUp: \
a0 += TabEnt->Param; \
RunLength += TabEnt->Param; \
break; \
default: \
unexpected("BlackTable", a0); \
goto done1d; \
} \
} \
doneBlack1d: \
if (a0 >= lastx) \
goto done1d; \
if( *(pa-1) == 0 && *(pa-2) == 0 ) \
pa -= 2; \
} \
eof1d: \
prematureEOF(a0); \
CLEANUP_RUNS(); \
goto eoflab; \
done1d: \
CLEANUP_RUNS(); \
} while (0)
/*
* Update the value of b1 using the array
* of runs for the reference line.
*/
#define CHECK_b1 do { \
if (pa != thisrun) while (b1 <= a0 && b1 < lastx) { \
b1 += pb[0] + pb[1]; \
pb += 2; \
} \
} while (0)
/*
* Expand a row of 2D-encoded data.
*/
#define EXPAND2D(eoflab) do { \
while (a0 < lastx) { \
LOOKUP8(7, TIFFFaxMainTable, eof2d); \
switch (TabEnt->State) { \
case S_Pass: \
CHECK_b1; \
b1 += *pb++; \
RunLength += b1 - a0; \
a0 = b1; \
b1 += *pb++; \
break; \
case S_Horiz: \
if ((pa-thisrun)&1) { \
for (;;) { /* black first */ \
LOOKUP16(13, TIFFFaxBlackTable, eof2d); \
switch (TabEnt->State) { \
case S_TermB: \
SETVAL(TabEnt->Param); \
goto doneWhite2da; \
case S_MakeUpB: \
case S_MakeUp: \
a0 += TabEnt->Param; \
RunLength += TabEnt->Param; \
break; \
default: \
goto badBlack2d; \
} \
} \
doneWhite2da:; \
for (;;) { /* then white */ \
LOOKUP16(12, TIFFFaxWhiteTable, eof2d); \
switch (TabEnt->State) { \
case S_TermW: \
SETVAL(TabEnt->Param); \
goto doneBlack2da; \
case S_MakeUpW: \
case S_MakeUp: \
a0 += TabEnt->Param; \
RunLength += TabEnt->Param; \
break; \
default: \
goto badWhite2d; \
} \
} \
doneBlack2da:; \
} else { \
for (;;) { /* white first */ \
LOOKUP16(12, TIFFFaxWhiteTable, eof2d); \
switch (TabEnt->State) { \
case S_TermW: \
SETVAL(TabEnt->Param); \
goto doneWhite2db; \
case S_MakeUpW: \
case S_MakeUp: \
a0 += TabEnt->Param; \
RunLength += TabEnt->Param; \
break; \
default: \
goto badWhite2d; \
} \
} \
doneWhite2db:; \
for (;;) { /* then black */ \
LOOKUP16(13, TIFFFaxBlackTable, eof2d); \
switch (TabEnt->State) { \
case S_TermB: \
SETVAL(TabEnt->Param); \
goto doneBlack2db; \
case S_MakeUpB: \
case S_MakeUp: \
a0 += TabEnt->Param; \
RunLength += TabEnt->Param; \
break; \
default: \
goto badBlack2d; \
} \
} \
doneBlack2db:; \
} \
CHECK_b1; \
break; \
case S_V0: \
CHECK_b1; \
SETVAL(b1 - a0); \
b1 += *pb++; \
break; \
case S_VR: \
CHECK_b1; \
SETVAL(b1 - a0 + TabEnt->Param); \
b1 += *pb++; \
break; \
case S_VL: \
CHECK_b1; \
SETVAL(b1 - a0 - TabEnt->Param); \
b1 -= *--pb; \
break; \
case S_Ext: \
*pa++ = lastx - a0; \
extension(a0); \
goto eol2d; \
case S_EOL: \
*pa++ = lastx - a0; \
NeedBits8(4,eof2d); \
if (GetBits(4)) \
unexpected("EOL", a0); \
ClrBits(4); \
EOLcnt = 1; \
goto eol2d; \
default: \
badMain2d: \
unexpected("MainTable", a0); \
goto eol2d; \
badBlack2d: \
unexpected("BlackTable", a0); \
goto eol2d; \
badWhite2d: \
unexpected("WhiteTable", a0); \
goto eol2d; \
eof2d: \
prematureEOF(a0); \
CLEANUP_RUNS(); \
goto eoflab; \
} \
} \
if (RunLength) { \
if (RunLength + a0 < lastx) { \
/* expect a final V0 */ \
NeedBits8(1,eof2d); \
if (!GetBits(1)) \
goto badMain2d; \
ClrBits(1); \
} \
SETVAL(0); \
} \
eol2d: \
CLEANUP_RUNS(); \
} while (0)
#endif /* _FAX3_ */

File diff suppressed because it is too large Load Diff

View File

@@ -1,67 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library.
*/
#include "tiffiop.h"
int
TIFFFlush(TIFF* tif)
{
if (tif->tif_mode != O_RDONLY) {
if (!TIFFFlushData(tif))
return (0);
if ((tif->tif_flags & TIFF_DIRTYDIRECT) &&
!TIFFWriteDirectory(tif))
return (0);
}
return (1);
}
/*
* Flush buffered data to the file.
*
* Frank Warmerdam'2000: I modified this to return 1 if TIFF_BEENWRITING
* is not set, so that TIFFFlush() will proceed to write out the directory.
* The documentation says returning 1 is an error indicator, but not having
* been writing isn't exactly a an error. Hopefully this doesn't cause
* problems for other people.
*/
int
TIFFFlushData(TIFF* tif)
{
if ((tif->tif_flags & TIFF_BEENWRITING) == 0)
return (0);
if (tif->tif_flags & TIFF_POSTENCODE) {
tif->tif_flags &= ~TIFF_POSTENCODE;
if (!(*tif->tif_postencode)(tif))
return (0);
}
return (TIFFFlushData1(tif));
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,745 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
#include "tiffiop.h"
#ifdef LZW_SUPPORT
/*
* TIFF Library.
* Rev 5.0 Lempel-Ziv & Welch Compression Support
*
* This code is derived from the compress program whose code is
* derived from software contributed to Berkeley by James A. Woods,
* derived from original work by Spencer Thomas and Joseph Orost.
*
* The original Berkeley copyright notice appears below in its entirety.
*/
#include "tif_predict.h"
#include <assert.h>
#include <stdio.h>
/*
* NB: The 5.0 spec describes a different algorithm than Aldus
* implements. Specifically, Aldus does code length transitions
* one code earlier than should be done (for real LZW).
* Earlier versions of this library implemented the correct
* LZW algorithm, but emitted codes in a bit order opposite
* to the TIFF spec. Thus, to maintain compatibility w/ Aldus
* we interpret MSB-LSB ordered codes to be images written w/
* old versions of this library, but otherwise adhere to the
* Aldus "off by one" algorithm.
*
* Future revisions to the TIFF spec are expected to "clarify this issue".
*/
#define LZW_COMPAT /* include backwards compatibility code */
/*
* Each strip of data is supposed to be terminated by a CODE_EOI.
* If the following #define is included, the decoder will also
* check for end-of-strip w/o seeing this code. This makes the
* library more robust, but also slower.
*/
#define LZW_CHECKEOS /* include checks for strips w/o EOI code */
#define MAXCODE(n) ((1L<<(n))-1)
/*
* The TIFF spec specifies that encoded bit
* strings range from 9 to 12 bits.
*/
#define BITS_MIN 9 /* start with 9 bits */
#define BITS_MAX 12 /* max of 12 bit strings */
/* predefined codes */
#define CODE_CLEAR 256 /* code to clear string table */
#define CODE_EOI 257 /* end-of-information code */
#define CODE_FIRST 258 /* first free code entry */
#define CODE_MAX MAXCODE(BITS_MAX)
#define HSIZE 9001L /* 91% occupancy */
#define HSHIFT (13-8)
#ifdef LZW_COMPAT
/* NB: +1024 is for compatibility with old files */
#define CSIZE (MAXCODE(BITS_MAX)+1024L)
#else
#define CSIZE (MAXCODE(BITS_MAX)+1L)
#endif
/*
* State block for each open TIFF file using LZW
* compression/decompression. Note that the predictor
* state block must be first in this data structure.
*/
typedef struct {
TIFFPredictorState predict; /* predictor super class */
u_short nbits; /* # of bits/code */
u_short maxcode; /* maximum code for lzw_nbits */
u_short free_ent; /* next free entry in hash table */
long nextdata; /* next bits of i/o */
long nextbits; /* # of valid bits in lzw_nextdata */
} LZWBaseState;
#define lzw_nbits base.nbits
#define lzw_maxcode base.maxcode
#define lzw_free_ent base.free_ent
#define lzw_nextdata base.nextdata
#define lzw_nextbits base.nextbits
/*
* Encoding-specific state.
*/
typedef uint16 hcode_t; /* codes fit in 16 bits */
/*
* Decoding-specific state.
*/
typedef struct code_ent {
struct code_ent *next;
u_short length; /* string len, including this token */
u_char value; /* data value */
u_char firstchar; /* first token of string */
} code_t;
typedef int (*decodeFunc)(TIFF*, tidata_t, tsize_t, tsample_t);
typedef struct {
LZWBaseState base;
/* Decoding specific data */
long dec_nbitsmask; /* lzw_nbits 1 bits, right adjusted */
long dec_restart; /* restart count */
#ifdef LZW_CHECKEOS
long dec_bitsleft; /* available bits in raw data */
#endif
decodeFunc dec_decode; /* regular or backwards compatible */
code_t* dec_codep; /* current recognized code */
code_t* dec_oldcodep; /* previously recognized code */
code_t* dec_free_entp; /* next free entry */
code_t* dec_maxcodep; /* max available entry */
code_t* dec_codetab; /* kept separate for small machines */
} LZWCodecState;
#define LZWState(tif) ((LZWBaseState*) (tif)->tif_data)
#define DecoderState(tif) ((LZWCodecState*) LZWState(tif))
static int LZWDecode(TIFF*, tidata_t, tsize_t, tsample_t);
#ifdef LZW_COMPAT
static int LZWDecodeCompat(TIFF*, tidata_t, tsize_t, tsample_t);
#endif
/*
* LZW Decoder.
*/
#ifdef LZW_CHECKEOS
/*
* This check shouldn't be necessary because each
* strip is suppose to be terminated with CODE_EOI.
*/
#define NextCode(_tif, _sp, _bp, _code, _get) { \
if ((_sp)->dec_bitsleft < nbits) { \
TIFFWarning(_tif->tif_name, \
"LZWDecode: Strip %d not terminated with EOI code", \
_tif->tif_curstrip); \
_code = CODE_EOI; \
} else { \
_get(_sp,_bp,_code); \
(_sp)->dec_bitsleft -= nbits; \
} \
}
#else
#define NextCode(tif, sp, bp, code, get) get(sp, bp, code)
#endif
static int
LZWSetupDecode(TIFF* tif)
{
LZWCodecState* sp = DecoderState(tif);
static const char module[] = "LZWSetupDecode";
int code;
assert(sp != NULL);
if (sp->dec_codetab == NULL) {
sp->dec_codetab = (code_t*)_TIFFmalloc(CSIZE*sizeof (code_t));
if (sp->dec_codetab == NULL) {
TIFFError(module, "No space for LZW code table");
return (0);
}
/*
* Pre-load the table.
*/
code = 255;
do {
sp->dec_codetab[code].value = (u_char) code;
sp->dec_codetab[code].firstchar = (u_char) code;
sp->dec_codetab[code].length = 1;
sp->dec_codetab[code].next = NULL;
} while (code--);
}
return (1);
}
/*
* Setup state for decoding a strip.
*/
static int
LZWPreDecode(TIFF* tif, tsample_t s)
{
LZWCodecState *sp = DecoderState(tif);
(void) s;
assert(sp != NULL);
/*
* Check for old bit-reversed codes.
*/
if (tif->tif_rawdata[0] == 0 && (tif->tif_rawdata[1] & 0x1)) {
#ifdef LZW_COMPAT
if (!sp->dec_decode) {
TIFFWarning(tif->tif_name,
"Old-style LZW codes, convert file");
/*
* Override default decoding methods with
* ones that deal with the old coding.
* Otherwise the predictor versions set
* above will call the compatibility routines
* through the dec_decode method.
*/
tif->tif_decoderow = LZWDecodeCompat;
tif->tif_decodestrip = LZWDecodeCompat;
tif->tif_decodetile = LZWDecodeCompat;
/*
* If doing horizontal differencing, must
* re-setup the predictor logic since we
* switched the basic decoder methods...
*/
(*tif->tif_setupdecode)(tif);
sp->dec_decode = LZWDecodeCompat;
}
sp->lzw_maxcode = MAXCODE(BITS_MIN);
#else /* !LZW_COMPAT */
if (!sp->dec_decode) {
TIFFError(tif->tif_name,
"Old-style LZW codes not supported");
sp->dec_decode = LZWDecode;
}
return (0);
#endif/* !LZW_COMPAT */
} else {
sp->lzw_maxcode = MAXCODE(BITS_MIN)-1;
sp->dec_decode = LZWDecode;
}
sp->lzw_nbits = BITS_MIN;
sp->lzw_nextbits = 0;
sp->lzw_nextdata = 0;
sp->dec_restart = 0;
sp->dec_nbitsmask = MAXCODE(BITS_MIN);
#ifdef LZW_CHECKEOS
sp->dec_bitsleft = tif->tif_rawcc << 3;
#endif
sp->dec_free_entp = sp->dec_codetab + CODE_FIRST;
/*
* Zero entries that are not yet filled in. We do
* this to guard against bogus input data that causes
* us to index into undefined entries. If you can
* come up with a way to safely bounds-check input codes
* while decoding then you can remove this operation.
*/
_TIFFmemset(sp->dec_free_entp, 0, (CSIZE-CODE_FIRST)*sizeof (code_t));
sp->dec_oldcodep = &sp->dec_codetab[-1];
sp->dec_maxcodep = &sp->dec_codetab[sp->dec_nbitsmask-1];
return (1);
}
/*
* Decode a "hunk of data".
*/
#define GetNextCode(sp, bp, code) { \
nextdata = (nextdata<<8) | *(bp)++; \
nextbits += 8; \
if (nextbits < nbits) { \
nextdata = (nextdata<<8) | *(bp)++; \
nextbits += 8; \
} \
code = (hcode_t)((nextdata >> (nextbits-nbits)) & nbitsmask); \
nextbits -= nbits; \
}
static void
codeLoop(TIFF* tif)
{
TIFFError(tif->tif_name,
"LZWDecode: Bogus encoding, loop in the code table; scanline %d",
tif->tif_row);
}
static int
LZWDecode(TIFF* tif, tidata_t op0, tsize_t occ0, tsample_t s)
{
LZWCodecState *sp = DecoderState(tif);
char *op = (char*) op0;
long occ = (long) occ0;
char *tp;
u_char *bp;
hcode_t code;
int len;
long nbits, nextbits, nextdata, nbitsmask;
code_t *codep, *free_entp, *maxcodep, *oldcodep;
(void) s;
assert(sp != NULL);
/*
* Restart interrupted output operation.
*/
if (sp->dec_restart) {
long residue;
codep = sp->dec_codep;
residue = codep->length - sp->dec_restart;
if (residue > occ) {
/*
* Residue from previous decode is sufficient
* to satisfy decode request. Skip to the
* start of the decoded string, place decoded
* values in the output buffer, and return.
*/
sp->dec_restart += occ;
do {
codep = codep->next;
} while (--residue > occ && codep);
if (codep) {
tp = op + occ;
do {
*--tp = codep->value;
codep = codep->next;
} while (--occ && codep);
}
return (1);
}
/*
* Residue satisfies only part of the decode request.
*/
op += residue, occ -= residue;
tp = op;
do {
int t;
--tp;
t = codep->value;
codep = codep->next;
*tp = (char) t;
} while (--residue && codep);
sp->dec_restart = 0;
}
bp = (u_char *)tif->tif_rawcp;
nbits = sp->lzw_nbits;
nextdata = sp->lzw_nextdata;
nextbits = sp->lzw_nextbits;
nbitsmask = sp->dec_nbitsmask;
oldcodep = sp->dec_oldcodep;
free_entp = sp->dec_free_entp;
maxcodep = sp->dec_maxcodep;
while (occ > 0) {
NextCode(tif, sp, bp, code, GetNextCode);
if (code == CODE_EOI)
break;
if (code == CODE_CLEAR) {
free_entp = sp->dec_codetab + CODE_FIRST;
nbits = BITS_MIN;
nbitsmask = MAXCODE(BITS_MIN);
maxcodep = sp->dec_codetab + nbitsmask-1;
NextCode(tif, sp, bp, code, GetNextCode);
if (code == CODE_EOI)
break;
*op++ = (char)code, occ--;
oldcodep = sp->dec_codetab + code;
continue;
}
codep = sp->dec_codetab + code;
/*
* Add the new entry to the code table.
*/
if (free_entp < &sp->dec_codetab[0] ||
free_entp >= &sp->dec_codetab[CSIZE]) {
TIFFError(tif->tif_name,
"LZWDecode: Corrupted LZW table at scanline %d",
tif->tif_row);
return (0);
}
free_entp->next = oldcodep;
if (free_entp->next < &sp->dec_codetab[0] ||
free_entp->next >= &sp->dec_codetab[CSIZE]) {
TIFFError(tif->tif_name,
"LZWDecode: Corrupted LZW table at scanline %d",
tif->tif_row);
return (0);
}
free_entp->firstchar = free_entp->next->firstchar;
free_entp->length = free_entp->next->length+1;
free_entp->value = (codep < free_entp) ?
codep->firstchar : free_entp->firstchar;
if (++free_entp > maxcodep) {
if (++nbits > BITS_MAX) /* should not happen */
nbits = BITS_MAX;
nbitsmask = MAXCODE(nbits);
maxcodep = sp->dec_codetab + nbitsmask-1;
}
oldcodep = codep;
if (code >= 256) {
/*
* Code maps to a string, copy string
* value to output (written in reverse).
*/
if(codep->length == 0) {
TIFFError(tif->tif_name,
"LZWDecode: Wrong length of decoded string: "
"data probably corrupted at scanline %d",
tif->tif_row);
return (0);
}
if (codep->length > occ) {
/*
* String is too long for decode buffer,
* locate portion that will fit, copy to
* the decode buffer, and setup restart
* logic for the next decoding call.
*/
sp->dec_codep = codep;
do {
codep = codep->next;
} while (codep && codep->length > occ);
if (codep) {
sp->dec_restart = occ;
tp = op + occ;
do {
*--tp = codep->value;
codep = codep->next;
} while (--occ && codep);
if (codep)
codeLoop(tif);
}
break;
}
len = codep->length;
tp = op + len;
do {
int t;
--tp;
t = codep->value;
codep = codep->next;
*tp = (char) t;
} while (codep && tp > op);
if (codep) {
codeLoop(tif);
break;
}
op += len, occ -= len;
} else
*op++ = (char)code, occ--;
}
tif->tif_rawcp = (tidata_t) bp;
sp->lzw_nbits = (u_short) nbits;
sp->lzw_nextdata = nextdata;
sp->lzw_nextbits = nextbits;
sp->dec_nbitsmask = nbitsmask;
sp->dec_oldcodep = oldcodep;
sp->dec_free_entp = free_entp;
sp->dec_maxcodep = maxcodep;
if (occ > 0) {
TIFFError(tif->tif_name,
"LZWDecode: Not enough data at scanline %d (short %d bytes)",
tif->tif_row, occ);
return (0);
}
return (1);
}
#ifdef LZW_COMPAT
/*
* Decode a "hunk of data" for old images.
*/
#define GetNextCodeCompat(sp, bp, code) { \
nextdata |= (u_long) *(bp)++ << nextbits; \
nextbits += 8; \
if (nextbits < nbits) { \
nextdata |= (u_long) *(bp)++ << nextbits; \
nextbits += 8; \
} \
code = (hcode_t)(nextdata & nbitsmask); \
nextdata >>= nbits; \
nextbits -= nbits; \
}
static int
LZWDecodeCompat(TIFF* tif, tidata_t op0, tsize_t occ0, tsample_t s)
{
LZWCodecState *sp = DecoderState(tif);
char *op = (char*) op0;
long occ = (long) occ0;
char *tp;
u_char *bp;
int code, nbits;
long nextbits, nextdata, nbitsmask;
code_t *codep, *free_entp, *maxcodep, *oldcodep;
(void) s;
assert(sp != NULL);
/*
* Restart interrupted output operation.
*/
if (sp->dec_restart) {
long residue;
codep = sp->dec_codep;
residue = codep->length - sp->dec_restart;
if (residue > occ) {
/*
* Residue from previous decode is sufficient
* to satisfy decode request. Skip to the
* start of the decoded string, place decoded
* values in the output buffer, and return.
*/
sp->dec_restart += occ;
do {
codep = codep->next;
} while (--residue > occ);
tp = op + occ;
do {
*--tp = codep->value;
codep = codep->next;
} while (--occ);
return (1);
}
/*
* Residue satisfies only part of the decode request.
*/
op += residue, occ -= residue;
tp = op;
do {
*--tp = codep->value;
codep = codep->next;
} while (--residue);
sp->dec_restart = 0;
}
bp = (u_char *)tif->tif_rawcp;
nbits = sp->lzw_nbits;
nextdata = sp->lzw_nextdata;
nextbits = sp->lzw_nextbits;
nbitsmask = sp->dec_nbitsmask;
oldcodep = sp->dec_oldcodep;
free_entp = sp->dec_free_entp;
maxcodep = sp->dec_maxcodep;
while (occ > 0) {
NextCode(tif, sp, bp, code, GetNextCodeCompat);
if (code == CODE_EOI)
break;
if (code == CODE_CLEAR) {
free_entp = sp->dec_codetab + CODE_FIRST;
nbits = BITS_MIN;
nbitsmask = MAXCODE(BITS_MIN);
maxcodep = sp->dec_codetab + nbitsmask;
NextCode(tif, sp, bp, code, GetNextCodeCompat);
if (code == CODE_EOI)
break;
*op++ = (char) code, occ--;
oldcodep = sp->dec_codetab + code;
continue;
}
codep = sp->dec_codetab + code;
/*
* Add the new entry to the code table.
*/
if (free_entp < &sp->dec_codetab[0] ||
free_entp >= &sp->dec_codetab[CSIZE]) {
TIFFError(tif->tif_name,
"LZWDecodeCompat: Corrupted LZW table at scanline %d",
tif->tif_row);
return (0);
}
free_entp->next = oldcodep;
if (free_entp->next < &sp->dec_codetab[0] ||
free_entp->next >= &sp->dec_codetab[CSIZE]) {
TIFFError(tif->tif_name,
"LZWDecodeCompat: Corrupted LZW table at scanline %d",
tif->tif_row);
return (0);
}
free_entp->firstchar = free_entp->next->firstchar;
free_entp->length = free_entp->next->length+1;
free_entp->value = (codep < free_entp) ?
codep->firstchar : free_entp->firstchar;
if (++free_entp > maxcodep) {
if (++nbits > BITS_MAX) /* should not happen */
nbits = BITS_MAX;
nbitsmask = MAXCODE(nbits);
maxcodep = sp->dec_codetab + nbitsmask;
}
oldcodep = codep;
if (code >= 256) {
/*
* Code maps to a string, copy string
* value to output (written in reverse).
*/
if(codep->length == 0) {
TIFFError(tif->tif_name,
"LZWDecodeCompat: Wrong length of decoded "
"string: data probably corrupted at scanline %d",
tif->tif_row);
return (0);
}
if (codep->length > occ) {
/*
* String is too long for decode buffer,
* locate portion that will fit, copy to
* the decode buffer, and setup restart
* logic for the next decoding call.
*/
sp->dec_codep = codep;
do {
codep = codep->next;
} while (codep->length > occ);
sp->dec_restart = occ;
tp = op + occ;
do {
*--tp = codep->value;
codep = codep->next;
} while (--occ);
break;
}
op += codep->length, occ -= codep->length;
tp = op;
do {
*--tp = codep->value;
} while( (codep = codep->next) != NULL);
} else
*op++ = (char) code, occ--;
}
tif->tif_rawcp = (tidata_t) bp;
sp->lzw_nbits = (u_short) nbits;
sp->lzw_nextdata = nextdata;
sp->lzw_nextbits = nextbits;
sp->dec_nbitsmask = nbitsmask;
sp->dec_oldcodep = oldcodep;
sp->dec_free_entp = free_entp;
sp->dec_maxcodep = maxcodep;
if (occ > 0) {
TIFFError(tif->tif_name,
"LZWDecodeCompat: Not enough data at scanline %d (short %d bytes)",
tif->tif_row, occ);
return (0);
}
return (1);
}
#endif /* LZW_COMPAT */
static void
LZWCleanup(TIFF* tif)
{
if (tif->tif_data) {
if (DecoderState(tif)->dec_codetab)
_TIFFfree(DecoderState(tif)->dec_codetab);
_TIFFfree(tif->tif_data);
tif->tif_data = NULL;
}
}
static int
LZWSetupEncode(TIFF* tif)
{
TIFFError(tif->tif_name,
"LZW compression is not available to due to Unisys patent enforcement");
return (0);
}
int
TIFFInitLZW(TIFF* tif, int scheme)
{
assert(scheme == COMPRESSION_LZW);
/*
* Allocate state block so tag methods have storage to record values.
*/
tif->tif_data = (tidata_t) _TIFFmalloc(sizeof (LZWCodecState));
if (tif->tif_data == NULL)
goto bad;
DecoderState(tif)->dec_codetab = NULL;
DecoderState(tif)->dec_decode = NULL;
/*
* Install codec methods.
*/
tif->tif_setupencode = LZWSetupEncode;
tif->tif_setupdecode = LZWSetupDecode;
tif->tif_predecode = LZWPreDecode;
tif->tif_decoderow = LZWDecode;
tif->tif_decodestrip = LZWDecode;
tif->tif_decodetile = LZWDecode;
tif->tif_cleanup = LZWCleanup;
/*
* Setup predictor setup.
*/
(void) TIFFPredictorInit(tif);
return (1);
bad:
TIFFError("TIFFInitLZW", "No space for LZW state block");
return (0);
}
/*
* Copyright (c) 1985, 1986 The Regents of the University of California.
* All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* James A. Woods, derived from original work by Spencer Thomas
* and Joseph Orost.
*
* Redistribution and use in source and binary forms are permitted
* provided that the above copyright notice and this paragraph are
* duplicated in all such forms and that any documentation,
* advertising materials, and other materials related to such
* distribution and use acknowledge that the software was developed
* by the University of California, Berkeley. The name of the
* University may not be used to endorse or promote products derived
* from this software without specific prior written permission.
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*/
#endif /* LZW_SUPPORT */

View File

@@ -1,179 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library MSDOS-specific Routines.
*/
#if defined(__WATCOMC__) || defined(__BORLANDC__) || defined(_MSC_VER)
#include <io.h> /* for open, close, etc. function prototypes */
#include <stdio.h>
#endif
#include "tiffiop.h"
static tsize_t
_tiffReadProc(thandle_t fd, tdata_t buf, tsize_t size)
{
return (read((int) fd, buf, size));
}
static tsize_t
_tiffWriteProc(thandle_t fd, tdata_t buf, tsize_t size)
{
return (write((int) fd, buf, size));
}
static toff_t
_tiffSeekProc(thandle_t fd, toff_t off, int whence)
{
return (lseek((int) fd, (off_t) off, whence));
}
static int
_tiffCloseProc(thandle_t fd)
{
return (close((int) fd));
}
#include <sys/stat.h>
static toff_t
_tiffSizeProc(thandle_t fd)
{
struct stat sb;
return (fstat((int) fd, &sb) < 0 ? 0 : sb.st_size);
}
static int
_tiffMapProc(thandle_t fd, tdata_t* pbase, toff_t* psize)
{
return (0);
}
static void
_tiffUnmapProc(thandle_t fd, tdata_t base, toff_t size)
{
}
/*
* Open a TIFF file descriptor for read/writing.
*/
TIFF*
TIFFFdOpen(int fd, const char* name, const char* mode)
{
TIFF* tif;
tif = TIFFClientOpen(name, mode,
(void*) fd,
_tiffReadProc, _tiffWriteProc, _tiffSeekProc, _tiffCloseProc,
_tiffSizeProc, _tiffMapProc, _tiffUnmapProc);
if (tif)
tif->tif_fd = fd;
return (tif);
}
/*
* Open a TIFF file for read/writing.
*/
TIFF*
TIFFOpen(const char* name, const char* mode)
{
static const char module[] = "TIFFOpen";
int m, fd;
m = _TIFFgetMode(mode, module);
if (m == -1)
return ((TIFF*)0);
fd = open(name, m|O_BINARY, 0666);
if (fd < 0) {
TIFFError(module, "%s: Cannot open", name);
return ((TIFF*)0);
}
return (TIFFFdOpen(fd, name, mode));
}
#ifdef __GNUC__
extern char* malloc();
extern char* realloc();
#else
#include <malloc.h>
#endif
tdata_t
_TIFFmalloc(tsize_t s)
{
return (malloc((size_t) s));
}
void
_TIFFfree(tdata_t p)
{
free(p);
}
tdata_t
_TIFFrealloc(tdata_t p, tsize_t s)
{
return (realloc(p, (size_t) s));
}
void
_TIFFmemset(tdata_t p, int v, tsize_t c)
{
memset(p, v, (size_t) c);
}
void
_TIFFmemcpy(tdata_t d, const tdata_t s, tsize_t c)
{
memcpy(d, s, (size_t) c);
}
int
_TIFFmemcmp(const tdata_t p1, const tdata_t p2, tsize_t c)
{
return (memcmp(p1, p2, (size_t) c));
}
static void
msdosWarningHandler(const char* module, const char* fmt, va_list ap)
{
if (module != NULL)
fprintf(stderr, "%s: ", module);
fprintf(stderr, "Warning, ");
vfprintf(stderr, fmt, ap);
fprintf(stderr, ".\n");
}
TIFFErrorHandler _TIFFwarningHandler = msdosWarningHandler;
static void
msdosErrorHandler(const char* module, const char* fmt, va_list ap)
{
if (module != NULL)
fprintf(stderr, "%s: ", module);
vfprintf(stderr, fmt, ap);
fprintf(stderr, ".\n");
}
TIFFErrorHandler _TIFFerrorHandler = msdosErrorHandler;

View File

@@ -1,142 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
#include "tiffiop.h"
#ifdef NEXT_SUPPORT
/*
* TIFF Library.
*
* NeXT 2-bit Grey Scale Compression Algorithm Support
*/
#define SETPIXEL(op, v) { \
switch (npixels++ & 3) { \
case 0: op[0] = (u_char) ((v) << 6); break; \
case 1: op[0] |= (v) << 4; break; \
case 2: op[0] |= (v) << 2; break; \
case 3: *op++ |= (v); break; \
} \
}
#define LITERALROW 0x00
#define LITERALSPAN 0x40
#define WHITE ((1<<2)-1)
static int
NeXTDecode(TIFF* tif, tidata_t buf, tsize_t occ, tsample_t s)
{
register u_char *bp, *op;
register tsize_t cc;
register int n;
tidata_t row;
tsize_t scanline;
(void) s;
/*
* Each scanline is assumed to start off as all
* white (we assume a PhotometricInterpretation
* of ``min-is-black'').
*/
for (op = buf, cc = occ; cc-- > 0;)
*op++ = 0xff;
bp = (u_char *)tif->tif_rawcp;
cc = tif->tif_rawcc;
scanline = tif->tif_scanlinesize;
for (row = buf; (long)occ > 0; occ -= scanline, row += scanline) {
n = *bp++, cc--;
switch (n) {
case LITERALROW:
/*
* The entire scanline is given as literal values.
*/
if (cc < scanline)
goto bad;
_TIFFmemcpy(row, bp, scanline);
bp += scanline;
cc -= scanline;
break;
case LITERALSPAN: {
int off;
/*
* The scanline has a literal span
* that begins at some offset.
*/
off = (bp[0] * 256) + bp[1];
n = (bp[2] * 256) + bp[3];
if (cc < 4+n || off+n > scanline)
goto bad;
_TIFFmemcpy(row+off, bp+4, n);
bp += 4+n;
cc -= 4+n;
break;
}
default: {
register int npixels = 0, grey;
u_long imagewidth = tif->tif_dir.td_imagewidth;
/*
* The scanline is composed of a sequence
* of constant color ``runs''. We shift
* into ``run mode'' and interpret bytes
* as codes of the form <color><npixels>
* until we've filled the scanline.
*/
op = row;
for (;;) {
grey = (n>>6) & 0x3;
n &= 0x3f;
while (n-- > 0)
SETPIXEL(op, grey);
if (npixels >= (int) imagewidth)
break;
if (cc == 0)
goto bad;
n = *bp++, cc--;
}
break;
}
}
}
tif->tif_rawcp = (tidata_t) bp;
tif->tif_rawcc = cc;
return (1);
bad:
TIFFError(tif->tif_name, "NeXTDecode: Not enough data for scanline %ld",
(long) tif->tif_row);
return (0);
}
int
TIFFInitNeXT(TIFF* tif, int scheme)
{
(void) scheme;
tif->tif_decoderow = NeXTDecode;
tif->tif_decodestrip = NeXTDecode;
tif->tif_decodetile = NeXTDecode;
return (1);
}
#endif /* NEXT_SUPPORT */

File diff suppressed because it is too large Load Diff

View File

@@ -1,495 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library.
*/
#include "tiffiop.h"
void _TIFFSetDefaultCompressionState(TIFF* tif);
static const long typemask[13] = {
(long)0L, /* TIFF_NOTYPE */
(long)0x000000ffL, /* TIFF_BYTE */
(long)0xffffffffL, /* TIFF_ASCII */
(long)0x0000ffffL, /* TIFF_SHORT */
(long)0xffffffffL, /* TIFF_LONG */
(long)0xffffffffL, /* TIFF_RATIONAL */
(long)0x000000ffL, /* TIFF_SBYTE */
(long)0x000000ffL, /* TIFF_UNDEFINED */
(long)0x0000ffffL, /* TIFF_SSHORT */
(long)0xffffffffL, /* TIFF_SLONG */
(long)0xffffffffL, /* TIFF_SRATIONAL */
(long)0xffffffffL, /* TIFF_FLOAT */
(long)0xffffffffL, /* TIFF_DOUBLE */
};
static const int bigTypeshift[13] = {
0, /* TIFF_NOTYPE */
24, /* TIFF_BYTE */
0, /* TIFF_ASCII */
16, /* TIFF_SHORT */
0, /* TIFF_LONG */
0, /* TIFF_RATIONAL */
24, /* TIFF_SBYTE */
24, /* TIFF_UNDEFINED */
16, /* TIFF_SSHORT */
0, /* TIFF_SLONG */
0, /* TIFF_SRATIONAL */
0, /* TIFF_FLOAT */
0, /* TIFF_DOUBLE */
};
static const int litTypeshift[13] = {
0, /* TIFF_NOTYPE */
0, /* TIFF_BYTE */
0, /* TIFF_ASCII */
0, /* TIFF_SHORT */
0, /* TIFF_LONG */
0, /* TIFF_RATIONAL */
0, /* TIFF_SBYTE */
0, /* TIFF_UNDEFINED */
0, /* TIFF_SSHORT */
0, /* TIFF_SLONG */
0, /* TIFF_SRATIONAL */
0, /* TIFF_FLOAT */
0, /* TIFF_DOUBLE */
};
/*
* Initialize the shift & mask tables, and the
* byte swapping state according to the file
* contents and the machine architecture.
*/
static void
TIFFInitOrder(TIFF* tif, int magic, int bigendian)
{
tif->tif_typemask = typemask;
if (magic == TIFF_BIGENDIAN) {
tif->tif_typeshift = bigTypeshift;
if (!bigendian)
tif->tif_flags |= TIFF_SWAB;
} else {
tif->tif_typeshift = litTypeshift;
if (bigendian)
tif->tif_flags |= TIFF_SWAB;
}
}
int
_TIFFgetMode(const char* mode, const char* module)
{
int m = -1;
switch (mode[0]) {
case 'r':
m = O_RDONLY;
if (mode[1] == '+')
m = O_RDWR;
break;
case 'w':
case 'a':
m = O_RDWR|O_CREAT;
if (mode[0] == 'w')
m |= O_TRUNC;
break;
default:
TIFFError(module, "\"%s\": Bad mode", mode);
break;
}
return (m);
}
TIFF*
TIFFClientOpen(
const char* name, const char* mode,
thandle_t clientdata,
TIFFReadWriteProc readproc,
TIFFReadWriteProc writeproc,
TIFFSeekProc seekproc,
TIFFCloseProc closeproc,
TIFFSizeProc sizeproc,
TIFFMapFileProc mapproc,
TIFFUnmapFileProc unmapproc
)
{
static const char module[] = "TIFFClientOpen";
TIFF *tif;
int m, bigendian;
const char* cp;
m = _TIFFgetMode(mode, module);
if (m == -1)
goto bad2;
tif = (TIFF *)_TIFFmalloc(sizeof (TIFF) + strlen(name) + 1);
if (tif == NULL) {
TIFFError(module, "%s: Out of memory (TIFF structure)", name);
goto bad2;
}
_TIFFmemset(tif, 0, sizeof (*tif));
tif->tif_name = (char *)tif + sizeof (TIFF);
strcpy(tif->tif_name, name);
tif->tif_mode = m &~ (O_CREAT|O_TRUNC);
tif->tif_curdir = (tdir_t) -1; /* non-existent directory */
tif->tif_curoff = 0;
tif->tif_curstrip = (tstrip_t) -1; /* invalid strip */
tif->tif_row = (uint32) -1; /* read/write pre-increment */
tif->tif_clientdata = clientdata;
if (!readproc || !writeproc || !seekproc || !closeproc
|| !sizeproc || !mapproc || !unmapproc) {
TIFFError(module, "One of the client procedures are NULL pointer");
goto bad3;
}
tif->tif_readproc = readproc;
tif->tif_writeproc = writeproc;
tif->tif_seekproc = seekproc;
tif->tif_closeproc = closeproc;
tif->tif_sizeproc = sizeproc;
tif->tif_mapproc = mapproc;
tif->tif_unmapproc = unmapproc;
_TIFFSetDefaultCompressionState(tif); /* setup default state */
/*
* Default is to return data MSB2LSB and enable the
* use of memory-mapped files and strip chopping when
* a file is opened read-only.
*/
tif->tif_flags = FILLORDER_MSB2LSB;
if (m == O_RDONLY )
tif->tif_flags |= TIFF_MAPPED;
#ifdef STRIPCHOP_DEFAULT
if (m == O_RDONLY || m == O_RDWR)
tif->tif_flags |= STRIPCHOP_DEFAULT;
#endif
{ union { int32 i; char c[4]; } u; u.i = 1; bigendian = u.c[0] == 0; }
/*
* Process library-specific flags in the open mode string.
* The following flags may be used to control intrinsic library
* behaviour that may or may not be desirable (usually for
* compatibility with some application that claims to support
* TIFF but only supports some braindead idea of what the
* vendor thinks TIFF is):
*
* 'l' use little-endian byte order for creating a file
* 'b' use big-endian byte order for creating a file
* 'L' read/write information using LSB2MSB bit order
* 'B' read/write information using MSB2LSB bit order
* 'H' read/write information using host bit order
* 'M' enable use of memory-mapped files when supported
* 'm' disable use of memory-mapped files
* 'C' enable strip chopping support when reading
* 'c' disable strip chopping support
*
* The use of the 'l' and 'b' flags is strongly discouraged.
* These flags are provided solely because numerous vendors,
* typically on the PC, do not correctly support TIFF; they
* only support the Intel little-endian byte order. This
* support is not configured by default because it supports
* the violation of the TIFF spec that says that readers *MUST*
* support both byte orders. It is strongly recommended that
* you not use this feature except to deal with busted apps
* that write invalid TIFF. And even in those cases you should
* bang on the vendors to fix their software.
*
* The 'L', 'B', and 'H' flags are intended for applications
* that can optimize operations on data by using a particular
* bit order. By default the library returns data in MSB2LSB
* bit order for compatibiltiy with older versions of this
* library. Returning data in the bit order of the native cpu
* makes the most sense but also requires applications to check
* the value of the FillOrder tag; something they probabyl do
* not do right now.
*
* The 'M' and 'm' flags are provided because some virtual memory
* systems exhibit poor behaviour when large images are mapped.
* These options permit clients to control the use of memory-mapped
* files on a per-file basis.
*
* The 'C' and 'c' flags are provided because the library support
* for chopping up large strips into multiple smaller strips is not
* application-transparent and as such can cause problems. The 'c'
* option permits applications that only want to look at the tags,
* for example, to get the unadulterated TIFF tag information.
*/
for (cp = mode; *cp; cp++)
switch (*cp) {
case 'b':
if ((m&O_CREAT) && !bigendian)
tif->tif_flags |= TIFF_SWAB;
break;
case 'l':
if ((m&O_CREAT) && bigendian)
tif->tif_flags |= TIFF_SWAB;
break;
case 'B':
tif->tif_flags = (tif->tif_flags &~ TIFF_FILLORDER) |
FILLORDER_MSB2LSB;
break;
case 'L':
tif->tif_flags = (tif->tif_flags &~ TIFF_FILLORDER) |
FILLORDER_LSB2MSB;
break;
case 'H':
tif->tif_flags = (tif->tif_flags &~ TIFF_FILLORDER) |
HOST_FILLORDER;
break;
case 'M':
if (m == O_RDONLY)
tif->tif_flags |= TIFF_MAPPED;
break;
case 'm':
if (m == O_RDONLY)
tif->tif_flags &= ~TIFF_MAPPED;
break;
case 'C':
if (m == O_RDONLY)
tif->tif_flags |= TIFF_STRIPCHOP;
break;
case 'c':
if (m == O_RDONLY)
tif->tif_flags &= ~TIFF_STRIPCHOP;
break;
}
/*
* Read in TIFF header.
*/
if (!ReadOK(tif, &tif->tif_header, sizeof (TIFFHeader))) {
if (tif->tif_mode == O_RDONLY) {
TIFFError(name, "Cannot read TIFF header");
goto bad;
}
/*
* Setup header and write.
*/
tif->tif_header.tiff_magic = tif->tif_flags & TIFF_SWAB
? (bigendian ? TIFF_LITTLEENDIAN : TIFF_BIGENDIAN)
: (bigendian ? TIFF_BIGENDIAN : TIFF_LITTLEENDIAN);
tif->tif_header.tiff_version = TIFF_VERSION;
if (tif->tif_flags & TIFF_SWAB)
TIFFSwabShort(&tif->tif_header.tiff_version);
tif->tif_header.tiff_diroff = 0; /* filled in later */
/*
* This seek shouldn't be necessary, but I have had some
* crazy problems with a failed fseek() on Solaris leaving
* the current file pointer out of whack when an fwrite()
* is done.
*/
TIFFSeekFile( tif, 0, SEEK_SET );
if (!WriteOK(tif, &tif->tif_header, sizeof (TIFFHeader))) {
TIFFError(name, "Error writing TIFF header");
goto bad;
}
/*
* Setup the byte order handling.
*/
TIFFInitOrder(tif, tif->tif_header.tiff_magic, bigendian);
/*
* Setup default directory.
*/
if (!TIFFDefaultDirectory(tif))
goto bad;
tif->tif_diroff = 0;
tif->tif_dirlist = NULL;
tif->tif_dirnumber = 0;
return (tif);
}
/*
* Setup the byte order handling.
*/
if (tif->tif_header.tiff_magic != TIFF_BIGENDIAN &&
tif->tif_header.tiff_magic != TIFF_LITTLEENDIAN) {
TIFFError(name, "Not a TIFF file, bad magic number %d (0x%x)",
tif->tif_header.tiff_magic,
tif->tif_header.tiff_magic);
goto bad;
}
TIFFInitOrder(tif, tif->tif_header.tiff_magic, bigendian);
/*
* Swap header if required.
*/
if (tif->tif_flags & TIFF_SWAB) {
TIFFSwabShort(&tif->tif_header.tiff_version);
TIFFSwabLong(&tif->tif_header.tiff_diroff);
}
/*
* Now check version (if needed, it's been byte-swapped).
* Note that this isn't actually a version number, it's a
* magic number that doesn't change (stupid).
*/
if (tif->tif_header.tiff_version != TIFF_VERSION) {
TIFFError(name,
"Not a TIFF file, bad version number %d (0x%x)",
tif->tif_header.tiff_version,
tif->tif_header.tiff_version);
goto bad;
}
tif->tif_flags |= TIFF_MYBUFFER;
tif->tif_rawcp = tif->tif_rawdata = 0;
tif->tif_rawdatasize = 0;
/*
* Setup initial directory.
*/
switch (mode[0]) {
case 'r':
tif->tif_nextdiroff = tif->tif_header.tiff_diroff;
/*
* Try to use a memory-mapped file if the client
* has not explicitly suppressed usage with the
* 'm' flag in the open mode (see above).
*/
if ((tif->tif_flags & TIFF_MAPPED) &&
!TIFFMapFileContents(tif, (tdata_t*) &tif->tif_base, &tif->tif_size))
tif->tif_flags &= ~TIFF_MAPPED;
if (TIFFReadDirectory(tif)) {
tif->tif_rawcc = -1;
tif->tif_flags |= TIFF_BUFFERSETUP;
return (tif);
}
break;
case 'a':
/*
* New directories are automatically append
* to the end of the directory chain when they
* are written out (see TIFFWriteDirectory).
*/
if (!TIFFDefaultDirectory(tif))
goto bad;
return (tif);
}
bad:
tif->tif_mode = O_RDONLY; /* XXX avoid flush */
TIFFClose(tif);
return ((TIFF*)0);
bad2:
(void) (*closeproc)(clientdata);
bad3:
return ((TIFF*)0);
}
/*
* Query functions to access private data.
*/
/*
* Return open file's name.
*/
const char *
TIFFFileName(TIFF* tif)
{
return (tif->tif_name);
}
/*
* Return open file's I/O descriptor.
*/
int
TIFFFileno(TIFF* tif)
{
return (tif->tif_fd);
}
/*
* Return read/write mode.
*/
int
TIFFGetMode(TIFF* tif)
{
return (tif->tif_mode);
}
/*
* Return nonzero if file is organized in
* tiles; zero if organized as strips.
*/
int
TIFFIsTiled(TIFF* tif)
{
return (isTiled(tif));
}
/*
* Return current row being read/written.
*/
uint32
TIFFCurrentRow(TIFF* tif)
{
return (tif->tif_row);
}
/*
* Return index of the current directory.
*/
tdir_t
TIFFCurrentDirectory(TIFF* tif)
{
return (tif->tif_curdir);
}
/*
* Return current strip.
*/
tstrip_t
TIFFCurrentStrip(TIFF* tif)
{
return (tif->tif_curstrip);
}
/*
* Return current tile.
*/
ttile_t
TIFFCurrentTile(TIFF* tif)
{
return (tif->tif_curtile);
}
/*
* Return nonzero if the file has byte-swapped data.
*/
int
TIFFIsByteSwapped(TIFF* tif)
{
return ((tif->tif_flags & TIFF_SWAB) != 0);
}
/*
* Return nonzero if the data is returned up-sampled.
*/
int
TIFFIsUpSampled(TIFF* tif)
{
return (isUpSampled(tif));
}
/*
* Return nonzero if the data is returned in MSB-to-LSB bit order.
*/
int
TIFFIsMSB2LSB(TIFF* tif)
{
return (isFillOrder(tif, FILLORDER_MSB2LSB));
}

View File

@@ -1,338 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* modifed for use with OS/2 by David Webster
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library OS/2-specific Routines. Adapted from tif_win32.c 2/16/00 by
* David Webster (dwebster@bhmi.com), Baldwin, Hackett, and Meeks, Inc., Omaha, NE USA
*/
#define INCL_PM
#define INCL_BASE
#include <os2.h>
#include <stdio.h>
#include <stdlib.h>
#include "tiffiop.h"
/* Some windows datatypes */
typedef ULONG DWORD;
typedef ULONG HANDLE;
typedef PCHAR LPTSTR;
typedef const PCHAR LPCTSTR;
typedef CHAR TCHAR;
#define GlobalAlloc(a,b) malloc(b)
#define LocalAlloc(a,b) malloc(b)
#define GlobalFree(b) free(b)
#define LocalFree(b) free(b)
#define GlobalReAlloc(p, s, t) realloc(p, s)
#define CopyMemory(p, v, s) memcpy(p, v, s)
#define FillMemory(p, c, s) memset(p, c, s)
#define GlobalSize(p) sizeof(p)
#define wsprintf sprintf
#define wvsprintf vsprintf
#define lstrlen strlen
static tsize_t LINKAGEMODE
_tiffReadProc(thandle_t fd, tdata_t buf, tsize_t size)
{
DWORD dwSizeRead;
if (!DosRead((HFILE)fd, buf, size, &dwSizeRead))
return(0);
return ((tsize_t) dwSizeRead);
}
static tsize_t LINKAGEMODE
_tiffWriteProc(thandle_t fd, tdata_t buf, tsize_t size)
{
DWORD dwSizeWritten;
if (!DosWrite((HFILE)fd, buf, size, &dwSizeWritten))
return(0);
return ((tsize_t) dwSizeWritten);
}
static toff_t LINKAGEMODE
_tiffSeekProc(thandle_t fd, toff_t off, int whence)
{
DWORD dwMoveMethod;
ULONG ibActual;
switch(whence)
{
case 0:
dwMoveMethod = FILE_BEGIN;
break;
case 1:
dwMoveMethod = FILE_CURRENT;
break;
case 2:
dwMoveMethod = FILE_END;
break;
default:
dwMoveMethod = FILE_BEGIN;
break;
}
DosSetFilePtr((HFILE)fd, off, dwMoveMethod, &ibActual);
return((toff_t)ibActual);
}
static int LINKAGEMODE
_tiffCloseProc(thandle_t fd)
{
return (DosClose((HFILE)fd) ? 0 : -1);
}
static toff_t LINKAGEMODE
_tiffSizeProc(thandle_t fd)
{
FILESTATUS3 vStatus;
DosQueryFileInfo((HFILE)fd, FIL_STANDARD, &vStatus, sizeof(FILESTATUS3));
return (vStatus.cbFile);
}
static int LINKAGEMODE
_tiffDummyMapProc(thandle_t fd, tdata_t* pbase, toff_t* psize)
{
return (0);
}
/*
* From "Hermann Josef Hill" <lhill@rhein-zeitung.de>:
*
* Windows uses both a handle and a pointer for file mapping,
* but according to the SDK documentation and Richter's book
* "Advanced Windows Programming" it is safe to free the handle
* after obtaining the file mapping pointer
*
* This removes a nasty OS dependency and cures a problem
* with Visual C++ 5.0
*/
static int LINKAGEMODE
_tiffMapProc(thandle_t fd, tdata_t* pbase, toff_t* psize)
{
return(0);
}
static void LINKAGEMODE
_tiffDummyUnmapProc(thandle_t fd, tdata_t base, toff_t size)
{
}
static void LINKAGEMODE
_tiffUnmapProc(thandle_t fd, tdata_t base, toff_t size)
{
}
/*
* Open a TIFF file descriptor for read/writing.
* Note that TIFFFdOpen and TIFFOpen recognise the character 'u' in the mode
* string, which forces the file to be opened unmapped.
*/
TIFF*
TIFFFdOpen(int ifd, const char* name, const char* mode)
{
TIFF* tif;
BOOL fSuppressMap = (mode[1] == 'u' || mode[2] == 'u');
tif = TIFFClientOpen(name, mode,
(thandle_t)ifd,
_tiffReadProc, _tiffWriteProc,
_tiffSeekProc, _tiffCloseProc, _tiffSizeProc,
fSuppressMap ? _tiffDummyMapProc : _tiffMapProc,
fSuppressMap ? _tiffDummyUnmapProc : _tiffUnmapProc);
if (tif)
tif->tif_fd = ifd;
return (tif);
}
/*
* Open a TIFF file for read/writing.
*/
TIFF*
TIFFOpen(const char* name, const char* mode)
{
static const char module[] = "TIFFOpen";
thandle_t fd;
int m;
DWORD dwOpenMode;
DWORD dwOpenFlags;
DWORD dwAction;
APIRET ulrc;
m = _TIFFgetMode(mode, module);
switch(m)
{
case O_RDONLY:
dwOpenMode = OPEN_ACCESS_READONLY;
dwOpenFlags = OPEN_ACTION_FAIL_IF_NEW;
break;
case O_RDWR:
dwOpenMode = OPEN_ACCESS_READWRITE;
dwOpenFlags = OPEN_ACTION_FAIL_IF_NEW;
break;
case O_RDWR|O_CREAT:
dwOpenMode = OPEN_ACCESS_READWRITE;
dwOpenFlags = OPEN_ACTION_CREATE_IF_NEW;
break;
case O_RDWR|O_TRUNC:
dwOpenMode = OPEN_ACCESS_READWRITE;
dwOpenFlags = OPEN_ACTION_FAIL_IF_NEW | OPEN_ACTION_OPEN_IF_EXISTS;
break;
case O_RDWR|O_CREAT|O_TRUNC:
dwOpenMode = OPEN_ACCESS_READWRITE;
dwOpenFlags = OPEN_ACTION_CREATE_IF_NEW | OPEN_ACTION_REPLACE_IF_EXISTS;
break;
default:
return ((TIFF*)0);
}
ulrc = DosOpen( name, (HFILE*)&fd, &dwAction, FILE_ARCHIVED|FILE_NORMAL
,1000L, dwOpenFlags, dwOpenMode, NULL
);
if (fd != NO_ERROR) {
TIFFError(module, "%s: Cannot open", name);
return ((TIFF *)0);
}
return (TIFFFdOpen((int)fd, name, mode));
}
tdata_t
_TIFFmalloc(tsize_t s)
{
return ((tdata_t)GlobalAlloc(GMEM_FIXED, s));
}
void
_TIFFfree(tdata_t p)
{
GlobalFree(p);
return;
}
tdata_t
_TIFFrealloc(tdata_t p, tsize_t s)
{
void* pvTmp;
if ((pvTmp = GlobalReAlloc(p, s, 0)) == NULL) {
if ((pvTmp = GlobalAlloc(sGMEM_FIXED, s)) != NULL) {
CopyMemory(pvTmp, p, GlobalSize(p));
GlobalFree(p);
}
}
return ((tdata_t)pvTmp);
}
void
_TIFFmemset(void* p, int v, tsize_t c)
{
FillMemory(p, c, (BYTE)v);
}
void
_TIFFmemcpy(void* d, const tdata_t s, tsize_t c)
{
CopyMemory(d, s, c);
}
int
_TIFFmemcmp(const tdata_t p1, const tdata_t p2, tsize_t c)
{
register const *pb1 = (const int*)p1;
register const *pb2 = (const int*)p2;
register DWORD dwTmp = c;
register int iTmp;
for (iTmp = 0; dwTmp-- && !iTmp; iTmp = (int)*pb1++ - (int)*pb2++)
;
return (iTmp);
}
static void LINKAGEMODE
Os2WarningHandler(const char* module, const char* fmt, va_list ap)
{
#ifndef TIF_PLATFORM_CONSOLE
LPTSTR szTitle;
LPTSTR szTmp;
LPCTSTR szTitleText = "%s Warning";
LPCTSTR szDefaultModule = "TIFFLIB";
szTmp = (module == NULL) ? (LPTSTR)szDefaultModule : (LPTSTR)module;
if ((szTitle = (LPTSTR)LocalAlloc(LMEM_FIXED, (lstrlen(szTmp) +
lstrlen(szTitleText) + lstrlen(fmt) + 128)*sizeof(TCHAR))) == NULL)
return;
wsprintf(szTitle, szTitleText, szTmp);
szTmp = szTitle + (lstrlen(szTitle)+2)*sizeof(TCHAR);
wvsprintf(szTmp, fmt, ap);
WinMessageBox( HWND_DESKTOP
,WinQueryFocus(HWND_DESKTOP)
,szTmp
,szTitle
,0
,MB_OK | MB_INFORMATION
);
LocalFree(szTitle);
return;
#else
if (module != NULL)
fprintf(stderr, "%s: ", module);
fprintf(stderr, "Warning, ");
vfprintf(stderr, fmt, ap);
fprintf(stderr, ".\n");
#endif
}
TIFFErrorHandler _TIFFwarningHandler = Os2WarningHandler;
static void LINKAGEMODE
Os2ErrorHandler(const char* module, const char* fmt, va_list ap)
{
#ifndef TIF_PLATFORM_CONSOLE
LPTSTR szTitle;
LPTSTR szTmp;
LPCTSTR szTitleText = "%s Error";
LPCTSTR szDefaultModule = "TIFFLIB";
szTmp = (module == NULL) ? (LPTSTR)szDefaultModule : (LPTSTR)module;
if ((szTitle = (LPTSTR)LocalAlloc(LMEM_FIXED, (lstrlen(szTmp) +
lstrlen(szTitleText) + lstrlen(fmt) + 128)*sizeof(TCHAR))) == NULL)
return;
wsprintf(szTitle, szTitleText, szTmp);
szTmp = szTitle + (lstrlen(szTitle)+2)*sizeof(TCHAR);
wvsprintf(szTmp, fmt, ap);
WinMessageBox( HWND_DESKTOP
,WinQueryFocus(HWND_DESKTOP)
,szTmp
,szTitle
,0
,MB_OK | MB_ICONEXCLAMATION
);
LocalFree(szTitle);
return;
#else
if (module != NULL)
fprintf(stderr, "%s: ", module);
vfprintf(stderr, fmt, ap);
fprintf(stderr, ".\n");
#endif
}
TIFFErrorHandler _TIFFerrorHandler = Os2ErrorHandler;

View File

@@ -1,300 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
#include "tiffiop.h"
#ifdef PACKBITS_SUPPORT
/*
* TIFF Library.
*
* PackBits Compression Algorithm Support
*/
#include <assert.h>
#include <stdio.h>
static int
PackBitsPreEncode(TIFF* tif, tsample_t s)
{
(void) s;
/*
* Calculate the scanline/tile-width size in bytes.
*/
if (isTiled(tif))
tif->tif_data = (tidata_t) TIFFTileRowSize(tif);
else
tif->tif_data = (tidata_t) TIFFScanlineSize(tif);
return (1);
}
/*
* NB: tidata is the type representing *(tidata_t);
* if tidata_t is made signed then this type must
* be adjusted accordingly.
*/
typedef unsigned char tidata;
/*
* Encode a run of pixels.
*/
static int
PackBitsEncode(TIFF* tif, tidata_t buf, tsize_t cc, tsample_t s)
{
u_char* bp = (u_char*) buf;
tidata_t op, ep, lastliteral;
long n, slop;
int b;
enum { BASE, LITERAL, RUN, LITERAL_RUN } state;
(void) s;
op = tif->tif_rawcp;
ep = tif->tif_rawdata + tif->tif_rawdatasize;
state = BASE;
lastliteral = 0;
while (cc > 0) {
/*
* Find the longest string of identical bytes.
*/
b = *bp++, cc--, n = 1;
for (; cc > 0 && b == *bp; cc--, bp++)
n++;
again:
if (op + 2 >= ep) { /* insure space for new data */
/*
* Be careful about writing the last
* literal. Must write up to that point
* and then copy the remainder to the
* front of the buffer.
*/
if (state == LITERAL || state == LITERAL_RUN) {
slop = op - lastliteral;
tif->tif_rawcc += lastliteral - tif->tif_rawcp;
if (!TIFFFlushData1(tif))
return (-1);
op = tif->tif_rawcp;
while (slop-- > 0)
*op++ = *lastliteral++;
lastliteral = tif->tif_rawcp;
} else {
tif->tif_rawcc += op - tif->tif_rawcp;
if (!TIFFFlushData1(tif))
return (-1);
op = tif->tif_rawcp;
}
}
switch (state) {
case BASE: /* initial state, set run/literal */
if (n > 1) {
state = RUN;
if (n > 128) {
*op++ = (tidata) -127;
*op++ = (tidataval_t) b;
n -= 128;
goto again;
}
*op++ = (tidataval_t)(-(n-1));
*op++ = (tidataval_t) b;
} else {
lastliteral = op;
*op++ = 0;
*op++ = (tidataval_t) b;
state = LITERAL;
}
break;
case LITERAL: /* last object was literal string */
if (n > 1) {
state = LITERAL_RUN;
if (n > 128) {
*op++ = (tidata) -127;
*op++ = (tidataval_t) b;
n -= 128;
goto again;
}
*op++ = (tidataval_t)(-(n-1)); /* encode run */
*op++ = (tidataval_t) b;
} else { /* extend literal */
if (++(*lastliteral) == 127)
state = BASE;
*op++ = (tidataval_t) b;
}
break;
case RUN: /* last object was run */
if (n > 1) {
if (n > 128) {
*op++ = (tidata) -127;
*op++ = (tidataval_t) b;
n -= 128;
goto again;
}
*op++ = (tidataval_t)(-(n-1));
*op++ = (tidataval_t) b;
} else {
lastliteral = op;
*op++ = 0;
*op++ = (tidataval_t) b;
state = LITERAL;
}
break;
case LITERAL_RUN: /* literal followed by a run */
/*
* Check to see if previous run should
* be converted to a literal, in which
* case we convert literal-run-literal
* to a single literal.
*/
if (n == 1 && op[-2] == (tidata) -1 &&
*lastliteral < 126) {
state = (((*lastliteral) += 2) == 127 ?
BASE : LITERAL);
op[-2] = op[-1]; /* replicate */
} else
state = RUN;
goto again;
}
}
tif->tif_rawcc += op - tif->tif_rawcp;
tif->tif_rawcp = op;
return (1);
}
/*
* Encode a rectangular chunk of pixels. We break it up
* into row-sized pieces to insure that encoded runs do
* not span rows. Otherwise, there can be problems with
* the decoder if data is read, for example, by scanlines
* when it was encoded by strips.
*/
static int
PackBitsEncodeChunk(TIFF* tif, tidata_t bp, tsize_t cc, tsample_t s)
{
#if defined(__hpux) && defined(__LP64__)
tsize_t rowsize = (tsize_t)(unsigned long) tif->tif_data;
#else
tsize_t rowsize = (tsize_t) tif->tif_data;
#endif
assert(rowsize > 0);
#ifdef YCBCR_SUPPORT
/*
* YCBCR data isn't really separable into rows, so we
* might as well encode the whole tile/strip as one chunk.
*/
if( tif->tif_dir.td_photometric == PHOTOMETRIC_YCBCR ) {
#if defined(__hpux) && defined(__LP64__)
rowsize = (tsize_t)(unsigned long) tif->tif_data;
#else
rowsize = (tsize_t) tif->tif_data;
#endif
}
#endif
while ((long)cc > 0) {
int chunk = rowsize;
if( cc < chunk )
chunk = cc;
if (PackBitsEncode(tif, bp, chunk, s) < 0)
return (-1);
bp += chunk;
cc -= chunk;
}
return (1);
}
static int
PackBitsDecode(TIFF* tif, tidata_t op, tsize_t occ, tsample_t s)
{
char *bp;
tsize_t cc;
long n;
int b;
(void) s;
bp = (char*) tif->tif_rawcp;
cc = tif->tif_rawcc;
while (cc > 0 && (long)occ > 0) {
n = (long) *bp++, cc--;
/*
* Watch out for compilers that
* don't sign extend chars...
*/
if (n >= 128)
n -= 256;
if (n < 0) { /* replicate next byte -n+1 times */
if (n == -128) /* nop */
continue;
n = -n + 1;
if( occ < n )
{
TIFFWarning(tif->tif_name,
"PackBitsDecode: discarding %d bytes "
"to avoid buffer overrun",
n - occ);
n = occ;
}
occ -= n;
b = *bp++, cc--;
while (n-- > 0)
*op++ = (tidataval_t) b;
} else { /* copy next n+1 bytes literally */
if (occ < n + 1)
{
TIFFWarning(tif->tif_name,
"PackBitsDecode: discarding %d bytes "
"to avoid buffer overrun",
n - occ + 1);
n = occ - 1;
}
_TIFFmemcpy(op, bp, ++n);
op += n; occ -= n;
bp += n; cc -= n;
}
}
tif->tif_rawcp = (tidata_t) bp;
tif->tif_rawcc = cc;
if (occ > 0) {
TIFFError(tif->tif_name,
"PackBitsDecode: Not enough data for scanline %ld",
(long) tif->tif_row);
return (0);
}
return (1);
}
int
TIFFInitPackBits(TIFF* tif, int scheme)
{
(void) scheme;
tif->tif_decoderow = PackBitsDecode;
tif->tif_decodestrip = PackBitsDecode;
tif->tif_decodetile = PackBitsDecode;
tif->tif_preencode = PackBitsPreEncode;
tif->tif_encoderow = PackBitsEncode;
tif->tif_encodestrip = PackBitsEncodeChunk;
tif->tif_encodetile = PackBitsEncodeChunk;
return (1);
}
#endif /* PACKBITS_SUPPORT */

File diff suppressed because it is too large Load Diff

View File

@@ -1,464 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library.
*
* Predictor Tag Support (used by multiple codecs).
*/
#include "tiffiop.h"
#include "tif_predict.h"
#include <assert.h>
#define PredictorState(tif) ((TIFFPredictorState*) (tif)->tif_data)
static void horAcc8(TIFF*, tidata_t, tsize_t);
static void horAcc16(TIFF*, tidata_t, tsize_t);
static void swabHorAcc16(TIFF*, tidata_t, tsize_t);
static void horDiff8(TIFF*, tidata_t, tsize_t);
static void horDiff16(TIFF*, tidata_t, tsize_t);
static int PredictorDecodeRow(TIFF*, tidata_t, tsize_t, tsample_t);
static int PredictorDecodeTile(TIFF*, tidata_t, tsize_t, tsample_t);
static int PredictorEncodeRow(TIFF*, tidata_t, tsize_t, tsample_t);
static int PredictorEncodeTile(TIFF*, tidata_t, tsize_t, tsample_t);
static int
PredictorSetup(TIFF* tif)
{
TIFFPredictorState* sp = PredictorState(tif);
TIFFDirectory* td = &tif->tif_dir;
if (sp->predictor == 1) /* no differencing */
return (1);
if (sp->predictor != 2) {
TIFFError(tif->tif_name, "\"Predictor\" value %d not supported",
sp->predictor);
return (0);
}
if (td->td_bitspersample != 8 && td->td_bitspersample != 16) {
TIFFError(tif->tif_name,
"Horizontal differencing \"Predictor\" not supported with %d-bit samples",
td->td_bitspersample);
return (0);
}
sp->stride = (td->td_planarconfig == PLANARCONFIG_CONTIG ?
td->td_samplesperpixel : 1);
/*
* Calculate the scanline/tile-width size in bytes.
*/
if (isTiled(tif))
sp->rowsize = TIFFTileRowSize(tif);
else
sp->rowsize = TIFFScanlineSize(tif);
return (1);
}
static int
PredictorSetupDecode(TIFF* tif)
{
TIFFPredictorState* sp = PredictorState(tif);
TIFFDirectory* td = &tif->tif_dir;
if (!(*sp->setupdecode)(tif) || !PredictorSetup(tif))
return (0);
if (sp->predictor == 2) {
switch (td->td_bitspersample) {
case 8: sp->pfunc = horAcc8; break;
case 16: sp->pfunc = horAcc16; break;
}
/*
* Override default decoding method with
* one that does the predictor stuff.
*/
sp->coderow = tif->tif_decoderow;
tif->tif_decoderow = PredictorDecodeRow;
sp->codestrip = tif->tif_decodestrip;
tif->tif_decodestrip = PredictorDecodeTile;
sp->codetile = tif->tif_decodetile;
tif->tif_decodetile = PredictorDecodeTile;
/*
* If the data is horizontally differenced
* 16-bit data that requires byte-swapping,
* then it must be byte swapped before the
* accumulation step. We do this with a
* special-purpose routine and override the
* normal post decoding logic that the library
* setup when the directory was read.
*/
if (tif->tif_flags&TIFF_SWAB) {
if (sp->pfunc == horAcc16) {
sp->pfunc = swabHorAcc16;
tif->tif_postdecode = _TIFFNoPostDecode;
} /* else handle 32-bit case... */
}
}
return (1);
}
static int
PredictorSetupEncode(TIFF* tif)
{
TIFFPredictorState* sp = PredictorState(tif);
TIFFDirectory* td = &tif->tif_dir;
if (!(*sp->setupencode)(tif) || !PredictorSetup(tif))
return (0);
if (sp->predictor == 2) {
switch (td->td_bitspersample) {
case 8: sp->pfunc = horDiff8; break;
case 16: sp->pfunc = horDiff16; break;
}
/*
* Override default encoding method with
* one that does the predictor stuff.
*/
sp->coderow = tif->tif_encoderow;
tif->tif_encoderow = PredictorEncodeRow;
sp->codestrip = tif->tif_encodestrip;
tif->tif_encodestrip = PredictorEncodeTile;
sp->codetile = tif->tif_encodetile;
tif->tif_encodetile = PredictorEncodeTile;
}
return (1);
}
#define REPEAT4(n, op) \
switch (n) { \
default: { int i; for (i = n-4; i > 0; i--) { op; } } \
case 4: op; \
case 3: op; \
case 2: op; \
case 1: op; \
case 0: ; \
}
static void
horAcc8(TIFF* tif, tidata_t cp0, tsize_t cc)
{
TIFFPredictorState* sp = PredictorState(tif);
tsize_t stride = sp->stride;
char* cp = (char*) cp0;
if (cc > stride) {
cc -= stride;
/*
* Pipeline the most common cases.
*/
if (stride == 3) {
u_int cr = cp[0];
u_int cg = cp[1];
u_int cb = cp[2];
do {
cc -= 3, cp += 3;
cp[0] = (char) (cr += cp[0]);
cp[1] = (char) (cg += cp[1]);
cp[2] = (char) (cb += cp[2]);
} while ((int32) cc > 0);
} else if (stride == 4) {
u_int cr = cp[0];
u_int cg = cp[1];
u_int cb = cp[2];
u_int ca = cp[3];
do {
cc -= 4, cp += 4;
cp[0] = (char) (cr += cp[0]);
cp[1] = (char) (cg += cp[1]);
cp[2] = (char) (cb += cp[2]);
cp[3] = (char) (ca += cp[3]);
} while ((int32) cc > 0);
} else {
do {
REPEAT4(stride, cp[stride] = (char) (cp[stride] + *cp); cp++)
cc -= stride;
} while ((int32) cc > 0);
}
}
}
static void
swabHorAcc16(TIFF* tif, tidata_t cp0, tsize_t cc)
{
TIFFPredictorState* sp = PredictorState(tif);
tsize_t stride = sp->stride;
uint16* wp = (uint16*) cp0;
tsize_t wc = cc / 2;
if (wc > stride) {
TIFFSwabArrayOfShort(wp, wc);
wc -= stride;
do {
REPEAT4(stride, wp[stride] += wp[0]; wp++)
wc -= stride;
} while ((int32) wc > 0);
}
}
static void
horAcc16(TIFF* tif, tidata_t cp0, tsize_t cc)
{
tsize_t stride = PredictorState(tif)->stride;
uint16* wp = (uint16*) cp0;
tsize_t wc = cc / 2;
if (wc > stride) {
wc -= stride;
do {
REPEAT4(stride, wp[stride] += wp[0]; wp++)
wc -= stride;
} while ((int32) wc > 0);
}
}
/*
* Decode a scanline and apply the predictor routine.
*/
static int
PredictorDecodeRow(TIFF* tif, tidata_t op0, tsize_t occ0, tsample_t s)
{
TIFFPredictorState *sp = PredictorState(tif);
assert(sp != NULL);
assert(sp->coderow != NULL);
assert(sp->pfunc != NULL);
if ((*sp->coderow)(tif, op0, occ0, s)) {
(*sp->pfunc)(tif, op0, occ0);
return (1);
} else
return (0);
}
/*
* Decode a tile/strip and apply the predictor routine.
* Note that horizontal differencing must be done on a
* row-by-row basis. The width of a "row" has already
* been calculated at pre-decode time according to the
* strip/tile dimensions.
*/
static int
PredictorDecodeTile(TIFF* tif, tidata_t op0, tsize_t occ0, tsample_t s)
{
TIFFPredictorState *sp = PredictorState(tif);
assert(sp != NULL);
assert(sp->codetile != NULL);
if ((*sp->codetile)(tif, op0, occ0, s)) {
tsize_t rowsize = sp->rowsize;
assert(rowsize > 0);
assert(sp->pfunc != NULL);
while ((long)occ0 > 0) {
(*sp->pfunc)(tif, op0, (tsize_t) rowsize);
occ0 -= rowsize;
op0 += rowsize;
}
return (1);
} else
return (0);
}
static void
horDiff8(TIFF* tif, tidata_t cp0, tsize_t cc)
{
TIFFPredictorState* sp = PredictorState(tif);
tsize_t stride = sp->stride;
char* cp = (char*) cp0;
if (cc > stride) {
cc -= stride;
/*
* Pipeline the most common cases.
*/
if (stride == 3) {
int r1, g1, b1;
int r2 = cp[0];
int g2 = cp[1];
int b2 = cp[2];
do {
r1 = cp[3]; cp[3] = r1-r2; r2 = r1;
g1 = cp[4]; cp[4] = g1-g2; g2 = g1;
b1 = cp[5]; cp[5] = b1-b2; b2 = b1;
cp += 3;
} while ((int32)(cc -= 3) > 0);
} else if (stride == 4) {
int r1, g1, b1, a1;
int r2 = cp[0];
int g2 = cp[1];
int b2 = cp[2];
int a2 = cp[3];
do {
r1 = cp[4]; cp[4] = r1-r2; r2 = r1;
g1 = cp[5]; cp[5] = g1-g2; g2 = g1;
b1 = cp[6]; cp[6] = b1-b2; b2 = b1;
a1 = cp[7]; cp[7] = a1-a2; a2 = a1;
cp += 4;
} while ((int32)(cc -= 4) > 0);
} else {
cp += cc - 1;
do {
REPEAT4(stride, cp[stride] -= cp[0]; cp--)
} while ((int32)(cc -= stride) > 0);
}
}
}
static void
horDiff16(TIFF* tif, tidata_t cp0, tsize_t cc)
{
TIFFPredictorState* sp = PredictorState(tif);
tsize_t stride = sp->stride;
int16 *wp = (int16*) cp0;
tsize_t wc = cc/2;
if (wc > stride) {
wc -= stride;
wp += wc - 1;
do {
REPEAT4(stride, wp[stride] -= wp[0]; wp--)
wc -= stride;
} while ((int32) wc > 0);
}
}
static int
PredictorEncodeRow(TIFF* tif, tidata_t bp, tsize_t cc, tsample_t s)
{
TIFFPredictorState *sp = PredictorState(tif);
assert(sp != NULL);
assert(sp->pfunc != NULL);
assert(sp->coderow != NULL);
/* XXX horizontal differencing alters user's data XXX */
(*sp->pfunc)(tif, bp, cc);
return ((*sp->coderow)(tif, bp, cc, s));
}
static int
PredictorEncodeTile(TIFF* tif, tidata_t bp0, tsize_t cc0, tsample_t s)
{
TIFFPredictorState *sp = PredictorState(tif);
tsize_t cc = cc0, rowsize;
u_char* bp = bp0;
assert(sp != NULL);
assert(sp->pfunc != NULL);
assert(sp->codetile != NULL);
rowsize = sp->rowsize;
assert(rowsize > 0);
while ((long)cc > 0) {
(*sp->pfunc)(tif, bp, (tsize_t) rowsize);
cc -= rowsize;
bp += rowsize;
}
return ((*sp->codetile)(tif, bp0, cc0, s));
}
#define FIELD_PREDICTOR (FIELD_CODEC+0) /* XXX */
static const TIFFFieldInfo predictFieldInfo[] = {
{ TIFFTAG_PREDICTOR, 1, 1, TIFF_SHORT, FIELD_PREDICTOR,
FALSE, FALSE, "Predictor" },
};
#define N(a) (sizeof (a) / sizeof (a[0]))
static int
PredictorVSetField(TIFF* tif, ttag_t tag, va_list ap)
{
TIFFPredictorState *sp = PredictorState(tif);
switch (tag) {
case TIFFTAG_PREDICTOR:
sp->predictor = (uint16) va_arg(ap, int);
TIFFSetFieldBit(tif, FIELD_PREDICTOR);
break;
default:
return (*sp->vsetparent)(tif, tag, ap);
}
tif->tif_flags |= TIFF_DIRTYDIRECT;
return (1);
}
static int
PredictorVGetField(TIFF* tif, ttag_t tag, va_list ap)
{
TIFFPredictorState *sp = PredictorState(tif);
switch (tag) {
case TIFFTAG_PREDICTOR:
*va_arg(ap, uint16*) = sp->predictor;
break;
default:
return (*sp->vgetparent)(tif, tag, ap);
}
return (1);
}
static void
PredictorPrintDir(TIFF* tif, FILE* fd, long flags)
{
TIFFPredictorState* sp = PredictorState(tif);
(void) flags;
if (TIFFFieldSet(tif,FIELD_PREDICTOR)) {
fprintf(fd, " Predictor: ");
switch (sp->predictor) {
case 1: fprintf(fd, "none "); break;
case 2: fprintf(fd, "horizontal differencing "); break;
}
fprintf(fd, "%u (0x%x)\n", sp->predictor, sp->predictor);
}
if (sp->printdir)
(*sp->printdir)(tif, fd, flags);
}
int
TIFFPredictorInit(TIFF* tif)
{
TIFFPredictorState* sp = PredictorState(tif);
/*
* Merge codec-specific tag information and
* override parent get/set field methods.
*/
_TIFFMergeFieldInfo(tif, predictFieldInfo, N(predictFieldInfo));
sp->vgetparent = tif->tif_tagmethods.vgetfield;
tif->tif_tagmethods.vgetfield =
PredictorVGetField;/* hook for predictor tag */
sp->vsetparent = tif->tif_tagmethods.vsetfield;
tif->tif_tagmethods.vsetfield =
PredictorVSetField;/* hook for predictor tag */
sp->printdir = tif->tif_tagmethods.printdir;
tif->tif_tagmethods.printdir =
PredictorPrintDir; /* hook for predictor tag */
sp->setupdecode = tif->tif_setupdecode;
tif->tif_setupdecode = PredictorSetupDecode;
sp->setupencode = tif->tif_setupencode;
tif->tif_setupencode = PredictorSetupEncode;
sp->predictor = 1; /* default value */
sp->pfunc = NULL; /* no predictor routine */
return (1);
}

View File

@@ -1,61 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1995-1997 Sam Leffler
* Copyright (c) 1995-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
#ifndef _TIFFPREDICT_
#define _TIFFPREDICT_
/*
* ``Library-private'' Support for the Predictor Tag
*/
/*
* Codecs that want to support the Predictor tag must place
* this structure first in their private state block so that
* the predictor code can cast tif_data to find its state.
*/
typedef struct {
int predictor; /* predictor tag value */
int stride; /* sample stride over data */
tsize_t rowsize; /* tile/strip row size */
TIFFPostMethod pfunc; /* horizontal differencer/accumulator */
TIFFCodeMethod coderow; /* parent codec encode/decode row */
TIFFCodeMethod codestrip; /* parent codec encode/decode strip */
TIFFCodeMethod codetile; /* parent codec encode/decode tile */
TIFFVGetMethod vgetparent; /* super-class method */
TIFFVSetMethod vsetparent; /* super-class method */
TIFFPrintMethod printdir; /* super-class method */
TIFFBoolMethod setupdecode; /* super-class method */
TIFFBoolMethod setupencode; /* super-class method */
} TIFFPredictorState;
#if defined(__cplusplus)
extern "C" {
#endif
extern int TIFFPredictorInit(TIFF*);
#if defined(__cplusplus)
}
#endif
#endif /* _TIFFPREDICT_ */

View File

@@ -1,613 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library.
*
* Directory Printing Support
*/
#include "tiffiop.h"
#include <stdio.h>
#include <ctype.h>
static const char *photoNames[] = {
"min-is-white", /* PHOTOMETRIC_MINISWHITE */
"min-is-black", /* PHOTOMETRIC_MINISBLACK */
"RGB color", /* PHOTOMETRIC_RGB */
"palette color (RGB from colormap)", /* PHOTOMETRIC_PALETTE */
"transparency mask", /* PHOTOMETRIC_MASK */
"separated", /* PHOTOMETRIC_SEPARATED */
"YCbCr", /* PHOTOMETRIC_YCBCR */
"7 (0x7)",
"CIE L*a*b*", /* PHOTOMETRIC_CIELAB */
};
#define NPHOTONAMES (sizeof (photoNames) / sizeof (photoNames[0]))
static const char *orientNames[] = {
"0 (0x0)",
"row 0 top, col 0 lhs", /* ORIENTATION_TOPLEFT */
"row 0 top, col 0 rhs", /* ORIENTATION_TOPRIGHT */
"row 0 bottom, col 0 rhs", /* ORIENTATION_BOTRIGHT */
"row 0 bottom, col 0 lhs", /* ORIENTATION_BOTLEFT */
"row 0 lhs, col 0 top", /* ORIENTATION_LEFTTOP */
"row 0 rhs, col 0 top", /* ORIENTATION_RIGHTTOP */
"row 0 rhs, col 0 bottom", /* ORIENTATION_RIGHTBOT */
"row 0 lhs, col 0 bottom", /* ORIENTATION_LEFTBOT */
};
#define NORIENTNAMES (sizeof (orientNames) / sizeof (orientNames[0]))
/*
* Print the contents of the current directory
* to the specified stdio file stream.
*/
void
TIFFPrintDirectory(TIFF* tif, FILE* fd, long flags)
{
register TIFFDirectory *td;
char *sep;
uint16 i;
long l, n;
fprintf(fd, "TIFF Directory at offset 0x%lx\n", tif->tif_diroff);
td = &tif->tif_dir;
if (TIFFFieldSet(tif,FIELD_SUBFILETYPE)) {
fprintf(fd, " Subfile Type:");
sep = " ";
if (td->td_subfiletype & FILETYPE_REDUCEDIMAGE) {
fprintf(fd, "%sreduced-resolution image", sep);
sep = "/";
}
if (td->td_subfiletype & FILETYPE_PAGE) {
fprintf(fd, "%smulti-page document", sep);
sep = "/";
}
if (td->td_subfiletype & FILETYPE_MASK)
fprintf(fd, "%stransparency mask", sep);
fprintf(fd, " (%lu = 0x%lx)\n",
(long) td->td_subfiletype, (long) td->td_subfiletype);
}
if (TIFFFieldSet(tif,FIELD_IMAGEDIMENSIONS)) {
fprintf(fd, " Image Width: %lu Image Length: %lu",
(u_long) td->td_imagewidth, (u_long) td->td_imagelength);
if (TIFFFieldSet(tif,FIELD_IMAGEDEPTH))
fprintf(fd, " Image Depth: %lu",
(u_long) td->td_imagedepth);
fprintf(fd, "\n");
}
/* Begin Pixar */
if (TIFFFieldSet(tif,FIELD_IMAGEFULLWIDTH) ||
TIFFFieldSet(tif,FIELD_IMAGEFULLLENGTH)) {
fprintf(fd, " Pixar Full Image Width: %lu Full Image Length: %lu\n",
(u_long) td->td_imagefullwidth,
(u_long) td->td_imagefulllength);
}
if (TIFFFieldSet(tif,FIELD_TEXTUREFORMAT))
_TIFFprintAsciiTag(fd, "Texture Format", td->td_textureformat);
if (TIFFFieldSet(tif,FIELD_WRAPMODES))
_TIFFprintAsciiTag(fd, "Texture Wrap Modes", td->td_wrapmodes);
if (TIFFFieldSet(tif,FIELD_FOVCOT))
fprintf(fd, " Field of View Cotangent: %g\n", td->td_fovcot);
if (TIFFFieldSet(tif,FIELD_MATRIX_WORLDTOSCREEN)) {
typedef float Matrix[4][4];
Matrix* m = (Matrix*)td->td_matrixWorldToScreen;
fprintf(fd, " Matrix NP:\n\t%g %g %g %g\n\t%g %g %g %g\n\t%g %g %g %g\n\t%g %g %g %g\n",
(*m)[0][0], (*m)[0][1], (*m)[0][2], (*m)[0][3],
(*m)[1][0], (*m)[1][1], (*m)[1][2], (*m)[1][3],
(*m)[2][0], (*m)[2][1], (*m)[2][2], (*m)[2][3],
(*m)[3][0], (*m)[3][1], (*m)[3][2], (*m)[3][3]);
}
if (TIFFFieldSet(tif,FIELD_MATRIX_WORLDTOCAMERA)) {
typedef float Matrix[4][4];
Matrix* m = (Matrix*)td->td_matrixWorldToCamera;
fprintf(fd, " Matrix Nl:\n\t%g %g %g %g\n\t%g %g %g %g\n\t%g %g %g %g\n\t%g %g %g %g\n",
(*m)[0][0], (*m)[0][1], (*m)[0][2], (*m)[0][3],
(*m)[1][0], (*m)[1][1], (*m)[1][2], (*m)[1][3],
(*m)[2][0], (*m)[2][1], (*m)[2][2], (*m)[2][3],
(*m)[3][0], (*m)[3][1], (*m)[3][2], (*m)[3][3]);
}
/* End Pixar */
if (TIFFFieldSet(tif,FIELD_TILEDIMENSIONS)) {
fprintf(fd, " Tile Width: %lu Tile Length: %lu",
(u_long) td->td_tilewidth, (u_long) td->td_tilelength);
if (TIFFFieldSet(tif,FIELD_TILEDEPTH))
fprintf(fd, " Tile Depth: %lu",
(u_long) td->td_tiledepth);
fprintf(fd, "\n");
}
if (TIFFFieldSet(tif,FIELD_RESOLUTION)) {
fprintf(fd, " Resolution: %g, %g",
td->td_xresolution, td->td_yresolution);
if (TIFFFieldSet(tif,FIELD_RESOLUTIONUNIT)) {
switch (td->td_resolutionunit) {
case RESUNIT_NONE:
fprintf(fd, " (unitless)");
break;
case RESUNIT_INCH:
fprintf(fd, " pixels/inch");
break;
case RESUNIT_CENTIMETER:
fprintf(fd, " pixels/cm");
break;
default:
fprintf(fd, " (unit %u = 0x%x)",
td->td_resolutionunit,
td->td_resolutionunit);
break;
}
}
fprintf(fd, "\n");
}
if (TIFFFieldSet(tif,FIELD_POSITION))
fprintf(fd, " Position: %g, %g\n",
td->td_xposition, td->td_yposition);
if (TIFFFieldSet(tif,FIELD_BITSPERSAMPLE))
fprintf(fd, " Bits/Sample: %u\n", td->td_bitspersample);
if (TIFFFieldSet(tif,FIELD_SAMPLEFORMAT)) {
fprintf(fd, " Sample Format: ");
switch (td->td_sampleformat) {
case SAMPLEFORMAT_VOID:
fprintf(fd, "void\n");
break;
case SAMPLEFORMAT_INT:
fprintf(fd, "signed integer\n");
break;
case SAMPLEFORMAT_UINT:
fprintf(fd, "unsigned integer\n");
break;
case SAMPLEFORMAT_IEEEFP:
fprintf(fd, "IEEE floating point\n");
break;
case SAMPLEFORMAT_COMPLEXINT:
fprintf(fd, "complex signed integer\n");
break;
case SAMPLEFORMAT_COMPLEXIEEEFP:
fprintf(fd, "complex IEEE floating point\n");
break;
default:
fprintf(fd, "%u (0x%x)\n",
td->td_sampleformat, td->td_sampleformat);
break;
}
}
if (TIFFFieldSet(tif,FIELD_COMPRESSION)) {
const TIFFCodec* c = TIFFFindCODEC(td->td_compression);
fprintf(fd, " Compression Scheme: ");
if (c)
fprintf(fd, "%s\n", c->name);
else
fprintf(fd, "%u (0x%x)\n",
td->td_compression, td->td_compression);
}
if (TIFFFieldSet(tif,FIELD_PHOTOMETRIC)) {
fprintf(fd, " Photometric Interpretation: ");
if (td->td_photometric < NPHOTONAMES)
fprintf(fd, "%s\n", photoNames[td->td_photometric]);
else {
switch (td->td_photometric) {
case PHOTOMETRIC_LOGL:
fprintf(fd, "CIE Log2(L)\n");
break;
case PHOTOMETRIC_LOGLUV:
fprintf(fd, "CIE Log2(L) (u',v')\n");
break;
default:
fprintf(fd, "%u (0x%x)\n",
td->td_photometric, td->td_photometric);
break;
}
}
}
if (TIFFFieldSet(tif,FIELD_EXTRASAMPLES) && td->td_extrasamples) {
fprintf(fd, " Extra Samples: %u<", td->td_extrasamples);
sep = "";
for (i = 0; i < td->td_extrasamples; i++) {
switch (td->td_sampleinfo[i]) {
case EXTRASAMPLE_UNSPECIFIED:
fprintf(fd, "%sunspecified", sep);
break;
case EXTRASAMPLE_ASSOCALPHA:
fprintf(fd, "%sassoc-alpha", sep);
break;
case EXTRASAMPLE_UNASSALPHA:
fprintf(fd, "%sunassoc-alpha", sep);
break;
default:
fprintf(fd, "%s%u (0x%x)", sep,
td->td_sampleinfo[i], td->td_sampleinfo[i]);
break;
}
sep = ", ";
}
fprintf(fd, ">\n");
}
if (TIFFFieldSet(tif,FIELD_STONITS)) {
fprintf(fd, " Sample to Nits conversion factor: %.4e\n",
td->td_stonits);
}
#ifdef CMYK_SUPPORT
if (TIFFFieldSet(tif,FIELD_INKSET)) {
fprintf(fd, " Ink Set: ");
switch (td->td_inkset) {
case INKSET_CMYK:
fprintf(fd, "CMYK\n");
break;
default:
fprintf(fd, "%u (0x%x)\n",
td->td_inkset, td->td_inkset);
break;
}
}
if (TIFFFieldSet(tif,FIELD_INKNAMES)) {
char* cp;
fprintf(fd, " Ink Names: ");
i = td->td_samplesperpixel;
sep = "";
for (cp = td->td_inknames; i > 0; cp = strchr(cp,'\0')+1, i--) {
fprintf(fd, "%s", sep);
_TIFFprintAscii(fd, cp);
sep = ", ";
}
}
if (TIFFFieldSet(tif,FIELD_NUMBEROFINKS))
fprintf(fd, " Number of Inks: %u\n", td->td_ninks);
if (TIFFFieldSet(tif,FIELD_DOTRANGE))
fprintf(fd, " Dot Range: %u-%u\n",
td->td_dotrange[0], td->td_dotrange[1]);
if (TIFFFieldSet(tif,FIELD_TARGETPRINTER))
_TIFFprintAsciiTag(fd, "Target Printer", td->td_targetprinter);
#endif
if (TIFFFieldSet(tif,FIELD_THRESHHOLDING)) {
fprintf(fd, " Thresholding: ");
switch (td->td_threshholding) {
case THRESHHOLD_BILEVEL:
fprintf(fd, "bilevel art scan\n");
break;
case THRESHHOLD_HALFTONE:
fprintf(fd, "halftone or dithered scan\n");
break;
case THRESHHOLD_ERRORDIFFUSE:
fprintf(fd, "error diffused\n");
break;
default:
fprintf(fd, "%u (0x%x)\n",
td->td_threshholding, td->td_threshholding);
break;
}
}
if (TIFFFieldSet(tif,FIELD_FILLORDER)) {
fprintf(fd, " FillOrder: ");
switch (td->td_fillorder) {
case FILLORDER_MSB2LSB:
fprintf(fd, "msb-to-lsb\n");
break;
case FILLORDER_LSB2MSB:
fprintf(fd, "lsb-to-msb\n");
break;
default:
fprintf(fd, "%u (0x%x)\n",
td->td_fillorder, td->td_fillorder);
break;
}
}
#ifdef YCBCR_SUPPORT
if (TIFFFieldSet(tif,FIELD_YCBCRSUBSAMPLING))
{
/*
* For hacky reasons (see tif_jpeg.c - JPEGFixupTestSubsampling),
* we need to fetch this rather than trust what is in our
* structures.
*/
uint16 subsampling[2];
TIFFGetField( tif, TIFFTAG_YCBCRSUBSAMPLING,
subsampling + 0, subsampling + 1 );
fprintf(fd, " YCbCr Subsampling: %u, %u\n",
subsampling[0], subsampling[1] );
}
if (TIFFFieldSet(tif,FIELD_YCBCRPOSITIONING)) {
fprintf(fd, " YCbCr Positioning: ");
switch (td->td_ycbcrpositioning) {
case YCBCRPOSITION_CENTERED:
fprintf(fd, "centered\n");
break;
case YCBCRPOSITION_COSITED:
fprintf(fd, "cosited\n");
break;
default:
fprintf(fd, "%u (0x%x)\n",
td->td_ycbcrpositioning, td->td_ycbcrpositioning);
break;
}
}
if (TIFFFieldSet(tif,FIELD_YCBCRCOEFFICIENTS))
fprintf(fd, " YCbCr Coefficients: %g, %g, %g\n",
td->td_ycbcrcoeffs[0],
td->td_ycbcrcoeffs[1],
td->td_ycbcrcoeffs[2]);
#endif
if (TIFFFieldSet(tif,FIELD_HALFTONEHINTS))
fprintf(fd, " Halftone Hints: light %u dark %u\n",
td->td_halftonehints[0], td->td_halftonehints[1]);
if (TIFFFieldSet(tif,FIELD_ARTIST))
_TIFFprintAsciiTag(fd, "Artist", td->td_artist);
if (TIFFFieldSet(tif,FIELD_DATETIME))
_TIFFprintAsciiTag(fd, "Date & Time", td->td_datetime);
if (TIFFFieldSet(tif,FIELD_HOSTCOMPUTER))
_TIFFprintAsciiTag(fd, "Host Computer", td->td_hostcomputer);
if (TIFFFieldSet(tif,FIELD_COPYRIGHT))
_TIFFprintAsciiTag(fd, "Copyright", td->td_copyright);
if (TIFFFieldSet(tif,FIELD_DOCUMENTNAME))
_TIFFprintAsciiTag(fd, "Document Name", td->td_documentname);
if (TIFFFieldSet(tif,FIELD_IMAGEDESCRIPTION))
_TIFFprintAsciiTag(fd, "Image Description", td->td_imagedescription);
if (TIFFFieldSet(tif,FIELD_MAKE))
_TIFFprintAsciiTag(fd, "Make", td->td_make);
if (TIFFFieldSet(tif,FIELD_MODEL))
_TIFFprintAsciiTag(fd, "Model", td->td_model);
if (TIFFFieldSet(tif,FIELD_ORIENTATION)) {
fprintf(fd, " Orientation: ");
if (td->td_orientation < NORIENTNAMES)
fprintf(fd, "%s\n", orientNames[td->td_orientation]);
else
fprintf(fd, "%u (0x%x)\n",
td->td_orientation, td->td_orientation);
}
if (TIFFFieldSet(tif,FIELD_SAMPLESPERPIXEL))
fprintf(fd, " Samples/Pixel: %u\n", td->td_samplesperpixel);
if (TIFFFieldSet(tif,FIELD_ROWSPERSTRIP)) {
fprintf(fd, " Rows/Strip: ");
if (td->td_rowsperstrip == (uint32) -1)
fprintf(fd, "(infinite)\n");
else
fprintf(fd, "%lu\n", (u_long) td->td_rowsperstrip);
}
if (TIFFFieldSet(tif,FIELD_MINSAMPLEVALUE))
fprintf(fd, " Min Sample Value: %u\n", td->td_minsamplevalue);
if (TIFFFieldSet(tif,FIELD_MAXSAMPLEVALUE))
fprintf(fd, " Max Sample Value: %u\n", td->td_maxsamplevalue);
if (TIFFFieldSet(tif,FIELD_SMINSAMPLEVALUE))
fprintf(fd, " SMin Sample Value: %g\n",
td->td_sminsamplevalue);
if (TIFFFieldSet(tif,FIELD_SMAXSAMPLEVALUE))
fprintf(fd, " SMax Sample Value: %g\n",
td->td_smaxsamplevalue);
if (TIFFFieldSet(tif,FIELD_PLANARCONFIG)) {
fprintf(fd, " Planar Configuration: ");
switch (td->td_planarconfig) {
case PLANARCONFIG_CONTIG:
fprintf(fd, "single image plane\n");
break;
case PLANARCONFIG_SEPARATE:
fprintf(fd, "separate image planes\n");
break;
default:
fprintf(fd, "%u (0x%x)\n",
td->td_planarconfig, td->td_planarconfig);
break;
}
}
if (TIFFFieldSet(tif,FIELD_PAGENAME))
_TIFFprintAsciiTag(fd, "Page Name", td->td_pagename);
if (TIFFFieldSet(tif,FIELD_PAGENUMBER))
fprintf(fd, " Page Number: %u-%u\n",
td->td_pagenumber[0], td->td_pagenumber[1]);
if (TIFFFieldSet(tif,FIELD_COLORMAP)) {
fprintf(fd, " Color Map: ");
if (flags & TIFFPRINT_COLORMAP) {
fprintf(fd, "\n");
n = 1L<<td->td_bitspersample;
for (l = 0; l < n; l++)
fprintf(fd, " %5lu: %5u %5u %5u\n",
l,
td->td_colormap[0][l],
td->td_colormap[1][l],
td->td_colormap[2][l]);
} else
fprintf(fd, "(present)\n");
}
#ifdef COLORIMETRY_SUPPORT
if (TIFFFieldSet(tif,FIELD_WHITEPOINT))
fprintf(fd, " White Point: %g-%g\n",
td->td_whitepoint[0], td->td_whitepoint[1]);
if (TIFFFieldSet(tif,FIELD_PRIMARYCHROMAS))
fprintf(fd, " Primary Chromaticities: %g,%g %g,%g %g,%g\n",
td->td_primarychromas[0], td->td_primarychromas[1],
td->td_primarychromas[2], td->td_primarychromas[3],
td->td_primarychromas[4], td->td_primarychromas[5]);
if (TIFFFieldSet(tif,FIELD_REFBLACKWHITE)) {
fprintf(fd, " Reference Black/White:\n");
for (i = 0; i < td->td_samplesperpixel; i++)
fprintf(fd, " %2d: %5g %5g\n",
i,
td->td_refblackwhite[2*i+0],
td->td_refblackwhite[2*i+1]);
}
if (TIFFFieldSet(tif,FIELD_TRANSFERFUNCTION)) {
fprintf(fd, " Transfer Function: ");
if (flags & TIFFPRINT_CURVES) {
fprintf(fd, "\n");
n = 1L<<td->td_bitspersample;
for (l = 0; l < n; l++) {
fprintf(fd, " %2lu: %5u",
l, td->td_transferfunction[0][l]);
for (i = 1; i < td->td_samplesperpixel; i++)
fprintf(fd, " %5u",
td->td_transferfunction[i][l]);
fputc('\n', fd);
}
} else
fprintf(fd, "(present)\n");
}
#endif
#ifdef ICC_SUPPORT
if (TIFFFieldSet(tif,FIELD_ICCPROFILE))
fprintf(fd, " ICC Profile: <present>, %lu bytes\n",
(u_long) td->td_profileLength);
#endif
#ifdef PHOTOSHOP_SUPPORT
if (TIFFFieldSet(tif,FIELD_PHOTOSHOP))
fprintf(fd, " Photoshop Data: <present>, %lu bytes\n",
(u_long) td->td_photoshopLength);
#endif
#ifdef IPTC_SUPPORT
if (TIFFFieldSet(tif,FIELD_RICHTIFFIPTC))
fprintf(fd, " RichTIFFIPTC Data: <present>, %lu bytes\n",
(u_long) td->td_richtiffiptcLength);
#endif
#if SUBIFD_SUPPORT
if (TIFFFieldSet(tif, FIELD_SUBIFD)) {
fprintf(fd, " SubIFD Offsets:");
for (i = 0; i < td->td_nsubifd; i++)
fprintf(fd, " %5lu", (long) td->td_subifd[i]);
fputc('\n', fd);
}
#endif
/*
** Custom tag support.
*/
{
int i;
short count;
count = (short) TIFFGetTagListCount( tif );
for( i = 0; i < count; i++ )
{
ttag_t tag = TIFFGetTagListEntry( tif, i );
const TIFFFieldInfo *fld;
fld = TIFFFieldWithTag( tif, tag );
if( fld == NULL )
continue;
if( fld->field_passcount )
{
short value_count;
int j;
void *raw_data;
if( TIFFGetField( tif, tag, &value_count, &raw_data ) != 1 )
continue;
fprintf(fd, " %s: ", fld->field_name );
for( j = 0; j < value_count; j++ )
{
if( fld->field_type == TIFF_BYTE )
fprintf( fd, "%d",
(int) ((char *) raw_data)[j] );
else if( fld->field_type == TIFF_SHORT )
fprintf( fd, "%d",
(int) ((short *) raw_data)[j] );
else if( fld->field_type == TIFF_LONG )
fprintf( fd, "%d",
(int) ((long *) raw_data)[j] );
else if( fld->field_type == TIFF_RATIONAL )
fprintf( fd, "%f",
((float *) raw_data)[j] );
else if( fld->field_type == TIFF_ASCII )
{
fprintf( fd, "%s",
(char *) raw_data );
break;
}
else if( fld->field_type == TIFF_DOUBLE )
fprintf( fd, "%f",
((double *) raw_data)[j] );
else if( fld->field_type == TIFF_FLOAT )
fprintf( fd, "%f",
((float *) raw_data)[j] );
else
{
fprintf( fd,
"<unsupported data type in TIFFPrint>" );
break;
}
if( j < value_count-1 )
fprintf( fd, "," );
}
fprintf( fd, "\n" );
}
else if( !fld->field_passcount
&& fld->field_type == TIFF_ASCII )
{
char *data;
if( TIFFGetField( tif, tag, &data ) )
fprintf(fd, " %s: %s\n", fld->field_name, data );
}
}
}
if (tif->tif_tagmethods.printdir)
(*tif->tif_tagmethods.printdir)(tif, fd, flags);
if ((flags & TIFFPRINT_STRIPS) &&
TIFFFieldSet(tif,FIELD_STRIPOFFSETS)) {
tstrip_t s;
fprintf(fd, " %lu %s:\n",
(long) td->td_nstrips,
isTiled(tif) ? "Tiles" : "Strips");
for (s = 0; s < td->td_nstrips; s++)
fprintf(fd, " %3lu: [%8lu, %8lu]\n",
(u_long) s,
(u_long) td->td_stripoffset[s],
(u_long) td->td_stripbytecount[s]);
}
}
void
_TIFFprintAscii(FILE* fd, const char* cp)
{
for (; *cp != '\0'; cp++) {
const char* tp;
if (isprint(*cp)) {
fputc(*cp, fd);
continue;
}
for (tp = "\tt\bb\rr\nn\vv"; *tp; tp++)
if (*tp++ == *cp)
break;
if (*tp)
fprintf(fd, "\\%c", *tp);
else
fprintf(fd, "\\%03o", *cp & 0xff);
}
}
void
_TIFFprintAsciiTag(FILE* fd, const char* name, const char* value)
{
fprintf(fd, " %s: \"", name);
_TIFFprintAscii(fd, value);
fprintf(fd, "\"\n");
}

View File

@@ -1,637 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library.
* Scanline-oriented Read Support
*/
#include "tiffiop.h"
#include <stdio.h>
#include <assert.h>
int TIFFFillStrip(TIFF*, tstrip_t);
int TIFFFillTile(TIFF*, ttile_t);
static int TIFFStartStrip(TIFF*, tstrip_t);
static int TIFFStartTile(TIFF*, ttile_t);
static int TIFFCheckRead(TIFF*, int);
#define NOSTRIP ((tstrip_t) -1) /* undefined state */
#define NOTILE ((ttile_t) -1) /* undefined state */
/*
* Seek to a random row+sample in a file.
*/
static int
TIFFSeek(TIFF* tif, uint32 row, tsample_t sample)
{
register TIFFDirectory *td = &tif->tif_dir;
tstrip_t strip;
if (row >= td->td_imagelength) { /* out of range */
TIFFError(tif->tif_name, "%lu: Row out of range, max %lu",
(u_long) row, (u_long) td->td_imagelength);
return (0);
}
if (td->td_planarconfig == PLANARCONFIG_SEPARATE) {
if (sample >= td->td_samplesperpixel) {
TIFFError(tif->tif_name,
"%lu: Sample out of range, max %lu",
(u_long) sample, (u_long) td->td_samplesperpixel);
return (0);
}
strip = sample*td->td_stripsperimage + row/td->td_rowsperstrip;
} else
strip = row / td->td_rowsperstrip;
if (strip != tif->tif_curstrip) { /* different strip, refill */
if (!TIFFFillStrip(tif, strip))
return (0);
} else if (row < tif->tif_row) {
/*
* Moving backwards within the same strip: backup
* to the start and then decode forward (below).
*
* NB: If you're planning on lots of random access within a
* strip, it's better to just read and decode the entire
* strip, and then access the decoded data in a random fashion.
*/
if (!TIFFStartStrip(tif, strip))
return (0);
}
if (row != tif->tif_row) {
/*
* Seek forward to the desired row.
*/
if (!(*tif->tif_seek)(tif, row - tif->tif_row))
return (0);
tif->tif_row = row;
}
return (1);
}
int
TIFFReadScanline(TIFF* tif, tdata_t buf, uint32 row, tsample_t sample)
{
int e;
if (!TIFFCheckRead(tif, 0))
return (-1);
if( (e = TIFFSeek(tif, row, sample)) != 0) {
/*
* Decompress desired row into user buffer.
*/
e = (*tif->tif_decoderow)
(tif, (tidata_t) buf, tif->tif_scanlinesize, sample);
/* we are now poised at the beginning of the next row */
tif->tif_row = row + 1;
if (e)
(*tif->tif_postdecode)(tif, (tidata_t) buf,
tif->tif_scanlinesize);
}
return (e > 0 ? 1 : -1);
}
/*
* Read a strip of data and decompress the specified
* amount into the user-supplied buffer.
*/
tsize_t
TIFFReadEncodedStrip(TIFF* tif, tstrip_t strip, tdata_t buf, tsize_t size)
{
TIFFDirectory *td = &tif->tif_dir;
uint32 nrows;
tsize_t stripsize;
tstrip_t sep_strip, strips_per_sep;
if (!TIFFCheckRead(tif, 0))
return (-1);
if (strip >= td->td_nstrips) {
TIFFError(tif->tif_name, "%ld: Strip out of range, max %ld",
(long) strip, (long) td->td_nstrips);
return (-1);
}
/*
* Calculate the strip size according to the number of
* rows in the strip (check for truncated last strip on any
* of the separations).
*/
if( td->td_rowsperstrip >= td->td_imagelength )
strips_per_sep = 1;
else
strips_per_sep = (td->td_imagelength+td->td_rowsperstrip-1)
/ td->td_rowsperstrip;
sep_strip = strip % strips_per_sep;
if (sep_strip != strips_per_sep-1 ||
(nrows = td->td_imagelength % td->td_rowsperstrip) == 0)
nrows = td->td_rowsperstrip;
stripsize = TIFFVStripSize(tif, nrows);
if (size == (tsize_t) -1)
size = stripsize;
else if (size > stripsize)
size = stripsize;
if (TIFFFillStrip(tif, strip)
&& (*tif->tif_decodestrip)(tif, (tidata_t) buf, size,
(tsample_t)(strip / td->td_stripsperimage)) > 0 ) {
(*tif->tif_postdecode)(tif, (tidata_t) buf, size);
return (size);
} else
return ((tsize_t) -1);
}
static tsize_t
TIFFReadRawStrip1(TIFF* tif,
tstrip_t strip, tdata_t buf, tsize_t size, const char* module)
{
TIFFDirectory *td = &tif->tif_dir;
if (!isMapped(tif)) {
tsize_t cc;
if (!SeekOK(tif, td->td_stripoffset[strip])) {
TIFFError(module,
"%s: Seek error at scanline %lu, strip %lu",
tif->tif_name,
(u_long) tif->tif_row, (u_long) strip);
return (-1);
}
cc = TIFFReadFile(tif, buf, size);
if (cc != size) {
TIFFError(module,
"%s: Read error at scanline %lu; got %lu bytes, expected %lu",
tif->tif_name,
(u_long) tif->tif_row,
(u_long) cc,
(u_long) size);
return (-1);
}
} else {
if (td->td_stripoffset[strip] + size > tif->tif_size) {
TIFFError(module,
"%s: Read error at scanline %lu, strip %lu; got %lu bytes, expected %lu",
tif->tif_name,
(u_long) tif->tif_row,
(u_long) strip,
(u_long) tif->tif_size - td->td_stripoffset[strip],
(u_long) size);
return (-1);
}
_TIFFmemcpy(buf, tif->tif_base + td->td_stripoffset[strip], size);
}
return (size);
}
/*
* Read a strip of data from the file.
*/
tsize_t
TIFFReadRawStrip(TIFF* tif, tstrip_t strip, tdata_t buf, tsize_t size)
{
static const char module[] = "TIFFReadRawStrip";
TIFFDirectory *td = &tif->tif_dir;
tsize_t bytecount;
if (!TIFFCheckRead(tif, 0))
return ((tsize_t) -1);
if (strip >= td->td_nstrips) {
TIFFError(tif->tif_name, "%lu: Strip out of range, max %lu",
(u_long) strip, (u_long) td->td_nstrips);
return ((tsize_t) -1);
}
bytecount = td->td_stripbytecount[strip];
if (bytecount <= 0) {
TIFFError(tif->tif_name,
"%lu: Invalid strip byte count, strip %lu",
(u_long) bytecount, (u_long) strip);
return ((tsize_t) -1);
}
if (size != (tsize_t)-1 && size < bytecount)
bytecount = size;
return (TIFFReadRawStrip1(tif, strip, buf, bytecount, module));
}
/*
* Read the specified strip and setup for decoding.
* The data buffer is expanded, as necessary, to
* hold the strip's data.
*/
int
TIFFFillStrip(TIFF* tif, tstrip_t strip)
{
static const char module[] = "TIFFFillStrip";
TIFFDirectory *td = &tif->tif_dir;
tsize_t bytecount;
bytecount = td->td_stripbytecount[strip];
if (bytecount <= 0) {
TIFFError(tif->tif_name,
"%lu: Invalid strip byte count, strip %lu",
(u_long) bytecount, (u_long) strip);
return (0);
}
if (isMapped(tif) &&
(isFillOrder(tif, td->td_fillorder) || (tif->tif_flags & TIFF_NOBITREV))) {
/*
* The image is mapped into memory and we either don't
* need to flip bits or the compression routine is going
* to handle this operation itself. In this case, avoid
* copying the raw data and instead just reference the
* data from the memory mapped file image. This assumes
* that the decompression routines do not modify the
* contents of the raw data buffer (if they try to,
* the application will get a fault since the file is
* mapped read-only).
*/
if ((tif->tif_flags & TIFF_MYBUFFER) && tif->tif_rawdata)
_TIFFfree(tif->tif_rawdata);
tif->tif_flags &= ~TIFF_MYBUFFER;
if ( td->td_stripoffset[strip] + bytecount > tif->tif_size) {
/*
* This error message might seem strange, but it's
* what would happen if a read were done instead.
*/
TIFFError(module,
"%s: Read error on strip %lu; got %lu bytes, expected %lu",
tif->tif_name,
(u_long) strip,
(u_long) tif->tif_size - td->td_stripoffset[strip],
(u_long) bytecount);
tif->tif_curstrip = NOSTRIP;
return (0);
}
tif->tif_rawdatasize = bytecount;
tif->tif_rawdata = tif->tif_base + td->td_stripoffset[strip];
} else {
/*
* Expand raw data buffer, if needed, to
* hold data strip coming from file
* (perhaps should set upper bound on
* the size of a buffer we'll use?).
*/
if (bytecount > tif->tif_rawdatasize) {
tif->tif_curstrip = NOSTRIP;
if ((tif->tif_flags & TIFF_MYBUFFER) == 0) {
TIFFError(module,
"%s: Data buffer too small to hold strip %lu",
tif->tif_name, (u_long) strip);
return (0);
}
if (!TIFFReadBufferSetup(tif, 0,
TIFFroundup(bytecount, 1024)))
return (0);
}
if (TIFFReadRawStrip1(tif, strip, (u_char *)tif->tif_rawdata,
bytecount, module) != bytecount)
return (0);
if (!isFillOrder(tif, td->td_fillorder) &&
(tif->tif_flags & TIFF_NOBITREV) == 0)
TIFFReverseBits(tif->tif_rawdata, bytecount);
}
return (TIFFStartStrip(tif, strip));
}
/*
* Tile-oriented Read Support
* Contributed by Nancy Cam (Silicon Graphics).
*/
/*
* Read and decompress a tile of data. The
* tile is selected by the (x,y,z,s) coordinates.
*/
tsize_t
TIFFReadTile(TIFF* tif,
tdata_t buf, uint32 x, uint32 y, uint32 z, tsample_t s)
{
if (!TIFFCheckRead(tif, 1) || !TIFFCheckTile(tif, x, y, z, s))
return (-1);
return (TIFFReadEncodedTile(tif,
TIFFComputeTile(tif, x, y, z, s), buf, (tsize_t) -1));
}
/*
* Read a tile of data and decompress the specified
* amount into the user-supplied buffer.
*/
tsize_t
TIFFReadEncodedTile(TIFF* tif, ttile_t tile, tdata_t buf, tsize_t size)
{
TIFFDirectory *td = &tif->tif_dir;
tsize_t tilesize = tif->tif_tilesize;
if (!TIFFCheckRead(tif, 1))
return (-1);
if (tile >= td->td_nstrips) {
TIFFError(tif->tif_name, "%ld: Tile out of range, max %ld",
(long) tile, (u_long) td->td_nstrips);
return (-1);
}
if (size == (tsize_t) -1)
size = tilesize;
else if (size > tilesize)
size = tilesize;
if (TIFFFillTile(tif, tile) && (*tif->tif_decodetile)(tif,
(tidata_t) buf, size, (tsample_t)(tile/td->td_stripsperimage))) {
(*tif->tif_postdecode)(tif, (tidata_t) buf, size);
return (size);
} else
return (-1);
}
static tsize_t
TIFFReadRawTile1(TIFF* tif,
ttile_t tile, tdata_t buf, tsize_t size, const char* module)
{
TIFFDirectory *td = &tif->tif_dir;
if (!isMapped(tif)) {
tsize_t cc;
if (!SeekOK(tif, td->td_stripoffset[tile])) {
TIFFError(module,
"%s: Seek error at row %ld, col %ld, tile %ld",
tif->tif_name,
(long) tif->tif_row,
(long) tif->tif_col,
(long) tile);
return ((tsize_t) -1);
}
cc = TIFFReadFile(tif, buf, size);
if (cc != size) {
TIFFError(module,
"%s: Read error at row %ld, col %ld; got %lu bytes, expected %lu",
tif->tif_name,
(long) tif->tif_row,
(long) tif->tif_col,
(u_long) cc,
(u_long) size);
return ((tsize_t) -1);
}
} else {
if (td->td_stripoffset[tile] + size > tif->tif_size) {
TIFFError(module,
"%s: Read error at row %ld, col %ld, tile %ld; got %lu bytes, expected %lu",
tif->tif_name,
(long) tif->tif_row,
(long) tif->tif_col,
(long) tile,
(u_long) tif->tif_size - td->td_stripoffset[tile],
(u_long) size);
return ((tsize_t) -1);
}
_TIFFmemcpy(buf, tif->tif_base + td->td_stripoffset[tile], size);
}
return (size);
}
/*
* Read a tile of data from the file.
*/
tsize_t
TIFFReadRawTile(TIFF* tif, ttile_t tile, tdata_t buf, tsize_t size)
{
static const char module[] = "TIFFReadRawTile";
TIFFDirectory *td = &tif->tif_dir;
tsize_t bytecount;
if (!TIFFCheckRead(tif, 1))
return ((tsize_t) -1);
if (tile >= td->td_nstrips) {
TIFFError(tif->tif_name, "%lu: Tile out of range, max %lu",
(u_long) tile, (u_long) td->td_nstrips);
return ((tsize_t) -1);
}
bytecount = td->td_stripbytecount[tile];
if (size != (tsize_t) -1 && size < bytecount)
bytecount = size;
return (TIFFReadRawTile1(tif, tile, buf, bytecount, module));
}
/*
* Read the specified tile and setup for decoding.
* The data buffer is expanded, as necessary, to
* hold the tile's data.
*/
int
TIFFFillTile(TIFF* tif, ttile_t tile)
{
static const char module[] = "TIFFFillTile";
TIFFDirectory *td = &tif->tif_dir;
tsize_t bytecount;
bytecount = td->td_stripbytecount[tile];
if (bytecount <= 0) {
TIFFError(tif->tif_name,
"%lu: Invalid tile byte count, tile %lu",
(u_long) bytecount, (u_long) tile);
return (0);
}
if (isMapped(tif) &&
(isFillOrder(tif, td->td_fillorder) || (tif->tif_flags & TIFF_NOBITREV))) {
/*
* The image is mapped into memory and we either don't
* need to flip bits or the compression routine is going
* to handle this operation itself. In this case, avoid
* copying the raw data and instead just reference the
* data from the memory mapped file image. This assumes
* that the decompression routines do not modify the
* contents of the raw data buffer (if they try to,
* the application will get a fault since the file is
* mapped read-only).
*/
if ((tif->tif_flags & TIFF_MYBUFFER) && tif->tif_rawdata)
_TIFFfree(tif->tif_rawdata);
tif->tif_flags &= ~TIFF_MYBUFFER;
if ( td->td_stripoffset[tile] + bytecount > tif->tif_size) {
tif->tif_curtile = NOTILE;
return (0);
}
tif->tif_rawdatasize = bytecount;
tif->tif_rawdata = tif->tif_base + td->td_stripoffset[tile];
} else {
/*
* Expand raw data buffer, if needed, to
* hold data tile coming from file
* (perhaps should set upper bound on
* the size of a buffer we'll use?).
*/
if (bytecount > tif->tif_rawdatasize) {
tif->tif_curtile = NOTILE;
if ((tif->tif_flags & TIFF_MYBUFFER) == 0) {
TIFFError(module,
"%s: Data buffer too small to hold tile %ld",
tif->tif_name, (long) tile);
return (0);
}
if (!TIFFReadBufferSetup(tif, 0,
TIFFroundup(bytecount, 1024)))
return (0);
}
if (TIFFReadRawTile1(tif, tile, (u_char *)tif->tif_rawdata,
bytecount, module) != bytecount)
return (0);
if (!isFillOrder(tif, td->td_fillorder) &&
(tif->tif_flags & TIFF_NOBITREV) == 0)
TIFFReverseBits(tif->tif_rawdata, bytecount);
}
return (TIFFStartTile(tif, tile));
}
/*
* Setup the raw data buffer in preparation for
* reading a strip of raw data. If the buffer
* is specified as zero, then a buffer of appropriate
* size is allocated by the library. Otherwise,
* the client must guarantee that the buffer is
* large enough to hold any individual strip of
* raw data.
*/
int
TIFFReadBufferSetup(TIFF* tif, tdata_t bp, tsize_t size)
{
static const char module[] = "TIFFReadBufferSetup";
if (tif->tif_rawdata) {
if (tif->tif_flags & TIFF_MYBUFFER)
_TIFFfree(tif->tif_rawdata);
tif->tif_rawdata = NULL;
}
if (bp) {
tif->tif_rawdatasize = size;
tif->tif_rawdata = (tidata_t) bp;
tif->tif_flags &= ~TIFF_MYBUFFER;
} else {
tif->tif_rawdatasize = TIFFroundup(size, 1024);
tif->tif_rawdata = (tidata_t) _TIFFmalloc(tif->tif_rawdatasize);
tif->tif_flags |= TIFF_MYBUFFER;
}
if (tif->tif_rawdata == NULL) {
TIFFError(module,
"%s: No space for data buffer at scanline %ld",
tif->tif_name, (long) tif->tif_row);
tif->tif_rawdatasize = 0;
return (0);
}
return (1);
}
/*
* Set state to appear as if a
* strip has just been read in.
*/
static int
TIFFStartStrip(TIFF* tif, tstrip_t strip)
{
TIFFDirectory *td = &tif->tif_dir;
if ((tif->tif_flags & TIFF_CODERSETUP) == 0) {
if (!(*tif->tif_setupdecode)(tif))
return (0);
tif->tif_flags |= TIFF_CODERSETUP;
}
tif->tif_curstrip = strip;
tif->tif_row = (strip % td->td_stripsperimage) * td->td_rowsperstrip;
tif->tif_rawcp = tif->tif_rawdata;
tif->tif_rawcc = td->td_stripbytecount[strip];
return ((*tif->tif_predecode)(tif,
(tsample_t)(strip / td->td_stripsperimage)));
}
/*
* Set state to appear as if a
* tile has just been read in.
*/
static int
TIFFStartTile(TIFF* tif, ttile_t tile)
{
TIFFDirectory *td = &tif->tif_dir;
if ((tif->tif_flags & TIFF_CODERSETUP) == 0) {
if (!(*tif->tif_setupdecode)(tif))
return (0);
tif->tif_flags |= TIFF_CODERSETUP;
}
tif->tif_curtile = tile;
tif->tif_row =
(tile % TIFFhowmany(td->td_imagewidth, td->td_tilewidth)) *
td->td_tilelength;
tif->tif_col =
(tile % TIFFhowmany(td->td_imagelength, td->td_tilelength)) *
td->td_tilewidth;
tif->tif_rawcp = tif->tif_rawdata;
tif->tif_rawcc = td->td_stripbytecount[tile];
return ((*tif->tif_predecode)(tif,
(tsample_t)(tile/td->td_stripsperimage)));
}
static int
TIFFCheckRead(TIFF* tif, int tiles)
{
if (tif->tif_mode == O_WRONLY) {
TIFFError(tif->tif_name, "File not open for reading");
return (0);
}
if (tiles ^ isTiled(tif)) {
TIFFError(tif->tif_name, tiles ?
"Can not read tiles from a stripped image" :
"Can not read scanlines from a tiled image");
return (0);
}
return (1);
}
void
_TIFFNoPostDecode(TIFF* tif, tidata_t buf, tsize_t cc)
{
(void) tif; (void) buf; (void) cc;
}
void
_TIFFSwab16BitData(TIFF* tif, tidata_t buf, tsize_t cc)
{
(void) tif;
assert((cc & 1) == 0);
TIFFSwabArrayOfShort((uint16*) buf, cc/2);
}
void
_TIFFSwab32BitData(TIFF* tif, tidata_t buf, tsize_t cc)
{
(void) tif;
assert((cc & 3) == 0);
TIFFSwabArrayOfLong((uint32*) buf, cc/4);
}
void
_TIFFSwab64BitData(TIFF* tif, tidata_t buf, tsize_t cc)
{
(void) tif;
assert((cc & 7) == 0);
TIFFSwabArrayOfDouble((double*) buf, cc/8);
}

View File

@@ -1,254 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1991-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library.
*
* Strip-organized Image Support Routines.
*/
#include "tiffiop.h"
static uint32
summarize(TIFF* tif, size_t summand1, size_t summand2, const char* where)
{
uint32 bytes = summand1 + summand2;
if (bytes - summand1 != summand2) {
TIFFError(tif->tif_name, "Integer overflow in %s", where);
bytes = 0;
}
return (bytes);
}
static uint32
multiply(TIFF* tif, size_t nmemb, size_t elem_size, const char* where)
{
uint32 bytes = nmemb * elem_size;
if (elem_size && bytes / elem_size != nmemb) {
TIFFError(tif->tif_name, "Integer overflow in %s", where);
bytes = 0;
}
return (bytes);
}
/*
* Compute which strip a (row,sample) value is in.
*/
tstrip_t
TIFFComputeStrip(TIFF* tif, uint32 row, tsample_t sample)
{
TIFFDirectory *td = &tif->tif_dir;
tstrip_t strip;
strip = row / td->td_rowsperstrip;
if (td->td_planarconfig == PLANARCONFIG_SEPARATE) {
if (sample >= td->td_samplesperpixel) {
TIFFError(tif->tif_name,
"%u: Sample out of range, max %u",
sample, td->td_samplesperpixel);
return ((tstrip_t) 0);
}
strip += sample*td->td_stripsperimage;
}
return (strip);
}
/*
* Compute how many strips are in an image.
*/
tstrip_t
TIFFNumberOfStrips(TIFF* tif)
{
TIFFDirectory *td = &tif->tif_dir;
tstrip_t nstrips;
nstrips = (td->td_rowsperstrip == (uint32) -1 ?
(td->td_imagelength != 0 ? 1 : 0) :
TIFFhowmany(td->td_imagelength, td->td_rowsperstrip));
if (td->td_planarconfig == PLANARCONFIG_SEPARATE)
nstrips = multiply(tif, nstrips, td->td_samplesperpixel,
"TIFFNumberOfStrips");
return (nstrips);
}
/*
* Compute the # bytes in a variable height, row-aligned strip.
*/
tsize_t
TIFFVStripSize(TIFF* tif, uint32 nrows)
{
TIFFDirectory *td = &tif->tif_dir;
if (nrows == (uint32) -1)
nrows = td->td_imagelength;
#ifdef YCBCR_SUPPORT
if (td->td_planarconfig == PLANARCONFIG_CONTIG &&
td->td_photometric == PHOTOMETRIC_YCBCR &&
!isUpSampled(tif)) {
/*
* Packed YCbCr data contain one Cb+Cr for every
* HorizontalSampling*VerticalSampling Y values.
* Must also roundup width and height when calculating
* since images that are not a multiple of the
* horizontal/vertical subsampling area include
* YCbCr data for the extended image.
*/
uint16 ycbcrsubsampling[2];
tsize_t w, scanline, samplingarea;
TIFFGetField( tif, TIFFTAG_YCBCRSUBSAMPLING,
ycbcrsubsampling + 0,
ycbcrsubsampling + 1 );
w = TIFFroundup(td->td_imagewidth, ycbcrsubsampling[0]);
scanline = TIFFhowmany8(multiply(tif, w, td->td_bitspersample,
"TIFFVStripSize"));
samplingarea = ycbcrsubsampling[0]*ycbcrsubsampling[1];
nrows = TIFFroundup(nrows, ycbcrsubsampling[1]);
/* NB: don't need TIFFhowmany here 'cuz everything is rounded */
scanline = multiply(tif, nrows, scanline, "TIFFVStripSize");
return ((tsize_t)
summarize(tif, scanline,
multiply(tif, 2, scanline / samplingarea,
"TIFFVStripSize"), "TIFFVStripSize"));
} else
#endif
return ((tsize_t) multiply(tif, nrows, TIFFScanlineSize(tif),
"TIFFVStripSize"));
}
/*
* Compute the # bytes in a raw strip.
*/
tsize_t
TIFFRawStripSize(TIFF* tif, tstrip_t strip)
{
TIFFDirectory* td = &tif->tif_dir;
tsize_t bytecount = td->td_stripbytecount[strip];
if (bytecount <= 0) {
TIFFError(tif->tif_name,
"%lu: Invalid strip byte count, strip %lu",
(u_long) bytecount, (u_long) strip);
bytecount = (tsize_t) -1;
}
return bytecount;
}
/*
* Compute the # bytes in a (row-aligned) strip.
*
* Note that if RowsPerStrip is larger than the
* recorded ImageLength, then the strip size is
* truncated to reflect the actual space required
* to hold the strip.
*/
tsize_t
TIFFStripSize(TIFF* tif)
{
TIFFDirectory* td = &tif->tif_dir;
uint32 rps = td->td_rowsperstrip;
if (rps > td->td_imagelength)
rps = td->td_imagelength;
return (TIFFVStripSize(tif, rps));
}
/*
* Compute a default strip size based on the image
* characteristics and a requested value. If the
* request is <1 then we choose a strip size according
* to certain heuristics.
*/
uint32
TIFFDefaultStripSize(TIFF* tif, uint32 request)
{
return (*tif->tif_defstripsize)(tif, request);
}
uint32
_TIFFDefaultStripSize(TIFF* tif, uint32 s)
{
if ((int32) s < 1) {
/*
* If RowsPerStrip is unspecified, try to break the
* image up into strips that are approximately 8Kbytes.
*/
tsize_t scanline = TIFFScanlineSize(tif);
s = (uint32)(8*1024) / (scanline == 0 ? 1 : scanline);
if (s == 0) /* very wide images */
s = 1;
}
return (s);
}
/*
* Return the number of bytes to read/write in a call to
* one of the scanline-oriented i/o routines. Note that
* this number may be 1/samples-per-pixel if data is
* stored as separate planes.
*/
tsize_t
TIFFScanlineSize(TIFF* tif)
{
TIFFDirectory *td = &tif->tif_dir;
tsize_t scanline;
scanline = multiply (tif, td->td_bitspersample, td->td_imagewidth,
"TIFFScanlineSize");
if (td->td_planarconfig == PLANARCONFIG_CONTIG)
scanline = multiply (tif, scanline, td->td_samplesperpixel,
"TIFFScanlineSize");
return ((tsize_t) TIFFhowmany8(scanline));
}
/*
* Return the number of bytes required to store a complete
* decoded and packed raster scanline (as opposed to the
* I/O size returned by TIFFScanlineSize which may be less
* if data is store as separate planes).
*/
tsize_t
TIFFRasterScanlineSize(TIFF* tif)
{
TIFFDirectory *td = &tif->tif_dir;
tsize_t scanline;
scanline = multiply (tif, td->td_bitspersample, td->td_imagewidth,
"TIFFRasterScanlineSize");
if (td->td_planarconfig == PLANARCONFIG_CONTIG) {
scanline = multiply (tif, scanline, td->td_samplesperpixel,
"TIFFRasterScanlineSize");
return ((tsize_t) TIFFhowmany8(scanline));
} else
return ((tsize_t) multiply (tif, TIFFhowmany8(scanline),
td->td_samplesperpixel,
"TIFFRasterScanlineSize"));
}

View File

@@ -1,217 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library Bit & Byte Swapping Support.
*
* XXX We assume short = 16-bits and long = 32-bits XXX
*/
#include "tiffiop.h"
#ifndef TIFFSwabShort
void
TIFFSwabShort(uint16* wp)
{
register u_char* cp = (u_char*) wp;
u_char t;
t = cp[1]; cp[1] = cp[0]; cp[0] = t;
}
#endif
#ifndef TIFFSwabLong
void
TIFFSwabLong(uint32* lp)
{
register u_char* cp = (u_char*) lp;
u_char t;
t = cp[3]; cp[3] = cp[0]; cp[0] = t;
t = cp[2]; cp[2] = cp[1]; cp[1] = t;
}
#endif
#ifndef TIFFSwabArrayOfShort
void
TIFFSwabArrayOfShort(uint16* wp, register u_long n)
{
register u_char* cp;
register u_char t;
/* XXX unroll loop some */
while (n-- > 0) {
cp = (u_char*) wp;
t = cp[1]; cp[1] = cp[0]; cp[0] = t;
wp++;
}
}
#endif
#ifndef TIFFSwabArrayOfLong
void
TIFFSwabArrayOfLong(register uint32* lp, register u_long n)
{
register unsigned char *cp;
register unsigned char t;
/* XXX unroll loop some */
while (n-- > 0) {
cp = (unsigned char *)lp;
t = cp[3]; cp[3] = cp[0]; cp[0] = t;
t = cp[2]; cp[2] = cp[1]; cp[1] = t;
lp++;
}
}
#endif
#ifndef TIFFSwabDouble
void
TIFFSwabDouble(double *dp)
{
register uint32* lp = (uint32*) dp;
uint32 t;
TIFFSwabArrayOfLong(lp, 2);
t = lp[0]; lp[0] = lp[1]; lp[1] = t;
}
#endif
#ifndef TIFFSwabArrayOfDouble
void
TIFFSwabArrayOfDouble(double* dp, register u_long n)
{
register uint32* lp = (uint32*) dp;
register uint32 t;
TIFFSwabArrayOfLong(lp, n + n);
while (n-- > 0) {
t = lp[0]; lp[0] = lp[1]; lp[1] = t;
lp += 2;
}
}
#endif
/*
* Bit reversal tables. TIFFBitRevTable[<byte>] gives
* the bit reversed value of <byte>. Used in various
* places in the library when the FillOrder requires
* bit reversal of byte values (e.g. CCITT Fax 3
* encoding/decoding). TIFFNoBitRevTable is provided
* for algorithms that want an equivalent table that
* do not reverse bit values.
*/
static const unsigned char TIFFBitRevTable[256] = {
0x00, 0x80, 0x40, 0xc0, 0x20, 0xa0, 0x60, 0xe0,
0x10, 0x90, 0x50, 0xd0, 0x30, 0xb0, 0x70, 0xf0,
0x08, 0x88, 0x48, 0xc8, 0x28, 0xa8, 0x68, 0xe8,
0x18, 0x98, 0x58, 0xd8, 0x38, 0xb8, 0x78, 0xf8,
0x04, 0x84, 0x44, 0xc4, 0x24, 0xa4, 0x64, 0xe4,
0x14, 0x94, 0x54, 0xd4, 0x34, 0xb4, 0x74, 0xf4,
0x0c, 0x8c, 0x4c, 0xcc, 0x2c, 0xac, 0x6c, 0xec,
0x1c, 0x9c, 0x5c, 0xdc, 0x3c, 0xbc, 0x7c, 0xfc,
0x02, 0x82, 0x42, 0xc2, 0x22, 0xa2, 0x62, 0xe2,
0x12, 0x92, 0x52, 0xd2, 0x32, 0xb2, 0x72, 0xf2,
0x0a, 0x8a, 0x4a, 0xca, 0x2a, 0xaa, 0x6a, 0xea,
0x1a, 0x9a, 0x5a, 0xda, 0x3a, 0xba, 0x7a, 0xfa,
0x06, 0x86, 0x46, 0xc6, 0x26, 0xa6, 0x66, 0xe6,
0x16, 0x96, 0x56, 0xd6, 0x36, 0xb6, 0x76, 0xf6,
0x0e, 0x8e, 0x4e, 0xce, 0x2e, 0xae, 0x6e, 0xee,
0x1e, 0x9e, 0x5e, 0xde, 0x3e, 0xbe, 0x7e, 0xfe,
0x01, 0x81, 0x41, 0xc1, 0x21, 0xa1, 0x61, 0xe1,
0x11, 0x91, 0x51, 0xd1, 0x31, 0xb1, 0x71, 0xf1,
0x09, 0x89, 0x49, 0xc9, 0x29, 0xa9, 0x69, 0xe9,
0x19, 0x99, 0x59, 0xd9, 0x39, 0xb9, 0x79, 0xf9,
0x05, 0x85, 0x45, 0xc5, 0x25, 0xa5, 0x65, 0xe5,
0x15, 0x95, 0x55, 0xd5, 0x35, 0xb5, 0x75, 0xf5,
0x0d, 0x8d, 0x4d, 0xcd, 0x2d, 0xad, 0x6d, 0xed,
0x1d, 0x9d, 0x5d, 0xdd, 0x3d, 0xbd, 0x7d, 0xfd,
0x03, 0x83, 0x43, 0xc3, 0x23, 0xa3, 0x63, 0xe3,
0x13, 0x93, 0x53, 0xd3, 0x33, 0xb3, 0x73, 0xf3,
0x0b, 0x8b, 0x4b, 0xcb, 0x2b, 0xab, 0x6b, 0xeb,
0x1b, 0x9b, 0x5b, 0xdb, 0x3b, 0xbb, 0x7b, 0xfb,
0x07, 0x87, 0x47, 0xc7, 0x27, 0xa7, 0x67, 0xe7,
0x17, 0x97, 0x57, 0xd7, 0x37, 0xb7, 0x77, 0xf7,
0x0f, 0x8f, 0x4f, 0xcf, 0x2f, 0xaf, 0x6f, 0xef,
0x1f, 0x9f, 0x5f, 0xdf, 0x3f, 0xbf, 0x7f, 0xff
};
static const unsigned char TIFFNoBitRevTable[256] = {
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f,
0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17,
0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f,
0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27,
0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f,
0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37,
0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f,
0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47,
0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f,
0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57,
0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f,
0x60, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67,
0x68, 0x69, 0x6a, 0x6b, 0x6c, 0x6d, 0x6e, 0x6f,
0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77,
0x78, 0x79, 0x7a, 0x7b, 0x7c, 0x7d, 0x7e, 0x7f,
0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f,
0x90, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97,
0x98, 0x99, 0x9a, 0x9b, 0x9c, 0x9d, 0x9e, 0x9f,
0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf,
0xb0, 0xb1, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6, 0xb7,
0xb8, 0xb9, 0xba, 0xbb, 0xbc, 0xbd, 0xbe, 0xbf,
0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7,
0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf,
0xd0, 0xd1, 0xd2, 0xd3, 0xd4, 0xd5, 0xd6, 0xd7,
0xd8, 0xd9, 0xda, 0xdb, 0xdc, 0xdd, 0xde, 0xdf,
0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7,
0xe8, 0xe9, 0xea, 0xeb, 0xec, 0xed, 0xee, 0xef,
0xf0, 0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7,
0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfd, 0xfe, 0xff,
};
const unsigned char*
TIFFGetBitRevTable(int reversed)
{
return (reversed ? TIFFBitRevTable : TIFFNoBitRevTable);
}
void
TIFFReverseBits(register u_char* cp, register u_long n)
{
for (; n > 8; n -= 8) {
cp[0] = TIFFBitRevTable[cp[0]];
cp[1] = TIFFBitRevTable[cp[1]];
cp[2] = TIFFBitRevTable[cp[2]];
cp[3] = TIFFBitRevTable[cp[3]];
cp[4] = TIFFBitRevTable[cp[4]];
cp[5] = TIFFBitRevTable[cp[5]];
cp[6] = TIFFBitRevTable[cp[6]];
cp[7] = TIFFBitRevTable[cp[7]];
cp += 8;
}
while (n-- > 0)
*cp = TIFFBitRevTable[*cp], cp++;
}

View File

@@ -1,156 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
#include "tiffiop.h"
#ifdef THUNDER_SUPPORT
/*
* TIFF Library.
*
* ThunderScan 4-bit Compression Algorithm Support
*/
/*
* ThunderScan uses an encoding scheme designed for
* 4-bit pixel values. Data is encoded in bytes, with
* each byte split into a 2-bit code word and a 6-bit
* data value. The encoding gives raw data, runs of
* pixels, or pixel values encoded as a delta from the
* previous pixel value. For the latter, either 2-bit
* or 3-bit delta values are used, with the deltas packed
* into a single byte.
*/
#define THUNDER_DATA 0x3f /* mask for 6-bit data */
#define THUNDER_CODE 0xc0 /* mask for 2-bit code word */
/* code values */
#define THUNDER_RUN 0x00 /* run of pixels w/ encoded count */
#define THUNDER_2BITDELTAS 0x40 /* 3 pixels w/ encoded 2-bit deltas */
#define DELTA2_SKIP 2 /* skip code for 2-bit deltas */
#define THUNDER_3BITDELTAS 0x80 /* 2 pixels w/ encoded 3-bit deltas */
#define DELTA3_SKIP 4 /* skip code for 3-bit deltas */
#define THUNDER_RAW 0xc0 /* raw data encoded */
static const int twobitdeltas[4] = { 0, 1, 0, -1 };
static const int threebitdeltas[8] = { 0, 1, 2, 3, 0, -3, -2, -1 };
#define SETPIXEL(op, v) { \
lastpixel = (v) & 0xf; \
if (npixels++ & 1) \
*op++ |= lastpixel; \
else \
op[0] = (tidataval_t) (lastpixel << 4); \
}
static int
ThunderDecode(TIFF* tif, tidata_t op, tsize_t maxpixels)
{
register u_char *bp;
register tsize_t cc;
u_int lastpixel;
tsize_t npixels;
bp = (u_char *)tif->tif_rawcp;
cc = tif->tif_rawcc;
lastpixel = 0;
npixels = 0;
while (cc > 0 && npixels < maxpixels) {
int n, delta;
n = *bp++, cc--;
switch (n & THUNDER_CODE) {
case THUNDER_RUN: /* pixel run */
/*
* Replicate the last pixel n times,
* where n is the lower-order 6 bits.
*/
if (npixels & 1) {
op[0] |= lastpixel;
lastpixel = *op++; npixels++; n--;
} else
lastpixel |= lastpixel << 4;
npixels += n;
if (npixels < maxpixels) {
for (; n > 0; n -= 2)
*op++ = (tidataval_t) lastpixel;
}
if (n == -1)
*--op &= 0xf0;
lastpixel &= 0xf;
break;
case THUNDER_2BITDELTAS: /* 2-bit deltas */
if ((delta = ((n >> 4) & 3)) != DELTA2_SKIP)
SETPIXEL(op, lastpixel + twobitdeltas[delta]);
if ((delta = ((n >> 2) & 3)) != DELTA2_SKIP)
SETPIXEL(op, lastpixel + twobitdeltas[delta]);
if ((delta = (n & 3)) != DELTA2_SKIP)
SETPIXEL(op, lastpixel + twobitdeltas[delta]);
break;
case THUNDER_3BITDELTAS: /* 3-bit deltas */
if ((delta = ((n >> 3) & 7)) != DELTA3_SKIP)
SETPIXEL(op, lastpixel + threebitdeltas[delta]);
if ((delta = (n & 7)) != DELTA3_SKIP)
SETPIXEL(op, lastpixel + threebitdeltas[delta]);
break;
case THUNDER_RAW: /* raw data */
SETPIXEL(op, n);
break;
}
}
tif->tif_rawcp = (tidata_t) bp;
tif->tif_rawcc = cc;
if (npixels != maxpixels) {
TIFFError(tif->tif_name,
"ThunderDecode: %s data at scanline %ld (%lu != %lu)",
npixels < maxpixels ? "Not enough" : "Too much",
(long) tif->tif_row, (long) npixels, (long) maxpixels);
return (0);
}
return (1);
}
static int
ThunderDecodeRow(TIFF* tif, tidata_t buf, tsize_t occ, tsample_t s)
{
tidata_t row = buf;
(void) s;
while ((long)occ > 0) {
if (!ThunderDecode(tif, row, tif->tif_dir.td_imagewidth))
return (0);
occ -= tif->tif_scanlinesize;
row += tif->tif_scanlinesize;
}
return (1);
}
int
TIFFInitThunderScan(TIFF* tif, int scheme)
{
(void) scheme;
tif->tif_decoderow = ThunderDecodeRow;
tif->tif_decodestrip = ThunderDecodeRow;
return (1);
}
#endif /* THUNDER_SUPPORT */

View File

@@ -1,257 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1991-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library.
*
* Tiled Image Support Routines.
*/
#include "tiffiop.h"
static uint32
summarize(TIFF* tif, size_t summand1, size_t summand2, const char* where)
{
uint32 bytes = summand1 + summand2;
if (bytes - summand1 != summand2) {
TIFFError(tif->tif_name, "Integer overflow in %s", where);
bytes = 0;
}
return (bytes);
}
static uint32
multiply(TIFF* tif, size_t nmemb, size_t elem_size, const char* where)
{
uint32 bytes = nmemb * elem_size;
if (elem_size && bytes / elem_size != nmemb) {
TIFFError(tif->tif_name, "Integer overflow in %s", where);
bytes = 0;
}
return (bytes);
}
/*
* Compute which tile an (x,y,z,s) value is in.
*/
ttile_t
TIFFComputeTile(TIFF* tif, uint32 x, uint32 y, uint32 z, tsample_t s)
{
TIFFDirectory *td = &tif->tif_dir;
uint32 dx = td->td_tilewidth;
uint32 dy = td->td_tilelength;
uint32 dz = td->td_tiledepth;
ttile_t tile = 1;
if (td->td_imagedepth == 1)
z = 0;
if (dx == (uint32) -1)
dx = td->td_imagewidth;
if (dy == (uint32) -1)
dy = td->td_imagelength;
if (dz == (uint32) -1)
dz = td->td_imagedepth;
if (dx != 0 && dy != 0 && dz != 0) {
uint32 xpt = TIFFhowmany(td->td_imagewidth, dx);
uint32 ypt = TIFFhowmany(td->td_imagelength, dy);
uint32 zpt = TIFFhowmany(td->td_imagedepth, dz);
if (td->td_planarconfig == PLANARCONFIG_SEPARATE)
tile = (xpt*ypt*zpt)*s +
(xpt*ypt)*(z/dz) +
xpt*(y/dy) +
x/dx;
else
tile = (xpt*ypt)*(z/dz) + xpt*(y/dy) + x/dx;
}
return (tile);
}
/*
* Check an (x,y,z,s) coordinate
* against the image bounds.
*/
int
TIFFCheckTile(TIFF* tif, uint32 x, uint32 y, uint32 z, tsample_t s)
{
TIFFDirectory *td = &tif->tif_dir;
if (x >= td->td_imagewidth) {
TIFFError(tif->tif_name, "Col %ld out of range, max %lu",
(long) x, (u_long) td->td_imagewidth);
return (0);
}
if (y >= td->td_imagelength) {
TIFFError(tif->tif_name, "Row %ld out of range, max %lu",
(long) y, (u_long) td->td_imagelength);
return (0);
}
if (z >= td->td_imagedepth) {
TIFFError(tif->tif_name, "Depth %ld out of range, max %lu",
(long) z, (u_long) td->td_imagedepth);
return (0);
}
if (td->td_planarconfig == PLANARCONFIG_SEPARATE &&
s >= td->td_samplesperpixel) {
TIFFError(tif->tif_name, "Sample %d out of range, max %u",
(int) s, td->td_samplesperpixel);
return (0);
}
return (1);
}
/*
* Compute how many tiles are in an image.
*/
ttile_t
TIFFNumberOfTiles(TIFF* tif)
{
TIFFDirectory *td = &tif->tif_dir;
uint32 dx = td->td_tilewidth;
uint32 dy = td->td_tilelength;
uint32 dz = td->td_tiledepth;
ttile_t ntiles;
if (dx == (uint32) -1)
dx = td->td_imagewidth;
if (dy == (uint32) -1)
dy = td->td_imagelength;
if (dz == (uint32) -1)
dz = td->td_imagedepth;
ntiles = (dx == 0 || dy == 0 || dz == 0) ? 0 :
multiply(tif, multiply(tif, TIFFhowmany(td->td_imagewidth, dx),
TIFFhowmany(td->td_imagelength, dy),
"TIFFNumberOfTiles"),
TIFFhowmany(td->td_imagedepth, dz), "TIFFNumberOfTiles");
if (td->td_planarconfig == PLANARCONFIG_SEPARATE)
ntiles = multiply(tif, ntiles, td->td_samplesperpixel,
"TIFFNumberOfTiles");
return (ntiles);
}
/*
* Compute the # bytes in each row of a tile.
*/
tsize_t
TIFFTileRowSize(TIFF* tif)
{
TIFFDirectory *td = &tif->tif_dir;
tsize_t rowsize;
if (td->td_tilelength == 0 || td->td_tilewidth == 0)
return ((tsize_t) 0);
rowsize = multiply(tif, td->td_bitspersample, td->td_tilewidth,
"TIFFTileRowSize");
if (td->td_planarconfig == PLANARCONFIG_CONTIG)
rowsize = multiply(tif, rowsize, td->td_samplesperpixel,
"TIFFTileRowSize");
return ((tsize_t) TIFFhowmany8(rowsize));
}
/*
* Compute the # bytes in a variable length, row-aligned tile.
*/
tsize_t
TIFFVTileSize(TIFF* tif, uint32 nrows)
{
TIFFDirectory *td = &tif->tif_dir;
tsize_t tilesize;
if (td->td_tilelength == 0 || td->td_tilewidth == 0 ||
td->td_tiledepth == 0)
return ((tsize_t) 0);
#ifdef YCBCR_SUPPORT
if (td->td_planarconfig == PLANARCONFIG_CONTIG &&
td->td_photometric == PHOTOMETRIC_YCBCR &&
!isUpSampled(tif)) {
/*
* Packed YCbCr data contain one Cb+Cr for every
* HorizontalSampling*VerticalSampling Y values.
* Must also roundup width and height when calculating
* since images that are not a multiple of the
* horizontal/vertical subsampling area include
* YCbCr data for the extended image.
*/
tsize_t w =
TIFFroundup(td->td_tilewidth, td->td_ycbcrsubsampling[0]);
tsize_t rowsize =
TIFFhowmany8(multiply(tif, w, td->td_bitspersample,
"TIFFVTileSize"));
tsize_t samplingarea =
td->td_ycbcrsubsampling[0]*td->td_ycbcrsubsampling[1];
nrows = TIFFroundup(nrows, td->td_ycbcrsubsampling[1]);
/* NB: don't need TIFFhowmany here 'cuz everything is rounded */
tilesize = multiply(tif, nrows, rowsize, "TIFFVTileSize");
tilesize = summarize(tif, tilesize,
multiply(tif, 2, tilesize / samplingarea,
"TIFFVTileSize"),
"TIFFVTileSize");
} else
#endif
tilesize = multiply(tif, nrows, TIFFTileRowSize(tif),
"TIFFVTileSize");
return ((tsize_t)
multiply(tif, tilesize, td->td_tiledepth, "TIFFVTileSize"));
}
/*
* Compute the # bytes in a row-aligned tile.
*/
tsize_t
TIFFTileSize(TIFF* tif)
{
return (TIFFVTileSize(tif, tif->tif_dir.td_tilelength));
}
/*
* Compute a default tile size based on the image
* characteristics and a requested value. If a
* request is <1 then we choose a size according
* to certain heuristics.
*/
void
TIFFDefaultTileSize(TIFF* tif, uint32* tw, uint32* th)
{
(*tif->tif_deftilesize)(tif, tw, th);
}
void
_TIFFDefaultTileSize(TIFF* tif, uint32* tw, uint32* th)
{
(void) tif;
if (*(int32*) tw < 1)
*tw = 256;
if (*(int32*) th < 1)
*th = 256;
/* roundup to a multiple of 16 per the spec */
if (*tw & 0xf)
*tw = TIFFroundup(*tw, 16);
if (*th & 0xf)
*th = TIFFroundup(*th, 16);
}

View File

@@ -1,228 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library UNIX-specific Routines.
*/
#include "tiffiop.h"
#include <sys/types.h>
#include <unistd.h>
#include <stdlib.h>
static tsize_t
_tiffReadProc(thandle_t fd, tdata_t buf, tsize_t size)
{
return ((tsize_t) read((int) fd, buf, (size_t) size));
}
static tsize_t
_tiffWriteProc(thandle_t fd, tdata_t buf, tsize_t size)
{
return ((tsize_t) write((int) fd, buf, (size_t) size));
}
static toff_t
_tiffSeekProc(thandle_t fd, toff_t off, int whence)
{
#if USE_64BIT_API == 1
return ((toff_t) lseek64((int) fd, (off64_t) off, whence));
#else
return ((toff_t) lseek((int) fd, (off_t) off, whence));
#endif
}
static int
_tiffCloseProc(thandle_t fd)
{
return (close((int) fd));
}
#include <sys/stat.h>
static toff_t
_tiffSizeProc(thandle_t fd)
{
#ifdef _AM29K
long fsize;
return ((fsize = lseek((int) fd, 0, SEEK_END)) < 0 ? 0 : fsize);
#else
#if USE_64BIT_API == 1
struct stat64 sb;
return (toff_t) (fstat64((int) fd, &sb) < 0 ? 0 : sb.st_size);
#else
struct stat sb;
return (toff_t) (fstat((int) fd, &sb) < 0 ? 0 : sb.st_size);
#endif
#endif
}
#ifdef HAVE_MMAP
#include <sys/mman.h>
static int
_tiffMapProc(thandle_t fd, tdata_t* pbase, toff_t* psize)
{
toff_t size = _tiffSizeProc(fd);
if (size != (toff_t) -1) {
*pbase = (tdata_t)
mmap(0, size, PROT_READ, MAP_SHARED, (int) fd, 0);
if (*pbase != (tdata_t) -1) {
*psize = size;
return (1);
}
}
return (0);
}
static void
_tiffUnmapProc(thandle_t fd, tdata_t base, toff_t size)
{
(void) fd;
(void) munmap(base, (off_t) size);
}
#else /* !HAVE_MMAP */
static int
_tiffMapProc(thandle_t fd, tdata_t* pbase, toff_t* psize)
{
(void) fd; (void) pbase; (void) psize;
return (0);
}
static void
_tiffUnmapProc(thandle_t fd, tdata_t base, toff_t size)
{
(void) fd; (void) base; (void) size;
}
#endif /* !HAVE_MMAP */
/*
* Open a TIFF file descriptor for read/writing.
*/
TIFF*
TIFFFdOpen(int fd, const char* name, const char* mode)
{
TIFF* tif;
tif = TIFFClientOpen(name, mode,
(thandle_t) fd,
_tiffReadProc, _tiffWriteProc,
_tiffSeekProc, _tiffCloseProc, _tiffSizeProc,
_tiffMapProc, _tiffUnmapProc);
if (tif)
tif->tif_fd = fd;
return (tif);
}
/*
* Open a TIFF file for read/writing.
*/
TIFF*
TIFFOpen(const char* name, const char* mode)
{
static const char module[] = "TIFFOpen";
int m, fd;
m = _TIFFgetMode(mode, module);
if (m == -1)
return ((TIFF*)0);
/* for cygwin */
#ifdef O_BINARY
m |= O_BINARY;
#endif
#ifdef _AM29K
fd = open(name, m);
#else
#if USE_64BIT_API == 1
fd = open(name, m | O_LARGEFILE, 0666);
#else
fd = open(name, m, 0666);
#endif
#endif
if (fd < 0) {
TIFFError(module, "%s: Cannot open", name);
return ((TIFF *)0);
}
return (TIFFFdOpen(fd, name, mode));
}
void*
_TIFFmalloc(tsize_t s)
{
return (malloc((size_t) s));
}
void
_TIFFfree(tdata_t p)
{
free(p);
}
void*
_TIFFrealloc(tdata_t p, tsize_t s)
{
return (realloc(p, (size_t) s));
}
void
_TIFFmemset(tdata_t p, int v, tsize_t c)
{
memset(p, v, (size_t) c);
}
void
_TIFFmemcpy(tdata_t d, const tdata_t s, tsize_t c)
{
memcpy(d, s, (size_t) c);
}
int
_TIFFmemcmp(const tdata_t p1, const tdata_t p2, tsize_t c)
{
return (memcmp(p1, p2, (size_t) c));
}
static void
unixWarningHandler(const char* module, const char* fmt, va_list ap)
{
if (module != NULL)
fprintf(stderr, "%s: ", module);
fprintf(stderr, "Warning, ");
vfprintf(stderr, fmt, ap);
fprintf(stderr, ".\n");
}
TIFFErrorHandler _TIFFwarningHandler = unixWarningHandler;
static void
unixErrorHandler(const char* module, const char* fmt, va_list ap)
{
if (module != NULL)
fprintf(stderr, "%s: ", module);
vfprintf(stderr, fmt, ap);
fprintf(stderr, ".\n");
}
TIFFErrorHandler _TIFFerrorHandler = unixErrorHandler;

View File

@@ -1,33 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1992-1997 Sam Leffler
* Copyright (c) 1992-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
#include "tiffiop.h"
static const char TIFFVersion[] = TIFFLIB_VERSION_STR;
const char*
TIFFGetVersion(void)
{
return (TIFFVersion);
}

View File

@@ -1,588 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library VMS-specific Routines.
*/
#include <stdlib.h>
#include <unixio.h>
#include "tiffiop.h"
#if !HAVE_IEEEFP
#include <math.h>
#endif
#ifdef VAXC
#define NOSHARE noshare
#else
#define NOSHARE
#endif
#ifdef __alpha
/* Dummy entry point for backwards compatibility */
void TIFFModeCCITTFax3(void){}
#endif
static tsize_t
_tiffReadProc(thandle_t fd, tdata_t buf, tsize_t size)
{
return (read((int) fd, buf, size));
}
static tsize_t
_tiffWriteProc(thandle_t fd, tdata_t buf, tsize_t size)
{
return (write((int) fd, buf, size));
}
static toff_t
_tiffSeekProc(thandle_t fd, toff_t off, int whence)
{
return ((toff_t) lseek((int) fd, (off_t) off, whence));
}
static int
_tiffCloseProc(thandle_t fd)
{
return (close((int) fd));
}
#include <sys/stat.h>
static toff_t
_tiffSizeProc(thandle_t fd)
{
struct stat sb;
return (toff_t) (fstat((int) fd, &sb) < 0 ? 0 : sb.st_size);
}
#ifdef HAVE_MMAP
#include <starlet.h>
#include <fab.h>
#include <secdef.h>
/*
* Table for storing information on current open sections.
* (Should really be a linked list)
*/
#define MAX_MAPPED 100
static int no_mapped = 0;
static struct {
char *base;
char *top;
unsigned short channel;
} map_table[MAX_MAPPED];
/*
* This routine maps a file into a private section. Note that this
* method of accessing a file is by far the fastest under VMS.
* The routine may fail (i.e. return 0) for several reasons, for
* example:
* - There is no more room for storing the info on sections.
* - The process is out of open file quota, channels, ...
* - fd does not describe an opened file.
* - The file is already opened for write access by this process
* or another process
* - There is no free "hole" in virtual memory that fits the
* size of the file
*/
static int
_tiffMapProc(thandle_t fd, tdata_t* pbase, toff_t* psize)
{
char name[256];
struct FAB fab;
unsigned short channel;
char *inadr[2], *retadr[2];
unsigned long status;
long size;
if (no_mapped >= MAX_MAPPED)
return(0);
/*
* We cannot use a file descriptor, we
* must open the file once more.
*/
if (getname((int)fd, name, 1) == NULL)
return(0);
/* prepare the FAB for a user file open */
fab = cc$rms_fab;
fab.fab$l_fop |= FAB$V_UFO;
fab.fab$b_fac = FAB$M_GET;
fab.fab$b_shr = FAB$M_SHRGET;
fab.fab$l_fna = name;
fab.fab$b_fns = strlen(name);
status = sys$open(&fab); /* open file & get channel number */
if ((status&1) == 0)
return(0);
channel = (unsigned short)fab.fab$l_stv;
inadr[0] = inadr[1] = (char *)0; /* just an address in P0 space */
/*
* Map the blocks of the file up to
* the EOF block into virtual memory.
*/
size = _tiffSizeProc(fd);
status = sys$crmpsc(inadr, retadr, 0, SEC$M_EXPREG, 0,0,0, channel,
TIFFhowmany(size,512), 0,0,0);
if ((status&1) == 0){
sys$dassgn(channel);
return(0);
}
*pbase = (tdata_t) retadr[0]; /* starting virtual address */
/*
* Use the size of the file up to the
* EOF mark for UNIX compatibility.
*/
*psize = (toff_t) size;
/* Record the section in the table */
map_table[no_mapped].base = retadr[0];
map_table[no_mapped].top = retadr[1];
map_table[no_mapped].channel = channel;
no_mapped++;
return(1);
}
/*
* This routine unmaps a section from the virtual address space of
* the process, but only if the base was the one returned from a
* call to TIFFMapFileContents.
*/
static void
_tiffUnmapProc(thandle_t fd, tdata_t base, toff_t size)
{
char *inadr[2];
int i, j;
/* Find the section in the table */
for (i = 0;i < no_mapped; i++) {
if (map_table[i].base == (char *) base) {
/* Unmap the section */
inadr[0] = (char *) base;
inadr[1] = map_table[i].top;
sys$deltva(inadr, 0, 0);
sys$dassgn(map_table[i].channel);
/* Remove this section from the list */
for (j = i+1; j < no_mapped; j++)
map_table[j-1] = map_table[j];
no_mapped--;
return;
}
}
}
#else /* !HAVE_MMAP */
static int
_tiffMapProc(thandle_t fd, tdata_t* pbase, toff_t* psize)
{
return (0);
}
static void
_tiffUnmapProc(thandle_t fd, tdata_t base, toff_t size)
{
}
#endif /* !HAVE_MMAP */
/*
* Open a TIFF file descriptor for read/writing.
*/
TIFF*
TIFFFdOpen(int fd, const char* name, const char* mode)
{
TIFF* tif;
tif = TIFFClientOpen(name, mode,
(thandle_t) fd,
_tiffReadProc, _tiffWriteProc, _tiffSeekProc, _tiffCloseProc,
_tiffSizeProc, _tiffMapProc, _tiffUnmapProc);
if (tif)
tif->tif_fd = fd;
return (tif);
}
/*
* Open a TIFF file for read/writing.
*/
TIFF*
TIFFOpen(const char* name, const char* mode)
{
static const char module[] = "TIFFOpen";
int m, fd;
m = _TIFFgetMode(mode, module);
if (m == -1)
return ((TIFF*)0);
if (m&O_TRUNC){
/*
* There is a bug in open in VAXC. If you use
* open w/ m=O_RDWR|O_CREAT|O_TRUNC the
* wrong thing happens. On the other hand
* creat does the right thing.
*/
fd = creat((char *) /* bug in stdio.h */ name, 0666,
"alq = 128", "deq = 64", "mbc = 32",
"fop = tef");
} else if (m&O_RDWR) {
fd = open(name, m, 0666,
"deq = 64", "mbc = 32", "fop = tef", "ctx = stm");
} else
fd = open(name, m, 0666, "mbc = 32", "ctx = stm");
if (fd < 0) {
TIFFError(module, "%s: Cannot open", name);
return ((TIFF*)0);
}
return (TIFFFdOpen(fd, name, mode));
}
tdata_t
_TIFFmalloc(tsize_t s)
{
return (malloc((size_t) s));
}
void
_TIFFfree(tdata_t p)
{
free(p);
}
tdata_t
_TIFFrealloc(tdata_t p, tsize_t s)
{
return (realloc(p, (size_t) s));
}
void
_TIFFmemset(tdata_t p, int v, tsize_t c)
{
memset(p, v, (size_t) c);
}
void
_TIFFmemcpy(tdata_t d, const tdata_t s, tsize_t c)
{
memcpy(d, s, (size_t) c);
}
int
_TIFFmemcmp(const tdata_t p1, const tdata_t p2, tsize_t c)
{
return (memcmp(p1, p2, (size_t) c));
}
/*
* On the VAX, we need to make those global, writable pointers
* non-shareable, otherwise they would be made shareable by default.
* On the AXP, this brain damage has been corrected.
*
* I (Karsten Spang, krs@kampsax.dk) have dug around in the GCC
* manual and the GAS code and have come up with the following
* construct, but I don't have GCC on my VAX, so it is untested.
* Please tell me if it does not work.
*/
static void
vmsWarningHandler(const char* module, const char* fmt, va_list ap)
{
if (module != NULL)
fprintf(stderr, "%s: ", module);
fprintf(stderr, "Warning, ");
vfprintf(stderr, fmt, ap);
fprintf(stderr, ".\n");
}
NOSHARE TIFFErrorHandler _TIFFwarningHandler = vmsWarningHandler
#if defined(VAX) && defined(__GNUC__)
asm("_$$PsectAttributes_NOSHR$$_TIFFwarningHandler")
#endif
;
static void
vmsErrorHandler(const char* module, const char* fmt, va_list ap)
{
if (module != NULL)
fprintf(stderr, "%s: ", module);
vfprintf(stderr, fmt, ap);
fprintf(stderr, ".\n");
}
NOSHARE TIFFErrorHandler _TIFFerrorHandler = vmsErrorHandler
#if defined(VAX) && defined(__GNUC__)
asm("_$$PsectAttributes_NOSHR$$_TIFFerrorHandler")
#endif
;
#if !HAVE_IEEEFP
/* IEEE floting point handling */
typedef struct ieeedouble {
u_long mant2; /* fix NDR: full 8-byte swap */
u_long mant : 20,
exp : 11,
sign : 1;
} ieeedouble;
typedef struct ieeefloat {
u_long mant : 23,
exp : 8,
sign : 1;
} ieeefloat;
/*
* NB: These are D_FLOAT's, not G_FLOAT's. A G_FLOAT is
* simply a reverse-IEEE float/double.
*/
typedef struct {
u_long mant1 : 7,
exp : 8,
sign : 1,
mant2 : 16,
mant3 : 16,
mant4 : 16;
} nativedouble;
typedef struct {
u_long mant1 : 7,
exp : 8,
sign : 1,
mant2 : 16;
} nativefloat;
typedef union {
ieeedouble ieee;
nativedouble native;
char b[8];
uint32 l[2];
double d;
} double_t;
typedef union {
ieeefloat ieee;
nativefloat native;
char b[4];
uint32 l;
float f;
} float_t;
#if defined(VAXC) || defined(DECC)
#pragma inline(ieeetod,dtoieee)
#endif
/*
* Convert an IEEE double precision number to native double precision.
* The source is contained in two longwords, the second holding the sign,
* exponent and the higher order bits of the mantissa, and the first
* holding the rest of the mantissa as follows:
* (Note: It is assumed that the number has been eight-byte swapped to
* LSB first.)
*
* First longword:
* 32 least significant bits of mantissa
* Second longword:
* 0-19: 20 most significant bits of mantissa
* 20-30: exponent
* 31: sign
* The exponent is stored as excess 1023.
* The most significant bit of the mantissa is implied 1, and not stored.
* If the exponent and mantissa are zero, the number is zero.
* If the exponent is 0 (i.e. -1023) and the mantissa is non-zero, it is an
* unnormalized number with the most significant bit NOT implied.
* If the exponent is 2047, the number is invalid, in case the mantissa is zero,
* this means overflow (+/- depending of the sign bit), otherwise
* it simply means invalid number.
*
* If the number is too large for the machine or was specified as overflow,
* +/-HUGE_VAL is returned.
*/
INLINE static void
ieeetod(double *dp)
{
double_t source;
long sign,exp,mant;
double dmant;
source.ieee = ((double_t*)dp)->ieee;
sign = source.ieee.sign;
exp = source.ieee.exp;
mant = source.ieee.mant;
if (exp == 2047) {
if (mant) /* Not a Number (NAN) */
*dp = HUGE_VAL;
else /* +/- infinity */
*dp = (sign ? -HUGE_VAL : HUGE_VAL);
return;
}
if (!exp) {
if (!(mant || source.ieee.mant2)) { /* zero */
*dp=0;
return;
} else { /* Unnormalized number */
/* NB: not -1023, the 1 bit is not implied */
exp= -1022;
}
} else {
mant |= 1<<20;
exp -= 1023;
}
dmant = (((double) mant) +
((double) source.ieee.mant2) / (((double) (1<<16)) *
((double) (1<<16)))) / (double) (1<<20);
dmant = ldexp(dmant, exp);
if (sign)
dmant= -dmant;
*dp = dmant;
}
INLINE static void
dtoieee(double *dp)
{
double_t num;
double x;
int exp;
num.d = *dp;
if (!num.d) { /* Zero is just binary all zeros */
num.l[0] = num.l[1] = 0;
return;
}
if (num.d < 0) { /* Sign is encoded separately */
num.d = -num.d;
num.ieee.sign = 1;
} else {
num.ieee.sign = 0;
}
/* Now separate the absolute value into mantissa and exponent */
x = frexp(num.d, &exp);
/*
* Handle cases where the value is outside the
* range for IEEE floating point numbers.
* (Overflow cannot happen on a VAX, but underflow
* can happen for G float.)
*/
if (exp < -1022) { /* Unnormalized number */
x = ldexp(x, -1023-exp);
exp = 0;
} else if (exp > 1023) { /* +/- infinity */
x = 0;
exp = 2047;
} else { /* Get rid of most significant bit */
x *= 2;
x -= 1;
exp += 1022; /* fix NDR: 1.0 -> x=0.5, exp=1 -> ieee.exp = 1023 */
}
num.ieee.exp = exp;
x *= (double) (1<<20);
num.ieee.mant = (long) x;
x -= (double) num.ieee.mant;
num.ieee.mant2 = (long) (x*((double) (1<<16)*(double) (1<<16)));
if (!(num.ieee.mant || num.ieee.exp || num.ieee.mant2)) {
/* Avoid negative zero */
num.ieee.sign = 0;
}
((double_t*)dp)->ieee = num.ieee;
}
/*
* Beware, these do not handle over/under-flow
* during conversion from ieee to native format.
*/
#define NATIVE2IEEEFLOAT(fp) { \
float_t t; \
if (t.ieee.exp = (fp)->native.exp) \
t.ieee.exp += -129 + 127; \
t.ieee.sign = (fp)->native.sign; \
t.ieee.mant = ((fp)->native.mant1<<16)|(fp)->native.mant2; \
*(fp) = t; \
}
#define IEEEFLOAT2NATIVE(fp) { \
float_t t; int v = (fp)->ieee.exp; \
if (v) v += -127 + 129; /* alter bias of exponent */\
t.native.exp = v; /* implicit truncation of exponent */\
t.native.sign = (fp)->ieee.sign; \
v = (fp)->ieee.mant; \
t.native.mant1 = v >> 16; \
t.native.mant2 = v;\
*(fp) = t; \
}
#define IEEEDOUBLE2NATIVE(dp) ieeetod(dp)
#define NATIVE2IEEEDOUBLE(dp) dtoieee(dp)
/*
* These unions are used during floating point
* conversions. The above macros define the
* conversion operations.
*/
void
TIFFCvtIEEEFloatToNative(TIFF* tif, u_int n, float* f)
{
float_t* fp = (float_t*) f;
while (n-- > 0) {
IEEEFLOAT2NATIVE(fp);
fp++;
}
}
void
TIFFCvtNativeToIEEEFloat(TIFF* tif, u_int n, float* f)
{
float_t* fp = (float_t*) f;
while (n-- > 0) {
NATIVE2IEEEFLOAT(fp);
fp++;
}
}
void
TIFFCvtIEEEDoubleToNative(TIFF* tif, u_int n, double* f)
{
double_t* fp = (double_t*) f;
while (n-- > 0) {
IEEEDOUBLE2NATIVE(fp);
fp++;
}
}
void
TIFFCvtNativeToIEEEDouble(TIFF* tif, u_int n, double* f)
{
double_t* fp = (double_t*) f;
while (n-- > 0) {
NATIVE2IEEEDOUBLE(fp);
fp++;
}
}
#endif

View File

@@ -1,49 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library.
*/
#include "tiffiop.h"
TIFFErrorHandler
TIFFSetWarningHandler(TIFFErrorHandler handler)
{
TIFFErrorHandler prev = _TIFFwarningHandler;
_TIFFwarningHandler = handler;
return (prev);
}
void
TIFFWarning(const char* module, const char* fmt, ...)
{
if (_TIFFwarningHandler) {
va_list ap;
va_start(ap, fmt);
(*_TIFFwarningHandler)(module, fmt, ap);
va_end(ap);
}
}

View File

@@ -1,225 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library Windows 3.x-specific Routines.
*/
#include "tiffiop.h"
#if defined(__WATCOMC__) || defined(__BORLANDC__) || defined(_MSC_VER)
#include <io.h> /* for open, close, etc. function prototypes */
#endif
#include <windows.h>
#include <windowsx.h>
#include <memory.h>
static tsize_t
_tiffReadProc(thandle_t fd, tdata_t buf, tsize_t size)
{
return (_hread(fd, buf, size));
}
static tsize_t
_tiffWriteProc(thandle_t fd, tdata_t buf, tsize_t size)
{
return (_hwrite(fd, buf, size));
}
static toff_t
_tiffSeekProc(thandle_t fd, toff_t off, int whence)
{
return (_llseek(fd, (off_t) off, whence));
}
static int
_tiffCloseProc(thandle_t fd)
{
return (_lclose(fd));
}
#include <sys/stat.h>
static toff_t
_tiffSizeProc(thandle_t fd)
{
struct stat sb;
return (fstat((int) fd, &sb) < 0 ? 0 : sb.st_size);
}
static int
_tiffMapProc(thandle_t fd, tdata_t* pbase, toff_t* psize)
{
return (0);
}
static void
_tiffUnmapProc(thandle_t fd, tdata_t base, toff_t size)
{
}
/*
* Open a TIFF file descriptor for read/writing.
*/
TIFF*
TIFFFdOpen(int fd, const char* name, const char* mode)
{
TIFF* tif;
tif = TIFFClientOpen(name, mode,
(thandle_t) fd,
_tiffReadProc, _tiffWriteProc, _tiffSeekProc, _tiffCloseProc,
_tiffSizeProc, _tiffMapProc, _tiffUnmapProc);
if (tif)
tif->tif_fd = fd;
return (tif);
}
/*
* Open a TIFF file for read/writing.
*/
TIFF*
TIFFOpen(const char* name, const char* mode)
{
static const char module[] = "TIFFOpen";
int m, fd;
OFSTRUCT of;
int mm = 0;
m = _TIFFgetMode(mode, module);
if (m == -1)
return ((TIFF*)0);
if (m & O_CREAT) {
if ((m & O_TRUNC) || OpenFile(name, &of, OF_EXIST) != HFILE_ERROR)
mm |= OF_CREATE;
}
if (m & O_WRONLY)
mm |= OF_WRITE;
if (m & O_RDWR)
mm |= OF_READWRITE;
fd = OpenFile(name, &of, mm);
if (fd < 0) {
TIFFError(module, "%s: Cannot open", name);
return ((TIFF*)0);
}
return (TIFFFdOpen(fd, name, mode));
}
tdata_t
_TIFFmalloc(tsize_t s)
{
return (tdata_t) GlobalAllocPtr(GHND, (DWORD) s);
}
void
_TIFFfree(tdata_t p)
{
GlobalFreePtr(p);
}
tdata_t
_TIFFrealloc(tdata_t p, tsize_t s)
{
return (tdata_t) GlobalReAllocPtr(p, (DWORD) s, GHND);
}
void
_TIFFmemset(tdata_t p, int v, tsize_t c)
{
char* pp = (char*) p;
while (c > 0) {
tsize_t chunk = 0x10000 - ((uint32) pp & 0xffff);/* What's left in segment */
if (chunk > 0xff00) /* No more than 0xff00 */
chunk = 0xff00;
if (chunk > c) /* No more than needed */
chunk = c;
memset(pp, v, chunk);
pp = (char*) (chunk + (char huge*) pp);
c -= chunk;
}
}
void
_TIFFmemcpy(tdata_t d, const tdata_t s, tsize_t c)
{
if (c > 0xFFFF)
hmemcpy((void _huge*) d, (void _huge*) s, c);
else
(void) memcpy(d, s, (size_t) c);
}
int
_TIFFmemcmp(const tdata_t d, const tdata_t s, tsize_t c)
{
char* dd = (char*) d;
char* ss = (char*) s;
tsize_t chunks, chunkd, chunk;
int result;
while (c > 0) {
chunks = 0x10000 - ((uint32) ss & 0xffff); /* What's left in segment */
chunkd = 0x10000 - ((uint32) dd & 0xffff); /* What's left in segment */
chunk = c; /* Get the largest of */
if (chunk > chunks) /* c, chunks, chunkd, */
chunk = chunks; /* 0xff00 */
if (chunk > chunkd)
chunk = chunkd;
if (chunk > 0xff00)
chunk = 0xff00;
result = memcmp(dd, ss, chunk);
if (result != 0)
return (result);
dd = (char*) (chunk + (char huge*) dd);
ss = (char*) (chunk + (char huge*) ss);
c -= chunk;
}
return (0);
}
static void
win3WarningHandler(const char* module, const char* fmt, va_list ap)
{
char e[512] = { '\0' };
if (module != NULL)
strcat(strcpy(e, module), ":");
vsprintf(e+strlen(e), fmt, ap);
strcat(e, ".");
MessageBox(GetActiveWindow(), e, "LibTIFF Warning",
MB_OK|MB_ICONEXCLAMATION);
}
TIFFErrorHandler _TIFFwarningHandler = win3WarningHandler;
static void
win3ErrorHandler(const char* module, const char* fmt, va_list ap)
{
char e[512] = { '\0' };
if (module != NULL)
strcat(strcpy(e, module), ":");
vsprintf(e+strlen(e), fmt, ap);
strcat(e, ".");
MessageBox(GetActiveWindow(), e, "LibTIFF Error", MB_OK|MB_ICONSTOP);
}
TIFFErrorHandler _TIFFerrorHandler = win3ErrorHandler;

View File

@@ -1,323 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library Win32-specific Routines. Adapted from tif_unix.c 4/5/95 by
* Scott Wagner (wagner@itek.com), Itek Graphix, Rochester, NY USA
*/
#include <windows.h>
#include "tiffiop.h"
static tsize_t
_tiffReadProc(thandle_t fd, tdata_t buf, tsize_t size)
{
DWORD dwSizeRead;
if (!ReadFile(fd, buf, size, &dwSizeRead, NULL))
return(0);
return ((tsize_t) dwSizeRead);
}
static tsize_t
_tiffWriteProc(thandle_t fd, tdata_t buf, tsize_t size)
{
DWORD dwSizeWritten;
if (!WriteFile(fd, buf, size, &dwSizeWritten, NULL))
return(0);
return ((tsize_t) dwSizeWritten);
}
static toff_t
_tiffSeekProc(thandle_t fd, toff_t off, int whence)
{
DWORD dwMoveMethod, dwMoveHigh;
/* we use this as a special code, so avoid accepting it */
if( off == 0xFFFFFFFF )
return 0xFFFFFFFF;
switch(whence)
{
case SEEK_SET:
dwMoveMethod = FILE_BEGIN;
break;
case SEEK_CUR:
dwMoveMethod = FILE_CURRENT;
break;
case SEEK_END:
dwMoveMethod = FILE_END;
break;
default:
dwMoveMethod = FILE_BEGIN;
break;
}
dwMoveHigh = 0;
return ((toff_t)SetFilePointer(fd, (LONG) off, (PLONG)&dwMoveHigh,
dwMoveMethod));
}
static int
_tiffCloseProc(thandle_t fd)
{
return (CloseHandle(fd) ? 0 : -1);
}
static toff_t
_tiffSizeProc(thandle_t fd)
{
return ((toff_t)GetFileSize(fd, NULL));
}
#ifdef __BORLANDC__
#pragma argsused
#endif
static int
_tiffDummyMapProc(thandle_t fd, tdata_t* pbase, toff_t* psize)
{
return (0);
}
/*
* From "Hermann Josef Hill" <lhill@rhein-zeitung.de>:
*
* Windows uses both a handle and a pointer for file mapping,
* but according to the SDK documentation and Richter's book
* "Advanced Windows Programming" it is safe to free the handle
* after obtaining the file mapping pointer
*
* This removes a nasty OS dependency and cures a problem
* with Visual C++ 5.0
*/
static int
_tiffMapProc(thandle_t fd, tdata_t* pbase, toff_t* psize)
{
toff_t size;
HANDLE hMapFile;
if ((size = _tiffSizeProc(fd)) == 0xFFFFFFFF)
return (0);
hMapFile = CreateFileMapping(fd, NULL, PAGE_READONLY, 0, size, NULL);
if (hMapFile == NULL)
return (0);
*pbase = MapViewOfFile(hMapFile, FILE_MAP_READ, 0, 0, 0);
CloseHandle(hMapFile);
if (*pbase == NULL)
return (0);
*psize = size;
return(1);
}
#ifdef __BORLANDC__
#pragma argsused
#endif
static void
_tiffDummyUnmapProc(thandle_t fd, tdata_t base, toff_t size)
{
}
static void
_tiffUnmapProc(thandle_t fd, tdata_t base, toff_t size)
{
UnmapViewOfFile(base);
}
/*
* Open a TIFF file descriptor for read/writing.
* Note that TIFFFdOpen and TIFFOpen recognise the character 'u' in the mode
* string, which forces the file to be opened unmapped.
*/
TIFF*
TIFFFdOpen(int ifd, const char* name, const char* mode)
{
TIFF* tif;
BOOL fSuppressMap = (mode[1] == 'u' || (mode[1]!=0 && mode[2] == 'u'));
tif = TIFFClientOpen(name, mode,
(thandle_t)ifd,
_tiffReadProc, _tiffWriteProc,
_tiffSeekProc, _tiffCloseProc, _tiffSizeProc,
fSuppressMap ? _tiffDummyMapProc : _tiffMapProc,
fSuppressMap ? _tiffDummyUnmapProc : _tiffUnmapProc);
if (tif)
tif->tif_fd = ifd;
return (tif);
}
/*
* Open a TIFF file for read/writing.
*/
TIFF*
TIFFOpen(const char* name, const char* mode)
{
static const char module[] = "TIFFOpen";
thandle_t fd;
int m;
DWORD dwMode;
m = _TIFFgetMode(mode, module);
switch(m)
{
case O_RDONLY:
dwMode = OPEN_EXISTING;
break;
case O_RDWR:
dwMode = OPEN_ALWAYS;
break;
case O_RDWR|O_CREAT:
dwMode = OPEN_ALWAYS;
break;
case O_RDWR|O_TRUNC:
dwMode = CREATE_ALWAYS;
break;
case O_RDWR|O_CREAT|O_TRUNC:
dwMode = CREATE_ALWAYS;
break;
default:
return ((TIFF*)0);
}
fd = (thandle_t)CreateFile(name, (m == O_RDONLY) ? GENERIC_READ :
(GENERIC_READ | GENERIC_WRITE), FILE_SHARE_READ, NULL, dwMode,
(m == O_RDONLY) ? FILE_ATTRIBUTE_READONLY : FILE_ATTRIBUTE_NORMAL, NULL);
if (fd == INVALID_HANDLE_VALUE) {
TIFFError(module, "%s: Cannot open", name);
return ((TIFF *)0);
}
return (TIFFFdOpen((int)fd, name, mode));
}
tdata_t
_TIFFmalloc(tsize_t s)
{
return ((tdata_t)GlobalAlloc(GMEM_FIXED, s));
}
void
_TIFFfree(tdata_t p)
{
GlobalFree(p);
return;
}
tdata_t
_TIFFrealloc(tdata_t p, tsize_t s)
{
void* pvTmp;
tsize_t old=GlobalSize(p);
if (old>=s)
{
if ((pvTmp = GlobalAlloc(GMEM_FIXED, s)) != NULL) {
CopyMemory(pvTmp, p, s);
GlobalFree(p);
}
}
else
{
if ((pvTmp = GlobalAlloc(GMEM_FIXED, s)) != NULL) {
CopyMemory(pvTmp, p, old);
GlobalFree(p);
}
}
return ((tdata_t)pvTmp);
}
void
_TIFFmemset(void* p, int v, tsize_t c)
{
FillMemory(p, c, (BYTE)v);
}
void
_TIFFmemcpy(void* d, const tdata_t s, tsize_t c)
{
CopyMemory(d, s, c);
}
int
_TIFFmemcmp(const tdata_t p1, const tdata_t p2, tsize_t c)
{
register const BYTE *pb1 = (const BYTE *) p1;
register const BYTE *pb2 = (const BYTE *) p2;
register DWORD dwTmp = c;
register int iTmp;
for (iTmp = 0; dwTmp-- && !iTmp; iTmp = (int)*pb1++ - (int)*pb2++)
;
return (iTmp);
}
static void
Win32WarningHandler(const char* module, const char* fmt, va_list ap)
{
#ifndef TIF_PLATFORM_CONSOLE
LPTSTR szTitle;
LPTSTR szTmp;
LPCTSTR szTitleText = "%s Warning";
LPCTSTR szDefaultModule = "TIFFLIB";
szTmp = (module == NULL) ? (LPTSTR)szDefaultModule : (LPTSTR)module;
if ((szTitle = (LPTSTR)LocalAlloc(LMEM_FIXED, (lstrlen(szTmp) +
lstrlen(szTitleText) + lstrlen(fmt) + 128)*sizeof(TCHAR))) == NULL)
return;
wsprintf(szTitle, szTitleText, szTmp);
szTmp = szTitle + (lstrlen(szTitle)+2)*sizeof(TCHAR);
wvsprintf(szTmp, fmt, ap);
MessageBox(GetFocus(), szTmp, szTitle, MB_OK | MB_ICONINFORMATION);
LocalFree(szTitle);
return;
#else
if (module != NULL)
fprintf(stderr, "%s: ", module);
fprintf(stderr, "Warning, ");
vfprintf(stderr, fmt, ap);
fprintf(stderr, ".\n");
#endif
}
TIFFErrorHandler _TIFFwarningHandler = Win32WarningHandler;
static void
Win32ErrorHandler(const char* module, const char* fmt, va_list ap)
{
#ifndef TIF_PLATFORM_CONSOLE
LPTSTR szTitle;
LPTSTR szTmp;
LPCTSTR szTitleText = "%s Error";
LPCTSTR szDefaultModule = "TIFFLIB";
szTmp = (module == NULL) ? (LPTSTR)szDefaultModule : (LPTSTR)module;
if ((szTitle = (LPTSTR)LocalAlloc(LMEM_FIXED, (lstrlen(szTmp) +
lstrlen(szTitleText) + lstrlen(fmt) + 128)*sizeof(TCHAR))) == NULL)
return;
wsprintf(szTitle, szTitleText, szTmp);
szTmp = szTitle + (lstrlen(szTitle)+2)*sizeof(TCHAR);
wvsprintf(szTmp, fmt, ap);
MessageBox(GetFocus(), szTmp, szTitle, MB_OK | MB_ICONEXCLAMATION);
LocalFree(szTitle);
return;
#else
if (module != NULL)
fprintf(stderr, "%s: ", module);
vfprintf(stderr, fmt, ap);
fprintf(stderr, ".\n");
#endif
}
TIFFErrorHandler _TIFFerrorHandler = Win32ErrorHandler;

View File

@@ -1,703 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
/*
* TIFF Library.
*
* Scanline-oriented Write Support
*/
#include "tiffiop.h"
#include <assert.h>
#include <stdio.h>
#define REWRITE_HACK
#define STRIPINCR 20 /* expansion factor on strip array */
#define WRITECHECKSTRIPS(tif, module) \
(((tif)->tif_flags&TIFF_BEENWRITING) || TIFFWriteCheck((tif),0,module))
#define WRITECHECKTILES(tif, module) \
(((tif)->tif_flags&TIFF_BEENWRITING) || TIFFWriteCheck((tif),1,module))
#define BUFFERCHECK(tif) \
((((tif)->tif_flags & TIFF_BUFFERSETUP) && tif->tif_rawdata) || \
TIFFWriteBufferSetup((tif), NULL, (tsize_t) -1))
static int TIFFGrowStrips(TIFF*, int, const char*);
static int TIFFAppendToStrip(TIFF*, tstrip_t, tidata_t, tsize_t);
int
TIFFWriteScanline(TIFF* tif, tdata_t buf, uint32 row, tsample_t sample)
{
static const char module[] = "TIFFWriteScanline";
register TIFFDirectory *td;
int status, imagegrew = 0;
tstrip_t strip;
if (!WRITECHECKSTRIPS(tif, module))
return (-1);
/*
* Handle delayed allocation of data buffer. This
* permits it to be sized more intelligently (using
* directory information).
*/
if (!BUFFERCHECK(tif))
return (-1);
td = &tif->tif_dir;
/*
* Extend image length if needed
* (but only for PlanarConfig=1).
*/
if (row >= td->td_imagelength) { /* extend image */
if (td->td_planarconfig == PLANARCONFIG_SEPARATE) {
TIFFError(tif->tif_name,
"Can not change \"ImageLength\" when using separate planes");
return (-1);
}
td->td_imagelength = row+1;
imagegrew = 1;
}
/*
* Calculate strip and check for crossings.
*/
if (td->td_planarconfig == PLANARCONFIG_SEPARATE) {
if (sample >= td->td_samplesperpixel) {
TIFFError(tif->tif_name,
"%d: Sample out of range, max %d",
sample, td->td_samplesperpixel);
return (-1);
}
strip = sample*td->td_stripsperimage + row/td->td_rowsperstrip;
} else
strip = row / td->td_rowsperstrip;
if (strip != tif->tif_curstrip) {
/*
* Changing strips -- flush any data present.
*/
if (!TIFFFlushData(tif))
return (-1);
tif->tif_curstrip = strip;
/*
* Watch out for a growing image. The value of
* strips/image will initially be 1 (since it
* can't be deduced until the imagelength is known).
*/
if (strip >= td->td_stripsperimage && imagegrew)
td->td_stripsperimage =
TIFFhowmany(td->td_imagelength,td->td_rowsperstrip);
tif->tif_row =
(strip % td->td_stripsperimage) * td->td_rowsperstrip;
if ((tif->tif_flags & TIFF_CODERSETUP) == 0) {
if (!(*tif->tif_setupencode)(tif))
return (-1);
tif->tif_flags |= TIFF_CODERSETUP;
}
if (!(*tif->tif_preencode)(tif, sample))
return (-1);
tif->tif_flags |= TIFF_POSTENCODE;
}
/*
* Check strip array to make sure there's space.
* We don't support dynamically growing files that
* have data organized in separate bitplanes because
* it's too painful. In that case we require that
* the imagelength be set properly before the first
* write (so that the strips array will be fully
* allocated above).
*/
if (strip >= td->td_nstrips && !TIFFGrowStrips(tif, 1, module))
return (-1);
/*
* Ensure the write is either sequential or at the
* beginning of a strip (or that we can randomly
* access the data -- i.e. no encoding).
*/
if (row != tif->tif_row) {
if (row < tif->tif_row) {
/*
* Moving backwards within the same strip:
* backup to the start and then decode
* forward (below).
*/
tif->tif_row = (strip % td->td_stripsperimage) *
td->td_rowsperstrip;
tif->tif_rawcp = tif->tif_rawdata;
}
/*
* Seek forward to the desired row.
*/
if (!(*tif->tif_seek)(tif, row - tif->tif_row))
return (-1);
tif->tif_row = row;
}
/* swab if needed - note that source buffer will be altered */
tif->tif_postdecode( tif, (tidata_t) buf, tif->tif_scanlinesize );
status = (*tif->tif_encoderow)(tif, (tidata_t) buf,
tif->tif_scanlinesize, sample);
/* we are now poised at the beginning of the next row */
tif->tif_row = row + 1;
return (status);
}
/*
* Encode the supplied data and write it to the
* specified strip. There must be space for the
* data; we don't check if strips overlap!
*
* NB: Image length must be setup before writing.
*/
tsize_t
TIFFWriteEncodedStrip(TIFF* tif, tstrip_t strip, tdata_t data, tsize_t cc)
{
static const char module[] = "TIFFWriteEncodedStrip";
TIFFDirectory *td = &tif->tif_dir;
tsample_t sample;
if (!WRITECHECKSTRIPS(tif, module))
return ((tsize_t) -1);
/*
* Check strip array to make sure there's space.
* We don't support dynamically growing files that
* have data organized in separate bitplanes because
* it's too painful. In that case we require that
* the imagelength be set properly before the first
* write (so that the strips array will be fully
* allocated above).
*/
if (strip >= td->td_nstrips) {
if (td->td_planarconfig == PLANARCONFIG_SEPARATE) {
TIFFError(tif->tif_name,
"Can not grow image by strips when using separate planes");
return ((tsize_t) -1);
}
if (!TIFFGrowStrips(tif, 1, module))
return ((tsize_t) -1);
td->td_stripsperimage =
TIFFhowmany(td->td_imagelength, td->td_rowsperstrip);
}
/*
* Handle delayed allocation of data buffer. This
* permits it to be sized according to the directory
* info.
*/
if (!BUFFERCHECK(tif))
return ((tsize_t) -1);
tif->tif_curstrip = strip;
tif->tif_row = (strip % td->td_stripsperimage) * td->td_rowsperstrip;
if ((tif->tif_flags & TIFF_CODERSETUP) == 0) {
if (!(*tif->tif_setupencode)(tif))
return ((tsize_t) -1);
tif->tif_flags |= TIFF_CODERSETUP;
}
#ifdef REWRITE_HACK
tif->tif_rawcc = 0;
tif->tif_rawcp = tif->tif_rawdata;
if( td->td_stripbytecount[strip] > 0 )
{
/* if we are writing over existing tiles, zero length. */
td->td_stripbytecount[strip] = 0;
/* this forces TIFFAppendToStrip() to do a seek */
tif->tif_curoff = 0;
}
#endif
tif->tif_flags &= ~TIFF_POSTENCODE;
sample = (tsample_t)(strip / td->td_stripsperimage);
if (!(*tif->tif_preencode)(tif, sample))
return ((tsize_t) -1);
/* swab if needed - note that source buffer will be altered */
tif->tif_postdecode( tif, (tidata_t) data, cc );
if (!(*tif->tif_encodestrip)(tif, (tidata_t) data, cc, sample))
return ((tsize_t) 0);
if (!(*tif->tif_postencode)(tif))
return ((tsize_t) -1);
if (!isFillOrder(tif, td->td_fillorder) &&
(tif->tif_flags & TIFF_NOBITREV) == 0)
TIFFReverseBits(tif->tif_rawdata, tif->tif_rawcc);
if (tif->tif_rawcc > 0 &&
!TIFFAppendToStrip(tif, strip, tif->tif_rawdata, tif->tif_rawcc))
return ((tsize_t) -1);
tif->tif_rawcc = 0;
tif->tif_rawcp = tif->tif_rawdata;
return (cc);
}
/*
* Write the supplied data to the specified strip.
* There must be space for the data; we don't check
* if strips overlap!
*
* NB: Image length must be setup before writing.
*/
tsize_t
TIFFWriteRawStrip(TIFF* tif, tstrip_t strip, tdata_t data, tsize_t cc)
{
static const char module[] = "TIFFWriteRawStrip";
TIFFDirectory *td = &tif->tif_dir;
if (!WRITECHECKSTRIPS(tif, module))
return ((tsize_t) -1);
/*
* Check strip array to make sure there's space.
* We don't support dynamically growing files that
* have data organized in separate bitplanes because
* it's too painful. In that case we require that
* the imagelength be set properly before the first
* write (so that the strips array will be fully
* allocated above).
*/
if (strip >= td->td_nstrips) {
if (td->td_planarconfig == PLANARCONFIG_SEPARATE) {
TIFFError(tif->tif_name,
"Can not grow image by strips when using separate planes");
return ((tsize_t) -1);
}
/*
* Watch out for a growing image. The value of
* strips/image will initially be 1 (since it
* can't be deduced until the imagelength is known).
*/
if (strip >= td->td_stripsperimage)
td->td_stripsperimage =
TIFFhowmany(td->td_imagelength,td->td_rowsperstrip);
if (!TIFFGrowStrips(tif, 1, module))
return ((tsize_t) -1);
}
tif->tif_curstrip = strip;
tif->tif_row = (strip % td->td_stripsperimage) * td->td_rowsperstrip;
return (TIFFAppendToStrip(tif, strip, (tidata_t) data, cc) ?
cc : (tsize_t) -1);
}
/*
* Write and compress a tile of data. The
* tile is selected by the (x,y,z,s) coordinates.
*/
tsize_t
TIFFWriteTile(TIFF* tif,
tdata_t buf, uint32 x, uint32 y, uint32 z, tsample_t s)
{
if (!TIFFCheckTile(tif, x, y, z, s))
return (-1);
/*
* NB: A tile size of -1 is used instead of tif_tilesize knowing
* that TIFFWriteEncodedTile will clamp this to the tile size.
* This is done because the tile size may not be defined until
* after the output buffer is setup in TIFFWriteBufferSetup.
*/
return (TIFFWriteEncodedTile(tif,
TIFFComputeTile(tif, x, y, z, s), buf, (tsize_t) -1));
}
/*
* Encode the supplied data and write it to the
* specified tile. There must be space for the
* data. The function clamps individual writes
* to a tile to the tile size, but does not (and
* can not) check that multiple writes to the same
* tile do not write more than tile size data.
*
* NB: Image length must be setup before writing; this
* interface does not support automatically growing
* the image on each write (as TIFFWriteScanline does).
*/
tsize_t
TIFFWriteEncodedTile(TIFF* tif, ttile_t tile, tdata_t data, tsize_t cc)
{
static const char module[] = "TIFFWriteEncodedTile";
TIFFDirectory *td;
tsample_t sample;
if (!WRITECHECKTILES(tif, module))
return ((tsize_t) -1);
td = &tif->tif_dir;
if (tile >= td->td_nstrips) {
TIFFError(module, "%s: Tile %lu out of range, max %lu",
tif->tif_name, (u_long) tile, (u_long) td->td_nstrips);
return ((tsize_t) -1);
}
/*
* Handle delayed allocation of data buffer. This
* permits it to be sized more intelligently (using
* directory information).
*/
if (!BUFFERCHECK(tif))
return ((tsize_t) -1);
tif->tif_curtile = tile;
#ifdef REWRITE_HACK
tif->tif_rawcc = 0;
tif->tif_rawcp = tif->tif_rawdata;
if( td->td_stripbytecount[tile] > 0 )
{
/* if we are writing over existing tiles, zero length. */
td->td_stripbytecount[tile] = 0;
/* this forces TIFFAppendToStrip() to do a seek */
tif->tif_curoff = 0;
}
#endif
/*
* Compute tiles per row & per column to compute
* current row and column
*/
tif->tif_row = (tile % TIFFhowmany(td->td_imagelength, td->td_tilelength))
* td->td_tilelength;
tif->tif_col = (tile % TIFFhowmany(td->td_imagewidth, td->td_tilewidth))
* td->td_tilewidth;
if ((tif->tif_flags & TIFF_CODERSETUP) == 0) {
if (!(*tif->tif_setupencode)(tif))
return ((tsize_t) -1);
tif->tif_flags |= TIFF_CODERSETUP;
}
tif->tif_flags &= ~TIFF_POSTENCODE;
sample = (tsample_t)(tile/td->td_stripsperimage);
if (!(*tif->tif_preencode)(tif, sample))
return ((tsize_t) -1);
/*
* Clamp write amount to the tile size. This is mostly
* done so that callers can pass in some large number
* (e.g. -1) and have the tile size used instead.
*/
if ( cc < 1 || cc > tif->tif_tilesize)
cc = tif->tif_tilesize;
/* swab if needed - note that source buffer will be altered */
tif->tif_postdecode( tif, (tidata_t) data, cc );
if (!(*tif->tif_encodetile)(tif, (tidata_t) data, cc, sample))
return ((tsize_t) 0);
if (!(*tif->tif_postencode)(tif))
return ((tsize_t) -1);
if (!isFillOrder(tif, td->td_fillorder) &&
(tif->tif_flags & TIFF_NOBITREV) == 0)
TIFFReverseBits((u_char *)tif->tif_rawdata, tif->tif_rawcc);
if (tif->tif_rawcc > 0 && !TIFFAppendToStrip(tif, tile,
tif->tif_rawdata, tif->tif_rawcc))
return ((tsize_t) -1);
tif->tif_rawcc = 0;
tif->tif_rawcp = tif->tif_rawdata;
return (cc);
}
/*
* Write the supplied data to the specified strip.
* There must be space for the data; we don't check
* if strips overlap!
*
* NB: Image length must be setup before writing; this
* interface does not support automatically growing
* the image on each write (as TIFFWriteScanline does).
*/
tsize_t
TIFFWriteRawTile(TIFF* tif, ttile_t tile, tdata_t data, tsize_t cc)
{
static const char module[] = "TIFFWriteRawTile";
if (!WRITECHECKTILES(tif, module))
return ((tsize_t) -1);
if (tile >= tif->tif_dir.td_nstrips) {
TIFFError(module, "%s: Tile %lu out of range, max %lu",
tif->tif_name, (u_long) tile,
(u_long) tif->tif_dir.td_nstrips);
return ((tsize_t) -1);
}
return (TIFFAppendToStrip(tif, tile, (tidata_t) data, cc) ?
cc : (tsize_t) -1);
}
#define isUnspecified(tif, f) \
(TIFFFieldSet(tif,f) && (tif)->tif_dir.td_imagelength == 0)
int
TIFFSetupStrips(TIFF* tif)
{
TIFFDirectory* td = &tif->tif_dir;
if (isTiled(tif))
td->td_stripsperimage =
isUnspecified(tif, FIELD_TILEDIMENSIONS) ?
td->td_samplesperpixel : TIFFNumberOfTiles(tif);
else
td->td_stripsperimage =
isUnspecified(tif, FIELD_ROWSPERSTRIP) ?
td->td_samplesperpixel : TIFFNumberOfStrips(tif);
td->td_nstrips = td->td_stripsperimage;
if (td->td_planarconfig == PLANARCONFIG_SEPARATE)
td->td_stripsperimage /= td->td_samplesperpixel;
td->td_stripoffset = (uint32 *)
_TIFFmalloc(td->td_nstrips * sizeof (uint32));
td->td_stripbytecount = (uint32 *)
_TIFFmalloc(td->td_nstrips * sizeof (uint32));
if (td->td_stripoffset == NULL || td->td_stripbytecount == NULL)
return (0);
/*
* Place data at the end-of-file
* (by setting offsets to zero).
*/
_TIFFmemset(td->td_stripoffset, 0, td->td_nstrips*sizeof (uint32));
_TIFFmemset(td->td_stripbytecount, 0, td->td_nstrips*sizeof (uint32));
TIFFSetFieldBit(tif, FIELD_STRIPOFFSETS);
TIFFSetFieldBit(tif, FIELD_STRIPBYTECOUNTS);
return (1);
}
#undef isUnspecified
/*
* Verify file is writable and that the directory
* information is setup properly. In doing the latter
* we also "freeze" the state of the directory so
* that important information is not changed.
*/
int
TIFFWriteCheck(TIFF* tif, int tiles, const char* module)
{
if (tif->tif_mode == O_RDONLY) {
TIFFError(module, "%s: File not open for writing",
tif->tif_name);
return (0);
}
if (tiles ^ isTiled(tif)) {
TIFFError(tif->tif_name, tiles ?
"Can not write tiles to a stripped image" :
"Can not write scanlines to a tiled image");
return (0);
}
/*
* While we allow compressed TIFF files to be opened in update mode,
* we don't allow writing any image blocks in an existing compressed
* image. Eventually we could do so, by moving blocks that grow
* to the end of the file, but we don't for now.
*/
if (tif->tif_dir.td_stripoffset != NULL
&& tif->tif_dir.td_compression != COMPRESSION_NONE )
{
TIFFError( module,
"%s:\n"
"In place update to compressed TIFF images not "
"supported.",
tif->tif_name );
return (0);
}
/*
* On the first write verify all the required information
* has been setup and initialize any data structures that
* had to wait until directory information was set.
* Note that a lot of our work is assumed to remain valid
* because we disallow any of the important parameters
* from changing after we start writing (i.e. once
* TIFF_BEENWRITING is set, TIFFSetField will only allow
* the image's length to be changed).
*/
if (!TIFFFieldSet(tif, FIELD_IMAGEDIMENSIONS)) {
TIFFError(module,
"%s: Must set \"ImageWidth\" before writing data",
tif->tif_name);
return (0);
}
if (!TIFFFieldSet(tif, FIELD_PLANARCONFIG)) {
TIFFError(module,
"%s: Must set \"PlanarConfiguration\" before writing data",
tif->tif_name);
return (0);
}
if (tif->tif_dir.td_stripoffset == NULL && !TIFFSetupStrips(tif)) {
tif->tif_dir.td_nstrips = 0;
TIFFError(module, "%s: No space for %s arrays",
tif->tif_name, isTiled(tif) ? "tile" : "strip");
return (0);
}
if (isTiled(tif))
tif->tif_tilesize = TIFFTileSize(tif);
else
tif->tif_tilesize = (tsize_t) -1;
tif->tif_scanlinesize = TIFFScanlineSize(tif);
tif->tif_flags |= TIFF_BEENWRITING;
return (1);
}
/*
* Setup the raw data buffer used for encoding.
*/
int
TIFFWriteBufferSetup(TIFF* tif, tdata_t bp, tsize_t size)
{
static const char module[] = "TIFFWriteBufferSetup";
if (tif->tif_rawdata) {
if (tif->tif_flags & TIFF_MYBUFFER) {
_TIFFfree(tif->tif_rawdata);
tif->tif_flags &= ~TIFF_MYBUFFER;
}
tif->tif_rawdata = NULL;
}
if (size == (tsize_t) -1) {
size = (isTiled(tif) ?
tif->tif_tilesize : tif->tif_scanlinesize);
/*
* Make raw data buffer at least 8K
*/
if (size < 8*1024)
size = 8*1024;
bp = NULL; /* NB: force malloc */
}
if (bp == NULL) {
bp = _TIFFmalloc(size);
if (bp == NULL) {
TIFFError(module, "%s: No space for output buffer",
tif->tif_name);
return (0);
}
tif->tif_flags |= TIFF_MYBUFFER;
} else
tif->tif_flags &= ~TIFF_MYBUFFER;
tif->tif_rawdata = (tidata_t) bp;
tif->tif_rawdatasize = size;
tif->tif_rawcc = 0;
tif->tif_rawcp = tif->tif_rawdata;
tif->tif_flags |= TIFF_BUFFERSETUP;
return (1);
}
/*
* Grow the strip data structures by delta strips.
*/
static int
TIFFGrowStrips(TIFF* tif, int delta, const char* module)
{
TIFFDirectory *td = &tif->tif_dir;
uint32 *new_stripoffset, *new_stripbytecount;
assert(td->td_planarconfig == PLANARCONFIG_CONTIG);
new_stripoffset = (uint32*)_TIFFrealloc(td->td_stripoffset,
(td->td_nstrips + delta) * sizeof (uint32));
new_stripbytecount = (uint32*)_TIFFrealloc(td->td_stripbytecount,
(td->td_nstrips + delta) * sizeof (uint32));
if (new_stripoffset == NULL || new_stripbytecount == NULL) {
if (new_stripoffset)
_TIFFfree(new_stripoffset);
if (new_stripbytecount)
_TIFFfree(new_stripbytecount);
td->td_nstrips = 0;
TIFFError(module, "%s: No space to expand strip arrays",
tif->tif_name);
return (0);
}
td->td_stripoffset = new_stripoffset;
td->td_stripbytecount = new_stripbytecount;
_TIFFmemset(td->td_stripoffset + td->td_nstrips,
0, delta*sizeof (uint32));
_TIFFmemset(td->td_stripbytecount + td->td_nstrips,
0, delta*sizeof (uint32));
td->td_nstrips += delta;
return (1);
}
/*
* Append the data to the specified strip.
*
* NB: We don't check that there's space in the
* file (i.e. that strips do not overlap).
*/
static int
TIFFAppendToStrip(TIFF* tif, tstrip_t strip, tidata_t data, tsize_t cc)
{
TIFFDirectory *td = &tif->tif_dir;
static const char module[] = "TIFFAppendToStrip";
if (td->td_stripoffset[strip] == 0 || tif->tif_curoff == 0) {
/*
* No current offset, set the current strip.
*/
if (td->td_stripoffset[strip] != 0) {
if (!SeekOK(tif, td->td_stripoffset[strip])) {
TIFFError(module,
"%s: Seek error at scanline %lu",
tif->tif_name, (u_long) tif->tif_row);
return (0);
}
} else
td->td_stripoffset[strip] =
TIFFSeekFile(tif, (toff_t) 0, SEEK_END);
tif->tif_curoff = td->td_stripoffset[strip];
}
if (!WriteOK(tif, data, cc)) {
TIFFError(module, "%s: Write error at scanline %lu",
tif->tif_name, (u_long) tif->tif_row);
return (0);
}
tif->tif_curoff += cc;
td->td_stripbytecount[strip] += cc;
return (1);
}
/*
* Internal version of TIFFFlushData that can be
* called by ``encodestrip routines'' w/o concern
* for infinite recursion.
*/
int
TIFFFlushData1(TIFF* tif)
{
if (tif->tif_rawcc > 0) {
if (!isFillOrder(tif, tif->tif_dir.td_fillorder) &&
(tif->tif_flags & TIFF_NOBITREV) == 0)
TIFFReverseBits((u_char *)tif->tif_rawdata,
tif->tif_rawcc);
if (!TIFFAppendToStrip(tif,
isTiled(tif) ? tif->tif_curtile : tif->tif_curstrip,
tif->tif_rawdata, tif->tif_rawcc))
return (0);
tif->tif_rawcc = 0;
tif->tif_rawcp = tif->tif_rawdata;
}
return (1);
}
/*
* Set the current write offset. This should only be
* used to set the offset to a known previous location
* (very carefully), or to 0 so that the next write gets
* appended to the end of the file.
*/
void
TIFFSetWriteOffset(TIFF* tif, toff_t off)
{
tif->tif_curoff = off;
}

View File

@@ -1,368 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1995-1997 Sam Leffler
* Copyright (c) 1995-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
#include "tiffiop.h"
#ifdef ZIP_SUPPORT
/*
* TIFF Library.
*
* ZIP (aka Deflate) Compression Support
*
* This file is simply an interface to the zlib library written by
* Jean-loup Gailly and Mark Adler. You must use version 1.0 or later
* of the library: this code assumes the 1.0 API and also depends on
* the ability to write the zlib header multiple times (one per strip)
* which was not possible with versions prior to 0.95. Note also that
* older versions of this codec avoided this bug by supressing the header
* entirely. This means that files written with the old library cannot
* be read; they should be converted to a different compression scheme
* and then reconverted.
*
* The data format used by the zlib library is described in the files
* zlib-3.1.doc, deflate-1.1.doc and gzip-4.1.doc, available in the
* directory ftp://ftp.uu.net/pub/archiving/zip/doc. The library was
* last found at ftp://ftp.uu.net/pub/archiving/zip/zlib/zlib-0.99.tar.gz.
*/
#include "tif_predict.h"
#include "zlib.h"
#include <stdio.h>
#include <assert.h>
/*
* Sigh, ZLIB_VERSION is defined as a string so there's no
* way to do a proper check here. Instead we guess based
* on the presence of #defines that were added between the
* 0.95 and 1.0 distributions.
*/
#if !defined(Z_NO_COMPRESSION) || !defined(Z_DEFLATED)
#error "Antiquated ZLIB software; you must use version 1.0 or later"
#endif
/*
* State block for each open TIFF
* file using ZIP compression/decompression.
*/
typedef struct {
TIFFPredictorState predict;
z_stream stream;
int zipquality; /* compression level */
int state; /* state flags */
#define ZSTATE_INIT 0x1 /* zlib setup successfully */
TIFFVGetMethod vgetparent; /* super-class method */
TIFFVSetMethod vsetparent; /* super-class method */
} ZIPState;
#define ZState(tif) ((ZIPState*) (tif)->tif_data)
#define DecoderState(tif) ZState(tif)
#define EncoderState(tif) ZState(tif)
static int ZIPEncode(TIFF*, tidata_t, tsize_t, tsample_t);
static int ZIPDecode(TIFF*, tidata_t, tsize_t, tsample_t);
static int
ZIPSetupDecode(TIFF* tif)
{
ZIPState* sp = DecoderState(tif);
static const char module[] = "ZIPSetupDecode";
assert(sp != NULL);
if (inflateInit(&sp->stream) != Z_OK) {
TIFFError(module, "%s: %s", tif->tif_name, sp->stream.msg);
return (0);
} else {
sp->state |= ZSTATE_INIT;
return (1);
}
}
/*
* Setup state for decoding a strip.
*/
static int
ZIPPreDecode(TIFF* tif, tsample_t s)
{
ZIPState* sp = DecoderState(tif);
(void) s;
assert(sp != NULL);
sp->stream.next_in = tif->tif_rawdata;
sp->stream.avail_in = tif->tif_rawcc;
return (inflateReset(&sp->stream) == Z_OK);
}
static int
ZIPDecode(TIFF* tif, tidata_t op, tsize_t occ, tsample_t s)
{
ZIPState* sp = DecoderState(tif);
static const char module[] = "ZIPDecode";
(void) s;
assert(sp != NULL);
sp->stream.next_out = op;
sp->stream.avail_out = occ;
do {
int state = inflate(&sp->stream, Z_PARTIAL_FLUSH);
if (state == Z_STREAM_END)
break;
if (state == Z_DATA_ERROR) {
TIFFError(module,
"%s: Decoding error at scanline %d, %s",
tif->tif_name, tif->tif_row, sp->stream.msg);
if (inflateSync(&sp->stream) != Z_OK)
return (0);
continue;
}
if (state != Z_OK) {
TIFFError(module, "%s: zlib error: %s",
tif->tif_name, sp->stream.msg);
return (0);
}
} while (sp->stream.avail_out > 0);
if (sp->stream.avail_out != 0) {
TIFFError(module,
"%s: Not enough data at scanline %d (short %d bytes)",
tif->tif_name, tif->tif_row, sp->stream.avail_out);
return (0);
}
return (1);
}
static int
ZIPSetupEncode(TIFF* tif)
{
ZIPState* sp = EncoderState(tif);
static const char module[] = "ZIPSetupEncode";
assert(sp != NULL);
if (deflateInit(&sp->stream, sp->zipquality) != Z_OK) {
TIFFError(module, "%s: %s", tif->tif_name, sp->stream.msg);
return (0);
} else {
sp->state |= ZSTATE_INIT;
return (1);
}
}
/*
* Reset encoding state at the start of a strip.
*/
static int
ZIPPreEncode(TIFF* tif, tsample_t s)
{
ZIPState *sp = EncoderState(tif);
(void) s;
assert(sp != NULL);
sp->stream.next_out = tif->tif_rawdata;
sp->stream.avail_out = tif->tif_rawdatasize;
return (deflateReset(&sp->stream) == Z_OK);
}
/*
* Encode a chunk of pixels.
*/
static int
ZIPEncode(TIFF* tif, tidata_t bp, tsize_t cc, tsample_t s)
{
ZIPState *sp = EncoderState(tif);
static const char module[] = "ZIPEncode";
(void) s;
sp->stream.next_in = bp;
sp->stream.avail_in = cc;
do {
if (deflate(&sp->stream, Z_NO_FLUSH) != Z_OK) {
TIFFError(module, "%s: Encoder error: %s",
tif->tif_name, sp->stream.msg);
return (0);
}
if (sp->stream.avail_out == 0) {
tif->tif_rawcc = tif->tif_rawdatasize;
TIFFFlushData1(tif);
sp->stream.next_out = tif->tif_rawdata;
sp->stream.avail_out = tif->tif_rawdatasize;
}
} while (sp->stream.avail_in > 0);
return (1);
}
/*
* Finish off an encoded strip by flushing the last
* string and tacking on an End Of Information code.
*/
static int
ZIPPostEncode(TIFF* tif)
{
ZIPState *sp = EncoderState(tif);
static const char module[] = "ZIPPostEncode";
int state;
sp->stream.avail_in = 0;
do {
state = deflate(&sp->stream, Z_FINISH);
switch (state) {
case Z_STREAM_END:
case Z_OK:
if ((int)sp->stream.avail_out != (int)tif->tif_rawdatasize)
{
tif->tif_rawcc =
tif->tif_rawdatasize - sp->stream.avail_out;
TIFFFlushData1(tif);
sp->stream.next_out = tif->tif_rawdata;
sp->stream.avail_out = tif->tif_rawdatasize;
}
break;
default:
TIFFError(module, "%s: zlib error: %s",
tif->tif_name, sp->stream.msg);
return (0);
}
} while (state != Z_STREAM_END);
return (1);
}
static void
ZIPCleanup(TIFF* tif)
{
ZIPState* sp = ZState(tif);
if (sp) {
if (sp->state&ZSTATE_INIT) {
/* NB: avoid problems in the library */
if (tif->tif_mode == O_RDONLY)
inflateEnd(&sp->stream);
else
deflateEnd(&sp->stream);
}
_TIFFfree(sp);
tif->tif_data = NULL;
}
}
static int
ZIPVSetField(TIFF* tif, ttag_t tag, va_list ap)
{
ZIPState* sp = ZState(tif);
static const char module[] = "ZIPVSetField";
switch (tag) {
case TIFFTAG_ZIPQUALITY:
sp->zipquality = va_arg(ap, int);
if (tif->tif_mode != O_RDONLY && (sp->state&ZSTATE_INIT)) {
if (deflateParams(&sp->stream,
sp->zipquality, Z_DEFAULT_STRATEGY) != Z_OK) {
TIFFError(module, "%s: zlib error: %s",
tif->tif_name, sp->stream.msg);
return (0);
}
}
return (1);
default:
return (*sp->vsetparent)(tif, tag, ap);
}
/*NOTREACHED*/
}
static int
ZIPVGetField(TIFF* tif, ttag_t tag, va_list ap)
{
ZIPState* sp = ZState(tif);
switch (tag) {
case TIFFTAG_ZIPQUALITY:
*va_arg(ap, int*) = sp->zipquality;
break;
default:
return (*sp->vgetparent)(tif, tag, ap);
}
return (1);
}
static const TIFFFieldInfo zipFieldInfo[] = {
{ TIFFTAG_ZIPQUALITY, 0, 0, TIFF_ANY, FIELD_PSEUDO,
TRUE, FALSE, "" },
};
#define N(a) (sizeof (a) / sizeof (a[0]))
int
TIFFInitZIP(TIFF* tif, int scheme)
{
ZIPState* sp;
assert( (scheme == COMPRESSION_DEFLATE) || (scheme == COMPRESSION_ADOBE_DEFLATE));
/*
* Allocate state block so tag methods have storage to record values.
*/
tif->tif_data = (tidata_t) _TIFFmalloc(sizeof (ZIPState));
if (tif->tif_data == NULL)
goto bad;
sp = ZState(tif);
sp->stream.zalloc = NULL;
sp->stream.zfree = NULL;
sp->stream.opaque = NULL;
sp->stream.data_type = Z_BINARY;
/*
* Merge codec-specific tag information and
* override parent get/set field methods.
*/
_TIFFMergeFieldInfo(tif, zipFieldInfo, N(zipFieldInfo));
sp->vgetparent = tif->tif_tagmethods.vgetfield;
tif->tif_tagmethods.vgetfield = ZIPVGetField; /* hook for codec tags */
sp->vsetparent = tif->tif_tagmethods.vsetfield;
tif->tif_tagmethods.vsetfield = ZIPVSetField; /* hook for codec tags */
/* Default values for codec-specific fields */
sp->zipquality = Z_DEFAULT_COMPRESSION; /* default comp. level */
sp->state = 0;
/*
* Install codec methods.
*/
tif->tif_setupdecode = ZIPSetupDecode;
tif->tif_predecode = ZIPPreDecode;
tif->tif_decoderow = ZIPDecode;
tif->tif_decodestrip = ZIPDecode;
tif->tif_decodetile = ZIPDecode;
tif->tif_setupencode = ZIPSetupEncode;
tif->tif_preencode = ZIPPreEncode;
tif->tif_postencode = ZIPPostEncode;
tif->tif_encoderow = ZIPEncode;
tif->tif_encodestrip = ZIPEncode;
tif->tif_encodetile = ZIPEncode;
tif->tif_cleanup = ZIPCleanup;
/*
* Setup predictor setup.
*/
(void) TIFFPredictorInit(tif);
return (1);
bad:
TIFFError("TIFFInitZIP", "No space for ZIP state block");
return (0);
}
#endif /* ZIP_SUPORT */

View File

@@ -1,680 +0,0 @@
# Microsoft Developer Studio Project File - Name="tiff" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Static Library" 0x0104
CFG=tiff - Win32 Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "tiff.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "tiff.mak" CFG="tiff - Win32 Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "tiff - Win32 Release" (based on "Win32 (x86) Static Library")
!MESSAGE "tiff - Win32 Debug" (based on "Win32 (x86) Static Library")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "tiff - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c
# ADD CPP /nologo /MD /w /W0 /O1 /Ob2 /I "../include" /D "WIN32" /D "_WINDOWS" /D "__WINDOWS__" /D "__WXMSW__" /D "__WIN95__" /D "__WIN32__" /D WINVER=0x0400 /D "STRICT" /Yu"wx/wxprec.h" /FD /c
# ADD BASE RSC /l 0x809
# ADD RSC /l 0x809
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LIB32=link.exe -lib
# ADD BASE LIB32 /nologo
# ADD LIB32 /nologo /out:"..\..\lib\tiff.lib"
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /Z7 /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c
# ADD CPP /nologo /MDd /w /W0 /Zi /Od /I "../include" /I ".." /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "__WINDOWS__" /D "__WXMSW__" /D DEBUG=1 /D "__WXDEBUG__" /D "__WIN95__" /D "__WIN32__" /D WINVER=0x0400 /D "STRICT" /Yu"wx/wxprec.h" /FD /c
# ADD BASE RSC /l 0x809
# ADD RSC /l 0x809
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LIB32=link.exe -lib
# ADD BASE LIB32 /nologo
# ADD LIB32 /nologo /out:"..\..\lib\tiffd.lib"
!ENDIF
# Begin Target
# Name "tiff - Win32 Release"
# Name "tiff - Win32 Debug"
# Begin Group "tiff Files"
# PROP Default_Filter ""
# Begin Source File
SOURCE=.\tif_aux.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_close.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_codec.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_color.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_compress.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_dir.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_dirinfo.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_dirread.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_dirwrite.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_dumpmode.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_error.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_fax3.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_fax3sm.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_flush.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_getimage.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_jpeg.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_luv.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_lzw.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_next.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_open.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_packbits.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_pixarlog.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_predict.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_print.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_read.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_strip.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_swab.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_thunder.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_tile.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_version.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_warning.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_win32.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_write.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# Begin Source File
SOURCE=.\tif_zip.c
!IF "$(CFG)" == "tiff - Win32 Release"
# ADD CPP /I ".."
# SUBTRACT CPP /YX /Yc /Yu
!ELSEIF "$(CFG)" == "tiff - Win32 Debug"
# SUBTRACT CPP /YX /Yc /Yu
!ENDIF
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h"
# Begin Source File
SOURCE=.\port.h
# End Source File
# Begin Source File
SOURCE=.\t4.h
# End Source File
# Begin Source File
SOURCE=.\tif_dir.h
# End Source File
# Begin Source File
SOURCE=.\tif_fax3.h
# End Source File
# Begin Source File
SOURCE=.\tif_predict.h
# End Source File
# Begin Source File
SOURCE=.\tiff.h
# End Source File
# Begin Source File
SOURCE=.\tiffcomp.h
# End Source File
# Begin Source File
SOURCE=.\tiffconf.h
# End Source File
# Begin Source File
SOURCE=.\tiffio.h
# End Source File
# Begin Source File
SOURCE=.\tiffiop.h
# End Source File
# Begin Source File
SOURCE=.\uvcode.h
# End Source File
# End Group
# End Target
# End Project

View File

@@ -1,29 +0,0 @@
Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
###############################################################################
Project: "tiff"=.\TiffVC.dsp - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
}}}
###############################################################################
Global:
Package=<5>
{{{
}}}
Package=<3>
{{{
}}}
###############################################################################

View File

@@ -1,482 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
#ifndef _TIFF_
#define _TIFF_
/*
* Tag Image File Format (TIFF)
*
* Based on Rev 6.0 from:
* Developer's Desk
* Aldus Corporation
* 411 First Ave. South
* Suite 200
* Seattle, WA 98104
* 206-622-5500
*/
#define TIFF_VERSION 42
#define TIFF_BIGENDIAN 0x4d4d
#define TIFF_LITTLEENDIAN 0x4949
/*
* The so called TIFF types conflict with definitions from inttypes.h
* included from sys/types.h on AIX (at least using VisualAge compiler).
* We try to work around this by detecting this case. Defining
* _TIFF_DATA_TYPEDEFS_ short circuits the later definitions in tiff.h, and
* we will in the holes not provided for by inttypes.h.
*
* See http://bugzilla.remotesensing.org/show_bug.cgi?id=39
*/
#if defined(_H_INTTYPES) && defined(_ALL_SOURCE) && defined(USING_VISUALAGE)
#define _TIFF_DATA_TYPEDEFS_
typedef unsigned char uint8;
typedef unsigned short uint16;
typedef unsigned int uint32;
#endif
/*
* Intrinsic data types required by the file format:
*
* 8-bit quantities int8/uint8
* 16-bit quantities int16/uint16
* 32-bit quantities int32/uint32
* strings unsigned char*
*/
#ifndef _TIFF_DATA_TYPEDEFS_
#define _TIFF_DATA_TYPEDEFS_
#ifdef __STDC__
typedef signed char int8; /* NB: non-ANSI compilers may not grok */
#else
typedef char int8;
#endif
typedef unsigned char uint8;
typedef short int16;
typedef unsigned short uint16; /* sizeof (uint16) must == 2 */
#if defined(__alpha) || (defined(_MIPS_SZLONG) && _MIPS_SZLONG == 64) || defined(__LP64__) || defined(__arch64__)
typedef int int32;
typedef unsigned int uint32; /* sizeof (uint32) must == 4 */
#else
typedef long int32;
typedef unsigned long uint32; /* sizeof (uint32) must == 4 */
#endif
#endif /* _TIFF_DATA_TYPEDEFS_ */
/* For TIFFReassignTagToIgnore */
enum TIFFIgnoreSense /* IGNORE tag table */
{
TIS_STORE,
TIS_EXTRACT,
TIS_EMPTY
};
typedef struct {
uint16 tiff_magic; /* magic number (defines byte order) */
uint16 tiff_version; /* TIFF version number */
uint32 tiff_diroff; /* byte offset to first directory */
} TIFFHeader;
/*
* TIFF Image File Directories are comprised of
* a table of field descriptors of the form shown
* below. The table is sorted in ascending order
* by tag. The values associated with each entry
* are disjoint and may appear anywhere in the file
* (so long as they are placed on a word boundary).
*
* If the value is 4 bytes or less, then it is placed
* in the offset field to save space. If the value
* is less than 4 bytes, it is left-justified in the
* offset field.
*/
typedef struct {
uint16 tdir_tag; /* see below */
uint16 tdir_type; /* data type; see below */
uint32 tdir_count; /* number of items; length in spec */
uint32 tdir_offset; /* byte offset to field data */
} TIFFDirEntry;
/*
* NB: In the comments below,
* - items marked with a + are obsoleted by revision 5.0,
* - items marked with a ! are introduced in revision 6.0.
* - items marked with a % are introduced post revision 6.0.
* - items marked with a $ are obsoleted by revision 6.0.
*/
/*
* Tag data type information.
*
* Note: RATIONALs are the ratio of two 32-bit integer values.
*/
typedef enum {
TIFF_NOTYPE = 0, /* placeholder */
TIFF_BYTE = 1, /* 8-bit unsigned integer */
TIFF_ASCII = 2, /* 8-bit bytes w/ last byte null */
TIFF_SHORT = 3, /* 16-bit unsigned integer */
TIFF_LONG = 4, /* 32-bit unsigned integer */
TIFF_RATIONAL = 5, /* 64-bit unsigned fraction */
TIFF_SBYTE = 6, /* !8-bit signed integer */
TIFF_UNDEFINED = 7, /* !8-bit untyped data */
TIFF_SSHORT = 8, /* !16-bit signed integer */
TIFF_SLONG = 9, /* !32-bit signed integer */
TIFF_SRATIONAL = 10, /* !64-bit signed fraction */
TIFF_FLOAT = 11, /* !32-bit IEEE floating point */
TIFF_DOUBLE = 12, /* !64-bit IEEE floating point */
TIFF_IFD = 13 /* %32-bit unsigned integer (offset) */
} TIFFDataType;
/*
* TIFF Tag Definitions.
*/
#define TIFFTAG_SUBFILETYPE 254 /* subfile data descriptor */
#define FILETYPE_REDUCEDIMAGE 0x1 /* reduced resolution version */
#define FILETYPE_PAGE 0x2 /* one page of many */
#define FILETYPE_MASK 0x4 /* transparency mask */
#define TIFFTAG_OSUBFILETYPE 255 /* +kind of data in subfile */
#define OFILETYPE_IMAGE 1 /* full resolution image data */
#define OFILETYPE_REDUCEDIMAGE 2 /* reduced size image data */
#define OFILETYPE_PAGE 3 /* one page of many */
#define TIFFTAG_IMAGEWIDTH 256 /* image width in pixels */
#define TIFFTAG_IMAGELENGTH 257 /* image height in pixels */
#define TIFFTAG_BITSPERSAMPLE 258 /* bits per channel (sample) */
#define TIFFTAG_COMPRESSION 259 /* data compression technique */
#define COMPRESSION_NONE 1 /* dump mode */
#define COMPRESSION_CCITTRLE 2 /* CCITT modified Huffman RLE */
#define COMPRESSION_CCITTFAX3 3 /* CCITT Group 3 fax encoding */
#define COMPRESSION_CCITT_T4 3 /* CCITT T.4 (TIFF 6 name) */
#define COMPRESSION_CCITTFAX4 4 /* CCITT Group 4 fax encoding */
#define COMPRESSION_CCITT_T6 4 /* CCITT T.6 (TIFF 6 name) */
#define COMPRESSION_LZW 5 /* Lempel-Ziv & Welch */
#define COMPRESSION_OJPEG 6 /* !6.0 JPEG */
#define COMPRESSION_JPEG 7 /* %JPEG DCT compression */
#define COMPRESSION_NEXT 32766 /* NeXT 2-bit RLE */
#define COMPRESSION_CCITTRLEW 32771 /* #1 w/ word alignment */
#define COMPRESSION_PACKBITS 32773 /* Macintosh RLE */
#define COMPRESSION_THUNDERSCAN 32809 /* ThunderScan RLE */
/* codes 32895-32898 are reserved for ANSI IT8 TIFF/IT <dkelly@apago.com) */
#define COMPRESSION_IT8CTPAD 32895 /* IT8 CT w/padding */
#define COMPRESSION_IT8LW 32896 /* IT8 Linework RLE */
#define COMPRESSION_IT8MP 32897 /* IT8 Monochrome picture */
#define COMPRESSION_IT8BL 32898 /* IT8 Binary line art */
/* compression codes 32908-32911 are reserved for Pixar */
#define COMPRESSION_PIXARFILM 32908 /* Pixar companded 10bit LZW */
#define COMPRESSION_PIXARLOG 32909 /* Pixar companded 11bit ZIP */
#define COMPRESSION_DEFLATE 32946 /* Deflate compression */
#define COMPRESSION_ADOBE_DEFLATE 8 /* Deflate compression, as recognized by Adobe */
/* compression code 32947 is reserved for Oceana Matrix <dev@oceana.com> */
#define COMPRESSION_DCS 32947 /* Kodak DCS encoding */
#define COMPRESSION_JBIG 34661 /* ISO JBIG */
#define COMPRESSION_SGILOG 34676 /* SGI Log Luminance RLE */
#define COMPRESSION_SGILOG24 34677 /* SGI Log 24-bit packed */
#define COMPRESSION_JP2000 34712 /* Leadtools JPEG2000 */
#define TIFFTAG_PHOTOMETRIC 262 /* photometric interpretation */
#define PHOTOMETRIC_MINISWHITE 0 /* min value is white */
#define PHOTOMETRIC_MINISBLACK 1 /* min value is black */
#define PHOTOMETRIC_RGB 2 /* RGB color model */
#define PHOTOMETRIC_PALETTE 3 /* color map indexed */
#define PHOTOMETRIC_MASK 4 /* $holdout mask */
#define PHOTOMETRIC_SEPARATED 5 /* !color separations */
#define PHOTOMETRIC_YCBCR 6 /* !CCIR 601 */
#define PHOTOMETRIC_CIELAB 8 /* !1976 CIE L*a*b* */
#define PHOTOMETRIC_ICCLAB 9 /* ICC L*a*b* [Adobe TIFF Technote 4] */
#define PHOTOMETRIC_ITULAB 10 /* ITU L*a*b* */
#define PHOTOMETRIC_LOGL 32844 /* CIE Log2(L) */
#define PHOTOMETRIC_LOGLUV 32845 /* CIE Log2(L) (u',v') */
#define TIFFTAG_THRESHHOLDING 263 /* +thresholding used on data */
#define THRESHHOLD_BILEVEL 1 /* b&w art scan */
#define THRESHHOLD_HALFTONE 2 /* or dithered scan */
#define THRESHHOLD_ERRORDIFFUSE 3 /* usually floyd-steinberg */
#define TIFFTAG_CELLWIDTH 264 /* +dithering matrix width */
#define TIFFTAG_CELLLENGTH 265 /* +dithering matrix height */
#define TIFFTAG_FILLORDER 266 /* data order within a byte */
#define FILLORDER_MSB2LSB 1 /* most significant -> least */
#define FILLORDER_LSB2MSB 2 /* least significant -> most */
#define TIFFTAG_DOCUMENTNAME 269 /* name of doc. image is from */
#define TIFFTAG_IMAGEDESCRIPTION 270 /* info about image */
#define TIFFTAG_MAKE 271 /* scanner manufacturer name */
#define TIFFTAG_MODEL 272 /* scanner model name/number */
#define TIFFTAG_STRIPOFFSETS 273 /* offsets to data strips */
#define TIFFTAG_ORIENTATION 274 /* +image orientation */
#define ORIENTATION_TOPLEFT 1 /* row 0 top, col 0 lhs */
#define ORIENTATION_TOPRIGHT 2 /* row 0 top, col 0 rhs */
#define ORIENTATION_BOTRIGHT 3 /* row 0 bottom, col 0 rhs */
#define ORIENTATION_BOTLEFT 4 /* row 0 bottom, col 0 lhs */
#define ORIENTATION_LEFTTOP 5 /* row 0 lhs, col 0 top */
#define ORIENTATION_RIGHTTOP 6 /* row 0 rhs, col 0 top */
#define ORIENTATION_RIGHTBOT 7 /* row 0 rhs, col 0 bottom */
#define ORIENTATION_LEFTBOT 8 /* row 0 lhs, col 0 bottom */
#define TIFFTAG_SAMPLESPERPIXEL 277 /* samples per pixel */
#define TIFFTAG_ROWSPERSTRIP 278 /* rows per strip of data */
#define TIFFTAG_STRIPBYTECOUNTS 279 /* bytes counts for strips */
#define TIFFTAG_MINSAMPLEVALUE 280 /* +minimum sample value */
#define TIFFTAG_MAXSAMPLEVALUE 281 /* +maximum sample value */
#define TIFFTAG_XRESOLUTION 282 /* pixels/resolution in x */
#define TIFFTAG_YRESOLUTION 283 /* pixels/resolution in y */
#define TIFFTAG_PLANARCONFIG 284 /* storage organization */
#define PLANARCONFIG_CONTIG 1 /* single image plane */
#define PLANARCONFIG_SEPARATE 2 /* separate planes of data */
#define TIFFTAG_PAGENAME 285 /* page name image is from */
#define TIFFTAG_XPOSITION 286 /* x page offset of image lhs */
#define TIFFTAG_YPOSITION 287 /* y page offset of image lhs */
#define TIFFTAG_FREEOFFSETS 288 /* +byte offset to free block */
#define TIFFTAG_FREEBYTECOUNTS 289 /* +sizes of free blocks */
#define TIFFTAG_GRAYRESPONSEUNIT 290 /* $gray scale curve accuracy */
#define GRAYRESPONSEUNIT_10S 1 /* tenths of a unit */
#define GRAYRESPONSEUNIT_100S 2 /* hundredths of a unit */
#define GRAYRESPONSEUNIT_1000S 3 /* thousandths of a unit */
#define GRAYRESPONSEUNIT_10000S 4 /* ten-thousandths of a unit */
#define GRAYRESPONSEUNIT_100000S 5 /* hundred-thousandths */
#define TIFFTAG_GRAYRESPONSECURVE 291 /* $gray scale response curve */
#define TIFFTAG_GROUP3OPTIONS 292 /* 32 flag bits */
#define TIFFTAG_T4OPTIONS 292 /* TIFF 6.0 proper name alias */
#define GROUP3OPT_2DENCODING 0x1 /* 2-dimensional coding */
#define GROUP3OPT_UNCOMPRESSED 0x2 /* data not compressed */
#define GROUP3OPT_FILLBITS 0x4 /* fill to byte boundary */
#define TIFFTAG_GROUP4OPTIONS 293 /* 32 flag bits */
#define TIFFTAG_T6OPTIONS 293 /* TIFF 6.0 proper name */
#define GROUP4OPT_UNCOMPRESSED 0x2 /* data not compressed */
#define TIFFTAG_RESOLUTIONUNIT 296 /* units of resolutions */
#define RESUNIT_NONE 1 /* no meaningful units */
#define RESUNIT_INCH 2 /* english */
#define RESUNIT_CENTIMETER 3 /* metric */
#define TIFFTAG_PAGENUMBER 297 /* page numbers of multi-page */
#define TIFFTAG_COLORRESPONSEUNIT 300 /* $color curve accuracy */
#define COLORRESPONSEUNIT_10S 1 /* tenths of a unit */
#define COLORRESPONSEUNIT_100S 2 /* hundredths of a unit */
#define COLORRESPONSEUNIT_1000S 3 /* thousandths of a unit */
#define COLORRESPONSEUNIT_10000S 4 /* ten-thousandths of a unit */
#define COLORRESPONSEUNIT_100000S 5 /* hundred-thousandths */
#define TIFFTAG_TRANSFERFUNCTION 301 /* !colorimetry info */
#define TIFFTAG_SOFTWARE 305 /* name & release */
#define TIFFTAG_DATETIME 306 /* creation date and time */
#define TIFFTAG_ARTIST 315 /* creator of image */
#define TIFFTAG_HOSTCOMPUTER 316 /* machine where created */
#define TIFFTAG_PREDICTOR 317 /* prediction scheme w/ LZW */
#define TIFFTAG_WHITEPOINT 318 /* image white point */
#define TIFFTAG_PRIMARYCHROMATICITIES 319 /* !primary chromaticities */
#define TIFFTAG_COLORMAP 320 /* RGB map for pallette image */
#define TIFFTAG_HALFTONEHINTS 321 /* !highlight+shadow info */
#define TIFFTAG_TILEWIDTH 322 /* !rows/data tile */
#define TIFFTAG_TILELENGTH 323 /* !cols/data tile */
#define TIFFTAG_TILEOFFSETS 324 /* !offsets to data tiles */
#define TIFFTAG_TILEBYTECOUNTS 325 /* !byte counts for tiles */
#define TIFFTAG_BADFAXLINES 326 /* lines w/ wrong pixel count */
#define TIFFTAG_CLEANFAXDATA 327 /* regenerated line info */
#define CLEANFAXDATA_CLEAN 0 /* no errors detected */
#define CLEANFAXDATA_REGENERATED 1 /* receiver regenerated lines */
#define CLEANFAXDATA_UNCLEAN 2 /* uncorrected errors exist */
#define TIFFTAG_CONSECUTIVEBADFAXLINES 328 /* max consecutive bad lines */
#define TIFFTAG_SUBIFD 330 /* subimage descriptors */
#define TIFFTAG_INKSET 332 /* !inks in separated image */
#define INKSET_CMYK 1 /* !cyan-magenta-yellow-black color */
#define INKSET_MULTIINK 2 /* !multi-ink or hi-fi color */
#define TIFFTAG_INKNAMES 333 /* !ascii names of inks */
#define TIFFTAG_NUMBEROFINKS 334 /* !number of inks */
#define TIFFTAG_DOTRANGE 336 /* !0% and 100% dot codes */
#define TIFFTAG_TARGETPRINTER 337 /* !separation target */
#define TIFFTAG_EXTRASAMPLES 338 /* !info about extra samples */
#define EXTRASAMPLE_UNSPECIFIED 0 /* !unspecified data */
#define EXTRASAMPLE_ASSOCALPHA 1 /* !associated alpha data */
#define EXTRASAMPLE_UNASSALPHA 2 /* !unassociated alpha data */
#define TIFFTAG_SAMPLEFORMAT 339 /* !data sample format */
#define SAMPLEFORMAT_UINT 1 /* !unsigned integer data */
#define SAMPLEFORMAT_INT 2 /* !signed integer data */
#define SAMPLEFORMAT_IEEEFP 3 /* !IEEE floating point data */
#define SAMPLEFORMAT_VOID 4 /* !untyped data */
#define SAMPLEFORMAT_COMPLEXINT 5 /* !complex signed int */
#define SAMPLEFORMAT_COMPLEXIEEEFP 6 /* !complex ieee floating */
#define TIFFTAG_SMINSAMPLEVALUE 340 /* !variable MinSampleValue */
#define TIFFTAG_SMAXSAMPLEVALUE 341 /* !variable MaxSampleValue */
#define TIFFTAG_CLIPPATH 343 /* %ClipPath [Adobe TIFF technote 2] */
#define TIFFTAG_XCLIPPATHUNITS 344 /* %XClipPathUnits [Adobe TIFF technote 2] */
#define TIFFTAG_YCLIPPATHUNITS 344 /* %YClipPathUnits [Adobe TIFF technote 2] */
#define TIFFTAG_INDEXED 345 /* %Indexed [Adobe TIFF Technote 3] */
#define TIFFTAG_JPEGTABLES 347 /* %JPEG table stream */
#define TIFFTAG_OPIPROXY 351 /* %OPI Proxy [Adobe TIFF technote] */
/*
* Tags 512-521 are obsoleted by Technical Note #2
* which specifies a revised JPEG-in-TIFF scheme.
*/
#define TIFFTAG_JPEGPROC 512 /* !JPEG processing algorithm */
#define JPEGPROC_BASELINE 1 /* !baseline sequential */
#define JPEGPROC_LOSSLESS 14 /* !Huffman coded lossless */
#define TIFFTAG_JPEGIFOFFSET 513 /* !pointer to SOI marker */
#define TIFFTAG_JPEGIFBYTECOUNT 514 /* !JFIF stream length */
#define TIFFTAG_JPEGRESTARTINTERVAL 515 /* !restart interval length */
#define TIFFTAG_JPEGLOSSLESSPREDICTORS 517 /* !lossless proc predictor */
#define TIFFTAG_JPEGPOINTTRANSFORM 518 /* !lossless point transform */
#define TIFFTAG_JPEGQTABLES 519 /* !Q matrice offsets */
#define TIFFTAG_JPEGDCTABLES 520 /* !DCT table offsets */
#define TIFFTAG_JPEGACTABLES 521 /* !AC coefficient offsets */
#define TIFFTAG_YCBCRCOEFFICIENTS 529 /* !RGB -> YCbCr transform */
#define TIFFTAG_YCBCRSUBSAMPLING 530 /* !YCbCr subsampling factors */
#define TIFFTAG_YCBCRPOSITIONING 531 /* !subsample positioning */
#define YCBCRPOSITION_CENTERED 1 /* !as in PostScript Level 2 */
#define YCBCRPOSITION_COSITED 2 /* !as in CCIR 601-1 */
#define TIFFTAG_REFERENCEBLACKWHITE 532 /* !colorimetry info */
#define TIFFTAG_XMLPACKET 700 /* %XML packet [Adobe XMP technote 9-14-02] (dkelly@apago.com) */
#define TIFFTAG_OPIIMAGEID 32781 /* %OPI ImageID [Adobe TIFF technote] */
/* tags 32952-32956 are private tags registered to Island Graphics */
#define TIFFTAG_REFPTS 32953 /* image reference points */
#define TIFFTAG_REGIONTACKPOINT 32954 /* region-xform tack point */
#define TIFFTAG_REGIONWARPCORNERS 32955 /* warp quadrilateral */
#define TIFFTAG_REGIONAFFINE 32956 /* affine transformation mat */
/* tags 32995-32999 are private tags registered to SGI */
#define TIFFTAG_MATTEING 32995 /* $use ExtraSamples */
#define TIFFTAG_DATATYPE 32996 /* $use SampleFormat */
#define TIFFTAG_IMAGEDEPTH 32997 /* z depth of image */
#define TIFFTAG_TILEDEPTH 32998 /* z depth/data tile */
/* tags 33300-33309 are private tags registered to Pixar */
/*
* TIFFTAG_PIXAR_IMAGEFULLWIDTH and TIFFTAG_PIXAR_IMAGEFULLLENGTH
* are set when an image has been cropped out of a larger image.
* They reflect the size of the original uncropped image.
* The TIFFTAG_XPOSITION and TIFFTAG_YPOSITION can be used
* to determine the position of the smaller image in the larger one.
*/
#define TIFFTAG_PIXAR_IMAGEFULLWIDTH 33300 /* full image size in x */
#define TIFFTAG_PIXAR_IMAGEFULLLENGTH 33301 /* full image size in y */
/* Tags 33302-33306 are used to identify special image modes and data
* used by Pixar's texture formats.
*/
#define TIFFTAG_PIXAR_TEXTUREFORMAT 33302 /* texture map format */
#define TIFFTAG_PIXAR_WRAPMODES 33303 /* s & t wrap modes */
#define TIFFTAG_PIXAR_FOVCOT 33304 /* cotan(fov) for env. maps */
#define TIFFTAG_PIXAR_MATRIX_WORLDTOSCREEN 33305
#define TIFFTAG_PIXAR_MATRIX_WORLDTOCAMERA 33306
/* tag 33405 is a private tag registered to Eastman Kodak */
#define TIFFTAG_WRITERSERIALNUMBER 33405 /* device serial number */
/* tag 33432 is listed in the 6.0 spec w/ unknown ownership */
#define TIFFTAG_COPYRIGHT 33432 /* copyright string */
/* IPTC TAG from RichTIFF specifications */
#define TIFFTAG_RICHTIFFIPTC 33723
/* 34016-34029 are reserved for ANSI IT8 TIFF/IT <dkelly@apago.com) */
#define TIFFTAG_IT8SITE 34016 /* site name */
#define TIFFTAG_IT8COLORSEQUENCE 34017 /* color seq. [RGB,CMYK,etc] */
#define TIFFTAG_IT8HEADER 34018 /* DDES Header */
#define TIFFTAG_IT8RASTERPADDING 34019 /* raster scanline padding */
#define TIFFTAG_IT8BITSPERRUNLENGTH 34020 /* # of bits in short run */
#define TIFFTAG_IT8BITSPEREXTENDEDRUNLENGTH 34021/* # of bits in long run */
#define TIFFTAG_IT8COLORTABLE 34022 /* LW colortable */
#define TIFFTAG_IT8IMAGECOLORINDICATOR 34023 /* BP/BL image color switch */
#define TIFFTAG_IT8BKGCOLORINDICATOR 34024 /* BP/BL bg color switch */
#define TIFFTAG_IT8IMAGECOLORVALUE 34025 /* BP/BL image color value */
#define TIFFTAG_IT8BKGCOLORVALUE 34026 /* BP/BL bg color value */
#define TIFFTAG_IT8PIXELINTENSITYRANGE 34027 /* MP pixel intensity value */
#define TIFFTAG_IT8TRANSPARENCYINDICATOR 34028 /* HC transparency switch */
#define TIFFTAG_IT8COLORCHARACTERIZATION 34029 /* color character. table */
#define TIFFTAG_IT8HCUSAGE 34030 /* HC usage indicator */
#define TIFFTAG_IT8TRAPINDICATOR 34031 /* Trapping indicator (untrapped=0, trapped=1) */
#define TIFFTAG_IT8CMYKEQUIVALENT 34032 /* CMYK color equivalents */
/* tags 34232-34236 are private tags registered to Texas Instruments */
#define TIFFTAG_FRAMECOUNT 34232 /* Sequence Frame Count */
/* tag 34750 is a private tag registered to Adobe? */
#define TIFFTAG_ICCPROFILE 34675 /* ICC profile data */
/* tag 34377 is private tag registered to Adobe for PhotoShop */
#define TIFFTAG_PHOTOSHOP 34377
/* tag 34750 is a private tag registered to Pixel Magic */
#define TIFFTAG_JBIGOPTIONS 34750 /* JBIG options */
/* tags 34908-34914 are private tags registered to SGI */
#define TIFFTAG_FAXRECVPARAMS 34908 /* encoded Class 2 ses. parms */
#define TIFFTAG_FAXSUBADDRESS 34909 /* received SubAddr string */
#define TIFFTAG_FAXRECVTIME 34910 /* receive time (secs) */
/* tags 37439-37443 are registered to SGI <gregl@sgi.com> */
#define TIFFTAG_STONITS 37439 /* Sample value to Nits */
/* tag 34929 is a private tag registered to FedEx */
#define TIFFTAG_FEDEX_EDR 34929 /* unknown use */
/* tag 65535 is an undefined tag used by Eastman Kodak */
#define TIFFTAG_DCSHUESHIFTVALUES 65535 /* hue shift correction data */
/*
* The following are ``pseudo tags'' that can be
* used to control codec-specific functionality.
* These tags are not written to file. Note that
* these values start at 0xffff+1 so that they'll
* never collide with Aldus-assigned tags.
*
* If you want your private pseudo tags ``registered''
* (i.e. added to this file), send mail to sam@sgi.com
* with the appropriate C definitions to add.
*/
#define TIFFTAG_FAXMODE 65536 /* Group 3/4 format control */
#define FAXMODE_CLASSIC 0x0000 /* default, include RTC */
#define FAXMODE_NORTC 0x0001 /* no RTC at end of data */
#define FAXMODE_NOEOL 0x0002 /* no EOL code at end of row */
#define FAXMODE_BYTEALIGN 0x0004 /* byte align row */
#define FAXMODE_WORDALIGN 0x0008 /* word align row */
#define FAXMODE_CLASSF FAXMODE_NORTC /* TIFF Class F */
#define TIFFTAG_JPEGQUALITY 65537 /* Compression quality level */
/* Note: quality level is on the IJG 0-100 scale. Default value is 75 */
#define TIFFTAG_JPEGCOLORMODE 65538 /* Auto RGB<=>YCbCr convert? */
#define JPEGCOLORMODE_RAW 0x0000 /* no conversion (default) */
#define JPEGCOLORMODE_RGB 0x0001 /* do auto conversion */
#define TIFFTAG_JPEGTABLESMODE 65539 /* What to put in JPEGTables */
#define JPEGTABLESMODE_QUANT 0x0001 /* include quantization tbls */
#define JPEGTABLESMODE_HUFF 0x0002 /* include Huffman tbls */
/* Note: default is JPEGTABLESMODE_QUANT | JPEGTABLESMODE_HUFF */
#define TIFFTAG_FAXFILLFUNC 65540 /* G3/G4 fill function */
#define TIFFTAG_PIXARLOGDATAFMT 65549 /* PixarLogCodec I/O data sz */
#define PIXARLOGDATAFMT_8BIT 0 /* regular u_char samples */
#define PIXARLOGDATAFMT_8BITABGR 1 /* ABGR-order u_chars */
#define PIXARLOGDATAFMT_11BITLOG 2 /* 11-bit log-encoded (raw) */
#define PIXARLOGDATAFMT_12BITPICIO 3 /* as per PICIO (1.0==2048) */
#define PIXARLOGDATAFMT_16BIT 4 /* signed short samples */
#define PIXARLOGDATAFMT_FLOAT 5 /* IEEE float samples */
/* 65550-65556 are allocated to Oceana Matrix <dev@oceana.com> */
#define TIFFTAG_DCSIMAGERTYPE 65550 /* imager model & filter */
#define DCSIMAGERMODEL_M3 0 /* M3 chip (1280 x 1024) */
#define DCSIMAGERMODEL_M5 1 /* M5 chip (1536 x 1024) */
#define DCSIMAGERMODEL_M6 2 /* M6 chip (3072 x 2048) */
#define DCSIMAGERFILTER_IR 0 /* infrared filter */
#define DCSIMAGERFILTER_MONO 1 /* monochrome filter */
#define DCSIMAGERFILTER_CFA 2 /* color filter array */
#define DCSIMAGERFILTER_OTHER 3 /* other filter */
#define TIFFTAG_DCSINTERPMODE 65551 /* interpolation mode */
#define DCSINTERPMODE_NORMAL 0x0 /* whole image, default */
#define DCSINTERPMODE_PREVIEW 0x1 /* preview of image (384x256) */
#define TIFFTAG_DCSBALANCEARRAY 65552 /* color balance values */
#define TIFFTAG_DCSCORRECTMATRIX 65553 /* color correction values */
#define TIFFTAG_DCSGAMMA 65554 /* gamma value */
#define TIFFTAG_DCSTOESHOULDERPTS 65555 /* toe & shoulder points */
#define TIFFTAG_DCSCALIBRATIONFD 65556 /* calibration file desc */
/* Note: quality level is on the ZLIB 1-9 scale. Default value is -1 */
#define TIFFTAG_ZIPQUALITY 65557 /* compression quality level */
#define TIFFTAG_PIXARLOGQUALITY 65558 /* PixarLog uses same scale */
/* 65559 is allocated to Oceana Matrix <dev@oceana.com> */
#define TIFFTAG_DCSCLIPRECTANGLE 65559 /* area of image to acquire */
#define TIFFTAG_SGILOGDATAFMT 65560 /* SGILog user data format */
#define SGILOGDATAFMT_FLOAT 0 /* IEEE float samples */
#define SGILOGDATAFMT_16BIT 1 /* 16-bit samples */
#define SGILOGDATAFMT_RAW 2 /* uninterpreted data */
#define SGILOGDATAFMT_8BIT 3 /* 8-bit RGB monitor values */
#define TIFFTAG_SGILOGENCODE 65561 /* SGILog data encoding control*/
#define SGILOGENCODE_NODITHER 0 /* do not dither encoded values*/
#define SGILOGENCODE_RANDITHER 1 /* randomly dither encd values */
#endif /* _TIFF_ */

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@@ -1,12 +0,0 @@
#define NEED_STRDUP
#define WINVER 0x0400
/*
We need to make sure some symbols required for correct use of
Win32 SDK headers (and that some of these headers are included
to begin with). The best way is to simply include one of the
ANSI headers.
*/
#include <stdlib.h>

View File

@@ -1,220 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1990-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
#ifndef _COMPAT_
#define _COMPAT_
/*
* This file contains a hodgepodge of definitions and
* declarations that are needed to provide compatibility
* between the native system and the base implementation
* that the library assumes.
*
* NB: This file is a mess.
*/
/*
* Setup basic type definitions and function declaratations.
*/
/*
* Simplify Acorn RISC OS identifier (to avoid confusion with Acorn RISC iX
* and with defunct Unix Risc OS)
* No need to specify __arm - hey, Acorn might port the OS, no problem here!
*/
#ifdef __acornriscos
#undef __acornriscos
#endif
#if defined(__acorn) && defined(__riscos)
#define __acornriscos
#endif
#if defined(__MWERKS__) || defined(THINK_C)
#include <unix.h>
#include <math.h>
#endif
#include <stdio.h>
#if defined(__PPCC__) || defined(__SC__) || defined(__MRC__)
#include <types.h>
#elif !defined(__MWERKS__) && !defined(THINK_C) && !defined(__acornriscos) && !defined(applec)
#include <sys/types.h>
#endif
#if defined(VMS)
#include <file.h>
#include <unixio.h>
#elif !defined(__acornriscos)
#include <fcntl.h>
#endif
/*
* This maze of checks controls defines or not the
* target system has BSD-style typdedefs declared in
* an include file and/or whether or not to include
* <unistd.h> to get the SEEK_* definitions. Some
* additional includes are also done to pull in the
* appropriate definitions we're looking for.
*/
#if defined(__MWERKS__) || defined(THINK_C) || defined(__PPCC__) || defined(__SC__) || defined(__MRC__)
#include <stdlib.h>
#define BSDTYPES
#define HAVE_UNISTD_H 0
#elif (defined(_WINDOWS) || defined(__WIN32__) || defined(_Windows) || defined(_WIN32)) && !defined(unix)
#define BSDTYPES
#elif defined(OS2_16) || defined(OS2_32)
#define BSDTYPES
#elif defined(__acornriscos)
#include <stdlib.h>
#define BSDTYPES
#define HAVE_UNISTD_H 0
#elif defined(VMS)
#define HAVE_UNISTD_H 0
#else
#define HAVE_UNISTD_H 1
#endif
/*
* The library uses the ANSI C/POSIX SEEK_*
* definitions that should be defined in unistd.h
* (except on system where they are in stdio.h and
* there is no unistd.h).
*/
#if !defined(SEEK_SET) && HAVE_UNISTD_H
#include <unistd.h>
#endif
/*
* The library uses memset, memcpy, and memcmp.
* ANSI C and System V define these in string.h.
*/
#include <string.h>
/*
* The BSD typedefs are used throughout the library.
* If your system doesn't have them in <sys/types.h>,
* then define BSDTYPES in your Makefile.
*/
#if defined(BSDTYPES)
# ifndef _BSDTYPES_DEFINED
# ifndef __u_char_defined
typedef unsigned char u_char;
typedef unsigned short u_short;
typedef unsigned int u_int;
typedef unsigned long u_long;
# define __u_char_defined
# endif /* __u_char_defined */
# define _BSDTYPES_DEFINED
# endif /* _BSDTYPES_DEFINED */
#endif /* BSDTYPES */
/*
* dblparam_t is the type that a double precision
* floating point value will have on the parameter
* stack (when coerced by the compiler).
*/
/* Note: on MacPowerPC "extended" is undefined. So only use it for 68K-Macs */
#if defined(__SC__) || defined(THINK_C)
typedef extended dblparam_t;
#else
typedef double dblparam_t;
#endif
/*
* If your compiler supports inline functions, then
* set INLINE appropriately to get the known hotspots
* in the library expanded inline.
*/
#if defined(__GNUC__)
#if defined(__STRICT_ANSI__)
#define INLINE __inline__
#else
#define INLINE inline
#endif
#else /* !__GNUC__ */
#define INLINE
#endif
/*
* GLOBALDATA is a macro that is used to define global variables
* private to the library. We use this indirection to hide
* brain-damage in VAXC (and GCC) under VAX/VMS. In these
* environments the macro places the variable in a non-shareable
* program section, which ought to be done by default (sigh!)
*
* Apparently DEC are aware of the problem as this behaviour is the
* default under VMS on AXP.
*
* The GNU C variant is untested.
*/
#if defined(VAX) && defined(VMS)
#if defined(VAXC)
#define GLOBALDATA(TYPE,NAME) extern noshare TYPE NAME
#endif
#if defined(__GNUC__)
#define GLOBALDATA(TYPE,NAME) extern TYPE NAME \
asm("_$$PsectAttributes_NOSHR$$" #NAME)
#endif
#else /* !VAX/VMS */
#define GLOBALDATA(TYPE,NAME) extern TYPE NAME
#endif
#if defined(__acornriscos)
/*
* osfcn.h is part of C++Lib on Acorn C/C++, and as such can't be used
* on C alone. For that reason, the relevant functions are
* implemented in tif_acorn.c, and the elements from the header
* file are included here.
*/
#if defined(__cplusplus)
#include <osfcn.h>
#else
#define O_RDONLY 0
#define O_WRONLY 1
#define O_RDWR 2
#define O_APPEND 8
#define O_CREAT 0x200
#define O_TRUNC 0x400
typedef long off_t;
extern int open(const char *name, int flags, int mode);
extern int close(int fd);
extern int write(int fd, const char *buf, int nbytes);
extern int read(int fd, char *buf, int nbytes);
extern off_t lseek(int fd, off_t offset, int whence);
extern int creat(const char *path, int mode);
#endif /* __cplusplus */
#endif /* __acornriscos */
/* Bit and byte order, the default is MSB to LSB */
#ifdef VMS
#undef HOST_FILLORDER
#undef HOST_BIGENDIAN
#define HOST_FILLORDER FILLORDER_LSB2MSB
#define HOST_BIGENDIAN 0
#endif
#endif /* _COMPAT_ */

View File

@@ -1,153 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
#ifndef _TIFFCONF_
#define _TIFFCONF_
/*
* Library Configuration Definitions.
*
* This file defines the default configuration for the library.
* If the target system does not have make or a way to specify
* #defines on the command line, this file can be edited to
* configure the library. Otherwise, one can override portability
* and configuration-related definitions from a Makefile or command
* line by defining COMPRESSION_SUPPORT (see below).
*/
/*
* General portability-related defines:
*
* HAVE_IEEEFP define as 0 or 1 according to the floating point
* format suported by the machine
* BSDTYPES define this if your system does NOT define the
* usual 4BSD typedefs u_int et. al.
* HAVE_MMAP enable support for memory mapping read-only files;
* this is typically deduced by the configure script
* HOST_FILLORDER native cpu bit order: one of FILLORDER_MSB2LSB
* or FILLODER_LSB2MSB; this is typically set by the
* configure script
* HOST_BIGENDIAN native cpu byte order: 1 if big-endian (Motorola)
* or 0 if little-endian (Intel); this may be used
* in codecs to optimize code
* USE_64BIT_API set to 1 if tif_unix.c should use lseek64(),
* fstat64() and stat64 allowing 2-4GB files.
*/
#ifndef HAVE_IEEEFP
#define HAVE_IEEEFP 1
#endif
#ifndef HOST_FILLORDER
#define HOST_FILLORDER FILLORDER_MSB2LSB
#endif
#ifndef HOST_BIGENDIAN
#define HOST_BIGENDIAN 1
#endif
#ifndef USE_64BIT_API
# define USE_64BIT_API 0
#endif
#ifndef COMPRESSION_SUPPORT
/*
* Compression support defines:
*
* CCITT_SUPPORT enable support for CCITT Group 3 & 4 algorithms
* PACKBITS_SUPPORT enable support for Macintosh PackBits algorithm
* LZW_SUPPORT enable support for LZW algorithm
* THUNDER_SUPPORT enable support for ThunderScan 4-bit RLE algorithm
* NEXT_SUPPORT enable support for NeXT 2-bit RLE algorithm
* OJPEG_SUPPORT enable support for 6.0-style JPEG DCT algorithms
* (requires IJG software)
* JPEG_SUPPORT enable support for post-6.0-style JPEG DCT algorithms
* (requires freely available IJG software, see tif_jpeg.c)
* ZIP_SUPPORT enable support for Deflate algorithm
* (requires freely available zlib software, see tif_zip.c)
* PIXARLOG_SUPPORT enable support for Pixar log-format algorithm
* LOGLUV_SUPPORT enable support for LogLuv high dynamic range encoding
*/
#define CCITT_SUPPORT
#define PACKBITS_SUPPORT
#define LZW_SUPPORT
#define THUNDER_SUPPORT
#define NEXT_SUPPORT
#define LOGLUV_SUPPORT
#endif /* COMPRESSION_SUPPORT */
/*
* If JPEG compression is enabled then we must also include
* support for the colorimetry and YCbCr-related tags.
*/
#ifdef JPEG_SUPPORT
#ifndef YCBCR_SUPPORT
#define YCBCR_SUPPORT
#endif
#ifndef COLORIMETRY_SUPPORT
#define COLORIMETRY_SUPPORT
#endif
#endif /* JPEG_SUPPORT */
/*
* ``Orthogonal Features''
*
* STRIPCHOP_DEFAULT default handling of strip chopping support (whether
* or not to convert single-strip uncompressed images
* to mutiple strips of ~8Kb--to reduce memory use)
* SUBIFD_SUPPORT enable support for SubIFD tag (thumbnails and such)
* DEFAULT_EXTRASAMPLE_AS_ALPHA
* The RGBA interface will treat a fourth sample with
* no EXTRASAMPLE_ value as being ASSOCALPHA. Many
* packages produce RGBA files but don't mark the alpha
* properly.
* CHECK_JPEG_YCBCR_SUBSAMPLING
* Enable picking up YCbCr subsampling info from the
* JPEG data stream to support files lacking the tag.
* See Bug 168 in Bugzilla, and JPEGFixupTestSubsampling()
* for details.
*/
#ifndef STRIPCHOP_DEFAULT
#define STRIPCHOP_DEFAULT TIFF_STRIPCHOP /* default is to enable */
#endif
#ifndef SUBIFD_SUPPORT
#define SUBIFD_SUPPORT 1 /* enable SubIFD tag (330) support */
#endif
#ifndef DEFAULT_EXTRASAMPLE_AS_ALPHA
#define DEFAULT_EXTRASAMPLE_AS_ALPHA 1
#endif
#ifndef CHECK_JPEG_YCBCR_SUBSAMPLING
#define CHECK_JPEG_YCBCR_SUBSAMPLING 1
#endif
/*
* Feature support definitions.
* XXX: These macros are obsoleted. Don't use them in your apps!
* Macros stays here for backward compatibility and should be always defined.
*/
#define COLORIMETRY_SUPPORT
#define YCBCR_SUPPORT
#define CMYK_SUPPORT
#define ICC_SUPPORT
#define PHOTOSHOP_SUPPORT
#define IPTC_SUPPORT
#endif /* _TIFFCONF_ */

View File

@@ -1,477 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
#ifndef _TIFFIO_
#define _TIFFIO_
/*
* TIFF I/O Library Definitions.
*/
#include "tiff.h"
#include "tiffvers.h"
/*
* TIFF is defined as an incomplete type to hide the
* library's internal data structures from clients.
*/
typedef struct tiff TIFF;
/*
* The following typedefs define the intrinsic size of
* data types used in the *exported* interfaces. These
* definitions depend on the proper definition of types
* in tiff.h. Note also that the varargs interface used
* to pass tag types and values uses the types defined in
* tiff.h directly.
*
* NB: ttag_t is unsigned int and not unsigned short because
* ANSI C requires that the type before the ellipsis be a
* promoted type (i.e. one of int, unsigned int, pointer,
* or double) and because we defined pseudo-tags that are
* outside the range of legal Aldus-assigned tags.
* NB: tsize_t is int32 and not uint32 because some functions
* return -1.
* NB: toff_t is not off_t for many reasons; TIFFs max out at
* 32-bit file offsets being the most important, and to ensure
* that it is unsigned, rather than signed.
*/
typedef uint32 ttag_t; /* directory tag */
typedef uint16 tdir_t; /* directory index */
typedef uint16 tsample_t; /* sample number */
typedef uint32 tstrip_t; /* strip number */
typedef uint32 ttile_t; /* tile number */
typedef int32 tsize_t; /* i/o size in bytes */
typedef void* tdata_t; /* image data ref */
typedef uint32 toff_t; /* file offset */
#if !defined(__WIN32__) && (defined(_WIN32) || defined(WIN32))
#define __WIN32__
#endif
/*
* On windows you should define USE_WIN32_FILEIO if you are using tif_win32.c
* or AVOID_WIN32_FILEIO if you are using something else (like tif_unix.c).
*
* By default tif_win32.c is assumed on windows if not using the cygwin
* environment.
*/
#if defined(_WINDOWS) || defined(__WIN32__) || defined(_Windows)
# if !defined(__CYGWIN) && !defined(AVOID_WIN32_FILEIO) && !defined(USE_WIN32_FILIO)
# define USE_WIN32_FILEIO
# endif
#endif
#if defined(USE_WIN32_FILEIO)
#include <windows.h>
#ifdef __WIN32__
DECLARE_HANDLE(thandle_t); /* Win32 file handle */
#else
typedef HFILE thandle_t; /* client data handle */
#endif
#else
typedef void* thandle_t; /* client data handle */
#endif
#ifndef NULL
#define NULL 0
#endif
/*
* Flags to pass to TIFFPrintDirectory to control
* printing of data structures that are potentially
* very large. Bit-or these flags to enable printing
* multiple items.
*/
#define TIFFPRINT_NONE 0x0 /* no extra info */
#define TIFFPRINT_STRIPS 0x1 /* strips/tiles info */
#define TIFFPRINT_CURVES 0x2 /* color/gray response curves */
#define TIFFPRINT_COLORMAP 0x4 /* colormap */
#define TIFFPRINT_JPEGQTABLES 0x100 /* JPEG Q matrices */
#define TIFFPRINT_JPEGACTABLES 0x200 /* JPEG AC tables */
#define TIFFPRINT_JPEGDCTABLES 0x200 /* JPEG DC tables */
/*
* Colour conversion stuff
*/
/* reference white */
#define D65_X0 (95.0470F)
#define D65_Y0 (100.0F)
#define D65_Z0 (108.8827F)
#define D50_X0 (96.4250F)
#define D50_Y0 (100.0F)
#define D50_Z0 (82.4680F)
/* Structure for holding information about a display device. */
typedef unsigned char TIFFRGBValue; /* 8-bit samples */
typedef struct {
float d_mat[3][3]; /* XYZ -> luminance matrix */
float d_YCR; /* Light o/p for reference white */
float d_YCG;
float d_YCB;
uint32 d_Vrwr; /* Pixel values for ref. white */
uint32 d_Vrwg;
uint32 d_Vrwb;
float d_Y0R; /* Residual light for black pixel */
float d_Y0G;
float d_Y0B;
float d_gammaR; /* Gamma values for the three guns */
float d_gammaG;
float d_gammaB;
} TIFFDisplay;
typedef struct { /* YCbCr->RGB support */
TIFFRGBValue* clamptab; /* range clamping table */
int* Cr_r_tab;
int* Cb_b_tab;
int32* Cr_g_tab;
int32* Cb_g_tab;
int32* Y_tab;
} TIFFYCbCrToRGB;
typedef struct { /* CIE Lab 1976->RGB support */
int range; /* Size of conversion table */
#define CIELABTORGB_TABLE_RANGE 1500
float rstep, gstep, bstep;
float X0, Y0, Z0; /* Reference white point */
TIFFDisplay display;
float Yr2r[CIELABTORGB_TABLE_RANGE + 1]; /* Conversion of Yr to r */
float Yg2g[CIELABTORGB_TABLE_RANGE + 1]; /* Conversion of Yg to g */
float Yb2b[CIELABTORGB_TABLE_RANGE + 1]; /* Conversion of Yb to b */
} TIFFCIELabToRGB;
extern int TIFFCIELabToRGBInit(TIFFCIELabToRGB*, TIFFDisplay *, float*);
extern void TIFFCIELabToXYZ(TIFFCIELabToRGB *, uint32, int32, int32,
float *, float *, float *);
extern void TIFFXYZToRGB(TIFFCIELabToRGB *, float, float, float,
uint32 *, uint32 *, uint32 *);
extern int TIFFYCbCrToRGBInit(TIFFYCbCrToRGB*, float*, float*);
extern void TIFFYCbCrtoRGB(TIFFYCbCrToRGB *, uint32, int32, int32,
uint32 *, uint32 *, uint32 *);
/*
* RGBA-style image support.
*/
typedef struct _TIFFRGBAImage TIFFRGBAImage;
/*
* The image reading and conversion routines invoke
* ``put routines'' to copy/image/whatever tiles of
* raw image data. A default set of routines are
* provided to convert/copy raw image data to 8-bit
* packed ABGR format rasters. Applications can supply
* alternate routines that unpack the data into a
* different format or, for example, unpack the data
* and draw the unpacked raster on the display.
*/
typedef void (*tileContigRoutine)
(TIFFRGBAImage*, uint32*, uint32, uint32, uint32, uint32, int32, int32,
unsigned char*);
typedef void (*tileSeparateRoutine)
(TIFFRGBAImage*, uint32*, uint32, uint32, uint32, uint32, int32, int32,
unsigned char*, unsigned char*, unsigned char*, unsigned char*);
/*
* RGBA-reader state.
*/
struct _TIFFRGBAImage {
TIFF* tif; /* image handle */
int stoponerr; /* stop on read error */
int isContig; /* data is packed/separate */
int alpha; /* type of alpha data present */
uint32 width; /* image width */
uint32 height; /* image height */
uint16 bitspersample; /* image bits/sample */
uint16 samplesperpixel; /* image samples/pixel */
uint16 orientation; /* image orientation */
uint16 req_orientation; /* requested orientation */
uint16 photometric; /* image photometric interp */
uint16* redcmap; /* colormap pallete */
uint16* greencmap;
uint16* bluecmap;
/* get image data routine */
int (*get)(TIFFRGBAImage*, uint32*, uint32, uint32);
union {
void (*any)(TIFFRGBAImage*);
tileContigRoutine contig;
tileSeparateRoutine separate;
} put; /* put decoded strip/tile */
TIFFRGBValue* Map; /* sample mapping array */
uint32** BWmap; /* black&white map */
uint32** PALmap; /* palette image map */
TIFFYCbCrToRGB* ycbcr; /* YCbCr conversion state */
TIFFCIELabToRGB* cielab; /* CIE L*a*b conversion state */
int row_offset;
int col_offset;
};
/*
* Macros for extracting components from the
* packed ABGR form returned by TIFFReadRGBAImage.
*/
#define TIFFGetR(abgr) ((abgr) & 0xff)
#define TIFFGetG(abgr) (((abgr) >> 8) & 0xff)
#define TIFFGetB(abgr) (((abgr) >> 16) & 0xff)
#define TIFFGetA(abgr) (((abgr) >> 24) & 0xff)
/*
* A CODEC is a software package that implements decoding,
* encoding, or decoding+encoding of a compression algorithm.
* The library provides a collection of builtin codecs.
* More codecs may be registered through calls to the library
* and/or the builtin implementations may be overridden.
*/
typedef int (*TIFFInitMethod)(TIFF*, int);
typedef struct {
char* name;
uint16 scheme;
TIFFInitMethod init;
} TIFFCodec;
#include <stdio.h>
#include <stdarg.h>
/* share internal LogLuv conversion routines? */
#ifndef LOGLUV_PUBLIC
#define LOGLUV_PUBLIC 1
#endif
#if defined(__cplusplus)
extern "C" {
#endif
typedef void (*TIFFErrorHandler)(const char*, const char*, va_list);
typedef tsize_t (*TIFFReadWriteProc)(thandle_t, tdata_t, tsize_t);
typedef toff_t (*TIFFSeekProc)(thandle_t, toff_t, int);
typedef int (*TIFFCloseProc)(thandle_t);
typedef toff_t (*TIFFSizeProc)(thandle_t);
typedef int (*TIFFMapFileProc)(thandle_t, tdata_t*, toff_t*);
typedef void (*TIFFUnmapFileProc)(thandle_t, tdata_t, toff_t);
typedef void (*TIFFExtendProc)(TIFF*);
extern const char* TIFFGetVersion(void);
extern const TIFFCodec* TIFFFindCODEC(uint16);
extern TIFFCodec* TIFFRegisterCODEC(uint16, const char*, TIFFInitMethod);
extern void TIFFUnRegisterCODEC(TIFFCodec*);
extern int TIFFIsCODECConfigured(uint16);
extern tdata_t _TIFFmalloc(tsize_t);
extern tdata_t _TIFFrealloc(tdata_t, tsize_t);
extern void _TIFFmemset(tdata_t, int, tsize_t);
extern void _TIFFmemcpy(tdata_t, const tdata_t, tsize_t);
extern int _TIFFmemcmp(const tdata_t, const tdata_t, tsize_t);
extern void _TIFFfree(tdata_t);
extern void TIFFClose(TIFF*);
extern int TIFFFlush(TIFF*);
extern int TIFFFlushData(TIFF*);
extern int TIFFGetField(TIFF*, ttag_t, ...);
extern int TIFFVGetField(TIFF*, ttag_t, va_list);
extern int TIFFGetFieldDefaulted(TIFF*, ttag_t, ...);
extern int TIFFVGetFieldDefaulted(TIFF*, ttag_t, va_list);
extern int TIFFReadDirectory(TIFF*);
extern tsize_t TIFFScanlineSize(TIFF*);
extern tsize_t TIFFRasterScanlineSize(TIFF*);
extern tsize_t TIFFStripSize(TIFF*);
extern tsize_t TIFFRawStripSize(TIFF*, tstrip_t);
extern tsize_t TIFFVStripSize(TIFF*, uint32);
extern tsize_t TIFFTileRowSize(TIFF*);
extern tsize_t TIFFTileSize(TIFF*);
extern tsize_t TIFFVTileSize(TIFF*, uint32);
extern uint32 TIFFDefaultStripSize(TIFF*, uint32);
extern void TIFFDefaultTileSize(TIFF*, uint32*, uint32*);
extern int TIFFFileno(TIFF*);
extern int TIFFGetMode(TIFF*);
extern int TIFFIsTiled(TIFF*);
extern int TIFFIsByteSwapped(TIFF*);
extern int TIFFIsUpSampled(TIFF*);
extern int TIFFIsMSB2LSB(TIFF*);
extern uint32 TIFFCurrentRow(TIFF*);
extern tdir_t TIFFCurrentDirectory(TIFF*);
extern tdir_t TIFFNumberOfDirectories(TIFF*);
extern uint32 TIFFCurrentDirOffset(TIFF*);
extern tstrip_t TIFFCurrentStrip(TIFF*);
extern ttile_t TIFFCurrentTile(TIFF*);
extern int TIFFReadBufferSetup(TIFF*, tdata_t, tsize_t);
extern int TIFFWriteBufferSetup(TIFF*, tdata_t, tsize_t);
extern int TIFFSetupStrips(TIFF *);
extern int TIFFWriteCheck(TIFF*, int, const char *);
extern int TIFFCreateDirectory(TIFF*);
extern int TIFFLastDirectory(TIFF*);
extern int TIFFSetDirectory(TIFF*, tdir_t);
extern int TIFFSetSubDirectory(TIFF*, uint32);
extern int TIFFUnlinkDirectory(TIFF*, tdir_t);
extern int TIFFSetField(TIFF*, ttag_t, ...);
extern int TIFFVSetField(TIFF*, ttag_t, va_list);
extern int TIFFWriteDirectory(TIFF *);
extern int TIFFCheckpointDirectory(TIFF *);
extern int TIFFRewriteDirectory(TIFF *);
extern int TIFFReassignTagToIgnore(enum TIFFIgnoreSense, int);
#if defined(c_plusplus) || defined(__cplusplus)
extern void TIFFPrintDirectory(TIFF*, FILE*, long = 0);
extern int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
extern int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t = 0);
extern int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int = 0);
extern int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*,
int = ORIENTATION_BOTLEFT, int = 0);
#else
extern void TIFFPrintDirectory(TIFF*, FILE*, long);
extern int TIFFReadScanline(TIFF*, tdata_t, uint32, tsample_t);
extern int TIFFWriteScanline(TIFF*, tdata_t, uint32, tsample_t);
extern int TIFFReadRGBAImage(TIFF*, uint32, uint32, uint32*, int);
extern int TIFFReadRGBAImageOriented(TIFF*, uint32, uint32, uint32*, int, int);
#endif
extern int TIFFReadRGBAStrip(TIFF*, tstrip_t, uint32 * );
extern int TIFFReadRGBATile(TIFF*, uint32, uint32, uint32 * );
extern int TIFFRGBAImageOK(TIFF*, char [1024]);
extern int TIFFRGBAImageBegin(TIFFRGBAImage*, TIFF*, int, char [1024]);
extern int TIFFRGBAImageGet(TIFFRGBAImage*, uint32*, uint32, uint32);
extern void TIFFRGBAImageEnd(TIFFRGBAImage*);
extern TIFF* TIFFOpen(const char*, const char*);
extern TIFF* TIFFFdOpen(int, const char*, const char*);
extern TIFF* TIFFClientOpen(const char*, const char*,
thandle_t,
TIFFReadWriteProc, TIFFReadWriteProc,
TIFFSeekProc, TIFFCloseProc,
TIFFSizeProc,
TIFFMapFileProc, TIFFUnmapFileProc);
extern const char* TIFFFileName(TIFF*);
extern void TIFFError(const char*, const char*, ...);
extern void TIFFWarning(const char*, const char*, ...);
extern TIFFErrorHandler TIFFSetErrorHandler(TIFFErrorHandler);
extern TIFFErrorHandler TIFFSetWarningHandler(TIFFErrorHandler);
extern TIFFExtendProc TIFFSetTagExtender(TIFFExtendProc);
extern ttile_t TIFFComputeTile(TIFF*, uint32, uint32, uint32, tsample_t);
extern int TIFFCheckTile(TIFF*, uint32, uint32, uint32, tsample_t);
extern ttile_t TIFFNumberOfTiles(TIFF*);
extern tsize_t TIFFReadTile(TIFF*,
tdata_t, uint32, uint32, uint32, tsample_t);
extern tsize_t TIFFWriteTile(TIFF*,
tdata_t, uint32, uint32, uint32, tsample_t);
extern tstrip_t TIFFComputeStrip(TIFF*, uint32, tsample_t);
extern tstrip_t TIFFNumberOfStrips(TIFF*);
extern tsize_t TIFFReadEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
extern tsize_t TIFFReadRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
extern tsize_t TIFFReadEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
extern tsize_t TIFFReadRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
extern tsize_t TIFFWriteEncodedStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
extern tsize_t TIFFWriteRawStrip(TIFF*, tstrip_t, tdata_t, tsize_t);
extern tsize_t TIFFWriteEncodedTile(TIFF*, ttile_t, tdata_t, tsize_t);
extern tsize_t TIFFWriteRawTile(TIFF*, ttile_t, tdata_t, tsize_t);
extern int TIFFDataWidth(TIFFDataType); /* table of tag datatype widths */
extern void TIFFSetWriteOffset(TIFF*, toff_t);
extern void TIFFSwabShort(uint16*);
extern void TIFFSwabLong(uint32*);
extern void TIFFSwabDouble(double*);
extern void TIFFSwabArrayOfShort(uint16*, unsigned long);
extern void TIFFSwabArrayOfLong(uint32*, unsigned long);
extern void TIFFSwabArrayOfDouble(double*, unsigned long);
extern void TIFFReverseBits(unsigned char *, unsigned long);
extern const unsigned char* TIFFGetBitRevTable(int);
#ifdef LOGLUV_PUBLIC
#define U_NEU 0.210526316
#define V_NEU 0.473684211
#define UVSCALE 410.
extern double LogL16toY(int);
extern double LogL10toY(int);
extern void XYZtoRGB24(float*, uint8*);
extern int uv_decode(double*, double*, int);
extern void LogLuv24toXYZ(uint32, float*);
extern void LogLuv32toXYZ(uint32, float*);
#if defined(c_plusplus) || defined(__cplusplus)
extern int LogL16fromY(double, int = SGILOGENCODE_NODITHER);
extern int LogL10fromY(double, int = SGILOGENCODE_NODITHER);
extern int uv_encode(double, double, int = SGILOGENCODE_NODITHER);
extern uint32 LogLuv24fromXYZ(float*, int = SGILOGENCODE_NODITHER);
extern uint32 LogLuv32fromXYZ(float*, int = SGILOGENCODE_NODITHER);
#else
extern int LogL16fromY(double, int);
extern int LogL10fromY(double, int);
extern int uv_encode(double, double, int);
extern uint32 LogLuv24fromXYZ(float*, int);
extern uint32 LogLuv32fromXYZ(float*, int);
#endif
#endif /* LOGLUV_PUBLIC */
/*
** New stuff going public in 3.6.x.
*/
extern int TIFFGetTagListCount( TIFF * );
extern ttag_t TIFFGetTagListEntry( TIFF *, int tag_index );
#define TIFF_ANY TIFF_NOTYPE /* for field descriptor searching */
#define TIFF_VARIABLE -1 /* marker for variable length tags */
#define TIFF_SPP -2 /* marker for SamplesPerPixel tags */
#define TIFF_VARIABLE2 -3 /* marker for uint32 var-length tags */
#define FIELD_CUSTOM 65
typedef struct {
ttag_t field_tag; /* field's tag */
short field_readcount; /* read count/TIFF_VARIABLE/TIFF_SPP */
short field_writecount; /* write count/TIFF_VARIABLE */
TIFFDataType field_type; /* type of associated data */
unsigned short field_bit; /* bit in fieldsset bit vector */
unsigned char field_oktochange; /* if true, can change while writing */
unsigned char field_passcount; /* if true, pass dir count on set */
char *field_name; /* ASCII name */
} TIFFFieldInfo;
typedef struct _TIFFTagValue {
const TIFFFieldInfo *info;
int count;
void *value;
} TIFFTagValue;
extern void TIFFMergeFieldInfo(TIFF*, const TIFFFieldInfo[], int);
extern const TIFFFieldInfo* TIFFFindFieldInfo(TIFF*, ttag_t, TIFFDataType);
extern const TIFFFieldInfo* TIFFFieldWithTag(TIFF*, ttag_t);
typedef int (*TIFFVSetMethod)(TIFF*, ttag_t, va_list);
typedef int (*TIFFVGetMethod)(TIFF*, ttag_t, va_list);
typedef void (*TIFFPrintMethod)(TIFF*, FILE*, long);
typedef struct {
TIFFVSetMethod vsetfield; /* tag set routine */
TIFFVGetMethod vgetfield; /* tag get routine */
TIFFPrintMethod printdir; /* directory print routine */
} TIFFTagMethods;
extern TIFFTagMethods *TIFFAccessTagMethods( TIFF * );
extern void *TIFFGetClientInfo( TIFF *, const char * );
extern void TIFFSetClientInfo( TIFF *, void *, const char * );
#if defined(__cplusplus)
}
#endif
#endif /* _TIFFIO_ */

View File

@@ -1,289 +0,0 @@
/* $Header$ */
/*
* Copyright (c) 1988-1997 Sam Leffler
* Copyright (c) 1991-1997 Silicon Graphics, Inc.
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that (i) the above copyright notices and this permission notice appear in
* all copies of the software and related documentation, and (ii) the names of
* Sam Leffler and Silicon Graphics may not be used in any advertising or
* publicity relating to the software without the specific, prior written
* permission of Sam Leffler and Silicon Graphics.
*
* THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
* EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
* WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
*
* IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
* ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
* OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
* WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
* LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
* OF THIS SOFTWARE.
*/
#ifndef _TIFFIOP_
#define _TIFFIOP_
/*
* ``Library-private'' definitions.
*/
/*
* UNIX systems should run the configure script to generate
* a port.h file that reflects the system capabilities.
* Doing this obviates all the dreck done in tiffcomp.h.
*/
#if defined(unix) || defined(__unix)
#include "port.h"
#include "tiffconf.h"
#else
#include "tiffconf.h"
#include "tiffcomp.h"
#endif
#include "tiffio.h"
#include "tif_dir.h"
#ifndef TRUE
#define TRUE 1
#define FALSE 0
#endif
typedef struct client_info {
struct client_info *next;
void *data;
char *name;
} TIFFClientInfoLink;
/*
* Typedefs for ``method pointers'' used internally.
*/
typedef unsigned char tidataval_t; /* internal image data value type */
typedef tidataval_t* tidata_t; /* reference to internal image data */
typedef void (*TIFFVoidMethod)(TIFF*);
typedef int (*TIFFBoolMethod)(TIFF*);
typedef int (*TIFFPreMethod)(TIFF*, tsample_t);
typedef int (*TIFFCodeMethod)(TIFF*, tidata_t, tsize_t, tsample_t);
typedef int (*TIFFSeekMethod)(TIFF*, uint32);
typedef void (*TIFFPostMethod)(TIFF*, tidata_t, tsize_t);
typedef uint32 (*TIFFStripMethod)(TIFF*, uint32);
typedef void (*TIFFTileMethod)(TIFF*, uint32*, uint32*);
struct tiff {
char* tif_name; /* name of open file */
int tif_fd; /* open file descriptor */
int tif_mode; /* open mode (O_*) */
uint32 tif_flags;
#define TIFF_FILLORDER 0x0003 /* natural bit fill order for machine */
#define TIFF_DIRTYHEADER 0x0004 /* header must be written on close */
#define TIFF_DIRTYDIRECT 0x0008 /* current directory must be written */
#define TIFF_BUFFERSETUP 0x0010 /* data buffers setup */
#define TIFF_CODERSETUP 0x0020 /* encoder/decoder setup done */
#define TIFF_BEENWRITING 0x0040 /* written 1+ scanlines to file */
#define TIFF_SWAB 0x0080 /* byte swap file information */
#define TIFF_NOBITREV 0x0100 /* inhibit bit reversal logic */
#define TIFF_MYBUFFER 0x0200 /* my raw data buffer; free on close */
#define TIFF_ISTILED 0x0400 /* file is tile, not strip- based */
#define TIFF_MAPPED 0x0800 /* file is mapped into memory */
#define TIFF_POSTENCODE 0x1000 /* need call to postencode routine */
#define TIFF_INSUBIFD 0x2000 /* currently writing a subifd */
#define TIFF_UPSAMPLED 0x4000 /* library is doing data up-sampling */
#define TIFF_STRIPCHOP 0x8000 /* enable strip chopping support */
toff_t tif_diroff; /* file offset of current directory */
toff_t tif_nextdiroff; /* file offset of following directory */
toff_t* tif_dirlist; /* list of offsets to already seen */
/* directories to prevent IFD looping */
uint16 tif_dirnumber; /* number of already seen directories */
TIFFDirectory tif_dir; /* internal rep of current directory */
TIFFHeader tif_header; /* file's header block */
const int* tif_typeshift; /* data type shift counts */
const long* tif_typemask; /* data type masks */
uint32 tif_row; /* current scanline */
tdir_t tif_curdir; /* current directory (index) */
tstrip_t tif_curstrip; /* current strip for read/write */
toff_t tif_curoff; /* current offset for read/write */
toff_t tif_dataoff; /* current offset for writing dir */
#if SUBIFD_SUPPORT
uint16 tif_nsubifd; /* remaining subifds to write */
toff_t tif_subifdoff; /* offset for patching SubIFD link */
#endif
/* tiling support */
uint32 tif_col; /* current column (offset by row too) */
ttile_t tif_curtile; /* current tile for read/write */
tsize_t tif_tilesize; /* # of bytes in a tile */
/* compression scheme hooks */
int tif_decodestatus;
TIFFBoolMethod tif_setupdecode;/* called once before predecode */
TIFFPreMethod tif_predecode; /* pre- row/strip/tile decoding */
TIFFBoolMethod tif_setupencode;/* called once before preencode */
int tif_encodestatus;
TIFFPreMethod tif_preencode; /* pre- row/strip/tile encoding */
TIFFBoolMethod tif_postencode; /* post- row/strip/tile encoding */
TIFFCodeMethod tif_decoderow; /* scanline decoding routine */
TIFFCodeMethod tif_encoderow; /* scanline encoding routine */
TIFFCodeMethod tif_decodestrip;/* strip decoding routine */
TIFFCodeMethod tif_encodestrip;/* strip encoding routine */
TIFFCodeMethod tif_decodetile; /* tile decoding routine */
TIFFCodeMethod tif_encodetile; /* tile encoding routine */
TIFFVoidMethod tif_close; /* cleanup-on-close routine */
TIFFSeekMethod tif_seek; /* position within a strip routine */
TIFFVoidMethod tif_cleanup; /* cleanup state routine */
TIFFStripMethod tif_defstripsize;/* calculate/constrain strip size */
TIFFTileMethod tif_deftilesize;/* calculate/constrain tile size */
tidata_t tif_data; /* compression scheme private data */
/* input/output buffering */
tsize_t tif_scanlinesize;/* # of bytes in a scanline */
tsize_t tif_scanlineskew;/* scanline skew for reading strips */
tidata_t tif_rawdata; /* raw data buffer */
tsize_t tif_rawdatasize;/* # of bytes in raw data buffer */
tidata_t tif_rawcp; /* current spot in raw buffer */
tsize_t tif_rawcc; /* bytes unread from raw buffer */
/* memory-mapped file support */
tidata_t tif_base; /* base of mapped file */
toff_t tif_size; /* size of mapped file region (bytes) */
TIFFMapFileProc tif_mapproc; /* map file method */
TIFFUnmapFileProc tif_unmapproc;/* unmap file method */
/* input/output callback methods */
thandle_t tif_clientdata; /* callback parameter */
TIFFReadWriteProc tif_readproc; /* read method */
TIFFReadWriteProc tif_writeproc;/* write method */
TIFFSeekProc tif_seekproc; /* lseek method */
TIFFCloseProc tif_closeproc; /* close method */
TIFFSizeProc tif_sizeproc; /* filesize method */
/* post-decoding support */
TIFFPostMethod tif_postdecode; /* post decoding routine */
/* tag support */
TIFFFieldInfo** tif_fieldinfo; /* sorted table of registered tags */
int tif_nfields; /* # entries in registered tag table */
TIFFTagMethods tif_tagmethods; /* tag get/set/print routines */
TIFFClientInfoLink *tif_clientinfo; /* extra client information. */
};
#define isPseudoTag(t) (t > 0xffff) /* is tag value normal or pseudo */
#define isTiled(tif) (((tif)->tif_flags & TIFF_ISTILED) != 0)
#define isMapped(tif) (((tif)->tif_flags & TIFF_MAPPED) != 0)
#define isFillOrder(tif, o) (((tif)->tif_flags & (o)) != 0)
#define isUpSampled(tif) (((tif)->tif_flags & TIFF_UPSAMPLED) != 0)
#define TIFFReadFile(tif, buf, size) \
((*(tif)->tif_readproc)((tif)->tif_clientdata,buf,size))
#define TIFFWriteFile(tif, buf, size) \
((*(tif)->tif_writeproc)((tif)->tif_clientdata,buf,size))
#define TIFFSeekFile(tif, off, whence) \
((*(tif)->tif_seekproc)((tif)->tif_clientdata,(toff_t)(off),whence))
#define TIFFCloseFile(tif) \
((*(tif)->tif_closeproc)((tif)->tif_clientdata))
#define TIFFGetFileSize(tif) \
((*(tif)->tif_sizeproc)((tif)->tif_clientdata))
#define TIFFMapFileContents(tif, paddr, psize) \
((*(tif)->tif_mapproc)((tif)->tif_clientdata,paddr,psize))
#define TIFFUnmapFileContents(tif, addr, size) \
((*(tif)->tif_unmapproc)((tif)->tif_clientdata,addr,size))
/*
* Default Read/Seek/Write definitions.
*/
#ifndef ReadOK
#define ReadOK(tif, buf, size) \
(TIFFReadFile(tif, (tdata_t) buf, (tsize_t)(size)) == (tsize_t)(size))
#endif
#ifndef SeekOK
#define SeekOK(tif, off) \
(TIFFSeekFile(tif, (toff_t) off, SEEK_SET) == (toff_t) off)
#endif
#ifndef WriteOK
#define WriteOK(tif, buf, size) \
(TIFFWriteFile(tif, (tdata_t) buf, (tsize_t) size) == (tsize_t) size)
#endif
/* NB: the uint32 casts are to silence certain ANSI-C compilers */
#define TIFFhowmany(x, y) ((((uint32)(x))+(((uint32)(y))-1))/((uint32)(y)))
#define TIFFhowmany8(x) (((x)&0x07)?((uint32)(x)>>3)+1:(uint32)(x)>>3)
#define TIFFroundup(x, y) (TIFFhowmany(x,y)*(y))
#define TIFFmax(A,B) ((A)>(B)?(A):(B))
#define TIFFmin(A,B) ((A)<(B)?(A):(B))
#if defined(__cplusplus)
extern "C" {
#endif
extern int _TIFFgetMode(const char*, const char*);
extern int _TIFFNoRowEncode(TIFF*, tidata_t, tsize_t, tsample_t);
extern int _TIFFNoStripEncode(TIFF*, tidata_t, tsize_t, tsample_t);
extern int _TIFFNoTileEncode(TIFF*, tidata_t, tsize_t, tsample_t);
extern int _TIFFNoRowDecode(TIFF*, tidata_t, tsize_t, tsample_t);
extern int _TIFFNoStripDecode(TIFF*, tidata_t, tsize_t, tsample_t);
extern int _TIFFNoTileDecode(TIFF*, tidata_t, tsize_t, tsample_t);
extern void _TIFFNoPostDecode(TIFF*, tidata_t, tsize_t);
extern int _TIFFNoPreCode (TIFF*, tsample_t);
extern int _TIFFNoSeek(TIFF*, uint32);
extern void _TIFFSwab16BitData(TIFF*, tidata_t, tsize_t);
extern void _TIFFSwab32BitData(TIFF*, tidata_t, tsize_t);
extern void _TIFFSwab64BitData(TIFF*, tidata_t, tsize_t);
extern int TIFFFlushData1(TIFF*);
extern void TIFFFreeDirectory(TIFF*);
extern int TIFFDefaultDirectory(TIFF*);
extern int TIFFSetCompressionScheme(TIFF*, int);
extern int TIFFSetDefaultCompressionState(TIFF*);
extern uint32 _TIFFDefaultStripSize(TIFF*, uint32);
extern void _TIFFDefaultTileSize(TIFF*, uint32*, uint32*);
extern void _TIFFsetByteArray(void**, void*, long);
extern void _TIFFsetString(char**, char*);
extern void _TIFFsetShortArray(uint16**, uint16*, long);
extern void _TIFFsetLongArray(uint32**, uint32*, long);
extern void _TIFFsetFloatArray(float**, float*, long);
extern void _TIFFsetDoubleArray(double**, double*, long);
extern void _TIFFprintAscii(FILE*, const char*);
extern void _TIFFprintAsciiTag(FILE*, const char*, const char*);
GLOBALDATA(TIFFErrorHandler,_TIFFwarningHandler);
GLOBALDATA(TIFFErrorHandler,_TIFFerrorHandler);
extern int TIFFInitDumpMode(TIFF*, int);
#ifdef PACKBITS_SUPPORT
extern int TIFFInitPackBits(TIFF*, int);
#endif
#ifdef CCITT_SUPPORT
extern int TIFFInitCCITTRLE(TIFF*, int), TIFFInitCCITTRLEW(TIFF*, int);
extern int TIFFInitCCITTFax3(TIFF*, int), TIFFInitCCITTFax4(TIFF*, int);
#endif
#ifdef THUNDER_SUPPORT
extern int TIFFInitThunderScan(TIFF*, int);
#endif
#ifdef NEXT_SUPPORT
extern int TIFFInitNeXT(TIFF*, int);
#endif
#ifdef LZW_SUPPORT
extern int TIFFInitLZW(TIFF*, int);
#endif
#ifdef OJPEG_SUPPORT
extern int TIFFInitOJPEG(TIFF*, int);
#endif
#ifdef JPEG_SUPPORT
extern int TIFFInitJPEG(TIFF*, int);
#endif
#ifdef JBIG_SUPPORT
extern int TIFFInitJBIG(TIFF*, int);
#endif
#ifdef ZIP_SUPPORT
extern int TIFFInitZIP(TIFF*, int);
#endif
#ifdef PIXARLOG_SUPPORT
extern int TIFFInitPixarLog(TIFF*, int);
#endif
#ifdef LOGLUV_SUPPORT
extern int TIFFInitSGILog(TIFF*, int);
#endif
#ifdef VMS
extern const TIFFCodec _TIFFBuiltinCODECS[];
#else
extern TIFFCodec _TIFFBuiltinCODECS[];
#endif
#if defined(__cplusplus)
}
#endif
#endif /* _TIFFIOP_ */

View File

@@ -1,9 +0,0 @@
#define TIFFLIB_VERSION_STR "LIBTIFF, Version 3.6.1\nCopyright (c) 1988-1996 Sam Leffler\nCopyright (c) 1991-1996 Silicon Graphics, Inc."
/*
* This define can be used in code that requires
* compilation-related definitions specific to a
* version or versions of the library. Runtime
* version checking should be done based on the
* string returned by TIFFGetVersion.
*/
#define TIFFLIB_VERSION 20031226

View File

@@ -1,173 +0,0 @@
/* Version 1.0 generated April 7, 1997 by Greg Ward Larson, SGI */
#define UV_SQSIZ (float)0.003500
#define UV_NDIVS 16289
#define UV_VSTART (float)0.016940
#define UV_NVS 163
static struct {
float ustart;
short nus, ncum;
} uv_row[UV_NVS] = {
(float)0.247663, 4, 0,
(float)0.243779, 6, 4,
(float)0.241684, 7, 10,
(float)0.237874, 9, 17,
(float)0.235906, 10, 26,
(float)0.232153, 12, 36,
(float)0.228352, 14, 48,
(float)0.226259, 15, 62,
(float)0.222371, 17, 77,
(float)0.220410, 18, 94,
(float)0.214710, 21, 112,
(float)0.212714, 22, 133,
(float)0.210721, 23, 155,
(float)0.204976, 26, 178,
(float)0.202986, 27, 204,
(float)0.199245, 29, 231,
(float)0.195525, 31, 260,
(float)0.193560, 32, 291,
(float)0.189878, 34, 323,
(float)0.186216, 36, 357,
(float)0.186216, 36, 393,
(float)0.182592, 38, 429,
(float)0.179003, 40, 467,
(float)0.175466, 42, 507,
(float)0.172001, 44, 549,
(float)0.172001, 44, 593,
(float)0.168612, 46, 637,
(float)0.168612, 46, 683,
(float)0.163575, 49, 729,
(float)0.158642, 52, 778,
(float)0.158642, 52, 830,
(float)0.158642, 52, 882,
(float)0.153815, 55, 934,
(float)0.153815, 55, 989,
(float)0.149097, 58, 1044,
(float)0.149097, 58, 1102,
(float)0.142746, 62, 1160,
(float)0.142746, 62, 1222,
(float)0.142746, 62, 1284,
(float)0.138270, 65, 1346,
(float)0.138270, 65, 1411,
(float)0.138270, 65, 1476,
(float)0.132166, 69, 1541,
(float)0.132166, 69, 1610,
(float)0.126204, 73, 1679,
(float)0.126204, 73, 1752,
(float)0.126204, 73, 1825,
(float)0.120381, 77, 1898,
(float)0.120381, 77, 1975,
(float)0.120381, 77, 2052,
(float)0.120381, 77, 2129,
(float)0.112962, 82, 2206,
(float)0.112962, 82, 2288,
(float)0.112962, 82, 2370,
(float)0.107450, 86, 2452,
(float)0.107450, 86, 2538,
(float)0.107450, 86, 2624,
(float)0.107450, 86, 2710,
(float)0.100343, 91, 2796,
(float)0.100343, 91, 2887,
(float)0.100343, 91, 2978,
(float)0.095126, 95, 3069,
(float)0.095126, 95, 3164,
(float)0.095126, 95, 3259,
(float)0.095126, 95, 3354,
(float)0.088276, 100, 3449,
(float)0.088276, 100, 3549,
(float)0.088276, 100, 3649,
(float)0.088276, 100, 3749,
(float)0.081523, 105, 3849,
(float)0.081523, 105, 3954,
(float)0.081523, 105, 4059,
(float)0.081523, 105, 4164,
(float)0.074861, 110, 4269,
(float)0.074861, 110, 4379,
(float)0.074861, 110, 4489,
(float)0.074861, 110, 4599,
(float)0.068290, 115, 4709,
(float)0.068290, 115, 4824,
(float)0.068290, 115, 4939,
(float)0.068290, 115, 5054,
(float)0.063573, 119, 5169,
(float)0.063573, 119, 5288,
(float)0.063573, 119, 5407,
(float)0.063573, 119, 5526,
(float)0.057219, 124, 5645,
(float)0.057219, 124, 5769,
(float)0.057219, 124, 5893,
(float)0.057219, 124, 6017,
(float)0.050985, 129, 6141,
(float)0.050985, 129, 6270,
(float)0.050985, 129, 6399,
(float)0.050985, 129, 6528,
(float)0.050985, 129, 6657,
(float)0.044859, 134, 6786,
(float)0.044859, 134, 6920,
(float)0.044859, 134, 7054,
(float)0.044859, 134, 7188,
(float)0.040571, 138, 7322,
(float)0.040571, 138, 7460,
(float)0.040571, 138, 7598,
(float)0.040571, 138, 7736,
(float)0.036339, 142, 7874,
(float)0.036339, 142, 8016,
(float)0.036339, 142, 8158,
(float)0.036339, 142, 8300,
(float)0.032139, 146, 8442,
(float)0.032139, 146, 8588,
(float)0.032139, 146, 8734,
(float)0.032139, 146, 8880,
(float)0.027947, 150, 9026,
(float)0.027947, 150, 9176,
(float)0.027947, 150, 9326,
(float)0.023739, 154, 9476,
(float)0.023739, 154, 9630,
(float)0.023739, 154, 9784,
(float)0.023739, 154, 9938,
(float)0.019504, 158, 10092,
(float)0.019504, 158, 10250,
(float)0.019504, 158, 10408,
(float)0.016976, 161, 10566,
(float)0.016976, 161, 10727,
(float)0.016976, 161, 10888,
(float)0.016976, 161, 11049,
(float)0.012639, 165, 11210,
(float)0.012639, 165, 11375,
(float)0.012639, 165, 11540,
(float)0.009991, 168, 11705,
(float)0.009991, 168, 11873,
(float)0.009991, 168, 12041,
(float)0.009016, 170, 12209,
(float)0.009016, 170, 12379,
(float)0.009016, 170, 12549,
(float)0.006217, 173, 12719,
(float)0.006217, 173, 12892,
(float)0.005097, 175, 13065,
(float)0.005097, 175, 13240,
(float)0.005097, 175, 13415,
(float)0.003909, 177, 13590,
(float)0.003909, 177, 13767,
(float)0.002340, 177, 13944,
(float)0.002389, 170, 14121,
(float)0.001068, 164, 14291,
(float)0.001653, 157, 14455,
(float)0.000717, 150, 14612,
(float)0.001614, 143, 14762,
(float)0.000270, 136, 14905,
(float)0.000484, 129, 15041,
(float)0.001103, 123, 15170,
(float)0.001242, 115, 15293,
(float)0.001188, 109, 15408,
(float)0.001011, 103, 15517,
(float)0.000709, 97, 15620,
(float)0.000301, 89, 15717,
(float)0.002416, 82, 15806,
(float)0.003251, 76, 15888,
(float)0.003246, 69, 15964,
(float)0.004141, 62, 16033,
(float)0.005963, 55, 16095,
(float)0.008839, 47, 16150,
(float)0.010490, 40, 16197,
(float)0.016994, 31, 16237,
(float)0.023659, 21, 16268,
};

617
wxPython/wx/py/CHANGES.txt Normal file
View File

@@ -0,0 +1,617 @@
0.9.4 (1/25/2004 to //2004)
------------------------------
Removed wxd decorators in favor of new SWIG-generated docstrings.
Removed docs tabs from crust interface:
* wxPython Docs
* wxSTC Docs
Fixed Calltip tab refresh problem on Windows.
shell.autoCompleteAutoHide added with default of False.
Changed default namespace of Shell to __main__.__dict__, instead of an
empty dictionary.
0.9.3 (9/25/2003 to 1/24/2004)
------------------------------
Fun and games with dynamic renaming. Details of any other changes
were lost in the confusion. I'll try to do better in the future.
0.9.2 (5/3/2003 to 9/25/2003)
-----------------------------
Changed to the new prefix-less "wx" package::
import wx
instead of::
from wxPython import wx
Fixed typo in ``PyWrap.py``::
if __name__ == '__main__':
main(sys.argv)
should have been::
if __name__ == '__main__':
main()
Added pretty-print Display tab to Crust, based on suggestion from
Jason Whitlark.
Improved ``Can*`` checks in ``EditWindow``, since STC is too lenient,
particularly when it is set to read-only but returns True for
CanPaste() (seems like an STC bug to me)::
def CanCopy(self):
"""Return True if text is selected and can be copied."""
return self.GetSelectionStart() != self.GetSelectionEnd()
def CanCut(self):
"""Return True if text is selected and can be cut."""
return self.CanCopy() and self.CanEdit()
def CanEdit(self):
"""Return True if editing should succeed."""
return not self.GetReadOnly()
def CanPaste(self):
"""Return True if pasting should succeed."""
return stc.StyledTextCtrl.CanPaste(self) and self.CanEdit()
0.9.1 (3/21/2003 to 5/2/2003)
-----------------------------
PyCrust is dead! Long live Py!
* Renamed ``PyCrust`` package to ``py``.
* Moved code to wxPython's CVS repository.
Fixed bug in ``introspect.py`` on introspecting objects occurring
immediately after a secondary prompt, like this::
>>> l = [1, 2, 3]
>>> for n in range(3):
... l. <-- failed to popup autocomplete list
Added documentation files:
* PyManual.txt
* wxPythonManual.txt
* wxPythonPackage.txt
* wxPythonExamples.txt
Added PyAlaMode and PyAlaCarte code editors.
Major refactoring to support ``editor`` and ``shell`` from the same
base.
Renamed program files:
* ``PyCrustApp.py`` to ``PyCrust.py``
* ``PyFillingApp.py`` to ``PyFilling.py``
* ``PyShellApp.py`` to ``PyShell.py``
* ``wrap.py`` to ``PyWrap.py``
Removed disabling of autocomplete for lists of 2000 items or more.
The current implementation of wxSTC can now handle lists this big.
Improved handling of ``sys.path`` to mimic the standard Python shell.
0.9 (2/27/2003 to 3/20/2003)
----------------------------
Added fontIncrease, fontDecrease, fontDefault signals, receivers and
keybindings::
Ctrl+] Increase font size.
Ctrl+[ Decrease font size.
Ctrl+= Default font size.
Continued enhancement of the decorator capability to provide better
documentation and docstrings for wxPython classes and functions.
Introduced new tabbed interface:
* Namespace
* Calltip
* Session
* Dispatcher
* wxPython Docs
* wxSTC Docs
``Filling.tree`` now expands tuples as well as lists. (It should have
done this all along, I just never noticed this omission before.)
Added this True/False test to all modules::
try:
True
except NameError:
True = 1==1
False = 1==0
Added ``wxd`` directory with decoration classes.
0.8.2 (1/5/2003 to 2/26/2003)
-----------------------------
Wrapped ``sys.ps1``, ``sys.ps2``, and ``sys.ps3`` in ``str()``.
(Thanks, Kieran Holland.)
Fixed minor things found by PyChecker.
Changed locals to use ``__main__.__dict__`` and added code to clean up
the namespace, making it as close to the regular Python environment as
possible. This solves the problem of pickling and unpickling
instances of classes defined in the shell.
Made ``shell.PasteAndRun()`` a little more forgiving when it finds a
ps2 prompt line with no trailing space, such when you copy code from a
web page.
Improved autocomplete behavior by adding these to shell::
self.AutoCompSetAutoHide(False)
self.AutoCompStops(' .,;:([)]}\'"\\<>%^&+-=*/|`')
Added ``decor`` directory, ``decorator.py``, ``stcDecor.py``, and
``stcConstants.py``. These all serve the purpose of adding docstrings
to existing wxPython classes, in particular the ``wxStyledTextCtrl``.
Added ``wrap.py``, a command line utility for running a wxPython app
with additional runtime-tools loaded, such as PyCrust (the only tool
at this point).
Flushed the clipboard Cut/Copy operations so that selections will
exist in the clipboard even after PyCrust has been closed.
Improved the suppression of docstrings for simple data types appearing
in the namespace viewer.
Better handling of autocompletion with numeric types; no
autocompletion when typing a dot after an integer. If the
autocompletion is desired, type a space before the dot::
func = 3 .
More Filling!!! The namespace tree is now dynamically updated.
0.8.1 (12/20/2002 to 12/25/2002)
--------------------------------
Improved keyboard handling with Autocomplete active. You can now use
Enter as well as Tab to select an item from the list.
Disabled autocomplete for lists of 2000 items or more. The current
implementation of wxSTC can't handle lists this big.
Changed ``filling`` to always display docstrings for objects. This is
useful for objects whose docstrings have been decorated, rather than
coming directly from the source code. (Hmmm. Sounds like someone is
doing some decorating. I wonder where that would be helpful? <wink>)
Fixed handling of icon. Added ``images.py`` file.
0.8 (10/29/2002 to 12/16/2002)
------------------------------
Added "help" to startup banner info.
Made all ``wx`` and ``stc`` imports explicit. No more ``import *``.
Replaced use of the ``wx`` module's ``true`` and ``false`` with
Python's ``True`` and ``False``.
Changed ``introspect.getRoot()`` to use ``tokenize`` module. This
does a slightly better job than the previous parsing routine and the
code is clearer.
Improved handling of whitespace and empty types during introspection.
Fixed cut/copy clipboard problem under Linux. (Robin Dunn rocks!!!)
Added shell.about() which works like this::
>>> shell.about()
PyCrust Version: 0.8
Shell Revision: 1.80
Interpreter Revision: 1.15
Python Version: 2.2.2
wxPython Version: 2.3.3.1
Platform: linux2
Added copy plus and paste plus to shell menu.
Moved shell menu from ``shell.py`` to ``shellmenu.py``.
Added ``sys.stdin.readlines()`` support.
Added ``time.sleep()`` in ``readline()`` and ``OnIdle()`` event
handler to free up the CPU.
0.7.2 (2/22/2002 to 8/27/2002)
------------------------------
Tweaked ``getAttributeNames()`` to pick up a few more attributes::
'__bases__', '__class__', '__dict__', '__name__', 'func_closure',
'func_code', 'func_defaults', 'func_dict', 'func_doc',
'func_globals', 'func_name'
Added a tests directory and unit tests.
Improved support for empty types in the shell: ``[]``, ``()`` and
``{}`` as far as when call tips and autocompletion are available.
Added support for the other triple string - ``''''''``.
Refactored ``introspect.py`` to improve testability.
Improved call tips for unbound methods by leaving the "self"
parameter, since unbound methods require an instance be passed.
Fixed call tip bug where a tip was displayed when a "(" was typed
after an object that wasn't callable.
Fixed ``getAllAttributeNames`` when ``str(object)`` fails.
Added brace highlighting. (Thank you, Kevin Altis.)
Fixed problem displaying unicode objects in ``PyFilling``.
Changed how ``filling.py`` checks for expandable objects. Lists are
now expandable objects.
Made the key handling more robust when there is an active text
selection that includes text prior to the last primary prompt. Thanks
to Raul Cota for pointing this out.
Fixed wxSTC problem with brace highlighting and non-us keyboards.
(Thank you for the patch, Jean-Michel Fauth.)
Added ``busy = wxBusyCursor()`` to key points in ``shell`` and
``filling``.
Added ``OnCloseWindow`` handler to ``ShellFrame`` and ``CrustFrame``.
Default to ``SetWrapMode(1)`` for shell and namespace viewer.
Added ``shell.wrap()`` and ``shell.zoom()``.
Added autoCompleteKeys hooks for Raul Cota.
Cleaned up various little key handling bugs.
Changed input methods to get values from shell, rather than dialog
boxes. Renamed ``readIn`` to ``readline`` and ``readRaw`` to
``raw_input``.
0.7.1 (12/12/2001 to 2/21/2002)
-------------------------------
Fixed ``OnChar()`` issues effecting European keyboards, as reported by
Jean-Michel Fauth.
Fixed ``introspect.py`` issue with xmlrpc objects reported by Kevin
Altis.
Fixed some introspect/PyFilling issues with regard to Python 2.2.
Fixed font background color as reported by Keith J. Farmer. (Thanks)
Fixed problem with call tips and autocompletion inside multiline
commands as report by Kevin Altis.
Improved ``OnKeyDown`` handling of cut/copy/paste operations based on
feedback from Syver Enstad. (Thanks)
Added a ``shell.help()`` method to display some help info.
Changed sort of items in the namespace viewer to case insensitive.
Changed ``attributes.sort(lambda x, y: cmp(x.upper(), y.upper()))`` in
advance of an upcoming fix to an autocompletion matching bug in wxSTC.
Improved support for ZODB by allowing namespace drilldown into BTrees.
Added ``shell.PasteAndRun()`` to support pasting multiple commands into
the shell from the clipboard. Ctrl+Shift+V or v.
Enter now always processes a command (or copies down a previous one.)
To insert a line break, press Ctrl+Enter.
Escape key clears the current, unexecuted command.
History retrieval changed to replace current command. Added new keys
to insert from history - Shift+Up and Shift+Down.
Better call tips on objects with ``__call__`` methods.
Improved call tip positioning calculation.
0.7 (10/15/2001 to 12/11/2001)
------------------------------
Changed how command history retrieval functions work. Added Alt-P,
Alt-N as keybindings for Retrieve-Previous, Retrieve-Next.
Added full support for multi-line commands, similar to IDLE.
Changed ``introspect.getAttributeNames()`` to do a case insensitive
sort.
Changed Cut/Copy/Paste to deal with prompts intelligently. Cut and
Copy remove all prompts. Paste can handle prompted or not-prompted
text.
Added ``CopyWithPrompts()`` method attached to Ctrl-Shift-C for those
times when you really do want all the prompts left intact.
Improved handling of the shell's read-only zone.
Changed ``CrustFrame.__init__`` parameter spec to include all
parameters allowed by a ``wxFrame``.
Changed ``FillingText`` to be read-only.
Renamed ``PyCrust.py`` to ``PyCrustApp.py`` to eliminate
package/module name conflicts that kept you from doing ``from PyCrust
import shell`` inside files located in the ``PyCrust`` directory.
Renamed ``PyFilling.py`` to ``PyFillingApp.py`` and ``PyShell.py`` to
``PyShellApp.py`` to maintain consistency.
Removed the ``__date__`` property from all modules.
Fixed bug in ``introspect.getCallTip()``, reported by Kevin Altis.
0.6.1 (9/19/2001 to 10/12/2001)
-------------------------------
Changed ``Shell.run()`` to always position to the end of existing
text, as suggested by Raul Cota.
Changed ``introspect.getAllAttributeNames()`` to break circular
references in ``object.__class__``, which occurs in Zope/ZODB
extension classes.
Changed ``filling.FillingTree.getChildren()`` to introspect extension
classes.
Fixed minor bugs in ``introspect.getCallTip()`` that were interfering
with call tips for Zope/ZODB extension class methods.
In preparation for wxPython 2.3.2, added code to fix a font sizing
problem. Versions of wxPython prior to 2.3.2 had a sizing bug on Win
platform where the font was 2 points larger than what was specified.
Added a hack to ``introspect.getAllAttributeNames()`` to "wake up"
ZODB objects that are asleep - in a "ghost" state. Otherwise it
returns incomplete info.
0.6 (8/21/2001 to 9/12/2001)
----------------------------
Added ``PyFilling.py`` and ``filling.py``.
``PyShell.py`` and ``PyFilling.py`` can now be run standalone, as well
as ``PyCrust.py``.
Added ``crust.py`` and moved some code from ``PyCrust.py`` to it.
Added command history retrieval features submitted by Richie Hindle.
Changed ``shell.write()`` to replace line endings with OS-specific
endings. Changed ``shell.py`` and ``interpreter.py`` to use
``os.linesep`` in strings having hardcoded line endings.
Added ``shell.redirectStdin()``, ``shell.redirectStdout()`` and
``shell.redirectStderr()`` to allow the surrounding app to toggle
requests that the specified ``sys.std*`` be redirected to the shell.
These can also be run from within the shell itself, of course.
The shell now adds the current working directory "." to the search
path::
sys.path.insert(0, os.curdir)
Added support for distutils installations.
0.5.4 (8/17/2001 to 8/20/2001)
------------------------------
Changed default font size under Linux to::
'size' : 12,
'lnsize' : 10,
Changed ``Shell`` to expect a parameter referencing an Interpreter
class, rather than an intepreter instance, to facilitate subclassing
of Interpreter, which effectively broke when the Editor class was
eliminated.
Fixed ``PyCrustAlaCarte.py``, which had been broken by previous
changes.
Created ``InterpreterAlaCarte`` class as an example for use in the
demo.
Split ``PyCrust.py`` into ``PyCrust.py`` and ``PyShell.py`` in
anticipation of ``PyFilling.py``.
0.5.3 (8/16/2001)
-----------------
Added patch to ``PyCrust.py`` to fix wxPython bug::
wxID_SELECTALL = NewId() # This *should* be defined by wxPython.
0.5.2 (8/14/2001 to 8/15/2001)
------------------------------
Shortened module names by dropping "PyCrust" as a prefix.
Changed ``version`` to ``VERSION`` in ``version`` module.
Added Options menu to PyCrust application.
Eliminated the Editor class (and editor module) by merging with Shell.
This means that Shell "is a" wxStyledTextCtrl rather than "has a".
There just wasn't enough non-gui code to justify the separation.
Plus, Shell will be much easier for gui toolkits/designers to deal
with now.
0.5.1 (8/10/2001 to 8/14/2001)
------------------------------
Added ``introspect`` module.
Moved some functionality from ``PyCrustInterp`` to ``introspect``.
Changed ``introspect.getRoot()`` to no longer remove whitespace from
the command. This was a remnant of a previous approach that, when
left as part of the current approach, turned out to be a really bad
thing.
Changed ``introspect.getRoot()`` to allow commands of ``''``, ``""``,
``""""""``, ``[]``, ``()``, and ``{}`` to pass through. This allows
you to type them, followed by a dot, and get autocomplete options on
them.
Changed ``introspect.getRoot()`` to identify some situations where
strings shouldn't be considered roots. For example::
>>> import PyCrust # To illustrate the potential problem.
>>> len('PyCrust.py')
Typing the dot at the end of "PyCrust" in the second line above should
NOT result in an autocompletion list because "PyCrust" is part of a
string in this context, not a reference to the PyCrust module object.
Similar reasoning applies to call tips. For example::
>>> len('dir(')
Typing the left paren at the end of "dir" should NOT result in a call
tip.
Both features now behave properly in the examples given. However,
there is still the case where whitespace precedes the potential root
and that is NOT handled properly. For example::
>>> len('this is a dir(')
and::
>>> len('This is PyCrust.py')
More code needs to be written to handle more complex situations.
Added ``locals=None`` parameter to ``Shell.__init__()``.
Added support for magic attribute retrieval. Users can change this
with::
>>> shell.editor.autoCompleteIncludeMagic = 0
Added the ability to set filters on auto completion to exclude
attributes prefixed with a single or double underscore. Users can
exclude one or the other or both with::
>>> shell.editor.autoCompleteExcludeSingle = 1
>>> shell.editor.autoCompleteExcludeDouble = 1
0.5 (8/8/2001)
--------------
Mostly just a final version change before creating a release.
0.4 (8/4/2001 to 8/7/2001)
--------------------------
Changed version/revision handling.
Fixed bugs.
0.3 (8/2/2001 to 8/3/2001)
--------------------------
Removed lots of cruft.
Added lots of docstrings.
Imported to CVS repository at SourceForge.
Added call tips.
0.2 (7/30/2001 to 8/2/2001)
---------------------------
Renamed several files.
Added command autocompletion.
Added menus to PyCrust.py: File, Edit and Help.
Added sample applications: ``PyCrustAlaCarte.py``,
``PyCrustAlaMode.py``, and ``PyCrustMinimus.py``.
0.1 (7/1/2001 to 7/19/2001)
---------------------------
Added basic syntax coloring much like Boa.
Added read-only logging much like IDLE.
Can retrieve a previous command by putting the cursor back on that
line and hitting enter.
Stdin and raw_input operate properly so you can now do ``help()`` and
``license()`` without hanging.
Redefined "quit", "exit", and "close" to display a better-than-nothing
response.
Home key honors the prompt.
Created SourceForge account, but nothing was posted.
In the beginning, there was pie... (7/1/2001)
---------------------------------------------
Blame it all on IDLE, Boa and PythonWin. I was using all three, got
frustrated with their dissimilarities, and began to let everyone know
how I felt. At the same time, Scintilla looked like an interesting
tool to build a shell around. And while I didn't receive much in the
way of positive feedback, let alone encouragement, I just couldn't let
go of the idea of a Scintilla-based Python shell. Then the PythonCard
project got to the point where they were talking about including a
shell in their development environment. That was all the incentive I
needed. PyCrust had to happen...

BIN
wxPython/wx/py/Py.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

View File

@@ -0,0 +1,36 @@
"""PyAlaCarte is a simple programmer's editor."""
__author__ = "Patrick K. O'Brien <pobrien@orbtech.com>"
__cvsid__ = "$Id$"
__revision__ = "$Revision$"[11:-2]
import wx
from wx import py
import os
import sys
class App(wx.App):
"""PyAlaCarte standalone application."""
def __init__(self, filename=None):
self.filename = filename
wx.App.__init__(self, redirect=False)
def OnInit(self):
wx.InitAllImageHandlers()
self.frame = py.editor.EditorFrame(filename=self.filename)
self.frame.Show()
self.SetTopWindow(self.frame)
return True
def main(filename=None):
if not filename and len(sys.argv) > 1:
filename = sys.argv[1]
if filename:
filename = os.path.realpath(filename)
app = App(filename)
app.MainLoop()
if __name__ == '__main__':
main()

View File

@@ -0,0 +1,36 @@
"""PyAlaMode is a programmer's editor."""
__author__ = "Patrick K. O'Brien <pobrien@orbtech.com>"
__cvsid__ = "$Id$"
__revision__ = "$Revision$"[11:-2]
import wx
from wx import py
import os
import sys
class App(wx.App):
"""PyAlaMode standalone application."""
def __init__(self, filename=None):
self.filename = filename
wx.App.__init__(self, redirect=False)
def OnInit(self):
wx.InitAllImageHandlers()
self.frame = py.editor.EditorNotebookFrame(filename=self.filename)
self.frame.Show()
self.SetTopWindow(self.frame)
return True
def main(filename=None):
if not filename and len(sys.argv) > 1:
filename = sys.argv[1]
if filename:
filename = os.path.realpath(filename)
app = App(filename)
app.MainLoop()
if __name__ == '__main__':
main()

35
wxPython/wx/py/PyAlaModeTest.py Executable file
View File

@@ -0,0 +1,35 @@
"""PyAlaModeTest is a programmer's editor."""
__author__ = "Patrick K. O'Brien <pobrien@orbtech.com>"
__cvsid__ = "$Id$"
__revision__ = "$Revision$"[11:-2]
import wx
from wx import py
import os
import sys
class App(wx.App):
"""PyAlaModeTest standalone application."""
def __init__(self, filename=None):
self.filename = filename
wx.App.__init__(self, redirect=False)
def OnInit(self):
wx.InitAllImageHandlers()
self.frame = py.editor.EditorShellNotebookFrame(filename=self.filename)
self.frame.Show()
self.SetTopWindow(self.frame)
return True
def main(filename=None):
app = App(filename)
app.MainLoop()
if __name__ == '__main__':
filename = None
if len(sys.argv) > 1:
filename = os.path.realpath(sys.argv[1])
main(filename)

BIN
wxPython/wx/py/PyCrust.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

70
wxPython/wx/py/PyCrust.py Normal file
View File

@@ -0,0 +1,70 @@
"""PyCrust is a python shell and namespace browser application."""
# The next two lines, and the other code below that makes use of
# ``__main__`` and ``original``, serve the purpose of cleaning up the
# main namespace to look as much as possible like the regular Python
# shell environment.
import __main__
original = __main__.__dict__.keys()
__author__ = "Patrick K. O'Brien <pobrien@orbtech.com>"
__cvsid__ = "$Id$"
__revision__ = "$Revision$"[11:-2]
import wx
class App(wx.App):
"""PyCrust standalone application."""
def OnInit(self):
import wx
from wx import py
wx.InitAllImageHandlers()
self.frame = py.crust.CrustFrame()
self.frame.SetSize((800, 600))
self.frame.Show()
self.SetTopWindow(self.frame)
return True
'''
The main() function needs to handle being imported, such as with the
pycrust script that wxPython installs:
#!/usr/bin/env python
from wx.py.PyCrust import main
main()
'''
def main():
"""The main function for the PyCrust program."""
# Cleanup the main namespace, leaving the App class.
import __main__
md = __main__.__dict__
keepers = original
keepers.append('App')
for key in md.keys():
if key not in keepers:
del md[key]
# Create an application instance.
app = App(0)
# Mimic the contents of the standard Python shell's sys.path.
import sys
if sys.path[0]:
sys.path[0] = ''
# Add the application object to the sys module's namespace.
# This allows a shell user to do:
# >>> import sys
# >>> sys.app.whatever
sys.app = app
del sys
# Cleanup the main namespace some more.
if md.has_key('App') and md['App'] is App:
del md['App']
if md.has_key('__main__') and md['__main__'] is __main__:
del md['__main__']
# Start the wxPython event loop.
app.MainLoop()
if __name__ == '__main__':
main()

Binary file not shown.

After

Width:  |  Height:  |  Size: 706 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -0,0 +1,35 @@
"""PyFilling is a python namespace inspection application."""
__author__ = "Patrick K. O'Brien <pobrien@orbtech.com>"
__cvsid__ = "$Id$"
__revision__ = "$Revision$"[11:-2]
# We use this object to get more introspection when run standalone.
app = None
import filling
# These are imported just to have something interesting to inspect.
import crust
import interpreter
import introspect
import pseudo
import shell
import sys
import wx
class App(filling.App):
def OnInit(self):
filling.App.OnInit(self)
self.root = self.fillingFrame.filling.tree.root
return True
def main():
"""Create and run the application."""
global app
app = App(0)
app.fillingFrame.filling.tree.Expand(app.root)
app.MainLoop()
if __name__ == '__main__':
main()

71
wxPython/wx/py/PyShell.py Normal file
View File

@@ -0,0 +1,71 @@
"""PyShell is a python shell application."""
# The next two lines, and the other code below that makes use of
# ``__main__`` and ``original``, serve the purpose of cleaning up the
# main namespace to look as much as possible like the regular Python
# shell environment.
import __main__
original = __main__.__dict__.keys()
__author__ = "Patrick K. O'Brien <pobrien@orbtech.com>"
__cvsid__ = "$Id$"
__revision__ = "$Revision$"[11:-2]
import wx
class App(wx.App):
"""PyShell standalone application."""
def OnInit(self):
import wx
from wx import py
wx.InitAllImageHandlers()
self.frame = py.shell.ShellFrame()
self.frame.SetSize((750, 525))
self.frame.Show()
self.SetTopWindow(self.frame)
self.frame.shell.SetFocus()
return True
'''
The main() function needs to handle being imported, such as with the
pyshell script that wxPython installs:
#!/usr/bin/env python
from wx.py.PyShell import main
main()
'''
def main():
"""The main function for the PyShell program."""
# Cleanup the main namespace, leaving the App class.
import __main__
md = __main__.__dict__
keepers = original
keepers.append('App')
for key in md.keys():
if key not in keepers:
del md[key]
# Create an application instance.
app = App(0)
# Cleanup the main namespace some more.
if md.has_key('App') and md['App'] is App:
del md['App']
if md.has_key('__main__') and md['__main__'] is __main__:
del md['__main__']
# Mimic the contents of the standard Python shell's sys.path.
import sys
if sys.path[0]:
sys.path[0] = ''
# Add the application object to the sys module's namespace.
# This allows a shell user to do:
# >>> import sys
# >>> sys.app.whatever
sys.app = app
del sys
# Start the wxPython event loop.
app.MainLoop()
if __name__ == '__main__':
main()

48
wxPython/wx/py/PyWrap.py Normal file
View File

@@ -0,0 +1,48 @@
"""PyWrap is a command line utility that runs a wxPython program with
additional runtime-tools, such as PyCrust."""
__author__ = "Patrick K. O'Brien <pobrien@orbtech.com>"
__cvsid__ = "$Id$"
__revision__ = "$Revision$"[11:-2]
import wx
from wx import py
import os
import sys
def wrap(app):
wx.InitAllImageHandlers()
frame = py.crust.CrustFrame()
frame.SetSize((750, 525))
frame.Show(True)
frame.shell.interp.locals['app'] = app
app.MainLoop()
def main(modulename=None):
sys.path.insert(0, os.curdir)
if not modulename:
if len(sys.argv) < 2:
print "Please specify a module name."
raise SystemExit
modulename = sys.argv[1]
if modulename.endswith('.py'):
modulename = modulename[:-3]
module = __import__(modulename)
# Find the App class.
App = None
d = module.__dict__
for item in d.keys():
try:
if issubclass(d[item], wx.App):
App = d[item]
except (NameError, TypeError):
pass
if App is None:
print "No App class was found."
raise SystemExit
app = App()
wrap(app)
if __name__ == '__main__':
main()

83
wxPython/wx/py/README.txt Normal file
View File

@@ -0,0 +1,83 @@
=====================================
PyCrust - The Flakiest Python Shell
=====================================
Half-baked by Patrick K. O'Brien (pobrien@orbtech.com)
Orbtech - "Your source for Python programming expertise."
Sample all our half-baked Python goods at www.orbtech.com.
What is PyCrust?
----------------
PyCrust is an interactive Python environment written in Python.
PyCrust components can run standalone or be integrated into other
development environments and/or other Python applications.
PyCrust comes with an interactive Python shell (PyShell), an
interactive namespace/object tree control (PyFilling) and an
integrated, split-window combination of the two (PyCrust).
What is PyCrust good for?
-------------------------
Have you ever tried to bake a pie without one? Well, you shouldn't
build a Python program without a PyCrust either.
What else do I need to use PyCrust?
-----------------------------------
PyCrust requires Python 2.2 or later, and wxPython 2.4 or later.
PyCrust uses wxPython and the Scintilla wrapper (wxStyledTextCtrl).
Python is available at http://www.python.org/. wxPython is available
at http://www.wxpython.org/.
Where can I get the latest version of PyCrust?
----------------------------------------------
The latest production version ships with wxPython. The latest
developer version is available in the wxWindows CVS at:
http://cvs.wxwindows.org/viewcvs.cgi/
Where is the PyCrust project hosted?
------------------------------------
The old answer was "At SourceForge, of course." The SourceForge
summary page is still available at:
http://sourceforge.net/projects/pycrust/
The new answer is that there is no longer a need for a separate
project. Simply install wxPython and you'll have everything you need.
I found a bug in PyCrust, what do I do with it?
-----------------------------------------------
You can send it to me at pobrien@orbtech.com.
I want a new feature added to PyCrust. Will you do it?
------------------------------------------------------
Flattery and money will get you anything. Short of that, you can send
me a request and I'll see what I can do.
Does PyCrust have a mailing list full of wonderful people?
----------------------------------------------------------
As a matter of fact, we do. Join the PyCrust mailing lists at:
http://sourceforge.net/mail/?group_id=31263
What is the CVS information for this README file?
-------------------------------------------------
$Date$
$Revision$
$Id$

View File

@@ -0,0 +1,20 @@
"""The py package, formerly the PyCrust package."""
__author__ = "Patrick K. O'Brien <pobrien@orbtech.com>"
__cvsid__ = "$Id$"
__revision__ = "$Revision$"[11:-2]
import buffer
import crust
import dispatcher
import document
import editor
import editwindow
import filling
import frame
import images
import interpreter
import introspect
import pseudo
import shell
import version

138
wxPython/wx/py/buffer.py Normal file
View File

@@ -0,0 +1,138 @@
"""Buffer class."""
__author__ = "Patrick K. O'Brien <pobrien@orbtech.com>"
__cvsid__ = "$Id$"
__revision__ = "$Revision$"[11:-2]
from interpreter import Interpreter
import imp
import os
import sys
import document
class Buffer:
"""Buffer class."""
id = 0
def __init__(self, filename=None):
"""Create a Buffer instance."""
Buffer.id += 1
self.id = Buffer.id
self.interp = Interpreter(locals={})
self.name = ''
self.editors = {}
self.editor = None
self.modules = sys.modules.keys()
self.syspath = sys.path[:]
while True:
try:
self.syspath.remove('')
except ValueError:
break
while True:
try:
self.syspath.remove('.')
except ValueError:
break
self.open(filename)
def addEditor(self, editor):
"""Add an editor."""
self.editor = editor
self.editors[editor.id] = editor
def hasChanged(self):
"""Return True if text in editor has changed since last save."""
if self.editor:
return self.editor.hasChanged()
else:
return False
def new(self, filepath):
"""New empty buffer."""
if not filepath:
return
if os.path.exists(filepath):
self.confirmed = self.overwriteConfirm(filepath)
else:
self.confirmed = True
def open(self, filename):
"""Open file into buffer."""
self.doc = document.Document(filename)
self.name = self.doc.filename or ('Untitled:' + str(self.id))
self.modulename = self.doc.filebase
# XXX This should really make sure filedir is first item in syspath.
# XXX Or maybe this should be moved to the update namespace method.
if self.doc.filedir and self.doc.filedir not in self.syspath:
# To create the proper context for updateNamespace.
self.syspath.insert(0, self.doc.filedir)
if self.doc.filepath and os.path.exists(self.doc.filepath):
self.confirmed = True
if self.editor:
text = self.doc.read()
self.editor._setBuffer(buffer=self, text=text)
def overwriteConfirm(filepath):
"""Confirm overwriting an existing file."""
return False
def save(self):
"""Save buffer."""
filepath = self.doc.filepath
if not filepath:
return # XXX Get filename
if not os.path.exists(filepath):
self.confirmed = True
if not self.confirmed:
self.confirmed = self.overwriteConfirm(filepath)
if self.confirmed:
self.doc.write(self.editor.getText())
if self.editor:
self.editor.setSavePoint()
def saveAs(self, filename):
"""Save buffer."""
self.doc = document.Document(filename)
self.name = self.doc.filename
self.modulename = self.doc.filebase
self.save()
def updateNamespace(self):
"""Update the namespace for autocompletion and calltips.
Return True if updated, False if there was an error."""
if not self.interp or not hasattr(self.editor, 'getText'):
return False
syspath = sys.path
sys.path = self.syspath
text = self.editor.getText()
text = text.replace('\r\n', '\n')
text = text.replace('\r', '\n')
name = self.modulename or self.name
module = imp.new_module(name)
newspace = module.__dict__.copy()
try:
try:
code = compile(text, name, 'exec')
except:
raise
# return False
try:
exec code in newspace
except:
raise
# return False
else:
# No problems, so update the namespace.
self.interp.locals.clear()
self.interp.locals.update(newspace)
return True
finally:
sys.path = syspath
for m in sys.modules.keys():
if m not in self.modules:
del sys.modules[m]

218
wxPython/wx/py/crust.py Normal file
View File

@@ -0,0 +1,218 @@
"""Crust combines the shell and filling into one control."""
__author__ = "Patrick K. O'Brien <pobrien@orbtech.com>"
__cvsid__ = "$Id$"
__revision__ = "$Revision$"[11:-2]
import wx
import os
import pprint
import sys
import dispatcher
import editwindow
from filling import Filling
import frame
from shell import Shell
from version import VERSION
class Crust(wx.SplitterWindow):
"""Crust based on SplitterWindow."""
name = 'Crust'
revision = __revision__
def __init__(self, parent, id=-1, pos=wx.DefaultPosition,
size=wx.DefaultSize, style=wx.SP_3D,
name='Crust Window', rootObject=None, rootLabel=None,
rootIsNamespace=True, intro='', locals=None,
InterpClass=None, *args, **kwds):
"""Create Crust instance."""
wx.SplitterWindow.__init__(self, parent, id, pos, size, style, name)
self.shell = Shell(parent=self, introText=intro,
locals=locals, InterpClass=InterpClass,
*args, **kwds)
self.editor = self.shell
if rootObject is None:
rootObject = self.shell.interp.locals
self.notebook = wx.Notebook(parent=self, id=-1)
self.shell.interp.locals['notebook'] = self.notebook
self.filling = Filling(parent=self.notebook,
rootObject=rootObject,
rootLabel=rootLabel,
rootIsNamespace=rootIsNamespace)
# Add 'filling' to the interpreter's locals.
self.shell.interp.locals['filling'] = self.filling
self.notebook.AddPage(page=self.filling, text='Namespace', select=True)
self.display = Display(parent=self.notebook)
self.notebook.AddPage(page=self.display, text='Display')
# Add 'pp' (pretty print) to the interpreter's locals.
self.shell.interp.locals['pp'] = self.display.setItem
self.calltip = Calltip(parent=self.notebook)
self.notebook.AddPage(page=self.calltip, text='Calltip')
self.sessionlisting = SessionListing(parent=self.notebook)
self.notebook.AddPage(page=self.sessionlisting, text='Session')
self.dispatcherlisting = DispatcherListing(parent=self.notebook)
self.notebook.AddPage(page=self.dispatcherlisting, text='Dispatcher')
## from wxd import wx_
## self.wxdocs = Filling(parent=self.notebook,
## rootObject=wx_,
## rootLabel='wx',
## rootIsNamespace=False,
## static=True)
## self.notebook.AddPage(page=self.wxdocs, text='wxPython Docs')
## from wxd import stc_
## self.stcdocs = Filling(parent=self.notebook,
## rootObject=stc_.StyledTextCtrl,
## rootLabel='StyledTextCtrl',
## rootIsNamespace=False,
## static=True)
## self.notebook.AddPage(page=self.stcdocs, text='StyledTextCtrl Docs')
self.SplitHorizontally(self.shell, self.notebook, 300)
self.SetMinimumPaneSize(1)
class Display(editwindow.EditWindow):
"""STC used to display an object using Pretty Print."""
def __init__(self, parent, id=-1, pos=wx.DefaultPosition,
size=wx.DefaultSize,
style=wx.CLIP_CHILDREN | wx.SUNKEN_BORDER,
static=False):
"""Create Display instance."""
editwindow.EditWindow.__init__(self, parent, id, pos, size, style)
# Configure various defaults and user preferences.
self.SetReadOnly(True)
self.SetWrapMode(False)
if not static:
dispatcher.connect(receiver=self.push, signal='Interpreter.push')
def push(self, command, more):
"""Receiver for Interpreter.push signal."""
self.Refresh()
def Refresh(self):
if not hasattr(self, "item"):
return
self.SetReadOnly(False)
text = pprint.pformat(self.item)
self.SetText(text)
self.SetReadOnly(True)
def setItem(self, item):
"""Set item to pretty print in the notebook Display tab."""
self.item = item
self.Refresh()
class Calltip(wx.TextCtrl):
"""Text control containing the most recent shell calltip."""
def __init__(self, parent=None, id=-1):
style = (wx.TE_MULTILINE | wx.TE_READONLY | wx.TE_RICH2)
wx.TextCtrl.__init__(self, parent, id, style=style)
self.SetBackgroundColour(wx.Colour(255, 255, 232))
dispatcher.connect(receiver=self.display, signal='Shell.calltip')
def display(self, calltip):
"""Receiver for Shell.calltip signal."""
## self.SetValue(calltip) # Caused refresh problem on Windows.
self.Clear()
self.AppendText(calltip)
class SessionListing(wx.TextCtrl):
"""Text control containing all commands for session."""
def __init__(self, parent=None, id=-1):
style = (wx.TE_MULTILINE | wx.TE_READONLY |
wx.TE_RICH2 | wx.TE_DONTWRAP)
wx.TextCtrl.__init__(self, parent, id, style=style)
dispatcher.connect(receiver=self.push, signal='Interpreter.push')
def push(self, command, more):
"""Receiver for Interpreter.push signal."""
if command and not more:
self.SetInsertionPointEnd()
start, end = self.GetSelection()
if start != end:
self.SetSelection(0, 0)
self.AppendText(command + '\n')
class DispatcherListing(wx.TextCtrl):
"""Text control containing all dispatches for session."""
def __init__(self, parent=None, id=-1):
style = (wx.TE_MULTILINE | wx.TE_READONLY |
wx.TE_RICH2 | wx.TE_DONTWRAP)
wx.TextCtrl.__init__(self, parent, id, style=style)
dispatcher.connect(receiver=self.spy)
def spy(self, signal, sender):
"""Receiver for Any signal from Any sender."""
text = '%r from %s' % (signal, sender)
self.SetInsertionPointEnd()
start, end = self.GetSelection()
if start != end:
self.SetSelection(0, 0)
self.AppendText(text + '\n')
class CrustFrame(frame.Frame):
"""Frame containing all the PyCrust components."""
name = 'CrustFrame'
revision = __revision__
def __init__(self, parent=None, id=-1, title='PyCrust',
pos=wx.DefaultPosition, size=wx.DefaultSize,
style=wx.DEFAULT_FRAME_STYLE,
rootObject=None, rootLabel=None, rootIsNamespace=True,
locals=None, InterpClass=None, *args, **kwds):
"""Create CrustFrame instance."""
frame.Frame.__init__(self, parent, id, title, pos, size, style)
intro = 'PyCrust %s - The Flakiest Python Shell' % VERSION
intro += '\nSponsored by Orbtech - '
intro += 'Your source for Python programming expertise.'
self.SetStatusText(intro.replace('\n', ', '))
self.crust = Crust(parent=self, intro=intro,
rootObject=rootObject,
rootLabel=rootLabel,
rootIsNamespace=rootIsNamespace,
locals=locals,
InterpClass=InterpClass, *args, **kwds)
self.shell = self.crust.shell
# Override the filling so that status messages go to the status bar.
self.crust.filling.tree.setStatusText = self.SetStatusText
# Override the shell so that status messages go to the status bar.
self.shell.setStatusText = self.SetStatusText
# Fix a problem with the sash shrinking to nothing.
self.crust.filling.SetSashPosition(200)
# Set focus to the shell editor.
self.shell.SetFocus()
def OnClose(self, event):
"""Event handler for closing."""
self.crust.shell.destroy()
self.Destroy()
def OnAbout(self, event):
"""Display an About window."""
title = 'About PyCrust'
text = 'PyCrust %s\n\n' % VERSION + \
'Yet another Python shell, only flakier.\n\n' + \
'Half-baked by Patrick K. O\'Brien,\n' + \
'the other half is still in the oven.\n\n' + \
'Shell Revision: %s\n' % self.shell.revision + \
'Interpreter Revision: %s\n\n' % self.shell.interp.revision + \
'Platform: %s\n' % sys.platform + \
'Python Version: %s\n' % sys.version.split()[0] + \
'wxPython Version: %s\n' % wx.VERSION_STRING + \
('\t(%s)\n' % ", ".join(wx.PlatformInfo[1:]))
dialog = wx.MessageDialog(self, text, title,
wx.OK | wx.ICON_INFORMATION)
dialog.ShowModal()
dialog.Destroy()

View File

@@ -0,0 +1,260 @@
"""Provides global signal dispatching services."""
__author__ = "Patrick K. O'Brien <pobrien@orbtech.com>"
__cvsid__ = "$Id$"
__revision__ = "$Revision$"[11:-2]
import exceptions
import types
import weakref
class DispatcherError(exceptions.Exception):
def __init__(self, args=None):
self.args = args
class Parameter:
"""Used to represent default parameter values."""
def __repr__(self):
return self.__class__.__name__
class Any(Parameter): pass
Any = Any()
class Anonymous(Parameter): pass
Anonymous = Anonymous()
connections = {}
senders = {}
_boundMethods = weakref.WeakKeyDictionary()
def connect(receiver, signal=Any, sender=Any, weak=True):
"""Connect receiver to sender for signal.
If sender is Any, receiver will receive signal from any sender.
If signal is Any, receiver will receive any signal from sender.
If sender is None, receiver will receive signal from Anonymous.
If signal is Any and sender is None, receiver will receive any
signal from Anonymous.
If signal is Any and sender is Any, receiver will receive any
signal from any sender.
If weak is true, weak references will be used."""
if signal is None:
raise DispatcherError, 'signal cannot be None'
if weak:
receiver = safeRef(receiver)
senderkey = id(sender)
signals = {}
if connections.has_key(senderkey):
signals = connections[senderkey]
else:
connections[senderkey] = signals
# Keep track of senders for cleanup.
if sender not in (None, Any):
def remove(object, senderkey=senderkey):
_removeSender(senderkey=senderkey)
# Skip objects that can not be weakly referenced, which means
# they won't be automatically cleaned up, but that's too bad.
try:
weakSender = weakref.ref(sender, remove)
senders[senderkey] = weakSender
except:
pass
receivers = []
if signals.has_key(signal):
receivers = signals[signal]
else:
signals[signal] = receivers
try:
receivers.remove(receiver)
except ValueError:
pass
receivers.append(receiver)
def disconnect(receiver, signal=Any, sender=Any, weak=True):
"""Disconnect receiver from sender for signal.
Disconnecting is not required. The use of disconnect is the same as for
connect, only in reverse. Think of it as undoing a previous connection."""
if signal is None:
raise DispatcherError, 'signal cannot be None'
if weak:
receiver = safeRef(receiver)
senderkey = id(sender)
try:
receivers = connections[senderkey][signal]
except KeyError:
raise DispatcherError, \
'No receivers for signal %r from sender %s' % (signal, sender)
try:
receivers.remove(receiver)
except ValueError:
raise DispatcherError, \
'No connection to receiver %s for signal %r from sender %s' % \
(receiver, signal, sender)
_cleanupConnections(senderkey, signal)
def send(signal, sender=Anonymous, **kwds):
"""Send signal from sender to all connected receivers.
Return a list of tuple pairs [(receiver, response), ... ].
If sender is not specified, signal is sent anonymously."""
senderkey = id(sender)
anykey = id(Any)
# Get receivers that receive *this* signal from *this* sender.
receivers = []
try:
receivers.extend(connections[senderkey][signal])
except KeyError:
pass
# Add receivers that receive *any* signal from *this* sender.
anyreceivers = []
try:
anyreceivers = connections[senderkey][Any]
except KeyError:
pass
for receiver in anyreceivers:
if receivers.count(receiver) == 0:
receivers.append(receiver)
# Add receivers that receive *this* signal from *any* sender.
anyreceivers = []
try:
anyreceivers = connections[anykey][signal]
except KeyError:
pass
for receiver in anyreceivers:
if receivers.count(receiver) == 0:
receivers.append(receiver)
# Add receivers that receive *any* signal from *any* sender.
anyreceivers = []
try:
anyreceivers = connections[anykey][Any]
except KeyError:
pass
for receiver in anyreceivers:
if receivers.count(receiver) == 0:
receivers.append(receiver)
# Call each receiver with whatever arguments it can accept.
# Return a list of tuple pairs [(receiver, response), ... ].
responses = []
for receiver in receivers:
if type(receiver) is weakref.ReferenceType \
or isinstance(receiver, BoundMethodWeakref):
# Dereference the weak reference.
receiver = receiver()
if receiver is None:
# This receiver is dead, so skip it.
continue
response = _call(receiver, signal=signal, sender=sender, **kwds)
responses += [(receiver, response)]
return responses
def _call(receiver, **kwds):
"""Call receiver with only arguments it can accept."""
## if type(receiver) is types.InstanceType:
if hasattr(receiver, '__call__') and \
(hasattr(receiver.__call__, 'im_func') or hasattr(receiver.__call__, 'im_code')):
# receiver is a class instance; assume it is callable.
# Reassign receiver to the actual method that will be called.
receiver = receiver.__call__
if hasattr(receiver, 'im_func'):
# receiver is a method. Drop the first argument, usually 'self'.
fc = receiver.im_func.func_code
acceptable = fc.co_varnames[1:fc.co_argcount]
elif hasattr(receiver, 'func_code'):
# receiver is a function.
fc = receiver.func_code
acceptable = fc.co_varnames[0:fc.co_argcount]
else:
raise DispatcherError, 'Unknown receiver %s of type %s' % (receiver, type(receiver))
if not (fc.co_flags & 8):
# fc does not have a **kwds type parameter, therefore
# remove unacceptable arguments.
for arg in kwds.keys():
if arg not in acceptable:
del kwds[arg]
return receiver(**kwds)
def safeRef(object):
"""Return a *safe* weak reference to a callable object."""
if hasattr(object, 'im_self'):
if object.im_self is not None:
# Turn a bound method into a BoundMethodWeakref instance.
# Keep track of these instances for lookup by disconnect().
selfkey = object.im_self
funckey = object.im_func
if not _boundMethods.has_key(selfkey):
_boundMethods[selfkey] = weakref.WeakKeyDictionary()
if not _boundMethods[selfkey].has_key(funckey):
_boundMethods[selfkey][funckey] = \
BoundMethodWeakref(boundMethod=object)
return _boundMethods[selfkey][funckey]
return weakref.ref(object, _removeReceiver)
class BoundMethodWeakref:
"""BoundMethodWeakref class."""
def __init__(self, boundMethod):
"""Return a weak-reference-like instance for a bound method."""
self.isDead = 0
def remove(object, self=self):
"""Set self.isDead to true when method or instance is destroyed."""
self.isDead = 1
_removeReceiver(receiver=self)
self.weakSelf = weakref.ref(boundMethod.im_self, remove)
self.weakFunc = weakref.ref(boundMethod.im_func, remove)
def __repr__(self):
"""Return the closest representation."""
return '<bound method weakref for %s.%s>' % (self.weakSelf, self.weakFunc)
def __call__(self):
"""Return a strong reference to the bound method."""
if self.isDead:
return None
else:
object = self.weakSelf()
method = self.weakFunc().__name__
try: # wxPython hack to handle wxDead objects.
return getattr(object, method)
except AttributeError:
## _removeReceiver(receiver=self)
return None
def _removeReceiver(receiver):
"""Remove receiver from connections."""
for senderkey in connections.keys():
for signal in connections[senderkey].keys():
receivers = connections[senderkey][signal]
try:
receivers.remove(receiver)
except:
pass
_cleanupConnections(senderkey, signal)
def _cleanupConnections(senderkey, signal):
"""Delete any empty signals for senderkey. Delete senderkey if empty."""
receivers = connections[senderkey][signal]
if not receivers:
# No more connected receivers. Therefore, remove the signal.
signals = connections[senderkey]
del signals[signal]
if not signals:
# No more signal connections. Therefore, remove the sender.
_removeSender(senderkey)
def _removeSender(senderkey):
"""Remove senderkey from connections."""
del connections[senderkey]
# Senderkey will only be in senders dictionary if sender
# could be weakly referenced.
try:
del senders[senderkey]
except:
pass

View File

@@ -0,0 +1,43 @@
"""Document class."""
__author__ = "Patrick K. O'Brien <pobrien@orbtech.com>"
__cvsid__ = "$Id$"
__revision__ = "$Revision$"[11:-2]
import os
class Document:
"""Document class."""
def __init__(self, filename=None):
"""Create a Document instance."""
self.filename = filename
self.filepath = None
self.filedir = None
self.filebase = None
self.fileext = None
if self.filename:
self.filepath = os.path.realpath(self.filename)
self.filedir, self.filename = os.path.split(self.filepath)
self.filebase, self.fileext = os.path.splitext(self.filename)
def read(self):
"""Return contents of file."""
if self.filepath and os.path.exists(self.filepath):
f = file(self.filepath, 'rb')
try:
return f.read()
finally:
f.close()
else:
return ''
def write(self, text):
"""Write text to file."""
try:
f = file(self.filepath, 'wb')
f.write(text)
finally:
if f:
f.close()

843
wxPython/wx/py/editor.py Normal file
View File

@@ -0,0 +1,843 @@
"""PyAlaCarte and PyAlaMode editors."""
__author__ = "Patrick K. O'Brien <pobrien@orbtech.com>"
__cvsid__ = "$Id$"
__revision__ = "$Revision$"[11:-2]
import wx
from buffer import Buffer
import crust
import dispatcher
import editwindow
import frame
from shell import Shell
import version
class EditorFrame(frame.Frame):
"""Frame containing one editor."""
def __init__(self, parent=None, id=-1, title='PyAlaCarte',
pos=wx.DefaultPosition, size=(800, 600),
style=wx.DEFAULT_FRAME_STYLE | wx.NO_FULL_REPAINT_ON_RESIZE,
filename=None):
"""Create EditorFrame instance."""
frame.Frame.__init__(self, parent, id, title, pos, size, style)
self.buffers = {}
self.buffer = None # Current buffer.
self.editor = None
self._defaultText = title + ' - the tastiest Python editor.'
self._statusText = self._defaultText
self.SetStatusText(self._statusText)
wx.EVT_IDLE(self, self.OnIdle)
self._setup()
if filename:
self.bufferCreate(filename)
def _setup(self):
"""Setup prior to first buffer creation.
Useful for subclasses."""
pass
def setEditor(self, editor):
self.editor = editor
self.buffer = self.editor.buffer
self.buffers[self.buffer.id] = self.buffer
def OnAbout(self, event):
"""Display an About window."""
title = 'About PyAlaCarte'
text = 'Another fine, flaky program.'
dialog = wx.MessageDialog(self, text, title,
wx.OK | wx.ICON_INFORMATION)
dialog.ShowModal()
dialog.Destroy()
def OnClose(self, event):
"""Event handler for closing."""
for buffer in self.buffers.values():
self.buffer = buffer
if buffer.hasChanged():
cancel = self.bufferSuggestSave()
if cancel and event.CanVeto():
event.Veto()
return
self.Destroy()
def OnIdle(self, event):
"""Event handler for idle time."""
self._updateStatus()
if hasattr(self, 'notebook'):
self._updateTabText()
self._updateTitle()
event.Skip()
def _updateStatus(self):
"""Show current status information."""
if self.editor and hasattr(self.editor, 'getStatus'):
status = self.editor.getStatus()
text = 'File: %s | Line: %d | Column: %d' % status
else:
text = self._defaultText
if text != self._statusText:
self.SetStatusText(text)
self._statusText = text
def _updateTabText(self):
"""Show current buffer information on notebook tab."""
## suffix = ' **'
## notebook = self.notebook
## selection = notebook.GetSelection()
## if selection == -1:
## return
## text = notebook.GetPageText(selection)
## window = notebook.GetPage(selection)
## if window.editor and window.editor.buffer.hasChanged():
## if text.endswith(suffix):
## pass
## else:
## notebook.SetPageText(selection, text + suffix)
## else:
## if text.endswith(suffix):
## notebook.SetPageText(selection, text[:len(suffix)])
def _updateTitle(self):
"""Show current title information."""
title = self.GetTitle()
if self.bufferHasChanged():
if title.startswith('* '):
pass
else:
self.SetTitle('* ' + title)
else:
if title.startswith('* '):
self.SetTitle(title[2:])
def hasBuffer(self):
"""Return True if there is a current buffer."""
if self.buffer:
return True
else:
return False
def bufferClose(self):
"""Close buffer."""
if self.bufferHasChanged():
cancel = self.bufferSuggestSave()
if cancel:
return cancel
self.bufferDestroy()
cancel = False
return cancel
def bufferCreate(self, filename=None):
"""Create new buffer."""
self.bufferDestroy()
buffer = Buffer()
self.panel = panel = wx.Panel(parent=self, id=-1)
wx.EVT_ERASE_BACKGROUND(panel, lambda x: x)
editor = Editor(parent=panel)
panel.editor = editor
sizer = wx.BoxSizer(wx.VERTICAL)
sizer.Add(editor.window, 1, wx.EXPAND)
panel.SetSizer(sizer)
panel.SetAutoLayout(True)
sizer.Layout()
buffer.addEditor(editor)
buffer.open(filename)
self.setEditor(editor)
self.editor.setFocus()
self.SendSizeEvent()
def bufferDestroy(self):
"""Destroy the current buffer."""
if self.buffer:
for editor in self.buffer.editors.values():
editor.destroy()
self.editor = None
del self.buffers[self.buffer.id]
self.buffer = None
self.panel.Destroy()
def bufferHasChanged(self):
"""Return True if buffer has changed since last save."""
if self.buffer:
return self.buffer.hasChanged()
else:
return False
def bufferNew(self):
"""Create new buffer."""
if self.bufferHasChanged():
cancel = self.bufferSuggestSave()
if cancel:
return cancel
self.bufferCreate()
cancel = False
return cancel
def bufferOpen(self):
"""Open file in buffer."""
if self.bufferHasChanged():
cancel = self.bufferSuggestSave()
if cancel:
return cancel
filedir = ''
if self.buffer and self.buffer.doc.filedir:
filedir = self.buffer.doc.filedir
result = openSingle(directory=filedir)
if result.path:
self.bufferCreate(result.path)
cancel = False
return cancel
## def bufferPrint(self):
## """Print buffer."""
## pass
## def bufferRevert(self):
## """Revert buffer to version of file on disk."""
## pass
def bufferSave(self):
"""Save buffer to its file."""
if self.buffer.doc.filepath:
self.buffer.save()
cancel = False
else:
cancel = self.bufferSaveAs()
return cancel
def bufferSaveAs(self):
"""Save buffer to a new filename."""
if self.bufferHasChanged() and self.buffer.doc.filepath:
cancel = self.bufferSuggestSave()
if cancel:
return cancel
filedir = ''
if self.buffer and self.buffer.doc.filedir:
filedir = self.buffer.doc.filedir
result = saveSingle(directory=filedir)
if result.path:
self.buffer.saveAs(result.path)
cancel = False
else:
cancel = True
return cancel
def bufferSuggestSave(self):
"""Suggest saving changes. Return True if user selected Cancel."""
result = messageDialog(parent=None,
message='%s has changed.\n'
'Would you like to save it first'
'?' % self.buffer.name,
title='Save current file?')
if result.positive:
cancel = self.bufferSave()
else:
cancel = result.text == 'Cancel'
return cancel
def updateNamespace(self):
"""Update the buffer namespace for autocompletion and calltips."""
if self.buffer.updateNamespace():
self.SetStatusText('Namespace updated')
else:
self.SetStatusText('Error executing, unable to update namespace')
class EditorNotebookFrame(EditorFrame):
"""Frame containing one or more editors in a notebook."""
def __init__(self, parent=None, id=-1, title='PyAlaMode',
pos=wx.DefaultPosition, size=(800, 600),
style=wx.DEFAULT_FRAME_STYLE | wx.NO_FULL_REPAINT_ON_RESIZE,
filename=None):
"""Create EditorNotebookFrame instance."""
self.notebook = None
EditorFrame.__init__(self, parent, id, title, pos,
size, style, filename)
if self.notebook:
dispatcher.connect(receiver=self._editorChange,
signal='EditorChange', sender=self.notebook)
def _setup(self):
"""Setup prior to first buffer creation.
Called automatically by base class during init."""
self.notebook = EditorNotebook(parent=self)
intro = 'Py %s' % version.VERSION
import imp
module = imp.new_module('__main__')
import __builtin__
module.__dict__['__builtins__'] = __builtin__
namespace = module.__dict__.copy()
self.crust = crust.Crust(parent=self.notebook, intro=intro, locals=namespace)
self.shell = self.crust.shell
# Override the filling so that status messages go to the status bar.
self.crust.filling.tree.setStatusText = self.SetStatusText
# Override the shell so that status messages go to the status bar.
self.shell.setStatusText = self.SetStatusText
# Fix a problem with the sash shrinking to nothing.
self.crust.filling.SetSashPosition(200)
self.notebook.AddPage(page=self.crust, text='*Shell*', select=True)
self.setEditor(self.crust.editor)
self.crust.editor.SetFocus()
def _editorChange(self, editor):
"""Editor change signal receiver."""
self.setEditor(editor)
def OnAbout(self, event):
"""Display an About window."""
title = 'About PyAlaMode'
text = 'Another fine, flaky program.'
dialog = wx.MessageDialog(self, text, title,
wx.OK | wx.ICON_INFORMATION)
dialog.ShowModal()
dialog.Destroy()
def _updateTitle(self):
"""Show current title information."""
pass
## title = self.GetTitle()
## if self.bufferHasChanged():
## if title.startswith('* '):
## pass
## else:
## self.SetTitle('* ' + title)
## else:
## if title.startswith('* '):
## self.SetTitle(title[2:])
def bufferCreate(self, filename=None):
"""Create new buffer."""
buffer = Buffer()
panel = wx.Panel(parent=self.notebook, id=-1)
wx.EVT_ERASE_BACKGROUND(panel, lambda x: x)
editor = Editor(parent=panel)
panel.editor = editor
sizer = wx.BoxSizer(wx.VERTICAL)
sizer.Add(editor.window, 1, wx.EXPAND)
panel.SetSizer(sizer)
panel.SetAutoLayout(True)
sizer.Layout()
buffer.addEditor(editor)
buffer.open(filename)
self.setEditor(editor)
self.notebook.AddPage(page=panel, text=self.buffer.name, select=True)
self.editor.setFocus()
def bufferDestroy(self):
"""Destroy the current buffer."""
selection = self.notebook.GetSelection()
## print "Destroy Selection:", selection
if selection > 0: # Don't destroy the PyCrust tab.
if self.buffer:
del self.buffers[self.buffer.id]
self.buffer = None # Do this before DeletePage().
self.notebook.DeletePage(selection)
def bufferNew(self):
"""Create new buffer."""
self.bufferCreate()
cancel = False
return cancel
def bufferOpen(self):
"""Open file in buffer."""
filedir = ''
if self.buffer and self.buffer.doc.filedir:
filedir = self.buffer.doc.filedir
result = openMultiple(directory=filedir)
for path in result.paths:
self.bufferCreate(path)
cancel = False
return cancel
class EditorNotebook(wx.Notebook):
"""A notebook containing a page for each editor."""
def __init__(self, parent):
"""Create EditorNotebook instance."""
wx.Notebook.__init__(self, parent, id=-1, style=wx.CLIP_CHILDREN)
wx.EVT_NOTEBOOK_PAGE_CHANGING(self, self.GetId(),
self.OnPageChanging)
wx.EVT_NOTEBOOK_PAGE_CHANGED(self, self.GetId(),
self.OnPageChanged)
wx.EVT_IDLE(self, self.OnIdle)
def OnIdle(self, event):
"""Event handler for idle time."""
self._updateTabText()
event.Skip()
def _updateTabText(self):
"""Show current buffer display name on all but first tab."""
size = 3
changed = ' **'
unchanged = ' --'
selection = self.GetSelection()
if selection < 1:
return
text = self.GetPageText(selection)
window = self.GetPage(selection)
if not window.editor:
return
if text.endswith(changed) or text.endswith(unchanged):
name = text[:-size]
else:
name = text
if name != window.editor.buffer.name:
text = window.editor.buffer.name
if window.editor.buffer.hasChanged():
if text.endswith(changed):
text = None
elif text.endswith(unchanged):
text = text[:-size] + changed
else:
text += changed
else:
if text.endswith(changed):
text = text[:-size] + unchanged
elif text.endswith(unchanged):
text = None
else:
text += unchanged
if text is not None:
self.SetPageText(selection, text)
self.Refresh() # Needed on Win98.
def OnPageChanging(self, event):
"""Page changing event handler."""
event.Skip()
def OnPageChanged(self, event):
"""Page changed event handler."""
new = event.GetSelection()
window = self.GetPage(new)
dispatcher.send(signal='EditorChange', sender=self,
editor=window.editor)
window.SetFocus()
event.Skip()
class EditorShellNotebookFrame(EditorNotebookFrame):
"""Frame containing a notebook containing EditorShellNotebooks."""
def __init__(self, parent=None, id=-1, title='PyAlaModeTest',
pos=wx.DefaultPosition, size=(600, 400),
style=wx.DEFAULT_FRAME_STYLE,
filename=None, singlefile=False):
"""Create EditorShellNotebookFrame instance."""
self._singlefile = singlefile
EditorNotebookFrame.__init__(self, parent, id, title, pos,
size, style, filename)
def _setup(self):
"""Setup prior to first buffer creation.
Called automatically by base class during init."""
if not self._singlefile:
self.notebook = EditorNotebook(parent=self)
def OnAbout(self, event):
"""Display an About window."""
title = 'About PyAlaModePlus'
text = 'Another fine, flaky program.'
dialog = wx.MessageDialog(self, text, title,
wx.OK | wx.ICON_INFORMATION)
dialog.ShowModal()
dialog.Destroy()
def bufferCreate(self, filename=None):
"""Create new buffer."""
if self._singlefile:
self.bufferDestroy()
notebook = EditorShellNotebook(parent=self,
filename=filename)
self.notebook = notebook
else:
notebook = EditorShellNotebook(parent=self.notebook,
filename=filename)
self.setEditor(notebook.editor)
if not self._singlefile:
self.notebook.AddPage(page=notebook, text=self.buffer.name,
select=True)
self.editor.setFocus()
def bufferDestroy(self):
"""Destroy the current buffer."""
if self.buffer:
self.editor = None
del self.buffers[self.buffer.id]
self.buffer = None # Do this before DeletePage().
if self._singlefile:
self.notebook.Destroy()
self.notebook = None
else:
selection = self.notebook.GetSelection()
## print "Destroy Selection:", selection
self.notebook.DeletePage(selection)
def bufferNew(self):
"""Create new buffer."""
if self._singlefile and self.bufferHasChanged():
cancel = self.bufferSuggestSave()
if cancel:
return cancel
self.bufferCreate()
cancel = False
return cancel
def bufferOpen(self):
"""Open file in buffer."""
if self._singlefile and self.bufferHasChanged():
cancel = self.bufferSuggestSave()
if cancel:
return cancel
filedir = ''
if self.buffer and self.buffer.doc.filedir:
filedir = self.buffer.doc.filedir
if self._singlefile:
result = openSingle(directory=filedir)
if result.path:
self.bufferCreate(result.path)
else:
result = openMultiple(directory=filedir)
for path in result.paths:
self.bufferCreate(path)
cancel = False
return cancel
class EditorShellNotebook(wx.Notebook):
"""A notebook containing an editor page and a shell page."""
def __init__(self, parent, filename=None):
"""Create EditorShellNotebook instance."""
wx.Notebook.__init__(self, parent, id=-1)
usePanels = True
if usePanels:
editorparent = editorpanel = wx.Panel(self, -1)
shellparent = shellpanel = wx.Panel(self, -1)
else:
editorparent = self
shellparent = self
self.buffer = Buffer()
self.editor = Editor(parent=editorparent)
self.buffer.addEditor(self.editor)
self.buffer.open(filename)
self.shell = Shell(parent=shellparent, locals=self.buffer.interp.locals,
style=wx.CLIP_CHILDREN | wx.SUNKEN_BORDER)
self.buffer.interp.locals.clear()
if usePanels:
self.AddPage(page=editorpanel, text='Editor', select=True)
self.AddPage(page=shellpanel, text='Shell')
# Setup sizers
editorsizer = wx.BoxSizer(wx.VERTICAL)
editorsizer.Add(self.editor.window, 1, wx.EXPAND)
editorpanel.SetSizer(editorsizer)
editorpanel.SetAutoLayout(True)
shellsizer = wx.BoxSizer(wx.VERTICAL)
shellsizer.Add(self.shell, 1, wx.EXPAND)
shellpanel.SetSizer(shellsizer)
shellpanel.SetAutoLayout(True)
else:
self.AddPage(page=self.editor.window, text='Editor', select=True)
self.AddPage(page=self.shell, text='Shell')
self.editor.setFocus()
wx.EVT_NOTEBOOK_PAGE_CHANGED(self, self.GetId(), self.OnPageChanged)
def OnPageChanged(self, event):
"""Page changed event handler."""
selection = event.GetSelection()
if selection == 0:
self.editor.setFocus()
else:
self.shell.SetFocus()
event.Skip()
def SetFocus(self):
wx.Notebook.SetFocus(self)
selection = self.GetSelection()
if selection == 0:
self.editor.setFocus()
else:
self.shell.SetFocus()
class Editor:
"""Editor having an EditWindow."""
def __init__(self, parent, id=-1, pos=wx.DefaultPosition,
size=wx.DefaultSize,
style=wx.CLIP_CHILDREN | wx.SUNKEN_BORDER):
"""Create Editor instance."""
self.window = EditWindow(self, parent, id, pos, size, style)
self.id = self.window.GetId()
self.buffer = None
# Assign handlers for keyboard events.
wx.EVT_CHAR(self.window, self.OnChar)
wx.EVT_KEY_DOWN(self.window, self.OnKeyDown)
def _setBuffer(self, buffer, text):
"""Set the editor to a buffer. Private callback called by buffer."""
self.buffer = buffer
self.autoCompleteKeys = buffer.interp.getAutoCompleteKeys()
self.clearAll()
self.setText(text)
self.emptyUndoBuffer()
self.setSavePoint()
def destroy(self):
"""Destroy all editor objects."""
self.window.Destroy()
def clearAll(self):
self.window.ClearAll()
def emptyUndoBuffer(self):
self.window.EmptyUndoBuffer()
def getStatus(self):
"""Return (filepath, line, column) status tuple."""
if self.window:
pos = self.window.GetCurrentPos()
line = self.window.LineFromPosition(pos) + 1
col = self.window.GetColumn(pos)
if self.buffer:
name = self.buffer.doc.filepath or self.buffer.name
else:
name = ''
status = (name, line, col)
return status
else:
return ('', 0, 0)
def getText(self):
"""Return contents of editor."""
return self.window.GetText()
def hasChanged(self):
"""Return True if contents have changed."""
return self.window.GetModify()
def setFocus(self):
"""Set the input focus to the editor window."""
self.window.SetFocus()
def setSavePoint(self):
self.window.SetSavePoint()
def setText(self, text):
"""Set contents of editor."""
self.window.SetText(text)
def OnChar(self, event):
"""Keypress event handler.
Only receives an event if OnKeyDown calls event.Skip() for the
corresponding event."""
key = event.KeyCode()
if key in self.autoCompleteKeys:
# Usually the dot (period) key activates auto completion.
if self.window.AutoCompActive():
self.window.AutoCompCancel()
self.window.ReplaceSelection('')
self.window.AddText(chr(key))
text, pos = self.window.GetCurLine()
text = text[:pos]
if self.window.autoComplete:
self.autoCompleteShow(text)
elif key == ord('('):
# The left paren activates a call tip and cancels an
# active auto completion.
if self.window.AutoCompActive():
self.window.AutoCompCancel()
self.window.ReplaceSelection('')
self.window.AddText('(')
text, pos = self.window.GetCurLine()
text = text[:pos]
self.autoCallTipShow(text)
else:
# Allow the normal event handling to take place.
event.Skip()
def OnKeyDown(self, event):
"""Key down event handler."""
key = event.KeyCode()
# If the auto-complete window is up let it do its thing.
if self.window.AutoCompActive():
event.Skip()
return
controlDown = event.ControlDown()
altDown = event.AltDown()
shiftDown = event.ShiftDown()
# Let Ctrl-Alt-* get handled normally.
if controlDown and altDown:
event.Skip()
# Increase font size.
elif controlDown and key in (ord(']'),):
dispatcher.send(signal='FontIncrease')
# Decrease font size.
elif controlDown and key in (ord('['),):
dispatcher.send(signal='FontDecrease')
# Default font size.
elif controlDown and key in (ord('='),):
dispatcher.send(signal='FontDefault')
else:
event.Skip()
def autoCompleteShow(self, command):
"""Display auto-completion popup list."""
list = self.buffer.interp.getAutoCompleteList(command,
includeMagic=self.window.autoCompleteIncludeMagic,
includeSingle=self.window.autoCompleteIncludeSingle,
includeDouble=self.window.autoCompleteIncludeDouble)
if list:
options = ' '.join(list)
offset = 0
self.window.AutoCompShow(offset, options)
def autoCallTipShow(self, command):
"""Display argument spec and docstring in a popup window."""
if self.window.CallTipActive():
self.window.CallTipCancel()
(name, argspec, tip) = self.buffer.interp.getCallTip(command)
if tip:
dispatcher.send(signal='Shell.calltip', sender=self, calltip=tip)
if not self.window.autoCallTip:
return
if argspec:
startpos = self.window.GetCurrentPos()
self.window.AddText(argspec + ')')
endpos = self.window.GetCurrentPos()
self.window.SetSelection(endpos, startpos)
if tip:
curpos = self.window.GetCurrentPos()
size = len(name)
tippos = curpos - (size + 1)
fallback = curpos - self.window.GetColumn(curpos)
# In case there isn't enough room, only go back to the
# fallback.
tippos = max(tippos, fallback)
self.window.CallTipShow(tippos, tip)
self.window.CallTipSetHighlight(0, size)
class EditWindow(editwindow.EditWindow):
"""EditWindow based on StyledTextCtrl."""
def __init__(self, editor, parent, id=-1, pos=wx.DefaultPosition,
size=wx.DefaultSize,
style=wx.CLIP_CHILDREN | wx.SUNKEN_BORDER):
"""Create EditWindow instance."""
editwindow.EditWindow.__init__(self, parent, id, pos, size, style)
self.editor = editor
class DialogResults:
"""DialogResults class."""
def __init__(self, returned):
"""Create wrapper for results returned by dialog."""
self.returned = returned
self.positive = returned in (wx.ID_OK, wx.ID_YES)
self.text = self._asString()
def __repr__(self):
return str(self.__dict__)
def _asString(self):
returned = self.returned
if returned == wx.ID_OK:
return "Ok"
elif returned == wx.ID_CANCEL:
return "Cancel"
elif returned == wx.ID_YES:
return "Yes"
elif returned == wx.ID_NO:
return "No"
def fileDialog(parent=None, title='Open', directory='', filename='',
wildcard='All Files (*.*)|*.*',
style=wx.OPEN | wx.MULTIPLE):
"""File dialog wrapper function."""
dialog = wx.FileDialog(parent, title, directory, filename,
wildcard, style)
result = DialogResults(dialog.ShowModal())
if result.positive:
result.paths = dialog.GetPaths()
else:
result.paths = []
dialog.Destroy()
return result
def openSingle(parent=None, title='Open', directory='', filename='',
wildcard='All Files (*.*)|*.*', style=wx.OPEN):
"""File dialog wrapper function."""
dialog = wx.FileDialog(parent, title, directory, filename,
wildcard, style)
result = DialogResults(dialog.ShowModal())
if result.positive:
result.path = dialog.GetPath()
else:
result.path = None
dialog.Destroy()
return result
def openMultiple(parent=None, title='Open', directory='', filename='',
wildcard='All Files (*.*)|*.*',
style=wx.OPEN | wx.MULTIPLE):
"""File dialog wrapper function."""
return fileDialog(parent, title, directory, filename, wildcard, style)
def saveSingle(parent=None, title='Save', directory='', filename='',
wildcard='All Files (*.*)|*.*',
style=wx.SAVE | wx.HIDE_READONLY | wx.OVERWRITE_PROMPT):
"""File dialog wrapper function."""
dialog = wx.FileDialog(parent, title, directory, filename,
wildcard, style)
result = DialogResults(dialog.ShowModal())
if result.positive:
result.path = dialog.GetPath()
else:
result.path = None
dialog.Destroy()
return result
def directory(parent=None, message='Choose a directory', path='', style=0,
pos=wx.DefaultPosition, size=wx.DefaultSize):
"""Dir dialog wrapper function."""
dialog = wx.DirDialog(parent, message, path, style, pos, size)
result = DialogResults(dialog.ShowModal())
if result.positive:
result.path = dialog.GetPath()
else:
result.path = None
dialog.Destroy()
return result
def messageDialog(parent=None, message='', title='Message box',
style=wx.YES_NO | wx.CANCEL | wx.CENTRE | wx.ICON_QUESTION,
pos=wx.DefaultPosition):
"""Message dialog wrapper function."""
dialog = wx.MessageDialog(parent, message, title, style, pos)
result = DialogResults(dialog.ShowModal())
dialog.Destroy()
return result

View File

@@ -0,0 +1,225 @@
"""EditWindow class."""
__author__ = "Patrick K. O'Brien <pobrien@orbtech.com>"
__cvsid__ = "$Id$"
__revision__ = "$Revision$"[11:-2]
import wx
from wx import stc
import keyword
import os
import sys
import time
import dispatcher
from version import VERSION
if 'wxMSW' in wx.PlatformInfo:
FACES = { 'times' : 'Times New Roman',
'mono' : 'Courier New',
'helv' : 'Arial',
'lucida' : 'Lucida Console',
'other' : 'Comic Sans MS',
'size' : 10,
'lnsize' : 8,
'backcol' : '#FFFFFF',
'calltipbg' : '#FFFFB8',
'calltipfg' : '#404040',
}
elif 'wxGTK' in wx.PlatformInfo and 'gtk2' in wx.PlatformInfo:
FACES = { 'times' : 'Serif',
'mono' : 'Monospace',
'helv' : 'Sans',
'other' : 'new century schoolbook',
'size' : 10,
'lnsize' : 9,
'backcol' : '#FFFFFF',
'calltipbg' : '#FFFFB8',
'calltipfg' : '#404040',
}
elif 'wxMac' in wx.PlatformInfo:
FACES = { 'times' : 'Lucida Grande',
'mono' : 'Courier New',
'helv' : 'Geneva',
'other' : 'new century schoolbook',
'size' : 13,
'lnsize' : 10,
'backcol' : '#FFFFFF',
'calltipbg' : '#FFFFB8',
'calltipfg' : '#404040',
}
else: # GTK1, etc.
FACES = { 'times' : 'Times',
'mono' : 'Courier',
'helv' : 'Helvetica',
'other' : 'new century schoolbook',
'size' : 12,
'lnsize' : 10,
'backcol' : '#FFFFFF',
'calltipbg' : '#FFFFB8',
'calltipfg' : '#404040',
}
class EditWindow(stc.StyledTextCtrl):
"""EditWindow based on StyledTextCtrl."""
revision = __revision__
def __init__(self, parent, id=-1, pos=wx.DefaultPosition,
size=wx.DefaultSize, style=wx.CLIP_CHILDREN | wx.SUNKEN_BORDER):
"""Create EditWindow instance."""
stc.StyledTextCtrl.__init__(self, parent, id, pos, size, style)
self.__config()
stc.EVT_STC_UPDATEUI(self, id, self.OnUpdateUI)
dispatcher.connect(receiver=self._fontsizer, signal='FontIncrease')
dispatcher.connect(receiver=self._fontsizer, signal='FontDecrease')
dispatcher.connect(receiver=self._fontsizer, signal='FontDefault')
def _fontsizer(self, signal):
"""Receiver for Font* signals."""
size = self.GetZoom()
if signal == 'FontIncrease':
size += 1
elif signal == 'FontDecrease':
size -= 1
elif signal == 'FontDefault':
size = 0
self.SetZoom(size)
def __config(self):
"""Configure shell based on user preferences."""
self.SetMarginType(1, stc.STC_MARGIN_NUMBER)
self.SetMarginWidth(1, 40)
self.SetLexer(stc.STC_LEX_PYTHON)
self.SetKeyWords(0, ' '.join(keyword.kwlist))
self.setStyles(FACES)
self.SetViewWhiteSpace(False)
self.SetTabWidth(4)
self.SetUseTabs(False)
# Do we want to automatically pop up command completion options?
self.autoComplete = True
self.autoCompleteIncludeMagic = True
self.autoCompleteIncludeSingle = True
self.autoCompleteIncludeDouble = True
self.autoCompleteCaseInsensitive = True
self.AutoCompSetIgnoreCase(self.autoCompleteCaseInsensitive)
self.autoCompleteAutoHide = False
self.AutoCompSetAutoHide(self.autoCompleteAutoHide)
self.AutoCompStops(' .,;:([)]}\'"\\<>%^&+-=*/|`')
# Do we want to automatically pop up command argument help?
self.autoCallTip = True
self.CallTipSetBackground(FACES['calltipbg'])
self.CallTipSetForeground(FACES['calltipfg'])
self.SetWrapMode(False)
try:
self.SetEndAtLastLine(False)
except AttributeError:
pass
def setStyles(self, faces):
"""Configure font size, typeface and color for lexer."""
# Default style
self.StyleSetSpec(stc.STC_STYLE_DEFAULT,
"face:%(mono)s,size:%(size)d,back:%(backcol)s" % \
faces)
self.StyleClearAll()
# Built in styles
self.StyleSetSpec(stc.STC_STYLE_LINENUMBER,
"back:#C0C0C0,face:%(mono)s,size:%(lnsize)d" % faces)
self.StyleSetSpec(stc.STC_STYLE_CONTROLCHAR,
"face:%(mono)s" % faces)
self.StyleSetSpec(stc.STC_STYLE_BRACELIGHT,
"fore:#0000FF,back:#FFFF88")
self.StyleSetSpec(stc.STC_STYLE_BRACEBAD,
"fore:#FF0000,back:#FFFF88")
# Python styles
self.StyleSetSpec(stc.STC_P_DEFAULT,
"face:%(mono)s" % faces)
self.StyleSetSpec(stc.STC_P_COMMENTLINE,
"fore:#007F00,face:%(mono)s" % faces)
self.StyleSetSpec(stc.STC_P_NUMBER,
"")
self.StyleSetSpec(stc.STC_P_STRING,
"fore:#7F007F,face:%(mono)s" % faces)
self.StyleSetSpec(stc.STC_P_CHARACTER,
"fore:#7F007F,face:%(mono)s" % faces)
self.StyleSetSpec(stc.STC_P_WORD,
"fore:#00007F,bold")
self.StyleSetSpec(stc.STC_P_TRIPLE,
"fore:#7F0000")
self.StyleSetSpec(stc.STC_P_TRIPLEDOUBLE,
"fore:#000033,back:#FFFFE8")
self.StyleSetSpec(stc.STC_P_CLASSNAME,
"fore:#0000FF,bold")
self.StyleSetSpec(stc.STC_P_DEFNAME,
"fore:#007F7F,bold")
self.StyleSetSpec(stc.STC_P_OPERATOR,
"")
self.StyleSetSpec(stc.STC_P_IDENTIFIER,
"")
self.StyleSetSpec(stc.STC_P_COMMENTBLOCK,
"fore:#7F7F7F")
self.StyleSetSpec(stc.STC_P_STRINGEOL,
"fore:#000000,face:%(mono)s,back:#E0C0E0,eolfilled" % faces)
def OnUpdateUI(self, event):
"""Check for matching braces."""
# If the auto-complete window is up let it do its thing.
if self.AutoCompActive() or self.CallTipActive():
return
braceAtCaret = -1
braceOpposite = -1
charBefore = None
caretPos = self.GetCurrentPos()
if caretPos > 0:
charBefore = self.GetCharAt(caretPos - 1)
styleBefore = self.GetStyleAt(caretPos - 1)
# Check before.
if charBefore and chr(charBefore) in '[]{}()' \
and styleBefore == stc.STC_P_OPERATOR:
braceAtCaret = caretPos - 1
# Check after.
if braceAtCaret < 0:
charAfter = self.GetCharAt(caretPos)
styleAfter = self.GetStyleAt(caretPos)
if charAfter and chr(charAfter) in '[]{}()' \
and styleAfter == stc.STC_P_OPERATOR:
braceAtCaret = caretPos
if braceAtCaret >= 0:
braceOpposite = self.BraceMatch(braceAtCaret)
if braceAtCaret != -1 and braceOpposite == -1:
self.BraceBadLight(braceAtCaret)
else:
self.BraceHighlight(braceAtCaret, braceOpposite)
def CanCopy(self):
"""Return True if text is selected and can be copied."""
return self.GetSelectionStart() != self.GetSelectionEnd()
def CanCut(self):
"""Return True if text is selected and can be cut."""
return self.CanCopy() and self.CanEdit()
def CanEdit(self):
"""Return True if editing should succeed."""
return not self.GetReadOnly()
def CanPaste(self):
"""Return True if pasting should succeed."""
return stc.StyledTextCtrl.CanPaste(self) and self.CanEdit()

332
wxPython/wx/py/filling.py Normal file
View File

@@ -0,0 +1,332 @@
"""Filling is the gui tree control through which a user can navigate
the local namespace or any object."""
__author__ = "Patrick K. O'Brien <pobrien@orbtech.com>"
__cvsid__ = "$Id$"
__revision__ = "$Revision$"[11:-2]
import wx
import dispatcher
import editwindow
import inspect
import introspect
import keyword
import sys
import types
from version import VERSION
COMMONTYPES = [getattr(types, t) for t in dir(types) \
if not t.startswith('_') \
and t not in ('ClassType', 'InstanceType', 'ModuleType')]
DOCTYPES = ('BuiltinFunctionType', 'BuiltinMethodType', 'ClassType',
'FunctionType', 'GeneratorType', 'InstanceType',
'LambdaType', 'MethodType', 'ModuleType',
'UnboundMethodType', 'method-wrapper')
SIMPLETYPES = [getattr(types, t) for t in dir(types) \
if not t.startswith('_') and t not in DOCTYPES]
del t
try:
COMMONTYPES.append(type(''.__repr__)) # Method-wrapper in version 2.2.x.
except AttributeError:
pass
class FillingTree(wx.TreeCtrl):
"""FillingTree based on TreeCtrl."""
name = 'Filling Tree'
revision = __revision__
def __init__(self, parent, id=-1, pos=wx.DefaultPosition,
size=wx.DefaultSize, style=wx.TR_DEFAULT_STYLE,
rootObject=None, rootLabel=None, rootIsNamespace=False,
static=False):
"""Create FillingTree instance."""
wx.TreeCtrl.__init__(self, parent, id, pos, size, style)
self.rootIsNamespace = rootIsNamespace
import __main__
if rootObject is None:
rootObject = __main__.__dict__
self.rootIsNamespace = True
if rootObject is __main__.__dict__ and rootLabel is None:
rootLabel = 'locals()'
if not rootLabel:
rootLabel = 'Ingredients'
rootData = wx.TreeItemData(rootObject)
self.item = self.root = self.AddRoot(rootLabel, -1, -1, rootData)
self.SetItemHasChildren(self.root, self.objHasChildren(rootObject))
wx.EVT_TREE_ITEM_EXPANDING(self, self.GetId(), self.OnItemExpanding)
wx.EVT_TREE_ITEM_COLLAPSED(self, self.GetId(), self.OnItemCollapsed)
wx.EVT_TREE_SEL_CHANGED(self, self.GetId(), self.OnSelChanged)
wx.EVT_TREE_ITEM_ACTIVATED(self, self.GetId(), self.OnItemActivated)
if not static:
dispatcher.connect(receiver=self.push, signal='Interpreter.push')
def push(self, command, more):
"""Receiver for Interpreter.push signal."""
self.display()
def OnItemExpanding(self, event):
"""Add children to the item."""
busy = wx.BusyCursor()
item = event.GetItem()
if self.IsExpanded(item):
return
self.addChildren(item)
# self.SelectItem(item)
def OnItemCollapsed(self, event):
"""Remove all children from the item."""
busy = wx.BusyCursor()
item = event.GetItem()
# self.CollapseAndReset(item)
# self.DeleteChildren(item)
# self.SelectItem(item)
def OnSelChanged(self, event):
"""Display information about the item."""
busy = wx.BusyCursor()
self.item = event.GetItem()
self.display()
def OnItemActivated(self, event):
"""Launch a DirFrame."""
item = event.GetItem()
text = self.getFullName(item)
obj = self.GetPyData(item)
frame = FillingFrame(parent=self, size=(600, 100), rootObject=obj,
rootLabel=text, rootIsNamespace=False)
frame.Show()
def objHasChildren(self, obj):
"""Return true if object has children."""
if self.objGetChildren(obj):
return True
else:
return False
def objGetChildren(self, obj):
"""Return dictionary with attributes or contents of object."""
busy = wx.BusyCursor()
otype = type(obj)
if otype is types.DictType \
or str(otype)[17:23] == 'BTrees' and hasattr(obj, 'keys'):
return obj
d = {}
if otype is types.ListType or otype is types.TupleType:
for n in range(len(obj)):
key = '[' + str(n) + ']'
d[key] = obj[n]
if otype not in COMMONTYPES:
for key in introspect.getAttributeNames(obj):
# Believe it or not, some attributes can disappear,
# such as the exc_traceback attribute of the sys
# module. So this is nested in a try block.
try:
d[key] = getattr(obj, key)
except:
pass
return d
def addChildren(self, item):
self.DeleteChildren(item)
obj = self.GetPyData(item)
children = self.objGetChildren(obj)
if not children:
return
keys = children.keys()
keys.sort(lambda x, y: cmp(str(x).lower(), str(y).lower()))
for key in keys:
itemtext = str(key)
# Show string dictionary items with single quotes, except
# for the first level of items, if they represent a
# namespace.
if type(obj) is types.DictType \
and type(key) is types.StringType \
and (item != self.root \
or (item == self.root and not self.rootIsNamespace)):
itemtext = repr(key)
child = children[key]
data = wx.TreeItemData(child)
branch = self.AppendItem(parent=item, text=itemtext, data=data)
self.SetItemHasChildren(branch, self.objHasChildren(child))
def display(self):
item = self.item
if self.IsExpanded(item):
self.addChildren(item)
self.setText('')
obj = self.GetPyData(item)
if wx.Platform == '__WXMSW__':
if obj is None: # Windows bug fix.
return
self.SetItemHasChildren(item, self.objHasChildren(obj))
otype = type(obj)
text = ''
text += self.getFullName(item)
text += '\n\nType: ' + str(otype)
try:
value = str(obj)
except:
value = ''
if otype is types.StringType or otype is types.UnicodeType:
value = repr(obj)
text += '\n\nValue: ' + value
if otype not in SIMPLETYPES:
try:
text += '\n\nDocstring:\n\n"""' + \
inspect.getdoc(obj).strip() + '"""'
except:
pass
if otype is types.InstanceType:
try:
text += '\n\nClass Definition:\n\n' + \
inspect.getsource(obj.__class__)
except:
pass
else:
try:
text += '\n\nSource Code:\n\n' + \
inspect.getsource(obj)
except:
pass
self.setText(text)
def getFullName(self, item, partial=''):
"""Return a syntactically proper name for item."""
name = self.GetItemText(item)
parent = None
obj = None
if item != self.root:
parent = self.GetItemParent(item)
obj = self.GetPyData(parent)
# Apply dictionary syntax to dictionary items, except the root
# and first level children of a namepace.
if (type(obj) is types.DictType \
or str(type(obj))[17:23] == 'BTrees' \
and hasattr(obj, 'keys')) \
and ((item != self.root and parent != self.root) \
or (parent == self.root and not self.rootIsNamespace)):
name = '[' + name + ']'
# Apply dot syntax to multipart names.
if partial:
if partial[0] == '[':
name += partial
else:
name += '.' + partial
# Repeat for everything but the root item
# and first level children of a namespace.
if (item != self.root and parent != self.root) \
or (parent == self.root and not self.rootIsNamespace):
name = self.getFullName(parent, partial=name)
return name
def setText(self, text):
"""Display information about the current selection."""
# This method will likely be replaced by the enclosing app to
# do something more interesting, like write to a text control.
print text
def setStatusText(self, text):
"""Display status information."""
# This method will likely be replaced by the enclosing app to
# do something more interesting, like write to a status bar.
print text
class FillingText(editwindow.EditWindow):
"""FillingText based on StyledTextCtrl."""
name = 'Filling Text'
revision = __revision__
def __init__(self, parent, id=-1, pos=wx.DefaultPosition,
size=wx.DefaultSize, style=wx.CLIP_CHILDREN,
static=False):
"""Create FillingText instance."""
editwindow.EditWindow.__init__(self, parent, id, pos, size, style)
# Configure various defaults and user preferences.
self.SetReadOnly(True)
self.SetWrapMode(True)
self.SetMarginWidth(1, 0)
if not static:
dispatcher.connect(receiver=self.push, signal='Interpreter.push')
def push(self, command, more):
"""Receiver for Interpreter.push signal."""
self.Refresh()
def SetText(self, *args, **kwds):
self.SetReadOnly(False)
editwindow.EditWindow.SetText(self, *args, **kwds)
self.SetReadOnly(True)
class Filling(wx.SplitterWindow):
"""Filling based on wxSplitterWindow."""
name = 'Filling'
revision = __revision__
def __init__(self, parent, id=-1, pos=wx.DefaultPosition,
size=wx.DefaultSize, style=wx.SP_3D,
name='Filling Window', rootObject=None,
rootLabel=None, rootIsNamespace=False, static=False):
"""Create a Filling instance."""
wx.SplitterWindow.__init__(self, parent, id, pos, size, style, name)
self.tree = FillingTree(parent=self, rootObject=rootObject,
rootLabel=rootLabel,
rootIsNamespace=rootIsNamespace,
static=static)
self.text = FillingText(parent=self, static=static)
self.SplitVertically(self.tree, self.text, 130)
self.SetMinimumPaneSize(1)
# Override the filling so that descriptions go to FillingText.
self.tree.setText = self.text.SetText
# Display the root item.
## self.tree.SelectItem(self.tree.root)
self.tree.display()
class FillingFrame(wx.Frame):
"""Frame containing the namespace tree component."""
name = 'Filling Frame'
revision = __revision__
def __init__(self, parent=None, id=-1, title='PyFilling',
pos=wx.DefaultPosition, size=(600, 400),
style=wx.DEFAULT_FRAME_STYLE, rootObject=None,
rootLabel=None, rootIsNamespace=False, static=False):
"""Create FillingFrame instance."""
wx.Frame.__init__(self, parent, id, title, pos, size, style)
intro = 'PyFilling - The Tastiest Namespace Inspector'
self.CreateStatusBar()
self.SetStatusText(intro)
import images
self.SetIcon(images.getPyIcon())
self.filling = Filling(parent=self, rootObject=rootObject,
rootLabel=rootLabel,
rootIsNamespace=rootIsNamespace,
static=static)
# Override so that status messages go to the status bar.
self.filling.tree.setStatusText = self.SetStatusText
class App(wx.App):
"""PyFilling standalone application."""
def OnInit(self):
wx.InitAllImageHandlers()
self.fillingFrame = FillingFrame()
self.fillingFrame.Show(True)
self.SetTopWindow(self.fillingFrame)
return True

362
wxPython/wx/py/frame.py Normal file
View File

@@ -0,0 +1,362 @@
"""Base frame with menu."""
__author__ = "Patrick K. O'Brien <pobrien@orbtech.com>"
__cvsid__ = "$Id$"
__revision__ = "$Revision$"[11:-2]
import wx
from version import VERSION
ID_NEW = wx.ID_NEW
ID_OPEN = wx.ID_OPEN
ID_REVERT = wx.ID_REVERT
ID_CLOSE = wx.ID_CLOSE
ID_SAVE = wx.ID_SAVE
ID_SAVEAS = wx.ID_SAVEAS
ID_PRINT = wx.ID_PRINT
ID_EXIT = wx.ID_EXIT
ID_UNDO = wx.ID_UNDO
ID_REDO = wx.ID_REDO
ID_CUT = wx.ID_CUT
ID_COPY = wx.ID_COPY
ID_PASTE = wx.ID_PASTE
ID_CLEAR = wx.ID_CLEAR
ID_SELECTALL = wx.ID_SELECTALL
ID_ABOUT = wx.ID_ABOUT
ID_AUTOCOMP = wx.NewId()
ID_AUTOCOMP_SHOW = wx.NewId()
ID_AUTOCOMP_MAGIC = wx.NewId()
ID_AUTOCOMP_SINGLE = wx.NewId()
ID_AUTOCOMP_DOUBLE = wx.NewId()
ID_CALLTIPS = wx.NewId()
ID_CALLTIPS_SHOW = wx.NewId()
ID_COPY_PLUS = wx.NewId()
ID_NAMESPACE = wx.NewId()
ID_PASTE_PLUS = wx.NewId()
ID_WRAP = wx.NewId()
ID_USEAA = wx.NewId()
class Frame(wx.Frame):
"""Frame with standard menu items."""
revision = __revision__
def __init__(self, parent=None, id=-1, title='Editor',
pos=wx.DefaultPosition, size=wx.DefaultSize,
style=wx.DEFAULT_FRAME_STYLE):
"""Create a Frame instance."""
wx.Frame.__init__(self, parent, id, title, pos, size, style)
self.CreateStatusBar()
self.SetStatusText('Frame')
import images
self.SetIcon(images.getPyIcon())
self.__createMenus()
wx.EVT_CLOSE(self, self.OnClose)
def OnClose(self, event):
"""Event handler for closing."""
self.Destroy()
def __createMenus(self):
m = self.fileMenu = wx.Menu()
m.Append(ID_NEW, '&New \tCtrl+N',
'New file')
m.Append(ID_OPEN, '&Open... \tCtrl+O',
'Open file')
m.AppendSeparator()
m.Append(ID_REVERT, '&Revert \tCtrl+R',
'Revert to last saved version')
m.Append(ID_CLOSE, '&Close \tCtrl+W',
'Close file')
m.AppendSeparator()
m.Append(ID_SAVE, '&Save... \tCtrl+S',
'Save file')
m.Append(ID_SAVEAS, 'Save &As \tShift+Ctrl+S',
'Save file with new name')
m.AppendSeparator()
m.Append(ID_PRINT, '&Print... \tCtrl+P',
'Print file')
m.AppendSeparator()
m.Append(ID_NAMESPACE, '&Update Namespace \tShift+Ctrl+N',
'Update namespace for autocompletion and calltips')
m.AppendSeparator()
m.Append(ID_EXIT, 'E&xit', 'Exit Program')
m = self.editMenu = wx.Menu()
m.Append(ID_UNDO, '&Undo \tCtrl+Z',
'Undo the last action')
m.Append(ID_REDO, '&Redo \tCtrl+Y',
'Redo the last undone action')
m.AppendSeparator()
m.Append(ID_CUT, 'Cu&t \tCtrl+X',
'Cut the selection')
m.Append(ID_COPY, '&Copy \tCtrl+C',
'Copy the selection')
m.Append(ID_COPY_PLUS, 'Cop&y Plus \tShift+Ctrl+C',
'Copy the selection - retaining prompts')
m.Append(ID_PASTE, '&Paste \tCtrl+V', 'Paste from clipboard')
m.Append(ID_PASTE_PLUS, 'Past&e Plus \tShift+Ctrl+V',
'Paste and run commands')
m.AppendSeparator()
m.Append(ID_CLEAR, 'Cle&ar',
'Delete the selection')
m.Append(ID_SELECTALL, 'Select A&ll \tCtrl+A',
'Select all text')
m = self.autocompMenu = wx.Menu()
m.Append(ID_AUTOCOMP_SHOW, 'Show Auto Completion',
'Show auto completion list', wx.ITEM_CHECK)
m.Append(ID_AUTOCOMP_MAGIC, 'Include Magic Attributes',
'Include attributes visible to __getattr__ and __setattr__',
wx.ITEM_CHECK)
m.Append(ID_AUTOCOMP_SINGLE, 'Include Single Underscores',
'Include attibutes prefixed by a single underscore', wx.ITEM_CHECK)
m.Append(ID_AUTOCOMP_DOUBLE, 'Include Double Underscores',
'Include attibutes prefixed by a double underscore', wx.ITEM_CHECK)
m = self.calltipsMenu = wx.Menu()
m.Append(ID_CALLTIPS_SHOW, 'Show Call Tips',
'Show call tips with argument signature and docstring', wx.ITEM_CHECK)
m = self.optionsMenu = wx.Menu()
m.AppendMenu(ID_AUTOCOMP, '&Auto Completion', self.autocompMenu,
'Auto Completion Options')
m.AppendMenu(ID_CALLTIPS, '&Call Tips', self.calltipsMenu,
'Call Tip Options')
m.Append(ID_WRAP, '&Wrap Lines',
'Wrap lines at right edge', wx.ITEM_CHECK)
if wx.Platform == "__WXMAC__":
m.Append(ID_USEAA, '&Use AntiAliasing',
'Use anti-aliased fonts', wx.ITEM_CHECK)
m = self.helpMenu = wx.Menu()
m.AppendSeparator()
m.Append(ID_ABOUT, '&About...', 'About this program')
b = self.menuBar = wx.MenuBar()
b.Append(self.fileMenu, '&File')
b.Append(self.editMenu, '&Edit')
b.Append(self.optionsMenu, '&Options')
b.Append(self.helpMenu, '&Help')
self.SetMenuBar(b)
wx.EVT_MENU(self, ID_NEW, self.OnFileNew)
wx.EVT_MENU(self, ID_OPEN, self.OnFileOpen)
wx.EVT_MENU(self, ID_REVERT, self.OnFileRevert)
wx.EVT_MENU(self, ID_CLOSE, self.OnFileClose)
wx.EVT_MENU(self, ID_SAVE, self.OnFileSave)
wx.EVT_MENU(self, ID_SAVEAS, self.OnFileSaveAs)
wx.EVT_MENU(self, ID_NAMESPACE, self.OnFileUpdateNamespace)
wx.EVT_MENU(self, ID_PRINT, self.OnFilePrint)
wx.EVT_MENU(self, ID_EXIT, self.OnExit)
wx.EVT_MENU(self, ID_UNDO, self.OnUndo)
wx.EVT_MENU(self, ID_REDO, self.OnRedo)
wx.EVT_MENU(self, ID_CUT, self.OnCut)
wx.EVT_MENU(self, ID_COPY, self.OnCopy)
wx.EVT_MENU(self, ID_COPY_PLUS, self.OnCopyPlus)
wx.EVT_MENU(self, ID_PASTE, self.OnPaste)
wx.EVT_MENU(self, ID_PASTE_PLUS, self.OnPastePlus)
wx.EVT_MENU(self, ID_CLEAR, self.OnClear)
wx.EVT_MENU(self, ID_SELECTALL, self.OnSelectAll)
wx.EVT_MENU(self, ID_ABOUT, self.OnAbout)
wx.EVT_MENU(self, ID_AUTOCOMP_SHOW, self.OnAutoCompleteShow)
wx.EVT_MENU(self, ID_AUTOCOMP_MAGIC, self.OnAutoCompleteMagic)
wx.EVT_MENU(self, ID_AUTOCOMP_SINGLE, self.OnAutoCompleteSingle)
wx.EVT_MENU(self, ID_AUTOCOMP_DOUBLE, self.OnAutoCompleteDouble)
wx.EVT_MENU(self, ID_CALLTIPS_SHOW, self.OnCallTipsShow)
wx.EVT_MENU(self, ID_WRAP, self.OnWrap)
wx.EVT_MENU(self, ID_USEAA, self.OnUseAA)
wx.EVT_UPDATE_UI(self, ID_NEW, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_OPEN, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_REVERT, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_CLOSE, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_SAVE, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_SAVEAS, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_NAMESPACE, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_PRINT, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_UNDO, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_REDO, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_CUT, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_COPY, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_COPY_PLUS, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_PASTE, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_PASTE_PLUS, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_CLEAR, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_SELECTALL, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_AUTOCOMP_SHOW, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_AUTOCOMP_MAGIC, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_AUTOCOMP_SINGLE, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_AUTOCOMP_DOUBLE, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_CALLTIPS_SHOW, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_WRAP, self.OnUpdateMenu)
wx.EVT_UPDATE_UI(self, ID_USEAA, self.OnUpdateMenu)
def OnFileNew(self, event):
self.bufferNew()
def OnFileOpen(self, event):
self.bufferOpen()
def OnFileRevert(self, event):
self.bufferRevert()
def OnFileClose(self, event):
self.bufferClose()
def OnFileSave(self, event):
self.bufferSave()
def OnFileSaveAs(self, event):
self.bufferSaveAs()
def OnFileUpdateNamespace(self, event):
self.updateNamespace()
def OnFilePrint(self, event):
self.bufferPrint()
def OnExit(self, event):
self.Close(False)
def OnUndo(self, event):
win = wx.Window_FindFocus()
win.Undo()
def OnRedo(self, event):
win = wx.Window_FindFocus()
win.Redo()
def OnCut(self, event):
win = wx.Window_FindFocus()
win.Cut()
def OnCopy(self, event):
win = wx.Window_FindFocus()
win.Copy()
def OnCopyPlus(self, event):
win = wx.Window_FindFocus()
win.CopyWithPrompts()
def OnPaste(self, event):
win = wx.Window_FindFocus()
win.Paste()
def OnPastePlus(self, event):
win = wx.Window_FindFocus()
win.PasteAndRun()
def OnClear(self, event):
win = wx.Window_FindFocus()
win.Clear()
def OnSelectAll(self, event):
win = wx.Window_FindFocus()
win.SelectAll()
def OnAbout(self, event):
"""Display an About window."""
title = 'About'
text = 'Your message here.'
dialog = wx.MessageDialog(self, text, title,
wx.OK | wx.ICON_INFORMATION)
dialog.ShowModal()
dialog.Destroy()
def OnAutoCompleteShow(self, event):
win = wx.Window_FindFocus()
win.autoComplete = event.IsChecked()
def OnAutoCompleteMagic(self, event):
win = wx.Window_FindFocus()
win.autoCompleteIncludeMagic = event.IsChecked()
def OnAutoCompleteSingle(self, event):
win = wx.Window_FindFocus()
win.autoCompleteIncludeSingle = event.IsChecked()
def OnAutoCompleteDouble(self, event):
win = wx.Window_FindFocus()
win.autoCompleteIncludeDouble = event.IsChecked()
def OnCallTipsShow(self, event):
win = wx.Window_FindFocus()
win.autoCallTip = event.IsChecked()
def OnWrap(self, event):
win = wx.Window_FindFocus()
win.SetWrapMode(event.IsChecked())
def OnUseAA(self, event):
win = wx.Window_FindFocus()
win.SetUseAntiAliasing(event.IsChecked())
def OnUpdateMenu(self, event):
"""Update menu items based on current status and context."""
win = wx.Window_FindFocus()
id = event.GetId()
event.Enable(True)
try:
if id == ID_NEW:
event.Enable(hasattr(self, 'bufferNew'))
elif id == ID_OPEN:
event.Enable(hasattr(self, 'bufferOpen'))
elif id == ID_REVERT:
event.Enable(hasattr(self, 'bufferRevert')
and self.hasBuffer())
elif id == ID_CLOSE:
event.Enable(hasattr(self, 'bufferClose')
and self.hasBuffer())
elif id == ID_SAVE:
event.Enable(hasattr(self, 'bufferSave')
and self.bufferHasChanged())
elif id == ID_SAVEAS:
event.Enable(hasattr(self, 'bufferSaveAs')
and self.hasBuffer())
elif id == ID_NAMESPACE:
event.Enable(hasattr(self, 'updateNamespace')
and self.hasBuffer())
elif id == ID_PRINT:
event.Enable(hasattr(self, 'bufferPrint')
and self.hasBuffer())
elif id == ID_UNDO:
event.Enable(win.CanUndo())
elif id == ID_REDO:
event.Enable(win.CanRedo())
elif id == ID_CUT:
event.Enable(win.CanCut())
elif id == ID_COPY:
event.Enable(win.CanCopy())
elif id == ID_COPY_PLUS:
event.Enable(win.CanCopy() and hasattr(win, 'CopyWithPrompts'))
elif id == ID_PASTE:
event.Enable(win.CanPaste())
elif id == ID_PASTE_PLUS:
event.Enable(win.CanPaste() and hasattr(win, 'PasteAndRun'))
elif id == ID_CLEAR:
event.Enable(win.CanCut())
elif id == ID_SELECTALL:
event.Enable(hasattr(win, 'SelectAll'))
elif id == ID_AUTOCOMP_SHOW:
event.Check(win.autoComplete)
elif id == ID_AUTOCOMP_MAGIC:
event.Check(win.autoCompleteIncludeMagic)
elif id == ID_AUTOCOMP_SINGLE:
event.Check(win.autoCompleteIncludeSingle)
elif id == ID_AUTOCOMP_DOUBLE:
event.Check(win.autoCompleteIncludeDouble)
elif id == ID_CALLTIPS_SHOW:
event.Check(win.autoCallTip)
elif id == ID_WRAP:
event.Check(win.GetWrapMode())
elif id == ID_USEAA:
event.Check(win.GetUseAntiAliasing())
else:
event.Enable(False)
except AttributeError:
# This menu option is not supported in the current context.
event.Enable(False)

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