wxWidgets.git
11 years agoFix return value of wxCountingOutputStream::LastWrite().
Vadim Zeitlin [Mon, 20 May 2013 13:15:26 +0000 (13:15 +0000)] 
Fix return value of wxCountingOutputStream::LastWrite().

Don't reuse m_lastcount in wxCountingOutputStream to store the stream length,
this doesn't make any sense and results in LastWrite() returning completely
wrong results as it expects m_lastcount to be the number of bytes written by
the last operation.

Add m_lastPos member to store the stream length instead.

Also correct wxCountingOutputStream documentation.

Closes #15215.

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

11 years agoMake code reading BMP files more robust.
Vadim Zeitlin [Mon, 20 May 2013 13:15:21 +0000 (13:15 +0000)] 
Make code reading BMP files more robust.

Check that we did correctly read the requested amount of data instead of
blindly assuming that the needed (from the point of view of BMP format
specification) number of bytes are always available -- this doesn't work so
well with corrupted or truncated files.

Closes #12056.

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

11 years agoAdd wxInputStream::ReadAll() and wxOutputStream::WriteAll().
Vadim Zeitlin [Mon, 20 May 2013 13:15:16 +0000 (13:15 +0000)] 
Add wxInputStream::ReadAll() and wxOutputStream::WriteAll().

Unlike Read() and Write(), these functions always transfer exactly the
specified number of bytes or fail.

See #12056.

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

11 years agoLink with liblzma when using built-in libtiff if it's available.
Vadim Zeitlin [Sun, 19 May 2013 17:26:53 +0000 (17:26 +0000)] 
Link with liblzma when using built-in libtiff if it's available.

New version of libtiff includes code using liblzma if it's available, so we
need to link with it in this case.

Closes #14963.

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

11 years agoPropagate wxEVT_COMMAND_TEXT_UPDATED renaming to the real stc.cpp.
Vadim Zeitlin [Sun, 19 May 2013 12:47:34 +0000 (12:47 +0000)] 
Propagate wxEVT_COMMAND_TEXT_UPDATED renaming to the real stc.cpp.

wxEVT_COMMAND_TEXT_UPDATED was renamed to wxEVT_TEXT in the generated stc.cpp
but not in stc.cpp.in it was generated from. Do it there too to prevent the
correct version in stc.cpp from being overwritten during the next regeneration.

See #10661.

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

11 years agoTrigger wxLog auto-creation when getting old logger in wxLogChain ctor.
Vadim Zeitlin [Sun, 19 May 2013 12:38:22 +0000 (12:38 +0000)] 
Trigger wxLog auto-creation when getting old logger in wxLogChain ctor.

This ensures that a program that uses wxLogChain or one of the classes
deriving from it, such as wxLogWindow, can do it directly without worrying
about the standard logging being completely suppressed if the default log
target hadn't been instantiated yet.

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

11 years agoDelete the associated dialog in wxGTK wx{File,Dir}Button.
Vadim Zeitlin [Sun, 19 May 2013 12:38:18 +0000 (12:38 +0000)] 
Delete the associated dialog in wxGTK wx{File,Dir}Button.

The code seemed to rely on Destroy() being called for deleting the dialog, but
it's actually not used for child windows, so do it in dtor instead.

Closes #15156.

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

11 years agoAdd conversions to/from long long to wxUniChar.
Vadim Zeitlin [Sun, 19 May 2013 12:38:12 +0000 (12:38 +0000)] 
Add conversions to/from long long to wxUniChar.

Allow conversions to/from long long and unsigned long long values in wxUniChar
for consistency with the other integral types.

Also make the code shorter by using helper wxDO_FOR_INT_TYPES() and
wxDO_FOR_CHAR_INT_TYPES() macros to avoid duplicating the same code for all of
the integral types and having to handle wchar_t (and wxLongLong_t now)
specially because sometimes we may need to overload on it and sometimes not.

Finally, add more tests to check that all the wxUniChar methods compile and
work with all the different types.

Closes #15206.

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

11 years agoDisable menu event test case in wxGTK buildbot slaves.
Vadim Zeitlin [Sun, 19 May 2013 12:38:09 +0000 (12:38 +0000)] 
Disable menu event test case in wxGTK buildbot slaves.

This test sporadically fails for unknown reason and I don't know what to do
about it, so disable it for now to let the test suite pass consistently and be
notifed about any new failures.

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

11 years agoUse wxCOMPtr throughout the wxWebViewIE Find code.
Steve Lamerton [Sat, 18 May 2013 14:07:58 +0000 (14:07 +0000)] 
Use wxCOMPtr throughout the wxWebViewIE Find code.

As well as making the code a bit neater this seems to fix some memory issues.

See #15207.

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

11 years agoTest using wxString::ToCDouble() in wxAny.
Vadim Zeitlin [Fri, 17 May 2013 20:00:10 +0000 (20:00 +0000)] 
Test using wxString::ToCDouble() in wxAny.

Apparently the heap corruption problems in wxOSX/PPC build are due to using
wxString::ToDouble() and not anything done specifically in wxAny at all.

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

11 years agoTry using wxString::ToCDouble() instead of ToDouble() in wxAny case.
Vadim Zeitlin [Fri, 17 May 2013 11:53:46 +0000 (11:53 +0000)] 
Try using wxString::ToCDouble() instead of ToDouble() in wxAny case.

Apparently enabling the call to ToDouble() in the test is enough to corrupt
the heap in wxOSX PPC build. No idea how can this be possible but try to check
if using ToCDouble() helps...

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

11 years agoMake wxPreferencesEditor dtor virtual.
Vadim Zeitlin [Fri, 17 May 2013 11:53:43 +0000 (11:53 +0000)] 
Make wxPreferencesEditor dtor virtual.

Mainly just to suppress g++ warnings about a class with virtual functions but
non-virtual dtor, this class isn't really supposed to be used polymorphically.

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

11 years agoAdd richtext event types.
Robin Dunn [Thu, 16 May 2013 18:00:12 +0000 (18:00 +0000)] 
Add richtext event types.

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

11 years agoMore richtext fixes and cleanup for Phoenix
Robin Dunn [Thu, 16 May 2013 18:00:02 +0000 (18:00 +0000)] 
More richtext fixes and cleanup for Phoenix

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

11 years agoAdd docs for SetMin and SetMax
Robin Dunn [Thu, 16 May 2013 17:57:01 +0000 (17:57 +0000)] 
Add docs for SetMin and SetMax

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

11 years agoInitialize wxXmlResourceHandler members in its ctor.
Vadim Zeitlin [Thu, 16 May 2013 14:43:13 +0000 (14:43 +0000)] 
Initialize wxXmlResourceHandler members in its ctor.

Not sure if this results in any real problems but at the very least memory
checking tools give errors about reading uninitialized memory in
wxXmlResourceHandlerImpl::CreateResource() if we leave them uninitialized, so
do initialize all the pointers.

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

11 years agoAllow wxPreferencesEditor::Dismiss() to work when using modal dialogs too.
Vadim Zeitlin [Thu, 16 May 2013 14:43:09 +0000 (14:43 +0000)] 
Allow wxPreferencesEditor::Dismiss() to work when using modal dialogs too.

The modal dialog case is not really different, the dialog may still need to be
dismissed if the associated object doesn't exist any longer.

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

11 years agoAdd wxPreferencesEditor::ShownModally().
Vadim Zeitlin [Thu, 16 May 2013 14:43:06 +0000 (14:43 +0000)] 
Add wxPreferencesEditor::ShownModally().

While this is not necessary to use wxPreferencesEditor in normal scenario, it
can be useful if the program needs to handle modal dialogs in some special way.

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

11 years agoMake wxPreferencesEditor::Show() virtual.
Vadim Zeitlin [Thu, 16 May 2013 14:43:02 +0000 (14:43 +0000)] 
Make wxPreferencesEditor::Show() virtual.

This allows derived classes to override it to do something before/after
showing the dialog, which can be useful on the platforms where modal dialogs
are used for wxPreferencesEditor implementation.

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

11 years agoUse "<Application> Preferences" as generic wxPreferencesEditor dialog title.
Vadim Zeitlin [Thu, 16 May 2013 14:42:59 +0000 (14:42 +0000)] 
Use "<Application> Preferences" as generic wxPreferencesEditor dialog title.

This is more appropriate than just "Preferences" under MSW and GTK which use
the generic wxPreferencesEditor, OS X has its own native version which
continues to correctly use "Preferences" for the title.

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

11 years agoAllow to specify the title used by wxPreferencesEditor window.
Vadim Zeitlin [Thu, 16 May 2013 14:42:56 +0000 (14:42 +0000)] 
Allow to specify the title used by wxPreferencesEditor window.

Customize the title is useful for "Settings"-style windows which are used for
editing the properties of the given object, that should be identified in the
window title, as opposed to the global program preferences.

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

11 years agoOpen generic wxPreferencesEditor at last shown page.
Vadim Zeitlin [Thu, 16 May 2013 14:42:52 +0000 (14:42 +0000)] 
Open generic wxPreferencesEditor at last shown page.

This is very convenient under systems using a modal dialog for the preferences
editor implementation (such as MSW), as it allows to do several changes in the
same page without having to select it manually every time.

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

11 years agoRename CreateWindow() to CreateDialog() in generic wxPreferencesEditor code.
Vadim Zeitlin [Thu, 16 May 2013 14:42:50 +0000 (14:42 +0000)] 
Rename CreateWindow() to CreateDialog() in generic wxPreferencesEditor code.

No real changes, just rename a method to avoid confusion with
wxPreferencesPage::CreateWindow().

Also return the concrete type of the dialog, not a base wxDialog, as it will
be useful for future changes.

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

11 years agoAdd wxEVT_DIRCTRL_FILEACTIVATED wxDirCtrl event.
Vadim Zeitlin [Thu, 16 May 2013 14:33:07 +0000 (14:33 +0000)] 
Add wxEVT_DIRCTRL_FILEACTIVATED wxDirCtrl event.

Allow processing double clicks on the files in the directory control.

Closes #15208.

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

11 years agoRename wxEVT_DIRCTRL_CHANGED to wxEVT_DIRCTRL_SELECTIONCHANGED.
Vadim Zeitlin [Thu, 16 May 2013 14:33:01 +0000 (14:33 +0000)] 
Rename wxEVT_DIRCTRL_CHANGED to wxEVT_DIRCTRL_SELECTIONCHANGED.

This is more consistent with the existing wxEVT_FILECTRL_SELECTIONCHANGED.

Closes #15209.

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

11 years agoAllow associating a validator with wxGridCellTextEditor.
Vadim Zeitlin [Thu, 16 May 2013 14:32:55 +0000 (14:32 +0000)] 
Allow associating a validator with wxGridCellTextEditor.

Add wxGridCellTextEditor::SetValidator() for finer control over text input in
wxGrid.

Closes #15176.

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

11 years agoRe-enable yet another hopefully harmless test in wxAny test case.
Vadim Zeitlin [Thu, 16 May 2013 14:32:50 +0000 (14:32 +0000)] 
Re-enable yet another hopefully harmless test in wxAny test case.

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

11 years agoCall wxThread::Create() from Run() automatically.
Václav Slavík [Thu, 16 May 2013 14:15:46 +0000 (14:15 +0000)] 
Call wxThread::Create() from Run() automatically.

In the common case, when Run() is called immediately after Create() and
default stack size is used, it's unnecessarily verbose.  Just create the
thread in Run() if it wasn't done explicitly yet.

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

11 years agoMove POSIX implementation of wxThread::Create() to wxThreadInternal.
Václav Slavík [Thu, 16 May 2013 14:15:42 +0000 (14:15 +0000)] 
Move POSIX implementation of wxThread::Create() to wxThreadInternal.

No real changes, just refactoring to follow the same pattern as other
implementations use.

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

11 years agoLock m_critsect in POSIX wxThread::Create().
Václav Slavík [Thu, 16 May 2013 14:15:38 +0000 (14:15 +0000)] 
Lock  m_critsect in POSIX wxThread::Create().

This is the documented behavior: all methods accessing m_internal should
lock it.

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

11 years agoRe-enable wxAny<double>::GetAs<wxString>() test.
Vadim Zeitlin [Thu, 16 May 2013 11:40:08 +0000 (11:40 +0000)] 
Re-enable wxAny<double>::GetAs<wxString>() test.

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

11 years agom_useExtendedPrecision is only used if the macro wxUSE_APPLE_IEEE is defined
Jouk Jansen [Thu, 16 May 2013 06:18:54 +0000 (06:18 +0000)] 
m_useExtendedPrecision is only used if the macro wxUSE_APPLE_IEEE is defined

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

11 years agoEnable wxAny<double>::GetAs<unsigned long>() test.
Vadim Zeitlin [Thu, 16 May 2013 01:45:42 +0000 (01:45 +0000)] 
Enable wxAny<double>::GetAs<unsigned long>() test.

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

11 years agoRe-enable a single m_anyDoubleDouble1 test in wxAny test case.
Vadim Zeitlin [Wed, 15 May 2013 21:45:28 +0000 (21:45 +0000)] 
Re-enable a single m_anyDoubleDouble1 test in wxAny test case.

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

11 years agoFix wxXmlNode self-assignment.
Vadim Zeitlin [Wed, 15 May 2013 21:45:25 +0000 (21:45 +0000)] 
Fix wxXmlNode self-assignment.

Don't lose the node contents if it's assigned to itself.

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

11 years agoReenable m_anyBool1 tests in wxAny test case too.
Vadim Zeitlin [Wed, 15 May 2013 20:02:01 +0000 (20:02 +0000)] 
Reenable m_anyBool1 tests in wxAny test case too.

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

11 years agoFix memory leak in wxXmlNode::operator=().
Vadim Zeitlin [Wed, 15 May 2013 20:01:58 +0000 (20:01 +0000)] 
Fix memory leak in wxXmlNode::operator=().

We must delete all children and attributes in the node being overwritten and
not just the first one of each.

Add a unit test exercising this code to be able to check that valgrind doesn't
report memory leak any more after the fix.

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

11 years agoRe-enable conversions of wxAny to boolean tests.
Vadim Zeitlin [Wed, 15 May 2013 13:05:53 +0000 (13:05 +0000)] 
Re-enable conversions of wxAny to boolean tests.

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

11 years agoRestore ability to parse hours only with wxDateTime::ParseTime().
Vadim Zeitlin [Wed, 15 May 2013 13:05:49 +0000 (13:05 +0000)] 
Restore ability to parse hours only with wxDateTime::ParseTime().

This was accidentally removed in r51059, but worked in 2.8 and so should
continue to work.

Also add a unit test to ensure that this doesn't get broken again in the
future.

Closes #15204.

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

11 years agoFix crash in wxGTK wxPopupWindow when creating it without parent.
Vadim Zeitlin [Wed, 15 May 2013 13:05:45 +0000 (13:05 +0000)] 
Fix crash in wxGTK wxPopupWindow when creating it without parent.

Popup windows don't necessarily have a parent, so don't crash if parent
pointer is NULL in wxPopupWindow::Create().

Closes #15173.

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

11 years agoAllow shrinking the array with wxArray::resize().
Vadim Zeitlin [Wed, 15 May 2013 13:05:40 +0000 (13:05 +0000)] 
Allow shrinking the array with wxArray::resize().

This method did nothing if its argument was less than the current array size,
as it was just a synonym for SetSize() which was documented to behave like
this, but this was inconsistent with std::vector and wxVector resize() which
does shrink the array, so change wxArray version to shrink it too.

Closes #15195.

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

11 years agoFix typo in a closing "#endif" comment in the test.
Vadim Zeitlin [Wed, 15 May 2013 13:05:36 +0000 (13:05 +0000)] 
Fix typo in a closing "#endif" comment in the test.

Closes #15203.

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

11 years agoMove wxTransform2D methods' bodies to geometry.cpp.
Václav Slavík [Tue, 14 May 2013 16:58:20 +0000 (16:58 +0000)] 
Move wxTransform2D methods' bodies to geometry.cpp.

They are all virtual and so cannot be inlined anyway and having them in
the header like this confuses the g++ linker into always pulling some of
the methods in merely because geometry.h was included.

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

11 years agoReenable some wxAny tests back.
Vadim Zeitlin [Tue, 14 May 2013 11:07:15 +0000 (11:07 +0000)] 
Reenable some wxAny tests back.

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

11 years agoAdd more echo trace statements to runtests.bat script.
Vadim Zeitlin [Tue, 14 May 2013 11:07:12 +0000 (11:07 +0000)] 
Add more echo trace statements to runtests.bat script.

Try to make the output a bit more organized.

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

11 years agoDisable more wxAny tests again.
Vadim Zeitlin [Mon, 13 May 2013 17:09:20 +0000 (17:09 +0000)] 
Disable more wxAny tests again.

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

11 years agoTry to find another wxAny test that results in heap corruption.
Vadim Zeitlin [Mon, 13 May 2013 13:25:44 +0000 (13:25 +0000)] 
Try to find another wxAny test that results in heap corruption.

Conversion to float is not the only problem...

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

11 years agoDisable more tests in wxOSX/PPC build.
Vadim Zeitlin [Mon, 13 May 2013 11:05:43 +0000 (11:05 +0000)] 
Disable more tests in wxOSX/PPC build.

Also added a #warning to make it more apparent what we're doing here.

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

11 years agoWhack-a-mole with wxOSX/PPC unit tests continued.
Vadim Zeitlin [Sun, 12 May 2013 23:04:13 +0000 (23:04 +0000)] 
Whack-a-mole with wxOSX/PPC unit tests continued.

The problem was not related to float-to-double conversions in wxAny code, try
to narrow it even further.

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

11 years agoFix harmless Clang warning about unreachable code.
Vadim Zeitlin [Sun, 12 May 2013 23:04:08 +0000 (23:04 +0000)] 
Fix harmless Clang warning about unreachable code.

Unfortunately Clang intelligent flow analysis prevents us from using different
asserts for invalid parameter value and unhandled one, which could happen if
more elements are added to wxMouseButton enum in the future.

Closes #15201.

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

11 years agoDisable double-to-float conversion tests in wxAny code.
Vadim Zeitlin [Sun, 12 May 2013 20:34:46 +0000 (20:34 +0000)] 
Disable double-to-float conversion tests in wxAny code.

This seems to be the reason for the heap corruption in wxOSX PPC builds.

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

11 years agoDisable the rest of Editable() test for wxBitmapComboBox.
Vadim Zeitlin [Sun, 12 May 2013 20:34:43 +0000 (20:34 +0000)] 
Disable the rest of Editable() test for wxBitmapComboBox.

See r73957, this test keeps failing when running on a build slave, even though
it passes when ran locally.

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

11 years agoUse "-t" option when running buildbot tests under Windows.
Vadim Zeitlin [Sun, 12 May 2013 20:34:40 +0000 (20:34 +0000)] 
Use "-t" option when running buildbot tests under Windows.

Use "-t" in runtests.bar used by Windows build slaves to get more information
about the test failures, notably if they crash before completing.

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

11 years agoFix spurious g++ warning about possibly uninitialized variable use.
Vadim Zeitlin [Sun, 12 May 2013 20:34:37 +0000 (20:34 +0000)] 
Fix spurious g++ warning about possibly uninitialized variable use.

The variables are actually initialized in all cases if the enum has valid
value but the compiler doesn't seem to take this into account, so just
initialize them always to avoid the warnings.

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

11 years agodeactivating r65382 see #12267 (which does not seem to happen anymore even without...
Stefan Csomor [Sun, 12 May 2013 20:18:57 +0000 (20:18 +0000)] 
deactivating r65382 see #12267 (which does not seem to happen anymore even without this change), fixes #14938,

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

11 years agoEnable another test in wxAnyTestCase under OS X.
Vadim Zeitlin [Sun, 12 May 2013 19:19:46 +0000 (19:19 +0000)] 
Enable another test in wxAnyTestCase under OS X.

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

11 years agoRecognize "sandbox" user as indicating automatic testing.
Vadim Zeitlin [Sun, 12 May 2013 19:19:43 +0000 (19:19 +0000)] 
Recognize "sandbox" user as indicating automatic testing.

The buildbot slaves actually use "sandbox" as the user name, not "buildbot",
so test for the former instead for the latter, see r73963.

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

11 years agoEnable yet more tests in wxAnyTestCase::GetAs().
Vadim Zeitlin [Fri, 10 May 2013 19:21:45 +0000 (19:21 +0000)] 
Enable yet more tests in wxAnyTestCase::GetAs().

This is part of the continuing series of commits to find out what results in
heap corruption in wxOSX PPC builds.

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

11 years agoRecognize "buildbot" user in IsAutomaticTest() too.
Vadim Zeitlin [Fri, 10 May 2013 19:21:42 +0000 (19:21 +0000)] 
Recognize "buildbot" user in IsAutomaticTest() too.

Some build slaves apparently run under "buildbot" user and not "buildslave",
recognize them as running automatic tests too.

Also show the name of the current system and user on startup to avoid such
guess work in the future.

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

11 years agoRevert "Show the name of the actually tested class in text entry unit tests."
Vadim Zeitlin [Fri, 10 May 2013 19:21:38 +0000 (19:21 +0000)] 
Revert "Show the name of the actually tested class in text entry unit tests."

Revert r73959, the name of the control can be seen from the name of the
failing test case actually, so there is no need to include it in the message.

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

11 years agoapplying editor part of patch, see #15003
Stefan Csomor [Fri, 10 May 2013 18:31:51 +0000 (18:31 +0000)] 
applying editor part of patch, see #15003

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

11 years agoUse wxjpeg_boolean in libtiff sources.
Vadim Zeitlin [Fri, 10 May 2013 13:25:29 +0000 (13:25 +0000)] 
Use wxjpeg_boolean in libtiff sources.

This fixes compilation problem when using libtiff with the built-in modified
version of libjpeg that uses wxjpeg_boolean instead of boolean as it doesn't
define boolean at all in its headers, but just wxjpeg_boolean.

Closes #15179.

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

11 years agoShow the name of the actually tested class in text entry unit tests.
Vadim Zeitlin [Fri, 10 May 2013 13:22:11 +0000 (13:22 +0000)] 
Show the name of the actually tested class in text entry unit tests.

This test is used for several different classes, show the name of the class
being tested when the assert in Editable() test fails.

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

11 years agoEnable a few more tests in wxAnyTestCase::GetAs().
Vadim Zeitlin [Fri, 10 May 2013 13:22:08 +0000 (13:22 +0000)] 
Enable a few more tests in wxAnyTestCase::GetAs().

This is part of the continuing series of commits to find out what results in
heap corruption in wxOSX PPC builds.

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

11 years agoDisable a sporadically failing check in wxBitmapComboBox unit test.
Vadim Zeitlin [Thu, 9 May 2013 23:22:09 +0000 (23:22 +0000)] 
Disable a sporadically failing check in wxBitmapComboBox unit test.

This check keeps failing in buildbot builds even though it always passes in
local ones (and sometimes in buildbot ones too). Disable it to allow the
entire test suite to pass.

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

11 years agoReduce the number of wxAny tests ran under wxOSX further.
Vadim Zeitlin [Thu, 9 May 2013 23:22:06 +0000 (23:22 +0000)] 
Reduce the number of wxAny tests ran under wxOSX further.

Something in GetAs() test definitely corrupts memory, but what?

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

11 years agoStart bisecting GetAs() wxAny test itself.
Vadim Zeitlin [Thu, 9 May 2013 22:29:13 +0000 (22:29 +0000)] 
Start bisecting GetAs() wxAny test itself.

This is the test that results in memory corruption in wxOSX PPC builds, try
to find out where exactly does this happen.

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

11 years agoLeave only a single wxAny unit test disabled.
Vadim Zeitlin [Thu, 9 May 2013 19:56:47 +0000 (19:56 +0000)] 
Leave only a single wxAny unit test disabled.

It looks like the culprit is GetAs() test, verify it.

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

11 years agoAnother attempt to isolate memory corrupting wxAny test.
Vadim Zeitlin [Wed, 8 May 2013 23:18:12 +0000 (23:18 +0000)] 
Another attempt to isolate memory corrupting wxAny test.

We now know it's either As() or GetAs() (or both).

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

11 years agoContinue bisecting tests crash in PPC OS X builds.
Vadim Zeitlin [Wed, 8 May 2013 22:01:02 +0000 (22:01 +0000)] 
Continue bisecting tests crash in PPC OS X builds.

Disable more wxAny tests.

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

11 years agoFix wxRichTextCtrl test compilation.
Vadim Zeitlin [Wed, 8 May 2013 22:00:11 +0000 (22:00 +0000)] 
Fix wxRichTextCtrl test compilation.

Work around broken pre-C++98 for loop scoping rules in VC6.

See #15184.

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

11 years agoReally disable wxAny tests under wxOSX.
Vadim Zeitlin [Wed, 8 May 2013 21:17:00 +0000 (21:17 +0000)] 
Really disable wxAny tests under wxOSX.

Instead of disabling them everywhere but there.

See r73944.

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

11 years agoFix duplicate wxContextMenuEvent generation in wxMSW.
Vadim Zeitlin [Wed, 8 May 2013 11:21:41 +0000 (11:21 +0000)] 
Fix duplicate wxContextMenuEvent generation in wxMSW.

Prevent WM_CONTEXTMENU from being propagated upwards the window parent chain
by DefWindowProc(), we already do it ourselves and not marking the message as
processed could result in multiple calls to the same wxEVT_CONTEXT_MENU
handler if it skipped the event.

See #13683.

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

11 years agoFix wrong wxUSE_ACCEL around wxUSE_HOTKEY-related code in wxMSW.
Vadim Zeitlin [Wed, 8 May 2013 11:21:37 +0000 (11:21 +0000)] 
Fix wrong wxUSE_ACCEL around wxUSE_HOTKEY-related code in wxMSW.

Closes #15193.

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

11 years agoAdd wxVector<>::const_reverse_iterator.
Vadim Zeitlin [Wed, 8 May 2013 11:21:32 +0000 (11:21 +0000)] 
Add wxVector<>::const_reverse_iterator.

Provide this type too for compatibility with std::vector<>.

Closes #15192.

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

11 years agoCall InitializeModules instead of just module->Init(). This is needed so the module...
Robin Dunn [Tue, 7 May 2013 21:09:31 +0000 (21:09 +0000)] 
Call InitializeModules instead of just module->Init().  This is needed so the module will have the proper state and not cause an assert when the modules are cleaned up.  Since InitializeModules will skip any that are already initialized it doesn't hurt to call it for modules loaded later.

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

11 years agoTest for NULL associated frame in doc/view event handling code.
Vadim Zeitlin [Tue, 7 May 2013 15:56:53 +0000 (15:56 +0000)] 
Test for NULL associated frame in doc/view event handling code.

A view might not have any associated frame at all (this is probably a bad idea
but we don't seem to explicitly forbid this).

This should have been part of r73943, see #14314.

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

11 years agoDisable more wxAny tests under OS X to try to find the buildbot crash.
Vadim Zeitlin [Tue, 7 May 2013 15:10:53 +0000 (15:10 +0000)] 
Disable more wxAny tests under OS X to try to find the buildbot crash.

Disabling wxVariantConversions test was not enough to fix the crash happening
in OS X PPC build slave, so disable a few more of them.

Temporarily do it for any wxOSX build, the run-time check for buildbot will be
restored later when I finally manage to find the problematic test(s?).

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

11 years agoFix for event propagation in "single document" doc/view mode.
Vadim Zeitlin [Tue, 7 May 2013 15:07:28 +0000 (15:07 +0000)] 
Fix for event propagation in "single document" doc/view mode.

Ensure that the events still get to wxDocManager even when we are using the
single document mode in which a view can be directly associated with the
parent frame.

Closes #14314.

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

11 years agoDisable wxAny-to-wxVariant conversion test case under OS X.
Vadim Zeitlin [Mon, 6 May 2013 21:46:55 +0000 (21:46 +0000)] 
Disable wxAny-to-wxVariant conversion test case under OS X.

This is a blind attempt to fix the test crash under PPC OS X.

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

11 years agoApplied patches for #15184 (wxRichTextAction fix for when the command identifier...
Julian Smart [Mon, 6 May 2013 13:39:01 +0000 (13:39 +0000)] 
Applied patches for #15184 (wxRichTextAction fix for when the command identifier is wxRICHTEXT_CHANGE_OBJECT) and #15185 (Make adding/deleting wxRichTextTable rows and columns undoable)

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

11 years agoFix a typo in wxNumberFormatter styles documentation.
Vadim Zeitlin [Mon, 6 May 2013 13:08:43 +0000 (13:08 +0000)] 
Fix a typo in wxNumberFormatter styles documentation.

s/cab/can/

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

11 years agoApplied patch #15183 (wxRichTextTable::DeleteColumns doesn't remove the deleted colum...
Julian Smart [Mon, 6 May 2013 08:54:48 +0000 (08:54 +0000)] 
Applied patch #15183 (wxRichTextTable::DeleteColumns doesn't remove the deleted columns: dghart)

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

11 years agoAdd IEEE 754 single/double precision support to wxDataStream classes.
Vadim Zeitlin [Mon, 6 May 2013 00:31:03 +0000 (00:31 +0000)] 
Add IEEE 754 single/double precision support to wxDataStream classes.

Allow to optionally raed/write float/double values in IEEE 754 single/double
precision formats, respectively, instead of always using the extended
precision format for both of them.

This makes the code more flexible, allowing for better interoperability with
the other programs, and also allows to implement floating point functions in
these classes even when wxUSE_APPLE_IEEE is turned off (as can be the case
because of the licencing concerns for the code in extended.c).

Closes #10625.

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

11 years agoMinor wording fixes in wxDataStream classes documentation.
Vadim Zeitlin [Mon, 6 May 2013 00:30:59 +0000 (00:30 +0000)] 
Minor wording fixes in wxDataStream classes documentation.

Mostly just s/amount/number/

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

11 years agoTest wxDataStream floating point methods in big endian format too.
Vadim Zeitlin [Mon, 6 May 2013 00:30:56 +0000 (00:30 +0000)] 
Test wxDataStream floating point methods in big endian format too.

Added a hack to test float/double reading/writing using
wxDataInputStream/wxDataOutputStream to the test case using big endian
extended float format too.

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

11 years agoNo changes, just a small optimization in DataStreamTestCase.
Vadim Zeitlin [Mon, 6 May 2013 00:30:53 +0000 (00:30 +0000)] 
No changes, just a small optimization in DataStreamTestCase.

Don't create streams on the heap completely unnecessarily, just allocate them
on the stack. This makes the code shorter, safer and slightly more efficient.

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

11 years agoNo real changes, just rename double variables to "d".
Vadim Zeitlin [Mon, 6 May 2013 00:30:49 +0000 (00:30 +0000)] 
No real changes, just rename double variables to "d".

Don't use "i" or "f" for double variable names, this is confusing, especially
when we do it inconsistently.

See #10625.

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

11 years agoExtract common parts of wxData{In,Out}putStream in a common base class.
Vadim Zeitlin [Mon, 6 May 2013 00:30:42 +0000 (00:30 +0000)] 
Extract common parts of wxData{In,Out}putStream in a common base class.

No real changes, just put BigEndianOrdered() and SetConv() methods and the
corresponding fields in a common wxDataStreamBase class instead of duplicating
them in wxDataInputStream and wxDataOutputStream.

This will make it simpler to add more features common to both classes in the
future, see #10625.

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

11 years agoDon't use gtk_file_chooser_set_filename() for save file dialogs.
Vadim Zeitlin [Sun, 5 May 2013 16:17:50 +0000 (16:17 +0000)] 
Don't use gtk_file_chooser_set_filename() for save file dialogs.

This seems to be broken in old GTK+ versions, so use
gtk_file_chooser_set_current_name() and gtk_file_chooser_set_current_folder()
for save file dialogs which seem to work in all versions.

Closes #15133.

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

11 years agoSpeculative fix for wxWebView unit tests on OSX.
Steve Lamerton [Sun, 5 May 2013 11:48:47 +0000 (11:48 +0000)] 
Speculative fix for wxWebView unit tests on OSX.

Use stringByEvaluatingJavaScriptFromString as it is guaranteed to return an NSString.

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

11 years agoCorrect misleading error message in locale mismatch assert.
Vadim Zeitlin [Sun, 5 May 2013 00:07:05 +0000 (00:07 +0000)] 
Correct misleading error message in locale mismatch assert.

Don't advise people to use non-existent (or at least not publicly accessible)
wxSetLocale(), they should just create wxLocale objects instead.

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

11 years agoUse wxWindow::Refresh() instead of artificial wxPaintEvent in the test.
Vadim Zeitlin [Sun, 5 May 2013 00:00:01 +0000 (00:00 +0000)] 
Use wxWindow::Refresh() instead of artificial wxPaintEvent in the test.

This fixes memory leaks under wxMSW: as the test code didn't (and couldn't)
call wxPaintDCImpl::EndPaint(), there was a leak for each wxPaintEvent
generated in it since the changes to wxDC caching in r72938.

It's also preferable because it uses public API instead of feeding events to
the window which is not documented to work.

Unfortunately even using Refresh() still doesn't allow the test to work under
wxOSX.

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

11 years agoFix event handling order in doc/view framework.
Vadim Zeitlin [Sat, 4 May 2013 23:59:56 +0000 (23:59 +0000)] 
Fix event handling order in doc/view framework.

Ensure that the events are always (provided there is an open document)
processed in the following order:

1. wxDocument
2. wxView
3. wxDocManager
4. wxDocChildFrame
5. wxDocParentFrame
6. wxApp

Do this by forwarding the events from wxDocParentFrame to wxDocChildFrame
first and forward them from there to wxDocManager which -- and this part
remains unchanged -- in turn forwards them to the active wxView which finally
forwards them to wxDocument. This requires another condition in the event
handling code as we still must forward from wxDocParentFrame to wxDocManager
itself if there are no active children at all, but this is the only way to
have the same event order in all cases, whether the event is originally
received by wxDocChildFrame or wxDocParentFrame.

Document this and add a unit test verifying that things indeed work like this.

See #14314.

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

11 years agoForward events to active child at MSW, not wx, level in wxMDIParentFrame.
Vadim Zeitlin [Sat, 4 May 2013 23:59:51 +0000 (23:59 +0000)] 
Forward events to active child at MSW, not wx, level in wxMDIParentFrame.

We want to handle menu (and toolbar) events in the active MDI child before
handling them in the parent frame itself and the existing code achieved this
by forwarding wxEVT_MENU events at wx event processing level to the active
child. However this was not enough as the underlying MSW WM_COMMAND message
was still sent to the parent frame only and this could result in wx event not
being generated at all if the parent frame had a disabled menu item with the
same ID as (an enabled) item in the child frame, see #14314.

So forward WM_COMMAND directly to ensure that the correct window gets the
event in the first place. And this makes wxEVT_MENU forwarding in TryBefore()
unnecessary.

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

11 years agoFactor out functions dealing with menus in the event propagation test.
Vadim Zeitlin [Sat, 4 May 2013 23:59:48 +0000 (23:59 +0000)] 
Factor out functions dealing with menus in the event propagation test.

No real changes, just refactor the code to allow testing for menu events in
other frames too.

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

11 years agoAdd public wxDocManager::GetAnyUsableView().
Vadim Zeitlin [Sat, 4 May 2013 23:59:43 +0000 (23:59 +0000)] 
Add public wxDocManager::GetAnyUsableView().

This method tries to find the current view harder than GetCurrentView() and
always returns a non-NULL view if there are any open documents at all.

This is used by wxDocManager internally to find the view to apply the user
commands to and will also be needed in the upcoming changes outside of
wxDocManager, so just make this method public, as it seems that it could be
useful in user code too, especially if we could use some better fallback than
the first opened document (e.g. the last document the user interacted with
would be better).

This also clarifies the confusion between GetCurrentView() and GetActiveView(),
see #13296.

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

11 years agoUse correct line numbers in assert failures in event propagation test.
Vadim Zeitlin [Sat, 4 May 2013 23:59:40 +0000 (23:59 +0000)] 
Use correct line numbers in assert failures in event propagation test.

Replace the calls to CheckMenuEvent() helper with ASSERT_MENU_EVENT_RESULT()
macro to allow passing the correct line number to cppunit assertion function,
otherwise the line number of CheckMenuEvent() was always used in case of
failure.

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

11 years agoConsistently set wxMenuBar parent in all ports.
Vadim Zeitlin [Sat, 4 May 2013 23:59:37 +0000 (23:59 +0000)] 
Consistently set wxMenuBar parent in all ports.

Previously, wxGTK used the associated frame as wxMenuBar parent, while the
other ports did not. Do set the frame as menu bar parent in all ports now.

Of course, considering that wxMenuBar is not a window at all, this doesn't
necessarily make much sense, but at least it makes the behaviour consistent.

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