// Created: 12/07/98
// RCS-ID: $Id$
// Copyright: (c) Julian Smart
-// Licence: wxWindows licence
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifdef __GNUG__
{
DeleteAllShapes();
- return DoCopy(diagram, this, FALSE, NULL);
+ return DoCopy(diagram, this, false, NULL);
}
// Copy contents to the diagram, with new ids.
bool wxDiagramClipboard::Paste(wxDiagram* diagram, wxDC* dc, int offsetX, int offsetY)
{
- return DoCopy(this, diagram, TRUE, dc, offsetX, offsetY);
+ return DoCopy(this, diagram, true, dc, offsetX, offsetY);
}
// Universal copy function (to or from clipboard).
// First copy all node shapes.
wxList* shapeList = diagramFrom->GetShapeList();
- wxNode* node = shapeList->First();
+ wxNode* node = shapeList->GetFirst();
while (node)
{
- wxShape* shape = (wxShape*) node->Data();
+ wxShape* shape = (wxShape*) node->GetData();
if (((diagramFrom == this) || shape->Selected()) && !shape->IsKindOf(CLASSINFO(wxLineShape)))
{
wxShape* newShape = shape->CreateNewCopy();
OnAddShape(diagramTo, newShape, dc);
}
- node = node->Next();
+ node = node->GetNext();
}
- node = shapeList->First();
+ node = shapeList->GetFirst();
while (node)
{
- wxShape* shape = (wxShape*) node->Data();
+ wxShape* shape = (wxShape*) node->GetData();
if (((diagramFrom == this) || shape->Selected()) && shape->IsKindOf(CLASSINFO(wxLineShape)))
{
wxLineShape* lineShape = (wxLineShape*) shape;
}
}
- node = node->Next();
+ node = node->GetNext();
}
// Now make sure line ordering is correct
- node = shapeList->First();
+ node = shapeList->GetFirst();
while (node)
{
- wxShape* shape = (wxShape*) node->Data();
+ wxShape* shape = (wxShape*) node->GetData();
if (((diagramFrom == this) || shape->Selected()) && !shape->IsKindOf(CLASSINFO(wxLineShape)))
{
wxShape* newShape = (wxShape*) mapping.Get((long) shape);
// Make a list of all the new lines, in the same order as the old lines.
// Then apply the list of new lines to the shape.
wxList newLines;
- wxNode* lineNode = shape->GetLines().First();
+ wxNode* lineNode = shape->GetLines().GetFirst();
while (lineNode)
{
- wxLineShape* lineShape = (wxLineShape*) lineNode->Data();
+ wxLineShape* lineShape = (wxLineShape*) lineNode->GetData();
if ((diagramFrom == this) || (lineShape->GetTo()->Selected() && lineShape->GetFrom()->Selected()))
{
wxLineShape* newLineShape = (wxLineShape*) mapping.Get((long) lineShape);
newLines.Append(newLineShape);
}
- lineNode = lineNode->Next();
+ lineNode = lineNode->GetNext();
}
- if (newLines.Number() > 0)
+ if (newLines.GetCount() > 0)
newShape->ApplyAttachmentOrdering(newLines);
}
- node = node->Next();
+ node = node->GetNext();
}
OnEndCopy(diagramTo);
- return TRUE;
+ return true;
}
#ifdef __WXMSW__
// these to the Windows clipboard
bool wxDiagramClipboard::CopyToClipboard(double scale)
{
+#if wxUSE_METAFILE
// Make a metafile DC
wxMetaFileDC mfDC;
if (mfDC.Ok())
// Draw on metafile DC
Redraw(mfDC);
- /* int printWidth = */ mfDC.MaxX() - mfDC.MinX();
- /* int printHeight = */ mfDC.MaxY() - mfDC.MinY();
+ // int printWidth = mfDC.MaxX() - mfDC.MinX();
+ // int printHeight = mfDC.MaxY() - mfDC.MinY();
int maxX = (int)mfDC.MaxX();
int maxY = (int)mfDC.MaxY();
wxMetaFile *mf = mfDC.Close();
wxChar buf[200];
wxSprintf(buf, _T("Sorry, could not allocate clipboard bitmap (%dx%d)"), (maxX+10), (maxY+10));
wxMessageBox(buf, _T("Clipboard copy problem"));
- return FALSE;
+ return false;
}
wxMemoryDC memDC;
delete mf;
}
- return TRUE;
+ return true;
+#else
+ wxMessageBox("wxUSE_METAFILE in build required to use Clipboard", _T("Clipboard copy problem"));
+ return false;
+#endif
}
#endif
// __WXMSW__
if (dc && (diagramTo != this))
{
- newShape->Select(TRUE, dc);
+ newShape->Select(true, dc);
}
- return TRUE;
+ return true;
}
/*
{
// Do nothing if copying to the clipboard
if (diagramTo == this)
- return TRUE;
+ return true;
// Deselect all objects initially.
csDiagram* diagram = (csDiagram*) diagramTo;
csDiagramDocument* doc = diagram->GetDocument();
- ((csDiagramView*)doc->GetFirstView())->SelectAll(FALSE);
+ ((csDiagramView*)doc->GetFirstView())->SelectAll(false);
m_currentCmd = new csDiagramCommand(_T("Paste"), doc);
- return TRUE;
+ return true;
}
bool csDiagramClipboard::OnEndCopy(wxDiagram* diagramTo)
{
// Do nothing if copying to the clipboard
if (diagramTo == this)
- return TRUE;
+ return true;
csDiagram* diagram = (csDiagram*) diagramTo;
csDiagramDocument* doc = diagram->GetDocument();
if (m_currentCmd)
{
- if (m_currentCmd->GetStates().Number() == 0)
+ if (m_currentCmd->GetStates().GetCount() == 0)
{
delete m_currentCmd;
}
m_currentCmd = NULL;
}
}
- return TRUE;
+ return true;
}
// Use the command framework to add the shapes, if we're copying to a diagram and
m_currentCmd->AddState(new csCommandState(ID_CS_ADD_SHAPE_SELECT, newShape, NULL));
}
- return TRUE;
+ return true;
}