public override void Load(SettingsStorage storage) { base.Load(storage); var compositionType = storage.GetValue <CompositionType>("CompositionType"); var compositionId = storage.GetValue <Guid>("CompositionId"); var registry = ConfigManager.GetService <StrategiesRegistry>(); var composition = compositionType == CompositionType.Composition ? registry.Compositions.FirstOrDefault(c => c.TypeId == compositionId) : registry.Strategies.FirstOrDefault(c => c.TypeId == compositionId); Composition = new CompositionItem(compositionType, (CompositionDiagramElement)composition); var layout = storage.GetValue <string>("Layout"); if (!layout.IsEmpty()) { _layoutManager.LoadLayout(layout); } var diagramEditor = storage.GetValue <SettingsStorage>("DiagramEditor"); if (diagramEditor != null) { DiagramEditor.Load(diagramEditor); } }
public void Save(SettingsStorage storage) { Debugger.Save(storage); storage.SetValue("Layout", _layoutManager.SaveLayout()); storage.SetValue("DiagramEditor", DiagramEditor.Save()); }
public void ShowProjectDiagrams() { Editor.GetCurrentModel(); var diagrams = DiagramEditor.GetCurrentProjectDiagrams(Editor.Context.CurrentTree); if (diagrams != null) { ShowDiagramsWindow(diagrams, "Project Diagrams"); } }
public override void Save(SettingsStorage storage) { base.Save(storage); if (Composition != null) { storage.SetValue("CompositionType", Composition.Type); storage.SetValue("CompositionId", Composition.Element.TypeId); } storage.SetValue("Layout", _layoutManager.SaveLayout()); storage.SetValue("DiagramEditor", DiagramEditor.Save()); }
//TODO: дописать логику загрузки состояния для DockSite void IPersistable.Load(SettingsStorage storage) { var diagramEditor = storage.GetValue <SettingsStorage>("DiagramEditor"); if (diagramEditor != null) { DiagramEditor.Load(diagramEditor); } var layout = storage.GetValue <string>("Layout"); //if (layout != null) // DockSite.LoadLayout(layout, true); }
public void Load(SettingsStorage storage) { Debugger.Load(storage); var layout = storage.GetValue <string>("Layout"); if (!layout.IsEmpty()) { _layoutManager.LoadLayout(layout); } var diagramEditor = storage.GetValue <SettingsStorage>("DiagramEditor"); if (diagramEditor != null) { DiagramEditor.Load(diagramEditor); } }
private void InitializeEditor() { Editor = new DiagramEditor(); Editor.Context = new Context(); Editor.Context.CurrentTree = this.ExplorerControl.SolutionTree; Editor.Context.CurrentCanvas = this.DiagramControl.DiagramCanvas; var counter = new IdCounter(); counter.Set(3); this.DiagramControl.DiagramCanvas.SetCounter(counter); var prop = DiagramProperties.Default; this.DiagramControl.DiagramCanvas.SetProperties(prop); SetProperties(prop); Editor.Context.IsControlPressed = () => Keyboard.Modifiers == ModifierKeys.Control; Editor.Context.UpdateProperties = () => UpdateProperties(Editor.Context.CurrentCanvas.GetProperties()); Editor.Context.SetProperties = (p) => SetProperties(p); Editor.Context.Clipboard = new WindowsClipboard(); // diagram creator Editor.Context.DiagramCreator = GetDiagramCreator(); // set checkbox states EnableInsertLast.IsChecked = Editor.Context.EnableInsertLast; EnableSnap.IsChecked = Editor.Context.EnableSnap; SnapOnRelease.IsChecked = Editor.Context.SnapOnRelease; // explorer control this.ExplorerControl.Editor = Editor; this.ExplorerControl.DiagramView = this.DiagramControl.RootBorder; // tree actions Editor.Context.CreateSolution = () => this.ExplorerControl.CreateTreeSolutionItem(); Editor.Context.CreateProject = () => this.ExplorerControl.CreateTreeProjectItem(); Editor.Context.CreateDiagram = () => this.ExplorerControl.CreateTreeDiagramItem(); // update canvas grid UpdateDiagramGrid(false); }
private void InitializeDiagramControl() { this.DiagramControl.Editor = this.Editor; }
public void SaveToImage(string fileName) { DiagramEditor.SaveToImage(fileName); }
public CompositionDiagramElement GetSelectionCopyElement() { return(DiagramEditor.GetSelectionCopyElement()); }
void IPersistable.Save(SettingsStorage storage) { storage.SetValue("DiagramEditor", DiagramEditor.Save()); storage.SetValue("Layout", DockSite.SaveLayout(true)); }