public override IEnumerable <ComponentViewBase> LoadDiagram(Diagram diagram) { IEnumerable <ComponentViewBase> withoutViewHelpers = base.LoadDiagram(diagram); foreach (ComponentViewBase withoutViewHelper in withoutViewHelpers) { if (withoutViewHelper is PIMClassView) { ((PIMClassView)withoutViewHelper).ViewHelper.X = RandomGenerator.Next(300); ((PIMClassView)withoutViewHelper).ViewHelper.Y = RandomGenerator.Next(300); } } ExolutioContextMenu diagramMenu = MenuHelper.GetContextMenu(ScopeAttribute.EScope.PIMDiagram, this.Diagram); ExolutioCanvas.ContextMenu = diagramMenu; ((ExolutioContextMenu)ExolutioCanvas.ContextMenu).ScopeObject = PIMDiagram; ((ExolutioContextMenu)ExolutioCanvas.ContextMenu).Diagram = PIMDiagram; #if SILVERLIGHT ContextMenuService.SetContextMenu(ExolutioCanvas, diagramMenu); MenuHelper.CreateSubmenuForCommandsWithoutScope(diagramMenu); #else ContextMenuItem otherItemsMenu = new ContextMenuItem("Other operations"); MenuHelper.CreateSubmenuForCommandsWithoutScope(otherItemsMenu); ExolutioCanvas.ContextMenu.Items.Add(otherItemsMenu); #endif return(withoutViewHelpers); }
public PSMDiagramView() { this.RepresentantsCollection.Registrations.Add(typeof(PSMClass), new RepresentantsCollection.RegistrationClass( () => new PSMClassView(), () => new PSMClassViewHelper(this.Diagram), typeof(PSMClass), typeof(PSMClassViewHelper), typeof(PSMClassView))); this.RepresentantsCollection.Registrations.Add(typeof(PSMSchemaClass), new RepresentantsCollection.RegistrationClass( () => new PSMSchemaClassView(), () => new PSMSchemaClassViewHelper(this.Diagram), typeof(PSMSchemaClass), typeof(PSMSchemaClassViewHelper), typeof(PSMSchemaClassView))); this.RepresentantsCollection.Registrations.Add(typeof(PSMContentModel), new RepresentantsCollection.RegistrationClass( () => new PSMContentModelView(), () => new PSMContentModelViewHelper(this.Diagram), typeof(PSMContentModel), typeof(PSMContentModelViewHelper), typeof(PSMContentModelView))); this.RepresentantsCollection.Registrations.Add(typeof(PSMAssociation), new RepresentantsCollection.RegistrationClass( () => new PSMAssociationView(), () => new PSMAssociationViewHelper(this.Diagram), typeof(PSMAssociation), typeof(ConnectionViewHelper), typeof(PSMAssociationView))); this.RepresentantsCollection.Registrations.Add(typeof(PSMGeneralization), new RepresentantsCollection.RegistrationClass( () => new PSMGeneralizationView(), () => new PSMGeneralizationViewHelper(this.Diagram), typeof(PSMGeneralization), typeof(ConnectionViewHelper), typeof(PSMGeneralizationView))); LayoutManager = new LayoutManager(); ExolutioCanvas.MouseLeftButtonUp += ExolutioCanvas_MouseLeftButtonUp; ExolutioCanvas.Loaded += ExolutioCanvas_Loaded; ExolutioCanvas.ContentChanged += ExolutioCanvas_ContentChanged; ExolutioContextMenu diagramMenu = MenuHelper.GetContextMenu(ScopeAttribute.EScope.PSMSchema, this.Diagram); ExolutioCanvas.ContextMenu = diagramMenu; #if SILVERLIGHT ContextMenuService.SetContextMenu(ExolutioCanvas, diagramMenu); MenuHelper.CreateSubmenuForCommandsWithoutScope(diagramMenu); #else ContextMenuItem otherItemsMenu = new ContextMenuItem("Other operations"); MenuHelper.CreateSubmenuForCommandsWithoutScope(otherItemsMenu); ExolutioCanvas.ContextMenu.Items.Add(otherItemsMenu); #endif ExolutioCanvas.Tag = "PSM"; }