Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- parentShape.FixupChildShapes(modelElement);
- private Store LoadStore()
- {
- var store = new Store();
- store.LoadDomainModels(typeof(CoreDesignSurfaceDomainModel), typeof(ActiveWriterDomainModel));
- return store;
- }
- private void LoadDiagram(Store store)
- {
- using (var tx = store.TransactionManager.BeginTransaction("tx", true))
- {
- var validator = new ValidationController();
- var deserializer = ActiveWriterSerializationHelper.Instance;
- deserializer.LoadModelAndDiagram(store,
- @"....ActiveWriter1.actiw", @"....ActiveWriter1.actiw.diagram", null, validator);
- tx.Commit();
- }
- }
- private DiagramView CreateDiagramView()
- {
- var store = LoadStore();
- LoadDiagram(store);
- using (var tx = store.TransactionManager.BeginTransaction("tx2", true))
- {
- var dir = store.DefaultPartition.ElementDirectory;
- var diag = dir.FindElements<ActiveRecordMapping>().SingleOrDefault();
- var view = new DiagramView(){Diagram = diag};
- diag.Associate(view);
- tx.Commit();
- view.Dock = DockStyle.Fill;
- return view;
- }
- }
- protected override void OnLoad(EventArgs e)
- {
- var view = CreateDiagramView();
- this.Controls.Add(view);
- }
- private Store LoadStore()
- {
- var store = new Store();
- store.LoadDomainModels(typeof(CoreDesignSurfaceDomainModel), typeof(ActiveWriterDomainModel));
- ActiveWriterDomainModel.EnableDiagramRules(store);
- return store;
- }
- /// <summary>
- /// Enables rules in this domain model related to diagram fixup for the given store.
- /// If diagram data will be loaded into the store, this method should be called first to ensure
- /// that the diagram behaves properly.
- /// </summary>
- public static void EnableDiagramRules(DslModeling::Store store)
- {
- if(store == null) throw new global::System.ArgumentNullException("store");
- DslModeling::RuleManager ruleManager = store.RuleManager;
- ruleManager.EnableRule(typeof(global::Altinoren.ActiveWriter.FixUpDiagram));
- ruleManager.EnableRule(typeof(global::Altinoren.ActiveWriter.ConnectorRolePlayerChanged));
- ruleManager.EnableRule(typeof(global::Altinoren.ActiveWriter.CompartmentItemAddRule));
- ruleManager.EnableRule(typeof(global::Altinoren.ActiveWriter.CompartmentItemDeleteRule));
- ruleManager.EnableRule(typeof(global::Altinoren.ActiveWriter.CompartmentItemRolePlayerChangeRule));
- ruleManager.EnableRule(typeof(global::Altinoren.ActiveWriter.CompartmentItemRolePlayerPositionChangeRule));
- ruleManager.EnableRule(typeof(global::Altinoren.ActiveWriter.CompartmentItemChangeRule));
- }
Add Comment
Please, Sign In to add comment