X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e531b73f8910b3dcb2457bb74eb3723f2d516f5f..084db46c8b4f3f8d5e6a5f55e09e04f5a680c8a5:/contrib/src/ogl/composit.cpp diff --git a/contrib/src/ogl/composit.cpp b/contrib/src/ogl/composit.cpp index 05447d5a58..42b2f375c1 100644 --- a/contrib/src/ogl/composit.cpp +++ b/contrib/src/ogl/composit.cpp @@ -24,7 +24,9 @@ #include #endif -#include +#if wxUSE_DEPRECATED +#include +#endif #include #include @@ -33,10 +35,11 @@ #include #include +#if wxUSE_PROLOGIO // Sometimes, objects need to access the whole database to // construct themselves. wxExprDatabase *GlobalwxExprDatabase = NULL; - +#endif /* * Division control point @@ -73,18 +76,18 @@ wxCompositeShape::wxCompositeShape(): wxRectangleShape(10.0, 10.0) wxCompositeShape::~wxCompositeShape() { - wxNode *node = m_constraints.First(); + wxNode *node = m_constraints.GetFirst(); while (node) { - wxOGLConstraint *constraint = (wxOGLConstraint *)node->Data(); + wxOGLConstraint *constraint = (wxOGLConstraint *)node->GetData(); delete constraint; - node = node->Next(); + node = node->GetNext(); } - node = m_children.First(); + node = m_children.GetFirst(); while (node) { - wxShape *object = (wxShape *)node->Data(); - wxNode *next = node->Next(); + wxShape *object = (wxShape *)node->GetData(); + wxNode *next = node->GetNext(); object->Unlink(); delete object; node = next; @@ -112,13 +115,13 @@ void wxCompositeShape::OnDraw(wxDC& dc) void wxCompositeShape::OnDrawContents(wxDC& dc) { - wxNode *node = m_children.First(); + wxNode *node = m_children.GetFirst(); while (node) { - wxShape *object = (wxShape *)node->Data(); + wxShape *object = (wxShape *)node->GetData(); object->Draw(dc); object->DrawLinks(dc); - node = node->Next(); + node = node->GetNext(); } wxShape::OnDrawContents(dc); } @@ -127,15 +130,15 @@ bool wxCompositeShape::OnMovePre(wxDC& dc, double x, double y, double oldx, doub { double diffX = x - oldx; double diffY = y - oldy; - wxNode *node = m_children.First(); + wxNode *node = m_children.GetFirst(); while (node) { - wxShape *object = (wxShape *)node->Data(); + wxShape *object = (wxShape *)node->GetData(); object->Erase(dc); object->Move(dc, object->GetX() + diffX, object->GetY() + diffY, display); - node = node->Next(); + node = node->GetNext(); } return TRUE; } @@ -143,12 +146,12 @@ bool wxCompositeShape::OnMovePre(wxDC& dc, double x, double y, double oldx, doub void wxCompositeShape::OnErase(wxDC& dc) { wxRectangleShape::OnErase(dc); - wxNode *node = m_children.First(); + wxNode *node = m_children.GetFirst(); while (node) { - wxShape *object = (wxShape *)node->Data(); + wxShape *object = (wxShape *)node->GetData(); object->Erase(dc); - node = node->Next(); + node = node->GetNext(); } } @@ -236,11 +239,11 @@ void wxCompositeShape::OnRightClick(double x, double y, int keys, int attachment // the division, so we can invoke a user interface for dealing with regions. if (keys & KEY_CTRL) { - wxNode *node = m_divisions.First(); + wxNode *node = m_divisions.GetFirst(); while (node) { - wxDivisionShape *division = (wxDivisionShape *)node->Data(); - wxNode *next = node->Next(); + wxDivisionShape *division = (wxDivisionShape *)node->GetData(); + wxNode *next = node->GetNext(); int attach = 0; double dist = 0.0; if (division->HitTest(x, y, &attach, &dist)) @@ -266,7 +269,7 @@ void wxCompositeShape::SetSize(double w, double h, bool recursive) if (!recursive) return; - wxNode *node = m_children.First(); + wxNode *node = m_children.GetFirst(); wxClientDC dc(GetCanvas()); GetCanvas()->PrepareDC(dc); @@ -274,7 +277,7 @@ void wxCompositeShape::SetSize(double w, double h, bool recursive) double xBound, yBound; while (node) { - wxShape *object = (wxShape *)node->Data(); + wxShape *object = (wxShape *)node->GetData(); // Scale the position first double newX = (double)(((object->GetX() - GetX())*xScale) + GetX()); @@ -288,7 +291,7 @@ void wxCompositeShape::SetSize(double w, double h, bool recursive) object->SetSize(object->GetFixedWidth() ? xBound : xScale*xBound, object->GetFixedHeight() ? yBound : yScale*yBound); - node = node->Next(); + node = node->GetNext(); } SetDefaultRegionSize(); } @@ -316,11 +319,11 @@ void wxCompositeShape::RemoveChild(wxShape *child) void wxCompositeShape::DeleteConstraintsInvolvingChild(wxShape *child) { - wxNode *node = m_constraints.First(); + wxNode *node = m_constraints.GetFirst(); while (node) { - wxOGLConstraint *constraint = (wxOGLConstraint *)node->Data(); - wxNode *nextNode = node->Next(); + wxOGLConstraint *constraint = (wxOGLConstraint *)node->GetData(); + wxNode *nextNode = node->GetNext(); if ((constraint->m_constrainingObject == child) || constraint->m_constrainedObjects.Member(child)) @@ -334,11 +337,11 @@ void wxCompositeShape::DeleteConstraintsInvolvingChild(wxShape *child) void wxCompositeShape::RemoveChildFromConstraints(wxShape *child) { - wxNode *node = m_constraints.First(); + wxNode *node = m_constraints.GetFirst(); while (node) { - wxOGLConstraint *constraint = (wxOGLConstraint *)node->Data(); - wxNode *nextNode = node->Next(); + wxOGLConstraint *constraint = (wxOGLConstraint *)node->GetData(); + wxNode *nextNode = node->GetNext(); if (constraint->m_constrainedObjects.Member(child)) constraint->m_constrainedObjects.DeleteObject(child); @@ -368,10 +371,10 @@ void wxCompositeShape::Copy(wxShape& copy) oglObjectCopyMapping.Append((long)this, &compositeCopy); // Copy the children - wxNode *node = m_children.First(); + wxNode *node = m_children.GetFirst(); while (node) { - wxShape *object = (wxShape *)node->Data(); + wxShape *object = (wxShape *)node->GetData(); wxShape *newObject = object->CreateNewCopy(FALSE, FALSE); if (newObject->GetId() == 0) newObject->SetId(wxNewId()); @@ -385,25 +388,25 @@ void wxCompositeShape::Copy(wxShape& copy) oglObjectCopyMapping.Append((long)object, newObject); - node = node->Next(); + node = node->GetNext(); } // Copy the constraints - node = m_constraints.First(); + node = m_constraints.GetFirst(); while (node) { - wxOGLConstraint *constraint = (wxOGLConstraint *)node->Data(); + wxOGLConstraint *constraint = (wxOGLConstraint *)node->GetData(); - wxShape *newConstraining = (wxShape *)(oglObjectCopyMapping.Find((long)constraint->m_constrainingObject)->Data()); + wxShape *newConstraining = (wxShape *)(oglObjectCopyMapping.Find((long)constraint->m_constrainingObject)->GetData()); wxList newConstrainedList; - wxNode *node2 = constraint->m_constrainedObjects.First(); + wxNode *node2 = constraint->m_constrainedObjects.GetFirst(); while (node2) { - wxShape *constrainedObject = (wxShape *)node2->Data(); - wxShape *newConstrained = (wxShape *)(oglObjectCopyMapping.Find((long)constrainedObject)->Data()); + wxShape *constrainedObject = (wxShape *)node2->GetData(); + wxShape *newConstrained = (wxShape *)(oglObjectCopyMapping.Find((long)constrainedObject)->GetData()); newConstrainedList.Append(newConstrained); - node2 = node2->Next(); + node2 = node2->GetNext(); } wxOGLConstraint *newConstraint = new wxOGLConstraint(constraint->m_constraintType, newConstraining, @@ -416,14 +419,14 @@ void wxCompositeShape::Copy(wxShape& copy) newConstraint->SetSpacing(constraint->m_xSpacing, constraint->m_ySpacing); compositeCopy.m_constraints.Append(newConstraint); - node = node->Next(); + node = node->GetNext(); } // Now compositeCopy the division geometry - node = m_divisions.First(); + node = m_divisions.GetFirst(); while (node) { - wxDivisionShape *division = (wxDivisionShape *)node->Data(); + wxDivisionShape *division = (wxDivisionShape *)node->GetData(); wxNode *node1 = oglObjectCopyMapping.Find((long)division); wxNode *leftNode = NULL; wxNode *topNode = NULL; @@ -439,17 +442,17 @@ void wxCompositeShape::Copy(wxShape& copy) bottomNode = oglObjectCopyMapping.Find((long)division->GetBottomSide()); if (node1) { - wxDivisionShape *newDivision = (wxDivisionShape *)node1->Data(); + wxDivisionShape *newDivision = (wxDivisionShape *)node1->GetData(); if (leftNode) - newDivision->SetLeftSide((wxDivisionShape *)leftNode->Data()); + newDivision->SetLeftSide((wxDivisionShape *)leftNode->GetData()); if (topNode) - newDivision->SetTopSide((wxDivisionShape *)topNode->Data()); + newDivision->SetTopSide((wxDivisionShape *)topNode->GetData()); if (rightNode) - newDivision->SetRightSide((wxDivisionShape *)rightNode->Data()); + newDivision->SetRightSide((wxDivisionShape *)rightNode->GetData()); if (bottomNode) - newDivision->SetBottomSide((wxDivisionShape *)bottomNode->Data()); + newDivision->SetBottomSide((wxDivisionShape *)bottomNode->GetData()); } - node = node->Next(); + node = node->GetNext(); } } @@ -483,23 +486,23 @@ wxOGLConstraint *wxCompositeShape::AddConstraint(int type, wxShape *constraining wxOGLConstraint *wxCompositeShape::FindConstraint(long cId, wxCompositeShape **actualComposite) { - wxNode *node = m_constraints.First(); + wxNode *node = m_constraints.GetFirst(); while (node) { - wxOGLConstraint *constraint = (wxOGLConstraint *)node->Data(); + wxOGLConstraint *constraint = (wxOGLConstraint *)node->GetData(); if (constraint->m_constraintId == cId) { if (actualComposite) *actualComposite = this; return constraint; } - node = node->Next(); + node = node->GetNext(); } // If not found, try children. - node = m_children.First(); + node = m_children.GetFirst(); while (node) { - wxShape *child = (wxShape *)node->Data(); + wxShape *child = (wxShape *)node->GetData(); if (child->IsKindOf(CLASSINFO(wxCompositeShape))) { wxOGLConstraint *constraint = ((wxCompositeShape *)child)->FindConstraint(cId, actualComposite); @@ -510,7 +513,7 @@ wxOGLConstraint *wxCompositeShape::FindConstraint(long cId, wxCompositeShape **a return constraint; } } - node = node->Next(); + node = node->GetNext(); } return NULL; } @@ -529,10 +532,10 @@ void wxCompositeShape::CalculateSize() double minY = (double) 999999.9; double w, h; - wxNode *node = m_children.First(); + wxNode *node = m_children.GetFirst(); while (node) { - wxShape *object = (wxShape *)node->Data(); + wxShape *object = (wxShape *)node->GetData(); // Recalculate size of composite objects because may not conform // to size it was set to - depends on the children. @@ -548,7 +551,7 @@ void wxCompositeShape::CalculateSize() if ((object->GetY() - (h/2.0)) < minY) minY = (double)(object->GetY() - (h/2.0)); - node = node->Next(); + node = node->GetNext(); } m_width = maxX - minX; m_height = maxY - minY; @@ -579,26 +582,26 @@ bool wxCompositeShape::Constrain() CalculateSize(); bool changed = FALSE; - wxNode *node = m_children.First(); + wxNode *node = m_children.GetFirst(); while (node) { - wxShape *object = (wxShape *)node->Data(); + wxShape *object = (wxShape *)node->GetData(); if (object->Constrain()) changed = TRUE; - node = node->Next(); + node = node->GetNext(); } - node = m_constraints.First(); + node = m_constraints.GetFirst(); while (node) { - wxOGLConstraint *constraint = (wxOGLConstraint *)node->Data(); + wxOGLConstraint *constraint = (wxOGLConstraint *)node->GetData(); if (constraint->Evaluate()) changed = TRUE; - node = node->Next(); + node = node->GetNext(); } return changed; } -#ifdef PROLOGIO +#if wxUSE_PROLOGIO void wxCompositeShape::WriteAttributes(wxExpr *clause) { wxRectangleShape::WriteAttributes(clause); @@ -608,10 +611,10 @@ void wxCompositeShape::WriteAttributes(wxExpr *clause) // Output constraints as constraint1 = (...), constraint2 = (...), etc. int constraintNo = 1; char m_constraintNameBuf[20]; - wxNode *node = m_constraints.First(); + wxNode *node = m_constraints.GetFirst(); while (node) { - wxOGLConstraint *constraint = (wxOGLConstraint *)node->Data(); + wxOGLConstraint *constraint = (wxOGLConstraint *)node->GetData(); sprintf(m_constraintNameBuf, "constraint%d", constraintNo); // Each constraint is stored in the form @@ -625,42 +628,42 @@ void wxCompositeShape::WriteAttributes(wxExpr *clause) constraintExpr->Append(new wxExpr(constraint->m_constrainingObject->GetId())); wxExpr *objectList = new wxExpr(wxExprList); - wxNode *node1 = constraint->m_constrainedObjects.First(); + wxNode *node1 = constraint->m_constrainedObjects.GetFirst(); while (node1) { - wxShape *obj = (wxShape *)node1->Data(); + wxShape *obj = (wxShape *)node1->GetData(); objectList->Append(new wxExpr(obj->GetId())); - node1 = node1->Next(); + node1 = node1->GetNext(); } constraintExpr->Append(objectList); clause->AddAttributeValue(m_constraintNameBuf, constraintExpr); - node = node->Next(); + node = node->GetNext(); constraintNo ++; } // Write the ids of all the child images wxExpr *childrenExpr = new wxExpr(wxExprList); - node = m_children.First(); + node = m_children.GetFirst(); while (node) { - wxShape *child = (wxShape *)node->Data(); + wxShape *child = (wxShape *)node->GetData(); childrenExpr->Append(new wxExpr(child->GetId())); - node = node->Next(); + node = node->GetNext(); } clause->AddAttributeValue("children", childrenExpr); // Write the ids of all the division images - if (m_divisions.Number() > 0) + if (m_divisions.GetCount() > 0) { wxExpr *divisionsExpr = new wxExpr(wxExprList); - node = m_divisions.First(); + node = m_divisions.GetFirst(); while (node) { - wxShape *child = (wxShape *)node->Data(); + wxShape *child = (wxShape *)node->GetData(); divisionsExpr->Append(new wxExpr(child->GetId())); - node = node->Next(); + node = node->GetNext(); } clause->AddAttributeValue("divisions", divisionsExpr); } @@ -723,7 +726,7 @@ void wxCompositeShape::ReadConstraints(wxExpr *clause, wxExprDatabase *database) if (objExpr1 && objExpr1->GetClientData()) m_constrainingObject = (wxShape *)objExpr1->GetClientData(); else - wxLogFatalError("Object graphics error: Couldn't find constraining image of composite."); + wxLogFatalError(wxT("Object graphics error: Couldn't find constraining image of composite.")); int i = 0; wxExpr *currentIdExpr = constrainedExpr->Nth(i); @@ -737,7 +740,7 @@ void wxCompositeShape::ReadConstraints(wxExpr *clause, wxExprDatabase *database) } else { - wxLogFatalError("Object graphics error: Couldn't find constrained image of composite."); + wxLogFatalError(wxT("Object graphics error: Couldn't find constrained image of composite.")); } i ++; @@ -746,7 +749,7 @@ void wxCompositeShape::ReadConstraints(wxExpr *clause, wxExprDatabase *database) wxOGLConstraint *newConstraint = AddConstraint(cType, m_constrainingObject, m_constrainedObjects); newConstraint->SetSpacing(cXSpacing, cYSpacing); newConstraint->m_constraintId = cId; - newConstraint->m_constraintName = (const char*) cName; + newConstraint->m_constraintName = cName; constraintNo ++; } } @@ -776,13 +779,13 @@ wxDivisionShape *wxCompositeShape::OnCreateDivision() wxShape *wxCompositeShape::FindContainerImage() { - wxNode *node = m_children.First(); + wxNode *node = m_children.GetFirst(); while (node) { - wxShape *child = (wxShape *)node->Data(); + wxShape *child = (wxShape *)node->GetData(); if (!m_divisions.Member(child)) return child; - node = node->Next(); + node = node->GetNext(); } return NULL; } @@ -792,17 +795,17 @@ bool wxCompositeShape::ContainsDivision(wxDivisionShape *division) { if (m_divisions.Member(division)) return TRUE; - wxNode *node = m_children.First(); + wxNode *node = m_children.GetFirst(); while (node) { - wxShape *child = (wxShape *)node->Data(); + wxShape *child = (wxShape *)node->GetData(); if (child->IsKindOf(CLASSINFO(wxCompositeShape))) { bool ans = ((wxCompositeShape *)child)->ContainsDivision(division); if (ans) return TRUE; } - node = node->Next(); + node = node->GetNext(); } return FALSE; } @@ -826,10 +829,10 @@ wxDivisionShape::wxDivisionShape() m_handleSide = DIVISION_SIDE_NONE; m_leftSidePen = wxBLACK_PEN; m_topSidePen = wxBLACK_PEN; - m_leftSideColour = "BLACK"; - m_topSideColour = "BLACK"; - m_leftSideStyle = "Solid"; - m_topSideStyle = "Solid"; + m_leftSideColour = wxT("BLACK"); + m_topSideColour = wxT("BLACK"); + m_leftSideStyle = wxT("Solid"); + m_topSideStyle = wxT("Solid"); ClearRegions(); } @@ -878,13 +881,13 @@ bool wxDivisionShape::OnMovePre(wxDC& dc, double x, double y, double oldx, doubl { double diffX = x - oldx; double diffY = y - oldy; - wxNode *node = m_children.First(); + wxNode *node = m_children.GetFirst(); while (node) { - wxShape *object = (wxShape *)node->Data(); + wxShape *object = (wxShape *)node->GetData(); object->Erase(dc); object->Move(dc, object->GetX() + diffX, object->GetY() + diffY, display); - node = node->Next(); + node = node->GetNext(); } return TRUE; } @@ -984,7 +987,7 @@ void wxDivisionShape::Copy(wxShape& copy) // Division geometry copying is handled at the wxCompositeShape level. } -#ifdef PROLOGIO +#if wxUSE_PROLOGIO void wxDivisionShape::WriteAttributes(wxExpr *clause) { wxCompositeShape::WriteAttributes(clause); @@ -1083,13 +1086,13 @@ bool wxDivisionShape::Divide(int direction) // Anything adjoining the bottom of this division now adjoins the // bottom of the new division. - wxNode *node = compositeParent->GetDivisions().First(); + wxNode *node = compositeParent->GetDivisions().GetFirst(); while (node) { - wxDivisionShape *obj = (wxDivisionShape *)node->Data(); + wxDivisionShape *obj = (wxDivisionShape *)node->GetData(); if (obj->GetTopSide() == this) obj->SetTopSide(newDivision); - node = node->Next(); + node = node->GetNext(); } newDivision->SetTopSide(this); newDivision->SetBottomSide(m_bottomSide); @@ -1134,13 +1137,13 @@ bool wxDivisionShape::Divide(int direction) // Anything adjoining the left of this division now adjoins the // left of the new division. - wxNode *node = compositeParent->GetDivisions().First(); + wxNode *node = compositeParent->GetDivisions().GetFirst(); while (node) { - wxDivisionShape *obj = (wxDivisionShape *)node->Data(); + wxDivisionShape *obj = (wxDivisionShape *)node->GetData(); if (obj->GetLeftSide() == this) obj->SetLeftSide(newDivision); - node = node->Next(); + node = node->GetNext(); } newDivision->SetTopSide(m_topSide); newDivision->SetBottomSide(m_bottomSide); @@ -1252,17 +1255,17 @@ void wxDivisionShape::ResetControlPoints() void wxDivisionShape::ResetMandatoryControlPoints() { - if (m_controlPoints.Number() < 1) + if (m_controlPoints.GetCount() < 1) return; double maxX, maxY; GetBoundingBoxMax(&maxX, &maxY); /* - wxNode *node = m_controlPoints.First(); + wxNode *node = m_controlPoints.GetFirst(); while (node) { - wxDivisionControlPoint *control = (wxDivisionControlPoint *)node->Data(); + wxDivisionControlPoint *control = (wxDivisionControlPoint *)node->GetData(); if (control->type == CONTROL_POINT_HORIZONTAL) { control->xoffset = (double)(-maxX/2.0); control->m_yoffset = 0.0; @@ -1271,31 +1274,31 @@ void wxDivisionShape::ResetMandatoryControlPoints() { control->xoffset = 0.0; control->m_yoffset = (double)(-maxY/2.0); } - node = node->Next(); + node = node->GetNext(); } */ - wxNode *node = m_controlPoints.First(); + wxNode *node = m_controlPoints.GetFirst(); if ((m_handleSide == DIVISION_SIDE_LEFT) && node) { - wxDivisionControlPoint *control = (wxDivisionControlPoint *)node->Data(); + wxDivisionControlPoint *control = (wxDivisionControlPoint *)node->GetData(); control->m_xoffset = (double)(-maxX/2.0); control->m_yoffset = 0.0; } if ((m_handleSide == DIVISION_SIDE_TOP) && node) { - wxDivisionControlPoint *control = (wxDivisionControlPoint *)node->Data(); + wxDivisionControlPoint *control = (wxDivisionControlPoint *)node->GetData(); control->m_xoffset = 0.0; control->m_yoffset = (double)(-maxY/2.0); } if ((m_handleSide == DIVISION_SIDE_RIGHT) && node) { - wxDivisionControlPoint *control = (wxDivisionControlPoint *)node->Data(); + wxDivisionControlPoint *control = (wxDivisionControlPoint *)node->GetData(); control->m_xoffset = (double)(maxX/2.0); control->m_yoffset = 0.0; } if ((m_handleSide == DIVISION_SIDE_BOTTOM) && node) { - wxDivisionControlPoint *control = (wxDivisionControlPoint *)node->Data(); + wxDivisionControlPoint *control = (wxDivisionControlPoint *)node->GetData(); control->m_xoffset = 0.0; control->m_yoffset = (double)(maxY/2.0); } } @@ -1511,10 +1514,10 @@ void wxDivisionControlPoint::OnEndDragLeft(double x, double y, int keys, int att bool wxDivisionShape::ResizeAdjoining(int side, double newPos, bool test) { wxCompositeShape *divisionParent = (wxCompositeShape *)GetParent(); - wxNode *node = divisionParent->GetDivisions().First(); + wxNode *node = divisionParent->GetDivisions().GetFirst(); while (node) { - wxDivisionShape *division = (wxDivisionShape *)node->Data(); + wxDivisionShape *division = (wxDivisionShape *)node->GetData(); switch (side) { case DIVISION_SIDE_LEFT: @@ -1560,7 +1563,7 @@ bool wxDivisionShape::ResizeAdjoining(int side, double newPos, bool test) default: break; } - node = node->Next(); + node = node->GetNext(); } return TRUE; @@ -1573,11 +1576,11 @@ bool wxDivisionShape::ResizeAdjoining(int side, double newPos, bool test) class OGLPopupDivisionMenu : public wxMenu { public: OGLPopupDivisionMenu() : wxMenu() { - Append(DIVISION_MENU_SPLIT_HORIZONTALLY, "Split horizontally"); - Append(DIVISION_MENU_SPLIT_VERTICALLY, "Split vertically"); + Append(DIVISION_MENU_SPLIT_HORIZONTALLY, wxT("Split horizontally")); + Append(DIVISION_MENU_SPLIT_VERTICALLY, wxT("Split vertically")); AppendSeparator(); - Append(DIVISION_MENU_EDIT_LEFT_EDGE, "Edit left edge"); - Append(DIVISION_MENU_EDIT_TOP_EDGE, "Edit top edge"); + Append(DIVISION_MENU_EDIT_LEFT_EDGE, wxT("Edit left edge")); + Append(DIVISION_MENU_EDIT_TOP_EDGE, wxT("Edit top edge")); } void OnMenu(wxCommandEvent& event); @@ -1625,7 +1628,7 @@ void OGLPopupDivisionMenu::OnMenu(wxCommandEvent& event) void wxDivisionShape::EditEdge(int side) { - wxMessageBox("EditEdge() not implemented", "OGL", wxOK); + wxMessageBox(wxT("EditEdge() not implemented"), wxT("OGL"), wxOK); #if 0 wxBeginBusyCursor();