Esempio n. 1
0
        //---------------------------------------------
        protected override void MyAppliqueRestriction(
            CRestrictionUtilisateurSurType restrictionSurObjetEdite,
            CListeRestrictionsUtilisateurSurType listeRestrictions,
            IGestionnaireReadOnlySysteme gestionnaireReadOnly)
        {
            bool bShowPictureRestriction = false;

            if (listeRestrictions != null && EditedElement != null)
            {
                CChampCustom champ = WndVariable.Variable as CChampCustom;
                if (champ != null && restrictionSurObjetEdite != null && m_controleForVariable.Control != null)
                {
                    ERestriction rest = restrictionSurObjetEdite.GetRestriction(champ.CleRestriction);
                    if ((rest & ERestriction.ReadOnly) == ERestriction.ReadOnly)
                    {
                        gestionnaireReadOnly.SetReadOnly(m_controleForVariable.Control, true);
                        bShowPictureRestriction = true;
                    }
                }
            }
            if (VisualiseurReadOnly != null)
            {
                if (bShowPictureRestriction)
                {
                    VisualiseurReadOnly.Visible = true;
                }
                else
                {
                    VisualiseurReadOnly.Visible = false;
                }
            }
        }
        //---------------------------------------------
        protected override void MyAppliqueRestriction(
            CRestrictionUtilisateurSurType restrictionSurObjetEdite,
            CListeRestrictionsUtilisateurSurType listeRestrictions,
            IGestionnaireReadOnlySysteme gestionnaireReadOnly)
        {
            if (EditedElement != null && m_textBoxNumerique != null)
            {
                ERestriction        rest   = restrictionSurObjetEdite.RestrictionGlobale;
                C2iWndTextBoxEntier wndTxt = WndAssociee as C2iWndTextBoxEntier;
                if (wndTxt != null)
                {
                    CDefinitionProprieteDynamique def = wndTxt.Property;
                    if (def != null)
                    {
                        rest = def.GetRestrictionAAppliquer(restrictionSurObjetEdite);
                    }
                }

                switch (rest)
                {
                case ERestriction.ReadOnly:
                case ERestriction.Hide:
                {
                    gestionnaireReadOnly.SetReadOnly(m_textBoxNumerique, true);
                    break;
                }

                default: break;
                }
            }
        }
Esempio n. 3
0
 //---------------------------------------------
 protected override void MyAppliqueRestriction(
     CRestrictionUtilisateurSurType restrictionSurObjetEdite,
     CListeRestrictionsUtilisateurSurType listeRestrictions,
     IGestionnaireReadOnlySysteme gestionnaireReadOnly)
 {
     if (m_grid != null)
     {
         m_grid.InitRestrictions(listeRestrictions);
     }
 }
Esempio n. 4
0
 //---------------------------------------------------------------------
 protected override void MyAppliqueRestriction(
     CRestrictionUtilisateurSurType restrictionSurObjetEdite,
     CListeRestrictionsUtilisateurSurType listeRestrictions,
     IGestionnaireReadOnlySysteme gestionnaireReadOnly)
 {
     if (m_panelListeSpeedStd != null)
     {
         m_panelListeSpeedStd.AppliqueRestrictions(listeRestrictions, gestionnaireReadOnly);
     }
 }
Esempio n. 5
0
 //---------------------------------------------------
 public void AppliqueRestrictions(
     CRestrictionUtilisateurSurType restrictionSurObjetEdite,
     CListeRestrictionsUtilisateurSurType listeRestrictions,
     IGestionnaireReadOnlySysteme gestionnaireReadOnly)
 {
     m_panelSousFormulaire.AppliqueRestrictions(
         restrictionSurObjetEdite,
         listeRestrictions,
         gestionnaireReadOnly);
 }
Esempio n. 6
0
        public void AppliqueRestriction(
            CRestrictionUtilisateurSurType restrictionSurObjetEdite,
            CListeRestrictionsUtilisateurSurType listeRestriction,
            IGestionnaireReadOnlySysteme gestionnaireReadOnly)
        {
            if (listeRestriction == null || gestionnaireReadOnly == null)
            {
                return;
            }
            m_listeRestrictionsAppliquées    = listeRestriction.Clone() as CListeRestrictionsUtilisateurSurType;
            m_restrictionSurObjetEditeParent = restrictionSurObjetEdite;
            m_gestionnaireReadOnly           = gestionnaireReadOnly;
            bool bAllReadOnly = false;

            if ((restrictionSurObjetEdite.RestrictionGlobale & ERestriction.ReadOnly) == ERestriction.ReadOnly)
            {
                gestionnaireReadOnly.SetReadOnly(this, true);
                bAllReadOnly = true;
            }
            //Récupère la restriction sur le type des éléments
            if (m_zoneMultiple != null && m_zoneMultiple.SourceFormula != null)
            {
                C2iExpression source = m_zoneMultiple.SourceFormula;
                Type          tp     = source.TypeDonnee.TypeDotNetNatif;
                if (tp != null)
                {
                    //Chope la restriction et l'envoie à tous ses fils
                    CRestrictionUtilisateurSurType rest = listeRestriction.GetRestriction(tp);
                    if (bAllReadOnly)//Si readonly forcé sur toute la zone
                    {
                        rest.RestrictionUtilisateur |= ERestriction.ReadOnly;
                    }
                    m_bPreventAddFromRestriction    = (rest.RestrictionGlobale & ERestriction.NoCreate) == ERestriction.NoCreate;
                    m_bPreventDeleteFromRestriction = (rest.RestrictionGlobale & ERestriction.NoDelete) == ERestriction.NoDelete;
                    m_lnkAdd.Visible   = !m_bPreventAddFromRestriction && m_zoneMultiple.HasAddButton;
                    m_panelTop.Visible = m_nbPages > 1 || m_zoneMultiple.HasAddButton;
                    foreach (Control ctrl in m_panelSousFormulaires.Controls)
                    {
                        CPanelChildElement sousFormulaire = ctrl as CPanelChildElement;
                        if (sousFormulaire != null)
                        {
                            sousFormulaire.AppliqueRestrictions(rest,
                                                                listeRestriction,
                                                                gestionnaireReadOnly);
                            if (m_bPreventDeleteFromRestriction)
                            {
                                sousFormulaire.DelegueSuppression = null;
                            }
                        }
                    }
                }
            }
        }
Esempio n. 7
0
 //---------------------------------------------
 protected override void MyAppliqueRestriction(
     CRestrictionUtilisateurSurType restrictionSurObjetEdite,
     CListeRestrictionsUtilisateurSurType restrictions,
     IGestionnaireReadOnlySysteme gestionnaireReadOnly)
 {
     if (m_wndChamp != null)
     {
         m_wndChamp.AppliqueRestriction(restrictionSurObjetEdite,
                                        restrictions,
                                        gestionnaireReadOnly);
     }
 }
Esempio n. 8
0
 //---------------------------------------------
 /// <summary>
 /// Applique les restrictions
 /// </summary>
 /// <param name="listeRestriction"></param>
 public void AppliqueRestriction(
     CRestrictionUtilisateurSurType restrictionSurObjetEdite,
     CListeRestrictionsUtilisateurSurType listeRestrictions,
     IGestionnaireReadOnlySysteme gestionnaireReadOnly
     )
 {
     MyAppliqueRestriction(restrictionSurObjetEdite, listeRestrictions, gestionnaireReadOnly);
     foreach (IControleWndFor2iWnd child in Childs)
     {
         child.AppliqueRestriction(restrictionSurObjetEdite, listeRestrictions, gestionnaireReadOnly);
     }
 }
Esempio n. 9
0
 //---------------------------------------------------
 public void AppliqueRestrictions(
     CRestrictionUtilisateurSurType restrictionSurObjetEdite,
     CListeRestrictionsUtilisateurSurType listeRestrictions,
     IGestionnaireReadOnlySysteme gestionnaireReadOnly)
 {
     m_panelSousFormulaire.AppliqueRestrictions(
         restrictionSurObjetEdite,
         listeRestrictions,
         gestionnaireReadOnly);
     m_restriction                = restrictionSurObjetEdite.Clone() as CRestrictionUtilisateurSurType;;
     m_listeRestrictions          = listeRestrictions.Clone() as CListeRestrictionsUtilisateurSurType;
     m_gestionnaireReadonlySystem = gestionnaireReadOnly;
 }
Esempio n. 10
0
 //---------------------------------------------
 public void AppliqueRestriction(
     CRestrictionUtilisateurSurType restriction,
     CListeRestrictionsUtilisateurSurType listeRestriction,
     IGestionnaireReadOnlySysteme gestionnaireReadOnly)
 {
     foreach (IControleWndFor2iWnd ctrl in m_controlesFils)
     {
         ctrl.AppliqueRestriction(
             restriction,
             listeRestriction,
             gestionnaireReadOnly);
     }
 }
Esempio n. 11
0
 //-----------------------------------------------
 public void AppliqueRestrictions(
     CListeRestrictionsUtilisateurSurType restrictions,
     IGestionnaireReadOnlySysteme gestionnaireReadOnly)
 {
     if (ElementEdite != null)
     {
         CRestrictionUtilisateurSurType restriction = restrictions.GetRestriction(ElementEdite.GetType());
         restriction.ApplyToObjet(ElementEdite);
         foreach (IControleWndFor2iWnd ctrl in m_controlesPrincipaux)
         {
             ctrl.AppliqueRestriction(
                 restriction,
                 restrictions,
                 gestionnaireReadOnly);
         }
     }
 }
Esempio n. 12
0
 //---------------------------------------------------
 public void AppliqueRestrictions(
     CRestrictionUtilisateurSurType restrictionSurObjetEdite,
     CListeRestrictionsUtilisateurSurType listeRestrictions,
     IGestionnaireReadOnlySysteme gestionnaireReadOnly)
 {
     if (m_controlePrincipal != null)
     {
         if (gestionnaireReadOnly != null)
         {
             gestionnaireReadOnly.AddControl(m_controlePrincipal);
         }
         m_controlePrincipal.AppliqueRestriction(
             restrictionSurObjetEdite,
             listeRestrictions,
             gestionnaireReadOnly);
     }
 }
Esempio n. 13
0
 /// ///////////////////////////////////////////
 ///
 /// ///////////////////////////////////////////
 public void AppliqueRestriction(
     CRestrictionUtilisateurSurType restrictionSurElementEdite,
     CListeRestrictionsUtilisateurSurType listeRestriction,
     IGestionnaireReadOnlySysteme gestionnaire)
 {
     if (listeRestriction != null && EditedElement != null)
     {
         CChampCustom champ = m_wndSelectionValeurChamp.ChampCustom;
         if (champ != null && restrictionSurElementEdite != null)
         {
             ERestriction rest = restrictionSurElementEdite.GetRestriction(champ.CleRestriction);
             if ((rest & ERestriction.ReadOnly) == ERestriction.ReadOnly)
             {
                 gestionnaire.SetReadOnly(Control, true);
             }
         }
     }
 }
 //---------------------------------------------------------------
 protected override void MyAppliqueRestriction(
     CRestrictionUtilisateurSurType restrictionSurObjetEdite,
     CListeRestrictionsUtilisateurSurType listeRestrictions,
     IGestionnaireReadOnlySysteme gestionnaireReadOnly)
 {
     if (listeRestrictions != null && gestionnaireReadOnly != null)
     {
         m_listeRestrictions    = listeRestrictions.Clone() as CListeRestrictionsUtilisateurSurType;
         m_gestionnaireReadOnly = gestionnaireReadOnly;
         if (m_panelSousFormulaire != null)
         {
             m_panelSousFormulaire.AppliqueRestrictions(
                 restrictionSurObjetEdite,
                 listeRestrictions,
                 gestionnaireReadOnly);
         }
     }
 }
Esempio n. 15
0
        //---------------------------------------------
        public void AppliqueRestriction(
            CRestrictionUtilisateurSurType restrictionSurObjetEdite,
            CListeRestrictionsUtilisateurSurType listeRestrictions,
            IGestionnaireReadOnlySysteme gestionnaireReadOnly)
        {
            if (listeRestrictions != null)
            {
                m_listeRestrictions = listeRestrictions.Clone() as CListeRestrictionsUtilisateurSurType;
            }
            if (gestionnaireReadOnly != null)
            {
                m_gestionnaireReadOnly = gestionnaireReadOnly;
            }

            foreach (IControleWndFor2iWnd child in Childs)
            {
                child.AppliqueRestriction(restrictionSurObjetEdite,
                                          listeRestrictions,
                                          gestionnaireReadOnly);
            }
        }
Esempio n. 16
0
        //---------------------------------------------
        protected override void MyAppliqueRestriction(
            CRestrictionUtilisateurSurType restrictionSurObjetEdite,
            CListeRestrictionsUtilisateurSurType listeRestrictions,
            IGestionnaireReadOnlySysteme gestionnaireReadOnly)
        {
            if (EditedElement != null && m_checkBox != null)
            {
                //Chope la restriction sur le champ concerné
                C2iWndCheckBox chk  = WndAssociee as C2iWndCheckBox;
                ERestriction   rest = restrictionSurObjetEdite.RestrictionGlobale;
                if (chk != null)
                {
                    CDefinitionProprieteDynamique def = chk.Property;
                    if (def != null)
                    {
                        rest = def.GetRestrictionAAppliquer(restrictionSurObjetEdite);
                    }
                }
                switch (rest)
                {
                case ERestriction.ReadOnly:
                {
                    gestionnaireReadOnly.SetReadOnly(m_checkBox, true);
                    break;
                }

                case ERestriction.Hide:
                {
                    gestionnaireReadOnly.SetReadOnly(m_checkBox, true);
                    m_checkBox.Hide();
                    break;
                }

                default: break;
                }
            }
        }
 //---------------------------------------------------------------
 protected override void MyAppliqueRestriction(
     CRestrictionUtilisateurSurType restrictionSurObjetEdite,
     CListeRestrictionsUtilisateurSurType listeRestrictions,
     IGestionnaireReadOnlySysteme gestionnaireReadOnly)
 {
     if (EditedElement != null &&
         m_selectionneur != null)
     {
         ERestriction rest = restrictionSurObjetEdite.RestrictionGlobale;
         C2iWndTextBoxFiltreRapide wndTxt = WndAssociee as C2iWndTextBoxFiltreRapide;
         if (wndTxt != null)
         {
             CDefinitionProprieteDynamique def = wndTxt.Property;
             if (def != null)
             {
                 rest = def.GetRestrictionAAppliquer(restrictionSurObjetEdite);
             }
         }
         if ((rest & ERestriction.ReadOnly) == ERestriction.ReadOnly)
         {
             gestionnaireReadOnly.SetReadOnly(m_selectionneur, true);
         }
     }
 }
Esempio n. 18
0
 //---------------------------------------------
 protected override void MyAppliqueRestriction(
     CRestrictionUtilisateurSurType restrictionSurObjetEdite,
     CListeRestrictionsUtilisateurSurType restrictions,
     IGestionnaireReadOnlySysteme gestionnaireReadOnly)
 {
 }
Esempio n. 19
0
        /// ///////////////////////////////////////////////////
        public void AppliqueRestrictions(CListeRestrictionsUtilisateurSurType restrictions, IGestionnaireReadOnlySysteme gestionnaireReadOnly)
        {
            if (restrictions == null || gestionnaireReadOnly == null)
            {
                return;
            }
            m_listeRestrictions    = restrictions.Clone() as CListeRestrictionsUtilisateurSurType;
            m_gestionnaireReadOnly = gestionnaireReadOnly;

            //Gère la visibilité des formulaires
            if (m_elementEdite != null)
            {
                CRestrictionUtilisateurSurType rest = m_listeRestrictions.GetRestriction(m_elementEdite.GetType());
                rest.ApplyToObjet(m_elementEdite);
                if (rest.HasRestrictions)
                {
                    foreach (KeyValuePair <Crownwood.Magic.Controls.TabPage, int> kv in m_tablePageToIdFormulaire)
                    {
                        CFormulaire formulaire = new CFormulaire(m_elementEdite.ContexteDonnee);
                        if (formulaire.ReadIfExists(kv.Value))
                        {
                            ERestriction r = rest.GetRestriction(formulaire.CleRestriction);
                            if ((r & ERestriction.Hide) == ERestriction.Hide)
                            {
                                if (TabPages.Contains(kv.Key))
                                {
                                    TabPages.Remove(kv.Key);
                                    m_tablePagesInit[kv.Key] = false;
                                }
                            }
                        }
                    }
                }
            }


            //Update les pages initialisées
            foreach (KeyValuePair <Crownwood.Magic.Controls.TabPage, bool> kv in m_tablePagesInit)
            {
                if (kv.Value)
                {
                    CCreateur2iFormulaireObjetDonnee createur = null;
                    if (m_tableCreateurs.TryGetValue(kv.Key, out createur))
                    {
                        CRestrictionUtilisateurSurType oldRest = null;

                        if (m_elementEdite != null)
                        {
                            CRestrictionUtilisateurSurType restriction = m_listeRestrictions.GetRestriction(m_elementEdite.GetType());
                            oldRest = m_listeRestrictions.GetRestriction(m_elementEdite.GetType());
                            restriction.ApplyToObjet(m_elementEdite);
                            int nIdFormulaire;
                            if (m_tablePageToIdFormulaire.TryGetValue(kv.Key, out nIdFormulaire))
                            {
                                CFormulaire formulaire = new CFormulaire(m_elementEdite.ContexteDonnee);
                                if (formulaire.ReadIfExists(nIdFormulaire))
                                {
                                    ERestriction rest = restriction.GetRestriction(formulaire.CleRestriction);
                                    if ((rest & ERestriction.ReadOnly) == ERestriction.ReadOnly)
                                    {
                                        restriction.AddRestrictionsHorsPriorite(new CRestrictionUtilisateurSurType(restriction.TypeAssocie, ERestriction.ReadOnly));
                                        //force readonly sur tous les contrôles
                                        restriction.RestrictionUtilisateur = ERestriction.ReadOnly;
                                        m_listeRestrictions.SetRestriction(restriction);
                                    }
                                }
                            }
                        }
                        createur.AppliqueRestrictions(m_listeRestrictions, m_gestionnaireReadOnly);
                        if (oldRest != null)
                        {
                            m_listeRestrictions.SetRestriction(oldRest);
                        }
                    }
                }
            }
        }