public void OpenQueueView(IQueue queue, bool setActiveView = true) { if (queue == null) { throw new ArgumentNullException(nameof(queue)); } ShellService.WithGlobalBusy(() => { if (!ViewService.DocumentViewExists(queue.UniqueId)) { var vm = CompositionHost.GetInstance <MessageListViewModel>(); vm.Title = Invariant($"{queue.Name}@{queue.QueueManager.Name}"); vm.UniqueId = queue.UniqueId; ViewService.AddDocumentView(vm, setActiveView); vm.StartInitialize(queue); } else { if (setActiveView) { ViewService.SetActiveDocumentView(queue.UniqueId); } } }); }
public void Run() { System.Windows.Application.Current.ShutdownMode = ShutdownMode.OnExplicitShutdown; var splash = new SplashScreenManager(); splash.Show(); InitMef(); MainController = CompositionHost.GetInstance <IApplicationController>(); IShellView shell = MainController.Run(); if (shell != null && shell is ShellWindow) { System.Windows.Application.Current.MainWindow = (ShellWindow)shell; System.Windows.Application.Current.ShutdownMode = ShutdownMode.OnMainWindowClose; System.Windows.Application.Current.MainWindow.Show(); splash.Close(); System.Windows.Application.Current.MainWindow.Activate(); } else { System.Windows.Application.Current.Shutdown(); } }
public ShellViewModel(IShellView window, IApplicationController appController) : base(window, appController) { Title = ApplicationInfo.ProductName; _settings = App.UserSettings; WeakEventManager <UserSettings, EventArgs> .AddHandler(_settings, "OnSettingsChanged", _settings_OnSettingsChanged); WeakEventManager <IViewService, EventArgs> .AddHandler(App.ViewService, "ModalOpening", Modal_Opening); WeakEventManager <IViewService, EventArgs> .AddHandler(App.ViewService, "ModalClosing", Modal_Closing); WeakEventManager <IViewService, CountEventArgs> .AddHandler(App.ViewService, "DocumentsCountChanged", Documents_CountChanged); _welcomeContent = CompositionHost.GetInstance <WelcomeViewModel>(); _mainContent = CompositionHost.GetInstance <MainViewModel>(); Content = _welcomeContent; }
public void OpenPutMessageView(QueueInfo queue) { var pmvm = CompositionHost.GetInstance <PutMessageViewModel>(); pmvm.Initialize(queue); ViewService.ShowModalView(pmvm); }
private void ShowSettings() { var svm = CompositionHost.GetInstance <SettingsViewModel>(); svm.Initialize(UserSettings); ViewService.ShowModalView(svm); }
public void OpenChannelResolveParametersView(Action <ChannelResolveParameters> callback) { var vm = CompositionHost.GetInstance <ChannelResolveParametersViewModel>(); ViewService.ShowModalView(vm, () => { if (vm.Result == MessageBoxResult.OK) { callback?.Invoke(vm.Parameters); } }); }
private void ShowParsingEditor() { if (!ViewService.DocumentViewExists(ParsingEditorViewModel.ID)) { var vm = CompositionHost.GetInstance <ParsingEditorViewModel>(); ViewService.AddDocumentView(vm, true); } else { ViewService.SetActiveDocumentView(ParsingEditorViewModel.ID); } }
public void OpenExportMessagesSettingsView(QueueInfo queue, int messagesCount, Action <string, CsvExportSettings> callback) { var vm = CompositionHost.GetInstance <ExportMessagesSettingsViewModel>(); vm.Initialize(queue, messagesCount); ViewService.ShowModalView(vm, () => { if (vm.Result == MessageBoxResult.OK) { callback?.Invoke(vm.Filename, vm.Settings); } }); }
public void OpenDumpLoadSettingsView(QueueInfo queue, Action <string, DumpLoadSettings> callback) { var vm = CompositionHost.GetInstance <DumpLoadSettingsViewModel>(); vm.Initialize(queue); ViewService.ShowModalView(vm, () => { if (vm.Result == MessageBoxResult.OK) { callback?.Invoke(vm.Filename, vm.Settings); } }); }
private void SelectQueueManagerInternal(bool remote, bool showObjectFilter, RecentQueueManagerConnection rqmc, Action <IQueueManager, IObjectNameFilter> onOk) { var oqmvm = CompositionHost.GetInstance <OpenQueueManagerViewModel>(); oqmvm.Initialize(remote, showObjectFilter, rqmc); ViewService.ShowModalView(oqmvm, () => { if (oqmvm.Result == MessageBoxResult.OK) { onOk?.Invoke(oqmvm.QueueManager, oqmvm.GetObjectNameFilter()); } }); }
private void SelectQueueInternal(IQueueManager qm, IRecentQueueConnection rqc, Action <IQueue> onOk) { var oqvm = CompositionHost.GetInstance <OpenQueueViewModel>(); oqvm.Initialize(qm); if (rqc != null) { oqvm.QueueName = rqc.QueueName; } ViewService.ShowModalView(oqvm, () => { if (oqvm.Result == MessageBoxResult.OK) { onOk?.Invoke(oqvm.SelectedQueue); } }); }
public void OpenQueueManagerView(IQueueManager qm, IObjectProvider objProvider) { if (qm == null) { throw new ArgumentNullException(nameof(qm)); } if (objProvider == null) { throw new ArgumentNullException(nameof(objProvider)); } ShellService.WithGlobalBusy(() => { var filter = objProvider.Filter; var key = string.Concat(qm.UniqueId, "!", filter.UniqueId); if (!ViewService.DocumentViewExists(key)) { var title = filter.NamePrefix == null || filter is StaticQueueList ? qm.Name : Invariant($"{qm.Name} ({filter.NamePrefix[0]}*)"); if (filter is StaticQueueList) { title = title + "(#)"; } var vm = CompositionHost.GetInstance <QueueManagerViewModel>(); vm.Title = title; vm.UniqueId = key; ViewService.AddDocumentView(vm, true); vm.StartInitialize(qm, objProvider); } else { ViewService.SetActiveDocumentView(key); } }); }
private void ShowAbout() { var svm = CompositionHost.GetInstance <AboutViewModel>(); ViewService.ShowModalView(svm); }