]> git.saurik.com Git - wxWidgets.git/log
wxWidgets.git
12 years agoAdd wxDIR_NO_FOLLOW flag for wxDir iteration.
Vadim Zeitlin [Tue, 23 Oct 2012 23:57:32 +0000 (23:57 +0000)] 
Add wxDIR_NO_FOLLOW flag for wxDir iteration.

This flag allows to avoid following the symbolic links during the directory
traversal. In particular, this means that links to the directories
(potentially outside the directory being traversed) are not considered as
directories at all when it is used, potentially avoiding surprises.

Closes #14542.

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

12 years agoChange the way directory iteration flags are constructed.
Vadim Zeitlin [Tue, 23 Oct 2012 23:57:07 +0000 (23:57 +0000)] 
Change the way directory iteration flags are constructed.

Instead of explicitly constructing the flags from the flags that should be
included, construct them by excluding the flags that shouldn't be used. This
makes the code more stable in the sense that it will continue to work when new
flags, such as the upcoming wxDIR_NO_FOLLOW, are added.

See #14542.

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

12 years agonon-pch build fix
Paul Cornett [Tue, 23 Oct 2012 17:29:32 +0000 (17:29 +0000)] 
non-pch build fix

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

12 years agoMinor changes to some comments
Paul Cornett [Tue, 23 Oct 2012 17:28:43 +0000 (17:28 +0000)] 
Minor changes to some comments

remove ambiguous "only"
procession --> processing

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

12 years agoFix for PCH-less compilation of wxRibbonXmlHandler.
Vadim Zeitlin [Tue, 23 Oct 2012 14:30:23 +0000 (14:30 +0000)] 
Fix for PCH-less compilation of wxRibbonXmlHandler.

Need to have wxMenu declaration in order to wxDynamicCast() to it.

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

12 years agoGuard gmake-specific syntax with IF_GNU_MAKE in make_dist.mk.
Vadim Zeitlin [Tue, 23 Oct 2012 14:03:53 +0000 (14:03 +0000)] 
Guard gmake-specific syntax with IF_GNU_MAKE in make_dist.mk.

Debian distribution target uses GNU make extensions to make syntax which makes
the entire makefile impossible to use with other make versions, e.g. Solaris
make.

Fix this by prepending IF_GNU_MAKE to all Debian-specific lines, there should
be never any need to use them with non-GNU make.

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

12 years agoAdd support for wxRibbonBar and related controls to XRC.
Vadim Zeitlin [Tue, 23 Oct 2012 13:52:27 +0000 (13:52 +0000)] 
Add support for wxRibbonBar and related controls to XRC.

Add wxRibbonXmlHandler and an example of using it to the xrc sample.

Closes #12058.

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

12 years agoAdd support for wxAuiNotebook to XRC.
Vadim Zeitlin [Tue, 23 Oct 2012 13:51:58 +0000 (13:51 +0000)] 
Add support for wxAuiNotebook to XRC.

Add wxAuiNotebookXmlHandler to "aui" library, now that we can do it without
adding a dependency of it on "xrc" one.

Closes #10889.

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

12 years agoRefactor wxXRC to allow defining handlers outside of xrc library.
Vadim Zeitlin [Tue, 23 Oct 2012 13:51:32 +0000 (13:51 +0000)] 
Refactor wxXRC to allow defining handlers outside of xrc library.

Split wxXmlResourceHandler into an ABC and the real implementation to allow
referencing the ABC in the core library itself but without pulling in all of
the XRC into it. This also allows defining XRC handlers, which only depend on
this ABC and not the xrc library, in other libraries, such as richtext, as
demonstrated by the now enabled wxRichTextXMLHandler.

Closes #10996.

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

12 years agoDefine WXDLLIMPEXP_FWD_RIBBON for consistency with all the other libraries.
Vadim Zeitlin [Tue, 23 Oct 2012 13:51:06 +0000 (13:51 +0000)] 
Define WXDLLIMPEXP_FWD_RIBBON for consistency with all the other libraries.

We defined only WXDLLIMPEXP_RIBBON but not the FWD version, do add it now.

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

12 years agoRecognize more XRC elements as containing translatable strings.
Vadim Zeitlin [Tue, 23 Oct 2012 12:06:40 +0000 (12:06 +0000)] 
Recognize more XRC elements as containing translatable strings.

This allows to translate the text of these elements in wxrc-generated code
using gettext.

Closes #14765.

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

12 years agoAdd a simple unit test for wxRegion::Intersect().
Vadim Zeitlin [Tue, 23 Oct 2012 12:03:09 +0000 (12:03 +0000)] 
Add a simple unit test for wxRegion::Intersect().

Check that Intersect() returns true, yet the intersection is empty.

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

12 years agoProcess pending events from wxYield() in wxGTK.
Vadim Zeitlin [Tue, 23 Oct 2012 12:02:47 +0000 (12:02 +0000)] 
Process pending events from wxYield() in wxGTK.

Calling wxYield() is supposed to process the pending events but it didn't, any
more, in wxGTK. Restore this by explicitly calling ProcessPendingEvents() from
wxGTK wxYield() implementation as wxGUIEventLoop::ProcessIdle() does not call
it, in spite of a comment to the contrary in the sources.

Closes #14760.

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

12 years agoAdd wxEvtHandler::CallAfter() for asynchronous method calls.
Vadim Zeitlin [Tue, 23 Oct 2012 12:02:24 +0000 (12:02 +0000)] 
Add wxEvtHandler::CallAfter() for asynchronous method calls.

Add wxAsyncMethodCallEvent that is handled simply by calling the method this
event was created for and add default handler for this event to wxEvtHandler.

Implement CallAfter() overloads for up to 2 parameters only for now.

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

12 years agoAdd wx/meta/removeref.h header defining wxRemoveRef<> helper.
Vadim Zeitlin [Tue, 23 Oct 2012 12:02:00 +0000 (12:02 +0000)] 
Add wx/meta/removeref.h header defining wxRemoveRef<> helper.

This is a very simple template allowing to remove the reference from the given
type, similar to std::remove_reference<>.

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

12 years agoFix border size computation in wxAuiTabArt.
Vadim Zeitlin [Mon, 22 Oct 2012 21:46:46 +0000 (21:46 +0000)] 
Fix border size computation in wxAuiTabArt.

Space was reserved for the borders even when it wasn't filled, resulting in
visual artefacts. Fix this by virtualizing the function returning the
additional space needed for the borders and only overriding it to return non
zero in wxAuiGtkTabArt.

Closes #14710.

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

12 years agoSet C++ global locale too in wxAppTraitsBase::SetLocale().
Vadim Zeitlin [Mon, 22 Oct 2012 15:51:49 +0000 (15:51 +0000)] 
Set C++ global locale too in wxAppTraitsBase::SetLocale().

Ensure that C++ locale matches the C one, otherwise operations on C++ streams
may get much slower because some implementations (notable MinGW-64) change and
reset the C locale on every function call in this case.

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

12 years agoRevert accidental incompatible change to wxFileName::DirExists().
Vadim Zeitlin [Mon, 22 Oct 2012 15:51:26 +0000 (15:51 +0000)] 
Revert accidental incompatible change to wxFileName::DirExists().

The non-static version tests for the existence of the directory part of the
object only as is explicitly mentioned in the documentation, so do the test on
GetPath() and not GetFullPath() as we did since r72707.

Also add a unit test for this behaviour.

Closes #14771.

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

12 years agoEnsure the correct cleanup order for GDI+-related modules in wxMSW.
Vadim Zeitlin [Mon, 22 Oct 2012 11:21:02 +0000 (11:21 +0000)] 
Ensure the correct cleanup order for GDI+-related modules in wxMSW.

GDI+ DLL could be unloaded by wxGdiPlusModule before wxGDIPlusRendererModule::
OnExit() was called, resulting in a crash when trying to call a GDI+ function
from the latter.

Fix this by adding a correct dependency between the modules.

Closes #14769.

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

12 years agoRemove unnecessary SetInitialSize() from wxGTK wxComboBox::Create().
Vadim Zeitlin [Sun, 21 Oct 2012 20:48:54 +0000 (20:48 +0000)] 
Remove unnecessary SetInitialSize() from wxGTK wxComboBox::Create().

SetInitialSize() is already done by PostCreation() called just above, no need
to call it twice.

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

12 years agoExplicitly unregister custom wxWebViewIE namespaces when we are done with them. Also...
Steve Lamerton [Sun, 21 Oct 2012 20:33:48 +0000 (20:33 +0000)] 
Explicitly unregister custom wxWebViewIE namespaces when we are done with them. Also add a missing ClassFactory::AddRef.

Closes #14749

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

12 years agoCheck the return value of system() and pipe() in the test suite.
Vadim Zeitlin [Sat, 20 Oct 2012 14:49:13 +0000 (14:49 +0000)] 
Check the return value of system() and pipe() in the test suite.

This is mainly to avoid -Wunused-result warnings under recent Linux systems
but also could give valuable information if the call does fail.

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

12 years agoFix tests compilation in STL build after r72707.
Vadim Zeitlin [Sat, 20 Oct 2012 14:48:50 +0000 (14:48 +0000)] 
Fix tests compilation in STL build after r72707.

Add an explicit call to wxString::c_str() as there is no implicit conversion
in STL build.

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

12 years agoNepali translation update from Him Prasad Gautam.
Vadim Zeitlin [Sat, 20 Oct 2012 12:04:51 +0000 (12:04 +0000)] 
Nepali translation update from Him Prasad Gautam.

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

12 years agoUpdate header control when wxPropertyGridManager is resized.
Vadim Zeitlin [Fri, 19 Oct 2012 22:03:47 +0000 (22:03 +0000)] 
Update header control when wxPropertyGridManager is resized.

Closes #14762.

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

12 years agoAllow specifying all wxFlexGridSizer parameters in XRC.
Vadim Zeitlin [Fri, 19 Oct 2012 22:03:25 +0000 (22:03 +0000)] 
Allow specifying all wxFlexGridSizer parameters in XRC.

Add support for specifying flexible direction, grow mode in non-flexible
direction and row/column proportions for the growable ones.

Closes #14767.

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

12 years agoAdd more error checks to XRC handler for longs, doubles and fonts.
Vadim Zeitlin [Fri, 19 Oct 2012 22:03:01 +0000 (22:03 +0000)] 
Add more error checks to XRC handler for longs, doubles and fonts.

Verify that the values in the XRC really conform to the expected type.

Closes #14766.

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

12 years agoAdd missing styles support to wxWindow XRC handler.
Vadim Zeitlin [Fri, 19 Oct 2012 22:02:38 +0000 (22:02 +0000)] 
Add missing styles support to wxWindow XRC handler.

wxBORDER_RAISED, wx[HV]SCROLL and a few extended styles were not recognized.

See #14766.

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

12 years agoAllow testing for existence of specific file types in wxFileName.
Vadim Zeitlin [Fri, 19 Oct 2012 22:02:15 +0000 (22:02 +0000)] 
Allow testing for existence of specific file types in wxFileName.

Add "flags" parameter to wxFileName::Exists() to allow testing for the
existing of files of specific type: not only regular or directory but also
symlink, device, FIFO or socket.

And also to pass wxFILE_EXISTS_NO_FOLLOW flag inhibiting following the
symlinks without using DontFollowLink().

Closes #14542.

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

12 years agoRemove assert checking for valid font in wxMSW wxDC::GetTextExtent().
Vadim Zeitlin [Fri, 19 Oct 2012 11:06:14 +0000 (11:06 +0000)] 
Remove assert checking for valid font in wxMSW wxDC::GetTextExtent().

It wasn't there before wxTextMEasure changes and it doesn't seem obvious why
should it be there, it should be possible to measure the text using the
default wxDC font without setting one explicitly.

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

12 years agoDeclare MeasuringGuard as friend in wxTextMeasureBase.
Vadim Zeitlin [Fri, 19 Oct 2012 10:43:20 +0000 (10:43 +0000)] 
Declare MeasuringGuard as friend in wxTextMeasureBase.

This should hopefully fix VC6 compilation.

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

12 years agoInvalidate wxGrid best size when the grid is changed.
Vadim Zeitlin [Fri, 19 Oct 2012 10:42:57 +0000 (10:42 +0000)] 
Invalidate wxGrid best size when the grid is changed.

Don't keep using the cached best size if rows/columns are added/removed
to/from wxGrid or resized, doing this meant that we always used the first
computed best size which was way too small after adding rows/columns to the
grid.

There could be more places where the grid best size may need to be invalidated
but this should be a good start.

Closes #14761.

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

12 years agoFix bug in wxFileName::Exists("/").
Vadim Zeitlin [Thu, 18 Oct 2012 23:41:08 +0000 (23:41 +0000)] 
Fix bug in wxFileName::Exists("/").

Don't remove too many trailing slashes, the lone slash of "/" should remain.

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

12 years agonon-pch build fix
Robin Dunn [Thu, 18 Oct 2012 18:35:15 +0000 (18:35 +0000)] 
non-pch build fix

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

12 years agonon-pch build fix
Paul Cornett [Thu, 18 Oct 2012 05:06:29 +0000 (05:06 +0000)] 
non-pch build fix

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

12 years agoFix crash in wxDC::GetMultiLineTextExtent() after last commit.
Vadim Zeitlin [Wed, 17 Oct 2012 23:06:07 +0000 (23:06 +0000)] 
Fix crash in wxDC::GetMultiLineTextExtent() after last commit.

Don't call wxTextMeasure::DoGetTextExtent() with NULL width pointer, it now
supposes that both width and height pointers are non-NULL.

Add at least a trivial unit test for GetMultiLineTextExtent().

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

12 years agoFactor out text measurement from wxDC and wxWindow into wxTextMeasure.
Vadim Zeitlin [Wed, 17 Oct 2012 22:35:49 +0000 (22:35 +0000)] 
Factor out text measurement from wxDC and wxWindow into wxTextMeasure.

Add a new private wxTextMeasure class implementing methods for measuring text
and move the often duplicated (but not always identically) code for doing the
same from wxDC and wxWindow into it.

Currently this class is only really implemented in wxMSW and wxGTK.

Also extend the test for text measuring functions and rename it to
MeasuringTextTestCase from MeasuringContextTestCase as it's not wxGC-specific
any more.

Closes #14705.

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

12 years agoRemove unused code from MeasuringContextTestCase.
Vadim Zeitlin [Wed, 17 Oct 2012 22:35:21 +0000 (22:35 +0000)] 
Remove unused code from MeasuringContextTestCase.

m_win variable was never used and setUp() and tearDown() were simply not
needed here.

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

12 years agoFix wxGrid editors background painting.
Vadim Zeitlin [Wed, 17 Oct 2012 16:44:02 +0000 (16:44 +0000)] 
Fix wxGrid editors background painting.

There were two fundamental problems: first, we painted on a separately created
wxClientDC instead of using the wxPaintDC already available in wxGrid. Second,
we invalidated the control while painting, resulting in endless repainting, at
least under wxGTK.

Fix the first problem by passing wxDC to wxGridCellEditor::PaintBackground()
and the second one by not refreshing the control from there as it just seems
unnecessary.

Also pass the attribute by reference for consistency with
wxGridCellRenderer::Draw() and because this pointer can never be NULL.

Closes #2628.

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

12 years agoDisconnect all GTK signals referencing a wx object which is being destructed
Paul Cornett [Wed, 17 Oct 2012 16:23:18 +0000 (16:23 +0000)] 
Disconnect all GTK signals referencing a wx object which is being destructed
or which is destroying the associated GTK object

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

12 years agoMake wxFindReplaceData accessors const.
Vadim Zeitlin [Wed, 17 Oct 2012 15:45:20 +0000 (15:45 +0000)] 
Make wxFindReplaceData accessors const.

Closes #14755.

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

12 years agoAdded buildbot slave configuration for brandt64.
Vadim Zeitlin [Wed, 17 Oct 2012 00:24:11 +0000 (00:24 +0000)] 
Added buildbot slave configuration for brandt64.

New 64 bit build slave ran by Gerald Brandt with just a couple of builds for
now.

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

12 years agoAdd wxEvent::GetEventUserData() and improve user data documentation.
Vadim Zeitlin [Tue, 16 Oct 2012 22:28:43 +0000 (22:28 +0000)] 
Add wxEvent::GetEventUserData() and improve user data documentation.

Provide a public and documented accessor for wxEvent::m_callbackUserData.

Also document better the user data semantics and how it can be used.

Closes #14748.

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

12 years agoDefine CLSID_DragDropHelper ourselves to fix VC6 build.
Vadim Zeitlin [Tue, 16 Oct 2012 22:28:20 +0000 (22:28 +0000)] 
Define CLSID_DragDropHelper ourselves to fix VC6 build.

VC6 SDK doesn't define CLSID_DragDropHelper constant neither, so do it
ourselves too to complete the changes of r72673.

Closes #14697.

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

12 years agofix crash in wxWindowGTK::GTKHandleUnrealize(), closes #14752
Paul Cornett [Tue, 16 Oct 2012 18:05:09 +0000 (18:05 +0000)] 
fix crash in wxWindowGTK::GTKHandleUnrealize(), closes #14752

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

12 years agoUse the correct window as parent of wxInfoBar close button.
Vadim Zeitlin [Tue, 16 Oct 2012 14:06:05 +0000 (14:06 +0000)] 
Use the correct window as parent of wxInfoBar close button.

Fix breakage of r72474 that used the parent window instead of wxInfoBar itself
as the parent of its close button.

Closes #14750.

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

12 years agoImprove inotify()-based wxFileSystemWatcher to handle creation/deletion.
Vadim Zeitlin [Tue, 16 Oct 2012 14:02:40 +0000 (14:02 +0000)] 
Improve inotify()-based wxFileSystemWatcher to handle creation/deletion.

Handle creation and deletion of directories under the watched path better.

See #14544.

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

12 years agoAdd a debug helper to show information about a GtkWidget under gdb.
Vadim Zeitlin [Tue, 16 Oct 2012 14:02:17 +0000 (14:02 +0000)] 
Add a debug helper to show information about a GtkWidget under gdb.

For now just give its type which is not exactly exhaustive but better than
nothing.

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

12 years agoCorrect example of handling property values changes in the docs.
Vadim Zeitlin [Tue, 16 Oct 2012 14:01:54 +0000 (14:01 +0000)] 
Correct example of handling property values changes in the docs.

"." was incorrectly used with a pointer, replace it with a "->".

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

12 years agoCorrectly document the library the classes belong to.
Vadim Zeitlin [Mon, 15 Oct 2012 01:17:21 +0000 (01:17 +0000)] 
Correctly document the library the classes belong to.

Many classes were documented as being in a wrong library, mostly a lot of
wxbase vs wxcore confusion but we even managed to document wxAuiManager as
being in wxbase. Correct all this.

Closes #14745, #14747.

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

12 years agoMake help strings for --enable-webview* configure options match their names.
Vadim Zeitlin [Mon, 15 Oct 2012 01:13:01 +0000 (01:13 +0000)] 
Make help strings for --enable-webview* configure options match their names.

The options didn't have the underscore shown in the help message, so remove
the underscore (while it could be argued that underscore makes the option
names more readable, it seems better to preserve the existing names for
compatibility).

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

12 years agoMention David Hart bug fixes in wxFileSystemWatcher.
Vadim Zeitlin [Mon, 15 Oct 2012 01:10:34 +0000 (01:10 +0000)] 
Mention David Hart bug fixes in wxFileSystemWatcher.

See #14488, #14490, #14544.

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

12 years agoHandle deletion of watched directories in wxFileSystemWatcher sample.
Vadim Zeitlin [Mon, 15 Oct 2012 01:10:12 +0000 (01:10 +0000)] 
Handle deletion of watched directories in wxFileSystemWatcher sample.

Don't assert when trying to stop watching a directory that doesn't exist any
more later.

See #14544.

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

12 years agoFix bug in Unix wxFileSystemWatcher implementation when watch is deleted.
Vadim Zeitlin [Mon, 15 Oct 2012 01:09:49 +0000 (01:09 +0000)] 
Fix bug in Unix wxFileSystemWatcher implementation when watch is deleted.

Don't assert when removing a watch descriptor from the stale descriptors list.

See #14544.

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

12 years agoCheck for filespec when generating events in wxFileSystemWatcher.
Vadim Zeitlin [Mon, 15 Oct 2012 01:09:25 +0000 (01:09 +0000)] 
Check for filespec when generating events in wxFileSystemWatcher.

Instead of setting watches on individual files when a non-empty filespec is
given, always watch all the files but just ignore the events from the ones not
matching the filespec. This makes the code simpler and fixes several bugs.

See #14544.

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

12 years agoAdd support for symlinks to wxFileName.
Vadim Zeitlin [Mon, 15 Oct 2012 01:09:01 +0000 (01:09 +0000)] 
Add support for symlinks to wxFileName.

Allow to work with the symlinks themselves and not the file they reference by
calling the new wxFileName::DontFollowLink().

Update Unix wxDir implementation to not treat symlinks to directories as
directories, this ensures that we don't recurse into the directories outside
of the original parent accidentally.

Closes #14542.

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

12 years agoMake wxFileSystemWatcher watch entries reference-counted.
Vadim Zeitlin [Mon, 15 Oct 2012 01:08:37 +0000 (01:08 +0000)] 
Make wxFileSystemWatcher watch entries reference-counted.

This helps to avoid problems that arise from watching the same physical file
system path multiple times, which could happen when adding a watch for a path
already watched because of a recursive watch on a parent directory, for
example.

Closes #14490.

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

12 years agoImprove handling of file spec in wxFileSystemWatcher::AddTree().
Vadim Zeitlin [Mon, 15 Oct 2012 01:08:13 +0000 (01:08 +0000)] 
Improve handling of file spec in wxFileSystemWatcher::AddTree().

Fix watching too many files (i.e. even those not matching the provided spec)
and asserts when removing a recursive watch with a file spec in wxMSW.

Closes #14488.

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

12 years agoanybutton.cpp compilation fix for wxUSE_IMAGE=0.
Václav Slavík [Sun, 14 Oct 2012 19:30:46 +0000 (19:30 +0000)] 
anybutton.cpp compilation fix for wxUSE_IMAGE=0.

Disabled bitmaps are not rendered properly in this configuration, they
look the same as normal ones. This is hardly ideal, but such
degradations are to be expected when disabling something as widely used
as wxImage.

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

12 years agoCompilation fix - wx/vector.h is not part of PCH.
Václav Slavík [Sun, 14 Oct 2012 19:15:23 +0000 (19:15 +0000)] 
Compilation fix - wx/vector.h is not part of PCH.

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

12 years agowxDisplay only needs dynlib.h, not dynload.h.
Václav Slavík [Sun, 14 Oct 2012 19:14:59 +0000 (19:14 +0000)] 
wxDisplay only needs dynlib.h, not dynload.h.

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

12 years agoMake GetClippingBox() work for wxPrinterDC in wxGTK.
Vadim Zeitlin [Sun, 14 Oct 2012 14:55:32 +0000 (14:55 +0000)] 
Make GetClippingBox() work for wxPrinterDC in wxGTK.

GetClippingBox() implementation relies on wxDCImpl::m_clip[XY][12] being
updated in DoSetClippingRegion() but this wasn't done here. Fix this by adding
the code to do this to the base class version of this method and calling it
from wxGtkPrinterDCImpl.

Also, refactor wxGCDCImpl to reuse the same code instead of duplicating it.

Closes #14697.

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

12 years agoProvide stand-in IDropTargetHelper definition to fix VC6 build.
Vadim Zeitlin [Sun, 14 Oct 2012 14:42:58 +0000 (14:42 +0000)] 
Provide stand-in IDropTargetHelper definition to fix VC6 build.

VC6 SDK doesn't define this interface, so do it ourselves to fix its build
after the changes of r72668.

See #14697.

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

12 years agoMake TAB behaviour in wxGrid more configurable.
Vadim Zeitlin [Sat, 13 Oct 2012 22:55:18 +0000 (22:55 +0000)] 
Make TAB behaviour in wxGrid more configurable.

Allow making TAB/Shift-TAB wrap to the next/previous row or going to the
next/previous control when the cursor is at the end/beginning of the current
row easily.

Also add wxEVT_GRID_TABBING event to allow customizing TAB behaviour even
further.

Update the sample to show the different possible standard behaviours and a
stupid example of a custom one (it would be probably more useful to implement
something a tad more realistic, e.g. tabbing to the next non-empty cell).

Closes #14711.

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

12 years agoJust correct the path in the header comment.
Vadim Zeitlin [Sat, 13 Oct 2012 22:54:55 +0000 (22:54 +0000)] 
Just correct the path in the header comment.

Add the missing "private" path component.

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

12 years agoDocument that HasFocus() is new in 2.9.
Vadim Zeitlin [Sat, 13 Oct 2012 22:54:32 +0000 (22:54 +0000)] 
Document that HasFocus() is new in 2.9.

Closes #14740.

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

12 years agoNo changes, just update a comment about default buttons in wxMSW.
Vadim Zeitlin [Sat, 13 Oct 2012 22:54:09 +0000 (22:54 +0000)] 
No changes, just update a comment about default buttons in wxMSW.

Remove the TODO from it because it's not really obvious if using the proposed
approach is such a good idea.

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

12 years agoDisplay system-provided drag images during drag-and-drop in wxMSW.
Vadim Zeitlin [Sat, 13 Oct 2012 22:53:46 +0000 (22:53 +0000)] 
Display system-provided drag images during drag-and-drop in wxMSW.

This is especially useful when dragging files from Explorer as it provides
big, informative drag images for them that can be easily displayed using
Windows shell support for them.

See #14697.

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

12 years agoUse a "hidden" dialog, not frame, in sync wxExecute() hack in wxMSW.
Vadim Zeitlin [Sat, 13 Oct 2012 22:53:22 +0000 (22:53 +0000)] 
Use a "hidden" dialog, not frame, in sync wxExecute() hack in wxMSW.

Replace a "hidden" (not really, but shown far off screen) frame with a dialog
to avoid this frame appearing in the Alt+TAB list.

Closes #13251.

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

12 years agoSet the standard sample icon for the exec sample.
Vadim Zeitlin [Sat, 13 Oct 2012 22:52:59 +0000 (22:52 +0000)] 
Set the standard sample icon for the exec sample.

Do this for consistency with all the other ones and also because it makes it
simpler to notice any unwanted icons for hidden windows created by this sample.

See #13251.

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

12 years agoFreeze wxTreeCtrl in wxMSW by hiding it.
Vadim Zeitlin [Sat, 13 Oct 2012 22:52:35 +0000 (22:52 +0000)] 
Freeze wxTreeCtrl in wxMSW by hiding it.

This is far from perfect but better than alternative as freezing this control
by sending WM_SETREDRAW to it can result in completely broken behaviour as
explained in http://support.microsoft.com/kb/130611. And not freezing it at
all shows horrible flicker when adding even a relatively small number of items
at once to the control because it recalculates and repositions its scrollbars
after every parent node addition.

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

12 years agoSet wxTAB_TRAVERSAL for wxNavigationEnabled<> windows with focusable children.
Vadim Zeitlin [Sat, 13 Oct 2012 22:52:12 +0000 (22:52 +0000)] 
Set wxTAB_TRAVERSAL for wxNavigationEnabled<> windows with focusable children.

We need to have this flag under wxMSW in order for navigation events to be
generated for the window. As wxNavigationEnabled can't set this flag on
creation because its ctor is called too early, do it in overridden AddChild().

Closes #13271.

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

12 years agoAllow using windows that can't be focused with wxNavigationEnabled<>.
Vadim Zeitlin [Sat, 13 Oct 2012 22:51:50 +0000 (22:51 +0000)] 
Allow using windows that can't be focused with wxNavigationEnabled<>.

The code in wxNavigationEnabled<> assumed that the window itself could be
focused if it didn't have any focusable children because it was originally
extracted from wxPanel that can, indeed, be focused. This is however not the
case for all windows, notably not for wxStaticBox which now derives from
wxNavigationEnabled as well but can never be focused itself.

Add wxControlContainer::DisableSelfFocus() and call it from wxStaticBox to
support this situation. This required splitting m_acceptsFocus flag into
m_acceptsFocusSelf and m_acceptsFocusChildren and updating various methods
using them.

See #13271.

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

12 years agoUse WS_EX_CONTROLPARENT for wxStaticBox in wxMSW.
Vadim Zeitlin [Sat, 13 Oct 2012 22:51:27 +0000 (22:51 +0000)] 
Use WS_EX_CONTROLPARENT for wxStaticBox in wxMSW.

This doesn't change anything currently but it seems correct to use this style
with wxStaticBox as it can now contain other windows (and so be "control
parent"), so it could allow Windows or other programs checking for this style
to handle it more correctly.

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

12 years agoRemove unused wxNavigationEnabled::AcceptFocus() method.
Vadim Zeitlin [Sat, 13 Oct 2012 22:51:04 +0000 (22:51 +0000)] 
Remove unused wxNavigationEnabled::AcceptFocus() method.

This doesn't seem to be ever called or used from anywhere else.

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

12 years agoDocument wxListBox limitation concerning TAB characters.
Vadim Zeitlin [Sat, 13 Oct 2012 22:50:41 +0000 (22:50 +0000)] 
Document wxListBox limitation concerning TAB characters.

TABs appear simply as a space under MSW (because we don't use LBS_USETABSTOPS
style there) but are aligned to (multiple of 8?) tab stops under GTK. It's not
clear which behaviour is actually preferable so for now just document the
inconsistency and advise people to use spaces instead.

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

12 years agoRemove mention of "listbox callback" from wxListBox documentation.
Vadim Zeitlin [Sat, 13 Oct 2012 22:50:19 +0000 (22:50 +0000)] 
Remove mention of "listbox callback" from wxListBox documentation.

This is probably a left over from wxWidgets 1.x.

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

12 years agoImprove explanation of maximal number of wxListBox items in the documentation.
Vadim Zeitlin [Sat, 13 Oct 2012 22:49:56 +0000 (22:49 +0000)] 
Improve explanation of maximal number of wxListBox items in the documentation.

Don't say that it's limited -- because, strictly speaking, it isn't -- but
mention other controls that are better alternatives for large numbers of items.

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

12 years agoDo give focus to the wxNotebook page when switching to it under MSW.
Vadim Zeitlin [Sat, 13 Oct 2012 22:49:33 +0000 (22:49 +0000)] 
Do give focus to the wxNotebook page when switching to it under MSW.

Switching to the page but keeping the focus on the notebook itself makes it
difficult to use the UI from keyboard and is inconsistent with the behaviour
of native property sheets. Do restore the code to set the focus to the page as
the bug that resulted in a wrong radio button being selected when we did this
was apparently fixed elsewhere in the meanwhile because it doesn't happen any
more even with this change.

See #2268.

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

12 years agoTamil translations update from DINAKAR T.D.
Vadim Zeitlin [Fri, 12 Oct 2012 18:45:38 +0000 (18:45 +0000)] 
Tamil translations update from DINAKAR T.D.

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

12 years agoDocument default argument value of wxListCtrl::EnableBellOnNoMatch().
Vadim Zeitlin [Thu, 11 Oct 2012 22:29:35 +0000 (22:29 +0000)] 
Document default argument value of wxListCtrl::EnableBellOnNoMatch().

In addition to forgetting to specify the default value in wxGenericListCtrl,
it was also not documented, do it now to complete the fix of r72654.

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

12 years agoUse "true" by default in wxGenericListCtrl::EnableBellOnNoMatch().
Vadim Zeitlin [Thu, 11 Oct 2012 12:41:07 +0000 (12:41 +0000)] 
Use "true" by default in wxGenericListCtrl::EnableBellOnNoMatch().

The changes of r72639 mistakenly omitted the default value for
EnableBellOnNoMatch() argument in this class (although it was present in the
base class and in wxGenericTreeCtrl), fix this.

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

12 years agoUpdate setup.h for OpenVMS
Jouk Jansen [Thu, 11 Oct 2012 11:15:21 +0000 (11:15 +0000)] 
Update setup.h for OpenVMS

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

12 years agoMention InvalidateBestSize() in DoGetBestClientSize() documentation.
Vadim Zeitlin [Wed, 10 Oct 2012 18:47:19 +0000 (18:47 +0000)] 
Mention InvalidateBestSize() in DoGetBestClientSize() documentation.

It is not obvious that it needs to be called when the best size changes, so
give at least a hint.

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

12 years agoDon't write text if it's empty
Julian Smart [Wed, 10 Oct 2012 15:45:08 +0000 (15:45 +0000)] 
Don't write text if it's empty

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

12 years agoDo return the protocol part from GetLocaltion() for local wxFSFiles.
Vadim Zeitlin [Tue, 9 Oct 2012 21:28:33 +0000 (21:28 +0000)] 
Do return the protocol part from GetLocaltion() for local wxFSFiles.

wxLocalFSHandler created wxFSFile without the protocol information which means
that calling GetLocaltion() on this file later doesn't return it, contrary to
the documentation.

Do include the protocol to fix this.

Closes #14638.

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

12 years agoGenerate text events in generic wxSpinCtrl itself.
Vadim Zeitlin [Tue, 9 Oct 2012 21:02:17 +0000 (21:02 +0000)] 
Generate text events in generic wxSpinCtrl itself.

The text events in a wxSpinCtrl should originate from the control itself but
they were just propagated upwards from wxTextCtrl embedded into it and hence
had wrong event object and event ID fields.

Fix this by making EVT_TEXT come from wxSpinCtrl itself, in addition to
EVT_TEXT_ENTER ones which we already forwarded like this.

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

12 years agoCopy wxCommandEvent string explicitly in its copy ctor.
Vadim Zeitlin [Tue, 9 Oct 2012 21:01:53 +0000 (21:01 +0000)] 
Copy wxCommandEvent string explicitly in its copy ctor.

Due to the optimization used in wxCommandEvent::GetString(), which returns the
string from the text control that generated the event only if it's really
needed, wxCommandEvent::m_cmdString field may be empty even when it does have
an associated string. As we lose the possibility to retrieve the value on
demand from wxTextCtrl when we make a copy (because it can be associated with
a different object), we need to explicitly copy the string to avoid losing
this data entirely.

This fixes GetString() value for the text events generated by generic
wxSearchCtrl.

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

12 years agoFix printing in landscape mode in wxGTK.
Vadim Zeitlin [Tue, 9 Oct 2012 21:01:29 +0000 (21:01 +0000)] 
Fix printing in landscape mode in wxGTK.

Only apply Cairo transforms in StartPage(), doing it earlier interferes with
the code doing the coordinate system rotation inside GTK+ itself when a
non-portrait printing mode is used.

Closes #14732.

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

12 years agoDocument wxGrid methods dealing with cell overflow.
Vadim Zeitlin [Mon, 8 Oct 2012 12:09:59 +0000 (12:09 +0000)] 
Document wxGrid methods dealing with cell overflow.

Closes #14733.

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

12 years agoRecreate GtkPrintOperation every time when printing in wxGTK.
Vadim Zeitlin [Mon, 8 Oct 2012 12:09:37 +0000 (12:09 +0000)] 
Recreate GtkPrintOperation every time when printing in wxGTK.

Apparently reusing GtkPrintOperation is not allowed, so create a new one
every time we need it.

Closes #14731.

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

12 years agoImprove wxAuiNotebook appearance when using some GTK themes.
Vadim Zeitlin [Mon, 8 Oct 2012 12:09:13 +0000 (12:09 +0000)] 
Improve wxAuiNotebook appearance when using some GTK themes.

Let wxAuiNotebook render the border itself, instead of doing it in dock art
class. This allows the notebook to do it correctly for the current theme.

Closes #14710.

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

12 years agoEnsure that key events are sent to focused window first in wxGTK.
Vadim Zeitlin [Sun, 7 Oct 2012 22:42:50 +0000 (22:42 +0000)] 
Ensure that key events are sent to focused window first in wxGTK.

Start processing key events from the currently focused window, this ensures
that its key event handlers are tried before the top level window
accelerators.

This is consistent with wxMSW and allows a window to locally override the
global accelerators which really makes sense.

Closes #14553.

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

12 years agoImplement incremental search in wxGenericListCtrl.
Vadim Zeitlin [Sun, 7 Oct 2012 22:42:27 +0000 (22:42 +0000)] 
Implement incremental search in wxGenericListCtrl.

Mostly copy wxGenericTreeCtrl incremental search implementation to
wxGenericListCtrl (unfortunately there is no simple way to reuse this code
currently), including the recently added EnableBellOnNoMatch() method.

Update the sample to test it, the key event handling in it had to be modified
to allow it.

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

12 years agoAdd a possibility to beep on no match to wxGenericTreeCtrl.
Vadim Zeitlin [Sun, 7 Oct 2012 22:42:02 +0000 (22:42 +0000)] 
Add a possibility to beep on no match to wxGenericTreeCtrl.

For consistency with Windows, allow to optionally generate a beep when
incremental search in the tree control doesn't find anything.

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

12 years agoFix return value of wxGenericTreeCtrl::FindItem().
Vadim Zeitlin [Sun, 7 Oct 2012 22:41:38 +0000 (22:41 +0000)] 
Fix return value of wxGenericTreeCtrl::FindItem().

We incorrectly returned the item we started from instead of invalid item if
there was no match, fix this.

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

12 years agoHandle successive key presses better in wxGenericTreeCtrl search code.
Vadim Zeitlin [Sun, 7 Oct 2012 22:41:15 +0000 (22:41 +0000)] 
Handle successive key presses better in wxGenericTreeCtrl search code.

Go to the next item starting with the given character if the same one is
pressed multiple times. This is more useful than searching for an item
starting with multiple occurrences of this character (which usually won't
exist) and is more consistent with how Windows handles this.

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

12 years agoRecognize "_" as alphanumeric key in wxGenericTreeCtrl find item code.
Vadim Zeitlin [Sun, 7 Oct 2012 22:40:52 +0000 (22:40 +0000)] 
Recognize "_" as alphanumeric key in wxGenericTreeCtrl find item code.

Items can have underscores in their names too, not just letters and digits.

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

12 years agoFix spurious label editing in generic wx{List,Tree,DataView}Ctrl.
Vadim Zeitlin [Sun, 7 Oct 2012 22:40:29 +0000 (22:40 +0000)] 
Fix spurious label editing in generic wx{List,Tree,DataView}Ctrl.

Clicking on the control to give it focus must not start editing the label of
an item in it, this is bad UI as you need to carefully select where do you
click to avoid starting to edit the label and nobody else does it like this
(probably because of the former reason).

As a side note, it would be really great to abstract the item handling in a
class that could be reused by all these controls instead of having to update 3
slightly different versions of the same code every time.

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

12 years agoDon't set focus explicitly in wxGenericListCtrl mouse handling code.
Vadim Zeitlin [Sun, 7 Oct 2012 22:40:06 +0000 (22:40 +0000)] 
Don't set focus explicitly in wxGenericListCtrl mouse handling code.

Just skip the event to allow the system to set the focus to the control
itself. This is more consistent with the other controls and should result in
correct behaviour everywhere automatically.

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