//-------------------------------------------------------------- public void InitFrom(CBesoin besoin, IDonneeBesoin donnee) { CDonneeBesoinTypeEquipement dT = donnee as CDonneeBesoinTypeEquipement; if (dT != null) { if (dT.Quantite != null) { Quantite = new CValeurUnite(dT.Quantite, ""); } if (dT.CoutUnitaire != null) { CoutUnitaire = new CValeurUnite(dT.CoutUnitaire.Value, ""); } return; } CDonneeBesoinQuantiteCU dQ = donnee as CDonneeBesoinQuantiteCU; if (dQ != null) { Quantite = dQ.Quantite; CoutUnitaire = dQ.CoutUnitaire; return; } }
//------------------------------------------------------ public void Init(IDonneeBesoin calcul, CBesoin besoin, CItemBesoin itemBesoin, IEnumerable <CItemBesoin> items) { m_calculPourcentage = calcul as CDonneeBesoinPourcentage; m_besoin = besoin; m_items = items; if (m_calculPourcentage != null && besoin != null) { Visible = true; m_txtPourcentage.DoubleValue = m_calculPourcentage.Pourcentage; StringBuilder bl = new StringBuilder( ); foreach (CBesoinDependance dep in besoin.LiensBesoinsDontJeDepend) { bl.Append(dep.BesoinReference.Index); bl.Append(';'); } if (bl.Length > 0) { bl.Remove(bl.Length - 1, 1); } m_txtReferences.Text = bl.ToString(); } else { Visible = false; } }
public void Init(IDonneeBesoin calcul, CBesoin besoin, CItemBesoin itemBesoin, IEnumerable <CItemBesoin> items) { m_bIsInitializing = true; m_calculQte = calcul as CDonneeBesoinQuantiteCU; if (m_calculQte != null) { Visible = true; m_txtQuantité.UnitValue = m_calculQte.Quantite; m_lblUniteCU.Text = ""; m_uniteCU = null; if (m_calculQte.CoutUnitaire != null) { m_txtCoutUnitaire.DoubleValue = m_calculQte.CoutUnitaire.Valeur; if (m_calculQte.Quantite != null && m_calculQte.Quantite.IUnite != null) { string strU = CUtilUnite.GetUniteInverse(m_calculQte.CoutUnitaire.Unite); IUnite u = CGestionnaireUnites.GetUnite(strU); if (u != null && u.Classe.GlobalId == m_calculQte.Quantite.IUnite.Classe.GlobalId) { m_uniteCU = u; m_lblUniteCU.Text = u.LibelleCourt; } } } else { m_txtCoutUnitaire.DoubleValue = null; } } m_bIsInitializing = false; }
public void Init(IDonneeBesoin calcul, CBesoin besoin, CItemBesoin itemBesoin, IEnumerable <CItemBesoin> items) { m_bIsInitializing = true; m_besoin = besoin; m_donneeOperation = calcul as CDonneeBesoinTypeOperation; if (m_donneeOperation != null) { Visible = true; FillFromDonnee(); } m_bIsInitializing = false; }
public virtual void Init(IDonneeBesoin calcul, CBesoin besoin, CItemBesoin itemBesoin, IEnumerable <CItemBesoin> items) { m_bIsInitializing = true; m_besoin = besoin; m_donneeConsommable = calcul as CDonneeBesoinTypeConsommable; if (m_donneeConsommable != null) { Visible = true; InitTypeConsommable(); m_txtSelectTypeConsommable.ElementSelectionne = m_donneeConsommable.GetTypeConsommable(besoin.ContexteDonnee); } m_bIsInitializing = false; }
public void Init(IDonneeBesoin calcul, CBesoin besoin, CItemBesoin itemBesoin, IEnumerable <CItemBesoin> items) { m_bIsInitializing = true; m_donneeEquipement = calcul as CDonneeBesoinTypeEquipement; m_besoin = besoin; if (m_donneeEquipement != null) { Visible = true; m_txtSelectTypeEquipement.Init(typeof(CTypeEquipement), "Libelle", false); m_txtSelectTypeEquipement.ElementSelectionne = m_donneeEquipement.GetTypeEquipement(besoin.ContexteDonnee); } m_bIsInitializing = false; }
/// <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); }
//-------------------------------------------------------------- public void InitFrom(CBesoin besoin, IDonneeBesoin donnee) { CDonneeBesoinQuantiteCU dCU = donnee as CDonneeBesoinQuantiteCU; if (dCU != null) { if (dCU.Quantite != null) { Quantite = (int)dCU.Quantite.Valeur; } if (dCU.CoutUnitaire != null) { m_bIsCoutTarif = false; CoutUnitaire = dCU.CoutUnitaire.Valeur; } } }
public void Init(IDonneeBesoin calcul, CBesoin besoin, CItemBesoin itemBesoin, IEnumerable <CItemBesoin> items) { m_bIsInitializing = true; m_donneeProjet = calcul as CDonneeBesoinProjet; m_besoin = besoin; if (m_donneeProjet != null) { if (!besoin.HasChildren) { m_txtCoutUnitaire.Visible = true; m_txtCoutUnitaire.DoubleValue = m_donneeProjet.CoutSaisi; } else { m_txtCoutUnitaire.Visible = false; } } m_bIsInitializing = false; }
//-------------------------------------------------------------- public void InitFrom(CBesoin besoin, IDonneeBesoin donnee) { CDonneeBesoinTypeEquipement dT = donnee as CDonneeBesoinTypeEquipement; if (dT != null) { if (dT.Quantite != null) { Quantite = new CValeurUnite(dT.Quantite, ""); } if (dT.CoutUnitaire != null) { CoutUnitaire = new CValeurUnite(dT.CoutUnitaire.Value, ""); } } else { } }
//------------------------------------------------------------- private void ChangeTypeBesoin(Type nouveauType) { if (!LockEdition && ( Besoin.DonneeBesoin == null || Besoin.DonneeBesoin.GetType() != nouveauType)) { IDonneeBesoin oldBesoin = Besoin.DonneeBesoin; IDonneeBesoin c = Activator.CreateInstance(nouveauType, new object[0]) as IDonneeBesoin; if (c != null && c.CanApplyOn(Besoin)) { if (oldBesoin != null && Besoin != null) { c.InitFrom(Besoin, oldBesoin); } Besoin.DonneeBesoin = c; ModifContrôleCout(); } } }
public void Init(IDonneeBesoin calcul, CBesoin besoin, CItemBesoin itemBesoin, IEnumerable <CItemBesoin> items) { m_bIsInitializing = true; m_donneeOperation = calcul as CDonneeBesoinTypeOperation; m_besoin = besoin; if (m_donneeOperation != null) { Visible = true; CFiltreData filtre = null; if (besoin.BesoinParent != null && besoin.BesoinParent.TypeOperation != null) { filtre = new CFiltreData(CTypeOperation.c_champIdOperationParente + "=@1", besoin.BesoinParent.TypeOperation.Id); } m_txtSelectTypeOperation.InitAvecFiltreDeBase(typeof(CTypeOperation), "LibelleComplet", filtre, false); m_txtSelectTypeOperation.ElementSelectionne = m_donneeOperation.GetTypeOperation(besoin.ContexteDonnee); } m_bIsInitializing = false; }
//----------------------------------------------------------------------- protected override CResultAErreur MyMajChamps() { CResultAErreur result = base.MyMajChamps(); if (CurrentItem != null) { CBesoin besoin = CurrentItem.Tag as CBesoin; if (besoin != null) { besoin.Libelle = m_txtLibelle.Text; } m_wndListeQuantites.MajChamps(); if (m_panelRegroupement.Visible) { besoin.RegroupementQuantite = m_cmbRegroupement.SelectedValue as CBesoinQuantite; } IDonneeBesoin donnee = null; foreach (IEditeurDonneeBesoin editeur in m_dicEditeursEnCours.Values) { if (editeur != null && result) { result = editeur.MajChamps(); if (donnee == null) { donnee = editeur.DonneeBesoin; } } } if (result) { besoin.DonneeBesoin = donnee; } ((CControleListeBesoins)AssociatedListControl).AfterTotalChanged(Besoin); besoin.Index = CurrentItem.Index; CurrentItem.Height = Height; } return(result); }
public void Init(IDonneeBesoin calcul, CBesoin besoin, CItemBesoin itemBesoin, IEnumerable <CItemBesoin> items) { m_bIsInitializing = true; m_calculProjet = calcul as CDonneeBesoinProjet; m_besoin = besoin; m_items = items; if (m_calculProjet != null && besoin != null) { m_txtSelectTypeProjet.Init(typeof(CTypeProjet), "Libelle", false); m_txtSelectTypeProjet.ElementSelectionne = (m_calculProjet.GetTypeProjet(besoin.ContexteDonnee)); Visible = true; StringBuilder bl = new StringBuilder( ); foreach (CBesoinDependance dep in besoin.LiensBesoinsDontJeDepend) { bl.Append(dep.BesoinReference.Index); bl.Append(';'); } if (bl.Length > 0) { bl.Remove(bl.Length - 1, 1); } m_txtReferences.Text = bl.ToString(); if (m_calculProjet.DureeJours == 0) { m_txtDuree.UnitValue = null; } else { m_txtDuree.UnitValue = new CValeurUnite(m_calculProjet.DureeJours, CClasseUniteTemps.c_idDAY); } m_txtTemplateKey.Text = m_calculProjet.CleProjetTemplate; } else { Visible = false; } m_bIsInitializing = false; }
//----------------------------------------------- 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 void InitFrom(CBesoin besoin, IDonneeBesoin donnee) { CoutSaisi = donnee.CalculeCout(besoin); }
public void Init(IDonneeBesoin donnee, CBesoin besoin, CItemBesoin itemBesoin, IEnumerable <CItemBesoin> items) { m_besoin = besoin; m_itemBesoin = itemBesoin; FillDatas(); }
//--------------------------------------------------------- public void InitFrom(CBesoin besoin, IDonneeBesoin donnee) { }
private void UpdateMenuTypeCalculCout() { if (DesignMode) { return; } if (m_menuTypeDeBesoin.DropDownItems.Count == 0) { //Crée les items //trouve les types implémentant ICalculCoutBesoin List <Type> lstTypes = new List <Type>(); foreach (Assembly ass in CGestionnaireAssemblies.GetAssemblies()) { foreach (Type tp in ass.GetTypes()) { if (typeof(IDonneeBesoin).IsAssignableFrom(tp) && !tp.IsAbstract) { lstTypes.Add(tp); } } } foreach (Type tp in lstTypes) { try { IDonneeBesoin c = Activator.CreateInstance(tp, new object[0]) as IDonneeBesoin; ToolStripMenuItem itemTypeCalcul = new ToolStripMenuItem(c.LibelleStatique); if (c.ShortKey != null) { m_dicShortKeysToTypeBesoin[c.ShortKey.Value] = tp; string strLib = c.LibelleStatique; int nIndex = c.LibelleStatique.ToUpper().IndexOf(c.ShortKey.Value.ToString().ToUpper()); if (nIndex >= 0) { strLib = strLib.Insert(nIndex, "&"); } itemTypeCalcul.Text = strLib; } itemTypeCalcul.Tag = c; itemTypeCalcul.Image = CTypeDonneeBesoin.GetImage(c.TypeDonnee); m_menuTypeDeBesoin.DropDownItems.Add(itemTypeCalcul); itemTypeCalcul.Click += new EventHandler(itemTypeCalcul_Click); } catch { } } } m_menuTypeDeBesoin.Enabled = !LockEdition; //Met à jour les actions CUtilMenuActionSurElement.InitMenuActions(Besoin, m_menuActions.DropDownItems, new MenuActionEventHandler(OnActionSurBesoin)); CBesoin besoin = Besoin; if (besoin != null) { foreach (ToolStripMenuItem item in m_menuTypeDeBesoin.DropDownItems) { IDonneeBesoin c = item.Tag as IDonneeBesoin; if (c != null) { item.Visible = c.CanApplyOn(besoin); } } } }
//------------------------------------------------------------- private void ModifContrôleCout() { foreach (IEditeurDonneeBesoin editeurTmp in m_dicEditeursEnCours.Values) { if (editeurTmp != null) { ((Control)editeurTmp).Visible = false; } } m_dicEditeursEnCours.Clear(); IEditeurDonneeBesoin editeur = null; if (Besoin != null) { IDonneeBesoin donnee = Besoin.DonneeBesoin; IEnumerable <CItemBesoin> lstBesoins = from i in AssociatedListControl.Items select i as CItemBesoin; foreach (ETypeEditeurBesoin kind in Enum.GetValues(typeof(ETypeEditeurBesoin))) { if (kind == ETypeEditeurBesoin.EditeurCout) { switch (ModeAffichage) { case EModeAffichageBesoins.ModeSansCout: editeur = null; break; case EModeAffichageBesoins.ModeConception: editeur = GetEditeur(kind, donnee, Besoin); break; case EModeAffichageBesoins.ModeSuivi: editeur = m_panelSuivi; break; default: editeur = null; break; } } else { editeur = GetEditeur(kind, donnee, Besoin); } if (editeur != null) { editeur.Init(donnee, Besoin, CurrentItem as CItemBesoin, lstBesoins); ((Control)editeur).Visible = true; m_dicEditeursEnCours[kind] = editeur; } } m_imageBesoin.Image = CTypeDonneeBesoin.GetImage((ETypeDonneeBesoin)Besoin.TypeBesoinCode); } editeur = GetEditeurEnCours(ETypeEditeurBesoin.EditeurDonnees); if (editeur != null) { m_panelEditeurData.Height = ((Control)editeur).Height; } else { m_panelEditeurData.Height = 0; } CalcHeight(); RefreshCoutTotal(); }