#if wxUSE_CHOICEBOOK
-#include "wx/choice.h"
#include "wx/choicebk.h"
+
+#ifndef WX_PRECOMP
+ #include "wx/settings.h"
+#endif
+
+#include "wx/choice.h"
#include "wx/imaglist.h"
-#include "wx/settings.h"
+#include "wx/sizer.h"
// ----------------------------------------------------------------------------
// various wxWidgets macros
IMPLEMENT_DYNAMIC_CLASS(wxChoicebook, wxBookCtrlBase)
IMPLEMENT_DYNAMIC_CLASS(wxChoicebookEvent, wxNotifyEvent)
+#if !WXWIN_COMPATIBILITY_EVENT_TYPES
const wxEventType wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGING = wxNewEventType();
const wxEventType wxEVT_COMMAND_CHOICEBOOK_PAGE_CHANGED = wxNewEventType();
+#endif
const int wxID_CHOICEBOOKCHOICE = wxNewId();
BEGIN_EVENT_TABLE(wxChoicebook, wxBookCtrlBase)
wxDefaultSize
);
+ wxSizer* mainSizer = new wxBoxSizer(IsVertical() ? wxVERTICAL : wxHORIZONTAL);
+
+ if (style & wxBK_RIGHT || style & wxBK_BOTTOM)
+ mainSizer->Add(0, 0, 1, wxEXPAND, 0);
+
+ m_controlSizer = new wxBoxSizer(IsVertical() ? wxHORIZONTAL : wxVERTICAL);
+ m_controlSizer->Add(m_bookctrl, 1, (IsVertical() ? wxALIGN_CENTRE_VERTICAL : wxALIGN_CENTRE) |wxGROW, 0);
+ mainSizer->Add(m_controlSizer, 0, wxGROW|wxALL, m_controlMargin);
+ SetSizer(mainSizer);
return true;
}
wxSize wxChoicebook::GetControllerSize() const
{
const wxSize sizeClient = GetClientSize(),
- sizeChoice = m_bookctrl->GetBestFittingSize();
+ // sizeChoice = m_bookctrl->GetBestFittingSize();
+ sizeChoice = m_controlSizer->CalcMin();
wxSize size;
if ( IsVertical() )