]> git.saurik.com Git - wxWidgets.git/commitdiff
Fix keyboard navigation in wx{List,Choice,Tree,Tool}book controls.
authorVadim Zeitlin <vadim@wxwidgets.org>
Tue, 15 May 2012 10:03:57 +0000 (10:03 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Tue, 15 May 2012 10:03:57 +0000 (10:03 +0000)
Inherit from wxNavigationEnabled<wxBookCtrlBase> instead of just
wxBookCtrlBase to ensure that the keyboard navigation works correctly for
these controls.

The toolbar in wxToolbook still doesn't accept focus from keyboard but at
least the pages can be TAB-bed too and from. And the rest of the controls
are now fully accessible using only the keyboard.

Closes #14303.

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

include/wx/choicebk.h
include/wx/listbook.h
include/wx/toolbook.h
include/wx/treebook.h

index 972a97c6a0bd2e3e0464a921da3a9f4cfe4f1c4b..6c9f7d4980229b65276404d6c59adfe99b781011 100644 (file)
@@ -18,6 +18,7 @@
 
 #include "wx/bookctrl.h"
 #include "wx/choice.h"
 
 #include "wx/bookctrl.h"
 #include "wx/choice.h"
+#include "wx/containr.h"
 
 class WXDLLIMPEXP_FWD_CORE wxChoice;
 
 
 class WXDLLIMPEXP_FWD_CORE wxChoice;
 
@@ -36,7 +37,7 @@ wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_CORE, wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGI
 // wxChoicebook
 // ----------------------------------------------------------------------------
 
 // wxChoicebook
 // ----------------------------------------------------------------------------
 
-class WXDLLIMPEXP_CORE wxChoicebook : public wxBookCtrlBase
+class WXDLLIMPEXP_CORE wxChoicebook : public wxNavigationEnabled<wxBookCtrlBase>
 {
 public:
     wxChoicebook() { }
 {
 public:
     wxChoicebook() { }
index 48140dc0bb7dfd5ad269729619a58c36d04acdb0..1d8853526c080df0194de7df535b86032a1df142 100644 (file)
@@ -17,6 +17,7 @@
 #if wxUSE_LISTBOOK
 
 #include "wx/bookctrl.h"
 #if wxUSE_LISTBOOK
 
 #include "wx/bookctrl.h"
+#include "wx/containr.h"
 
 class WXDLLIMPEXP_FWD_CORE wxListView;
 class WXDLLIMPEXP_FWD_CORE wxListEvent;
 
 class WXDLLIMPEXP_FWD_CORE wxListView;
 class WXDLLIMPEXP_FWD_CORE wxListEvent;
@@ -36,7 +37,7 @@ wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_CORE, wxEVT_COMMAND_LISTBOOK_PAGE_CHANGING
 // wxListbook
 // ----------------------------------------------------------------------------
 
 // wxListbook
 // ----------------------------------------------------------------------------
 
-class WXDLLIMPEXP_CORE wxListbook : public wxBookCtrlBase
+class WXDLLIMPEXP_CORE wxListbook : public wxNavigationEnabled<wxBookCtrlBase>
 {
 public:
     wxListbook() { }
 {
 public:
     wxListbook() { }
index f3e3e3aad276778473517947a19e5b553cfa94a3..86d50d57b65a086836033b38d220a835c0d06df8 100644 (file)
@@ -17,6 +17,7 @@
 #if wxUSE_TOOLBOOK
 
 #include "wx/bookctrl.h"
 #if wxUSE_TOOLBOOK
 
 #include "wx/bookctrl.h"
+#include "wx/containr.h"
 
 class WXDLLIMPEXP_FWD_CORE wxToolBarBase;
 class WXDLLIMPEXP_FWD_CORE wxCommandEvent;
 
 class WXDLLIMPEXP_FWD_CORE wxToolBarBase;
 class WXDLLIMPEXP_FWD_CORE wxCommandEvent;
@@ -40,7 +41,7 @@ wxDECLARE_EXPORTED_EVENT( WXDLLIMPEXP_CORE, wxEVT_COMMAND_TOOLBOOK_PAGE_CHANGING
 // wxToolbook
 // ----------------------------------------------------------------------------
 
 // wxToolbook
 // ----------------------------------------------------------------------------
 
-class WXDLLIMPEXP_CORE wxToolbook : public wxBookCtrlBase
+class WXDLLIMPEXP_CORE wxToolbook : public wxNavigationEnabled<wxBookCtrlBase>
 {
 public:
     wxToolbook()
 {
 public:
     wxToolbook()
index a6bd61d2d1c4b52918883dde48a5834f174ea5dd..784a9f1dd363b917a1441b9704c04bfaf04dbe40 100644 (file)
@@ -17,6 +17,7 @@
 #if wxUSE_TREEBOOK
 
 #include "wx/bookctrl.h"
 #if wxUSE_TREEBOOK
 
 #include "wx/bookctrl.h"
+#include "wx/containr.h"
 #include "wx/treectrl.h"        // for wxArrayTreeItemIds
 
 typedef wxWindow wxTreebookPage;
 #include "wx/treectrl.h"        // for wxArrayTreeItemIds
 
 typedef wxWindow wxTreebookPage;
@@ -27,7 +28,7 @@ class WXDLLIMPEXP_FWD_CORE wxTreeEvent;
 // wxTreebook
 // ----------------------------------------------------------------------------
 
 // wxTreebook
 // ----------------------------------------------------------------------------
 
-class WXDLLIMPEXP_CORE wxTreebook : public wxBookCtrlBase
+class WXDLLIMPEXP_CORE wxTreebook : public wxNavigationEnabled<wxBookCtrlBase>
 {
 public:
     // Constructors and such
 {
 public:
     // Constructors and such