wxBookCtrlBase::OnSize(event);
}
+int wxListbook::HitTest(const wxPoint& pt, long *flags) const
+{
+ int pagePos = wxNOT_FOUND;
+
+ if ( flags )
+ *flags = wxBK_HITTEST_NOWHERE;
+
+ // convert from listbook control coordinates to list control coordinates
+ const wxListView * const list = GetListView();
+ const wxPoint listPt = list->ScreenToClient(ClientToScreen(pt));
+
+ // is the point inside list control?
+ if ( wxRect(list->GetSize()).Contains(listPt) )
+ {
+ int flagsList;
+ pagePos = list->HitTest(listPt, flagsList);
+
+ if ( flags )
+ {
+ if ( pagePos != wxNOT_FOUND )
+ *flags = 0;
+
+ if ( flagsList & (wxLIST_HITTEST_ONITEMICON |
+ wxLIST_HITTEST_ONITEMSTATEICON ) )
+ *flags |= wxBK_HITTEST_ONICON;
+
+ if ( flagsList & wxLIST_HITTEST_ONITEMLABEL )
+ *flags |= wxBK_HITTEST_ONLABEL;
+ }
+ }
+ else // not over list control at all
+ {
+ if ( flags && GetPageRect().Contains(pt) )
+ *flags |= wxBK_HITTEST_ONPAGE;
+ }
+
+ return pagePos;
+}
+
wxSize wxListbook::CalcSizeFromPage(const wxSize& sizePage) const
{
// we need to add the size of the list control and the border between