//----------------------------------------------- private IEditeurDonneeBesoin GetEditeurEnCours(ETypeEditeurBesoin kindEditeur) { IEditeurDonneeBesoin editeur = null; if (m_dicEditeursEnCours.TryGetValue(kindEditeur, out editeur)) { return(editeur); } return(null); }
public void SetEditeur(ETypeEditeurBesoin kindEditeur, Type typeDonnee, IEditeurDonneeBesoin editeur) { Dictionary <Type, IEditeurDonneeBesoin> dic = null; if (!m_dic.TryGetValue(kindEditeur, out dic)) { dic = new Dictionary <Type, IEditeurDonneeBesoin>(); m_dic[kindEditeur] = dic; } dic[typeDonnee] = editeur; }
public IEditeurDonneeBesoin GetEditeur(ETypeEditeurBesoin kindEditeur, Type typeDonnee) { Dictionary <Type, IEditeurDonneeBesoin> dic = null; if (m_dic.TryGetValue(kindEditeur, out dic)) { IEditeurDonneeBesoin editeur = null; if (dic.TryGetValue(typeDonnee, out editeur)) { return(editeur); } } return(null); }
/// <summary> /// Récupère un éditeur /// </summary> /// <param name="donnee"></param> /// <param name="bEditeurDetail">Indique si on veut l'éditeur détaillé (en bas de la fenêtre besoin), ou l'éditeur de cout</param> /// <returns></returns> public static IEditeurDonneeBesoin GetEditeurDonnee(IDonneeBesoin donnee, ETypeEditeurBesoin typeEditeur) { if (donnee == null) { return(null); } Type tpEditeur = null; if (GetDic(typeEditeur).TryGetValue(donnee.GetType(), out tpEditeur)) { IEditeurDonneeBesoin editeur = Activator.CreateInstance(tpEditeur, new object[0]) as IEditeurDonneeBesoin; return(editeur); } return(null); }
//---------------------------------------------------------------------- private static Dictionary <Type, Type> GetDic(ETypeEditeurBesoin kindEditeur) { switch (kindEditeur) { case ETypeEditeurBesoin.EditeurCout: return(m_dicTypesEditeursCout); break; case ETypeEditeurBesoin.EditeurDonnees: return(m_dicTypesEditeursDonnees); break; } return(m_dicTypesEditeursCout); }
//----------------------------------------------- private IEditeurDonneeBesoin GetEditeur(ETypeEditeurBesoin kindEditeur, IDonneeBesoin calcul, CBesoin besoin) { IEditeurDonneeBesoin editeur = null; if (calcul != null) { editeur = m_editeursAlloues.GetEditeur(kindEditeur, calcul.GetType()); if (editeur == null) { editeur = CAllocateurEditeurDonneeBesoin.GetEditeurDonnee(calcul, kindEditeur); if (editeur != null) { editeur.OnCoutChanged += new EventHandler(editeur_OnCoutChanged); ((Control)editeur).Visible = false; ((Control)editeur).TabStop = false; editeur.OnDataChanged += new EventHandler(editeur_OnDataChanged); switch (kindEditeur) { case ETypeEditeurBesoin.EditeurCout: m_panelDetailCout.Controls.Add((Control)editeur); ((Control)editeur).Dock = DockStyle.Fill; break; case ETypeEditeurBesoin.EditeurDonnees: m_panelEditeurData.Controls.Add((Control)editeur); ((Control)editeur).Dock = DockStyle.Top; break; } editeur.LockEdition = LockEdition; m_extModeEdition.SetModeEdition(editeur, TypeModeEdition.EnableSurEdition); } m_editeursAlloues.SetEditeur(kindEditeur, calcul.GetType(), editeur); } } return(editeur); }
//---------------------------------------------------------------------- public static void RegisterEditeur(ETypeEditeurBesoin kindEditeur, Type typeBesoin, Type typeEditeur) { GetDic(kindEditeur)[typeBesoin] = typeEditeur; }