/// <summary> /// Pressing the OK Button /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnOK_Click(Object sender, EventArgs e) { EA.Diagram openDiag = repository.GetCurrentDiagram(); //No Association between the objects classifiers has been found if (listboxLinks.Items.Count == 0) { System.Windows.Forms.MessageBox.Show("There is no Association between these two elements"); Close(); return; } if (listboxLinks.SelectedItem != null) { BindingSemantics bindingSemantics = BindingSemantics.MANDATORY; BindingOperator bindingOperator = BindingOperator.CHECK_ONLY; if (radioButtonMandatory.Checked) { bindingSemantics = BindingSemantics.MANDATORY; } else if (radioButtonNegative.Checked) { bindingSemantics = BindingSemantics.NEGATIVE; } if (radioButtonDestroy.Checked) { bindingOperator = BindingOperator.DESTROY; } else if (radioButtonCreate.Checked) { bindingOperator = BindingOperator.CREATE; } else if (radioButtonCheckOnly.Checked) { bindingOperator = BindingOperator.CHECK_ONLY; } if (complexNAC1.getNacIndexValue() != "" && radioButtonNegative.Checked) { linkVariable.NacIndex = int.Parse(complexNAC1.getNacIndexValue()); } else { linkVariable.NacIndex = -1; } linkVariable.linkDialogueEntry = this.linkDialogueEntries[listboxLinks.SelectedIndex]; //new linkvariable handling linkVariable.BindingSemantics = bindingSemantics; linkVariable.BindingOperator = bindingOperator; linkVariable.saveTreeToEATaggedValue(true); EA.Diagram currentDiag = repository.GetCurrentDiagram(); if (currentDiag != null) { repository.ReloadDiagram(currentDiag.DiagramID); } Close(); } }
public override void doRuleQuickFix(SQLConnector eaConnector, SQLRepository repository, int i, String errorMessage) { LinkVariable lv = new LinkVariable(eaConnector, repository); lv.loadTreeFromTaggedValue(); if (errorMessage == "The rolename(s) of the LinkVariable differs from the related EReference") { if (i == 0) { SQLConnector referencedReference = SDMUtil.getRelatedEReference(lv); if (referencedReference != null) { EA.Diagram currentDiagram = repository.GetCurrentDiagram(); lv.linkDialogueEntry.clientRoleName = referencedReference.ClientEnd.Role; lv.linkDialogueEntry.supplierRoleName = referencedReference.SupplierEnd.Role; lv.saveTreeToEATaggedValue(true); if (currentDiagram != null) { repository.SaveDiagram(currentDiagram.DiagramID); repository.ReloadDiagram(currentDiagram.DiagramID); } } } } else { if (i == 0) { if (eaConnector.Stereotype == SDMModelingMain.LinkVariableStereotype) { lv = new LinkVariable(eaConnector, repository); } else if (eaConnector.Stereotype == TGGModelingMain.TggLinkVariableStereotype) { lv = new TGGLinkVariable(eaConnector, repository); } LinkVariablePropertiesForm lvForm = new LinkVariablePropertiesForm(lv, repository, true); } } }