virtual wxSize CalcSizeFromPage(const wxSize& sizePage) const = 0;
// get/set size of area between book control area and page area
- inline unsigned int GetInternalBorder() const
+ inline size_t GetInternalBorder() const
{
return m_internalBorder;
}
- void SetInternalBorder(unsigned int internalBorder)
+ void SetInternalBorder(size_t internalBorder)
{
m_internalBorder = internalBorder;
}
// returns true if we have wxCHB_TOP or wxCHB_BOTTOM style
bool IsVertical() const { return HasFlag(wxBK_BOTTOM | wxBK_TOP); }
+ // set/get option to shrink to fit current page
+ void SetFitToCurrentPage(bool fit) { m_fitToCurrentPage = fit; }
+ bool GetFitToCurrentPage() const { return m_fitToCurrentPage; }
+
// operations
// ----------
// Always rely on GetBestSize, which will look at all the pages
virtual void SetInitialBestSize(const wxSize& WXUNUSED(size)) { }
+ // Lay out controls
+ void DoSize();
+
// the array of all pages of this control
wxArrayPages m_pages;
// controller buddy if available, NULL otherwise (usually for native book controls like wxNotebook)
wxControl *m_bookctrl;
+ // Whether to shrink to fit current page
+ bool m_fitToCurrentPage;
+
private:
// common part of all ctors
void Init();
// internal border
- unsigned int m_internalBorder;
+ size_t m_internalBorder;
DECLARE_ABSTRACT_CLASS(wxBookCtrlBase)
DECLARE_NO_COPY_CLASS(wxBookCtrlBase)
wxBookCtrlBaseEvent(wxEventType commandType = wxEVT_NULL, int winid = 0,
int nSel = -1, int nOldSel = -1)
: wxNotifyEvent(commandType, winid)
- {
- m_nSel = nSel;
- m_nOldSel = nOldSel;
- }
+ {
+ m_nSel = nSel;
+ m_nOldSel = nOldSel;
+ }
+
+ wxBookCtrlBaseEvent(const wxBookCtrlBaseEvent& event)
+ : wxNotifyEvent(event)
+ {
+ m_nSel = event.m_nSel;
+ m_nOldSel = event.m_nOldSel;
+ }
// accessors
// the currently selected page (-1 if none)