예제 #1
0
 public static void BrowseInteractions(IEnumerable<TypeInfo> types, bool drawGraph)
 {
     var window = new InteractionBrowserWindow(types, drawGraph);
     #if ILSpy
     window.Owner = MainWindow;
     #elif Reflector
     System.Windows.Forms.Integration.ElementHost.EnableModelessKeyboardInterop(window);
     #endif
     window.Show();
 }
        public void Execute(SharpTreeNode[] selectedNodes)
        {
            var types = selectedNodes
                .OfType<TypeTreeNode>()
                .Select(n => HAL.Converter.Type(n.TypeDefinition))
                .ToArray();

            var window = new InteractionBrowserWindow(types, true)
            {
                Owner = MainWindow.Instance
            };
            window.Show();
        }
        public void Execute(object parameter)
        {
            var selectedNodes = MainWindow.Instance.SelectedNodes;

            var types = selectedNodes
                .OfType<TypeTreeNode>()
                .Select(n => HAL.Converter.Type(n.TypeDefinition))
                .ToArray();
            if (types.Length == 0)
            {
                MessageBox.Show("Please select one or more types in the tree.", "Assembly Visualizer");
                return;
            }

            var window = new InteractionBrowserWindow(types, false)
            {
                Owner = MainWindow.Instance
            };
            window.Show();
        }
예제 #4
0
        private void BrowseInteractionsHandler(object sender, EventArgs e)
        {
            var item = _assemblyBrowser.ActiveItem as ITypeDeclaration;

            var window = new InteractionBrowserWindow(new [] { HAL.Converter.Type(item) }, true);
            System.Windows.Forms.Integration.ElementHost.EnableModelessKeyboardInterop(window);
            window.Show();
        }
예제 #5
0
 public static void AddInteractionBrowser(InteractionBrowserWindow window)
 {
     _interactionBrowsers.Add(window);
 }
예제 #6
0
 public static void RemoveInteractionBrowser(InteractionBrowserWindow window)
 {
     _interactionBrowsers.Remove(window);
     ClearCacheIfPossible();
     GC.Collect();
 }