public async Task ExecuteRestartMainWindowAsync_RestartMainWindow_Correct()
        {
            var initTrigger = false;
            var showTrigger = false;

            A.CallTo(() => _settingsService.GetByUserIdAsync(A <int> .Ignored)).Returns(new SettingsModel {
                Language = Language.English
            });
            A.CallTo(() => _authorizationService.GetCurrentUser()).Returns(new UserModel {
                Id = 10
            });

            var mainWindow = A.Fake <MainWindow>();

            A.CallTo(() => mainWindow.InitAsync()).Invokes(() => initTrigger  = true);
            A.CallTo(() => mainWindow.ShowWindow()).Invokes(() => showTrigger = true);

            A.CallTo(() => _windowFactory.Create <MainWindow>()).Returns(mainWindow);

            await _settingsViewModel.ExecuteRestartMainWindowAsync(new object());

            A.CallTo(() => _settingsHelper.SetLanguage(A <SettingsModel> .Ignored)).MustHaveHappened();
            A.CallTo(() => _windowFactory.Close <MainWindow>()).MustHaveHappened();
            A.CallTo(() => _windowFactory.Create <MainWindow>()).MustHaveHappened();
            Assert.IsTrue(initTrigger);
            Assert.IsTrue(showTrigger);
        }
        public async Task CreateMainWindowAsync()
        {
            var settings = await _settingsService.GetByUserIdAsync(_authorizationService.GetCurrentUser().Id);

            _settingsHelper.SetLanguage(settings);
            _settingsHelper.SetTheme(settings);

            var mainWindow = _windowFactory.Create <MainWindow>();
            await mainWindow.InitAsync();

            mainWindow.ShowWindow();
        }
Exemplo n.º 3
0
        public INewTabHost <Window> GetNewHost(IInterTabClient interTabClient, object partition, TabablzControl source)
        {
            var window = _factory.Create();


            return(new NewTabHost <Window>(window, window.InitialTabablzControl));
        }
Exemplo n.º 4
0
        public T Open <T>() where T : class, IWindowController
        {
            var window = _factory.Create <T>();

            if (window == null)
            {
                return(null);
            }

            window.Owner.SetParent(_root.Root, false);

            //TODO: add modal, single types
            if (window.Mode == WindowMode.Single)
            {
                _windows.Add(window);
                window.Open();
            }
            else if (window.Mode == WindowMode.Modal)
            {
                _modalWindow?.Close();
                _modalWindow = window;
                window.Open();
            }

            WindowOpen?.Invoke(window);

            return(window);
        }
        protected override void OnStartup(StartupEventArgs e)
        {
            base.OnStartup(e);

            var window = _windowFactory.Create <TawEditorWindow, ITawEditorWindowViewModel>();

            window.Show();
        }
Exemplo n.º 6
0
        public void Restore([NotNull] XElement element)
        {
            if (element == null)
            {
                throw new ArgumentNullException(nameof(element));
            }

            element.Elements(XmlStructure.ShellNode.Shells)
            .SelectMany(shells => shells.Elements(XmlStructure.ShellNode.Shell))
            .Select((shellState, index) =>
            {
                var winState = shellState.ElementOrThrow(XmlStructure.ShellNode.WindowsState).ParseEnum <WindowState>().Value;
                var top      = shellState.ElementOrThrow(XmlStructure.ShellNode.Top).ParseDouble().Value;
                var left     = shellState.ElementOrThrow(XmlStructure.ShellNode.Left).ParseDouble().Value;
                var width    = shellState.ElementOrThrow(XmlStructure.ShellNode.Width).ParseDouble().Value;
                var height   = shellState.ElementOrThrow(XmlStructure.ShellNode.Height).ParseDouble().Value;

                var main   = Application.Current.Windows.OfType <MainWindow>().First();
                var window = index == 0 ? main : _windowFactory.Create();

                window.WindowStartupLocation = WindowStartupLocation.Manual;
                window.WindowState           = winState;
                window.Left   = left;
                window.Top    = top;
                window.Width  = width;
                window.Height = height;

                window.Show();
                return(new { window, shellState });
            })
            .ForEach(x =>
            {
                RestoreBranches(x.window, x.shellState);

                if (_generalOptionsViewModel.OpenRecentOnStartup)
                {
                    RestoreChildren(x.window, x.shellState);
                }
            });
        }