wxWidgets.git
10 years agoAnother Basque translations update from Xabier Aramendi.
Vadim Zeitlin [Sat, 24 Aug 2013 01:02:57 +0000 (01:02 +0000)] 
Another Basque translations update from Xabier Aramendi.

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

10 years agoFix wxHtmlHelpData::SetTempDir() to behave correctly without trailing slash.
Vadim Zeitlin [Fri, 23 Aug 2013 16:37:09 +0000 (16:37 +0000)] 
Fix wxHtmlHelpData::SetTempDir() to behave correctly without trailing slash.

The path passed to this function is always a directory, so use
wxFileName::AssignDir() instead of the default constructor of wxFileName which
considers the name to be a name of a file unless it ends with a path separator.

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

10 years agoUpdate Basque translations after wxGetTranslation() strings addition.
Vadim Zeitlin [Fri, 23 Aug 2013 16:23:51 +0000 (16:23 +0000)] 
Update Basque translations after wxGetTranslation() strings addition.

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

10 years agoBasque translations update from Xabier Aramendi.
Vadim Zeitlin [Fri, 23 Aug 2013 16:22:40 +0000 (16:22 +0000)] 
Basque translations update from Xabier Aramendi.

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

10 years agoRegenerated message catalogs with the strings inside wxGetTranslation().
Vadim Zeitlin [Fri, 23 Aug 2013 16:22:35 +0000 (16:22 +0000)] 
Regenerated message catalogs with the strings inside wxGetTranslation().

We didn't extract the strings inside wxGetTranslation() in the message catalog
when creating it using xgettext, do it now.

This notably fixes the missing translations for the generic progress dialog
elapsed/estimated/remaining time labels.

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

10 years agofix missing ;
Robin Dunn [Wed, 21 Aug 2013 15:50:27 +0000 (15:50 +0000)] 
fix missing ;

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

10 years agoFix various documentation warnings throughout core and base.
Steve Lamerton [Wed, 21 Aug 2013 15:26:34 +0000 (15:26 +0000)] 
Fix various documentation warnings throughout core and base.

See #15346.

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

10 years agoFix ribbon documentation warnings.
Steve Lamerton [Wed, 21 Aug 2013 15:21:08 +0000 (15:21 +0000)] 
Fix ribbon documentation warnings.

See #15346.

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

10 years agoFix html documentation warnings.
Steve Lamerton [Wed, 21 Aug 2013 15:20:28 +0000 (15:20 +0000)] 
Fix html documentation warnings.

See #15346.

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

10 years agoFix warnings in rich text documentation.
Steve Lamerton [Wed, 21 Aug 2013 13:24:48 +0000 (13:24 +0000)] 
Fix warnings in rich text documentation.

See #15346.

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

10 years agoRemove DoSetSizeHints() call from Create()
Paul Cornett [Mon, 19 Aug 2013 17:25:56 +0000 (17:25 +0000)] 
Remove DoSetSizeHints() call from Create()
The reason it was added does not seem to be reproducible anymore,
and it interferes with wxRESIZE_BORDER on Ubuntu.
Closes #14870

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

10 years agorevert r74683, wxTLW has its own {Width,Height}Default()
Paul Cornett [Mon, 19 Aug 2013 16:58:43 +0000 (16:58 +0000)] 
revert r74683, wxTLW has its own {Width,Height}Default()
which are not the ones called by PreCreation()

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

10 years agoRemove some old redundant code
Paul Cornett [Mon, 19 Aug 2013 05:42:21 +0000 (05:42 +0000)] 
Remove some old redundant code
Default size stuff is done by PreCreation()

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

10 years agoavoid setting initial position if it was not specified, broken in r70734
Paul Cornett [Sun, 18 Aug 2013 16:00:22 +0000 (16:00 +0000)] 
avoid setting initial position if it was not specified, broken in r70734

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

10 years agoMove code that does not need realized GdkWinow out of realize handler
Paul Cornett [Sun, 18 Aug 2013 15:01:06 +0000 (15:01 +0000)] 
Move code that does not need realized GdkWinow out of realize handler
These calls can be made much earlier, and it seems like a good idea to do so.

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

10 years agoOnly give capture to wxPopupTransientWindow child if it's the only one.
Vadim Zeitlin [Sun, 18 Aug 2013 13:28:28 +0000 (13:28 +0000)] 
Only give capture to wxPopupTransientWindow child if it's the only one.

This removes the arbitrariness of using the first child which didn't make any
sense when the popup had several controls inside it, e.g. in wxRichToolTip
case this resulted in the mouse capture being given to wxStaticBitmap showing
the tooltip icon even though it didn't need it at all.

This probably doesn't really change the observable behaviour but seems more
logical.

See #15288.

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

10 years agoUse wxFindWindowAtPoint() for hit testing in wxPopupTransientWindow.
Vadim Zeitlin [Sun, 18 Aug 2013 13:28:23 +0000 (13:28 +0000)] 
Use wxFindWindowAtPoint() for hit testing in wxPopupTransientWindow.

This works even with irregularly shaped windows such as wxRichToolTip unlike
the old naive test using wxRect::Contains() which didn't and resulted in us
believing that the mouse was outside the window when it was still in it and
(somehow, the details are not totally clear) recapturing the mouse again and
again in the same window which resulted in assert failures with the new checks
in wxWindowBase::CaptureMouse() or the capture stack corruption before this.

Closes #15288.

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

10 years agoReturn NULL from wxWindow::GetCapture() when the capture is being lost.
Vadim Zeitlin [Sun, 18 Aug 2013 13:28:19 +0000 (13:28 +0000)] 
Return NULL from wxWindow::GetCapture() when the capture is being lost.

Make GetCapture() return NULL during wxEVT_MOUSE_CAPTURE_{LOST,CHANGED} events
processing in wxMSW to help their handlers to avoid calling ReleaseCapture():
this shouldn't be done as the mouse capture is being lost anyhow and results
in reentrancy problems between NotifyCaptureLost() and ReleaseCapture() if
it's called.

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

10 years agoMake mouse capture checking asserts stronger and more detailed.
Vadim Zeitlin [Sun, 18 Aug 2013 13:28:16 +0000 (13:28 +0000)] 
Make mouse capture checking asserts stronger and more detailed.

Verify not only that we don't destroy the window having the capture now but
also that this window is not in the mouse capture stack at all, not
necessarily on top. This is important as keeping a dangling pointer in the
capture stack would result in difficult to diagnose bugs later.

Also check that we don't recapture the mouse in the same window as this should
never be necessary.

Finally, give more details in the assert checking that the window does have
capture in ReleaseMouse().

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

10 years agoDon't set even try to set focus to wxPopupWindow itself in wxMSW.
Vadim Zeitlin [Sun, 18 Aug 2013 13:28:13 +0000 (13:28 +0000)] 
Don't set even try to set focus to wxPopupWindow itself in wxMSW.

This doesn't work anyhow with our popup window implementation (it's a child of
the desktop and we can't set focus to it) and provokes error messages due to
::SetFocus() failures, so simply don't do this at all.

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

10 years agoNo changes, just change data structures used by mouse capture code.
Vadim Zeitlin [Sun, 18 Aug 2013 13:28:09 +0000 (13:28 +0000)] 
No changes, just change data structures used by mouse capture code.

Use a simple stack of windows instead of a separate singly linked list and a
separate current capture pointer.

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

10 years agoNo changes, just use wxRecursionGuard instead of manual boolean flag.
Vadim Zeitlin [Sun, 18 Aug 2013 13:28:06 +0000 (13:28 +0000)] 
No changes, just use wxRecursionGuard instead of manual boolean flag.

Use wxRecursionGuard with the flag indicating whether the mouse capture is
changing to ensure that we always reset it correctly and make the code
slightly shorter.

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

10 years agoNo changes, just move mouse capturing bookkeeping data out of wxWindow.
Vadim Zeitlin [Sun, 18 Aug 2013 13:28:02 +0000 (13:28 +0000)] 
No changes, just move mouse capturing bookkeeping data out of wxWindow.

All mouse capture-related data doesn't have to be declared in wxWindow itself
and can just be global in wincmn.cpp, so move it there, this will facilitate
further changes as they won't require recompiling everything any more.

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

10 years agoshould have been part of r74664: Avoid calling gtk_window_get_position() from "config...
Paul Cornett [Sun, 18 Aug 2013 04:28:28 +0000 (04:28 +0000)] 
should have been part of r74664: Avoid calling gtk_window_get_position() from "configure-event" handler

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

10 years agoavoid duplicate move events
Paul Cornett [Sat, 17 Aug 2013 16:38:12 +0000 (16:38 +0000)] 
avoid duplicate move events

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

10 years agoAvoid calling gtk_window_get_position() from "configure-event" handler, if possible.
Paul Cornett [Sat, 17 Aug 2013 16:25:13 +0000 (16:25 +0000)] 
Avoid calling gtk_window_get_position() from "configure-event" handler, if possible.
This avoids a round trip to the X server, which is expensive over a remote connection.
Closes #15116

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

10 years agoFix typo in wxSingleInstanceChecker docs, props Lauri Nurmi.
Bryan Petty [Fri, 16 Aug 2013 18:17:01 +0000 (18:17 +0000)] 
Fix typo in wxSingleInstanceChecker docs, props Lauri Nurmi.

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

10 years agouse names for gs_requestFrameExtentsStatus values
Paul Cornett [Fri, 16 Aug 2013 15:43:51 +0000 (15:43 +0000)] 
use names for gs_requestFrameExtentsStatus values

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

10 years agoReplace wxFONTFAMILY_DEFAULT with wxFONTFAMILY_SWISS when comparing fonts.
Vadim Zeitlin [Fri, 16 Aug 2013 11:04:39 +0000 (11:04 +0000)] 
Replace wxFONTFAMILY_DEFAULT with wxFONTFAMILY_SWISS when comparing fonts.

Otherwise comparison always failed as no existing fonts had
wxFONTFAMILY_DEFAULT as their family in all ports except wxOSX, which does
keep wxFONTFAMILY_DEFAULT.

Closes #15410.

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

10 years agoforgotten commit :-( remove #if 0 if things work again
Stefan Csomor [Wed, 14 Aug 2013 20:34:53 +0000 (20:34 +0000)] 
forgotten commit :-( remove #if 0 if things work again

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

10 years agoFix wxComboCtrlBase::DoGetSizeFromTextSize() performance regression.
Václav Slavík [Wed, 14 Aug 2013 15:47:21 +0000 (15:47 +0000)] 
Fix wxComboCtrlBase::DoGetSizeFromTextSize() performance regression.

r72935 introduced code that created a temporary wxComboBox control to
take measurements. This is very expensive in MSW and adds noticeable
delay when creating more than a few controls.

Replace with equivalent wxMSW code that computes the height in the same
way other wxMSW controls do.

The wxGTK version cannot be eliminated in the same way, so at least add
some basic caching there. It's much less of a problem, because GTK+
controls creation is much cheaper than MSW one.

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

10 years agousing terminate: terminates prematurely, OnExit is not called anymore
Stefan Csomor [Wed, 14 Aug 2013 09:43:31 +0000 (09:43 +0000)] 
using terminate: terminates prematurely, OnExit is not called anymore

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

10 years agousing #ifdef wxABORT_ON_CONFIG_ERROR not just #if as elsewhere
Stefan Csomor [Wed, 14 Aug 2013 09:15:16 +0000 (09:15 +0000)] 
using #ifdef wxABORT_ON_CONFIG_ERROR not just #if as elsewhere

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

10 years agoDon't hide the window in its dtor in wxGTK.
Vadim Zeitlin [Tue, 13 Aug 2013 17:36:47 +0000 (17:36 +0000)] 
Don't hide the window in its dtor in wxGTK.

This results in sending an unexpected wxShowEvent to an already half-destroyed
(because the derived class dtor had been already executed) by now object which
could provoke crashes. And it also seems to be completely unnecessary as the
window is going to be destroyed anyhow -- and the other ports don't hide it
before this happens (unless it's a TLW in which case it is already hidden in
wxTopLevelWindowBase::Destroy()).

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

10 years agoavoid setting pango matrix when not needed
Paul Cornett [Mon, 12 Aug 2013 16:24:42 +0000 (16:24 +0000)] 
avoid setting pango matrix when not needed

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

10 years agousing #ifdef wxABORT_ON_CONFIG_ERROR not just #if as elsewhere
Stefan Csomor [Sun, 11 Aug 2013 06:39:20 +0000 (06:39 +0000)] 
using #ifdef wxABORT_ON_CONFIG_ERROR not just #if as elsewhere

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

10 years agoTamil translations update from Dinakar T.D.
Vadim Zeitlin [Fri, 9 Aug 2013 20:55:27 +0000 (20:55 +0000)] 
Tamil translations update from Dinakar T.D.

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

10 years agoRemove never implemented wxDateTime::IsGregorianDate().
Vadim Zeitlin [Fri, 9 Aug 2013 20:55:20 +0000 (20:55 +0000)] 
Remove never implemented wxDateTime::IsGregorianDate().

This method was declared and even documented but never actually implemented,
and GregorianAdoption enum used by it had many incorrectly defined elements.

Just remove both the method and the enum instead of fixing/implementing them
as they are not that important (as witnessed by the fact that nobody has
complained about the method being missing since almost 15 years).

Closes #15400.

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

10 years agoApplied #15393 (dghart) fixing wxRichTextTable for percentage widths
Julian Smart [Fri, 9 Aug 2013 11:56:33 +0000 (11:56 +0000)] 
Applied #15393 (dghart) fixing wxRichTextTable for percentage widths

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

10 years agoadd other known types for gdk_pixbuf_save()
Paul Cornett [Thu, 8 Aug 2013 05:59:18 +0000 (05:59 +0000)] 
add other known types for gdk_pixbuf_save()

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

10 years agoTry native method first in LoadFile() and SaveFile()
Paul Cornett [Thu, 8 Aug 2013 05:43:24 +0000 (05:43 +0000)] 
Try native method first in LoadFile() and SaveFile()
closes #15394

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

10 years agoMake wxOwnerDrawnComboBox::DoGetBestSize() twice as fast.
Václav Slavík [Wed, 7 Aug 2013 17:33:42 +0000 (17:33 +0000)] 
Make wxOwnerDrawnComboBox::DoGetBestSize() twice as fast.

Don't call the very expensive wxComboCtrlBase::DoGetBestSize() method
when not needed - it calls wxComboCtrlBase::DoGetSizeFromTextSize(),
which is very expensive.

Also fix the code so that it doesn't apply GetSizeFromTextSize() twice
(once in the base class' DoGetBestSize(), once here).

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

10 years agoCompilation fix for wxMSW with wxUSE_MSGBOX_HOOK==0.
Vadim Zeitlin [Wed, 7 Aug 2013 15:44:56 +0000 (15:44 +0000)] 
Compilation fix for wxMSW with wxUSE_MSGBOX_HOOK==0.

Include wx/fontutil.h unconditionally, it's needed outside message box hook
code.

Closes #15395.

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

10 years agoCompilation fix to propgrid sample after r74628.
Vadim Zeitlin [Wed, 7 Aug 2013 12:08:10 +0000 (12:08 +0000)] 
Compilation fix to propgrid sample after r74628.

Use wxMax() and wxMin() instead of std::max() and min().

Also work around wrong for loop scoping for VC6.

See #15368.

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

10 years agoDocument light grey colour handling in wxMSW wxBitmap::LoadFile().
Vadim Zeitlin [Wed, 7 Aug 2013 11:08:38 +0000 (11:08 +0000)] 
Document light grey colour handling in wxMSW wxBitmap::LoadFile().

For historical/compatibility reasons we handle this colour as transparent in
wxMSW when loading the bitmaps from resources, but this is rather not obvious
for the new users, so document it and provide a way of compensating for this
in the documentation as well.

Closes #15371.

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

10 years agoDefine __VISUALC__ for ICC under Windows again.
Vadim Zeitlin [Wed, 7 Aug 2013 11:08:33 +0000 (11:08 +0000)] 
Define __VISUALC__ for ICC under Windows again.

During the refactoring of r74496, the logic of the check for Intel compiler
was slightly altered resulting in not defining __VISUALC__ for it any longer
which broke compilation with it.

Restore this definition now to fix it, even though it could admittedly be
better to explicitly check for __INTELC__ in the places where we currently
only check for __VISUALC__ and reserve the latter only for the case when we
are really using MSVC.

Closes #15359.

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

10 years agoAdd wxFileName::SetPermissions().
Vadim Zeitlin [Wed, 7 Aug 2013 11:08:28 +0000 (11:08 +0000)] 
Add wxFileName::SetPermissions().

This is a simple wrapper for the POSIX chmod().

Closes #12951.

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

10 years agoUpdate Travis configuration to run tests and build more configurations.
Vadim Zeitlin [Wed, 7 Aug 2013 11:08:21 +0000 (11:08 +0000)] 
Update Travis configuration to run tests and build more configurations.

Install libcppunit-dev in order to be able to run the unit tests (at least the
non-GUI ones for now).

Also build in several configurations: shared/static, multilib/monolithic and
also STL. This should help to find problems appearing only in some specific
build variants.

Closes #15369.

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

10 years agoDon't document wxSortedArrayString as deriving from wxArrayString.
Vadim Zeitlin [Wed, 7 Aug 2013 11:08:17 +0000 (11:08 +0000)] 
Don't document wxSortedArrayString as deriving from wxArrayString.

This is no longer the case since quite some time.

Closes #15374.

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

10 years agoDon't use DDEExec registry key in wxMSW wxExecute() if it's empty.
Vadim Zeitlin [Wed, 7 Aug 2013 11:08:12 +0000 (11:08 +0000)] 
Don't use DDEExec registry key in wxMSW wxExecute() if it's empty.

Some file types have DDEExec subkey in the registry but no value for it, don't
use DDE for launching the files of these types in this case as this only
results in errors.

Closes #15388.

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

10 years agoFix column sorting UI in wxDataViewCtrl under wxOSX.
Vadim Zeitlin [Tue, 6 Aug 2013 17:36:17 +0000 (17:36 +0000)] 
Fix column sorting UI in wxDataViewCtrl under wxOSX.

Use -outlineView:didClickTableColumn: delegate method instead of
mouseDownInHeaderOfTableColumn: one to ensure that:

(a) We don't sort the column if it's being dragged/resized (closes #15340).
(b) We sort the column on mouse up, not down (closes #15386).

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

10 years agoFix a couple of spelling mistakes in the documentation.
Vadim Zeitlin [Tue, 6 Aug 2013 17:36:12 +0000 (17:36 +0000)] 
Fix a couple of spelling mistakes in the documentation.

Closes #15382.

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

10 years agoUse RIAA wrapper for wxSpinCtrl event disabling in wxGTK.
Vadim Zeitlin [Tue, 6 Aug 2013 17:00:10 +0000 (17:00 +0000)] 
Use RIAA wrapper for wxSpinCtrl event disabling in wxGTK.

The use of wxSpinCtrlEventDisabler class ensures that we never forget to
reenable the events after disabling them.

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

10 years agoReflect changes in stc.cpp in stc.cpp.in from which it's generated.
Vadim Zeitlin [Tue, 6 Aug 2013 17:00:04 +0000 (17:00 +0000)] 
Reflect changes in stc.cpp in stc.cpp.in from which it's generated.

This should have been part of r74596, see #15353.

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

10 years agoDon't generate any events from wxSpinCtrl and wxSpinCtrlDouble methods.
Vadim Zeitlin [Tue, 6 Aug 2013 17:00:00 +0000 (17:00 +0000)] 
Don't generate any events from wxSpinCtrl and wxSpinCtrlDouble methods.

After the changes of r53758 wxMSW didn't generate any wxEVT_TEXT events but
this was still the case for the generic version (and hence for
wxSpinCtrlDouble under MSW too) and wasn't documented.

Fix all versions to avoid sending events for programmatic actions, add unit
tests checking this behaviour and document it.

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

10 years agoAdd test for absence of events from wxSpinCtrlDouble ctor.
Vadim Zeitlin [Tue, 6 Aug 2013 16:59:54 +0000 (16:59 +0000)] 
Add test for absence of events from wxSpinCtrlDouble ctor.

Run the same NoEventsInCtor() test as we already had for wxSpinCtrl for
wxSpinCtrlDouble as well.

Unfortunately currently there is no way to reuse the tests between these two
classes, we should refactor these test cases to use a common
SpinCtrlTestCaseBase<T> base class.

See #15375 which fixed the underlying bug.

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

10 years agoDocument wxTreeCtrl::GetItemFont() behaviour for items without font.
Vadim Zeitlin [Tue, 6 Aug 2013 16:59:49 +0000 (16:59 +0000)] 
Document wxTreeCtrl::GetItemFont() behaviour for items without font.

Explain that this method returns wxNullFont if no font was set for the item.

Closes #15390.

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

10 years agoAdd wxPropertyGridPageState::GetColumnFullWidth().
Vadim Zeitlin [Tue, 6 Aug 2013 13:05:42 +0000 (13:05 +0000)] 
Add wxPropertyGridPageState::GetColumnFullWidth().

This method allows to get the full width needed by wxPropertyGrid and is
useful for determining the space to allocate for it, e.g. when creating a
popup showing the property grid, as shown by the changes to the sample.

Closes #15368.

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

10 years agoFix wxPropertyGrid::GetPropertyRect when the last item is collapsed.
Vadim Zeitlin [Tue, 6 Aug 2013 13:05:36 +0000 (13:05 +0000)] 
Fix wxPropertyGrid::GetPropertyRect when the last item is collapsed.

Return the real height instead of -1.

Closes #15367.

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

10 years agoDutch translations update from Gideon van Melle.
Vadim Zeitlin [Tue, 6 Aug 2013 12:31:58 +0000 (12:31 +0000)] 
Dutch translations update from Gideon van Melle.

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

10 years agoRewrite ConvertToGreyscale() and ConvertToDisabled()
Paul Cornett [Tue, 6 Aug 2013 06:05:38 +0000 (06:05 +0000)] 
Rewrite ConvertToGreyscale() and ConvertToDisabled()
They do almost the same thing, so use almost the same code.
Fixes ConvertToDisabled() modifying its own data.
Closes #15389

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

10 years agoprevent infinite loop if gtk_menu_popup() fails, fixes #15387
Paul Cornett [Mon, 5 Aug 2013 17:10:58 +0000 (17:10 +0000)] 
prevent infinite loop if gtk_menu_popup() fails, fixes #15387

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

10 years agofollow up parent chain to properly support modal dialog parents, see #15383
Stefan Csomor [Mon, 5 Aug 2013 08:59:38 +0000 (08:59 +0000)] 
follow up parent chain to properly support modal dialog parents, see #15383

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

10 years agoComment-only update
Julian Smart [Sun, 4 Aug 2013 07:58:47 +0000 (07:58 +0000)] 
Comment-only update

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

10 years agoremove ancient defines left over from GTK1
Paul Cornett [Sat, 3 Aug 2013 04:48:46 +0000 (04:48 +0000)] 
remove ancient defines left over from GTK1
and some minor cleanup

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

10 years agoremove obsolete check for GTK 2.6
Paul Cornett [Sat, 3 Aug 2013 04:39:45 +0000 (04:39 +0000)] 
remove obsolete check for GTK 2.6

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

10 years agofix Gtk-CRITICAL errors when deleting wxDirButton
Paul Cornett [Fri, 2 Aug 2013 17:01:03 +0000 (17:01 +0000)] 
fix Gtk-CRITICAL errors when deleting wxDirButton

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

10 years agodefer calling SetCanFocus() on wxGTK until after creation
Paul Cornett [Wed, 31 Jul 2013 16:03:51 +0000 (16:03 +0000)] 
defer calling SetCanFocus() on wxGTK until after creation

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

10 years agoApplied #15375 to stop event-sending in generic wxSpinCtrl ctor (eco)
Julian Smart [Wed, 31 Jul 2013 10:47:03 +0000 (10:47 +0000)] 
Applied #15375 to stop event-sending in generic wxSpinCtrl ctor (eco)

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

10 years agodon't pass false as a wxWindowID
Paul Cornett [Wed, 31 Jul 2013 05:56:17 +0000 (05:56 +0000)] 
don't pass false as a wxWindowID

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

10 years agofix tab traversal of wxStaticBox children, closes #15376
Paul Cornett [Wed, 31 Jul 2013 05:35:13 +0000 (05:35 +0000)] 
fix tab traversal of wxStaticBox children, closes #15376

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

10 years agoTurkish translations update from Kaya Zeren.
Vadim Zeitlin [Sun, 28 Jul 2013 22:58:11 +0000 (22:58 +0000)] 
Turkish translations update from Kaya Zeren.

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

10 years agofirst attempt at adding the minimal set needed for dead-key support, see #15345
Stefan Csomor [Sun, 28 Jul 2013 17:36:23 +0000 (17:36 +0000)] 
first attempt at adding the minimal set needed for dead-key support, see #15345

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

10 years agoadapting to new event version
Stefan Csomor [Sun, 28 Jul 2013 14:52:47 +0000 (14:52 +0000)] 
adapting to new event version

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

10 years agochanging to allow for 2x ramping up NSApp run
Stefan Csomor [Sun, 28 Jul 2013 14:37:37 +0000 (14:37 +0000)] 
changing to allow for 2x ramping up NSApp run

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

10 years agousing Run of base class
Stefan Csomor [Sun, 28 Jul 2013 14:32:35 +0000 (14:32 +0000)] 
using Run of base class

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

10 years agoWork around missing mode_t definition with ICC.
Vadim Zeitlin [Sun, 28 Jul 2013 13:08:23 +0000 (13:08 +0000)] 
Work around missing mode_t definition with ICC.

Just handle it in the same way as MSVC.

Closes #15361.

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

10 years agousing Run of base class
Stefan Csomor [Sat, 27 Jul 2013 20:22:40 +0000 (20:22 +0000)] 
using Run of base class

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

10 years agoMake wxComboCtrlBase::Set*groundColour() methods public.
Václav Slavík [Sat, 27 Jul 2013 19:39:37 +0000 (19:39 +0000)] 
Make wxComboCtrlBase::Set*groundColour() methods public.

SetForegroundColour() and SetBackgroundColour() were -- presumably
accidentally -- protected in wxComboCtrlBase, even though they are
documented public virtual methods of wxWindow. This prevented their
use from user code.

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

10 years agoskip apple options
Stefan Csomor [Sat, 27 Jul 2013 19:21:14 +0000 (19:21 +0000)] 
skip apple options

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

10 years agowiring event loop callbacks
Stefan Csomor [Sat, 27 Jul 2013 19:19:39 +0000 (19:19 +0000)] 
wiring event loop callbacks

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

10 years agobracketing for correct builds
Stefan Csomor [Sat, 27 Jul 2013 19:15:38 +0000 (19:15 +0000)] 
bracketing for correct builds

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

10 years agoOSX adaptions
Stefan Csomor [Sat, 27 Jul 2013 19:00:25 +0000 (19:00 +0000)] 
OSX adaptions

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

10 years agoRemove all lines containing cvs/svn "$Id$" keyword.
Vadim Zeitlin [Fri, 26 Jul 2013 16:02:46 +0000 (16:02 +0000)] 
Remove all lines containing cvs/svn "$Id$" keyword.

This keyword is not expanded by Git which means it's not replaced with the
correct revision value in the releases made using git-based scripts and it's
confusing to have lines with unexpanded "$Id$" in the released files. As
expanding them with Git is not that simple (it could be done with git archive
and export-subst attribute) and there are not many benefits in having them in
the first place, just remove all these lines.

If nothing else, this will make an eventual transition to Git simpler.

Closes #14487.

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

10 years agoRemove wxUniversal configuration from the MSVC 10 project files.
Vadim Zeitlin [Fri, 26 Jul 2013 15:27:51 +0000 (15:27 +0000)] 
Remove wxUniversal configuration from the MSVC 10 project files.

As these configurations are not present in the automatically generated files
any more, remove them from the manually created ones too.

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

10 years agoFix duplicate symbol link errors in wxMSW wxTextEntry code.
Vadim Zeitlin [Fri, 26 Jul 2013 10:38:39 +0000 (10:38 +0000)] 
Fix duplicate symbol link errors in wxMSW wxTextEntry code.

Don't include <initguid.h> too soon, as this affects the headers included
after it instead of just our own uses of DEFINE_GUID() as intended.

This resulted in link errors because of duplicate definitions of the many
standard GUIDs when using MinGW for which we include, for whatever reason,
shlguid.h.

This fixes the change of r67573.

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

10 years agoDisable tests in Travis configuration.
Vadim Zeitlin [Thu, 25 Jul 2013 23:36:07 +0000 (23:36 +0000)] 
Disable tests in Travis configuration.

As cppunit is not available, building tests fails.

Also disable optimizations in an attempt to make the build faster as we risk
being killed because it takes so long.

Finally, test compilation of the minimal sample using the installed library
for completeness.

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

10 years agoAdd a configuration file for Travis CI system.
Vadim Zeitlin [Thu, 25 Jul 2013 21:55:17 +0000 (21:55 +0000)] 
Add a configuration file for Travis CI system.

Try to use Travis in addition to buildbot to see if it can be useful for us.

Closes #15355.

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

10 years agoAllow using custom method names in wxHTTP.
Vadim Zeitlin [Thu, 25 Jul 2013 21:55:13 +0000 (21:55 +0000)] 
Allow using custom method names in wxHTTP.

Add wxHTTP::SetMethod().

Also simplify the code by determining the method to use in Connect() instead
of doing it in BuildRequest() itself.

Get rid of the now unused wxHTTP_Req enum.

Closes #15354.

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

10 years agoFix build with wxUSE_FFILE=0.
Vadim Zeitlin [Thu, 25 Jul 2013 21:55:06 +0000 (21:55 +0000)] 
Fix build with wxUSE_FFILE=0.

Add the missing "#if wxUSE_FFILE" checks and add fallbacks to wxFile if it's
available.

Closes #15353.

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

10 years agoDefine wxLongLong_t for Intel compiler.
Vadim Zeitlin [Thu, 25 Jul 2013 21:54:58 +0000 (21:54 +0000)] 
Define wxLongLong_t for Intel compiler.

It supports the same __int64 type and printf() format specifier for it as
MSVC does under Windows.

Closes #15359.

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

10 years agoDon't crash when creating wxStaticBox in wxGTK.
Vadim Zeitlin [Thu, 25 Jul 2013 21:54:53 +0000 (21:54 +0000)] 
Don't crash when creating wxStaticBox in wxGTK.

Since r74585, wxWindow::SetCanFocus() is called from wxStaticBoxBase ctor,
i.e. before the real window is created, and this results in a crash in wxGTK
where SetCanFocus() needs a valid widget.

Fix this simply by doing nothing in SetCanFocus() if the widget is not created
yet as this should result in the same behaviour as before r74585. This doesn't
seem like the right thing to do, however, and we should probably remove this
call from wxStaticBoxBase ctor and do it in wxStaticBox implementation itself
instead.

Closes #15358.

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

10 years agowiring OnInit on osx to a later point in event processing
Stefan Csomor [Wed, 24 Jul 2013 06:14:48 +0000 (06:14 +0000)] 
wiring OnInit on osx to a later point in event processing

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

10 years agosupport for iPhone callbacks
Stefan Csomor [Tue, 23 Jul 2013 20:11:59 +0000 (20:11 +0000)] 
support for iPhone callbacks

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

10 years agoadding OnLaunched
Stefan Csomor [Tue, 23 Jul 2013 17:57:05 +0000 (17:57 +0000)] 
adding OnLaunched

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

10 years agouse GTK-specific method to delete selection
Paul Cornett [Tue, 23 Jul 2013 14:41:14 +0000 (14:41 +0000)] 
use GTK-specific method to delete selection

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

10 years agoCompilation fix for PCH-less build after r74586.
Vadim Zeitlin [Tue, 23 Jul 2013 13:18:30 +0000 (13:18 +0000)] 
Compilation fix for PCH-less build after r74586.

Don't use wxWindow methods in wx/container.h, move AcceptsFocus()
implementation to containr.cpp.

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

10 years agoDocument wxKill(wxSIGTERM) reliance on having an open window in wxMSW.
Vadim Zeitlin [Tue, 23 Jul 2013 12:44:36 +0000 (12:44 +0000)] 
Document wxKill(wxSIGTERM) reliance on having an open window in wxMSW.

wxKill(wxSIGTERM) doesn't work if the child process has no open windows as it
doesn't have anything to post the WM_QUIT message to.

Document this and point out that wxKill(wxSIGKILL) still works in this case.

Closes #15356.

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

10 years agoFix tab navigation bug with radio boxes without enabled items.
Vadim Zeitlin [Tue, 23 Jul 2013 12:44:33 +0000 (12:44 +0000)] 
Fix tab navigation bug with radio boxes without enabled items.

There was a bug similar to the one in the preceding commit with radio boxes
under wxMSW too: if all radio box buttons were disabled (or hidden, although
this should be much more rare in practice, unlike the disabled case which was
deemed to be rare in r74583 commit message but turned out to actually happen),
the radio box still pretended to accept focus but didn't really do it.

Fix this by allowing to override wxWindow::CanBeFocused() and do it in
wxRadioBox to check whether we have any enabled visible items.

Also add a check for CanBeFocused() to wxControlContainer code.

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

10 years agoFix tab navigation bug with static boxes without enabled children.
Vadim Zeitlin [Tue, 23 Jul 2013 12:44:29 +0000 (12:44 +0000)] 
Fix tab navigation bug with static boxes without enabled children.

wxControlContainer::AcceptsFocusFromKeyboard() returned true even if the
control didn't have any currently enabled -- and hence accepting focus --
children. This resulted in strange wxEVT_NAVIGATION_KEY propagation as it
unexpectedly wasn't handled in the control which pretended to accept focus and
instead bubbled up back into the parent, resulting in the focus returning to
the first child of the parent instead of skipping the static box with disabled
children and going to the next enabled child.

Fix this by checking that we have children that can be focused right now and
not only children that are focusable. Notice that this doesn't take care of
calling wxWindow::SetCanFocus() correctly when the children enabled/disabled
state changes so there might still be other problems, notably under wxGTK
where SetCanFocus() does something non-trivial, but it at least improves
things under wxMSW.

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