#endif
// For compilers that support precompilation, includes "wx.h".
-#include <wx/wxprec.h>
+#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#error You must set wxUSE_DOC_VIEW_ARCHITECTURE to 1 in wx_setup.h!
#endif
-#include <wx/wxexpr.h>
+#include <wx/deprecated/setup.h>
+#include <wx/deprecated/wxexpr.h>
#include "studio.h"
#include "doc.h"
csCopy.m_label = m_label;
}
-void csEvtHandler::OnLeftClick(double x, double y, int keys, int attachment)
+void csEvtHandler::OnLeftClick(double WXUNUSED(x), double WXUNUSED(y), int keys, int WXUNUSED(attachment))
{
wxClientDC dc(GetShape()->GetCanvas());
GetShape()->GetCanvas()->PrepareDC(dc);
}
}
-void csEvtHandler::OnRightClick(double x, double y, int keys, int attachment)
+void csEvtHandler::OnRightClick(double x, double y, int WXUNUSED(keys), int WXUNUSED(attachment))
{
// Have to convert back to physical coordinates from logical coordinates.
int viewStartX, viewStartY;
int unitX, unitY;
- GetShape()->GetCanvas()->ViewStart(& viewStartX, & viewStartY);
+ GetShape()->GetCanvas()->GetViewStart(& viewStartX, & viewStartY);
GetShape()->GetCanvas()->GetScrollPixelsPerUnit(& unitX, & unitY);
int x1 = (int)(x * GetShape()->GetCanvas()->GetScaleX());
* Implement connection of two shapes by right-dragging between them.
*/
-void csEvtHandler::OnBeginDragRight(double x, double y, int keys, int attachment)
+void csEvtHandler::OnBeginDragRight(double x, double y, int WXUNUSED(keys), int attachment)
{
wxClientDC dc(GetShape()->GetCanvas());
GetShape()->GetCanvas()->PrepareDC(dc);
dc.SetPen(dottedPen);
double xp, yp;
GetShape()->GetAttachmentPositionEdge(attachment, &xp, &yp);
- dc.DrawLine(xp, yp, x, y);
+ dc.DrawLine((wxCoord)xp, (wxCoord)yp, (wxCoord)x, (wxCoord)y);
GetShape()->GetCanvas()->CaptureMouse();
}
-void csEvtHandler::OnDragRight(bool draw, double x, double y, int keys, int attachment)
+void csEvtHandler::OnDragRight(bool WXUNUSED(draw), double x, double y, int WXUNUSED(keys), int attachment)
{
wxClientDC dc(GetShape()->GetCanvas());
GetShape()->GetCanvas()->PrepareDC(dc);
dc.SetPen(dottedPen);
double xp, yp;
GetShape()->GetAttachmentPositionEdge(attachment, &xp, &yp);
- dc.DrawLine(xp, yp, x, y);
+ dc.DrawLine((wxCoord)xp, (wxCoord)yp, (wxCoord)x, (wxCoord)y);
}
-void csEvtHandler::OnEndDragRight(double x, double y, int keys, int attachment)
+void csEvtHandler::OnEndDragRight(double x, double y, int WXUNUSED(keys), int attachment)
{
GetShape()->GetCanvas()->ReleaseMouse();
csCanvas *canvas = (csCanvas *)GetShape()->GetCanvas();
wxLineShape* theShape = new csLineShape;
theShape->AssignNewIds();
- theShape->SetEventHandler(new csEvtHandler(theShape, theShape, wxString("")));
+ theShape->SetEventHandler(new csEvtHandler(theShape, theShape, wxEmptyString));
theShape->SetPen(wxBLACK_PEN);
theShape->SetBrush(wxRED_BRUSH);
lineShape->MakeLineControlPoints(2);
if (haveArrow)
- lineShape->AddArrow(ARROW_ARROW, ARROW_POSITION_MIDDLE, 10.0, 0.0, "Normal arrowhead");
+ lineShape->AddArrow(ARROW_ARROW, ARROW_POSITION_MIDDLE, 10.0, 0.0, _T("Normal arrowhead"));
lineShape->SetFrom(GetShape());
lineShape->SetTo(otherShape);
lineShape->SetAttachments(attachment, new_attachment);
canvas->GetView()->GetDocument()->GetCommandProcessor()->Submit(
- new csDiagramCommand("Line", (csDiagramDocument *)canvas->GetView()->GetDocument(),
+ new csDiagramCommand(_T("Line"), (csDiagramDocument *)canvas->GetView()->GetDocument(),
new csCommandState(ID_CS_ADD_LINE, lineShape, NULL)));
}
}
GetShape()->GetEventHandler()->OnDrawOutline(dc, xx, yy, w, h);
// Draw bounding box for other selected shapes
- wxNode* node = GetShape()->GetCanvas()->GetDiagram()->GetShapeList()->First();
+ wxNode* node = GetShape()->GetCanvas()->GetDiagram()->GetShapeList()->GetFirst();
while (node)
{
- wxShape* shape = (wxShape*) node->Data();
+ wxShape* shape = (wxShape*) node->GetData();
if (shape->Selected() && !shape->IsKindOf(CLASSINFO(wxLineShape)) && (shape != GetShape()))
{
shape->GetBoundingBoxMax(&w, &h);
shape->OnDrawOutline(dc, shape->GetX() + offsetX, shape->GetY() + offsetY, w, h);
}
- node = node->Next();
+ node = node->GetNext();
}
}
GetShape()->GetEventHandler()->OnDrawOutline(dc, xx, yy, w, h);
// Draw bounding box for other selected shapes
- wxNode* node = GetShape()->GetCanvas()->GetDiagram()->GetShapeList()->First();
+ wxNode* node = GetShape()->GetCanvas()->GetDiagram()->GetShapeList()->GetFirst();
while (node)
{
- wxShape* shape = (wxShape*) node->Data();
+ wxShape* shape = (wxShape*) node->GetData();
if (shape->Selected() && !shape->IsKindOf(CLASSINFO(wxLineShape)) && (shape != GetShape()))
{
shape->GetBoundingBoxMax(&w, &h);
shape->OnDrawOutline(dc, shape->GetX() + offsetX, shape->GetY() + offsetY, w, h);
}
- node = node->Next();
+ node = node->GetNext();
}
GetShape()->GetCanvas()->CaptureMouse();
newShape->SetX(xx);
newShape->SetY(yy);
- csDiagramCommand* cmd = new csDiagramCommand("Move", (csDiagramDocument*)canvas->GetView()->GetDocument(),
+ csDiagramCommand* cmd = new csDiagramCommand(_T("Move"), (csDiagramDocument*)canvas->GetView()->GetDocument(),
new csCommandState(ID_CS_MOVE, newShape, GetShape()));
// Move line points
- wxNode* node = GetShape()->GetCanvas()->GetDiagram()->GetShapeList()->First();
+ wxNode* node = GetShape()->GetCanvas()->GetDiagram()->GetShapeList()->GetFirst();
while (node)
{
- wxShape* shape = (wxShape*) node->Data();
+ wxShape* shape = (wxShape*) node->GetData();
// Only move the line point(s) if both ends move too
if (shape->IsKindOf(CLASSINFO(wxLineShape)) &&
((wxLineShape*)shape)->GetTo()->Selected() && ((wxLineShape*)shape)->GetFrom()->Selected())
{
wxLineShape* lineShape = (wxLineShape*) shape;
- if (lineShape->GetLineControlPoints()->Number() > 2)
+ if (lineShape->GetLineControlPoints()->GetCount() > 2)
{
wxLineShape* newLineShape = (wxLineShape*) lineShape->CreateNewCopy();
- wxNode *node1 = newLineShape->GetLineControlPoints()->First();
+ wxNode *node1 = newLineShape->GetLineControlPoints()->GetFirst();
while (node1)
{
- wxRealPoint *point = (wxRealPoint *)node1->Data();
+ wxRealPoint *point = (wxRealPoint *)node1->GetData();
point->x += offsetX;
point->y += offsetY;
- node1 = node1->Next();
+ node1 = node1->GetNext();
}
cmd->AddState(new csCommandState(ID_CS_MOVE_LINE_POINT, newLineShape, lineShape));
lineShape->Erase(dc);
}
}
- node = node->Next();
+ node = node->GetNext();
}
// Add other selected node shapes, if any
- node = GetShape()->GetCanvas()->GetDiagram()->GetShapeList()->First();
+ node = GetShape()->GetCanvas()->GetDiagram()->GetShapeList()->GetFirst();
while (node)
{
- wxShape* shape = (wxShape*) node->Data();
+ wxShape* shape = (wxShape*) node->GetData();
if (shape->Selected() && !shape->IsKindOf(CLASSINFO(wxLineShape)) && (shape != GetShape()))
{
wxShape* newShape2 = shape->CreateNewCopy();
newShape2->SetY(shape->GetY() + offsetY);
cmd->AddState(new csCommandState(ID_CS_MOVE, newShape2, shape));
}
- node = node->Next();
+ node = node->GetNext();
}
canvas->GetView()->GetDocument()->GetCommandProcessor()->Submit(cmd);
}
}
- csDiagramCommand* cmd = new csDiagramCommand("Size", (csDiagramDocument*)canvas->GetView()->GetDocument(),
+ csDiagramCommand* cmd = new csDiagramCommand(_T("Size"), (csDiagramDocument*)canvas->GetView()->GetDocument(),
new csCommandState(ID_CS_SIZE, newShape, shape));
canvas->GetView()->GetDocument()->GetCommandProcessor()->Submit(cmd);
}
-void csEvtHandler::OnEndSize(double x, double y)
+void csEvtHandler::OnEndSize(double WXUNUSED(x), double WXUNUSED(y))
{
wxClientDC dc(GetShape()->GetCanvas());
GetShape()->GetCanvas()->PrepareDC(dc);
// Problem. If we refresh after the attachment change, we'll get a flicker.
// We really want to do both in a oner.
- csDiagramCommand* cmd = new csDiagramCommand("Change attachment", (csDiagramDocument*)canvas->GetView()->GetDocument());
+ csDiagramCommand* cmd = new csDiagramCommand(_T("Change attachment"), (csDiagramDocument*)canvas->GetView()->GetDocument());
wxLineShape* newLine = (wxLineShape*) line->CreateNewCopy();
if (line->GetTo() == GetShape())
canvas->GetView()->GetDocument()->GetCommandProcessor()->Submit(cmd);
}
-void csEvtHandler::OnLeftDoubleClick(double x, double y, int keys, int attachment)
+void csEvtHandler::OnLeftDoubleClick(double WXUNUSED(x), double WXUNUSED(y), int WXUNUSED(keys), int WXUNUSED(attachment))
{
EditProperties();
}
if (shape->IsKindOf(CLASSINFO(csThinRectangleShape)))
{
attributeDialog = new csThinRectangleDialog;
- attributeDialogName = "thin_rectangle";
- title = "Thin Rectangle Properties";
+ attributeDialogName = _T("thin_rectangle");
+ title = _T("Thin Rectangle Properties");
}
else if (shape->IsKindOf(CLASSINFO(csWideRectangleShape)))
{
attributeDialog = new csWideRectangleDialog;
- attributeDialogName = "wide_rectangle";
- title = "Wide Rectangle Properties";
+ attributeDialogName = _T("wide_rectangle");
+ title = _T("Wide Rectangle Properties");
}
else if (shape->IsKindOf(CLASSINFO(csTriangleShape)))
{
attributeDialog = new csTriangleDialog;
- attributeDialogName = "triangle";
- title = "Triangle Properties";
+ attributeDialogName = _T("triangle");
+ title = _T("Triangle Properties");
}
else if (shape->IsKindOf(CLASSINFO(csSemiCircleShape)))
{
attributeDialog = new csSemiCircleDialog;
- attributeDialogName = "semi_circle";
- title = "Semicircle Properties";
+ attributeDialogName = _T("semi_circle");
+ title = _T("Semicircle Properties");
}
else if (shape->IsKindOf(CLASSINFO(csCircleShape)))
{
attributeDialog = new csCircleDialog;
- attributeDialogName = "circle";
- title = "Circle Properties";
+ attributeDialogName = _T("circle");
+ title = _T("Circle Properties");
}
else if (shape->IsKindOf(CLASSINFO(csCircleShadowShape)))
{
attributeDialog = new csCircleShadowDialog;
- attributeDialogName = "circle_shadow";
- title = "Circle Shadow Properties";
+ attributeDialogName = _T("circle_shadow");
+ title = _T("Circle Shadow Properties");
}
else if (shape->IsKindOf(CLASSINFO(csTextBoxShape)))
{
attributeDialog = new csTextBoxDialog;
- attributeDialogName = "text_box";
- title = "Text Box Properties";
+ attributeDialogName = _T("text_box");
+ title = _T("Text Box Properties");
}
else if (shape->IsKindOf(CLASSINFO(csGroupShape)))
{
attributeDialog = new csGroupDialog;
- attributeDialogName = "group";
- title = "Group Properties";
+ attributeDialogName = _T("group");
+ title = _T("Group Properties");
}
else if (shape->IsKindOf(CLASSINFO(csOctagonShape)))
{
attributeDialog = new csOctagonDialog;
- attributeDialogName = "octagon";
- title = "Octagon Properties";
+ attributeDialogName = _T("octagon");
+ title = _T("Octagon Properties");
}
else
{
- wxMessageBox("Unrecognised shape.", "Studio", wxICON_EXCLAMATION);
+ wxMessageBox(_T("Unrecognised shape."), _T("Studio"), wxICON_EXCLAMATION);
return FALSE;
}
csEvtHandler* handler2 = (csEvtHandler *)newShape->GetEventHandler();
handler2->m_label = newLabel;
- view->GetDocument()->GetCommandProcessor()->Submit(new csDiagramCommand("Edit properties", (csDiagramDocument*) view->GetDocument(),
+ view->GetDocument()->GetCommandProcessor()->Submit(new csDiagramCommand(_T("Edit properties"), (csDiagramDocument*) view->GetDocument(),
new csCommandState(ID_CS_EDIT_PROPERTIES, newShape, shape)));
return TRUE;
{
wxDiagram::OnShapeSave(db, shape, expr);
csEvtHandler *handler = (csEvtHandler *)shape.GetEventHandler();
- expr.AddAttributeValueString("label", handler->m_label);
+ expr.AddAttributeValueString(_T("label"), handler->m_label);
return TRUE;
}
bool csDiagram::OnShapeLoad(wxExprDatabase& db, wxShape& shape, wxExpr& expr)
{
wxDiagram::OnShapeLoad(db, shape, expr);
- wxString label("");
- expr.GetAttributeValue("label", label);
+ wxString label = wxEmptyString;
+ expr.GetAttributeValue(_T("label"), label);
csEvtHandler *handler = new csEvtHandler(&shape, &shape, label);
shape.SetEventHandler(handler);
double w = csSTANDARD_SHAPE_WIDTH/2;
double h = csSTANDARD_SHAPE_WIDTH;
- DrawRectangle(wxRect(- w/2, - h/2, w, h));
+ DrawRectangle(wxRect((int)(- w/2), (int)(- h/2), (int)(w), (int)(h)));
CalculateSize();
SetAttachmentMode(ATTACHMENT_MODE_BRANCHING);
double w = csSTANDARD_SHAPE_WIDTH;
double h = w/2.0;
- DrawRoundedRectangle(wxRect(- w/2, - h/2, w, h), -0.3);
+ DrawRoundedRectangle(wxRect((int)(- w/2), (int)(- h/2), (int)(w), (int)(h)), -0.3);
CalculateSize();
SetAttachmentMode(ATTACHMENT_MODE_BRANCHING);
wxPoint* points = new wxPoint[3];
- points[0] = wxPoint( 0 , - h / 2 );
- points[1] = wxPoint( w / 2 , h / 2 );
- points[2] = wxPoint( -w / 2, h / 2 );
+ points[0] = wxPoint( 0 , (int)(- h / 2) );
+ points[1] = wxPoint( (int)(w / 2) , (int)(h / 2) );
+ points[2] = wxPoint( (int)(-w / 2), (int)(h / 2) );
DrawPolygon(3, points, oglMETAFLAGS_OUTLINE);
// bounding box, since we can't calculate the bounding box for
// an arbitrary arc (not implemented)
- DrawRectangle(wxRect(-w/2.0, -h/2.0, w, h));
+ DrawRectangle(wxRect((int)(-w/2.0), (int)(-h/2.0), (int)(w), (int)(h)));
SetDrawnPen(wxBLACK_PEN);
wxBrush* brush = wxTheBrushList->FindOrCreateBrush(wxColour(220, 220, 220), wxSOLID);
SetDrawnBrush(brush);
- DrawEllipticArc(wxRect(-w/2, -h/2, w, 2*h), 0.0, 180.0);
- DrawLine(wxPoint(-w/2, h/2), wxPoint(w/2, h/2));
+ DrawEllipticArc(wxRect((int)(-w/2), (int)(-h/2), (int)(w), (int)(2*h)), 0.0, 180.0);
+ DrawLine(wxPoint((int)(-w/2), (int)(h/2)), wxPoint((int)(w/2), (int)(h/2)));
CalculateSize();
SetDrawnPen(wxTRANSPARENT_PEN);
SetDrawnBrush(wxTRANSPARENT_BRUSH);
- DrawRectangle(wxRect(-w/2, -h/2, w, h));
+ DrawRectangle(wxRect((int)(-w/2), (int)(-h/2), (int)(w), (int)(h)));
SetDrawnPen(wxBLACK_PEN);
SetDrawnBrush(brush);
- DrawEllipticArc(wxRect(-w/2 - w, -h/2, 2*w, h), 270.0, 90.0);
- DrawLine(wxPoint(-w/2, -h/2), wxPoint(-w/2, h/2));
+ DrawEllipticArc(wxRect((int)(-w/2 - w), (int)(-h/2), (int)(2*w), (int)(h)), 270.0, 90.0);
+ DrawLine(wxPoint((int)(-w/2), (int)(-h/2)), wxPoint((int)(-w/2), (int)(h/2)));
CalculateSize();
SetDrawnPen(wxTRANSPARENT_PEN);
SetDrawnBrush(wxTRANSPARENT_BRUSH);
- DrawRectangle(wxRect(-w/2, -h/2, w, h));
+ DrawRectangle(wxRect((int)(-w/2), (int)(-h/2), (int)(w), (int)(h)));
SetDrawnPen(wxBLACK_PEN);
SetDrawnBrush(brush);
- DrawEllipticArc(wxRect(-w/2, -h/2 - h, w, 2*h), 180.0, 0.0);
- DrawLine(wxPoint(-w/2, -h/2), wxPoint(w/2, -h/2));
+ DrawEllipticArc(wxRect((int)(-w/2), (int)(-h/2 - h), (int)(w), (int)(2*h)), 180.0, 0.0);
+ DrawLine(wxPoint((int)(-w/2), (int)(-h/2)), wxPoint((int)(w/2), (int)(-h/2)));
CalculateSize();
SetDrawnPen(wxTRANSPARENT_PEN);
SetDrawnBrush(wxTRANSPARENT_BRUSH);
- DrawRectangle(wxRect(-w/2, -h/2, w, h));
+ DrawRectangle(wxRect((int)(-w/2), (int)(-h/2), (int)(w), (int)(h)));
SetDrawnPen(wxBLACK_PEN);
SetDrawnBrush(brush);
- DrawEllipticArc(wxRect(-w/2, -h/2, 2*w, h), 90.0, 270.0);
- DrawLine(wxPoint(w/2, -h/2), wxPoint(w/2, h/2));
+ DrawEllipticArc(wxRect((int)(-w/2), (int)(-h/2), (int)(2*w), (int)(h)), 90.0, 270.0);
+ DrawLine(wxPoint((int)(w/2),(int)(-h/2)), wxPoint((int)(w/2), (int)(h/2)));
CalculateSize();
csGroupShape::csGroupShape()
{
- SetPen(wxThePenList->FindOrCreatePen("BLACK", 1, wxDOT));
+ SetPen(wxThePenList->FindOrCreatePen(_T("BLACK"), 1, wxDOT));
SetBrush(wxTRANSPARENT_BRUSH);
SetSize(csSTANDARD_SHAPE_WIDTH, csSTANDARD_SHAPE_WIDTH);
{
}
-bool csLineShape::OnMoveMiddleControlPoint(wxDC& dc, wxLineControlPoint* lpt, const wxRealPoint& pt)
+bool csLineShape::OnMoveMiddleControlPoint(wxDC& WXUNUSED(dc), wxLineControlPoint* lpt, const wxRealPoint& pt)
{
csDiagramView* view = ((csCanvas*)GetCanvas())->GetView();
lpt->SetX(lpt->m_originalPos.x); lpt->SetY(lpt->m_originalPos.y);
lpt->m_point->x = lpt->m_originalPos.x; lpt->m_point->y = lpt->m_originalPos.y;
- view->GetDocument()->GetCommandProcessor()->Submit(new csDiagramCommand("Move line point", (csDiagramDocument*) view->GetDocument(),
+ view->GetDocument()->GetCommandProcessor()->Submit(new csDiagramCommand(_T("Move line point"), (csDiagramDocument*) view->GetDocument(),
new csCommandState(ID_CS_MOVE_LINE_POINT, newShape, this)));
return TRUE;
if (event.GetId() == ID_CS_ROTATE_CLOCKWISE)
{
theta += ninetyDegrees;
- opStr = "Rotate clockwise";
+ opStr = _T("Rotate clockwise");
}
else
{
theta -= ninetyDegrees;
- opStr = "Rotate anticlockwise";
+ opStr = _T("Rotate anticlockwise");
}
if (theta >= 2.0*myPi || theta < 0.0)