Commit Graph

16139 Commits

Author SHA1 Message Date
Stefan Csomor
82d191e352 removing extra semicola
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76230 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-31 07:08:06 +00:00
Stefan Csomor
0fdc7e6f89 removing superfluous semicolon
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76224 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-30 11:47:40 +00:00
Stefan Csomor
ba0337764d adding empty base class implementation for OnNextIteration, call from OSXDoRun, allowing console event loop to override
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76223 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-30 11:46:59 +00:00
Paul Cornett
8b4ae731d3 use wxOVERRIDE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76220 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-30 00:02:23 +00:00
Julian Smart
9b09ca16a6 Allow derivation from wxRichTextBufferDataObject
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76204 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-27 12:46:37 +00:00
Vadim Zeitlin
da319a87cd Make wxMSW owner drawn menu item code more clear and correct.
The user-visible effect of this change is that removing the item from the menu
and adding it back doesn't lose its icon any more.

At the code level, wxMenuItem::SetBitmaps() and related methods are
implemented outside of "#if wxUSE_OWNER_DRAWN" which allows to use them even
in minimalistic library builds. And IsOwnerDrawn() is not used any more to
determine whether the item has bitmaps, just only if it's really owner drawn,
making the code more clear and fixing at least the bug above and possible more.

Closes #13878.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76202 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-27 00:02:28 +00:00
Vadim Zeitlin
d94b858bc9 Rename wxMenuItem::MustUseOwnerDrawn() to MSWMustUseOwnerDrawn().
No real changes, just make it clear that this method is MSW-specific and is
about using owner drawn items at MSW level and not wx one.

See #13878.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76201 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-27 00:02:22 +00:00
Vadim Zeitlin
a3da62503f Fix setting menu item bitmaps after appending them in wxMSW.
Update the bitmap used by Windows when using non-owner-drawn items with
bitmaps.

Closes #9388.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76191 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-23 15:18:37 +00:00
Vadim Zeitlin
67b128e186 Refactor wxMSW: move some code from wxMenu to wxMenuItem.
This will allow reusing it for other wxMenuItem bitmap-related operations.

See #9388.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76190 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-23 15:18:31 +00:00
Vadim Zeitlin
de22d0def4 Fix wxFileSystemWatcher::RemoveAll() to actually work.
We need to call DoRemove() on all watcher objects to really remove them, just
removing our record of them was not enough and e.g. resulted in errors if we
tried to re-add a previously watched path again.

Closes #15531.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76187 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-23 00:57:09 +00:00
Vadim Zeitlin
5b43c1858d Fix handling deletion of watched directory in MSW wxFileSystemWatcher.
Don't log an incomprehensible error when the watched directory itself is
deleted, but generate wxFSW_EVENT_DELETE for it. This is consistent with the
behaviour under Unix and generally more useful.

Closes #13294.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76186 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-23 00:57:03 +00:00
Vadim Zeitlin
305e766f0f Small refactoring in wxFileSystemWatcher MSW implementation.
Make wxIOCPService::GetStatus() smarter about its return value, it makes sense
to encapsulate the convention used to indicate the thread exit condition
inside wxIOCPService class itself instead of sharing it between it
wxIOCPThread itself.

It will also make it easier to detect more detailed error conditions in this
code.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76185 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-23 00:57:00 +00:00
Vadim Zeitlin
62efdabbb8 Disable the use of "override" keyword for MSVC < 11.
While the keyword is indeed supported since MSVC 8, it's only since MSVC 11
that using it doesn't generate C4481 compiler warning ("nonstandard extension
used"), so avoid using it with the earlier versions.

See #16100.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76184 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-23 00:56:55 +00:00
Vadim Zeitlin
8d808db43f Put a __cplusplus guard around C++-specific tests in wx/defs.h.
This avoids the warning about __cplusplus being undefined in the recently
added wxOVERRIDE logic and make the existing wx_xxx_cast<>s definitions
simpler.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76177 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-20 19:52:45 +00:00
Vadim Zeitlin
78de4fe291 Remove configure test for override keyword.
Detect its support in the code by testing __cplusplus value and using specific
checks for MSVC and Clang as configure detects it as being available when
using recent g++ versions in non-C++11 mode, which do support this keyword but
warn when it is used without -std={gnu,c}++11 option, which makes actually
using it a bad idea in this case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76174 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-20 15:49:07 +00:00
Vadim Zeitlin
33ad33d447 Add wxOVERRIDE and use it in common and wxOSX code.
Make overriding virtual methods more explicit and enable additional checks
provided by C++11 compilers when "override" is used.

Closes #16100.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76173 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-20 13:26:28 +00:00
Vadim Zeitlin
8c4b1dcbd0 Add wxInt64 support to wxText{Input,Output}Stream.
Add explicit Read64[S]() and Write64() methods.

Closes #14685.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76171 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-19 22:57:44 +00:00
Vadim Zeitlin
89bf39314f Use "virtual" keyword with overridden methods.
No real changes, just make the code more clear by explicitly using "virtual".

Closes #16097.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76170 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-19 18:06:29 +00:00
Vadim Zeitlin
7e049a9692 Remove redundant forward declaration of wxCursor from wx/window.h.
We include wx/cursor.h from wx/window.h anyhow (and can't avoid it as we have
a member of wxCursor type in wxWindowBase).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76165 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-18 20:10:11 +00:00
Vadim Zeitlin
1eb17f24f0 Include the individual headers that we really need instead.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76163 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-18 19:28:50 +00:00
Vadim Zeitlin
8b777c1aa8 Don't include wx/dc.h from wx/graphics.h.
This is not necessary and prevents compilation of this header in wxUSE_GUI=0
case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76162 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-18 19:28:47 +00:00
Vadim Zeitlin
ce47b38a84 Don't include wx/cursor.h from wx/dc.h.
This is simply not needed.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76161 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-18 19:28:41 +00:00
Vadim Zeitlin
399371921f Add font colour support to wxFontPickerCtrl.
Currently this is only really implemented under Windows, just as the colour
support in wxFontDialog, but make the API available under all platforms for
consistency.

Closes #11614.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76160 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-18 17:23:13 +00:00
Vadim Zeitlin
9e7dbef726 Use helper GetPickerWidget() function in wxFontPickerCtrl.
No real changes, just use a helper function instead of an ugly M_PICKER macro.

See #11614.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76159 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-18 17:23:06 +00:00
Paul Cornett
d2e4b3520b for GTK+ 3.6 and later, invalidate cached best size when GTK's style cache is updated, see #16088
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76149 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-15 18:44:02 +00:00
Vadim Zeitlin
f9b4d6b18c Fix showing of 32bpp bitmaps without alpha in wxMSW wxStaticBitmap.
The native control doesn't make a secret copy of the image in this case (0RGB
bitmap, i.e. 32bpp ARGB bitmap with all alpha values set to 0) and just shows
the bitmap we assigned to it directly, so we must not delete it in this case,
otherwise nothing is shown at all.

Closes #16084.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76148 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-14 19:22:31 +00:00
Vadim Zeitlin
6b296279ba Also free internal handlers when wxMSW wxStaticBitmap is destroyed.
r76142 fixed the resource leak when wxStaticBitmap image was replaced by
another one but the leak still happened at the end, when the wxStaticBitmap
was destroyed.

Fix it there as well in the same way.

Closes #16068.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76147 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-14 19:22:26 +00:00
Vadim Zeitlin
371928415a Add support for loading old V1 bitmap files to wxBMPHandler.
Such files are apparently still seen in the wild, even though this format has
been superseded since Windows 3.0 (!).

Closes #3433.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76144 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-14 01:36:54 +00:00
Vadim Zeitlin
d6ace87b61 Upgrade included Scintilla to version 3.3.9.
Closes #15742.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76121 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-12 13:23:54 +00:00
Vadim Zeitlin
b356d1d3c7 Add wxFont::GetBaseFont().
This can be used to "undo" the result of Bold() ,Underlined() or Italic()
methods and returns an unadorned version of the font.

Closes #11815.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76120 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-11 20:48:20 +00:00
Vadim Zeitlin
8b5d2687db Remove unnecessarily overridden methods from wxToggleButtonBase.
These methods already do exactly the same thing in the base wxAnyButton class,
there is no need to override them again.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76119 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-11 20:48:16 +00:00
Vadim Zeitlin
a6bf247ee6 No changes, just fix typos in my own name ("Zeitlin").
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76118 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-11 20:48:13 +00:00
Vadim Zeitlin
61e323ad37 Add wxEnhMetaFile::Detach().
Allow getting the handle from this class, this is useful if it needs to be
passed to some other library, for example.

Closes #15706.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76117 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-11 16:04:22 +00:00
Vadim Zeitlin
f51dc81c85 Add wxDynamicLibrary::GetModuleFromAddress().
Use dladdr() under Unix, if available, to provide the same functionality as we
get from GetModuleHandleEx() under MSW and export it in a new public function.

Closes #15248.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76114 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-11 16:04:06 +00:00
Julian Smart
cd3fc53163 Added on-demand image loading option to wxRTC.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76110 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-10 11:08:42 +00:00
Vadim Zeitlin
050fabe3b9 Add wxFD_NO_FOLLOW style for wxFileDialog.
This style tells the dialog to return the paths of the link being selected
without dereferencing it.

Currently only implemented under wxMSW as the links are not dereferenced by
default in wxGTK anyhow. But we may want to change this and implement it there
too for consistency in the future.

Closes #15429.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76085 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-05 16:29:46 +00:00
Vadim Zeitlin
a46fbf1bcd Compilation fix for wxUniv/MSW in wxTLW code dealing with menus.
The code used by WM_INITMENUPOPUP and WM_EXITMENULOOP handlers shouldn't be
used in wxUniv build as it's not used there anyhow and doesn't even compile.

Closes #16039.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76077 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-04 14:07:43 +00:00
Stefan Csomor
7dc4a53a02 cleanup, see #15600
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76072 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-03 07:04:37 +00:00
Vadim Zeitlin
f740cc3881 Refactor YieldFor() to avoid code duplication among the ports.
Don't repeat the same code in all the ports, move it to the common base class
and add a new virtual DoYieldFor() for the really port-specific code.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76061 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-02 18:58:00 +00:00
Stefan Csomor
a0e915acb1 using a lazy translation hash map for conversion between user friendly names and postscript names, so that we get only one warning per font family. The only way to completely get rid of this would be to pre-populate the map during startup which would mean to completely iterate through all installed fonts, so it's a compromise. see #15999
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76036 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-01 16:48:58 +00:00
Vadim Zeitlin
d5216a4afc Fix Intel compiler warnings about hiding member variables.
Rename method parameters to avoid conflicts with member variables names.

Closes #15971.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76029 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-27 15:46:32 +00:00
Václav Slavík
c7972da951 Be more permissive when validating format string arguments.
Previously, the code would assert if the caller passed too many
arguments to wxPrintf() or other printf-like functions. But that can
happen legitimately in translations: in some languages such as Hebrew,
using "1" (i.e. "%d") in the singular feels unnatural and it's better to
use the word "one" and left the variadic argument unused.

Relax the check not to assert in this case. This is consistent with the
standard library and other implementations. Notice that gettext's msgfmt
doesn't complain about this case either in the specific case of singular
forms.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76027 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-27 15:24:21 +00:00
Julian Smart
9adba53251 Paragraph and image layout fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76025 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-27 15:15:18 +00:00
Václav Slavík
bc5b91cb7c Fix compilation with Xcode projects (type_traits).
The changes to type_traits headers detection with Clang broke Clang use
with the Xcode projects. Fix this by not setting HAVE_* macros in
config_xcode.h for Clang and letting defs.h detect the features.

See #15915.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76016 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-25 17:54:32 +00:00
Vadim Zeitlin
e9ccd6d5b1 Define wxUSE_BOOKCTRL as 1 if wxUSE_AUI==1.
wxAuiNotebook needs wxBookCtrlBase.

Closes #16025.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76011 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-25 17:26:44 +00:00
Stefan Csomor
d692ea1c0e adding NSImage support to wxIcon on OSX, as IconRefs are on their way out, and performance under 10.9 is suffering
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75994 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-23 19:11:31 +00:00
Stefan Csomor
21aa2122f4 make sure a frozen control calls a native 'thaw' on the tlw during destruction, otherwise tlws might end up unresponsive, see #16011
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-23 19:02:58 +00:00
Vadim Zeitlin
e0a255785f Fix Unix build using clang with g++ 4.8 headers.
Don't override HAVE_TR1_TYPE_TRAITS detected by configure with
HAVE_TYPE_TRAITS detected by clang __has_include() as the latter is less
reliable and can return true even when the header is not actually usable, as
it happens with g++ 4.8 <type_traits> in non C++11 mode.

Closes #15915.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75985 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-22 22:39:43 +00:00
Vadim Zeitlin
a2a846e473 Allow customizing bitmap handling in wxSVGFileDC.
Provide a built-in alternative for using external files for the bitmaps in
SVG: allow embedding them inside the SVG itself using "data:" URI.

And also allow to define custom handlers to make the behaviour even more
flexible.

Closes #15968.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75981 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-22 17:26:27 +00:00
Vadim Zeitlin
d183babc8d Allow retrieving wxPG_FLOAT_PRECISION and not just setting it.
It was possible to call SetAttribute() to change this attribute value but not
to get it back. Override DoGetAttribute() to also allow the latter.

See #15625.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75978 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-22 14:54:44 +00:00
Vadim Zeitlin
876859fcb7 Expose ScintillaWX DoDragEnter() and DoDragLeave() methods.
These methods are needed to allow implementing alternative wxDropTargets, in
addition to the already public DoDragOver().

Closes #16010.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75977 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-22 14:54:39 +00:00
Vadim Zeitlin
e518e31acd Fix crash when using wxThreadSpecificInfo from global object ctor.
When not using compiler TLS support (which is the default now), TLS variable
itself needs to be initialized and user-defined code in the global objects
ctor could be called before this happened, resulting in using uninitialized
CRITICAL_SECTION under Windows and a crash.

Fix this by wrapping global wxThreadSpecificInfo itself in an accessor
function ensuring that it is always initialized before use.

Notice that this required adding wxTLS_TYPE_REF() as wxTLS_TYPE() itself can't
be used for the function return value (__thread or similar can only be used on
the variables).

Closes #16009.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75949 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-20 15:13:36 +00:00
Vadim Zeitlin
0b4804594c Don't show the MDI children implicitly by default in wxMSW any more.
We kept doing it for compatibility with pre-2.5.3 versions but this was a long
time ago and we don't need this any longer.

See #2508.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-20 00:32:54 +00:00
Vadim Zeitlin
b6be374d72 Move DSS_HIDEPREFIX fallback definition to the central header.
Do it only once now that it's used in 3 different places (it recently started
to be used in src/msw/anybutton.cpp as well) instead of defining it thrice.

This also fixes MinGW build.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75930 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-18 23:36:34 +00:00
Vadim Zeitlin
9d2b9feeb1 Add "const" to the recently added wxRTC XPM.
This fixes half a page of warnings about converting string constants to
non-const char* from g++.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75910 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-17 23:53:43 +00:00
Vadim Zeitlin
f20fbba01f Fix crash in wxMSW wxFileSystemWatcher when removing the same path twice.
Starting to watch a path, stopping to watch it, starting to watch it again and
stopping again resulted in a crash in wxMSW wxFileSystemWatcher implementation
because the watcher object wasn't kept artificially kept alive when it was
stopped for the second time. This happened because our way of keeping it alive
was to store it in a hash map indexed by path, but if a watcher for the same
path (added there when this path was first unwatched) was already present in
the map, the watcher wasn't added to it and not kept alive.

Fix this by using a vector instead of a map. We obviously sacrifice quick
access to it by path but at least this doesn't crash any more. And we could
actually still use a map, just indexed by the (unique) pointer to the object
stored inside wxSharedPtr itself, and not its path. But a vector might be a
more efficient data structure in practice, if we keep it from becoming too big
as we should try to do by triggering artificial port completions when a watch
is removed.

At any rate, at least the crash is fixed for now.

Closes #15995.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75905 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-17 23:53:11 +00:00
Julian Smart
ba7e065a34 Removed rounding that didn't work for negative numbers; added ability to hide "move object" controls
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75893 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-16 20:05:19 +00:00
Julian Smart
2124c5688b Optimized wxRTC insertion and deletion when floating objects are present.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-15 16:19:43 +00:00
Julian Smart
f95ee1bade Added ability to disable images in wxRTC for performance or image corruption reasons
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75881 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-13 12:32:46 +00:00
Vadim Zeitlin
924465f468 Provide more detailed deprecation message for wxFont ctor.
Be more clear about how should the code be changed.

Closes #15972.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75875 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-12 13:15:17 +00:00
Paul Cornett
8f97969383 add missing GTK3 implementations of GTKGetWindow()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75864 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-09 19:53:17 +00:00
Paul Cornett
9d0d2b7e98 Fix wxSetCursorEvent handling
For compatibility with wxMSW, send event up the parent chain.
Properly handle setting the cursor for a wxSetCursorEvent, and don't overwrite the window cursor.
see #15801


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75821 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-06 08:54:17 +00:00
Paul Cornett
0dfeb74e78 Different fix for cursor inheritance and busy cursor/global cursor.
Previous work was not compatible with GTK < 2.18 and did not properly handle some cases
see #15801


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75807 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-06 04:43:46 +00:00
Vadim Zeitlin
5e6d30aa0b Add support for sorting by more than one column to generic wxDataViewCtrl.
Maintain a list of columns used for sorting instead of a single sort column
index and allow to add/remove columns to/from it interactively by right
clicking them if AllowMultiColumnSort() was used.

See https://github.com/wxWidgets/wxWidgets/pull/3

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75806 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-05 22:12:53 +00:00
Julian Smart
179d117a35 Added the ability to restore the last selected page in a wxRTC formatting dialog.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75791 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-04 18:57:20 +00:00
Vadim Zeitlin
9d05d9a009 Allow using wxRearrangeList::Check() to change state programmatically.
Previous this resulted in an assert and broken behaviour as it didn't update
the internally stored state. Do update it now and remove the assert as it
isn't possible to distinguish between user code calling Check() and wxGTK
doing it itself from wxCheckListBox implementation.

Closes #15940.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75786 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-04 15:59:52 +00:00
Jouk Jansen
49ea9ebb64 correction on commit 75776
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75782 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-04 07:37:31 +00:00
Jouk Jansen
b09a481c2e synchronizing the definition of wxLoadQueryNearestFont
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75776 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-03 14:06:40 +00:00
Paul Cornett
adeb914098 fix running with GTK < 2.18 when built with later GTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75760 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-01 20:05:43 +00:00
Vadim Zeitlin
7baf1ce2fd Don't show windows with "hidden" XRC attribute at all.
This is better than showing them initially and then hiding them if only
because it avoids the unexpected wxEVT_SHOW events being generated.

Closes #15919.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-01 18:18:52 +00:00
Vadim Zeitlin
36e3a58992 Recompute the tooltip width when changing its text in wxMSW.
This avoids unnecessarily wrapping the tooltips if they are set to a longer
string than their initial value later.

Closes #4685.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75756 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-01 18:18:47 +00:00
Tim Kosse
98bf1dae9b Add Kabyle language, as rare language it uses a three-letter code as per ISO 639-2.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75752 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-01 10:39:25 +00:00
Vadim Zeitlin
98da482d7a Deprecate wxTipProvider::PreprocessTip().
It is completely useless, and there is no reason to keep it.

Closes #15916.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75744 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-30 19:40:29 +00:00
Vadim Zeitlin
0a411fd5da Virtualize wxXmlNode methods used by wxAuiToolBarXmlHandler.
This fixes the DLL build of aui library as it can now be linked without
leaving any unresolved dependencies to the code in xml library (where
wxXmlNode is implemented).

Closes #15686.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75734 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-29 22:25:36 +00:00
Vadim Zeitlin
8d5a37c184 Fix embarrassing typo in the last commit.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75725 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-28 16:52:11 +00:00
Vadim Zeitlin
e7a50b3c00 Add forward declaration of wxCmdLineParser to fix compilation.
This should fix the build after the previous commit.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75724 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-28 13:45:23 +00:00
Vadim Zeitlin
5cfbf0dc4d Allow iterating over wxCmdLineParser arguments in order.
This allows the meaning of the options to depend on their order relatively to
the other options which wasn't possible before.

See http://review.bakefile.org/r/557/

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-28 13:04:55 +00:00
Paul Cornett
9f09241cd0 Fix cursor inheritance and busy cursor/global cursor, closes #15801
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75690 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-23 18:27:13 +00:00
Vadim Zeitlin
3b3930d62a Remove unnecessary CommandStateChangeConstants enum redeclaration.
This declaration conflicted with the one in the latest MinGW-W64 headers and
wasn't needed anyhow as we don't use neither the enum itself nor its members
in our code, so just remove it to fix the build in 64 bits with MinGW-W64 4.8.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75669 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-21 21:46:09 +00:00
Vadim Zeitlin
eba3e39426 Move deprecated wxFont ctor implementation out of line.
Blind fix to avoid strange warnings given by OS X build slave about the ctor
being deprecated when it's defined, not used.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75667 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-21 19:32:04 +00:00
Vadim Zeitlin
9d3550f413 Add a virtual dtor to wxEventLoopSourcesManagerBase to avoid g++ warnings.
This virtual dtor is not really needed as manager objects are static
singletons and are not destroyed via their pointer, but add a virtual dtor
just to avoid g++ warnings about its absence.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75666 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-21 19:32:00 +00:00
Vadim Zeitlin
eef9b03d24 Don't pass ID to wxWindow::LoadNativeDialog() by reference.
This is completely unnecessary and confusing.

See #15893.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75658 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-20 14:45:19 +00:00
Vadim Zeitlin
d2f125aa35 Pass non-primitive types by const reference instead of value.
No real changes, just avoid the unnecessary copying and also make the
signatures more consistent by adding the apparently forgotten "&" in a couple
of places.

See #15893.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75657 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-20 14:45:08 +00:00
Vadim Zeitlin
322fc32b82 Fix alpha channel values when using wxGCDC with wxMemoryDC in wxMSW.
Ensure that 32bpp bitmaps selected in wxMemoryDC use DIB for their internal
representation as GDI+ functions don't seem to work correctly with DDBs with
alpha channel.

Closes #13328.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75648 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-19 13:15:52 +00:00
Vadim Zeitlin
fb730c32b4 Override Do{Freeze,Thaw}() instead of {Freeze,Thaw}() in wxPropGrid code.
{Freeze,Thaw}() themselves are not virtual any more, so overriding them
doesn't really work and it is unnecessary to reimplement the reference
counting already done by the base class anyhow, so override the DoXXX()
versions instead.

Closes #15877.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75640 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-17 18:56:13 +00:00
Vadim Zeitlin
e484333926 wxBitmap with cleared alpha channel doesn't keep its alpha flag any more.
Explicitly reset wxBitmap alpha flag after clearing its alpha channel to
ensure that we don't treat it as having alpha after going to all the trouble
of ensuring that it doesn't/

See #14403.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75588 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-11 14:24:35 +00:00
Vadim Zeitlin
60a3e0cc54 Rename wxLANGUAGE_CAMBODIAN to wxLANGUAGE_KHMER.
Keep the old name for compatibility.

See https://github.com/wxWidgets/wxWidgets/pull/2

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75587 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-11 02:52:17 +00:00
Vadim Zeitlin
4736f13d79 No real changes, just fix a typo in a comment.
z/preffered/preferred/

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75586 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-11 02:52:13 +00:00
Vadim Zeitlin
1d444d684a Disable wxUSE_PREFERENCES_EDITOR in correct place in wxiOS.
wx/osx/setup0.h is auto-generated, so r74708 shouldn't have changed it as the
change was overwritten by r75568 which regenerated that file. Instead, disable
wxUSE_PREFERENCES_EDITOR in iPhone-specific file.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75571 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-08 00:38:43 +00:00
Vadim Zeitlin
8b8dfdde4c Disable the use of compiler TLS by default under Windows.
While compiler TLS support is simpler to use and much faster than using our
own Win32 API-based TLS implementation, it results in difficult to debug
crashes when used inside a dynamically loaded DLL under Windows XP, so disable
it by default to be safe.

Closes #13116.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75568 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-07 21:54:42 +00:00
Vadim Zeitlin
44f26d6f82 Fix handling of bitmaps with alpha channel in wxMSW wxImageList.
Don't use mask and alpha together, this results in visual artefacts and masks
are unnecessary with RGBA bitmaps anyhow.

The only potentially problematic remaining case is mixing bitmaps with alpha
and mask inside the same image list (as we need to indicate whether we use the
mask or not when creating it), but this should probably be rare and in the
meanwhile we can at least RGBA bitmaps with image lists, which includes doing
this implicitly when they are used as button bitmaps.

Also refactor wxBitmap code to extract part of CopyFromIconOrCursor() to allow
reusing it in the newly added MSWUpdateAlpha().

See #11476.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75567 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-07 21:13:20 +00:00
Vadim Zeitlin
bd30752410 Just deprecate but don't schedule for removal wxNORMAL and friends.
Deprecate the use of the old untyped constants but don't schedule them from
removal in a future wx version by removing "#if WXWIN_COMPATIBILITY_3_0" tests
around their definition and use. Provoking deprecation warnings in the code
using these constants is worth it as they are unclear and it's easy to make
mistakes when using them, but breaking this code compilation outright can't be
justified -- even in the future.

Also use more informational wxDEPRECATED_MSG() instead of a simple
wxDEPRECATED() as it might not be obvious at all how should the code be
updated exactly.

Finally, avoid the use of deprecated constants inside the library itself.

As a side effect, this closes #15814.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75565 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-06 12:42:37 +00:00
Vadim Zeitlin
f5b1cc026d Actually implement default wxPasswordEntryDialog ctor.
This was added in r75404 but not implemented, do provide the trivial
definition of this function too.

Closes #15770.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75564 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-06 12:42:23 +00:00
Vadim Zeitlin
353f1c5491 Deprecate wxPropertyGrid::DoubleToString().
Simply use wxNumberFormatter instead, this reduces code duplication and avoids
bugs due to formatting inconsistencies in DoubleToString().

Closes #15625.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75561 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-05 21:10:58 +00:00
Vadim Zeitlin
cc8b733082 Remove unnecessary _mingw.h inclusion from wx/msw/missing.h.
This header is already included from wx/platform.h which is always included
before wx/msw/missing.h.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75556 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-05 13:56:09 +00:00
Vadim Zeitlin
35ae03b3b2 Move wxCHECK_MINGW32_VERSION() declaration to wx/msw/gccpriv.h.
Unfortunately we can't keep it in wx/compiler.h which is included too early,
before UNICODE macro is defined, and we can't define it before including
wx/setup.h which itself must be included after wx/compiler.h.

So move it to wx/msw/gccpriv.h which is not a great solution, as the best
would be to get rid of this gcc-specific file completely, but at least should
make everything build again and ensure that _mingw.h is included after UNICODE
definition.

Closes #15805.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75555 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-05 13:56:04 +00:00
Vadim Zeitlin
ae31f96132 Revert "Move UNICODE section of wx/platform.h before wx/compiler.h inclusion."
Unfortunately this fix for MinGW broke compilation under Unix, see #15805.

This reverts r75520.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75554 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-05 13:55:59 +00:00
Vadim Zeitlin
6870e04cef Revert "Hack wxMSW wxNotebook to show the text controls correctly initially."
This hack resulted in showing a black rectangle corresponding to the initial
size of the first notebook page when creating the notebook, as could be seen
in the notebook sample by pressing Alt+2,Alt+1 to recreate the notebook after
the startup.

If the bug that this hack was supposed to fix hasn't been fixed yet (and it
might have been by r73126, but it's hard to be sure as we don't have any test
case for that bug), we could reintroduce this call to Update() but only if
we're not inside a deferred resize (i.e. m_hDWP != 0) as it just can't work
correctly in this case.

This reverts r69793.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75538 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-04 21:58:59 +00:00
Paul Cornett
967a94c91a remove WXWIN_COMPATIBILITY_2_6, add WXWIN_COMPATIBILITY_3_0
closes #15792

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-04 20:07:33 +00:00
Vadim Zeitlin
61728d5d54 Avoid asserts in wxGTK when wxMDIChildFrame::SetSize() is called.
SetSize() doesn't do anything for MDI children in wxGTK and other ports using
TDI version of MDI, but it shouldn't result in an assert from
wxTLW::DoMoveWindow() neither, so override DoMoveWindow() in wxTDIChildFrame
to avoid it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75522 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-03 14:40:08 +00:00