The optimal way of creating a literal strings consisting of only ASCII
characters is to use wxS() as this avoids the need for run-time conversion in
all builds while wxT() requires a conversion from wchar_t to UTF-8 in UTF-8
builds. So replace wxT() with wxS() in wxImage options definitions.
Also remove wxT() from the options documentation, it's just useless there.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69760 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
In some rare but reproducible cases GetCursorPos() can fail and return without
filling in the provided point. Fall back to GetMessagePos() if this happens:
this is not ideal but clearly better than using uninitialized position or hard
coding something like (0, 0).
Closes#13664.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69758 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Fix warnings given when wx headers are compiled with g++ -Wswitch-enum option.
Also make the assert messages more precise and less verbose as there is no
need to include the function name in them, all relatively recent compilers
provide it via __FUNCTION__ and wxFAIL_MSG() already uses it.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69756 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Because of a missing '$' before wxUSE_WEBVIEW_IE in the configure test
wxUSE_WEBVIEW was never enabled for wxMSW builds.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69745 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Bare (i.e. without any modifiers) Delete, Home and End keys are also required
by the text control itself so don't handle them as accelerators when wxTextCtrl
has focus.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69739 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The result of wxString::mb_str() can't be converted to wxScopedCharBuffer in
non-Unicode build but converting it to wxCharBuffer is always fine (though
slightly less efficient).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69730 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Query for formats that wxDataObject supports on input, not output, in
wxClipboard::GetData().
This is similar to r69454 For wxGTK.
Closes#13649.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69729 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Remove all inappropriate compiler options and not just the first one as they
can occur multiple times because they may come from pkg-config output for
several different libraries.
Closes#13647.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69720 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The code using GDK_META_MASK was moved to wx/gtk/private/event.h from
gtk/window.cpp but the fallback definition of GDK_META_MASK for GTK+ < 2.10
remained in window.cpp.
Move it to the header as well now so that it can be compiled with GTK+ < 2.10
again.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69698 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
As we use FILE for saving the assert message to a file, we must include
<stdio.h> (which is not included from any other header, at least not under
Solaris).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69696 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
If the normal Enter or Space processing (sending activate event or doing
activatable editing respectively) isn't handled by the control, use
these keys to trigger inline editing too, as F2 does.
This makes the Windows control more similar to OS X and GTK+ ones and
makes discovering editability easier.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69695 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
When deducing the time zone from struct tm tm_gmtoff field, query tm for the
current time and not the Epoch as the DST rules -- and hence the time zone
offset -- could have changed since 1970. This is notably the case for Ireland
which used a different time zone from 1968 to 1971.
Notice that GetTimeZone() still must return the time zone without taking DST
into account, so we explicitly compensate for DST if it's in effect.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69689 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This function incorrectly returned index from the end of the array when
searching from the end. Fixed to work as the non-STL version.
Fixes#13626.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69688 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Extend the id reference count storage to use an overflow hash map for the ids
used more than 254 times. This allows to use the same id an arbitrarily large
number of times.
Closes#13618.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69682 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
A checkbox on the static page was added to two sizers at once, resulting in
heap corruption later. Fix this by adding it to the right sizer only.
Closes#13619.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69680 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
We used a format string without any format specifiers in it in a call to
wxString::Printf() which always had a parameter resulting in an assert failure
about a mismatch between the string and parameter count.
Fix this by using a separate Printf() call for this case.
Closes#13613.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69678 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Before calling wxDataObject::SetData() we must check whether the object
supports this format using IsSupported(Set) instead of just IsSupported()
which does the test in the "Get" direction.
Closes#13615.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69677 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
wxMBConvStrictUTF8::FromWChar() didn't update the input length correctly when
encountering a surrogate while decoding UTF-16 and could read beyond the end
of the input buffer in this case.
Fix this by simply adjusting the input length when a surrogate is read.
Closes#13614.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69676 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775