public override void CanClose(Action <bool> callback) { eventAggregator.Publish(new ExitingEvent()); persistanceManager.Save(); base.CanClose(callback); }
public void Handle(ExitingEvent message) { persistanceManager.Save(); var layoutSerializer = new XmlLayoutSerializer(DockingManager); layoutSerializer.Serialize(paths.GetDataPath(dockingConfig)); }
private void Stop() { System.Console.WriteLine("Stopping script parser"); scriptEngine.Stop(); persistanceManager.Save(); waitUntilStopped.Set(); }
protected override IEnumerable <IResult> CanClose() { var handleDirtyResults = Scripts.SelectMany(HandleScriptClosing); foreach (var result in handleDirtyResults) { yield return(result); } eventAggregator.Publish(new ExitingEvent()); persistanceManager.Save(); var layoutSerializer = new XmlLayoutSerializer(DockingManager); layoutSerializer.Serialize(paths.GetDataPath(dockingConfig)); }