]> git.saurik.com Git - wxWidgets.git/blobdiff - samples/docview/docview.cpp
several mingw32 compilation fixes
[wxWidgets.git] / samples / docview / docview.cpp
index a36407e97c1c113694edb2f36f38d3618b95bae5..b142b5f84338d8f0c8bbf36ccc1ae7fd31795ca1 100644 (file)
@@ -31,8 +31,8 @@
 #include "wx/wx.h"
 #endif
 
-#if !USE_DOC_VIEW_ARCHITECTURE
-#error You must set USE_DOC_VIEW_ARCHITECTURE to 1 in wx_setup.h!
+#if !wxUSE_DOC_VIEW_ARCHITECTURE
+#error You must set wxUSE_DOC_VIEW_ARCHITECTURE to 1 in setup.h!
 #endif
 
 #include "wx/docview.h"
@@ -41,7 +41,7 @@
 #include "doc.h"
 #include "view.h"
 
-MyFrame *frame = NULL;
+MyFrame *frame = (MyFrame *) NULL;
 
 // In single window mode, don't have any child windows; use
 // main window.
@@ -51,7 +51,7 @@ IMPLEMENT_APP(MyApp)
 
 MyApp::MyApp(void)
 {
-    m_docManager = NULL;
+    m_docManager = (wxDocManager *) NULL;
 }
 
 bool MyApp::OnInit(void)
@@ -62,7 +62,7 @@ bool MyApp::OnInit(void)
   ///   single window : (one document at a time, only one frame, as in Windows Write)
   if (argc > 1)
   {
-    if (strcmp(argv[1], "-single") == 0)
+    if (wxStrcmp(argv[1], _T("-single")) == 0)
     {
       singleWindowMode = TRUE;
     }
@@ -88,19 +88,16 @@ bool MyApp::OnInit(void)
           CLASSINFO(TextEditDocument), CLASSINFO(TextEditView));
 
   //// Create the main frame window
-  frame = new MyFrame(m_docManager, NULL, "DocView Demo", wxPoint(0, 0), wxSize(500, 400), wxDEFAULT_FRAME_STYLE);
+  frame = new MyFrame(m_docManager, (wxFrame *) NULL, -1, "DocView Demo", wxPoint(0, 0), wxSize(500, 400), wxDEFAULT_FRAME_STYLE);
 
   //// Give it an icon (this is ignored in MDI mode: uses resources)
-#ifdef __WINDOWS__
+#ifdef __WXMSW__
   frame->SetIcon(wxIcon("doc_icn"));
 #endif
-#ifdef __X__
-  frame->SetIcon(wxIcon("aiai.xbm"));
-#endif
 
   //// Make a menubar
   wxMenu *file_menu = new wxMenu;
-  wxMenu *edit_menu = NULL;
+  wxMenu *edit_menu = (wxMenu *) NULL;
 
   file_menu->Append(wxID_NEW, "&New...");
   file_menu->Append(wxID_OPEN, "&Open...");
@@ -126,7 +123,7 @@ bool MyApp::OnInit(void)
   
   file_menu->AppendSeparator();
   file_menu->Append(wxID_EXIT, "E&xit");
-
+  
   // A nice touch: a history of files visited. Use this menu.
   m_docManager->FileHistoryUseMenu(file_menu);
 
@@ -141,7 +138,7 @@ bool MyApp::OnInit(void)
   menu_bar->Append(help_menu, "&Help");
 
   if (singleWindowMode)
-    frame->canvas = frame->CreateCanvas(NULL, frame);
+    frame->canvas = frame->CreateCanvas((wxView *) NULL, frame);
 
   //// Associate the menu bar with the frame
   frame->SetMenuBar(menu_bar);
@@ -168,15 +165,12 @@ int MyApp::OnExit(void)
 wxFrame *MyApp::CreateChildFrame(wxDocument *doc, wxView *view, bool isCanvas)
 {
   //// Make a child frame
-  wxDocChildFrame *subframe = new wxDocChildFrame(doc, view, GetMainFrame(), "Child Frame",
+  wxDocChildFrame *subframe = new wxDocChildFrame(doc, view, GetMainFrame(), -1, "Child Frame",
         wxPoint(10, 10), wxSize(300, 300), wxDEFAULT_FRAME_STYLE);
 
-#ifdef __WINDOWS__
+#ifdef __WXMSW__
   subframe->SetIcon(wxString(isCanvas ? "chrt_icn" : "notepad_icn"));
 #endif
-#ifdef __X__
-  subframe->SetIcon(wxIcon("aiai.xbm"));
-#endif
 
   //// Make a menubar
   wxMenu *file_menu = new wxMenu;
@@ -195,7 +189,7 @@ wxFrame *MyApp::CreateChildFrame(wxDocument *doc, wxView *view, bool isCanvas)
     file_menu->Append(wxID_PREVIEW, "Print Pre&view");
   }
 
-  wxMenu *edit_menu = NULL;
+  wxMenu *edit_menu = (wxMenu *) NULL;
 
   if (isCanvas)
   {
@@ -235,16 +229,16 @@ BEGIN_EVENT_TABLE(MyFrame, wxDocParentFrame)
     EVT_MENU(DOCVIEW_ABOUT, MyFrame::OnAbout)
 END_EVENT_TABLE()
 
-MyFrame::MyFrame(wxDocManager *manager, wxFrame *frame, const wxString& title,
+MyFrame::MyFrame(wxDocManager *manager, wxFrame *frame, wxWindowID id, const wxString& title,
     const wxPoint& pos, const wxSize& size, const long type):
-  wxDocParentFrame(manager, frame, title, pos, size, type)
+  wxDocParentFrame(manager, frame, id, title, pos, size, type)
 {
   // This pointer only needed if in single window mode
-  canvas = NULL;
-  editMenu = NULL;
+  canvas = (MyCanvas *) NULL;
+  editMenu = (wxMenu *) NULL;
 }
 
-void MyFrame::OnAbout(wxCommandEvent& event)
+void MyFrame::OnAbout(wxCommandEvent& WXUNUSED(event) )
 {
     (void)wxMessageBox("DocView Demo\nAuthor: Julian Smart julian.smart@ukonline.co.uk\nUsage: docview.exe [-single]", "About DocView");
 }
@@ -263,6 +257,8 @@ MyCanvas *MyFrame::CreateCanvas(wxView *view, wxFrame *parent)
 
   // Give it scrollbars
   canvas->SetScrollbars(20, 20, 50, 50);
+  canvas->SetBackgroundColour(*wxWHITE);
+  canvas->Clear();
 
   return canvas;
 }