Skip to content

Commit

Permalink
Support for async tool window initialization (#24)
Browse files Browse the repository at this point in the history
  • Loading branch information
mattwhitfield authored Oct 29, 2022
1 parent ae68bb8 commit 2c9718a
Show file tree
Hide file tree
Showing 25 changed files with 49 additions and 115 deletions.
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
namespace VisualFindReferences.Core.Tests.Graph.Model
{
using VisualFindReferences.Core.Graph.Model;
using System;
using Xunit;
using FluentAssertions;
using NSubstitute;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
namespace VisualFindReferences.Core.Tests.Graph.Model
{
using VisualFindReferences.Core.Graph.Model;
using System;
using Xunit;
using FluentAssertions;
using System.Collections.Generic;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,8 @@
namespace VisualFindReferences.Core.Tests.Graph.Model
{
using VisualFindReferences.Core.Graph.Model;
using System;
using Xunit;
using FluentAssertions;
using NSubstitute;
using System.Windows.Media;
using VisualFindReferences.Core.Graph.Layout;
using System.Collections.Generic;
using VisualFindReferences.Core.Graph.ViewModel;
using System.Collections.ObjectModel;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,8 @@
namespace VisualFindReferences.Core.Tests.Graph.Model
{
using VisualFindReferences.Core.Graph.Model;
using System;
using Xunit;
using FluentAssertions;
using NSubstitute;
using System.Windows.Media;
using Microsoft.CodeAnalysis;
using VisualFindReferences.Core.Graph.ViewModel;

public class VFRNodeGraphTests
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
namespace VisualFindReferences.Core.Tests.Graph.View
{
using VisualFindReferences.Core.Graph.View;
using System;
using Xunit;
using FluentAssertions;
using System.ComponentModel;
using VisualFindReferences.Core.Graph.ViewModel;
using VisualFindReferences.Core.Graph.Model;

public class ConnectorViewTests
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
namespace VisualFindReferences.Core.Tests.Graph.View
{
using VisualFindReferences.Core.Graph.View;
using System;
using Xunit;
using System.Windows;
using FluentAssertions;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
namespace VisualFindReferences.Core.Tests.Graph.View
{
using VisualFindReferences.Core.Graph.View;
using System;
using Xunit;
using System.Windows;
using System.Windows.Media;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
namespace VisualFindReferences.Core.Tests.Graph.View
{
using VisualFindReferences.Core.Graph.View;
using System;
using Xunit;
using FluentAssertions;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,18 +1,11 @@
namespace VisualFindReferences.Core.Tests.Graph.View
{
using VisualFindReferences.Core.Graph.View;
using System;
using Xunit;
using FluentAssertions;
using NSubstitute;
using System.Collections.Generic;
using VisualFindReferences.Core.Graph.Model;
using VisualFindReferences.Core.Graph.Layout;
using System.Windows.Media;
using System.Windows;
using System.Windows.Input;
using System.Drawing;
using VisualFindReferences.Core.Graph.ViewModel;

public class NodeGraphViewTests
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
namespace VisualFindReferences.Core.Tests.Graph.View
{
using VisualFindReferences.Core.Graph.View;
using System;
using Xunit;
using System.Windows;
using FluentAssertions;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
namespace VisualFindReferences.Core.Tests.Graph.View
{
using VisualFindReferences.Core.Graph.View;
using System;
using Xunit;
using FluentAssertions;
using VisualFindReferences.Core.Graph.Layout;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ namespace VisualFindReferences.Core.Tests.Graph.ViewModel
using FluentAssertions;
using VisualFindReferences.Core.Graph.Model;
using System.Windows.Media;
using System;

public class ConnectorViewModelTests
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,9 @@
namespace VisualFindReferences.Core.Tests.Graph.ViewModel
{
using VisualFindReferences.Core.Graph.ViewModel;
using T = System.String;
using System;
using Xunit;
using FluentAssertions;
using System.Threading.Tasks;
using VisualFindReferences.Core.Graph.Model;
using VisualFindReferences.Core.Graph.View;
using System.Collections.ObjectModel;
using VisualFindReferences.Core.Graph.Layout;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
namespace VisualFindReferences.Core.Tests.Graph.ViewModel
{
using VisualFindReferences.Core.Graph.ViewModel;
using System;
using Xunit;
using FluentAssertions;
using VisualFindReferences.Core.Graph.View;
using VisualFindReferences.Core.Graph.Model;
using System.Collections.ObjectModel;
using System.Windows.Media;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
namespace VisualFindReferences.Core.Tests.Graph.ViewModel
{
using VisualFindReferences.Core.Graph.ViewModel;
using T = System.String;
using System;
using Xunit;
using FluentAssertions;
using System.Collections.ObjectModel;
Expand Down
3 changes: 1 addition & 2 deletions src/VisualFindReferences.Core/Graph/Model/ModelBase.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
using System;
using System.ComponentModel;
using System.ComponentModel;

namespace VisualFindReferences.Core.Graph.Model
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
using System.Windows.Media;

namespace VisualFindReferences.Core.Graph.Model.Nodes
namespace VisualFindReferences.Core.Graph.Model.Nodes
{
public class AnonymousMethodNode : VariableContainedFunctionNode
{
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
using System.Windows.Media;

namespace VisualFindReferences.Core.Graph.Model.Nodes
namespace VisualFindReferences.Core.Graph.Model.Nodes
{
public class LambdaNode : VariableContainedFunctionNode
{
Expand Down
1 change: 0 additions & 1 deletion src/VisualFindReferences.Core/Graph/Model/Nodes/VFRNode.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
using Microsoft.CodeAnalysis;
using System;
using System.Collections.Generic;
using System.Windows.Media;

Expand Down
1 change: 0 additions & 1 deletion src/VisualFindReferences.TestHarness/MainWindow.xaml.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,6 @@
{
using System;
using System.ComponentModel.Design;
using Microsoft.CodeAnalysis;
using Microsoft.CodeAnalysis.CSharp.Syntax;
using Microsoft.CodeAnalysis.FindSymbols;
using Microsoft.CodeAnalysis.Text;
using Microsoft.VisualStudio.Shell;
using VisualFindReferences;
using VisualFindReferences.Helper;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
using Microsoft.CodeAnalysis;
using Microsoft.VisualStudio.Text.Editor;
using Microsoft.VisualStudio.Text.Editor;

namespace VisualFindReferences.Views
{
Expand Down
31 changes: 9 additions & 22 deletions src/VisualFindReferences/Views/VisualFindReferencesHost.xaml.cs
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
namespace VisualFindReferences.Views
{
using Microsoft.CodeAnalysis;
using Microsoft.VisualStudio.ComponentModelHost;
using Microsoft.VisualStudio.LanguageServices;
using Microsoft.VisualStudio.Shell;
using Microsoft.VisualStudio.TextManager.Interop;
using System;
using System.Collections.Generic;
using System.Linq;
Expand All @@ -20,19 +16,25 @@
using VisualFindReferences.Core.Graph.View;
using VisualFindReferences.Core.Graph.ViewModel;
using VisualFindReferences.Helper;
using VisualFindReferences.Options;

/// <summary>
/// Interaction logic for VisualFindReferencesHost.xaml
/// </summary>
public partial class VisualFindReferencesHost : UserControl
{
private VisualFindReferencesPackage _package;

public VisualFindReferencesHost()
public VisualFindReferencesHost(GeneralOptions options)
{
InitializeComponent();
Model = new VFRNodeGraph();
MainDisplay.DataContext = FilteringDisplay.DataContext = ViewModel = Model.ViewModel as VFRNodeGraphViewModel;

ViewModel.DoubleClickAction = options.DefaultDoubleClickAction;
ViewModel.ProjectFilterMatchPattern = options.DefaultProjectFilter;
ViewModel.LayoutType = options.DefaultLayoutAlgorithmType;
ViewModel.AutoFitToDisplay = options.DefaultFitToDisplay;

SetMenuChecks();
}

public VFRNodeGraphViewModel ViewModel { get; }
Expand Down Expand Up @@ -132,21 +134,6 @@ private ICommand GetDeleteCommand(Node node)
return new RelayCommand(() => Model.Nodes.Remove(node));
}

internal void SetPackage(VisualFindReferencesPackage visualFindReferencesPackage)
{
var packageWasNull = _package == null;
_package = visualFindReferencesPackage;
if (packageWasNull)
{
var options = _package.Options;
ViewModel.DoubleClickAction = options.DefaultDoubleClickAction;
ViewModel.ProjectFilterMatchPattern = options.DefaultProjectFilter;
ViewModel.LayoutType = options.DefaultLayoutAlgorithmType;
ViewModel.AutoFitToDisplay = options.DefaultFitToDisplay;
SetMenuChecks();
}
}

private void SetMenuChecks()
{
var doubleClickMenu = (ContextMenu)FindResource("DoubleClickActionContextMenu");
Expand Down
17 changes: 8 additions & 9 deletions src/VisualFindReferences/Views/VisualFindReferencesToolWindow.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,20 +15,24 @@
using VisualFindReferences.Core.Graph.Model.Nodes;
using VisualFindReferences.Core.Graph.ViewModel;
using VisualFindReferences.Helper;
using VisualFindReferences.Options;

namespace VisualFindReferences.Views
{
[Guid("f27b912a-9ce0-4e68-a8db-cdd2516793cd")]
[Guid(ToolWindowGuid)]
internal class VisualFindReferencesToolWindow : ToolWindowPane, IVisualFindReferencesToolWindow
{
public const string ToolWindowGuid = "f27b912a-9ce0-4e68-a8db-cdd2516793cd";
public const string Title = "Visual Find References";

private readonly VisualFindReferencesHost _host;

public VisualFindReferencesToolWindow() :
public VisualFindReferencesToolWindow(GeneralOptions options) :
base(null)
{
Caption = "Visual Find References";
Caption = Title;

base.Content = _host = new VisualFindReferencesHost();
base.Content = _host = new VisualFindReferencesHost(options);
}

public void Clear()
Expand Down Expand Up @@ -98,10 +102,5 @@ async Task<FoundReferences> FindReferencesAsync(Action<string> updateText, NodeG

_host.ViewModel.RunAction(FindReferencesAsync, SymbolProcessor.ProcessFoundReferences);
}

internal void SetPackage(VisualFindReferencesPackage visualFindReferencesPackage)
{
_host.SetPackage(visualFindReferencesPackage);
}
}
}
Loading

0 comments on commit 2c9718a

Please sign in to comment.