public MainPresenter CreateMainPresenter()
        {
            ToolbarView     toolbarView     = new ToolbarView();
            TextInputView   textInputView   = new TextInputView();
            WordCounterView wordCounterView = new WordCounterView();
            StatusBarView   statusBarView   = new StatusBarView();

            ToolbarModel toolbarModel = new ToolbarModel();
            //ToolbarPresenter toolbarPresenter = new ToolbarPresenter(toolbarView, toolbarModel);

            IModalDialogBuilder modalDialogBuilder = new ModalDialogBuilder();

            IFileSelectionView     fileSelectionView  = new FileSelectionView();
            FileSelectionModel     fileSelectionModel = new FileSelectionModel();
            FileSelectionPresenter openFilePresenter  = new FileSelectionPresenter(fileSelectionView, fileSelectionModel);

            TextInputModel     textInputModel     = new TextInputModel(fileSelectionModel);
            TextInputPresenter textInputPresenter = new TextInputPresenter(textInputView, textInputModel);

            WordFrequencyCounter wordFrequencyCounter = new WordFrequencyCounter();
            WordCounterModel     wordCounterModel     = new WordCounterModel(wordFrequencyCounter);
            WordCounterPresenter wordCounterPresenter = new WordCounterPresenter(wordCounterView, wordCounterModel);

            RunButtonNavigator runButtonNavigator = new RunButtonNavigator(toolbarView, wordCounterModel);

            MainView      mainView      = new MainView(toolbarView, textInputView, wordCounterView, statusBarView);
            MainModel     mainModel     = new MainModel();
            MainPresenter mainPresenter = new MainPresenter(mainView, mainModel);

            AboutView      aboutView      = new AboutView();
            AboutModel     aboutModel     = new AboutModel();
            AboutPresenter aboutPresenter = new AboutPresenter(aboutView, aboutModel);

            RunButtonNavigator   navigation           = new RunButtonNavigator(toolbarView, wordCounterModel);
            AboutButtonNavigator aboutButtonNavigator = new AboutButtonNavigator(toolbarView, aboutView);
            TextSynchronizer     modelConnector       = new TextSynchronizer(wordCounterModel, textInputModel);

            IFileSelectionDisplay fileSelectionDisplay = new FileSelectionDisplay(fileSelectionModel);

            ILoadTextFromFile           loadTextFromFile            = new LoadTextFromFile(fileSelectionDisplay);
            LoadTextFromFileToTextInput loadTextFromFileToTextInput = new LoadTextFromFileToTextInput(loadTextFromFile, textInputModel);
            FileSelectionNavigator      openFileButtonNavigator     = new FileSelectionNavigator(toolbarView, loadTextFromFileToTextInput);

            TextInputLoader textInputLoader = new TextInputLoader(textInputModel, fileSelectionModel);

            /*
             * Wyświetlanie MsgBox
             * Obsługa błędów otwarcia pliku
             */

            return(mainPresenter);
        }
Exemple #2
0
        internal static void RunScriptsOnAll(TestArgs args, Action <bool> callback)
        {
            ThreadPool.QueueUserWorkItem(d =>
            {
                var model = new FileSelectionModel {
                    Args = args, SelectedFiles = args.Pattern == null ? new List <string>() : args.Pattern.SelectedFiles
                };
                model.Callback = RunScriptOnAllCallback;
                var window     = new FileSelectionView();

                window.Render(model);
                window.ShowDialog();
                callback?.Invoke(model.Continue);
            });
        }