Commit Graph

50003 Commits

Author SHA1 Message Date
Vadim Zeitlin
aeef0d188c No changes, just remove unnecessary UTF-8 bytes.
The patch of #11187 (applied in r61884) unnecessarily used +U2019 which can't
be converted to latin1, remove it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62736 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-28 03:37:36 +00:00
Vadim Zeitlin
5bb596668f Implement wx{File,Dir}Exists() in terms of wxFileName methods.
Use wxFileName from the global functions instead of using global functions in
wxFileName methods as wxFileName is the preferred API for all these
operations.

Closes #11488.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62735 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-28 02:40:08 +00:00
Vadim Zeitlin
ad42f414c8 Don't override msw.remap system option value in wxToolbook.
Introducing a system option for all toolbars and then ignoring it inside wx
itself is ridiculous and just goes to prove that this option itself was a
mistake. But as we have it, we should respect whatever value it's set to
(which should hopefully be 0 anyhow for most modern systems) instead of
overriding it forcefully making the mockery of the whole "option" concept.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62734 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-28 02:29:08 +00:00
Vadim Zeitlin
1c54c4ed04 Avoid infinite recursion in wxToolbook::OnSize() under wxMSW.
Reset m_needsRealizing flag before calling wxToolBar::Realize() as doing this
can result in another call to wxToolbook::OnSize() itself.

Closes #11942.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62733 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-28 02:29:02 +00:00
Vadim Zeitlin
d395f181b3 Use OUTLINETEXTMETRIC::otmpFamilyName to get wxFont face name from MSW.
In spite of the name, we need to use otmpFamilyName member of
OUTLINETEXTMETRIC struct and not otmpFaceName to get the font face name: the
latter may contain (locale-dependent, so the changes of r62708 didn't work for
non-English versions of Windows) "Italic" or "Bold" suffix while the former
does not and is what we want.

This should really fix the unit test failures, even in French locale.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62732 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-28 02:28:57 +00:00
Vadim Zeitlin
9a67941f0b Compilation fix for wxUSE_CAIRO==0 after last commit.
Include wx/graphics.h when wxUSE_CAIRO==0 but wxUSE_GRAPHICS_CONTEXT==1 (as in
e.g. MSW builds).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62731 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-27 21:36:03 +00:00
Vadim Zeitlin
6c99dbd55e Define wxUSE_CAIRO in wx/chkconf.h to ensure that it's always defined.
wxUSE_CAIRO used to be defined only in wx/cairo.h but this header wasn't
included by src/common/dcgraph.cpp so the code there was compiled as if we
were not using Cairo even when we were (thanks g++ for the warning).

Define it in wx/chkconf.h (included from wx/defs.h, i.e. always) now to ensure
that not only this bug is fixed but also that it can't happen any more.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62730 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-27 21:06:03 +00:00
Vadim Zeitlin
a8f9fe13aa Use #ifdef to check for __WXMSW__ and __WXGTK__ and not #if.
Using #if doesn't work when symbols are not defined.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62729 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-27 21:05:57 +00:00
Vadim Zeitlin
cfbc15ee04 Allow changing horizontal alignment of numeric cells in wxGrid.
wxGridCellAttr didn't provide any way to query its alignment attributes
without falling back to the (always defined) default alignment so the code in
wxGridCellNumberRenderer and similar classes simply always used right
alignment,

Add a new wxGridCellAttr::GetNonDefaultAlignment() function which allows to
retrieve the alignment defined in the attribute and use it to use right
alignment by default but allow overriding it.

Add a test to the sample showing a non right-aligned numeric cell.

Incidentally fix a long-standing bug in wxGridCell{DateTime,Enum}Renderers
which used wxRIGHT instead of wxALIGN_RIGHT and so were not aligned properly
even by default.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62728 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-27 01:47:38 +00:00
Vadim Zeitlin
ba0185b557 Add symbolic constant wxALIGN_INVALID and use it instead of -1 in wxGrid.
wxGridCellAttr was using literal -1 to indicate "no alignment" which wasn't
immediately obvious, use a new wxALIGN_INVALID (which has the same value)
instead.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62727 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-27 01:47:30 +00:00
Kevin Ollivier
5cbf522105 Build fix for OS X <= 10.5.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62726 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-26 23:14:28 +00:00
Kevin Ollivier
9ab7ff537d Allow OS X Cocoa (or any OS X port) to override GetBestSize and provide a native OS X Cocoa impl. Also, fix the line ending check under OS X Cocoa, and a sanity check for SetStyle.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62725 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-26 23:11:27 +00:00
Kevin Ollivier
b9cf2753b4 Add CheckSpelling support for OS X Cocoa, make sure NSTextView-based wxTextCtrls emit EVT_TEXT, and a fix for GetStyle when position == length.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-26 21:52:42 +00:00
Vadim Zeitlin
7430a4bbf8 Make wxFileDialog::Set/SetPath() behave consistently.
wxFileDialog::GetPath() didn't return the value set by a previous call to
SetPath() in wxMSW version. Fix this and also implement SetPath() and
SetDirectory() methods in the generic versions in the same way as
SetFilename().

Closes #3672.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62722 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-26 16:17:00 +00:00
Vadim Zeitlin
aa926768a9 Don't set wxTextAttr font family to invalid value.
wxTextAttr::HasFontFamily() shouldn't return true if there is no valid font
family in this attribute but this could happen if it was constructed from a
font which didn't know its own family.

This fixes asserts on the startup of the text sample in wxMSW due to passing
wxFONTFAMILY_UNKNOWN to wxFont::SetFamily() when trying to use such invalid
attribute later.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62720 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-26 15:59:27 +00:00
Vadim Zeitlin
8faed39597 Use wxTE_RICH style for the log window in the text sample.
This makes it have nicer colour (white instead of grey by default) under MSW
and wxTE_RICH was already in the code, just commented out -- it seems it's
better to enable it (as it also allows more text to be shown in the control
under old Windows versions) than to remove it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62719 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-26 15:59:20 +00:00
Vadim Zeitlin
7b6126aa3a Explicitly set the cursor when showing popup menu on text control in wxMSW.
Without this, an I-beam cursor is used when a menu is shown by a rich text
control. Set the arrow cursor explicitly to work around this apparent bug in
the native control.

Closes #11314.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62718 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-26 03:29:27 +00:00
Vadim Zeitlin
64932e4105 No changes, just avoid overriding GetNativeFontInfoDesc() in wxMSW wxFont.
wxFont::GetNativeFontInfoDesc() and GetNativeFontInfoUserDesc() were
overridden just to ensure that the font is realized but it makes sense to do
it in wxFontRefData::GetNativeFontInfo() itself as detecting the face name
won't work if the font is not realized anyhow. And then we don't need these
functions at all as the only thing they do is checking that the font is valid
when they are called but this can be done in the base class itself as this
should happen in all ports (document that this is the case).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62717 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-26 02:34:01 +00:00
Vadim Zeitlin
a77c05ea22 Return face name from wxFont::GetNativeFontInfo() under MSW.
Retrieve the face name from the system if we don't have it already before
returning the native font info.

This fixes the currently failing font unit tests.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62716 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-26 02:33:53 +00:00
Vadim Zeitlin
3515776ea5 Don't use unsafe strcpy() when parsing wxNativeFontInfo.
Fix a nice buffer overflow waiting to happen due to the use of wxStrcpy().
Call wxNativeFontInfo::SetFaceName() which uses wxStrlcpy() instead.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62709 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-24 00:02:21 +00:00
Vadim Zeitlin
804250acc3 Don't return italic/bold suffix from wxFont::GetFaceName() in wxMSW.
These suffixes don't make part of the face name in wx API but the native MSW
API which we use since r62675 does return them. This made the unit test fail
in SettingsTestCase::GlobalFonts() as a face name with such suffix wasn't
recognized as a valid face name any more, so simply remove them.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62708 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-24 00:02:05 +00:00
Vadim Zeitlin
009f89f75d Make the assert in SettingsTestCase::GlobalFonts() more informative.
Show the index of the font and the face name which was invalid.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62707 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-24 00:01:51 +00:00
Vadim Zeitlin
92a2a0ef91 Fix wxListCtrl::GetSubItemRect(wxLIST_RECT_ICON/LABEL) in wxMSW for column 0.
Wrong width was returned for the icon or label rectangle when querying the
first column. Fix this and add a test to the sample allowing to check this.

GetSubItemRect() still returns wrong results for second and subsequent
columns, see #11355.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62706 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-24 00:01:38 +00:00
Vadim Zeitlin
f3c74c8df9 Don't change file access time implicitly when setting it explicitly.
wxFileHandle helper class used in wxFileName::SetTimes() under MSW modified
the file access time by setting it to the current time because it opened the
file in a wrong mode.

Closes #10567.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62705 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-24 00:01:25 +00:00
Vadim Zeitlin
a12bd55b0d Enable wxGraphicsContext and related classes by default if supported.
For MSW, check for gdiplus.h availability when using configure but only
support it for MSVC 7+ otherwise. For the other platforms, always support it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62704 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-24 00:01:15 +00:00
Julian Smart
9302396589 Made Unicode the default in symbols dialog.
Fixed wrongly sized symbols dialog.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62699 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-23 09:34:07 +00:00
Vadim Zeitlin
e55e621ec5 Define wxNO_RTTI if RTTI support is disabled for g++ or MSVC.
For g++ it could have been possible to define wxNO_RTTI in configure itself
but it seems better/simpler/more maintainable to do it in C++ code. As for
MSVC, we already define wxNO_RTTI correctly if build/msw/makefile.vc is used
but not if (modified or rebaked) project files are used and detecting RTTI
support in the code is the only way to fix it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62698 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-22 11:24:09 +00:00
Vadim Zeitlin
7d4911333f Document that throwing exceptions from wxTimer::Notify() is unsupported.
Currently exceptions thrown from this function are not passed to wxApp::
OnExceptionInMainLoop() (unlike exceptions thrown from timer event handlers).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62697 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-22 11:24:03 +00:00
Stefan Neis
1dd35cd656 Fixed Cut&Paste error in wxTextCtrl::ChangeValue documentation (fixes #11469).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62696 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-22 11:00:42 +00:00
Stefan Csomor
01639b0809 making sure creation is setup correctly for wx-frame coordinates into cocoa-content coordinates, fixes #11463
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62695 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-21 17:02:06 +00:00
Jaakko Salli
eb23d11e00 Added a new documentation overview section 'Caveats When Not Using C++ RTTI', describing possible problems with Bind() and wxAny when C++ RTTI is disabled.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62694 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-21 11:39:32 +00:00
Jaakko Salli
c81aea0739 Unified meaning of wxTypeIdentifier in RTTI and RTTI-less type info systems; Fixed and added some comments
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62693 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-21 09:28:00 +00:00
Vadim Zeitlin
14ba694c26 Fix compilation for some wxMSW configurations.
wx/scopeguard.h was not always included when using PCH, so include it in any
case, not just #ifndef WX_PRECOMP.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62692 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-19 22:34:33 +00:00
Jaakko Salli
700dcf1e56 Fixed builds without wxHAS_EVENT_BIND (typeinfo.h include was misplaced)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62691 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-19 21:16:10 +00:00
Jaakko Salli
7db064f60f Added typeinfo.h which implements wxTypeId, using C++ RTTI if available. wxAny and Unbind<>() code are updated to use it. Added and updated related unit tests.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62690 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-19 19:27:24 +00:00
Vadim Zeitlin
c7193f2821 Compilation fix for wxUSE_STL build: another missing _str().
Use utf8_str() to convert wxString to GTK+ string instead of relying on
implicit conversion which doesn't exist when wxUSE_STL==1 (and also when using
wchar_t-based Unicode build).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62686 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-19 01:36:54 +00:00
Kevin Ollivier
3ac2b89b89 Fix accidental commit of 2.8 ABI compat. code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62683 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-18 21:01:52 +00:00
Kevin Ollivier
f82b7036e8 Rebake after last commit.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62682 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-18 19:22:58 +00:00
Kevin Ollivier
c0e69d720d Forward port of r60190 (wxMSW Cairo support) to trunk.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62681 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-18 19:05:42 +00:00
Julian Smart
6eff83b827 Fixed #11212 [RichText sample] Assert/Crash when Styles combo box opened
Patch by Catalin


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62680 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-18 14:01:21 +00:00
Vadim Zeitlin
945c909da9 Suppress harmless g++ warnings about converting float/double to int.
The conversion is done on purpose on these places so just suppress the warning
by using explicit casts.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62679 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-18 09:56:59 +00:00
Vadim Zeitlin
46d1cdb44c Fix harmless g++ warning about using NULL for non-pointer.
PostQueuedCompletionStatus() may be either an int or a pointer, pass 0 instead
of NULL when we don't care about its value anyhow.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62678 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-18 09:56:52 +00:00
Vadim Zeitlin
0f506ded1a Fix handling of invalid paths with multiple columns in wxFileName.
SplitVolume() didn't handle colons in the initial position correctly which
surprised SetPath() and led to accessing an out-of-range string element. Fix
SplitVolume() and also add a check to SetPath() itself as it seems like it
could be called with a path containing the volume only.

Closes #11453.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62677 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-18 03:45:32 +00:00
Vadim Zeitlin
76d88590ff Remove unnecessary manual face name selection code.
The change of r60391 made specifying the face name explicitly unnecessary but
left the code which filled "facename" array in wxNativeFontInfo::SetFamily()
with face names even though it was never used -- simply remove this code.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62676 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-18 03:18:24 +00:00
Vadim Zeitlin
9bd2672046 Implement wxFont::GetFaceName() to return the face name being really used.
Since the change of r60391 empty face name was returned for all fonts created
using the standard wxFont constructor (so basically all fonts except for those
created from native font info and the default/normal font which we retrieve
from the system). Use Windows GetOutlineTextMetrics() function to get the real
face name being used independently of the way the font was created.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62675 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-18 03:18:16 +00:00
Václav Slavík
8e6c2840b4 Improved handling of anchors in wxHTML: scroll to better position (patch #11406).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62674 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-17 20:20:48 +00:00
Vadim Zeitlin
fde702ea51 Fix typo in Bind() documentation: s/binded/bound/
Closes #11450.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62672 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-17 14:47:56 +00:00
Vadim Zeitlin
869aa92d4d Explicitly document event types for EVT_CLOSE().
Closes #11445.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62671 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-17 14:47:44 +00:00
Bryan Petty
cfbf62b811 Fix crash when dragging toolbars in wxAuiManager::OnFloatingPaneMoveStart(). (fixes #10170)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62669 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-16 21:55:57 +00:00
Robin Dunn
9feb648206 Add some missing commas. Fixes #11443
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62667 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-16 21:28:55 +00:00