Add wxAuiToolBar::Create().
Implement two-step creation of wxAuiToolBar to allow doing it from XRC. See #13520. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72785 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
cf8ccdb270
commit
46e6720278
@ -439,14 +439,26 @@ protected:
|
||||
class WXDLLIMPEXP_AUI wxAuiToolBar : public wxControl
|
||||
{
|
||||
public:
|
||||
wxAuiToolBar() { Init(); }
|
||||
|
||||
wxAuiToolBar(wxWindow* parent,
|
||||
wxWindowID id = -1,
|
||||
const wxPoint& position = wxDefaultPosition,
|
||||
wxWindowID id = wxID_ANY,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxAUI_TB_DEFAULT_STYLE);
|
||||
long style = wxAUI_TB_DEFAULT_STYLE)
|
||||
{
|
||||
Init();
|
||||
Create(parent, id, pos, size, style);
|
||||
}
|
||||
|
||||
virtual ~wxAuiToolBar();
|
||||
|
||||
bool Create(wxWindow* parent,
|
||||
wxWindowID id = wxID_ANY,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = 0);
|
||||
|
||||
void SetWindowStyleFlag(long style);
|
||||
long GetWindowStyleFlag() const;
|
||||
|
||||
@ -581,6 +593,7 @@ public:
|
||||
virtual void UpdateWindowUI(long flags = wxUPDATE_UI_NONE);
|
||||
|
||||
protected:
|
||||
void Init();
|
||||
|
||||
virtual void OnCustomRender(wxDC& WXUNUSED(dc),
|
||||
const wxAuiToolBarItem& WXUNUSED(item),
|
||||
|
@ -596,11 +596,32 @@ public:
|
||||
class wxAuiToolBar : public wxControl
|
||||
{
|
||||
public:
|
||||
/**
|
||||
Default constructor, use Create() later.
|
||||
|
||||
@since 2.9.5
|
||||
*/
|
||||
wxAuiToolBar();
|
||||
|
||||
/**
|
||||
Constructor creating and initializing the object.
|
||||
*/
|
||||
wxAuiToolBar(wxWindow* parent,
|
||||
wxWindowID id = -1,
|
||||
wxWindowID id = wxID_ANY,
|
||||
const wxPoint& position = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxAUI_TB_DEFAULT_STYLE);
|
||||
|
||||
/**
|
||||
Really create wxAuiToolBar created using default constructor.
|
||||
|
||||
@since 2.9.5
|
||||
*/
|
||||
bool Create(wxWindow* parent,
|
||||
wxWindowID id = wxID_ANY,
|
||||
const wxPoint& pos = wxDefaultPosition,
|
||||
const wxSize& size = wxDefaultSize,
|
||||
long style = wxAUI_TB_DEFAULT_STYLE);
|
||||
virtual ~wxAuiToolBar();
|
||||
|
||||
void SetWindowStyleFlag(long style);
|
||||
|
@ -798,17 +798,7 @@ BEGIN_EVENT_TABLE(wxAuiToolBar, wxControl)
|
||||
EVT_SET_CURSOR(wxAuiToolBar::OnSetCursor)
|
||||
END_EVENT_TABLE()
|
||||
|
||||
|
||||
wxAuiToolBar::wxAuiToolBar(wxWindow* parent,
|
||||
wxWindowID id,
|
||||
const wxPoint& position,
|
||||
const wxSize& size,
|
||||
long style)
|
||||
: wxControl(parent,
|
||||
id,
|
||||
position,
|
||||
size,
|
||||
style | wxBORDER_NONE)
|
||||
void wxAuiToolBar::Init()
|
||||
{
|
||||
m_sizer = new wxBoxSizer(wxHORIZONTAL);
|
||||
m_buttonWidth = -1;
|
||||
@ -824,15 +814,29 @@ wxAuiToolBar::wxAuiToolBar(wxWindow* parent,
|
||||
m_gripperSizerItem = NULL;
|
||||
m_overflowSizerItem = NULL;
|
||||
m_dragging = false;
|
||||
m_gripperVisible = (m_style & wxAUI_TB_GRIPPER) ? true : false;
|
||||
m_overflowVisible = (m_style & wxAUI_TB_OVERFLOW) ? true : false;
|
||||
m_overflowState = 0;
|
||||
}
|
||||
|
||||
bool wxAuiToolBar::Create(wxWindow* parent,
|
||||
wxWindowID id,
|
||||
const wxPoint& pos,
|
||||
const wxSize& size,
|
||||
long style)
|
||||
{
|
||||
style = style|wxBORDER_NONE;
|
||||
|
||||
if (!wxControl::Create(parent, id, pos, size, style))
|
||||
return false;
|
||||
|
||||
m_style = style;
|
||||
m_orientation = GetOrientation(style);
|
||||
if (m_orientation == wxBOTH)
|
||||
{
|
||||
m_orientation = wxHORIZONTAL;
|
||||
}
|
||||
m_style = style | wxBORDER_NONE;
|
||||
m_gripperVisible = (m_style & wxAUI_TB_GRIPPER) ? true : false;
|
||||
m_overflowVisible = (m_style & wxAUI_TB_OVERFLOW) ? true : false;
|
||||
m_overflowState = 0;
|
||||
|
||||
SetMargins(5, 5, 2, 2);
|
||||
SetFont(*wxNORMAL_FONT);
|
||||
SetArtFlags();
|
||||
@ -840,8 +844,9 @@ wxAuiToolBar::wxAuiToolBar(wxWindow* parent,
|
||||
if (style & wxAUI_TB_HORZ_LAYOUT)
|
||||
SetToolTextOrientation(wxAUI_TBTOOL_TEXT_RIGHT);
|
||||
SetBackgroundStyle(wxBG_STYLE_CUSTOM);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
wxAuiToolBar::~wxAuiToolBar()
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user