Пример #1
0
        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);

            if (!DesignMode)
            {
                var localiser = new Localiser(typeof(CustomContentStrings));
                localiser.Form(this);

                FillDropDownWithValues <At>(comboBoxInjectAt, new At[] { At.Start, At.End }, r => {
                    switch (r)
                    {
                    case At.Start:  return(CustomContentStrings.Start);

                    case At.End:    return(CustomContentStrings.End);

                    default:        throw new NotImplementedException();
                    }
                });

                FillDropDownWithValues <InjectionLocation>(comboBoxInjectOf, Enum.GetValues(typeof(InjectionLocation)).OfType <InjectionLocation>(), r => Describe.InjectionLocation(r));

                _ValueChangedHelper.HookValueChanged(new Control[] {
                    checkBoxInjectEnabled,
                    fileNameControlInjectFile,
                    comboBoxInjectAt,
                    comboBoxInjectOf,
                    textBoxInjectPathAndFile,
                });

                _Presenter = Factory.Singleton.Resolve <IOptionsPresenter>();
                _Presenter.Initialise(this);
            }
        }
        public MainWindow(IViewModelEvaluator viewModelEvaluator, ICssMetricsPresenter cssMetricsPresenter, IHumanInterface ux, IInspectionPathPresenter inspectionPathPresenter, IResultsPathPresenter resultsPathPresenter, IBoolOptionPresenter boolOptionPresenter, IOutputPresenter outputPresenter, IProgressPresenter progressPresenter, IInputPresenter inputPresenter, IOptionsPresenter optionsPresenter, ISettingsClearer settingsClearer, IInteractionPermissionToggler interactionPermissionToggler, IJavaScriptMetricsPresenter javaScriptMetricsPresenter, IFolderPresenter folderPresenter, IDirectoryDescendentFilesEvaluator directoryDescendentFilesEvaluator, IGroupedCssEvaluator groupedCssEvaluator, IFoldersPerGroupEvaluator foldersPerGroupEvaluator, IChildDirectoryCountEvaluator childDirectoryCountEvaluator, IPathExistenceEvaluator pathExistenceEvaluator, IGroupedJavaScriptEvaluator groupedJavaScriptEvaluator, ISpecificGroupEvaluator specificGroupEvaluator, IHasFilesToInspectAndIsIdleEvaluator hasFilesToInspectAndIsIdleEvaluator, IFilesToInspectEvaluator filesToInspectEvaluator, IFilesToInspectStorer filesToInspectStorer, IRefactorPathPresenter refactorPathPresenter, ICssSpliter cssSpliter, IGeneratedCssPathPresenter generatedCssPathPresenter, ISolutionPathPresenter solutionPathPresenter, ImageReferencesEvaluator imageReferencesEvaluator, IJsSplitter jsSplitter, IAdvancedJsSplitter advancedJsSplitter)
        {
            AdvancedJsSplitter = advancedJsSplitter;
            JsSplitter = jsSplitter;
            ImageReferencesEvaluator = imageReferencesEvaluator;
            SolutionPathPresenter = solutionPathPresenter;
            GeneratedCssPathPresenter = generatedCssPathPresenter;
            CssSpliter = cssSpliter;
            RefactorPathPresenter = refactorPathPresenter;
            FilesToInspectStorer = filesToInspectStorer;
            FilesToInspectEvaluator = filesToInspectEvaluator;
            HasFilesToInspectAndIsIdleEvaluator = hasFilesToInspectAndIsIdleEvaluator;
            SpecificGroupEvaluator = specificGroupEvaluator;
            GroupedJavaScriptEvaluator = groupedJavaScriptEvaluator;
            PathExistenceEvaluator = pathExistenceEvaluator;
            ChildDirectoryCountEvaluator = childDirectoryCountEvaluator;
            FoldersPerGroupEvaluator = foldersPerGroupEvaluator;
            GroupedCssEvaluator = groupedCssEvaluator;
            DirectoryDescendentFilesEvaluator = directoryDescendentFilesEvaluator;
            FolderPresenter = folderPresenter;
            JavaScriptMetricsPresenter = javaScriptMetricsPresenter;
            InteractionPermissionToggler = interactionPermissionToggler;
            SettingsClearer = settingsClearer;
            OptionsPresenter = optionsPresenter;
            Ux = ux;
            InputPresenter = inputPresenter;
            OutputPresenter = outputPresenter;
            ProgressPresenter = progressPresenter;
            ViewModelEvaluator = viewModelEvaluator;
            BoolOptionPresenter = boolOptionPresenter;
            InspectionPathPresenter = inspectionPathPresenter;
            CssMetricsPresenter = cssMetricsPresenter;
            ResultsPathPresenter = resultsPathPresenter;

            InitializeComponent();

            ux.ReadEvent += (sender, e) => Application.Current.Dispatcher.BeginInvoke(new Action(() => inputPresenter.Present(sender, e, (ViewModel)DataContext)));
            ux.WriteEvent += (sender, e) => Application.Current.Dispatcher.BeginInvoke(new Action(() => OutputPresenter.Write(sender, e, (ViewModel)DataContext)));
            ux.ProgressEvent += (sender, e) => Application.Current.Dispatcher.BeginInvoke(new Action(() => ProgressPresenter.Present(sender, e, (ViewModel)DataContext)));
            ux.WriteLineEvent += (sender, e) => Application.Current.Dispatcher.BeginInvoke(new Action(() => OutputPresenter.WriteLine(sender, e, (ViewModel)DataContext)));
            ux.AddOptionEvent += (sender, e) => Application.Current.Dispatcher.BeginInvoke(new Action(() => OptionsPresenter.AddOption(sender, e, (ViewModel)DataContext)));
            ux.ResetProgressEvent += (sender, e) => Application.Current.Dispatcher.BeginInvoke(new Action(() => ProgressPresenter.Reset(sender, e, (ViewModel)DataContext)));
            ux.DisplayOptionsEvent += (sender, e) => Application.Current.Dispatcher.BeginInvoke(new Action(() => OptionsPresenter.DisplayOptions(sender, e, (ViewModel)DataContext))); ;
            ux.DisplayBoolOptionEvent += (sender, e) => Application.Current.Dispatcher.BeginInvoke(new Action(() => BoolOptionPresenter.Present(sender, e)));
            ux.AddOptionWithHeadingSpaceEvent += (sender, e) => Application.Current.Dispatcher.BeginInvoke(new Action(() => OptionsPresenter.AddOptionWithHeadingSpace(sender, e, (ViewModel)DataContext)));

            GroupedCssEvaluator.ScrollDown += ScrollDown;
            GroupedJavaScriptEvaluator.ScrollDown += ScrollDown;

            //#if DEBUG
            //            SettingsClearer.Clear();
            //#endif

            DataContext = ViewModelEvaluator.Evaluate();
        }
Пример #3
0
        public MainWindow(IViewModelEvaluator viewModelEvaluator, ICssMetricsPresenter cssMetricsPresenter, IHumanInterface ux, IInspectionPathPresenter inspectionPathPresenter, IResultsPathPresenter resultsPathPresenter, IBoolOptionPresenter boolOptionPresenter, IOutputPresenter outputPresenter, IProgressPresenter progressPresenter, IInputPresenter inputPresenter, IOptionsPresenter optionsPresenter, ISettingsClearer settingsClearer, IInteractionPermissionToggler interactionPermissionToggler, IJavaScriptMetricsPresenter javaScriptMetricsPresenter, IFolderPresenter folderPresenter, IDirectoryDescendentFilesEvaluator directoryDescendentFilesEvaluator, IGroupedCssEvaluator groupedCssEvaluator, IFoldersPerGroupEvaluator foldersPerGroupEvaluator, IChildDirectoryCountEvaluator childDirectoryCountEvaluator, IPathExistenceEvaluator pathExistenceEvaluator, IGroupedJavaScriptEvaluator groupedJavaScriptEvaluator, ISpecificGroupEvaluator specificGroupEvaluator, IHasFilesToInspectAndIsIdleEvaluator hasFilesToInspectAndIsIdleEvaluator, IFilesToInspectEvaluator filesToInspectEvaluator, IFilesToInspectStorer filesToInspectStorer, IRefactorPathPresenter refactorPathPresenter, ICssSpliter cssSpliter, IGeneratedCssPathPresenter generatedCssPathPresenter, ISolutionPathPresenter solutionPathPresenter, ImageReferencesEvaluator imageReferencesEvaluator, IJsSplitter jsSplitter, IAdvancedJsSplitter advancedJsSplitter)
        {
            AdvancedJsSplitter                  = advancedJsSplitter;
            JsSplitter                          = jsSplitter;
            ImageReferencesEvaluator            = imageReferencesEvaluator;
            SolutionPathPresenter               = solutionPathPresenter;
            GeneratedCssPathPresenter           = generatedCssPathPresenter;
            CssSpliter                          = cssSpliter;
            RefactorPathPresenter               = refactorPathPresenter;
            FilesToInspectStorer                = filesToInspectStorer;
            FilesToInspectEvaluator             = filesToInspectEvaluator;
            HasFilesToInspectAndIsIdleEvaluator = hasFilesToInspectAndIsIdleEvaluator;
            SpecificGroupEvaluator              = specificGroupEvaluator;
            GroupedJavaScriptEvaluator          = groupedJavaScriptEvaluator;
            PathExistenceEvaluator              = pathExistenceEvaluator;
            ChildDirectoryCountEvaluator        = childDirectoryCountEvaluator;
            FoldersPerGroupEvaluator            = foldersPerGroupEvaluator;
            GroupedCssEvaluator                 = groupedCssEvaluator;
            DirectoryDescendentFilesEvaluator   = directoryDescendentFilesEvaluator;
            FolderPresenter                     = folderPresenter;
            JavaScriptMetricsPresenter          = javaScriptMetricsPresenter;
            InteractionPermissionToggler        = interactionPermissionToggler;
            SettingsClearer                     = settingsClearer;
            OptionsPresenter                    = optionsPresenter;
            Ux                      = ux;
            InputPresenter          = inputPresenter;
            OutputPresenter         = outputPresenter;
            ProgressPresenter       = progressPresenter;
            ViewModelEvaluator      = viewModelEvaluator;
            BoolOptionPresenter     = boolOptionPresenter;
            InspectionPathPresenter = inspectionPathPresenter;
            CssMetricsPresenter     = cssMetricsPresenter;
            ResultsPathPresenter    = resultsPathPresenter;

            InitializeComponent();

            ux.ReadEvent                      += (sender, e) => Application.Current.Dispatcher.BeginInvoke(new Action(() => inputPresenter.Present(sender, e, (ViewModel)DataContext)));
            ux.WriteEvent                     += (sender, e) => Application.Current.Dispatcher.BeginInvoke(new Action(() => OutputPresenter.Write(sender, e, (ViewModel)DataContext)));
            ux.ProgressEvent                  += (sender, e) => Application.Current.Dispatcher.BeginInvoke(new Action(() => ProgressPresenter.Present(sender, e, (ViewModel)DataContext)));
            ux.WriteLineEvent                 += (sender, e) => Application.Current.Dispatcher.BeginInvoke(new Action(() => OutputPresenter.WriteLine(sender, e, (ViewModel)DataContext)));
            ux.AddOptionEvent                 += (sender, e) => Application.Current.Dispatcher.BeginInvoke(new Action(() => OptionsPresenter.AddOption(sender, e, (ViewModel)DataContext)));
            ux.ResetProgressEvent             += (sender, e) => Application.Current.Dispatcher.BeginInvoke(new Action(() => ProgressPresenter.Reset(sender, e, (ViewModel)DataContext)));
            ux.DisplayOptionsEvent            += (sender, e) => Application.Current.Dispatcher.BeginInvoke(new Action(() => OptionsPresenter.DisplayOptions(sender, e, (ViewModel)DataContext)));;
            ux.DisplayBoolOptionEvent         += (sender, e) => Application.Current.Dispatcher.BeginInvoke(new Action(() => BoolOptionPresenter.Present(sender, e)));
            ux.AddOptionWithHeadingSpaceEvent += (sender, e) => Application.Current.Dispatcher.BeginInvoke(new Action(() => OptionsPresenter.AddOptionWithHeadingSpace(sender, e, (ViewModel)DataContext)));

            GroupedCssEvaluator.ScrollDown        += ScrollDown;
            GroupedJavaScriptEvaluator.ScrollDown += ScrollDown;

            //#if DEBUG
            //            SettingsClearer.Clear();
            //#endif

            DataContext = ViewModelEvaluator.Evaluate();
        }
Пример #4
0
        private void view_OptionsClick(object sender, EventArgs args)
        {
            if (optionsPresenter != null)
            {
                optionsPresenter.BringToFront();
                return;
            }

            optionsPresenter         = injector.Create <IOptionsPresenter>();
            optionsPresenter.Closed += optionsPresenter_Closed;
            optionsPresenter.Run();
        }
        /// <summary>
        /// Called after the form has finished initialising but before it has been shown to the user.
        /// </summary>
        /// <param name="e"></param>
        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);

            if (!DesignMode)
            {
                Localise.Form(this);

                ArrangeControls();

                Populate();

                _OnlineHelp = new OnlineHelpHelper(this, OnlineHelpAddress.WinFormsOptionsDialog);

                _Presenter = Factory.Singleton.Resolve <IOptionsPresenter>();
                _Presenter.Initialise(this);

                RecordInitialValues();
                listBox.SelectedIndex = 0;

                OnValuesChanged(EventArgs.Empty);
            }
        }
Пример #6
0
 public FormOptions([Named("Parameters")]ISettingsOriginator originator)
     : this()
 {
     _presenter = new OptionsPresenter(this, originator);
 }
Пример #7
0
 private void optionsPresenter_Closed(object sender, EventArgs args)
 {
     optionsPresenter.Closed -= optionsPresenter_Closed;
     optionsPresenter.Dispose();
     optionsPresenter = null;
 }
        public void TestInitialise()
        {
            _ClassFactorySnapshot = Factory.TakeSnapshot();

            _ConfigurationStorage = TestUtilities.CreateMockSingleton<IConfigurationStorage>();
            _Configuration = new Configuration();
            _ConfigurationStorage.Setup(c => c.Load()).Returns(_Configuration);

            _Presenter = Factory.Singleton.Resolve<IOptionsPresenter>();
            _Provider = new Mock<IOptionsPresenterProvider>() { DefaultValue = DefaultValue.Mock }.SetupAllProperties();
            _Provider.Setup(p => p.FileExists(It.IsAny<string>())).Returns(true);
            _Provider.Setup(p => p.FolderExists(It.IsAny<string>())).Returns(true);
            _Provider.Setup(p => p.TestNetworkConnection(It.IsAny<string>(), It.IsAny<int>())).Returns((Exception)null);
            _Provider.Setup(p => p.TestSerialConnection(It.IsAny<string>(), It.IsAny<int>(), It.IsAny<int>(), It.IsAny<StopBits>(), It.IsAny<Parity>(), It.IsAny<Handshake>())).Returns((Exception)null);
            _Presenter.Provider = _Provider.Object;
            _View = new Mock<IOptionsView>() { DefaultValue = DefaultValue.Mock }.SetupAllProperties();
        }
Пример #9
0
 public FormOptions([Named("Parameters")] ISettingsOriginator originator) : this()
 {
     _presenter = new OptionsPresenter(this, originator);
 }
        /// <summary>
        /// Called after the form has finished initialising but before it has been shown to the user.
        /// </summary>
        /// <param name="e"></param>
        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);

            if(!DesignMode) {
                Localise.Form(this);

                ArrangeControls();

                Populate();

                _OnlineHelp = new OnlineHelpHelper(this, OnlineHelpAddress.WinFormsOptionsDialog);

                _Presenter = Factory.Singleton.Resolve<IOptionsPresenter>();
                _Presenter.Initialise(this);

                RecordInitialValues();
                listBox.SelectedIndex = 0;

                OnValuesChanged(EventArgs.Empty);
            }
        }