X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/13437238cd39f51b1b528ecb9fe138f711bcf87c..14b72bf5a6b575f2be880eadc3e7f0131afe889a:/samples/toolbar/test.cpp diff --git a/samples/toolbar/test.cpp b/samples/toolbar/test.cpp index 5d3bb86212..842dbea3da 100644 --- a/samples/toolbar/test.cpp +++ b/samples/toolbar/test.cpp @@ -23,18 +23,29 @@ #include "wx/toolbar.h" #include "test.h" +#ifdef __WXGTK__ +#include "mondrian.xpm" +#include "bitmaps/new.xpm" +#include "bitmaps/open.xpm" +#include "bitmaps/save.xpm" +#include "bitmaps/copy.xpm" +#include "bitmaps/cut.xpm" +// #include "bitmaps/paste.xpm" +#include "bitmaps/print.xpm" +#include "bitmaps/preview.xpm" +#include "bitmaps/help.xpm" +#endif + IMPLEMENT_APP(MyApp) -#ifdef __X__ -// TODO: include XBM or XPM icons for X apps -#endif // The `main program' equivalent, creating the windows and returning the // main frame bool MyApp::OnInit(void) { // Create the main frame window - MyFrame* frame = new MyFrame(NULL, -1, "wxToolBar Sample", wxPoint(100, 100), wxSize(450, 300)); + MyFrame* frame = new MyFrame(NULL, -1, "wxToolBar Sample", + wxPoint(100, 100), wxSize(450, 300)); // Give it a status line frame->CreateStatusBar(); @@ -42,9 +53,8 @@ bool MyApp::OnInit(void) // Give it an icon #ifdef __WXMSW__ frame->SetIcon(wxIcon("mondrian")); -#endif -#ifdef __X__ - frame->SetIcon(wxIcon("mondrian.xbm")); +#else + frame->SetIcon( wxIcon(mondrian_xpm) ); #endif // Make a menubar @@ -63,14 +73,9 @@ bool MyApp::OnInit(void) frame->SetMenuBar(menuBar); // Create the toolbar - wxToolBar* toolBar = new wxToolBar(frame, -1, wxPoint(0, 0), wxSize(100, 30), - wxNO_BORDER|wxTB_FLAT, wxVERTICAL, 1); - toolBar->SetMargins(5, 5); + frame->CreateToolBar(wxNO_BORDER|wxHORIZONTAL|wxTB_FLAT, ID_TOOLBAR); - InitToolbar(toolBar); - - // Tell the frame about it - frame->SetToolBar(toolBar); + InitToolbar(frame->GetToolBar()); // Force a resize. This should probably be replaced by a call to a wxFrame // function that lays out default decorations and the remaining content window. @@ -86,6 +91,8 @@ bool MyApp::OnInit(void) bool MyApp::InitToolbar(wxToolBar* toolBar) { + toolBar->SetMargins(5, 5); + // Set up toolbar wxBitmap* toolBarBitmaps[8]; @@ -98,17 +105,16 @@ bool MyApp::InitToolbar(wxToolBar* toolBar) toolBarBitmaps[5] = new wxBitmap("icon6"); toolBarBitmaps[6] = new wxBitmap("icon7"); toolBarBitmaps[7] = new wxBitmap("icon8"); -#endif -#ifdef __X__ - // TODO - toolBarBitmaps[0] = new wxBitmap(...); - toolBarBitmaps[1] = new wxBitmap(...); - toolBarBitmaps[2] = new wxBitmap(...); - toolBarBitmaps[3] = new wxBitmap(...); - toolBarBitmaps[4] = new wxBitmap(...); - toolBarBitmaps[5] = new wxBitmap(...); - toolBarBitmaps[6] = new wxBitmap(...); - toolBarBitmaps[7] = new wxBitmap(...); +#else + toolBarBitmaps[0] = new wxBitmap( new_xpm ); + toolBarBitmaps[1] = new wxBitmap( open_xpm ); + toolBarBitmaps[2] = new wxBitmap( save_xpm ); + toolBarBitmaps[3] = new wxBitmap( copy_xpm ); + toolBarBitmaps[4] = new wxBitmap( cut_xpm ); +// toolBarBitmaps[5] = new wxBitmap( paste_xpm ); + toolBarBitmaps[5] = new wxBitmap( preview_xpm ); + toolBarBitmaps[6] = new wxBitmap( print_xpm ); + toolBarBitmaps[7] = new wxBitmap( help_xpm ); #endif #ifdef __WXMSW__ @@ -116,7 +122,6 @@ bool MyApp::InitToolbar(wxToolBar* toolBar) #else int width = 16; #endif - int offX = 5; int currentX = 5; toolBar->AddTool(wxID_NEW, *(toolBarBitmaps[0]), wxNullBitmap, FALSE, (float)currentX, -1, NULL, "New file"); @@ -138,7 +143,7 @@ bool MyApp::InitToolbar(wxToolBar* toolBar) toolBar->AddSeparator(); toolBar->AddTool(wxID_HELP, *(toolBarBitmaps[7]), wxNullBitmap, FALSE, currentX, -1, NULL, "Help"); - toolBar->CreateTools(); + toolBar->Realize(); // Can delete the bitmaps since they're reference counted int i; @@ -155,7 +160,7 @@ BEGIN_EVENT_TABLE(MyFrame, wxFrame) EVT_MENU(wxID_HELP, MyFrame::OnAbout) EVT_CLOSE(MyFrame::OnCloseWindow) EVT_TOOL_RANGE(wxID_OPEN, wxID_PASTE, MyFrame::OnToolLeftClick) - EVT_TOOL_ENTER_RANGE(wxID_OPEN, wxID_PASTE, MyFrame::OnToolEnter) + EVT_TOOL_ENTER(ID_TOOLBAR, MyFrame::OnToolEnter) END_EVENT_TABLE() // Define my frame constructor @@ -166,19 +171,19 @@ MyFrame::MyFrame(wxFrame* parent, wxWindowID id, const wxString& title, const wx m_textWindow = new wxTextCtrl(this, -1, "", wxPoint(0, 0), wxSize(-1, -1), wxTE_MULTILINE); } -void MyFrame::OnQuit(wxCommandEvent& event) +void MyFrame::OnQuit(wxCommandEvent& WXUNUSED(event)) { Close(TRUE); } -void MyFrame::OnAbout(wxCommandEvent& event) +void MyFrame::OnAbout(wxCommandEvent& WXUNUSED(event)) { (void)wxMessageBox("wxWindows wxToolBar demo\n", "About wxToolBar"); } // Define the behaviour for the frame closing // - must delete all frames except for the main one. -void MyFrame::OnCloseWindow(wxCloseEvent& event) +void MyFrame::OnCloseWindow(wxCloseEvent& WXUNUSED(event)) { Destroy(); } @@ -192,10 +197,10 @@ void MyFrame::OnToolLeftClick(wxCommandEvent& event) void MyFrame::OnToolEnter(wxCommandEvent& event) { - if (event.GetId() > -1) + if (event.GetSelection() > -1) { wxString str; - str.Printf("This is tool number %d", event.GetId()); + str.Printf("This is tool number %d", event.GetSelection()); SetStatusText(str); } else