return false;
}
+bool wxWindowBase::HandleWindowEvent(wxEvent& event) const
+{
+ return GetEventHandler()->SafelyProcessEvent(event);
+}
+
// ----------------------------------------------------------------------------
// colours, fonts &c
// ----------------------------------------------------------------------------
return wxEvtHandler::TryParent(event);
}
+// ----------------------------------------------------------------------------
+// window relationships
+// ----------------------------------------------------------------------------
+
+wxWindow *wxWindowBase::DoGetSibling(WindowOrder order) const
+{
+ wxCHECK_MSG( GetParent(), NULL,
+ _T("GetPrev/NextSibling() don't work for TLWs!") );
+
+ wxWindowList& siblings = GetParent()->GetChildren();
+ wxWindowList::compatibility_iterator i = siblings.Find((wxWindow *)this);
+ wxCHECK_MSG( i, NULL, _T("window not a child of its parent?") );
+
+ if ( order == OrderBefore )
+ i = i->GetPrevious();
+ else // OrderAfter
+ i = i->GetNext();
+
+ return i ? i->GetData() : NULL;
+}
+
// ----------------------------------------------------------------------------
// keyboard navigation
// ----------------------------------------------------------------------------
#endif // wxHAS_NATIVE_TAB_TRAVERSAL/!wxHAS_NATIVE_TAB_TRAVERSAL
}
-void wxWindowBase::DoMoveInTabOrder(wxWindow *win, MoveKind move)
+void wxWindowBase::DoMoveInTabOrder(wxWindow *win, WindowOrder move)
{
// check that we're not a top level window
wxCHECK_RET( GetParent(),
// can't just move the node around
wxWindow *self = (wxWindow *)this;
siblings.DeleteObject(self);
- if ( move == MoveAfter )
+ if ( move == OrderAfter )
{
i = i->GetNext();
}
{
siblings.Insert(i, self);
}
- else // MoveAfter and win was the last sibling
+ else // OrderAfter and win was the last sibling
{
siblings.Append(self);
}