#include "wx/image.h"
#include "wx/filedlg.h"
-// define this to 1 to use wxToolBarSimple instead of the native one
-#define USE_GENERIC_TBAR 0
-
// define this to use XPMs everywhere (by default, BMPs are used under Win)
// BMPs use less space, but aren't compiled into the executable on other platforms
#ifdef __WXMSW__
#define USE_XPM_BITMAPS 1
#endif
-#if USE_GENERIC_TBAR
- #if !wxUSE_TOOLBAR_SIMPLE
- #error wxToolBarSimple is not compiled in, set wxUSE_TOOLBAR_SIMPLE \
- to 1 in setup.h and recompile the library.
- #else
- #include "wx/tbarsmpl.h"
- #endif
-#endif // USE_GENERIC_TBAR
-
#if USE_XPM_BITMAPS && defined(__WXMSW__) && !wxUSE_XPM_IN_MSW
#error You need to enable XPM support to use XPM bitmaps with toolbar!
#endif // USE_XPM_BITMAPS
void OnToggleAnotherToolbar(wxCommandEvent& event);
void OnToggleHorizontalText(wxCommandEvent& WXUNUSED(event));
+ void OnBottomToolbar(wxCommandEvent& WXUNUSED(event));
void OnToggleToolbarSize(wxCommandEvent& event);
void OnToggleToolbarOrient(wxCommandEvent& event);
void OnToggleToolbarRows(wxCommandEvent& event);
void OnUpdateToggleRadioBtn(wxUpdateUIEvent& event)
{ event.Enable( m_tbar != NULL ); }
-#if USE_GENERIC_TBAR
- virtual wxToolBar *OnCreateToolBar(long style,
- wxWindowID id,
- const wxString& name );
-#endif // USE_GENERIC_TBAR
-
private:
void DoEnablePrint();
void DoDeletePrint();
bool m_smallToolbar,
m_horzToolbar,
+ m_bottomToolbar,
m_horzText,
m_useCustomDisabled,
m_showTooltips;
IDM_TOOLBAR_SHOW_ICONS,
IDM_TOOLBAR_SHOW_BOTH,
IDM_TOOLBAR_CUSTOM_PATH,
-
+ IDM_TOOLBAR_BOTTOM_ORIENTATION,
IDM_TOOLBAR_OTHER_1,
IDM_TOOLBAR_OTHER_2,
IDM_TOOLBAR_OTHER_3,
- ID_COMBO = 1000
+ ID_COMBO = 1000,
+ ID_SPIN = 1001
};
// ----------------------------------------------------------------------------
EVT_MENU(IDM_TOOLBAR_TOGGLE_ANOTHER_TOOLBAR, MyFrame::OnToggleAnotherToolbar)
EVT_MENU(IDM_TOOLBAR_TOGGLE_HORIZONTAL_TEXT, MyFrame::OnToggleHorizontalText)
+ EVT_MENU(IDM_TOOLBAR_BOTTOM_ORIENTATION, MyFrame::OnBottomToolbar)
EVT_MENU(IDM_TOOLBAR_TOGGLETOOLBARSIZE, MyFrame::OnToggleToolbarSize)
EVT_MENU(IDM_TOOLBAR_TOGGLETOOLBARORIENT, MyFrame::OnToggleToolbarOrient)
EVT_MENU(IDM_TOOLBAR_TOGGLETOOLBARROWS, MyFrame::OnToggleToolbarRows)
SetToolBar(NULL);
- style &= ~(wxTB_HORIZONTAL | wxTB_VERTICAL | wxTB_HORZ_LAYOUT);
+ style &= ~(wxTB_HORIZONTAL | wxTB_VERTICAL | wxTB_BOTTOM | wxTB_HORZ_LAYOUT);
+ if( m_bottomToolbar )
+ style |= wxTB_BOTTOM;
+ else
style |= m_horzToolbar ? wxTB_HORIZONTAL : wxTB_VERTICAL;
if ( m_showTooltips )
toolBar->AddTool(wxID_OPEN, _T("Open"), toolBarBitmaps[Tool_open], _T("Open file"));
// the generic toolbar doesn't really support this
-#if (wxUSE_TOOLBAR_NATIVE && !USE_GENERIC_TBAR) && !defined(__WXX11__) || defined(__WXUNIVERSAL__)
+#if wxUSE_TOOLBAR_NATIVE && !defined(__WXX11__) || defined(__WXUNIVERSAL__)
// adding a combo to a vertical toolbar is not very smart
if ( m_horzToolbar )
{
combo->Append(_T("in a"));
combo->Append(_T("toolbar"));
toolBar->AddControl(combo);
+
+ //wxSpinCtrl *spin = new wxSpinCtrl( toolBar, ID_SPIN, wxT("0"), wxDefaultPosition, wxSize(80,wxDefaultCoord), 0, 100, 0 );
+ //toolBar->AddControl( spin );
}
#endif // toolbars which don't support controls
m_smallToolbar = true;
m_horzToolbar = true;
+ m_bottomToolbar = false;
m_horzText = false;
m_useCustomDisabled = false;
m_showTooltips = true;
_T("Switch between using system-generated and custom disabled images"));
+ tbarMenu->AppendCheckItem(IDM_TOOLBAR_BOTTOM_ORIENTATION,
+ _T("Set toolbar at the bottom of the window"),
+ _T("Set toolbar at the bottom of the window"));
tbarMenu->AppendSeparator();
tbarMenu->Append(IDM_TOOLBAR_ENABLEPRINT, _T("&Enable print button\tCtrl-E"));
// Create the toolbar
RecreateToolbar();
- m_textWindow = new wxTextCtrl(this, wxID_ANY, wxEmptyString, wxPoint(0, 0), wxDefaultSize, wxTE_MULTILINE);
+ m_textWindow = new wxTextCtrl(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE);
}
#if USE_GENERIC_TBAR
void MyFrame::OnToggleToolbarOrient(wxCommandEvent& WXUNUSED(event))
{
+ if( m_bottomToolbar )
+ m_bottomToolbar = false;
m_horzToolbar = !m_horzToolbar;
+ wxMenuBar *menuBar = GetMenuBar();
+ if( menuBar->IsChecked( IDM_TOOLBAR_BOTTOM_ORIENTATION ) )
+ menuBar->Check( IDM_TOOLBAR_BOTTOM_ORIENTATION, false );
RecreateToolbar();
}
event.GetId() - IDM_TOOLBAR_TOGGLERADIOBTN1, true);
}
}
+void MyFrame::OnBottomToolbar(wxCommandEvent& event )
+{
+ m_bottomToolbar = !m_bottomToolbar;
+ wxMenuBar *menuBar = GetMenuBar();
+ if( menuBar->IsChecked( IDM_TOOLBAR_TOGGLETOOLBARORIENT ) )
+ menuBar->Check( IDM_TOOLBAR_TOGGLETOOLBARORIENT, false );
+ if( !m_horzToolbar )
+ m_horzToolbar = true;
+ RecreateToolbar();
+}