X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3c3ead1d1513a5eb79091a604f4e42b45d1bdf5d..04b2b47a4e817fb32a78316b8b50efd0612509b9:/src/ribbon/control.cpp diff --git a/src/ribbon/control.cpp b/src/ribbon/control.cpp index a963a6c4c1..9867ecf7d2 100644 --- a/src/ribbon/control.cpp +++ b/src/ribbon/control.cpp @@ -8,16 +8,18 @@ // Copyright: (C) Peter Cawley // Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// + #include "wx/wxprec.h" #ifdef __BORLANDC__ #pragma hdrstop #endif -#include "wx/ribbon/control.h" - #if wxUSE_RIBBON +#include "wx/ribbon/control.h" +#include "wx/ribbon/bar.h" + #ifndef WX_PRECOMP #endif @@ -27,20 +29,22 @@ IMPLEMENT_CLASS(wxRibbonControl, wxControl) -wxRibbonControl::wxRibbonControl(wxWindow *parent, wxWindowID id, +bool wxRibbonControl::Create(wxWindow *parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style, const wxValidator& validator, const wxString& name) - : wxControl(parent, id, pos, size, style, validator, name) { - m_art = NULL; + if ( !wxControl::Create(parent, id, pos, size, style, validator, name) ) + return false; wxRibbonControl *ribbon_parent = wxDynamicCast(parent, wxRibbonControl); if(ribbon_parent) { m_art = ribbon_parent->GetArtProvider(); } + + return true; } void wxRibbonControl::SetArtProvider(wxRibbonArtProvider* art) @@ -106,4 +110,16 @@ bool wxRibbonControl::Realize() return true; } +wxRibbonBar* wxRibbonControl::GetAncestorRibbonBar()const +{ + for ( wxWindow* win = GetParent(); win; win = win->GetParent() ) + { + wxRibbonBar* bar = wxDynamicCast(win, wxRibbonBar); + if ( bar ) + return bar; + } + + return NULL; +} + #endif // wxUSE_RIBBON