Example #1
0
        /// <summary>
        /// Standard constructor for the tool window.
        /// </summary>
        public JsParserToolWindow()
            : base(null)
        {
            // Set the window title reading it from the resources.
            this.Caption = Resources.Resources.ToolWindowTitle;
            // Set the image that will appear on the tab of the window frame
            // when docked with an other window
            // The resource ID correspond to the one defined in the resx file
            // while the Index is the offset in the bitmap strip. Each image in
            // the strip being 16x16.
            this.BitmapResourceID = 301;
            this.BitmapIndex = 0;

            //Force load of a referenced assembly - this is workaround of bug when sometimes WPF cant load it and throws an exception.
            Assembly.Load(typeof(NavigationTreeView).Assembly.FullName);

            // This is the user control hosted by the tool window; Note that, even if this class implements IDisposable,
            // we are not calling Dispose on this object. This is because ToolWindowPane calls Dispose on
            // the object returned by the Content property.

            base.Content = new JsParserNavTreeHolder();

            _navigationTreeView = (NavigationTreeView)((WindowsFormsHost)(((Panel)(((JsParserNavTreeHolder)Content).Content)).Children[0])).Child;
        }
 public void PerformInitialParsing(NavigationTreeView navTree = null)
 {
     if (navTree == null)
     {
         navTree = _findWindowDelegate().NavigationTreeView;
     }
     if (navTree != null)
     {
         navTree.InitColors(_uiThemeProvider);
     }
     if (_jsParserService.Code != null)
     {
         var result = _jsParserService.Process(_jsParserService.Code, skipHashCheck: true);
         if (navTree != null)
         {
             navTree.UpdateTree(result, _jsParserService.Code);
         }
     }
 }