Commit Graph

58827 Commits

Author SHA1 Message Date
Vadim Zeitlin
b251e53887 Don't prevent the other button release handlers from running in wxGTK.
There doesn't seem to be any advantage in doing this, but it can result in
problems see #16055. So just always let the other handlers for this event
execute as well, even if we did process it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77896 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-27 16:15:05 +00:00
Vadim Zeitlin
5cb289a07e Revert "Skip mouse button release events in wxGenericTreeCtrl."
This reverts r76093 as it broke label editing in the control.

See #16055, closes #16573.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77895 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-27 16:14:59 +00:00
Vadim Zeitlin
8f4422831a Recognize Intel compiler as MSVC one under Windows in the build options.
The two compilers are binary compatible and by pretending that Intel compiler
is the same as MSVC, we allow using ICC to build applications using DLLs built
with MSVC.

Closes #9437.

(this is a backport of r76425 from trunk).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77894 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-27 16:14:55 +00:00
Václav Slavík
a08b2965fc Fix handling of MSWWindowProc return value for menu events
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77889 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-26 14:42:46 +00:00
Václav Slavík
4403ea7d97 Don't break other toolbars with wxToolBar::OSXSetSelectableTools()
wxOSX's implementation used a shared global delegate for all toolbars,
which is not only highly unusual, but broke with code that modified the
delegate. Specifically, wxPreferencesEditor's window uses
OSXSetSelectableTools() to make its toolbar selectable. Because the
delegate was shared, all toolbars in the application would start
behaving as selectable as soon as the user opened preferences (even
after the preferences window was closed).

Don't share the delegate. Create a unique copy and store it in
wxNSToolbar instance. This isn't particularly elegant solution, but it
has the advantage of being binary compatible and simple.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77886 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-25 16:10:40 +00:00
Václav Slavík
98a045f86b Make toggle toolbar button emulation on OS X nicer
Actually use gray background behind toggled icon. Remove the ugly black
frame. Increase rounded rectangle's radius so that it is (barely)
visible that the rectangle is rounded.

Previously, the code used wxLIGHT_GREY by mistake, which is the same
color as the toolbar already uses, so toggled items were rendered with
the same background as untoggled, only with an ugly black rectangle
around them.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-25 12:29:34 +00:00
Julian Smart
e5affe951b Corrected border size for wxBORDER_THEME
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77878 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-24 12:48:13 +00:00
Robin Dunn
045d3f3e9a Add cairo_image_surface_get_[width|height] to the wxCairo dynamic importer
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77876 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-24 02:04:15 +00:00
Paul Cornett
48b8da3bb4 cairo_image_surface_get_{width,height} have been available in cairo since version 1.0
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77758 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-23 16:37:15 +00:00
Vadim Zeitlin
1f1b1aa0ca Fix double release in wxGLCanvas code.
The change in r77699 was partially wrong, we shouldn't release Objective-C
object if initializing it failed.

See #16555.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77740 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-20 22:06:22 +00:00
Robin Dunn
495e673859 Oops, a '{' got lost somewhere from the last commit...
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77736 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-19 23:44:29 +00:00
Robin Dunn
e469fbb57a I'm not totally sure when they were added, but the cairo_image_surface_get_[width|height] functions are not available in cairo 1.10.2.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77734 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-19 23:21:58 +00:00
Vadim Zeitlin
77df2f30a4 Avoid integer overflow/wraparound in wxString::Mid().
Don't compare nLength with "nFirst + nCount" as this could wrap around.

Compare nCount with maximal allowed count, after ensuring that nFirst itself
is valid first, instead.

Closes #16572.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77725 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-19 11:51:48 +00:00
Julian Smart
e99be2e276 Implemented vertical image alignment.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-18 14:40:03 +00:00
Vadim Zeitlin
9a8aa7899c Document wxGraphicsContext::CreateBitmapFromNativeBitmap() ownership rules.
Mention that it takes ownership of the native bitmap passed to it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77721 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-18 00:03:04 +00:00
Vadim Zeitlin
96441d17f6 Fix crash when creating wxGraphicsBitmap from cairo_surface_t.
Initialize m_buffer to avoid crashes when deleting it in Cairo-based
wxGraphicsContext implementation for bitmaps created from the native ones.

Don't leave the bitmap size uninitialized neither, this might not result in
crashes, but is definitely wrong as well.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77720 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-18 00:02:59 +00:00
Stefan Csomor
228ecaad8b backport, fixes #16564
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77716 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-16 16:05:46 +00:00
Vadim Zeitlin
721743ae37 Request hardware accelerated GL under OS X only if it's available.
Otherwise wxGLCanvas creation just fails completely when it isn't, e.g. when
running inside a VM.

Closes #16555.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77699 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-14 23:08:16 +00:00
Vadim Zeitlin
d36d05e097 fixes 64 bit to 32 warnings, see #16329
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77698 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-14 23:08:11 +00:00
Vadim Zeitlin
a1a805d4fe Accept "default" as font family value in XRC.
Map it to wxFONTFAMILY_DEFAULT, just as we do for all other wxFontFamily enum
elements.

Closes #16549.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77685 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-12 11:31:04 +00:00
Vadim Zeitlin
6085c8f788 Use bool constants instead of BOOL ones in wxBitmapComboBox code.
Just s/TRUE/true/

See #14279.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77547 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-05 21:54:19 +00:00
Vadim Zeitlin
9352652221 Fix empty wxBitmapComboBox height under wxMSW.
Make (initially) empty wxBitmapComboBox as high as a normal wxComboBox instead
of making it visibly shorter.

Closes #14279.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77546 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-05 21:54:13 +00:00
Vadim Zeitlin
3d61720298 Fix restoring locale in wxCmdLineParser::SetArguments().
We need to call setlocale(NULL) to query the current locale, setlocale("")
returns the newly set locale and not the original one.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77542 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-05 00:36:26 +00:00
Vadim Zeitlin
4752322151 Add default values for wxRichMessageDialog ctor arguments.
Both "caption" and "style" arguments were documented as having default values,
but didn't really have them. Fix this by actually adding them.

Closes #16524.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77535 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-04 19:44:15 +00:00
Vadim Zeitlin
e0470c82a3 Test for __MINGW64_TOOLCHAIN__ and not __MINGW64__ in wx/filefn.h.
MinGW-w64 headers are the same in 32 and 64 bit cases, so test for these
headers presence with __MINGW64_TOOLCHAIN__ and not for 64 bit build with
__MINGW64__, which should probably not be used anywhere at all.

This fixes problems with wx{Rm,Mk}dir() definitions with MinGW-w64 in
non-Unicode build.

Closes #16362.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77534 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-04 19:22:21 +00:00
Vadim Zeitlin
32f633a081 Move __MINGW64_TOOLCHAIN__ definition to wx/msw/gccpriv.h.
__MINGW64_VERSION_MAJOR is defined only in _mingw.h, so it was never defined
in wx/compiler.h, included before any other headers and we can't include
_mingw.h for the same reason we must define wxCHECK_MINGW32_VERSION() in
wx/msw/gccpriv.h: this has to be done after defining UNICODE/_UNICODE, but
wx/compiler.h is included before this.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77533 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-04 19:22:17 +00:00
Vadim Zeitlin
1169897404 Mention that wxDialog::SetEscapeId() can't be used for native dialogs.
Native dialogs handling of Esc can't be customized (definitely not easily,
and possibly not at all).

See #16521.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77528 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-03 11:21:41 +00:00
Vadim Zeitlin
e265092879 Remove recursive "see also" link from GetAppDocumentsDir() docs.
This was probably supposed to be "@see GetDocumentsDir()", but as this
function is already mentioned, and auto-linked by Doxygen, just above, another
link to it is unnecessary, so remove it.

Closes #16520.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77527 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-03 11:21:36 +00:00
Vadim Zeitlin
d33d240e47 Include wx/variant.h from wx/msw/ole/oleutils.h.
This ensures that this header is self-contained and can be included without
including wx/variant.h first.

Closes #16522.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77526 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-03 11:21:31 +00:00
Vadim Zeitlin
41a9ca5f27 Work around buggy printer drivers not returning correct DEVMODE size.
Apparently at least one printer driver doesn't report the memory needed by its
own DEVMODE struct correctly, resulting in a crash due to a buffer overflow
when printing using it.

Work around this by allocating slightly more memory than what we really need.

Closes #16274.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77522 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-03 10:45:38 +00:00
Václav Slavík
ebba02fdb5 Don't prevent app exit when only preferences window exists.
Don't prevent termination of the app if all windows are closed, except
for the preferences one (which may very well be hidden at the moment).
This only affects platforms where the preferences are modeless (GTK+, OS
X) and where the preferences window, once created, continues to exist,
but is hidden.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77521 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-09-03 06:56:16 +00:00
Vadim Zeitlin
0e22e89086 Fix creation of wxBitmap from monochrome wxIcon or wxCursor in wxMSW.
Don't suppose that we always have hbmColor because this is not true for
monochrome icons/cursors. Create our own bitmap in this case.

Closes #16512.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77516 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-30 15:13:59 +00:00
Vadim Zeitlin
04519a46d7 Don't change a shortcut file name when changing its path.
wxFileName::MakeRelativeTo() is only supposed to change the path of the file,
not its name, but it was doing the latter for the shortcuts as it implicitly
resolved them to the name of their target.

Fix this by ensuring we do not use wxPATH_NORM_SHORTCUT in MakeRelativeTo().

Closes #16239.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77515 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-29 23:22:45 +00:00
Vadim Zeitlin
2090e676f9 Ensure OLE is initialized in wxFileName::GetShortcutTarget().
If it isn't, the function doesn't risk to work. This is especially pernicious
because OLE is initialized on startup in GUI applications, but not in the
console ones only using wxBase, so this function can, completely unexpectedly,
give different results in them.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77514 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-29 23:22:42 +00:00
Vadim Zeitlin
1368d4c0c5 Add small wxOleInitializer RAII helper.
Wrap wxOleInitialize()/wxOleUninitialize() in a helper class ensuring that we
never forget to call the latter.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77513 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-29 23:22:39 +00:00
Vadim Zeitlin
5e565d05f8 Fix typo in the last changelog entry.
s/reated/created/

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77512 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-29 23:22:32 +00:00
Vadim Zeitlin
8e95772b1a Don't leave wxHtmlWinParser with a dangling wxDC pointer.
Call SetDC(NULL) to prevent wxHtmlWinParser from using a pointer to the
already destroyed wxDC object.

See #16501.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77501 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-29 11:55:56 +00:00
Vadim Zeitlin
eac01d3d88 No changes, just avoid unnecessary heap allocation in wxHtmlWindow.
Create the temporary wxClientDC on the stack, not the heap, there is no need
for the latter.

See #16501.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77500 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-29 11:55:51 +00:00
Vadim Zeitlin
4ba9657952 Allow wxCmdLineParser::Parse() to be called more than once.
Clear the previously collected parameters in the beginning to avoid
accumulating the results from several command lines.

Closes #16503.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77499 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-29 11:42:13 +00:00
Vadim Zeitlin
05a1abfb1f Fix wxFont construction from default wxFontInfo in wxMSW.
Don't use -1 as the real point size.

Also update the font sample to allow testing such font.

Closes #16468.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77494 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-28 12:54:52 +00:00
Tim Kosse
7a71428478 Revision 59305 broke click count adjustment with the result that a right-click after a left-click is reported as double-click.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77491 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-28 12:29:01 +00:00
Vadim Zeitlin
202b377dbc Fix order of radial gradient stops in wxMSW.
Ensure that the order of stops is consistent with the documentation and other
platforms behaviour, i.e. they are counted from inside to outside of the
circle and not vice versa, which happens to be the GDI+ convention.

Closes #16443.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77482 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-25 17:50:58 +00:00
Vadim Zeitlin
5dbe88ae4c Avoid unnecessary assignment in wxOSX build.
Don't assign to the variable only to overwrite it with a new value.

Closes #16436.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77458 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-24 13:30:05 +00:00
Vadim Zeitlin
0484aa12e2 Avoid warning about unused variable in wxiOS build.
Define variable only used if wxOSX_USE_COCOA_OR_CARBON inside the check for it.

Closes #16435.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77457 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-24 13:30:00 +00:00
Vadim Zeitlin
0c4dba6a60 Remove unused variable in wxDCImpl::CalculateEllipticPoints().
Closes #16433.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77456 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-24 13:29:54 +00:00
Vadim Zeitlin
d3d1c37bf5 Fix ribbon bar tab width computation if the first tab is hidden.
The logic for the first tab should really deal with the first visible tab as
the actual first tab might be hidden and in this case we shouldn't account for
it at all.

Closes #16432.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77092 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-21 14:13:07 +00:00
Paul Cornett
aac2fa1f5b fix use of stack variable after it has gone out of scope, closes #16423
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77082 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-18 17:02:53 +00:00
Vadim Zeitlin
7a9065190f Show new style Windows directory selector even for non-existent paths.
Passing an invalid initial directory to wxDirDialog resulted in using the old
style Windows directory selector dialog instead of the new style (file dialog
like) one, which was unintentional, as incorrect initial directory shouldn't
prevent the dialog from being shown.

Fix this by handling ERROR_FILE_NOT_FOUND error specifically and still showing
the new dialog, just without the (non existent) initial directory value, in
this case.

Closes #16430.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77081 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-18 13:09:08 +00:00
Paul Cornett
b6f7b079c6 Fix handling of identical consecutive key events
Events generated programmatically may have the same timestamp as the previous
event, which caused them to be ignored on the assumption that they were the same
event being sent to a parent window. Fix this by detecting when a new event could
be generated by the event loop.
Closes #15802


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77074 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-15 17:09:39 +00:00
Vadim Zeitlin
08547057c5 Add support for paragraph spacing attribute to wxTextCtrl in wxMSW.
Use PFM_SPACEAFTER/PFM_SPACEBEFORE to implement support for them.

Closes #16417.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH@77069 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-08-14 12:17:08 +00:00