[UsedImplicitly] // by ninject public GuiLoader( Loader loader, CardRepository repo, NewsService newsService, DownloaderSubsystem downloaderSubsystem, DeckListModel deckListModel, DeckSearcher deckSearcher, DeckIndexUpdateSubsystem deckIndexUpdateSubsystem) { _loader = loader; _repo = repo; _loader.AddAction(newsService.FetchNews); _loader.AddAction(downloaderSubsystem.CalculateProgress); _loader.AddTask(async() => { deckListModel.Load(); if (deckSearcher.IsIndexSaved) { deckSearcher.LoadIndexes(); } else { while (!_repo.IsPriceLoadingComplete) { await TaskEx.Delay(100); } deckSearcher.LoadIndexes(); } }); }
[UsedImplicitly] // by ninject public GuiLoader( Loader loader, CardRepository repo, PriceRepository priceRepo, NewsService newsService, DownloaderSubsystem downloaderSubsystem, DeckListModel deckListModel, DeckSearcher deckSearcher, DeckIndexUpdateSubsystem deckIndexUpdateSubsystem) { _loader = loader; _repo = repo; _priceRepo = priceRepo; _loader.AddTask(newsService.FetchNews); _loader.AddTask(token => downloaderSubsystem.CalculateProgress()); _loader.AddTask(async token => { deckListModel.Load(); if (deckSearcher.IsIndexSaved) { deckSearcher.LoadIndexes(); await _priceRepo.IsLoadingPriceComplete.Wait(token); } else { await _priceRepo.IsLoadingPriceComplete.Wait(token); deckSearcher.LoadIndexes(); } deckIndexUpdateSubsystem.SubscribeToEvents(); deckListModel.FillCardNames(); deckListModel.SubscribeToEvents(); }); }
public GuiLoader( Loader loader, NewsService newsService, DownloaderSubsystem downloaderSubsystem, DeckListModel deckListModel) { _loader = loader; _deckListModel = deckListModel; _loader.Add(newsService.FetchNews); _loader.Add(downloaderSubsystem.CalculateProgress); }
[UsedImplicitly] // by ninject public GuiLoader( Loader loader, CardRepository repo, CardRepository42 repo42, CardRepositoryLegacy repoLegacy, NewsService newsService, DownloaderSubsystem downloaderSubsystem, DeckListModel deckListModel, DeckListLegacyConverter deckListConverter, HistoryLegacyConverter historyConverter, DeckSearcher deckSearcher) { _loader = loader; _repo = repo; _repo42 = repo42; _repoLegacy = repoLegacy; _deckListConverter = deckListConverter; _historyConverter = historyConverter; _loader.AddAction(newsService.FetchNews); _loader.AddAction(downloaderSubsystem.CalculateProgress); _loader.AddTask(async() => { if (deckListConverter.IsLegacyConversionRequired) { while (!deckListConverter.IsConversionCompleted) { await TaskEx.Delay(100); } } deckListModel.Load(); if (deckSearcher.IsIndexSaved) { deckSearcher.LoadIndexes(); } else { while (!_repo.IsPriceLoadingComplete) { await TaskEx.Delay(100); } deckSearcher.LoadIndexes(); } }); }
public FormRoot(Func <FormMain> formMainFactory, DownloaderSubsystem downloaderSubsystem, NewsService newsService, CardSuggestModel cardSuggestModel, DeckSuggestModel deckSuggestModel, [Named(GuiModule.DefaultTooltipScope)] TooltipController tooltipController, [Named(GuiModule.QuickFilterTooltipScope)] TooltipController quickFilterTooltipController, CardRepository repo, DeckSerializationSubsystem serialization, UiModel uiModel, ColorSchemeEditor colorSchemeEditor, App app, AppSourceConfig appSourceConfig, UiConfigRepository uiConfigRepository) : this() { TooltipController = tooltipController; QuickFilterTooltipController = quickFilterTooltipController; UiModel = uiModel; DeckSuggestModel = deckSuggestModel; CardSuggestModel = cardSuggestModel; CardSuggestModel.Ui = UiModel; _app = app; _appSourceConfig = appSourceConfig; _uiConfigRepository = uiConfigRepository; _repo = repo; _serialization = serialization; _colorSchemeEditor = colorSchemeEditor; _formMainFactory = formMainFactory; _downloaderSubsystem = downloaderSubsystem; _newsService = newsService; KeyPreview = true; PreviewKeyDown += previewKeyDown; KeyDown += formKeyDown; QueryHandleDrag += queryHandleDrag; Load += load; Closed += closed; _tabs.AllowDrop = true; _tabs.TabAdded += tabCreated; _tabs.TabRemoving += tabClosing; _tabs.TabRemoved += tabClosed; _tabs.SelectedIndexChanging += selectedTabChanging; _tabs.SelectedIndexChanged += selectedTabChanged; _tabs.DragOver += tabsDragOver; _tabs.MouseEnter += tabMouseEnter; _tabs.MouseEnter += tabMouseLeave; _tabs.MouseMove += tabMouseMove; MessageFilter.Instance.GlobalMouseMove += globalMouseMove; FormClosing += formClosing; _newsService.NewsFetched += newsFetched; _newsService.NewsDisplayed += newsDisplayed; _downloaderSubsystem.ProgressCalculated += downloaderProgressCalculated; setupExternalLinks(); setupButtonClicks(); setupLanguageMenu(); setupTooltips(); foreach (var button in _deckButtons) { button.Enabled = false; } Text = $"Mtgdb.Gui v{AppDir.GetVersion()}"; scale(); updateFormBorderColor(); ColorSchemeController.SystemColorsChanging += updateFormBorderColor; _menuColors.BackColor = SystemColors.Control; _menuColors.ForeColor = SystemColors.ControlText; if (components == null) { components = new Container(); } components.Add(new UiConfigMenuSubsystem( _menuUiScale, _menuUiSmallImageQuality, _menuUiSuggestDownloadMissingImages, _menuUiImagesCacheCapacity, _menuUiUndoDepth, _menuUiApplySearchBar, _checkboxAllPanels, _checkboxTopPanel, _checkboxRightPanel, _checkboxSearchBar, _repo, uiConfigRepository)); _dropdownOpenDeck.BeforeShow = () => setMenuMode(_dropdownOpenDeck); _dropdownSaveDeck.BeforeShow = () => setMenuMode(_dropdownSaveDeck); _dropdownColorScheme.BeforeShow = updateMenuColors; _ctsLifetime = new CancellationTokenSource(); _ctsLifetime.Token.When(_repo.IsLoadingComplete).Run(repositoryLoaded); }
public FormRoot(Func <FormMain> formMainFactory, DownloaderSubsystem downloaderSubsystem, NewsService newsService, CardSuggestModel cardSuggestModel, DeckSuggestModel deckSuggestModel, TooltipController tooltipController, CardRepository repo, DeckSerializationSubsystem serialization, UiModel uiModel, Application application) : this() { TooltipController = tooltipController; UiModel = uiModel; DeckSuggestModel = deckSuggestModel; CardSuggestModel = cardSuggestModel; CardSuggestModel.Ui = UiModel; _application = application; _repo = repo; _serialization = serialization; _buttonSubsystem = new ButtonSubsystem(); _formMainFactory = formMainFactory; _downloaderSubsystem = downloaderSubsystem; _newsService = newsService; KeyPreview = true; PreviewKeyDown += previewKeyDown; KeyDown += formKeyDown; _repo.LoadingComplete += repositoryLoaded; QueryHandleDrag += queryHandleDrag; Load += load; Closed += closed; _tabs.AllowDrop = true; _tabs.AddNewTabsToTheLeft = true; _tabs.TabAdded += tabCreated; _tabs.TabRemoving += tabClosing; _tabs.TabRemoved += tabClosed; _tabs.SelectedIndexChanging += selectedTabChanging; _tabs.SelectedIndexChanged += selectedTabChanged; _tabs.DragOver += tabsDragOver; _tabs.MouseMove += tabMouseMove; FormClosing += formClosing; _newsService.NewsFetched += newsFetched; _newsService.NewsDisplayed += newsDisplayed; _downloaderSubsystem.ProgressCalculated += downloaderProgressCalculated; setupButtons(); setupExternalLinks(); setupButtonClicks(); setupLanguageMenu(); setupTooltips(); if (!DesignMode) { SnapTo(Direction.North, default(Point)); } foreach (var button in _deckButtons) { button.Enabled = false; } Text = $"Mtgdb.Gui v{AppDir.GetVersion()}"; WindowState = FormWindowState.Minimized; }