Esempio n. 1
0
        private void m_lnkAction_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
        {
            CElementAVariablesDynamiques elt    = m_parametreVisuChamp.GetObjetPourFormuleCellule(m_parametreVisuDonnee) as CElementAVariablesDynamiques;
            CActionSur2iLink             action = m_parametreVisuChamp.ActionSurClick;

            CActionSur2iLinkEditor.EditeAction(ref action, new CObjetPourSousProprietes(elt));
            m_parametreVisuChamp.ActionSurClick = action;
            m_imageLink.Visible = m_parametreVisuChamp.ActionSurClick != null;
        }
Esempio n. 2
0
        public void Init(
            CFormatChampTableauCroise format,
            CElementAVariablesDynamiques eltAVariables,
            bool bForHeader)
        {
            m_elementAVariables = eltAVariables;
            m_format            = format;
            if (format.FontSize == 0)
            {
                m_txtFontSize.IntValue = null;
            }
            else
            {
                m_txtFontSize.IntValue = format.FontSize;
            }
            m_txtColumnWidth.IntValue     = format.Width;
            m_chkBackColor.Checked        = format.BackColor.A != 0;
            m_chkForeColor.Checked        = format.ForeColor.A != 0;
            m_chkSelectedColor.Checked    = format.SelectionBackcolor.A != 0;
            m_colorBack.SelectedColor     = format.BackColor;
            m_colorFore.SelectedColor     = format.ForeColor;
            m_colorSelected.SelectedColor = format.SelectionBackcolor;
            m_colorFore.Visible           = m_chkForeColor.Checked;
            m_colorBack.Visible           = m_chkBackColor.Checked;
            m_colorSelected.Visible       = m_chkSelectedColor.Checked;
            m_cmbFont.Text = format.FontName;
            if (format.Bold != null)
            {
                m_chkBold.Checked = format.Bold.Value;
            }
            else
            {
                m_chkBold.CheckState = CheckState.Indeterminate;
            }

            m_cmbTextAlign.Items.Clear();
            m_cmbTextAlign.Items.Add("");
            foreach (C2iWndTextBox.TypeAlignement align in Enum.GetValues(typeof(C2iWndTextBox.TypeAlignement)))
            {
                m_cmbTextAlign.Items.Add(align);
            }
            if (format.Alignement != null)
            {
                m_cmbTextAlign.SelectedItem = format.Alignement;
            }
            else
            {
                m_cmbTextAlign.SelectedItem = "";
            }
            m_btnFormuleBack.Visible             =
                m_btnFormuleFore.Visible         =
                    m_btnFormuleBold.Visible     =
                        m_btnFormuleSize.Visible = m_elementAVariables != null;
            m_panelWidth.Visible = bForHeader;
            UpdateBoutonsFormules();
        }
Esempio n. 3
0
        public void Init(
            CParametreVisuChampTableauCroise parametre,
            CParametreVisuDonneePrecalculee parametreVisuDonneePrecalculee,
            CContexteDonnee contexteDonnee)
        {
            if (m_parametreVisuChamp != null)
            {
                MajChamps();
            }
            m_contexteDonnee      = contexteDonnee;
            m_parametreVisuDonnee = parametreVisuDonneePrecalculee;
            m_parametreVisuChamp  = parametre;
            if (parametre == null)
            {
                Visible = false;
                return;
            }
            Visible = true;
            CTypeDonneeCumulee      typeDonnee      = m_parametreVisuDonnee.GetTypeDonneeCumulee(m_contexteDonnee);
            CParametreDonneeCumulee parametreDonnee = null;

            if (typeDonnee != null)
            {
                parametreDonnee = typeDonnee.Parametre;
            }

            m_lblNomChamp.Text = parametre.ChampFinal.NomChamp;
            m_panelFormatStandard.Init(m_parametreVisuChamp.FormatParDefaut,
                                       parametre.GetObjetPourFormuleData(parametreDonnee), false);
            m_panelFormatHeader.Init(m_parametreVisuChamp.FormatHeader, null, true);


            CElementAVariablesDynamiques obj = m_parametreVisuChamp.GetObjetPourFormuleHeader(parametreDonnee);

            m_txtFormuleHeader.Init(obj,
                                    new CObjetPourSousProprietes(obj));

            obj = m_parametreVisuChamp.GetObjetPourFormuleData(parametreDonnee);
            m_txtFormuleData.Init(obj,
                                  new CObjetPourSousProprietes(obj));

            m_txtFormuleData.Formule   = m_parametreVisuChamp.FormuleData;
            m_txtFormuleHeader.Formule = m_parametreVisuChamp.FormuleHeader;
            m_txtSortOrder.IntValue    = m_parametreVisuChamp.SortOrder;
            m_chkDecroissant.Checked   = m_parametreVisuChamp.TriDecroissant;

            m_imageLink.Visible = m_parametreVisuChamp.ActionSurClick != null;
        }
        //----------------------------------------------------------------------
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        public bool EvaluerFormuleConditionnelle(DateTime dt)
        {
            CElementAVariablesDynamiques elt = ElementPourEvaluerLaFormuleConditionnelle;

            elt.SetValeurChamp((IVariableDynamique)elt.ListeVariables[0], dt);
            CContexteEvaluationExpression contexte = new CContexteEvaluationExpression(elt);
            C2iExpression formule = this.FormuleConditionnelle;

            if (formule != null)
            {
                CResultAErreur result = formule.Eval(contexte);
                if (result)
                {
                    if (result.Data is bool && (bool)result.Data ||
                        result.Data is int && (int)result.Data != 0)
                    {
                        return(true);
                    }
                }
            }
            return(false);
        }
 protected override void OnChangeElementEdite(object element)
 {
     if (element != null &&
         WndFiltreRapide != null)
     {
         CFiltreData filtreData;
         if (WndFiltreRapide.Filter != null)
         {
             CElementAVariablesDynamiques eltAVar = new CElementAVariablesDynamiques();
             CVariableDynamiqueStatique   var     = new CVariableDynamiqueStatique(eltAVar);
             var.Nom        = "EditedElement";
             var.IdVariable = "0";
             var.SetTypeDonnee(new CTypeResultatExpression(element.GetType(), false));
             eltAVar.AddVariable(var);
             eltAVar.SetValeurChamp(var, element);
             CFiltreDynamique filtreDyn = WndFiltreRapide.Filter;
             filtreDyn.ElementAVariablesExterne = eltAVar;
             filtreData = (CFiltreData)filtreDyn.GetFiltreData().Data;
         }
         else
         {
             filtreData = null;
         }
         Type typePropriete = null;
         if (WndFiltreRapide.Property != null)
         {
             typePropriete = WndFiltreRapide.Property.TypeDonnee.TypeDotNetNatif;
         }
         else if (WndFiltreRapide.Filter != null)
         {
             typePropriete = WndFiltreRapide.Filter.TypeElements;
         }
         if (typePropriete != null)
         {
             string strDesc = DescriptionFieldAttribute.GetDescriptionField(typePropriete, "DescriptionElement");
             C2iTextBoxFiltreRapide txtRapide = m_selectionneur as C2iTextBoxFiltreRapide;
             if (txtRapide != null)
             {
                 txtRapide.InitAvecFiltreDeBase(typePropriete, strDesc, filtreData, true);
             }
             else
             {
                 CComboBoxListeObjetsDonnees cmb = m_selectionneur as CComboBoxListeObjetsDonnees;
                 cmb.NullAutorise = true;
                 cmb.TextNull     = I.T("None|19");
                 if (cmb != null)
                 {
                     cmb.Init(
                         typePropriete,
                         filtreData,
                         strDesc,
                         true);
                 }
             }
             if (WndFiltreRapide.Property != null)
             {
                 CObjetDonnee valeur = CInterpreteurProprieteDynamique.GetValue(EditedElement, WndFiltreRapide.Property).Data as CObjetDonnee;
                 m_selectionneur.ElementSelectionne = valeur;
             }
         }
     }
 }