some more tbar tests
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_2_BRANCH@7380 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -98,6 +98,10 @@ public:
|
|||||||
void OnQuit(wxCommandEvent& event);
|
void OnQuit(wxCommandEvent& event);
|
||||||
void OnAbout(wxCommandEvent& event);
|
void OnAbout(wxCommandEvent& event);
|
||||||
|
|
||||||
|
void OnSize(wxSizeEvent& event);
|
||||||
|
|
||||||
|
void OnToggleAnotherToolbar(wxCommandEvent& event);
|
||||||
|
|
||||||
void OnToggleToolbarSize(wxCommandEvent& event);
|
void OnToggleToolbarSize(wxCommandEvent& event);
|
||||||
void OnToggleToolbarOrient(wxCommandEvent& event);
|
void OnToggleToolbarOrient(wxCommandEvent& event);
|
||||||
void OnToggleToolbarRows(wxCommandEvent& event);
|
void OnToggleToolbarRows(wxCommandEvent& event);
|
||||||
@@ -127,12 +131,16 @@ private:
|
|||||||
void DoDeletePrint();
|
void DoDeletePrint();
|
||||||
void DoToggleHelp();
|
void DoToggleHelp();
|
||||||
|
|
||||||
|
void LayoutChildren();
|
||||||
|
|
||||||
bool m_smallToolbar,
|
bool m_smallToolbar,
|
||||||
m_horzToolbar;
|
m_horzToolbar;
|
||||||
size_t m_rows; // 1 or 2 only
|
size_t m_rows; // 1 or 2 only
|
||||||
|
|
||||||
wxTextCtrl *m_textWindow;
|
wxTextCtrl *m_textWindow;
|
||||||
|
|
||||||
|
wxToolBar *m_tbar;
|
||||||
|
|
||||||
DECLARE_EVENT_TABLE()
|
DECLARE_EVENT_TABLE()
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -152,6 +160,7 @@ enum
|
|||||||
IDM_TOOLBAR_INSERTPRINT,
|
IDM_TOOLBAR_INSERTPRINT,
|
||||||
IDM_TOOLBAR_TOGGLEHELP,
|
IDM_TOOLBAR_TOGGLEHELP,
|
||||||
IDM_TOOLBAR_TOGGLEFULLSCREEN,
|
IDM_TOOLBAR_TOGGLEFULLSCREEN,
|
||||||
|
IDM_TOOLBAR_TOGGLE_ANOTHER_TOOLBAR,
|
||||||
|
|
||||||
ID_COMBO = 1000
|
ID_COMBO = 1000
|
||||||
};
|
};
|
||||||
@@ -164,9 +173,13 @@ enum
|
|||||||
// help button.
|
// help button.
|
||||||
|
|
||||||
BEGIN_EVENT_TABLE(MyFrame, wxFrame)
|
BEGIN_EVENT_TABLE(MyFrame, wxFrame)
|
||||||
|
EVT_SIZE(MyFrame::OnSize)
|
||||||
|
|
||||||
EVT_MENU(wxID_EXIT, MyFrame::OnQuit)
|
EVT_MENU(wxID_EXIT, MyFrame::OnQuit)
|
||||||
EVT_MENU(wxID_HELP, MyFrame::OnAbout)
|
EVT_MENU(wxID_HELP, MyFrame::OnAbout)
|
||||||
|
|
||||||
|
EVT_MENU(IDM_TOOLBAR_TOGGLE_ANOTHER_TOOLBAR, MyFrame::OnToggleAnotherToolbar)
|
||||||
|
|
||||||
EVT_MENU(IDM_TOOLBAR_TOGGLETOOLBARSIZE, MyFrame::OnToggleToolbarSize)
|
EVT_MENU(IDM_TOOLBAR_TOGGLETOOLBARSIZE, MyFrame::OnToggleToolbarSize)
|
||||||
EVT_MENU(IDM_TOOLBAR_TOGGLETOOLBARORIENT, MyFrame::OnToggleToolbarOrient)
|
EVT_MENU(IDM_TOOLBAR_TOGGLETOOLBARORIENT, MyFrame::OnToggleToolbarOrient)
|
||||||
EVT_MENU(IDM_TOOLBAR_TOGGLETOOLBARROWS, MyFrame::OnToggleToolbarRows)
|
EVT_MENU(IDM_TOOLBAR_TOGGLETOOLBARROWS, MyFrame::OnToggleToolbarRows)
|
||||||
@@ -326,6 +339,7 @@ MyFrame::MyFrame(wxFrame* parent,
|
|||||||
long style)
|
long style)
|
||||||
: wxFrame(parent, id, title, pos, size, style)
|
: wxFrame(parent, id, title, pos, size, style)
|
||||||
{
|
{
|
||||||
|
m_tbar = NULL;
|
||||||
m_textWindow = new wxTextCtrl(this, -1, "", wxPoint(0, 0), wxSize(-1, -1), wxTE_MULTILINE);
|
m_textWindow = new wxTextCtrl(this, -1, "", wxPoint(0, 0), wxSize(-1, -1), wxTE_MULTILINE);
|
||||||
|
|
||||||
m_smallToolbar = TRUE;
|
m_smallToolbar = TRUE;
|
||||||
@@ -340,6 +354,11 @@ MyFrame::MyFrame(wxFrame* parent,
|
|||||||
|
|
||||||
// Make a menubar
|
// Make a menubar
|
||||||
wxMenu *tbarMenu = new wxMenu;
|
wxMenu *tbarMenu = new wxMenu;
|
||||||
|
tbarMenu->Append(IDM_TOOLBAR_TOGGLE_ANOTHER_TOOLBAR,
|
||||||
|
"Toggle &another toolbar\tCtrl-A",
|
||||||
|
"Show/hide another test toolbar",
|
||||||
|
TRUE);
|
||||||
|
|
||||||
tbarMenu->Append(IDM_TOOLBAR_TOGGLETOOLBARSIZE,
|
tbarMenu->Append(IDM_TOOLBAR_TOGGLETOOLBARSIZE,
|
||||||
"&Toggle toolbar size\tCtrl-S",
|
"&Toggle toolbar size\tCtrl-S",
|
||||||
"Toggle between big/small toolbar",
|
"Toggle between big/small toolbar",
|
||||||
@@ -397,6 +416,61 @@ wxToolBar* MyFrame::OnCreateToolBar(long style,
|
|||||||
|
|
||||||
#endif // USE_GENERIC_TBAR
|
#endif // USE_GENERIC_TBAR
|
||||||
|
|
||||||
|
void MyFrame::LayoutChildren()
|
||||||
|
{
|
||||||
|
wxSize size = GetClientSize();
|
||||||
|
|
||||||
|
int offset;
|
||||||
|
if ( m_tbar )
|
||||||
|
{
|
||||||
|
m_tbar->SetSize(-1, size.y);
|
||||||
|
m_tbar->Move(0, 0);
|
||||||
|
|
||||||
|
offset = m_tbar->GetSize().x;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
offset = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
m_textWindow->SetSize(offset, 0, size.x - offset, size.y);
|
||||||
|
}
|
||||||
|
|
||||||
|
void MyFrame::OnSize(wxSizeEvent& event)
|
||||||
|
{
|
||||||
|
if ( m_tbar )
|
||||||
|
{
|
||||||
|
LayoutChildren();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
event.Skip();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void MyFrame::OnToggleAnotherToolbar(wxCommandEvent& WXUNUSED(event))
|
||||||
|
{
|
||||||
|
if ( m_tbar )
|
||||||
|
{
|
||||||
|
delete m_tbar;
|
||||||
|
m_tbar = NULL;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_tbar = new wxToolBar(this, -1,
|
||||||
|
wxDefaultPosition, wxDefaultSize,
|
||||||
|
wxTB_VERTICAL);
|
||||||
|
m_tbar->AddTool(wxID_HELP, wxBITMAP(help),
|
||||||
|
wxNullBitmap, FALSE,
|
||||||
|
NULL,
|
||||||
|
"This is the help button",
|
||||||
|
"This is the long help for the help button");
|
||||||
|
m_tbar->Realize();
|
||||||
|
}
|
||||||
|
|
||||||
|
LayoutChildren();
|
||||||
|
}
|
||||||
|
|
||||||
void MyFrame::OnToggleToolbarSize(wxCommandEvent& WXUNUSED(event))
|
void MyFrame::OnToggleToolbarSize(wxCommandEvent& WXUNUSED(event))
|
||||||
{
|
{
|
||||||
m_smallToolbar = !m_smallToolbar;
|
m_smallToolbar = !m_smallToolbar;
|
||||||
|
Reference in New Issue
Block a user