wxWidgets.git
11 years agoFix off by 1 error in wxGenericListCtrl::HitTest().
Vadim Zeitlin [Sun, 24 Feb 2013 13:48:20 +0000 (13:48 +0000)] 
Fix off by 1 error in wxGenericListCtrl::HitTest().

Account for the header height if the header is present.

Closes #15063.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73563 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoMove menu messages handling from wxFrame to wxTLW in wxMSW.
Vadim Zeitlin [Sun, 24 Feb 2013 13:48:13 +0000 (13:48 +0000)] 
Move menu messages handling from wxFrame to wxTLW in wxMSW.

This allows to generate the menu open/close/highlight events correctly for the
popup menus used in the dialogs.

Extend the menu sample with a test using such menus.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73562 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix MSVCBuilder so it can pass an alternate make command to the Builder
Robin Dunn [Fri, 22 Feb 2013 05:59:59 +0000 (05:59 +0000)] 
Fix MSVCBuilder so it can pass an alternate make command to the Builder

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73554 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoEnable using jom in place of nmake in the wxMSW build
Robin Dunn [Fri, 22 Feb 2013 05:59:51 +0000 (05:59 +0000)] 
Enable using jom in place of nmake in the wxMSW build

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73553 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAdd version check for MSVC 10
Robin Dunn [Fri, 22 Feb 2013 05:59:42 +0000 (05:59 +0000)] 
Add version check for MSVC 10

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73552 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix crash when drawing bitmaps with mask in wxGTK with GTK+ < 2.20.
Vadim Zeitlin [Thu, 21 Feb 2013 14:32:04 +0000 (14:32 +0000)] 
Fix crash when drawing bitmaps with mask in wxGTK with GTK+ < 2.20.

r73386 introduced a crash in wxGTK drawing code when using old GTK+ versions
by releasing the mask pixmap prematurely. Apparently GTK+ itself was fixed at
some time in 2.19.x time frame but work around the bug for the sake of older
GTK+ versions in wxGTK itself by simply releasing the pixmap at the end of
DoDrawBitmap(), as pre-r73386 code did.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73549 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoNo real changes, just suppress a harmless warning.
Vadim Zeitlin [Thu, 21 Feb 2013 13:22:31 +0000 (13:22 +0000)] 
No real changes, just suppress a harmless warning.

g++ warned about possibly uninitialized variable, so initialize it in its
declaration even if it was actually already always initialized in the branches
where it could be used.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73548 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix background corruption in scrolled wxHtmlWindow.
Vadim Zeitlin [Tue, 19 Feb 2013 23:13:21 +0000 (23:13 +0000)] 
Fix background corruption in scrolled wxHtmlWindow.

Draw the background on the entire virtual size, not just the currently shown
client size.

Closes #15047.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73543 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoapplying patch, closes #13045
Stefan Csomor [Sun, 17 Feb 2013 16:17:20 +0000 (16:17 +0000)] 
applying patch, closes #13045

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73533 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoswitching notebook implementation to common
Stefan Csomor [Sun, 17 Feb 2013 14:54:43 +0000 (14:54 +0000)] 
switching notebook implementation to common

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoRemove wxRTTI macro for wxComboBox from Motif port.
Vadim Zeitlin [Fri, 15 Feb 2013 12:40:22 +0000 (12:40 +0000)] 
Remove wxRTTI macro for wxComboBox from Motif port.

This is now done in src/common/combocmn.cpp.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73521 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoDon't use ternary operator ?: with wxString and literal strings.
Vadim Zeitlin [Fri, 15 Feb 2013 12:40:20 +0000 (12:40 +0000)] 
Don't use ternary operator ?: with wxString and literal strings.

This results in warnings about converting string literal to (non const) C
string.

Also remove the now unneeded calls to c_str() inside wxString::Printf().

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73520 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agosAlways iInclude wx/encinfo.h from src/unix/fontutil.cpp.
Vadim Zeitlin [Fri, 15 Feb 2013 12:40:17 +0000 (12:40 +0000)] 
sAlways iInclude wx/encinfo.h from src/unix/fontutil.cpp.

We use wxNativeEncodingInfo in this file, so we always need this header, not
just when not using PCH.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73519 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoDon't connect to the same signal multiple times in wxGTK wxClipboard.
Vadim Zeitlin [Fri, 15 Feb 2013 12:40:13 +0000 (12:40 +0000)] 
Don't connect to the same signal multiple times in wxGTK wxClipboard.

We called g_signal_connect("selection_get") in wxClipboard code each time its
AddData() method was called. This resulted in progressive but noticeable
slowdown as the handler was called more and more times.

Only connect to the handler once now.

Closes #15038.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73518 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agocloses #13841
Stefan Csomor [Thu, 14 Feb 2013 08:07:24 +0000 (08:07 +0000)] 
closes #13841

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73517 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoadding CoreText
Stefan Csomor [Wed, 13 Feb 2013 19:31:48 +0000 (19:31 +0000)] 
adding CoreText

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73516 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoupdating dates, fixing product name
Stefan Csomor [Wed, 13 Feb 2013 19:29:49 +0000 (19:29 +0000)] 
updating dates, fixing product name

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73515 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agousing default compiler
Stefan Csomor [Wed, 13 Feb 2013 19:28:52 +0000 (19:28 +0000)] 
using default compiler

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73514 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agomaking sure cfbundle identifier has correct characters
Stefan Csomor [Tue, 12 Feb 2013 19:14:51 +0000 (19:14 +0000)] 
making sure cfbundle identifier has correct characters

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73512 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoadded new files
Stefan Csomor [Tue, 12 Feb 2013 11:49:52 +0000 (11:49 +0000)] 
added new files

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73510 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoadded new files
Stefan Csomor [Tue, 12 Feb 2013 11:18:04 +0000 (11:18 +0000)] 
added new files

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73509 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoadded new files
Stefan Csomor [Tue, 12 Feb 2013 10:51:12 +0000 (10:51 +0000)] 
added new files

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoadding lexlib header include, turning off utf8 default
Stefan Csomor [Tue, 12 Feb 2013 10:49:16 +0000 (10:49 +0000)] 
adding lexlib header include, turning off utf8 default

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73507 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agomissed the ppc switch
Stefan Csomor [Tue, 12 Feb 2013 10:34:13 +0000 (10:34 +0000)] 
missed the ppc switch

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73506 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoincreasing deployment to 10.5 min
Stefan Csomor [Tue, 12 Feb 2013 10:33:13 +0000 (10:33 +0000)] 
increasing deployment to 10.5 min

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73505 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix missing or incorrect wxGrid interface items for Phoenix
Robin Dunn [Tue, 12 Feb 2013 07:30:01 +0000 (07:30 +0000)] 
Fix missing or incorrect wxGrid interface items for Phoenix

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73504 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAccount for scrolling when setting the background brush origin in wxMSW.
Vadim Zeitlin [Sun, 10 Feb 2013 16:14:03 +0000 (16:14 +0000)] 
Account for scrolling when setting the background brush origin in wxMSW.

We must use physical coordinates for the brush origin to account for the
coordinates offset in scrolled windows, so add MSWAdjustBrushOrg() and call it
from MSWGetBgBrushForChild().

Closes #14917.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73495 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoNo changes, just factor out PrepareDC() call in the erase sample.
Vadim Zeitlin [Sun, 10 Feb 2013 16:13:58 +0000 (16:13 +0000)] 
No changes, just factor out PrepareDC() call in the erase sample.

Call this only once in DoPaint() itself instead of calling it twice before
calling it.

See #14917.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73494 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoErase the entire virtual area of the window in the erase sample.
Vadim Zeitlin [Sun, 10 Feb 2013 16:13:53 +0000 (16:13 +0000)] 
Erase the entire virtual area of the window in the erase sample.

Just clearing the DC is not enough when the window is scrolled, so clear the
entire virtual area. We should be able to optimize it by clearing just the
rectangle currently scrolled into view but this is at least correct, i.e.
doesn't result in corrupted display, even if it's suboptimal.

See #14917.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73493 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoCompilation fix for !wxHAS_MSW_BACKGROUND_ERASE_HOOK case.
Vadim Zeitlin [Sun, 10 Feb 2013 16:13:50 +0000 (16:13 +0000)] 
Compilation fix for !wxHAS_MSW_BACKGROUND_ERASE_HOOK case.

This doesn't actually change anything as wxHAS_MSW_BACKGROUND_ERASE_HOOK is
always defined, except under WinCE where this file is not used anyhow, but do
test it here for completeness.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73492 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoCreate wxCURSOR_RIGHT_ARROW on the fly from normal arrow cursor under MSW.
Vadim Zeitlin [Sun, 10 Feb 2013 16:13:46 +0000 (16:13 +0000)] 
Create wxCURSOR_RIGHT_ARROW on the fly from normal arrow cursor under MSW.

This allows to avoid having another cursor resource and also makes this cursor
nicer as rightarr.cur looks rather out of place under modern Windows systems.

Closes #14991.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73491 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoCreate new tab at the correct location in wxAuiNotebook.
Vadim Zeitlin [Sun, 10 Feb 2013 16:13:42 +0000 (16:13 +0000)] 
Create new tab at the correct location in wxAuiNotebook.

Create the new tab in wxAuiTabCtrl that was double clicked and not near the
last selected tab which could have been in another wxAuiTabCtrl.

Closes #14995.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73490 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAdd wxIcon::CreateFromHICON() to wxMSW.
Vadim Zeitlin [Sun, 10 Feb 2013 16:13:37 +0000 (16:13 +0000)] 
Add wxIcon::CreateFromHICON() to wxMSW.

Provide a public method properly assigning an HICON to wxIcon, instead of
asking people to call SetHICON() and SetSize().

Closes #15023.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73489 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoDon't call ::GetLayout() in wxMSW code directly.
Vadim Zeitlin [Sat, 9 Feb 2013 11:11:53 +0000 (11:11 +0000)] 
Don't call ::GetLayout() in wxMSW code directly.

Use wxMSW::GetLayout() wrapper to avoid directly binding to a function not
present in old Windows versions and also to fix linking errors with MinGW
after the changes of r73484.

See #3995.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73488 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix infinite loop in wxGrid::PosToEdgeOfLine().
Vadim Zeitlin [Sat, 9 Feb 2013 00:36:02 +0000 (00:36 +0000)] 
Fix infinite loop in wxGrid::PosToEdgeOfLine().

Return -1 from wxGridRowOperations::GetLineBefore(0) to ensure that we exit
the loop in wxGrid::PosToEdgeOfLine(). Doing this is the logical thing to do
as wxGridColumnOperations::GetLineBefore() already behaved like this and this
was is more expected than returning 0, as the function previously did for some
reason.

Closes #15035.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73487 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix pulsing of bitmaps in focused buttons under Windows 7.
Vadim Zeitlin [Sat, 9 Feb 2013 00:35:58 +0000 (00:35 +0000)] 
Fix pulsing of bitmaps in focused buttons under Windows 7.

It turns out that the actual bitmap shown in this case varies between the
bitmaps at PBS_DEFAULTED and PBS_STYLUSHOT, so that it's invisible half of the
time if we don't specify the value for the latter. Do it now to fix unwanted
pulsing of the bitmap in the focused button.

Closes #15034.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73486 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoRefresh wxMSW wxStaticBitmap when its size changes.
Vadim Zeitlin [Sat, 9 Feb 2013 00:35:54 +0000 (00:35 +0000)] 
Refresh wxMSW wxStaticBitmap when its size changes.

As MSW native control centers the image, it must be entirely redrawn when the
area in which the image is centered changes, but it doesn't happen by default,
so do it ourselves explicitly.

Also explain that this centering behaviour is platform-specific and shouldn't
be relied upon.

Closes #4564.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73485 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix drawing of bitmaps with masks in mirrored wxDC.
Vadim Zeitlin [Sat, 9 Feb 2013 00:35:49 +0000 (00:35 +0000)] 
Fix drawing of bitmaps with masks in mirrored wxDC.

The mask must be mirrored in the same way as the main bitmap itself (currently
it's not mirrored at all but this could change in the future), so create the
temporary memory HDC with the same layout as is used by the main HDC.

Closes #3995.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73484 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoDon't include the manifest in wx/msw/wx.rc by default for MSVC compiler.
Vadim Zeitlin [Sat, 9 Feb 2013 00:35:46 +0000 (00:35 +0000)] 
Don't include the manifest in wx/msw/wx.rc by default for MSVC compiler.

The later versions of this compiler don't need it any more, so make it easier
to set up the projects for them at the expense of MSVC 6 and 7 users who will
now need to explicitly define wxUSE_RC_MANIFEST=1 and predefine the
architecture macro (or setup their resource compiler include path to get
wx/msw/rcdefs.h under the lib directory but predefining the architecture is
clearly simpler).

Do generate manifest when using gcc as it predefines the architecture macros
allowing us to avoid requiring using the generated rcdefs.h.

The other compilers will be dealt with as needed if anybody is still using
them.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73483 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoDon't recurse into top level children when validating recursively.
Vadim Zeitlin [Wed, 6 Feb 2013 12:48:12 +0000 (12:48 +0000)] 
Don't recurse into top level children when validating recursively.

Even with wxWS_EX_VALIDATE_RECURSIVELY flag, we should never validate the top
level children (e.g. dialogs) when validating the parent window. This is never
useful and can be completely unexpected.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73482 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoRefactor children traversal in wxWindow::TransferData{To,From}Window().
Vadim Zeitlin [Wed, 6 Feb 2013 12:48:09 +0000 (12:48 +0000)] 
Refactor children traversal in wxWindow::TransferData{To,From}Window().

No real changes, just factor out the logic for children traversal into a
helper template class and reuse it in Validate() and both TransferData()
methods to avoid triplicating it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73481 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAllow creating wxCursor from ANI files under MSW.
Vadim Zeitlin [Wed, 6 Feb 2013 12:46:24 +0000 (12:46 +0000)] 
Allow creating wxCursor from ANI files under MSW.

Simply pass them to the standard LoadCursorFromFile() function which supports
this format.

Closes #3472.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73480 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoDon't show log menu tiems in the tree control sample when !wxUSE_LOG.
Vadim Zeitlin [Wed, 6 Feb 2013 12:43:48 +0000 (12:43 +0000)] 
Don't show log menu tiems in the tree control sample when !wxUSE_LOG.

No real changes, just correct the "#if wxUSE_LOG" placement.

See #4024.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73479 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix harmless warning about NULL in wxStyledTextCtrl code.
Vadim Zeitlin [Wed, 6 Feb 2013 00:42:11 +0000 (00:42 +0000)] 
Fix harmless warning about NULL in wxStyledTextCtrl code.

Cast NULL to the type of third argument of SendMsg() explicitly to avoid a
warning about it from Ubuntu g++ 4.6.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73478 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix harmless g++ warning about operator precedence.
Vadim Zeitlin [Wed, 6 Feb 2013 00:42:09 +0000 (00:42 +0000)] 
Fix harmless g++ warning about operator precedence.

Add parentheses to suppress "&& inside ||" warning.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73477 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoCheck for _MSC_VER definedness in libtiff code.
Vadim Zeitlin [Wed, 6 Feb 2013 00:42:06 +0000 (00:42 +0000)] 
Check for _MSC_VER definedness in libtiff code.

This avoids warnings about _MSC_VER being undefined when it's compared with
1500 when building with gcc.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73476 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix printf format specifier in graphics benchmark.
Vadim Zeitlin [Tue, 5 Feb 2013 20:47:12 +0000 (20:47 +0000)] 
Fix printf format specifier in graphics benchmark.

Use "%ld" for long arguments to fix asserts under 64 bit architectures.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73475 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAdded possibility to use OpenGL for bitmap drawing to graphics benchmark.
Vadim Zeitlin [Tue, 5 Feb 2013 20:47:10 +0000 (20:47 +0000)] 
Added possibility to use OpenGL for bitmap drawing to graphics benchmark.

Draw the bitmap using OpenGL textures. Even without using PBO this results in
much greater performance than using wxImage or raw bitmap access.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73474 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoUse a non-uniform bitmap for image tests in the graphics benchmark.
Vadim Zeitlin [Tue, 5 Feb 2013 20:47:07 +0000 (20:47 +0000)] 
Use a non-uniform bitmap for image tests in the graphics benchmark.

This makes it easier to estimate the speed of the display update visually.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73473 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoNo changes, just rename command line option in graphics benchmark test.
Vadim Zeitlin [Tue, 5 Feb 2013 20:47:05 +0000 (20:47 +0000)] 
No changes, just rename command line option in graphics benchmark test.

It's not used for lines only, so call it "number of iterations" and not
"number of lines" and use "N" instead of "L" option for it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73472 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAdd benchmarks for wxImage and raw bitmap access to the graphics test.
Vadim Zeitlin [Tue, 5 Feb 2013 20:47:02 +0000 (20:47 +0000)] 
Add benchmarks for wxImage and raw bitmap access to the graphics test.

Compare the speed of drawing the bitmaps by synthesizing wxImage and
converting it to wxBitmap and directly modifying wxBitmap bits using raw
bitmap access.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73471 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAllow selecting the kinds of DC to test in the graphics benchmark too.
Vadim Zeitlin [Tue, 5 Feb 2013 20:47:00 +0000 (20:47 +0000)] 
Allow selecting the kinds of DC to test in the graphics benchmark too.

Still run all the tests by default but allow specifying --dc or --gc as well
as --paint, --client or --memory to test just the specified kinds of DCs.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73470 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoNo real changes, just flush output in the graphics benchmark.
Vadim Zeitlin [Tue, 5 Feb 2013 20:46:57 +0000 (20:46 +0000)] 
No real changes, just flush output in the graphics benchmark.

Show the output messages sooner instead of showing them all only when the test
ends.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73469 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoRun wxClientDC and wxMemoryDC tests too in the graphics benchmark.
Vadim Zeitlin [Tue, 5 Feb 2013 20:46:55 +0000 (20:46 +0000)] 
Run wxClientDC and wxMemoryDC tests too in the graphics benchmark.

These tests were not run because OnPaint() handler was called before OnCreate()
and exited the main loop before the create event could be dispatched. Fix this
by just running everything from OnPaint(), like this we're sure to do it.

Also refactor the code a little to avoid duplicating the tests.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73468 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAllow running only some graphics benchmarks to save time.
Vadim Zeitlin [Tue, 5 Feb 2013 20:46:53 +0000 (20:46 +0000)] 
Allow running only some graphics benchmarks to save time.

Running all the benchmarks is relatively long, so allow running individual
ones only.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73467 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoIgnore empty LC_XXX variables in locale detection code.
Vadim Zeitlin [Tue, 5 Feb 2013 20:46:26 +0000 (20:46 +0000)] 
Ignore empty LC_XXX variables in locale detection code.

If LC_ALL or LC_MESSAGES is set but empty, ignore it and use the next
environment variable. This is consistent with the standard setlocale()
behaviour which only uses LC_ALL if it is set and not empty.

Closes #15006.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73466 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix spelling in utils/screenshotgen sources.
Vadim Zeitlin [Tue, 5 Feb 2013 20:46:22 +0000 (20:46 +0000)] 
Fix spelling in utils/screenshotgen sources.

No real changes.

Closes #15024.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73465 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoNo changes, just remove unused part of expression.
Vadim Zeitlin [Tue, 5 Feb 2013 20:46:18 +0000 (20:46 +0000)] 
No changes, just remove unused part of expression.

We don't do anything with the result of inserting the watch in
fswatchercmn.cpp.

Closes #15027.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73464 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAdd simple tests for Scintilla annotations to the stc sample.
Vadim Zeitlin [Tue, 5 Feb 2013 20:46:16 +0000 (20:46 +0000)] 
Add simple tests for Scintilla annotations to the stc sample.

Show how add, remove and clear annotations and also how to update the text
width when long annotations are added.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73463 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoUse a single EVT_MENU_RANGE in stc sample instead of tons of EVT_MENU.
Vadim Zeitlin [Tue, 5 Feb 2013 20:46:13 +0000 (20:46 +0000)] 
Use a single EVT_MENU_RANGE in stc sample instead of tons of EVT_MENU.

Make it easier to add new menu items forwarded to the editor in the sample.

No real changes.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73462 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoOnly impose minimal height for buttons with non-empty label in wxMSW.
Vadim Zeitlin [Tue, 5 Feb 2013 20:46:10 +0000 (20:46 +0000)] 
Only impose minimal height for buttons with non-empty label in wxMSW.

wxBU_EXACTFIT in wxMSW only affected the width of the button but not its
height, which was still made as big as the standard button size as otherwise
the button text was rendered badly. However there is no reason to do this for
the buttons without any text, so let wxBU_EXACTFIT be really exact, in both
directions, in this case.

Also document this rather non obvious wxBU_EXACTFIT behaviour.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73461 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoReally fix resizing of wxGird column/rows after a hidden one.
Vadim Zeitlin [Tue, 5 Feb 2013 20:46:06 +0000 (20:46 +0000)] 
Really fix resizing of wxGird column/rows after a hidden one.

The previous fix (r73399) broke resizing from the side of the preceding grid
line, restore the old code and just add a loop finding the first visible line
before the one being clicked.

See #14947.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix wxGridColumnOperations::GetLineBefore() for the first column.
Vadim Zeitlin [Tue, 5 Feb 2013 20:46:03 +0000 (20:46 +0000)] 
Fix wxGridColumnOperations::GetLineBefore() for the first column.

We should return -1 from here as there is no column before the first one and
wxGridRowOperations::GetLineBefore() already does this.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73459 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAvoid harmless warning about comparing unsigned with 0.
Vadim Zeitlin [Mon, 4 Feb 2013 16:16:00 +0000 (16:16 +0000)] 
Avoid harmless warning about comparing unsigned with 0.

Fix warning in assert in wxProcess::SetPriority(): don't compare unsigned
priority with wxPRIORITY_MIN which is just 0, the condition is always true.

Closes #14931.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73456 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoInvalid conversion compile error fix (GTK+ 2.12.9)
Julian Smart [Mon, 4 Feb 2013 13:54:17 +0000 (13:54 +0000)] 
Invalid conversion compile error fix (GTK+ 2.12.9)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73455 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAdded support for sub-object virtual attributes (temporary attributes for characters...
Julian Smart [Mon, 4 Feb 2013 12:52:14 +0000 (12:52 +0000)] 
Added support for sub-object virtual attributes (temporary attributes for characters within objects)
and also virtual text that can replace the actual text.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73454 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoRename all WEB_VIEW* style identifiers to WEBVIEW*.
Steve Lamerton [Fri, 1 Feb 2013 09:38:53 +0000 (09:38 +0000)] 
Rename all WEB_VIEW* style identifiers to WEBVIEW*.

This makes wxWebView consistent with the rest of the toolkit.

Closes #15013

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73453 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoNo changes, just remove unneeded variable initialization in carbon listctrl.
Stefan Neis [Sun, 27 Jan 2013 14:49:02 +0000 (14:49 +0000)] 
No changes, just remove unneeded variable initialization in carbon listctrl.
Closes #14997.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73445 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoNo real changes, just spelling fixes. Closes #14998.
Stefan Neis [Sun, 27 Jan 2013 14:42:52 +0000 (14:42 +0000)] 
No real changes, just spelling fixes. Closes #14998.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73444 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoJust some spelling fixes, no real changes. Closes #15001.
Stefan Neis [Sun, 27 Jan 2013 14:30:52 +0000 (14:30 +0000)] 
Just some spelling fixes, no real changes. Closes #15001.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73442 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoPrevent assertions because of zero image size
Julian Smart [Sun, 27 Jan 2013 08:41:37 +0000 (08:41 +0000)] 
Prevent assertions because of zero image size

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73441 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoUpdated the Latvian translation (Janis Eisaks)
Julian Smart [Thu, 24 Jan 2013 09:24:06 +0000 (09:24 +0000)] 
Updated the Latvian translation (Janis Eisaks)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73438 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoInitialize all wxHTTPStream members in ctor.
Vadim Zeitlin [Wed, 23 Jan 2013 11:44:30 +0000 (11:44 +0000)] 
Initialize all wxHTTPStream members in ctor.

Don't leave m_httpsize and m_read_bytes uninitialized.

Closes #14993.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73436 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoNo real changes, just fix some typos in comments in wxMSW code.
Vadim Zeitlin [Wed, 23 Jan 2013 11:44:26 +0000 (11:44 +0000)] 
No real changes, just fix some typos in comments in wxMSW code.

Closes #14994.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73435 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agolet wxCheckListBox get the properties of wxCheckListBoxBase (was wxListBox) for wxGTK...
Jouk Jansen [Wed, 23 Jan 2013 10:15:15 +0000 (10:15 +0000)] 
let wxCheckListBox get the properties of wxCheckListBoxBase (was wxListBox) for wxGTK1, just like the other versions of wx

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73434 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoUpdate openVMS compile support
Jouk Jansen [Tue, 22 Jan 2013 07:18:35 +0000 (07:18 +0000)] 
Update openVMS compile support

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73429 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix background drawing in EVT_ERASE_BACKGROUND handler in erase sample.
Vadim Zeitlin [Mon, 21 Jan 2013 16:37:09 +0000 (16:37 +0000)] 
Fix background drawing in EVT_ERASE_BACKGROUND handler in erase sample.

Clear the DC before moving its offset to ensure that it's cleared entirely and
also draw the background using the virtual, not client, size.

See #14917.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73428 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoDon't include wxUniversal configurations in MSVC project files.
Vadim Zeitlin [Mon, 21 Jan 2013 16:37:01 +0000 (16:37 +0000)] 
Don't include wxUniversal configurations in MSVC project files.

wxUniversal is practically not used under MSW and just confuses people.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73427 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix a crash in wxExecute() in wxMSW too.
Vadim Zeitlin [Mon, 21 Jan 2013 11:28:50 +0000 (11:28 +0000)] 
Fix a crash in wxExecute() in wxMSW too.

Don't dereference potentially NULL wxProcess pointer unconditionally.

This should have been together with the changes of r73425, see #14931.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73426 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix crash in wxExecute() introduced by r73406.
Vadim Zeitlin [Mon, 21 Jan 2013 11:26:00 +0000 (11:26 +0000)] 
Fix crash in wxExecute() introduced by r73406.

Don't dereference potentially NULL wxProcess pointer.

See #14931.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73425 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoNo changes, just remove unused variable in wxCarbon code.
Vadim Zeitlin [Mon, 21 Jan 2013 11:19:04 +0000 (11:19 +0000)] 
No changes, just remove unused variable in wxCarbon code.

Closes #14989.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73424 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAdd wxAUI_TB_PLAIN_BACKGROUND wxAuiToolBar style.
Vadim Zeitlin [Mon, 21 Jan 2013 11:19:00 +0000 (11:19 +0000)] 
Add wxAUI_TB_PLAIN_BACKGROUND wxAuiToolBar style.

This style allows to use a plain, solid colour, background instead of the
default gradient one.

Closes #10585.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73423 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAdd wxCheckListBox::GetCheckedItems() helper.
Vadim Zeitlin [Mon, 21 Jan 2013 11:18:55 +0000 (11:18 +0000)] 
Add wxCheckListBox::GetCheckedItems() helper.

This method is similar to wxListBox::GetSelections() and allows to retrieve
all checked items at once.

Closes #14969.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73422 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoDerive wxCheckListBox from wxCheckListBoxBase in wxGTK.
Vadim Zeitlin [Mon, 21 Jan 2013 11:18:50 +0000 (11:18 +0000)] 
Derive wxCheckListBox from wxCheckListBoxBase in wxGTK.

This ensures that any methods defined in wxCheckListBoxBase will be available
in wxGTK wxCheckListBox too.

See #14969.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73421 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoOpenVMS configuration update
Jouk Jansen [Mon, 21 Jan 2013 11:11:55 +0000 (11:11 +0000)] 
OpenVMS configuration update

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73420 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoOpenVMS compile support for wxSPLASH and sample
Jouk Jansen [Mon, 21 Jan 2013 11:04:40 +0000 (11:04 +0000)] 
OpenVMS compile support for wxSPLASH and sample

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73419 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoupdated for 10.5 minimum
Stefan Csomor [Mon, 21 Jan 2013 08:26:55 +0000 (08:26 +0000)] 
updated for 10.5 minimum

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73418 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoA fix for VC6 compilation: define missing priority constants.
Vadim Zeitlin [Sun, 20 Jan 2013 22:39:34 +0000 (22:39 +0000)] 
A fix for VC6 compilation: define missing priority constants.

{ABOVE,BELOW}_NORMAL_PRIORITY_CLASS aren ot defined in VC6 headers, see
http://buildbot.tt-solutions.com/wx/builders/XPSP2%20VC6%20wxMSW%20trunk%20release/builds/2943/steps/compile/logs/stdio
so define them ourselves.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73415 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoworkaround for crash, see #14906
Stefan Csomor [Sun, 20 Jan 2013 21:07:15 +0000 (21:07 +0000)] 
workaround for crash, see #14906

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73414 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoPass wxWANTS_CHARS to the wxRichTextCtrl constructor in the unit tests.
Steve Lamerton [Sun, 20 Jan 2013 19:28:20 +0000 (19:28 +0000)] 
Pass wxWANTS_CHARS to the wxRichTextCtrl constructor in the unit tests.

Fixes test failures caused by the return key being used for dialog navigation.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73413 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoImprove appearance of text with background colour in wxHTML.
Vadim Zeitlin [Sun, 20 Jan 2013 12:53:22 +0000 (12:53 +0000)] 
Improve appearance of text with background colour in wxHTML.

Use wxHTML_CLR_TRANSPARENT_BACKGROUND instead of wxHTML_CLR_BACKGROUND for the
bgcolor attribute of the body tag to prevent clipping of the text cells by the
next cell with opaque background.

Closes #14986.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73412 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix wxKeyEvent::GetPosition() after the changes of r72207.
Vadim Zeitlin [Sun, 20 Jan 2013 12:45:52 +0000 (12:45 +0000)] 
Fix wxKeyEvent::GetPosition() after the changes of r72207.

Now that the position of wxKeyEvent is initialized on demand, don't use m_x
and m_y fields directly but always use GetX() and GetY().

Also improve GetPosition() documentation slightly and mention only the new
version, taking wxCoord, in it as the old one, taking long, is provided for
compatiblity only.

Closes #14987.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73411 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agono real changes, just move wxMask::GetBitmap() to wxMask section
Paul Cornett [Sun, 20 Jan 2013 06:38:43 +0000 (06:38 +0000)] 
no real changes, just move wxMask::GetBitmap() to wxMask section

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73410 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoadd wxMask::GetBitmap(), closes #9381
Paul Cornett [Sun, 20 Jan 2013 06:28:11 +0000 (06:28 +0000)] 
add wxMask::GetBitmap(), closes #9381

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73409 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agosilence GCC warning "base class ‘class wxEvtHandler’ should be explicitly initialized...
Paul Cornett [Sun, 20 Jan 2013 03:24:21 +0000 (03:24 +0000)] 
silence GCC warning "base class ‘class wxEvtHandler’ should be explicitly initialized in the copy constructor"

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agosizeof(char) is 1. By definition.
Paul Cornett [Sun, 20 Jan 2013 03:08:33 +0000 (03:08 +0000)] 
sizeof(char) is 1. By definition.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73407 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAdd wxProcess::SetPriority() to allow setting the priority of child processes.
Vadim Zeitlin [Sun, 20 Jan 2013 02:10:12 +0000 (02:10 +0000)] 
Add wxProcess::SetPriority() to allow setting the priority of child processes.

This uses the same conventions as wxThread::SetPriority() but works on the
entire process.

Closes #14931.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73406 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoRename WXTHREAD_XXX_PRIORITY yo wxPRIORITY_XXX.
Vadim Zeitlin [Sun, 20 Jan 2013 02:10:07 +0000 (02:10 +0000)] 
Rename WXTHREAD_XXX_PRIORITY yo wxPRIORITY_XXX.

This will allow to reuse the same constants for the process priorities in an
upcoming commit.

See #14931.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73405 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoFix appearance of multiline wxCheckBox with non-standard colours in wxMSW.
Vadim Zeitlin [Sun, 20 Jan 2013 02:09:56 +0000 (02:09 +0000)] 
Fix appearance of multiline wxCheckBox with non-standard colours in wxMSW.

Owner-drawn checkbox (which is used when wxCheckBox colour is changed) didn't
center its label correctly and didn't right align it when using wxALIGN_RIGHT
style in focused state.

Closes #9628.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

11 years agoAdd copy constructor to wxValidator.
Vadim Zeitlin [Sun, 20 Jan 2013 02:09:52 +0000 (02:09 +0000)] 
Add copy constructor to wxValidator.

It can be useful for implementing Clone() in the derived classes.

Closes #2146.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73403 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775