public ScriptEditor()
        {
            DataContext = _vm = new ScriptEditorViewModel();
            InitializeComponent();

            ComponentsStore.Add(this);
        }
Beispiel #2
0
        private IEnumerable <IResult> HandleScriptClosing(ScriptEditorViewModel script)
        {
            if (script.IsDirty)
            {
                var message = Result.ShowMessageBox(script.Filename, string.Format("Do you want to save changes to {0}", script.Filename), MessageBoxButton.YesNoCancel);
                yield return(message);

                if (message.Result == MessageBoxResult.Cancel)
                {
                    yield return(Result.Cancel());
                }
                else if (message.Result == MessageBoxResult.Yes)
                {
                    foreach (var result in scriptDialogStrategy.SaveAs(script, true, path => fileSystem.WriteAllText(path, script.FileContent)))
                    {
                        yield return(result);
                    }
                }
            }
        }
Beispiel #3
0
        public MainShellViewModel(IResultFactory resultFactory,
                                  IEventAggregator eventAggregator,
                                  IPersistanceManager persistanceManager,
                                  ISettingsManager settingsManager,
                                  MainMenuViewModel mainMenuViewModel,
                                  ScriptEditorViewModel scriptEditorViewModel,
                                  OutputViewModel outputViewModel) : base(resultFactory)
        {
            this.eventAggregator = eventAggregator;
            eventAggregator.Subscribe(this);
            this.persistanceManager = persistanceManager;

            Menu           = mainMenuViewModel;
            Menu.Plugins   = settingsManager.ListConfigurablePluginSettings().Select(ps => new PluginSettingsMenuViewModel(ps));
            Menu.HelpFiles = settingsManager.ListPluginSettingsWithHelpFile().Select(ps => new PluginHelpFileViewModel(ps)).ToList();

            ScriptEditor = scriptEditorViewModel;
            Output       = outputViewModel;
            DisplayName  = "FreePIE - Programmable Input Emulator";
        }
Beispiel #4
0
        public MainShellViewModel(IResultFactory resultFactory,
            IEventAggregator eventAggregator,
            IPersistanceManager persistanceManager,
            ISettingsManager settingsManager,
            MainMenuViewModel mainMenuViewModel,
            ScriptEditorViewModel scriptEditorViewModel,
            OutputViewModel outputViewModel)
            : base(resultFactory)
        {
            persistanceManager.Load();
            this.eventAggregator = eventAggregator;
            eventAggregator.Subscribe(this);
            this.persistanceManager = persistanceManager;

            Menu = mainMenuViewModel;
            Menu.Plugins = settingsManager.ListConfigurablePluginSettings().Select(ps => new PluginSettingsMenuViewModel(ps));
            ScriptEditor = scriptEditorViewModel;
            Output = outputViewModel;
            DisplayName = "FreePIE - Programmable Input Emulator";
        }
 public ScriptDocumentAddedEvent(ScriptEditorViewModel document)
 {
     Document = document;
 }
Beispiel #6
0
 public void DocumentClosed(ScriptEditorViewModel document)
 {
     Scripts.Remove(document);
 }
Beispiel #7
0
 public IEnumerable <IResult> DocumentClosing(ScriptEditorViewModel document, DocumentClosingEventArgs e)
 {
     return(Result.Coroutinify(HandleScriptClosing(document), () => e.Cancel = true));
 }
 public ScriptDocumentAddedEvent(ScriptEditorViewModel document, bool todelete = false)
 {
     Document = document;
     toDelete = todelete;
 }
Beispiel #9
0
 private IEnumerable <IResult> HandleScriptClosing(ScriptEditorViewModel script)
 {
     return(HandleScriptClosing(script, null));
 }
 public ScriptDocumentAddedEvent(ScriptEditorViewModel document)
 {
     Document = document;
 }