#include "wx/wx.h"
#endif
-#if !USE_CONSTRAINTS
-#error You must set USE_CONSTRAINTS to 1 in wx_setup.h!
+#if !wxUSE_CONSTRAINTS
+#error You must set wxUSE_CONSTRAINTS to 1 in setup.h!
#endif
#include <ctype.h>
#include "layout.h"
// Declare two frames
-MyFrame *frame = NULL;
-wxMenuBar *menu_bar = NULL;
+MyFrame *frame = (MyFrame *) NULL;
+wxMenuBar *menu_bar = (wxMenuBar *) NULL;
IMPLEMENT_APP(MyApp)
-#ifdef __X__
-#include "aiai.xbm"
-#endif
-
MyApp::MyApp()
{
}
bool MyApp::OnInit(void)
{
// Create the main frame window
- frame = new MyFrame(NULL, "wxWindows Layout Demo", 0, 0, 550, 500);
+ frame = new MyFrame((MyFrame *) NULL, (char *) "wxWindows Layout Demo", 0, 0, 550, 500);
frame->SetAutoLayout(TRUE);
// Give it a status line
frame->CreateStatusBar(2);
- // Load icon and bitmap
-#ifdef __WXMSW__
- frame->SetIcon(wxIcon("aiai_icn"));
-#endif
-#ifdef __X__
- frame->SetIcon(wxIcon(aiai_bits, aiai_width, aiai_height));
-#endif
-
// Make a menubar
wxMenu *file_menu = new wxMenu;
MyFrame::MyFrame(wxFrame *frame, char *title, int x, int y, int w, int h):
wxFrame(frame, -1, title, wxPoint(x, y), wxSize(w, h))
{
- panel = NULL;
- text_window = NULL;
- canvas = NULL;
+ panel = (wxPanel *) NULL;
+ text_window = (MyTextWindow *) NULL;
+ canvas = (MyWindow *) NULL;
}
BEGIN_EVENT_TABLE(MyFrame, wxFrame)
EVT_SIZE(MyFrame::OnSize)
END_EVENT_TABLE()
-void MyFrame::LoadFile(wxCommandEvent& event)
+void MyFrame::LoadFile(wxCommandEvent& WXUNUSED(event) )
{
- char *s = wxFileSelector("Load text file", NULL, NULL, NULL, "*.txt");
- if (s)
+ wxString s = wxFileSelector("Load text file", (const char *) NULL, (const char *) NULL, (const char *) NULL, "*.txt");
+ if (s != "")
{
#ifdef __WXMSW__
frame->text_window->LoadFile(s);
}
}
-void MyFrame::Quit(wxCommandEvent& event)
+void MyFrame::Quit(wxCommandEvent& WXUNUSED(event) )
{
this->Close(TRUE);
}
-void MyFrame::TestSizers(wxCommandEvent& event)
+void MyFrame::TestSizers(wxCommandEvent& WXUNUSED(event) )
{
- SizerFrame *newFrame = new SizerFrame(NULL, "Sizer Test Frame", 50, 50, 500, 500);
+ SizerFrame *newFrame = new SizerFrame((MyFrame *) NULL, (char *) "Sizer Test Frame", 50, 50, 500, 500);
newFrame->Show(TRUE);
}
-void MyFrame::About(wxCommandEvent& event)
+void MyFrame::About(wxCommandEvent& WXUNUSED(event) )
{
(void)wxMessageBox("wxWindows GUI library layout demo\n",
"About Layout Demo", wxOK|wxCENTRE);
}
// Size the subwindows when the frame is resized
-void MyFrame::OnSize(wxSizeEvent& event)
+void MyFrame::OnSize(wxSizeEvent& WXUNUSED(event) )
{
Layout();
}
-void MyFrame::Draw(wxDC& dc, bool draw_bitmaps)
+void MyFrame::Draw(wxDC& dc, bool WXUNUSED(draw_bitmaps) )
{
- dc.SetPen(wxGREEN_PEN);
- dc.DrawLine(0.0, 0.0, 200.0, 200.0);
- dc.DrawLine(200.0, 0.0, 0.0, 200.0);
+ dc.SetPen(* wxGREEN_PEN);
+ dc.DrawLine(0, 0, 200, 200);
+ dc.DrawLine(200, 0, 0, 200);
- dc.SetBrush(wxCYAN_BRUSH);
- dc.SetPen(wxRED_PEN);
+ dc.SetBrush(* wxCYAN_BRUSH);
+ dc.SetPen(* wxRED_PEN);
- dc.DrawRectangle(100.0, 100.0, 100.0, 50.0);
- dc.DrawRoundedRectangle(150.0, 150.0, 100.0, 50.0,20.0);
+ dc.DrawRectangle(100, 100, 100, 50);
+ dc.DrawRoundedRectangle(150, 150, 100, 50, 20);
- dc.DrawEllipse(250.0, 250.0, 100.0, 50.0);
- dc.DrawSpline(50.0, 200.0, 50.0, 100.0, 200.0, 10.0);
- dc.DrawLine(50.0, 230.0, 200.0, 230.0);
+ dc.DrawEllipse(250, 250, 100, 50);
+ dc.DrawSpline(50, 200, 50, 100, 200, 10);
+ dc.DrawLine(50, 230, 200, 230);
- dc.SetPen(wxBLACK_PEN);
- dc.DrawArc(50.0, 300.0, 100.0, 250.0, 100.0, 300.0);
+ dc.SetPen(* wxBLACK_PEN);
+ dc.DrawArc(50, 300, 100, 250, 100, 300 );
}
BEGIN_EVENT_TABLE(MyWindow, wxWindow)
}
// Define the repainting behaviour
-void MyWindow::OnPaint(wxPaintEvent& event)
+void MyWindow::OnPaint(wxPaintEvent& WXUNUSED(event) )
{
wxPaintDC dc(this);
frame->Draw(dc,TRUE);
}
-// Define the behaviour for the frame closing
-// - must delete all frames except for the main one.
-bool MyFrame::OnClose(void)
-{
- Show(FALSE);
-
- return TRUE;
-}
SizerFrame::SizerFrame(wxFrame *frame, char *title, int x, int y, int w, int h):
wxFrame(frame, -1, title, wxPoint(x, y), wxSize(w, h))
panel->Layout();
}
-bool SizerFrame::OnClose(void)
-{
- Show(FALSE);
-
- return TRUE;
-}
-