]> git.saurik.com Git - wxWidgets.git/blobdiff - contrib/samples/ogl/ogledit/view.cpp
Compile fix for sound without threads. Not sure
[wxWidgets.git] / contrib / samples / ogl / ogledit / view.cpp
index 0d8e58232b9c552d26da423005c13ce388c2d440..74f8f357fed82de079d5614a7abacbc16fa10a6e 100644 (file)
@@ -14,7 +14,7 @@
 #endif
 
 // For compilers that support precompilation, includes "wx.h".
 #endif
 
 // For compilers that support precompilation, includes "wx.h".
-#include <wx/wxprec.h>
+#include "wx/wxprec.h"
 
 #ifdef __BORLANDC__
 #pragma hdrstop
 
 #ifdef __BORLANDC__
 #pragma hdrstop
@@ -45,7 +45,7 @@ END_EVENT_TABLE()
 
 // What to do when a view is created. Creates actual
 // windows for displaying the view.
 
 // What to do when a view is created. Creates actual
 // windows for displaying the view.
-bool DiagramView::OnCreate(wxDocument *doc, long flags)
+bool DiagramView::OnCreate(wxDocument *doc, long WXUNUSED(flags))
 {
   frame = GetMainFrame();
   canvas = GetMainFrame()->canvas;
 {
   frame = GetMainFrame();
   canvas = GetMainFrame()->canvas;
@@ -70,87 +70,86 @@ bool DiagramView::OnCreate(wxDocument *doc, long flags)
 
 
 // Sneakily gets used for default print/preview
 
 
 // Sneakily gets used for default print/preview
-// as well as drawing on the screen. 
-void DiagramView::OnDraw(wxDC *dc) 
-{ 
-
-  /* You might use THIS code if you were scaling 
-   * graphics of known size to fit on the page. 
-   */ 
-  int w, h; 
-
-  // We need to adjust for the graphic size, a formula will be added 
-  float maxX = 900; 
-  float maxY = 700; 
-  // A better way of find the maxium values would be to search through 
-  // the linked list 
-
-  // Let's have at least 10 device units margin 
-  float marginX = 10; 
-  float marginY = 10; 
-
-  // Add the margin to the graphic size 
-  maxX += (2 * marginX); 
-  maxY += (2 * marginY); 
-
-  // Get the size of the DC in pixels 
-  dc->GetSize (&w, &h); 
-
-  // Calculate a suitable scaling factor 
-  float scaleX = (float) (w / maxX); 
-  float scaleY = (float) (h / maxY); 
-
-  // Use x or y scaling factor, whichever fits on the DC 
-  float actualScale = wxMin (scaleX, scaleY); 
-
-  float posX, posY; 
-  // Calculate the position on the DC for centring the graphic 
-  if (CENTER == TRUE) // center the drawing 
-    { 
-      posX = (float) ((w - (200 * actualScale)) / 2.0); 
-      posY = (float) ((h - (200 * actualScale)) / 2.0); 
-    } 
-  else    // Use defined presets 
-    { 
-      posX = 10; 
-      posY = 35; 
-    } 
-  
-
-  // Set the scale and origin 
-  dc->SetUserScale (actualScale, actualScale); 
-  dc->SetDeviceOrigin ((long) posX, (long) posY); 
-
-  // This part was added to preform the print preview and printing functions 
-
-  dc->BeginDrawing(); // Allows optimization of drawing code under MS Windows. 
+// as well as drawing on the screen.
+void DiagramView::OnDraw(wxDC *dc)
+{
+
+  /* You might use THIS code if you were scaling
+   * graphics of known size to fit on the page.
+   */
+  int w, h;
+
+  // We need to adjust for the graphic size, a formula will be added
+  float maxX = 900;
+  float maxY = 700;
+  // A better way of find the maxium values would be to search through
+  // the linked list
+
+  // Let's have at least 10 device units margin
+  float marginX = 10;
+  float marginY = 10;
+
+  // Add the margin to the graphic size
+  maxX += (2 * marginX);
+  maxY += (2 * marginY);
+
+  // Get the size of the DC in pixels
+  dc->GetSize (&w, &h);
+
+  // Calculate a suitable scaling factor
+  float scaleX = (float) (w / maxX);
+  float scaleY = (float) (h / maxY);
+
+  // Use x or y scaling factor, whichever fits on the DC
+  float actualScale = wxMin (scaleX, scaleY);
+
+  float posX, posY;
+  // Calculate the position on the DC for centring the graphic
+  #if 0
+     // center the drawing
+      posX = (float) ((w - (200 * actualScale)) / 2.0);
+      posY = (float) ((h - (200 * actualScale)) / 2.0);
+  #else
+     // Use defined presets
+      posX = 10;
+      posY = 35;
+  #endif
+
+
+  // Set the scale and origin
+  dc->SetUserScale (actualScale, actualScale);
+  dc->SetDeviceOrigin ((long) posX, (long) posY);
+
+  // This part was added to preform the print preview and printing functions
+
+  dc->BeginDrawing(); // Allows optimization of drawing code under MS Windows.
   wxDiagram *diagram_p=((DiagramDocument*)GetDocument())->GetDiagram();  // Get the current diagram
   wxDiagram *diagram_p=((DiagramDocument*)GetDocument())->GetDiagram();  // Get the current diagram
-  if (diagram_p->GetShapeList()) 
-  { 
-    wxCursor *old_cursor = NULL; 
-    wxNode *current = diagram_p->GetShapeList()->First();
+  if (diagram_p->GetShapeList())
+  {
+    /* wxCursor *old_cursor = NULL; */
+    wxNode *current = diagram_p->GetShapeList()->GetFirst();
 
 
-    while (current) // Loop through the entire list of shapes 
+    while (current) // Loop through the entire list of shapes
     {
     {
-        wxShape *object = (wxShape *)current->Data();
+        wxShape *object = (wxShape *)current->GetData();
         if (!object->GetParent())
         {
             object->Draw(* dc); // Draw the shape onto our printing dc
         }
         if (!object->GetParent())
         {
             object->Draw(* dc); // Draw the shape onto our printing dc
         }
-        current = current->Next();  // Procede to the next shape in the list
+        current = current->GetNext();  // Procede to the next shape in the list
     }
   }
     }
   }
-  dc->EndDrawing(); // Allows optimization of drawing code under MS Windows. 
+  dc->EndDrawing(); // Allows optimization of drawing code under MS Windows.
 }
 
 }
 
-void DiagramView::OnUpdate(wxView *sender, wxObject *hint)
+void DiagramView::OnUpdate(wxView *WXUNUSED(sender), wxObject *WXUNUSED(hint))
 {
   if (canvas)
     canvas->Refresh();
 }
 
 // Clean up windows used for displaying the view.
 {
   if (canvas)
     canvas->Refresh();
 }
 
 // Clean up windows used for displaying the view.
-bool DiagramView::OnClose(bool deleteWindow)
+bool DiagramView::OnClose(bool WXUNUSED(deleteWindow))
 {
   if (!GetDocument()->Close())
     return FALSE;
 {
   if (!GetDocument()->Close())
     return FALSE;
@@ -158,7 +157,7 @@ bool DiagramView::OnClose(bool deleteWindow)
   DiagramDocument *diagramDoc = (DiagramDocument *)GetDocument();
   diagramDoc->GetDiagram()->SetCanvas(NULL);
 
   DiagramDocument *diagramDoc = (DiagramDocument *)GetDocument();
   diagramDoc->GetDiagram()->SetCanvas(NULL);
 
-  canvas->Clear();
+  canvas->ClearBackground();
   canvas->SetDiagram(NULL);
   canvas->view = NULL;
   canvas = NULL;
   canvas->SetDiagram(NULL);
   canvas->view = NULL;
   canvas = NULL;
@@ -170,7 +169,7 @@ bool DiagramView::OnClose(bool deleteWindow)
   SetFrame(NULL);
 
   Activate(FALSE);
   SetFrame(NULL);
 
   Activate(FALSE);
-  
+
   return TRUE;
 }
 
   return TRUE;
 }
 
@@ -178,30 +177,30 @@ wxShape *DiagramView::FindSelectedShape(void)
 {
   DiagramDocument *doc = (DiagramDocument *)GetDocument();
   wxShape *theShape = NULL;
 {
   DiagramDocument *doc = (DiagramDocument *)GetDocument();
   wxShape *theShape = NULL;
-  wxNode *node = doc->GetDiagram()->GetShapeList()->First();
+  wxNode *node = doc->GetDiagram()->GetShapeList()->GetFirst();
   while (node)
   {
   while (node)
   {
-    wxShape *eachShape = (wxShape *)node->Data();
+    wxShape *eachShape = (wxShape *)node->GetData();
     if ((eachShape->GetParent() == NULL) && eachShape->Selected())
     {
       theShape = eachShape;
       node = NULL;
     }
     if ((eachShape->GetParent() == NULL) && eachShape->Selected())
     {
       theShape = eachShape;
       node = NULL;
     }
-    else node = node->Next();
+    else node = node->GetNext();
   }
   return theShape;
 }
 
   }
   return theShape;
 }
 
-void DiagramView::OnCut(wxCommandEvent& event)
+void DiagramView::OnCut(wxCommandEvent& WXUNUSED(event))
 {
   DiagramDocument *doc = (DiagramDocument *)GetDocument();
 
   wxShape *theShape = FindSelectedShape();
   if (theShape)
 {
   DiagramDocument *doc = (DiagramDocument *)GetDocument();
 
   wxShape *theShape = FindSelectedShape();
   if (theShape)
-    doc->GetCommandProcessor()->Submit(new DiagramCommand("Cut", OGLEDIT_CUT, doc, NULL, 0.0, 0.0, TRUE, theShape));
+    doc->GetCommandProcessor()->Submit(new DiagramCommand(_T("Cut"), OGLEDIT_CUT, doc, NULL, 0.0, 0.0, TRUE, theShape));
 }
 
 }
 
-void DiagramView::OnChangeBackgroundColour(wxCommandEvent& event)
+void DiagramView::OnChangeBackgroundColour(wxCommandEvent& WXUNUSED(event))
 {
       DiagramDocument *doc = (DiagramDocument *)GetDocument();
 
 {
       DiagramDocument *doc = (DiagramDocument *)GetDocument();
 
@@ -223,18 +222,18 @@ void DiagramView::OnChangeBackgroundColour(wxCommandEvent& event)
         dialog->Close();
 
         if (theBrush)
         dialog->Close();
 
         if (theBrush)
-          doc->GetCommandProcessor()->Submit(new DiagramCommand("Change colour", OGLEDIT_CHANGE_BACKGROUND_COLOUR, doc,
+          doc->GetCommandProcessor()->Submit(new DiagramCommand(_T("Change colour"), OGLEDIT_CHANGE_BACKGROUND_COLOUR, doc,
             theBrush, theShape));
       }
 }
 
             theBrush, theShape));
       }
 }
 
-void DiagramView::OnEditLabel(wxCommandEvent& event)
+void DiagramView::OnEditLabel(wxCommandEvent& WXUNUSED(event))
 {
       wxShape *theShape = FindSelectedShape();
       if (theShape)
       {
 {
       wxShape *theShape = FindSelectedShape();
       if (theShape)
       {
-        wxString newLabel = wxGetTextFromUser("Enter new label", "Shape Label", ((MyEvtHandler *)theShape->GetEventHandler())->label);
-        GetDocument()->GetCommandProcessor()->Submit(new DiagramCommand("Edit label", OGLEDIT_EDIT_LABEL, (DiagramDocument*) GetDocument(), newLabel, theShape));
+        wxString newLabel = wxGetTextFromUser(_T("Enter new label"), _T("Shape Label"), ((MyEvtHandler *)theShape->GetEventHandler())->label);
+        GetDocument()->GetCommandProcessor()->Submit(new DiagramCommand(_T("Edit label"), OGLEDIT_EDIT_LABEL, (DiagramDocument*) GetDocument(), newLabel, theShape));
       }
 }
 
       }
 }
 
@@ -261,7 +260,7 @@ MyCanvas::~MyCanvas(void)
 {
 }
 
 {
 }
 
-void MyCanvas::OnLeftClick(double x, double y, int keys)
+void MyCanvas::OnLeftClick(double x, double y, int WXUNUSED(keys))
 {
   EditorToolPalette *palette = wxGetApp().frame->palette;
   wxClassInfo *info = NULL;
 {
   EditorToolPalette *palette = wxGetApp().frame->palette;
   wxClassInfo *info = NULL;
@@ -292,36 +291,37 @@ void MyCanvas::OnLeftClick(double x, double y, int keys)
   }
   if (info)
   {
   }
   if (info)
   {
-    view->GetDocument()->GetCommandProcessor()->Submit(new DiagramCommand(info->GetClassName(), OGLEDIT_ADD_SHAPE, (DiagramDocument *)view->GetDocument(), info,
-      x, y));
+    view->GetDocument()->GetCommandProcessor()->Submit(
+      new DiagramCommand( info->GetClassName(), OGLEDIT_ADD_SHAPE, (DiagramDocument *)view->GetDocument(), info,
+         x, y));
   }
 }
 
   }
 }
 
-void MyCanvas::OnRightClick(double x, double y, int keys)
+void MyCanvas::OnRightClick(double WXUNUSED(x), double WXUNUSED(y), int WXUNUSED(keys))
 {
 }
 
 {
 }
 
-void MyCanvas::OnDragLeft(bool draw, double x, double y, int keys)
+void MyCanvas::OnDragLeft(bool WXUNUSED(draw), double WXUNUSED(x), double WXUNUSED(y), int WXUNUSED(keys))
 {
 }
 
 {
 }
 
-void MyCanvas::OnBeginDragLeft(double x, double y, int keys)
+void MyCanvas::OnBeginDragLeft(double WXUNUSED(x), double WXUNUSED(y), int WXUNUSED(keys))
 {
 }
 
 {
 }
 
-void MyCanvas::OnEndDragLeft(double x, double y, int keys)
+void MyCanvas::OnEndDragLeft(double WXUNUSED(x), double WXUNUSED(y), int WXUNUSED(keys))
 {
 }
 
 {
 }
 
-void MyCanvas::OnDragRight(bool draw, double x, double y, int keys)
+void MyCanvas::OnDragRight(bool WXUNUSED(draw), double WXUNUSED(x), double WXUNUSED(y), int WXUNUSED(keys))
 {
 }
 
 {
 }
 
-void MyCanvas::OnBeginDragRight(double x, double y, int keys)
+void MyCanvas::OnBeginDragRight(double WXUNUSED(x), double WXUNUSED(y), int WXUNUSED(keys))
 {
 }
 
 {
 }
 
-void MyCanvas::OnEndDragRight(double x, double y, int keys)
+void MyCanvas::OnEndDragRight(double WXUNUSED(x), double WXUNUSED(y), int WXUNUSED(keys))
 {
 }
 
 {
 }