Browse Source

UnpinnedAssemblies collection as unpersisted version of MainAssemblyList in IClassBrowser.

pull/80/head
Andreas Weizel 13 years ago
parent
commit
3a7242074a
  1. 5
      src/Main/Base/Project/Dom/ClassBrowser/ClassBrowserTreeView.cs
  2. 1
      src/Main/Base/Project/Dom/ClassBrowser/IClassBrowser.cs
  3. 19
      src/Main/Base/Project/Dom/ClassBrowser/WorkspaceModel.cs
  4. 2
      src/Main/Base/Project/Dom/ClassBrowser/WorkspaceTreeNode.cs
  5. 5
      src/Main/SharpDevelop/Dom/ClassBrowser/ClassBrowserPad.cs

5
src/Main/Base/Project/Dom/ClassBrowser/ClassBrowserTreeView.cs

@ -24,6 +24,11 @@ namespace ICSharpCode.SharpDevelop.Dom.ClassBrowser
set { workspace.MainAssemblyList = value; } set { workspace.MainAssemblyList = value; }
} }
public IAssemblyList UnpinnedAssemblies {
get { return workspace.UnpinnedAssemblies; }
set { workspace.UnpinnedAssemblies = value; }
}
public IAssemblyModel FindAssemblyModel(FileName fileName) public IAssemblyModel FindAssemblyModel(FileName fileName)
{ {
return workspace.FindAssemblyModel(fileName); return workspace.FindAssemblyModel(fileName);

1
src/Main/Base/Project/Dom/ClassBrowser/IClassBrowser.cs

@ -10,6 +10,7 @@ namespace ICSharpCode.SharpDevelop.Dom.ClassBrowser
public interface IClassBrowser public interface IClassBrowser
{ {
IAssemblyList MainAssemblyList { get; set; } IAssemblyList MainAssemblyList { get; set; }
IAssemblyList UnpinnedAssemblies { get; set; }
ICollection<IAssemblyList> AssemblyLists { get; } ICollection<IAssemblyList> AssemblyLists { get; }
IAssemblyModel FindAssemblyModel(FileName fileName); IAssemblyModel FindAssemblyModel(FileName fileName);
} }

19
src/Main/Base/Project/Dom/ClassBrowser/WorkspaceModel.cs

@ -21,6 +21,7 @@ namespace ICSharpCode.SharpDevelop.Dom.ClassBrowser
} }
IAssemblyList mainAssemblyList; IAssemblyList mainAssemblyList;
IAssemblyList unpinnedAssemblies;
public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
@ -43,6 +44,18 @@ namespace ICSharpCode.SharpDevelop.Dom.ClassBrowser
} }
} }
public IAssemblyList UnpinnedAssemblies {
get {
return unpinnedAssemblies;
}
set {
if (unpinnedAssemblies != value) {
unpinnedAssemblies = value;
OnPropertyChanged();
}
}
}
public IAssemblyModel FindAssemblyModel(FileName fileName) public IAssemblyModel FindAssemblyModel(FileName fileName)
{ {
foreach (var list in assemblyLists) { foreach (var list in assemblyLists) {
@ -50,13 +63,17 @@ namespace ICSharpCode.SharpDevelop.Dom.ClassBrowser
if (model != null) if (model != null)
return model; return model;
} }
return mainAssemblyList.Assemblies.FirstOrDefault(m => m.Location == fileName); var modelInMainAssemblyList = mainAssemblyList.Assemblies.FirstOrDefault(m => m.Location == fileName);
if (modelInMainAssemblyList != null)
return modelInMainAssemblyList;
return unpinnedAssemblies.Assemblies.FirstOrDefault(m => m.Location == fileName);
} }
public WorkspaceModel() public WorkspaceModel()
{ {
this.assemblyLists = new SimpleModelCollection<IAssemblyList>(); this.assemblyLists = new SimpleModelCollection<IAssemblyList>();
this.MainAssemblyList = new AssemblyList(); this.MainAssemblyList = new AssemblyList();
this.UnpinnedAssemblies = new AssemblyList();
} }
} }
} }

2
src/Main/Base/Project/Dom/ClassBrowser/WorkspaceTreeNode.cs

@ -54,7 +54,7 @@ namespace ICSharpCode.SharpDevelop.Dom.ClassBrowser
} }
protected override IModelCollection<object> ModelChildren { protected override IModelCollection<object> ModelChildren {
get { return workspace.MainAssemblyList.Assemblies; } get { return workspace.MainAssemblyList.Assemblies.Concat(workspace.UnpinnedAssemblies.Assemblies); }
} }
protected override IComparer<SharpTreeNode> NodeComparer { protected override IComparer<SharpTreeNode> NodeComparer {

5
src/Main/SharpDevelop/Dom/ClassBrowser/ClassBrowserPad.cs

@ -88,6 +88,11 @@ namespace ICSharpCode.SharpDevelop.Dom.ClassBrowser
set { treeView.MainAssemblyList = value; } set { treeView.MainAssemblyList = value; }
} }
public IAssemblyList UnpinnedAssemblies {
get { return treeView.UnpinnedAssemblies; }
set { treeView.UnpinnedAssemblies = value; }
}
public IAssemblyModel FindAssemblyModel(FileName fileName) public IAssemblyModel FindAssemblyModel(FileName fileName)
{ {
return treeView.FindAssemblyModel(fileName); return treeView.FindAssemblyModel(fileName);

Loading…
Cancel
Save