Browse Source

Added clearing features for the class canvas and diagram router.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@2401 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Itar Bar-Haim 19 years ago
parent
commit
a885b558f3
  1. 12
      src/AddIns/DisplayBindings/ClassDiagram/ClassCanvas/Src/ClassCanvas.cs
  2. 11
      src/AddIns/DisplayBindings/ClassDiagram/DiagramRouter/DiagramRouter.cs

12
src/AddIns/DisplayBindings/ClassDiagram/ClassCanvas/Src/ClassCanvas.cs

@ -489,6 +489,16 @@ namespace ClassDiagram
LayoutChanged(this, EventArgs.Empty); LayoutChanged(this, EventArgs.Empty);
} }
public void ClearCanvas()
{
itemsList.Clear();
classesToData.Clear();
itemsList.Clear();
dragItemNode = null;
hoverItemNode = null;
diagramRouter.Clear();
}
/// <summary> /// <summary>
/// Retruns a copy of the the canvas items list as an array. /// Retruns a copy of the the canvas items list as an array.
/// </summary> /// </summary>
@ -592,6 +602,8 @@ namespace ClassDiagram
{ {
if (pc == null) return; if (pc == null) return;
if (doc == null) return; if (doc == null) return;
ClearCanvas();
XPathNavigator nav = doc.CreateNavigator(); XPathNavigator nav = doc.CreateNavigator();
XPathNodeIterator ni = nav.Select(@"/ClassDiagram/Class | /ClassDiagram/Struct | /ClassDiagram/Enum | /ClassDiagram/Interface | /ClassDiagram/Delegate"); XPathNodeIterator ni = nav.Select(@"/ClassDiagram/Class | /ClassDiagram/Struct | /ClassDiagram/Enum | /ClassDiagram/Interface | /ClassDiagram/Delegate");
while (ni.MoveNext()) while (ni.MoveNext())

11
src/AddIns/DisplayBindings/ClassDiagram/DiagramRouter/DiagramRouter.cs

@ -117,6 +117,17 @@ namespace Tools.Diagrams
routes.Remove(route); routes.Remove(route);
} }
public void Clear()
{
routes.Clear();
rects.Clear();
}
public void ClearRoutes()
{
routes.Clear();
}
private DependencyTree<IRectangleSizeDecorator> BuildDependenciesTree () private DependencyTree<IRectangleSizeDecorator> BuildDependenciesTree ()
{ {
DependencyTree<IRectangleSizeDecorator> deps = new DependencyTree<IRectangleSizeDecorator>(); DependencyTree<IRectangleSizeDecorator> deps = new DependencyTree<IRectangleSizeDecorator>();

Loading…
Cancel
Save