internal EntityType_AddFromDialog(NewEntityDialog dialog) { _dialog = dialog; }
internal void AddNewEntityType(PointD dropPoint) { if ((Partition.GetLocks() & Locks.Add) == Locks.Add) { return; } var model = ModelElement.ModelXRef.GetExisting(ModelElement) as ConceptualEntityModel; Debug.Assert(model != null); using (var dialog = new NewEntityDialog(model)) { if (dialog.ShowDialog() == DialogResult.OK) { try { Arranger.Start(dropPoint); Store.RuleManager.DisableRule(typeof(EntityType_AddRule)); using (var t = Store.TransactionManager.BeginTransaction(EntityDesignerResources.Tx_AddEntityType)) { t.Context.Add(EfiTransactionOriginator.TransactionOriginatorDiagramId, DiagramId); ViewModelChangeContext.GetNewOrExistingContext(t).ViewModelChanges.Add(new EntityType_AddFromDialog(dialog)); t.Commit(); } } finally { Store.RuleManager.EnableRule(typeof(EntityType_AddRule)); Arranger.End(); EnsureSelectionVisible(); } } } }