public void PreprareEdition() { C2iExpressionGraphique expEditee = ObjetEdite as C2iExpressionGraphique; if (expEditee != null) { CContexteAnalyse2iExpression ctx = new CContexteAnalyse2iExpression(((C2iExpressionGraphique)ObjetEdite), ObjetAnalyse); CAnalyseurSyntaxiqueExpression analyseur = new CAnalyseurSyntaxiqueExpression(ctx); analyseur.VerifieParametresLorsDeLanalyse = false; foreach (I2iObjetGraphique child in expEditee.Childs) { CRepresentationExpressionGraphique rep = child as CRepresentationExpressionGraphique; if (rep != null) { if (rep.Formule != null) { if (expEditee.GetUtilisateurs(rep.Id).Count() == 0) { CResultAErreur result = analyseur.AnalyseChaine(rep.Formule.GetString()); if (result) { rep.Formule = result.Data as C2iExpression; } else { rep.LastErreur = result.Erreur.ToString(); } } } } } } }
//-------------------------------------------------------------------- public void Init(C2iExpressionGraphique representation, CObjetPourSousProprietes objetAnalyse) { ObjetEdite = representation; ObjetAnalyse = objetAnalyse; PreprareEdition(); }
public CResultAErreur MajChamps() { CResultAErreur result = m_linkField.FillObjetFromDialog(m_handler); if (result) { m_handler.FormuleDeclenchement = m_txtFormuleCondition.Formule; m_handler.GenericRequestedValue = m_cmbGenericCode.SelectedItem as GenericCode?; } C2iExpressionGraphique exp = m_editeurPreTraitement.ExpressionGraphique; exp.RefreshFormuleFinale(); m_handler.FormulePreTraitementTrap = exp; m_handler.TypeEntiteAssocie = m_cmbTypeEntite.SelectedValue as CTypeEntiteSnmpPourSupervision; m_handler.FormuleIndexEntite = m_txtFormuleIndexEntite.Formule; if (result) { result = m_handler.VerifieDonnees(); } if (result) { m_originalHandler.Database.Merge(m_handler.Database, false);// ImporteObjet(m_handler, true, true); //CCloner2iSerializable.CopieTo(m_handler, m_originalHandler); } return(result); }
//------------------------------------ private void m_chkVisible_CheckedChanged(object sender, EventArgs e) { C2iExpressionGraphique rep = m_expressionGraphique.RepresentationRacine; if (!m_bIsInitializing) { if (m_chkVisible.Checked) { if (rep == null) { m_chkVisible.Checked = false; return; } if (rep != null) { CRepresentationExpressionGraphique exp = null; if (exp == null) { C2iExpression formule = m_txtFormule.Formule; if (formule == null) { formule = new C2iExpressionNull(); } exp = new CRepresentationExpressionGraphique(); rep.AddChild(exp); exp.Parent = rep; Point pt = m_expressionGraphique.Position; pt.Offset(2 * m_expressionGraphique.Size.Width, m_nNumParametre * (m_expressionGraphique.Size.Height + 10)); exp.Position = pt; exp.Formule = formule; } m_expressionGraphique.SetExterne(m_nNumParametre, exp); UpdateWindow(); if (OnChangeDessin != null) { OnChangeDessin(this, null); } } } else { //Not checked CRepresentationExpressionGraphique ext = m_expressionGraphique.GetExterne(m_nNumParametre); if (ext != null) { m_expressionGraphique.SetExterne(m_nNumParametre, null); } UpdateWindow(); if (OnChangeDessin != null) { OnChangeDessin(this, null); } } } }
//-------------------------------------------------------------- public void Init(C2iExpressionGraphique representation, IFournisseurProprietesDynamiques fournisseur, CObjetPourSousProprietes objetAnalyse) { representation.InitForAnalyse(fournisseur); m_editeur.Init(representation, objetAnalyse); m_editeur.ObjetEdite = representation; m_editeur.ObjetAnalyse = objetAnalyse; m_fournisseurProprietes = fournisseur; m_objetAnalyse = objetAnalyse; m_chkActivateDebug.Checked = representation.Debug; UpdateVariables(); }
//----------------------------------------------- private void m_btnGraphic_Click(object sender, EventArgs e) { C2iExpression exp = m_txtFormule.Formule; if (m_expressionGraphique != null) { exp = m_expressionGraphique; } exp = CFormEditionExpressionGraphique.EditeFormule(exp, m_fournisseur, m_objetAnalyse); m_expressionGraphique = exp as C2iExpressionGraphique; Formule = exp; }
private void m_menuSetAsStartPoint_Click(object sender, EventArgs e) { C2iExpressionGraphique rep = ObjetEdite as C2iExpressionGraphique; if (rep != null && Selection.Count == 1) { CRepresentationExpressionGraphique gr = Selection[0] as CRepresentationExpressionGraphique; /*while (gr.Prev != null) * gr = gr.Prev;*/ rep.StartPoint = gr; OnChangeFormules(); } }
//------------------------------------------------------------ private CDefinitionProprieteDynamiqueVariableFormule AssureVariableTrap(C2iExpressionGraphique formule) { if (formule == null) { return(null); } CDefinitionProprieteDynamiqueVariableFormule def = formule.Variables.FirstOrDefault(v => v.Nom == c_strNomVariableTrap); if (def == null) { def = new CDefinitionProprieteDynamiqueVariableFormule("Trap", new CTypeResultatExpression(typeof(CTrapInstance), false), true); formule.AddVariable(def); } return(def); }
private void InitChamps() { m_linkField.FillDialogFromObjet(m_handler); m_cmbGenericCode.Items.Clear(); m_cmbGenericCode.Items.Add(I.T("Any|20059")); foreach (GenericCode code in Enum.GetValues(typeof(GenericCode))) { m_cmbGenericCode.Items.Add(code); } if (m_handler.GenericRequestedValue == null) { m_cmbGenericCode.SelectedIndex = 0; } else { m_cmbGenericCode.SelectedItem = m_handler.GenericRequestedValue.Value; } m_txtFormuleCondition.Init(m_handler, typeof(CTrapInstance)); m_txtFormuleCondition.Formule = m_handler.FormuleDeclenchement; C2iExpression formulePreTraitement = m_handler.FormulePreTraitementTrap; if (!(formulePreTraitement is C2iExpressionGraphique)) { C2iExpressionGraphique graf = new C2iExpressionGraphique(); graf.InitFromFormule(formulePreTraitement); formulePreTraitement = graf; } m_editeurPreTraitement.Init(formulePreTraitement as C2iExpressionGraphique, m_handler, new CObjetPourSousProprietes(m_handler.TypeAgent)); FillListeTrapFields(); FillListeFieldsSupplementaires(); FillListeCreateurs(); m_cmbTypeEntite.ListDonnees = m_handler.TypeAgent.TypesEntites; m_cmbTypeEntite.SelectedValue = m_handler.TypeEntiteAssocie; m_txtFormuleIndexEntite.Init(m_handler, typeof(CTrapInstance)); m_txtFormuleIndexEntite.Formule = m_handler.FormuleIndexEntite; }
private void m_btnLoad_Click(object sender, EventArgs e) { OpenFileDialog dlg = new OpenFileDialog(); dlg.Filter = I.T("Graphical formula|*.grafexp|All files|*.*|20004"); if (dlg.ShowDialog() == DialogResult.OK) { C2iExpressionGraphique rep = new C2iExpressionGraphique(); CResultAErreur result = CSerializerObjetInFile.ReadFromFile(rep, C2iExpressionGraphique.c_cleFichier, dlg.FileName); if (!result) { CFormAfficheErreur.Show(result.Erreur); } else { this.Init(rep, m_fournisseurProprietes, m_objetAnalyse); } } }
private void m_btnPaste_Click(object sender, EventArgs e) { I2iSerializable objet = null; CResultAErreur result = CSerializerObjetInClipBoard.Paste(ref objet, C2iExpressionGraphique.c_cleFichier); if (!result) { CFormAlerte.Afficher(result); return; } C2iExpressionGraphique rep = objet as C2iExpressionGraphique; if (rep != null) { if (CFormAlerte.Afficher(I.T("Formula will be replaced. Continue ?|20005"), EFormAlerteType.Question) == DialogResult.No) { return; } Init(rep, m_fournisseurProprietes, m_objetAnalyse); } }
//----------------------------------------------------- private void m_btnOk_Click(object sender, EventArgs e) { C2iExpressionGraphique exp = m_editeur.ExpressionGraphique; CResultAErreur result = exp.RefreshFormuleFinale(); if (!result) { CFormAlerte.Afficher(result.Erreur); return; } C2iExpression formule = exp.FormuleFinale; result = formule.VerifieParametres(); if (!result) { CFormAlerte.Afficher(result.Erreur); return; } m_expression = exp; DialogResult = DialogResult.OK; Close(); }
//------------------------------------------------------- private void InitChamps() { m_txtLibelle.Text = m_createur.Libelle; m_txtCode.Text = m_createur.Code; m_cmbTypeAlarme.ListDonnees = m_baseTypesAlarmes.TypesAlarmes; m_cmbTypeAlarme.SelectedValue = m_createur.TypeAlarme; m_txtFormuleCondition.Init(m_createur, typeof(CTrapInstance)); m_txtFormuleCondition.Formule = m_createur.FormuleCondition; C2iExpression formuleConversion = m_createur.FormuleActions; if (!(formuleConversion is C2iExpressionGraphique)) { C2iExpressionGraphique graf = new C2iExpressionGraphique(); graf.InitFromFormule(formuleConversion); formuleConversion = graf; } m_editeurActionConversion.Init(formuleConversion as C2iExpressionGraphique, m_createur, new CObjetPourSousProprietes(m_createur.TrapHandler.TypeAgent)); }
public static C2iExpression EditeFormule(C2iExpression formule, IFournisseurProprietesDynamiques fournisseur, CObjetPourSousProprietes objetAnalyse) { CFormEditionExpressionGraphique form = new CFormEditionExpressionGraphique(); C2iExpressionGraphique graf = formule as C2iExpressionGraphique; if (graf == null) { graf = new C2iExpressionGraphique(); graf.InitFromFormule(formule); } form.m_expression = graf; form.m_fournisseur = fournisseur; form.m_objetAnalyse = objetAnalyse; form.m_editeur.Init(graf, fournisseur, objetAnalyse); C2iExpression retour = formule; if (form.ShowDialog() == DialogResult.OK) { retour = form.m_expression; } form.Dispose(); return(retour); }