canvas->SetView(this);
SetFrame(frame);
- Activate(TRUE);
+ Activate(true);
// Initialize the edit menu Undo and Redo items
doc->GetCommandProcessor()->SetEditMenu(editMenu);
{
case csGRID_STYLE_NONE:
{
- diagramDoc->GetDiagram()->SetSnapToGrid(FALSE);
+ diagramDoc->GetDiagram()->SetSnapToGrid(false);
break;
}
case csGRID_STYLE_INVISIBLE:
{
- diagramDoc->GetDiagram()->SetSnapToGrid(TRUE);
+ diagramDoc->GetDiagram()->SetSnapToGrid(true);
break;
}
case csGRID_STYLE_DOTTED:
}
- return TRUE;
+ return true;
}
csDiagramView::~csDiagramView(void)
bool csDiagramView::OnClose(bool deleteWindow)
{
if (!GetDocument()->Close())
- return FALSE;
+ return false;
csDiagramDocument *diagramDoc = (csDiagramDocument *)GetDocument();
diagramDoc->GetDiagram()->SetCanvas(NULL);
// Remove file menu from those managed by the command history
wxGetApp().GetDocManager()->FileHistoryRemoveMenu(fileMenu);
- Activate(FALSE);
- frame->Show(FALSE);
+ Activate(false);
+ frame->Show(false);
if (deleteWindow)
{
frame->Destroy();
}
- return TRUE;
+ return true;
}
// Adds or removes shape from m_selections
void csDiagramView::OnSelectAll(wxCommandEvent& WXUNUSED(event))
{
- SelectAll(TRUE);
+ SelectAll(true);
}
wxShape *csDiagramView::FindFirstSelectedShape(void)
{
csDiagramDocument *doc = (csDiagramDocument *)GetDocument();
- wxShape *theShape = NULL;
- wxNode *node = doc->GetDiagram()->GetShapeList()->First();
+ wxObjectList::compatibility_iterator node = doc->GetDiagram()->GetShapeList()->GetFirst();
while (node)
{
- wxShape *eachShape = (wxShape *)node->Data();
+ wxShape *eachShape = (wxShape *)node->GetData();
if ((eachShape->GetParent() == NULL) && !eachShape->IsKindOf(CLASSINFO(wxLabelShape)) && eachShape->Selected())
{
- theShape = eachShape;
- node = NULL;
+ return eachShape;
}
- else node = node->Next();
+ else node = node->GetNext();
}
- return theShape;
+ return NULL;
}
void csDiagramView::FindSelectedShapes(wxList& selections, wxClassInfo* toFind)
{
csDiagramDocument *doc = (csDiagramDocument *)GetDocument();
- wxNode *node = doc->GetDiagram()->GetShapeList()->First();
+ wxObjectList::compatibility_iterator node = doc->GetDiagram()->GetShapeList()->GetFirst();
while (node)
{
- wxShape *eachShape = (wxShape *)node->Data();
+ wxShape *eachShape = (wxShape *)node->GetData();
if ((eachShape->GetParent() == NULL) && !eachShape->IsKindOf(CLASSINFO(wxLabelShape)) && eachShape->Selected() && ((toFind == NULL) || (eachShape->IsKindOf(toFind))))
{
selections.Append(eachShape);
}
- node = node->Next();
+ node = node->GetNext();
}
}
void csDiagramView::OnCutUpdate(wxUpdateUIEvent& event)
{
- event.Enable( (m_selections.Number() > 0) );
+ event.Enable( (m_selections.GetCount() > 0) );
}
void csDiagramView::OnClearUpdate(wxUpdateUIEvent& event)
{
- event.Enable( (m_selections.Number() > 0) );
+ event.Enable( (m_selections.GetCount() > 0) );
}
void csDiagramView::OnCopyUpdate(wxUpdateUIEvent& event)
{
- event.Enable( (m_selections.Number() > 0) );
+ event.Enable( (m_selections.GetCount() > 0) );
}
void csDiagramView::OnPasteUpdate(wxUpdateUIEvent& event)
void csDiagramView::OnDuplicateUpdate(wxUpdateUIEvent& event)
{
- event.Enable( (m_selections.Number() > 0) );
+ event.Enable( (m_selections.GetCount() > 0) );
}
void csDiagramView::DoCut(wxList& shapes)
{
csDiagramDocument *doc = (csDiagramDocument *)GetDocument();
- if (shapes.Number() > 0)
+ if (shapes.GetCount() > 0)
{
csDiagramCommand* cmd = new csDiagramCommand(_T("Cut"), doc);
- wxNode* node = shapes.First();
+ wxObjectList::compatibility_iterator node = shapes.GetFirst();
while (node)
{
- wxShape *theShape = (wxShape*) node->Data();
+ wxShape *theShape = (wxShape*) node->GetData();
csCommandState* state = new csCommandState(ID_CS_CUT, NULL, theShape);
// Insert lines at the front, so they are cut first.
else
cmd->AddState(state);
- node = node->Next();
+ node = node->GetNext();
}
cmd->RemoveLines(); // Schedule any connected lines, not already mentioned,
// to be removed first
{
csDiagramDocument *doc = (csDiagramDocument *)GetDocument();
- if (shapes.Number() > 0)
+ if (shapes.GetCount() > 0)
{
csDiagramCommand* command = new csDiagramCommand(op, doc);
- wxNode* node = shapes.First();
- wxNode* node1 = oldShapes.First();
+ wxObjectList::compatibility_iterator node = shapes.GetFirst();
+ wxObjectList::compatibility_iterator node1 = oldShapes.GetFirst();
while (node && node1)
{
- wxShape *theShape = (wxShape*) node->Data();
- wxShape *oldShape = (wxShape*) node1->Data();
+ wxShape *theShape = (wxShape*) node->GetData();
+ wxShape *oldShape = (wxShape*) node1->GetData();
csCommandState* state = new csCommandState(cmd, theShape, oldShape);
command->AddState(state);
- node = node->Next();
- node1 = node1->Next();
+ node = node->GetNext();
+ node1 = node1->GetNext();
}
doc->GetCommandProcessor()->Submit(command);
}
wxList selections;
FindSelectedShapes(selections);
- if (selections.Number() > 0)
+ if (selections.GetCount() > 0)
{
wxColourData data;
- data.SetChooseFull(TRUE);
- if (selections.Number() == 1)
+ data.SetChooseFull(true);
+ if (selections.GetCount() == 1)
{
- wxShape* firstShape = (wxShape*) selections.First()->Data();
+ wxShape* firstShape = (wxShape*) selections.GetFirst()->GetData();
data.SetColour(firstShape->GetBrush()->GetColour());
}
wxColour col = retData.GetColour();
theBrush = wxTheBrushList->FindOrCreateBrush(col, wxSOLID);
}
- dialog->Close(TRUE);
+ dialog->Close(true);
if (!theBrush)
return;
csDiagramCommand* cmd = new csDiagramCommand(_T("Change colour"), doc);
- wxNode* node = selections.First();
+ wxObjectList::compatibility_iterator node = selections.GetFirst();
while (node)
{
- wxShape *theShape = (wxShape*) node->Data();
+ wxShape *theShape = (wxShape*) node->GetData();
wxShape* newShape = theShape->CreateNewCopy();
newShape->SetBrush(theBrush);
csCommandState* state = new csCommandState(ID_CS_CHANGE_BACKGROUND_COLOUR, newShape, theShape);
cmd->AddState(state);
- node = node->Next();
+ node = node->GetNext();
}
doc->GetCommandProcessor()->Submit(cmd);
}
{
wxList selections;
FindSelectedShapes(selections);
- event.Enable( (selections.Number() > 0) );
+ event.Enable( (selections.GetCount() > 0) );
}
void csDiagramView::OnPointSizeComboSel(wxCommandEvent& event)
wxList selections;
FindSelectedShapes(selections);
- if (selections.Number() > 0)
+ if (selections.GetCount() > 0)
{
csDiagramCommand* cmd = new csDiagramCommand(_T("Point size"), doc);
- wxNode* node = selections.First();
+ wxObjectList::compatibility_iterator node = selections.GetFirst();
while (node)
{
- wxShape *theShape = (wxShape*) node->Data();
+ wxShape *theShape = (wxShape*) node->GetData();
wxShape *newShape = theShape->CreateNewCopy();
wxFont* newFont = wxTheFontList->FindOrCreateFont(pointSize,
cmd->AddState(state);
- node = node->Next();
+ node = node->GetNext();
}
doc->GetCommandProcessor()->Submit(cmd);
}
wxList selections;
FindSelectedShapes(selections);
- wxNode* node = selections.First();
+ wxObjectList::compatibility_iterator node = selections.GetFirst();
while (node)
{
- wxShape *theShape = (wxShape*) node->Data();
- theShape->Select(FALSE, &dc);
- SelectShape(theShape, FALSE);
+ wxShape *theShape = (wxShape*) node->GetData();
+ theShape->Select(false, &dc);
+ SelectShape(theShape, false);
- node = node->Next();
+ node = node->GetNext();
}
}
else
{
csDiagramDocument *doc = (csDiagramDocument *)GetDocument();
- wxNode *node = doc->GetDiagram()->GetShapeList()->First();
+ wxObjectList::compatibility_iterator node = doc->GetDiagram()->GetShapeList()->GetFirst();
while (node)
{
- wxShape *eachShape = (wxShape *)node->Data();
+ wxShape *eachShape = (wxShape *)node->GetData();
if (eachShape->GetParent() == NULL &&
!eachShape->IsKindOf(CLASSINFO(wxControlPoint)) &&
!eachShape->IsKindOf(CLASSINFO(wxLabelShape)))
{
- eachShape->Select(TRUE, &dc);
- SelectShape(eachShape, TRUE);
+ eachShape->Select(true, &dc);
+ SelectShape(eachShape, true);
}
- node = node->Next();
+ node = node->GetNext();
}
}
}
wxList selections;
FindSelectedShapes(selections, CLASSINFO(wxLineShape));
- if (selections.Number() > 0)
+ if (selections.GetCount() > 0)
{
csDiagramCommand* cmd = new csDiagramCommand(stateName, doc);
- wxNode* node = selections.First();
+ wxObjectList::compatibility_iterator node = selections.GetFirst();
while (node)
{
- wxLineShape *theShape = (wxLineShape*) node->Data();
+ wxLineShape *theShape = (wxLineShape*) node->GetData();
wxLineShape *newShape = NULL;
if (state)
{
// Add arrow
- if (theShape->GetArrows().Number() == 0)
+ if (theShape->GetArrows().GetCount() == 0)
{
newShape = (wxLineShape*) theShape->CreateNewCopy();
newShape->AddArrow(ARROW_ARROW, ARROW_POSITION_MIDDLE, 10.0, 0.0, _T("Normal arrowhead"));
}
else
{
- if (theShape->GetArrows().Number() > 0)
+ if (theShape->GetArrows().GetCount() > 0)
{
newShape = (wxLineShape*) theShape->CreateNewCopy();
newShape->ClearArrowsAtPosition();
cmd->AddState(state);
}
- node = node->Next();
+ node = node->GetNext();
}
doc->GetCommandProcessor()->Submit(cmd);
}
{
wxList selections;
FindSelectedShapes(selections, CLASSINFO(wxLineShape));
- event.Enable( (selections.Number() > 0) );
+ event.Enable( (selections.GetCount() > 0) );
}
// Make the point size combobox reflect this
// Make the arrow toggle button reflect the state of the line
void csDiagramView::ReflectArrowState(wxLineShape* lineShape)
{
- bool haveArrow = FALSE;
- wxNode *node = lineShape->GetArrows().First();
+ bool haveArrow = false;
+ wxObjectList::compatibility_iterator node = lineShape->GetArrows().GetFirst();
while (node)
{
- wxArrowHead *arrow = (wxArrowHead *)node->Data();
+ wxArrowHead *arrow = (wxArrowHead *)node->GetData();
if (ARROW_POSITION_MIDDLE == arrow->GetArrowEnd())
- haveArrow = TRUE;
- node = node->Next();
+ haveArrow = true;
+ node = node->GetNext();
}
wxGetApp().GetDiagramToolBar()->ToggleTool(DIAGRAM_TOOLBAR_LINE_ARROW, haveArrow);
// Make a copy of the selections, keeping only those shapes
// that are top-level non-line shapes.
wxList selections;
- wxNode* node = GetSelectionList().First();
+ wxObjectList::compatibility_iterator node = GetSelectionList().GetFirst();
while (node)
{
- wxShape* shape = (wxShape*) node->Data();
+ wxShape* shape = (wxShape*) node->GetData();
if ((shape->GetParent() == NULL) && (!shape->IsKindOf(CLASSINFO(wxLineShape))))
{
selections.Append(shape);
}
- node = node->Next();
+ node = node->GetNext();
}
- if (selections.Number() == 0)
+ if (selections.GetCount() == 0)
return;
csDiagramDocument *doc = (csDiagramDocument *)GetDocument();
csDiagramCommand* cmd = new csDiagramCommand(_T("Align"), doc);
- node = selections.First();
- wxShape* firstShape = (wxShape*) node->Data();
+ node = selections.GetFirst();
+ wxShape* firstShape = (wxShape*) node->GetData();
double x = firstShape->GetX();
double y = firstShape->GetY();
double width, height;
firstShape->GetBoundingBoxMax(&width, &height);
- node = selections.First();
+ node = selections.GetFirst();
while (node)
{
- wxShape* shape = (wxShape*) node->Data();
+ wxShape* shape = (wxShape*) node->GetData();
if (shape != firstShape)
{
/* double x1 = */ shape->GetX();
csCommandState* state = new csCommandState(ID_CS_ALIGN, newShape, shape);
cmd->AddState(state);
}
- node = node->Next();
+ node = node->GetNext();
}
doc->GetCommandProcessor()->Submit(cmd);
}
{
// This is an approximation, since there may be lines
// amongst the selections.
- event.Enable( (m_selections.Number() > 1) ) ;
+ event.Enable( (m_selections.GetCount() > 1) ) ;
}
void csDiagramView::OnNewLinePoint(wxCommandEvent& WXUNUSED(event))
csDiagramDocument *doc = (csDiagramDocument *)GetDocument();
csDiagramCommand* cmd = new csDiagramCommand(_T("New line point"), doc);
- wxNode* node = m_selections.First();
+ wxObjectList::compatibility_iterator node = m_selections.GetFirst();
while (node)
{
- wxShape* shape = (wxShape*) node->Data();
+ wxShape* shape = (wxShape*) node->GetData();
if (shape->IsKindOf(CLASSINFO(wxLineShape)))
{
wxShape* newShape = shape->CreateNewCopy();
csCommandState* state = new csCommandState(ID_CS_NEW_POINT, newShape, shape);
cmd->AddState(state);
}
- node = node->Next();
+ node = node->GetNext();
}
doc->GetCommandProcessor()->Submit(cmd);
}
csDiagramDocument *doc = (csDiagramDocument *)GetDocument();
csDiagramCommand* cmd = new csDiagramCommand(_T("Cut line point"), doc);
- wxNode* node = m_selections.First();
+ wxObjectList::compatibility_iterator node = m_selections.GetFirst();
while (node)
{
- wxShape* shape = (wxShape*) node->Data();
+ wxShape* shape = (wxShape*) node->GetData();
if (shape->IsKindOf(CLASSINFO(wxLineShape)))
{
wxShape* newShape = shape->CreateNewCopy();
csCommandState* state = new csCommandState(ID_CS_CUT_POINT, newShape, shape);
cmd->AddState(state);
}
- node = node->Next();
+ node = node->GetNext();
}
doc->GetCommandProcessor()->Submit(cmd);
}
csDiagramDocument *doc = (csDiagramDocument *)GetDocument();
csDiagramCommand* cmd = new csDiagramCommand(_T("Straighten lines"), doc);
- wxNode* node = m_selections.First();
+ wxObjectList::compatibility_iterator node = m_selections.GetFirst();
while (node)
{
- wxShape* shape = (wxShape*) node->Data();
+ wxShape* shape = (wxShape*) node->GetData();
if (shape->IsKindOf(CLASSINFO(wxLineShape)))
{
wxShape* newShape = shape->CreateNewCopy();
csCommandState* state = new csCommandState(ID_CS_STRAIGHTEN, newShape, shape);
cmd->AddState(state);
}
- node = node->Next();
+ node = node->GetNext();
}
doc->GetCommandProcessor()->Submit(cmd);
}
{
wxList selections;
FindSelectedShapes(selections, CLASSINFO(wxLineShape));
- event.Enable( (selections.Number() > 0) );
+ event.Enable( (selections.GetCount() > 0) );
}
void csDiagramView::OnCutLinePointUpdate(wxUpdateUIEvent& event)
{
wxList selections;
FindSelectedShapes(selections, CLASSINFO(wxLineShape));
- event.Enable( (selections.Number() > 0) );
+ event.Enable( (selections.GetCount() > 0) );
}
void csDiagramView::OnStraightenLinesUpdate(wxUpdateUIEvent& event)
{
wxList selections;
FindSelectedShapes(selections, CLASSINFO(wxLineShape));
- event.Enable( (selections.Number() > 0) );
+ event.Enable( (selections.GetCount() > 0) );
}
/*
if (palette->GetSelection() == PALETTE_ARROW)
{
- GetView()->SelectAll(FALSE);
+ GetView()->SelectAll(false);
wxClientDC dc(this);
PrepareDC(dc);
min_y = wxMin(y, sg_initialY);
max_y = wxMax(y, sg_initialY);
- wxNode *node = GetDiagram()->GetShapeList()->First();
+ wxObjectList::compatibility_iterator node = GetDiagram()->GetShapeList()->GetFirst();
while (node)
{
- wxShape *shape = (wxShape *)node->Data();
+ wxShape *shape = (wxShape *)node->GetData();
if (shape->GetParent() == NULL && !shape->IsKindOf(CLASSINFO(wxControlPoint)))
{
float image_x = shape->GetX();
if (image_x >= min_x && image_x <= max_x &&
image_y >= min_y && image_y <= max_y)
{
- shape->Select(TRUE, &dc);
- GetView()->SelectShape(shape, TRUE);
+ shape->Select(true, &dc);
+ GetView()->SelectShape(shape, true);
}
}
- node = node->Next();
+ node = node->GetNext();
}
}