//----------------------------------------------------- private void m_controlEdition_AfterDoubleClicElement(I2iObjetGraphique e) { if (!LockEdition && AfficherEditeur(e) == DialogResult.OK) { AfficherPanel(e); SelectionnerContenu(e); } else { //Si je le fait en recherchant la form editionstandard ça plante IFormNavigable frm = null; ETypeElementDeProjet?tele = CUtilProjet.GetTypeElement(e); IElementDeProjet ele = CUtilProjet.GetIElementDeProjet(e); switch (tele) { case ETypeElementDeProjet.Projet: frm = new CFormEditionProjet((CProjet)ele); break; case ETypeElementDeProjet.Intervention: frm = new CFormEditionIntervention((CIntervention)ele); break; case ETypeElementDeProjet.Lien: default: return; } CTimosApp.Navigateur.AffichePage(frm); } }
//----------------------------------------------------------------- private void m_controlEdition_AfterAddElement(I2iObjetGraphique e) { //Si on est en création on edite l'élément (si il est editable) //Et si l'édition est annulée on doit supprimer l'élément if (m_rbtCreationMode.Checked && e is IWndElementDeProjetPlanifiable && AfficherEditeur(e) != DialogResult.OK) { SupprimerElement(e); return; } IElementDeProjet ele = CUtilProjet.GetIElementDeProjet(e); if (ele is CObjetDonnee && !((CObjetDonnee)ele).VerifieDonnees(false).Result) { CFormAlerte.Afficher(((CObjetDonnee)ele).VerifieDonnees(false).Erreur); SupprimerElement(e); return; } ActualiserDesigner(); AfficherPanel(e); GenererListeContenu(); SelectionnerContenu(e); m_controlEdition.ModeEdition = EModeEditeurProjet.Selection; }
public void SelectionnerElement(IElementDeProjet ele) { I2iObjetGraphique o = null; foreach (I2iObjetGraphique objet in ObjetEdite.Childs) { switch (ele.TypeElementDeProjet.Code) { case ETypeElementDeProjet.Projet: if (objet is CWndProjetBrique && ele.Equals(((CWndProjetBrique)objet).Projet)) { o = objet; } break; case ETypeElementDeProjet.Intervention: if (objet is CWndIntervention && ele.Equals(((CWndIntervention)objet).Intervention)) { o = objet; } break; case ETypeElementDeProjet.Lien: if (objet is CWndLienDeProjet && ele.Equals(((CWndLienDeProjet)objet).LienDeProjet)) { o = objet; } break; default: return; } if (o != null) { break; } } if (BeforeSelectElement != null && !BeforeSelectElement()) { return; } Selection.Clear(); Selection.Add(o); if (AfterSelectElement != null) { AfterSelectElement(o); } }
private void SelectionnerContenu(IElementDeProjet ele) { m_lastEleSelec = ele; m_bSelecContenu = true; bool existeEncore = ((ele != null) && ((CObjetDonnee)ele).IsValide()); foreach (ListViewItem itm in m_lvContenu.Items) { if (existeEncore && itm.Tag.Equals(ele)) { itm.Selected = true; } else { itm.Selected = false; } } m_bSelecContenu = false; ActualiserCouleur(); }
//----------------------------------------------------- private CResultAErreur AfficherEditeur(IElementDeProjet element) { CResultAErreur result = CResultAErreur.True; if (element is CProjet) { CProjet projet = (CProjet)element; if (projet.IsNew() && m_controlEdition.ModeEdition == EModeEditeurProjet.Selection) { projet.BeginEdit(); } CFormNavigateurPopup.Show(new CFormEditionProjet(projet)); if (!projet.IsValide() || !projet.VerifieDonnees(false).Result) { result = CResultAErreur.False; } } if (element is CIntervention) { CIntervention inter = (CIntervention)element; if (inter.IsNew() && m_controlEdition.ModeEdition == EModeEditeurProjet.Selection) { inter.BeginEdit(); } CFormNavigateurPopup.Show(new CFormEditionIntervention(inter)); if (!inter.IsValide() || !inter.VerifieDonnees(false).Result) { result = CResultAErreur.False; } } if (result) { ActualiserDesigner(); GenererListeContenu(); } return(result); }
private void AjouterElementContenu(IElementDeProjet ele) { ListViewItem itm = new ListViewItem(ele.Libelle); itm.Tag = ele; string strType = I.T("Unknown|1240"); Type t = ele.GetType(); if (t == typeof(CLienDeProjet)) { strType = I.T("Link|83"); } else if (t == typeof(CProjet)) { strType = I.T("Project|749"); } else if (t == typeof(CIntervention)) { strType = I.T("Intervention|561"); } itm.SubItems.Add(strType); m_lvContenu.Items.Add(itm); }
private void m_btnOk_Click(object sender, EventArgs e) { CResultAErreur result = CResultAErreur.True; CContexteDonnee ctx = null; int? nIDProj = null; CFiltreData filtreLiens = new CFiltreData(); CFiltreData filtreProjets = new CFiltreData(); CFiltreData filtreInters = new CFiltreData(); bool bFiltreLiens = false; bool bFiltreProjets = false; bool bFiltreInters = false; foreach (I2iObjetGraphique objGraph in m_objsGraphiques) { IElementDeProjet ele = CUtilProjet.GetIElementDeProjet(objGraph); if (!(ele is CObjetDonnee)) { return; } CObjetDonnee obj = (CObjetDonnee)ele; if (!obj.IsValide()) { return; } if (ctx == null) { ctx = obj.ContexteDonnee; } if (ele.Projet == null) { return; } if (!nIDProj.HasValue) { nIDProj = ele.Projet.Id; } CFiltreData filtreBase = filtreLiens; CFiltreData filtreTmp; if (m_rbtnDetacher.Checked) { bFiltreLiens = true; if (objGraph is IWndElementDeProjetPlanifiable) { ((IWndElementDeProjetPlanifiable)objGraph).Detacher = true; } string strRqt = ""; switch (ele.TypeElementDeProjet.Code) { case ETypeElementDeProjet.Projet: strRqt = CLienDeProjet.c_champPrjA + " = @1 OR " + CLienDeProjet.c_champPrjB + " = @1"; break; case ETypeElementDeProjet.Intervention: strRqt = CLienDeProjet.c_champInterA + " = @1 OR " + CLienDeProjet.c_champInterB + " = @1"; break; case ETypeElementDeProjet.Lien: strRqt = CLienDeProjet.c_champId + " =@1"; break; default: return; } ele.Projet = null; filtreTmp = new CFiltreData(strRqt, ele.Id); } else { switch (ele.TypeElementDeProjet.Code) { case ETypeElementDeProjet.Intervention: bFiltreInters = true; filtreBase = filtreInters; break; case ETypeElementDeProjet.Lien: bFiltreLiens = true; filtreBase = filtreLiens; break; case ETypeElementDeProjet.Projet: bFiltreProjets = true; filtreBase = filtreProjets; break; default: break; } filtreTmp = new CFiltreData(CUtilProjet.GetChampIDElement(objGraph) + " =@1", ele.Id); } if (filtreBase.Filtre != "") { filtreBase = CFiltreData.GetOrFiltre(filtreBase, filtreTmp); } else { filtreBase = filtreTmp; } if (m_rbtnDetacher.Checked) { filtreLiens = filtreBase; } else { switch (ele.TypeElementDeProjet.Code) { case ETypeElementDeProjet.Projet: filtreProjets = filtreTmp; break; case ETypeElementDeProjet.Intervention: filtreInters = filtreTmp; break; case ETypeElementDeProjet.Lien: filtreLiens = filtreTmp; break; default: break; } } } CFiltreData filtreSurProjet = new CFiltreData(CProjet.c_champId + " =@1", nIDProj.Value); if (bFiltreLiens) { filtreLiens = CFiltreData.GetAndFiltre(filtreLiens, filtreSurProjet); result = CObjetDonneeAIdNumerique.Delete(new CListeObjetsDonnees(ctx, typeof(CLienDeProjet), filtreLiens)); } if (result && bFiltreInters) { filtreInters = CFiltreData.GetAndFiltre(filtreInters, filtreSurProjet); result = CObjetDonneeAIdNumerique.Delete(new CListeObjetsDonnees(ctx, typeof(CIntervention), filtreInters)); } if (result && bFiltreProjets) { filtreSurProjet = new CFiltreData(CProjet.c_champIdParent + " =@1", nIDProj); filtreProjets = CFiltreData.GetAndFiltre(filtreProjets, filtreSurProjet); result = CObjetDonneeAIdNumerique.Delete(new CListeObjetsDonnees(ctx, typeof(CProjet), filtreProjets)); } if (!result) { CFormAlerte.Afficher(result.Erreur); return; } DialogResult = DialogResult.OK; }
private void SelectionnerContenu(I2iObjetGraphique o) { IElementDeProjet ele = CUtilProjet.GetIElementDeProjet(o); SelectionnerContenu(ele); }
public void AjouterElement(IElementDeProjet ele) { }