//-------------------------------------------------------------- public static void EditeDroits(Type type) { if (type == null) { return; } CFormEditDroitsSurType form = new CFormEditDroitsSurType(); using (CContexteDonnee contexte = CSc2iWin32DataClient.ContexteCourant.GetContexteEdition()) { CDroitEditionType droit = new CDroitEditionType(contexte); if (!droit.ReadIfExists(new CFiltreData(CDroitEditionType.c_champTypeElements + "=@1", type.ToString()))) { droit.CreateNewInCurrentContexte(); droit.TypeElements = type; } form.m_droitSurType = droit; if (form.ShowDialog() == DialogResult.OK) { CResultAErreur result = contexte.CommitEdit(); if (!result) { CFormAlerte.Afficher(result.Erreur); } } else { contexte.CancelEdit(); } } form.Dispose(); return; }
//------------------------------------------------------------------- public override CResultAErreur VerifieDonnees(CObjetDonnee objet) { CResultAErreur result = CResultAErreur.True; try { CDroitEditionType droitEditionType = (CDroitEditionType)objet; CParametreDroitEditionType parametre = droitEditionType.ParametreDroits; if (parametre != null) { result = parametre.VerifieDonnees(); } } catch (Exception e) { result.EmpileErreur(new CErreurException(e)); } return(result); }
//------------------------------------------------------------------------ public void Init(CDroitEditionType droit) { List <CCustomizableListItem> items = new List <CCustomizableListItem>(); CParametreDroitEditionType parametre = droit.ParametreDroits; if (droit.TypeElements != null) { m_picType.Image = DynamicClassAttribute.GetImage(droit.TypeElements); m_lblType.Text = DynamicClassAttribute.GetNomConvivial(droit.TypeElements); ((CEditeurDroitTypeEdition)ItemControl).TypeObjets = droit.TypeElements; foreach (CParametreDroitEditionType.CCoupleFormuleToGroupeRestrictions couple in parametre.CouplesFormuleGroupe) { CCustomizableListItem item = new CCustomizableListItem(); item.Tag = CCloner2iSerializable.Clone(couple) as CParametreDroitEditionType.CCoupleFormuleToGroupeRestrictions; items.Add(item); } } Items = items.ToArray(); Refill(); }
//--------------------------------------------------- public static void EditeProjet( CProjet projet, bool bModeEdition, CFormEditionStandard formAppelante) { CFormQuickEditProjet form = new CFormQuickEditProjet(); form.m_formAppelante = formAppelante; form.m_gestionnaireModeEdition.ModeEdition = bModeEdition; form.m_projet = projet; IInfoUtilisateur info = CTimosApp.SessionClient.GetInfoUtilisateur(); if (info != null) { CRestrictionUtilisateurSurType restriction = info.GetRestrictionsSurObjet(projet, projet.ContexteDonnee.IdVersionDeTravail); if (restriction != null) { form.m_listeRestrictions.SetRestriction(restriction); } } CListeRestrictionsUtilisateurSurType restrictionsEnPlus = CDroitEditionType.GetDroits(projet); if (restrictionsEnPlus != null) { form.m_listeRestrictions.Combine(restrictionsEnPlus); } CRestrictionUtilisateurSurType rest = form.m_listeRestrictions.GetRestriction(typeof(CProjet)); form.m_gestionnaireModeEdition.ModeEdition = bModeEdition && (rest.RestrictionGlobale & ERestriction.ReadOnly) != ERestriction.ReadOnly; form.Location = new Point(Screen.PrimaryScreen.WorkingArea.Width / 2 - form.Width / 2, Screen.PrimaryScreen.WorkingArea.Height / 2 - form.Height / 2); form.ShowDialog(); form.Dispose(); }