Example #1
0
        private IWindow CreateToolWindow(IDockableUserControl control)
        {
            IWindow toolWindow;

            try
            {
                var info = _vbe.Windows.CreateToolWindow(_addin, _DockableWindowHost.RegisteredProgId, control.Caption, control.ClassId);
                _userControlObject = info.UserControl;
                toolWindow         = info.ToolWindow;
            }
            catch (COMException exception)
            {
                Logger.Error(exception);
                throw;
            }
            catch (NullReferenceException exception)
            {
                Logger.Error(exception);
                throw;
            }

            var userControlHost = (_DockableWindowHost)_userControlObject;

            toolWindow.IsVisible = true; //window resizing doesn't work without this

            EnsureMinimumWindowSize(toolWindow);

            toolWindow.IsVisible = _settings != null && _settings.IsWindowVisible(this);

            userControlHost.AddUserControl(control as UserControl, new IntPtr(_vbe.MainWindow.HWnd));
            return(toolWindow);
        }
Example #2
0
 protected DockablePresenterBase(VBE vbe, AddIn addin, IDockableUserControl control)
 {
     _vbe        = vbe;
     _addin      = addin;
     UserControl = control as UserControl;
     _window     = CreateToolWindow(control);
 }
Example #3
0
        private Window CreateToolWindow(IDockableUserControl view)
        {
            Window toolWindow;

            try
            {
                object control = null;
                toolWindow         = _vbe.Windows.CreateToolWindow(_addin, _DockableWindowHost.ProgId, view.Caption, view.ClassId, ref control);
                _userControlObject = control;
            }
            catch (COMException exception)
            {
                Debug.WriteLine(exception);
                throw;
            }

            var userControlHost = (_DockableWindowHost)_userControlObject;

            toolWindow.Visible = true; //window resizing doesn't work without this

            EnsureMinimumWindowSize(toolWindow);

            toolWindow.Visible = true; // here Rubberduck checks window settings to show toolwindow at startup

            userControlHost.AddUserControl(view as UserControl, new IntPtr(_vbe.MainWindow.HWnd));
            return(toolWindow);
        }
        private Window CreateToolWindow(IDockableUserControl control)
        {
            object userControlObject = null;
            Window toolWindow;
            try
            {
                _logger.Trace("Loading \"{0}\" ClassId {1}", control.Caption, control.ClassId);
                toolWindow = _vbe.Windows.CreateToolWindow(_addin, _DockableWindowHost.RegisteredProgId,
                    control.Caption, control.ClassId, ref userControlObject);
            }
            catch (COMException exception)
            {
                var logEvent = new LogEventInfo(LogLevel.Error, _logger.Name, "Error Creating Control");
                logEvent.Exception = exception;
                logEvent.Properties.Add("EventID", 1);

                _logger.Error(logEvent);
                return null; //throw;
            }
            catch (NullReferenceException exception)
            {
                Debug.Print(exception.ToString());
                return null; //throw;
            }

            var userControlHost = (_DockableWindowHost)userControlObject;
            toolWindow.Visible = true; //window resizing doesn't work without this

            EnsureMinimumWindowSize(toolWindow);

            toolWindow.Visible = false; //hide it again

            userControlHost.AddUserControl(control as UserControl);
            return toolWindow;
        }
Example #5
0
 public DockableToolwindowPresenter(VBE vbe, AddIn addin, IDockableUserControl view)
 {
     _vbe        = vbe;
     _addin      = addin;
     UserControl = view;
     _window     = CreateToolWindow(view);
 }
Example #6
0
        private IWindow CreateToolWindow(IDockableUserControl control)
        {
            IWindow toolWindow;

            try
            {
                using (var windows = _vbe.Windows)
                {
                    var info = windows.CreateToolWindow(_addin, RubberduckProgId.DockableWindowHostProgId, control.Caption, control.ClassId);
                    _userControlObject = info.UserControl;
                    toolWindow         = info.ToolWindow;
                }
            }
            catch (COMException exception)
            {
                Logger.Error(exception);
                throw;
            }
            catch (NullReferenceException exception)
            {
                Logger.Error(exception);
                throw;
            }

            toolWindow.IsVisible = true; //window resizing doesn't work without this
            EnsureMinimumWindowSize(toolWindow);
            toolWindow.IsVisible = _settings != null && _settings.IsWindowVisible(this);

            // currently we always inject _DockableToolWindowHost from Rubberduck.Main.
            // that method is not exposed in any of the interfaces we know, though, so we need to invoke it blindly
            ((dynamic)_userControlObject).AddUserControl(control as UserControl, new IntPtr(_vbe.MainWindow.HWnd));

            return(toolWindow);
        }
 protected DockablePresenterBase(VBE vbe, AddIn addin, IDockableUserControl control)
 {
     _vbe = vbe;
     _addin = addin;
     UserControl = control as UserControl;
     _window = CreateToolWindow(control);
 }
        public ImplementationsListDockablePresenter(IVBE vbe, IAddIn addin, IDockableUserControl control, ISelectionService selectionService, IEnumerable <Declaration> implementations)
            : base(vbe, addin, control, null)
        {
            _selectionService = selectionService;

            BindTarget(implementations);
        }
Example #9
0
        public ImplementationsListDockablePresenter(IVBE vbe, IAddIn addin, IDockableUserControl control, IProjectsProvider projectsProvider, IEnumerable <Declaration> implementations)
            : base(vbe, addin, control, null)
        {
            _projectsProvider = projectsProvider;

            BindTarget(implementations);
        }
Example #10
0
 protected DockableToolwindowPresenter(VBE vbe, AddIn addin, IDockableUserControl view)
 {
     _vbe   = vbe;
     _addin = addin;
     Logger.Trace(string.Format("Initializing Dockable Panel ({0})", GetType().Name));
     UserControl = view as UserControl;
     _window     = CreateToolWindow(view);
 }
 protected DockableToolwindowPresenter(VBE vbe, AddIn addin, IDockableUserControl view)
 {
     _vbe = vbe;
     _addin = addin;
     _logger = LogManager.GetCurrentClassLogger();
     _logger.Trace(string.Format("Initializing Dockable Panel ({0})", GetType().Name));
     UserControl = view as UserControl;
     _window = CreateToolWindow(view);
 }
        public TestExplorerDockablePresenter(VBE vbe, AddIn addin, IDockableUserControl control, ITestEngine testEngine)
            : base(vbe, addin, control)
        {
            _testEngine = testEngine;

            _testEngine.ModuleInitialize += _testEngine_ModuleInitialize;
            _testEngine.ModuleCleanup    += _testEngine_ModuleCleanup;
            _testEngine.MethodInitialize += TestEngineMethodInitialize;
            _testEngine.MethodCleanup    += TestEngineMethodCleanup;

            RegisterTestExplorerEvents();
        }
        private readonly WindowSettings _settings;  //Storing this really doesn't matter - it's only checked on startup and never persisted.

        protected DockableToolwindowPresenter(IVBE vbe, IAddIn addin, IDockableUserControl view, IConfigProvider <WindowSettings> settingsProvider)
        {
            _vbe   = vbe;
            _addin = addin;
            Logger.Trace($"Initializing Dockable Panel ({GetType().Name})");
            UserControl = view as UserControl;
            if (settingsProvider != null)
            {
                _settings = settingsProvider.Create();
            }
            _window = CreateToolWindow(view);
        }
Example #14
0
        private Window CreateToolWindow(IDockableUserControl control)
        {
            object userControlObject = null;
            var    toolWindow        = _vbe.Windows.CreateToolWindow(_addin, DockableWindowHost.RegisteredProgId, control.Caption, control.ClassId, ref userControlObject);

            var userControlHost = (DockableWindowHost)userControlObject;

            toolWindow.Visible = true; //window resizing doesn't work without this

            EnsureMinimumWindowSize(toolWindow);

            userControlHost.AddUserControl(control as UserControl);
            return(toolWindow);
        }
        private Window CreateToolWindow(IDockableUserControl control)
        {
            object userControlObject = null;
            Window toolWindow;

            try
            {
                _logger.Trace("Loading \"{0}\" ClassId {1}", control.Caption, control.ClassId);
                toolWindow = _vbe.Windows.CreateToolWindow(_addin, _DockableWindowHost.RegisteredProgId,
                                                           control.Caption, control.ClassId, ref userControlObject);
            }
            catch (COMException exception)
            {
                var logEvent = new LogEventInfo(LogLevel.Error, _logger.Name, "Error Creating Control");
                logEvent.Exception = exception;
                logEvent.Properties.Add("EventID", 1);

                _logger.Error(logEvent);
                return(null); //throw;
            }
            catch (NullReferenceException exception)
            {
                _logger.Error(exception);
                return(null); //throw;
            }

            var userControlHost = (_DockableWindowHost)userControlObject;

            toolWindow.Visible = true; //window resizing doesn't work without this

            EnsureMinimumWindowSize(toolWindow);

            toolWindow.Visible = false; //hide it again

            userControlHost.AddUserControl(control as UserControl);
            return(toolWindow);
        }
        private Window CreateToolWindow(IDockableUserControl control)
        {
            object userControlObject = null;
            Window toolWindow;
            try
            {
                toolWindow = _vbe.Windows.CreateToolWindow(_addin, _DockableWindowHost.RegisteredProgId,
                    control.Caption, control.ClassId, ref userControlObject);
            }
            catch (COMException)
            {
                toolWindow = _vbe.Windows.CreateToolWindow(_addin, _DockableWindowHost.RegisteredProgId,
                    control.Caption, control.ClassId, ref userControlObject);
            }
            var userControlHost = (_DockableWindowHost)userControlObject;
            toolWindow.Visible = true; //window resizing doesn't work without this

            EnsureMinimumWindowSize(toolWindow);

            toolWindow.Visible = false; //hide it again

            userControlHost.AddUserControl(control as UserControl);
            return toolWindow;
        }
 public SearchResultsDockablePresenter(IVBE vbe, IAddIn addin, IDockableUserControl view)
     : base(vbe, addin, view, null)
 {
 }
Example #18
0
 public SourceControlDockablePresenter(VBE vbe, AddIn addin, IDockableUserControl window)
     : base(vbe, addin, window)
 {
 }
 public SearchResultsDockablePresenter(VBE vbe, AddIn addin, IDockableUserControl view) 
     : base(vbe, addin, view)
 {
 }
 public CodeInspectionsDockablePresenter(VBE vbe, AddIn addin, IDockableUserControl window)
     :base(vbe, addin, window)
 {
 }
 public ToDoExplorerDockablePresenter(VBE vbe, AddIn addin, IDockableUserControl window)
     : base(vbe, addin, window)
 {
 }
 public TestExplorerDockablePresenter(Parser parser, VBE vbe, AddIn addin, IDockableUserControl control)
     : base(vbe, addin, control)
 {
     _parser = parser;
     RegisterTestExplorerEvents();
 }
 public TestExplorerDockablePresenter(VBE vbe, AddIn addin, IDockableUserControl view)
     : base(vbe, addin, view)
 {
 }
 public SourceControlDockablePresenter(VBE vbe, AddIn addin, IDockableUserControl window)
     : base(vbe, addin, window)
 {
 }
Example #25
0
 public CodeExplorerDockablePresenter(VBE vbe, AddIn addIn, IDockableUserControl view)
     : base(vbe, addIn, view)
 {
 }
Example #26
0
 public CodeInspectionsDockablePresenter(VBE vbe, AddIn addin, IDockableUserControl window)
     : base(vbe, addin, window)
 {
 }
 public ToDoExplorerDockablePresenter(VBE vbe, AddIn addin, IDockableUserControl window)
     : base(vbe, addin, window)
 {
 }