예제 #1
0
        /// <summary>
        /// ////////////////////////////////////////////
        /// </summary>
        /// <param name="dt"></param>
        private void SetDateStart(DateTime dt)
        {
            m_dtFirstCellDate = dt;
            CreateControlsJour();
            bool bOnlyOnMonth = false;
            int  nMonthAvec1  = dt.Month;
            int  nYearAvec1   = dt.Year;

            for (int nJour = 0; nJour < 35; nJour++)
            {
                if ((nJour % 7) == 0)
                {
                    Label labelSemaine = (Label)m_listeLabelsSemaines[(int)(nJour / 7)];
                    labelSemaine.Text = CUtilDate.GetWeekNum(dt).ToString();
                }
                CControlJourAgendaModeMois jour = (CControlJourAgendaModeMois)m_listeControlsJours[nJour];
                if (dt.Day == 1 && nJour < 7)
                {
                    bOnlyOnMonth = true;
                    nMonthAvec1  = dt.Month;
                    nYearAvec1   = dt.Year;
                }
                jour.SetJour(dt);
                //jour.SetCalendrier ( m_calendrierAssocie );
                if (dt.Month % 2 == 0)
                {
                    jour.CouleurFond = m_couleursMoisPairs;
                }
                else
                {
                    jour.CouleurFond = m_couleurMoisImpairs;
                }
                if (dt == m_dateEnCours)
                {
                    jour.Focus();
                }
                dt = dt.AddDays(1);
            }
            if (bOnlyOnMonth)
            {
                m_labelTitre.Text = CUtilDate.GetNomMois(nMonthAvec1, false) + " " + nYearAvec1.ToString();
            }
            else
            {
                m_labelTitre.Text = CUtilDate.GetNomMois(m_dtFirstCellDate.Month, false) + " ";
                if (m_dtFirstCellDate.Year != m_dtFirstCellDate.AddDays(35).Year)
                {
                    m_labelTitre.Text += m_dtFirstCellDate.Year.ToString() + " ";
                }
                m_labelTitre.Text += "- ";
                m_labelTitre.Text += CUtilDate.GetNomMois(m_dtFirstCellDate.AddDays(35).Month, false) + " ";
                m_labelTitre.Text += m_dtFirstCellDate.AddDays(35).Year.ToString() + " ";
            }
            m_scrollBar.Enabled = false;
            m_scrollBar.Minimum = -100;
            m_scrollBar.Value   = 0;
            m_scrollBar.Maximum = 100;
            m_scrollBar.Enabled = true;
            UpdateItems();
        }
예제 #2
0
 /// <summary>
 /// ////////////////////////////////////////////
 /// </summary>
 /// <param name="dt"></param>
 private void SetDateStart(DateTime dt)
 {
     m_dtFirstCellDate = dt;
     CreateControlsJour();
     for (int nJour = 0; nJour < 7; nJour++)
     {
         CControlJourAgendaModeMois jour = (CControlJourAgendaModeMois)m_listeControlsJours[nJour];
         jour.SetJour(dt);
         if (dt.Month % 2 == 0)
         {
             jour.CouleurFond = m_couleursMoisPairs;
         }
         else
         {
             jour.CouleurFond = m_couleurMoisImpairs;
         }
         dt = dt.AddDays(1);
     }
     m_labelTitre.Text = I.T("Week |121 ") + CUtilDate.GetWeekNum(m_dtFirstCellDate).ToString().PadLeft(2, '0') + "/" +
                         CUtilDate.GetYearOfWeek(m_dtFirstCellDate).ToString();
     m_scrollBar.Enabled = false;
     m_scrollBar.Minimum = -100;
     m_scrollBar.Value   = 0;
     m_scrollBar.Maximum = 100;
     m_scrollBar.Enabled = true;
     UpdateItems();
 }
예제 #3
0
        /// ////////////////////////////////////////////
        private void CreateControlsJour()
        {
            if (m_listeControlsJours.Count != 0)
            {
                return;
            }
            this.SuspendDrawing();
            Visible = false;
            int nWidth         = m_panelJours.ClientRectangle.Width;
            int nHeight        = m_panelJours.ClientRectangle.Height;
            int nWidthElt      = nWidth / 2;
            int nHeightElement = nHeight / 3;
            CControlJourAgendaModeMois jour;

            for (int nJour = 0; nJour < 7; nJour++)
            {
                jour = new CControlJourAgendaModeMois(this);
                jour.AvecInitiales                  = m_elementsAAgenda != null && m_elementsAAgenda.Length > 0;
                jour.ImageRoles                     = m_imagesRoles != null?m_imagesRoles.ImageList:null;
                jour.OnDemandeAffichageEntree      += new DemandeAffichageEntreeAgendaEventHandler(OnDemandeAffichageEntree);
                jour.OnDemandeCreationEntreeAgenda += new EventHandler(jour_OnDemandeCreationEntreeAgenda);
                jour.Parent = m_panelJours;
                jour.Left   = (nJour / 3) * (nWidthElt - 1);
                jour.Top    = (nJour % 3) * (nHeightElement - 1);
                if (nJour == 6)
                {
                    jour.Top  = (nHeightElement - 1) * 2 + nHeightElement / 2;
                    jour.Left = (nWidthElt - 1);
                }
                jour.Width  = nWidthElt;
                jour.Height = nHeightElement;
                if (nJour >= 5)
                {
                    jour.Height = nHeightElement / 2;
                }
                jour.Visible = true;
                jour.CreateControl();
                jour.Enter      += new EventHandler(jour_Enter);
                jour.ModeSemaine = true;
                m_listeControlsJours.Add(jour);
            }
            m_scrollBar.Left   = m_panelJours.Left + 7 * (nWidthElt - 1);
            m_scrollBar.Top    = m_panelJours.Top;
            m_scrollBar.Height = 5 * (nHeightElement - 1);
            SetSemaineEnCours(CUtilDate.GetWeekNum(DateTime.Now), CUtilDate.GetYearOfWeek(DateTime.Now));
            DateEnCours = m_dateEnCours;
            this.ResumeDrawing();
            Visible = true;
        }
예제 #4
0
        /// ////////////////////////////////////////////
        private void CreateControlsJour()
        {
            if (m_listeControlsJours.Count != 0)
            {
                return;
            }
            this.SuspendDrawing();
            Visible = false;
            int   nWidth         = m_panelJours.ClientRectangle.Width;
            int   nHeight        = m_panelJours.ClientRectangle.Height;
            int   nWidthElt      = nWidth / 7;
            int   nHeightElement = nHeight / 5;
            Label labelNom;

            for (int nSemaine = 0; nSemaine < 5; nSemaine++)
            {
                Label labelSemaine = new Label();
                labelSemaine.Parent    = m_panelNumSemaine;
                labelSemaine.Width     = m_panelNumSemaine.Width;
                labelSemaine.Height    = nHeightElement;
                labelSemaine.Left      = 0;
                labelSemaine.Top       = nSemaine * (nHeightElement - 1);
                labelSemaine.TextAlign = ContentAlignment.MiddleCenter;
                labelSemaine.Visible   = true;
                labelSemaine.CreateControl();

                m_listeLabelsSemaines.Add(labelSemaine);

                CControlJourAgendaModeMois jour;
                for (int nJour = 0; nJour < 7; nJour++)
                {
                    jour = new CControlJourAgendaModeMois(this);
                    jour.AvecInitiales             = m_elementsAAgenda != null && m_elementsAAgenda.Length > 0;
                    jour.ImageRoles                = m_imagesRoles != null?m_imagesRoles.ImageList:null;
                    jour.OnDemandeAffichageEntree += new DemandeAffichageEntreeAgendaEventHandler(OnDemandeAffichageEntree);
                    jour.Parent  = m_panelJours;
                    jour.Left    = nJour * (nWidthElt - 1);
                    jour.Top     = nSemaine * (nHeightElement - 1);
                    jour.Width   = nWidthElt;
                    jour.Height  = nHeightElement;
                    jour.Visible = true;
                    jour.CreateControl();
                    jour.Enter += new EventHandler(jour_Enter);
                    jour.OnDemandeCreationEntreeAgenda += new EventHandler(jour_OnDemandeCreationEntreeAgenda);
                    m_listeControlsJours.Add(jour);

                    if (nSemaine == 0)
                    {
                        labelNom           = new Label();
                        labelNom.Parent    = m_panelNomsJours;
                        labelNom.Height    = m_panelNomsJours.ClientRectangle.Height;
                        labelNom.Width     = nWidthElt;
                        labelNom.Top       = 0;
                        labelNom.Left      = nJour * nWidthElt;
                        labelNom.Visible   = true;
                        labelNom.TextAlign = ContentAlignment.TopCenter;
                        labelNom.CreateControl();
                        switch (nJour)
                        {
                        case 0:
                            labelNom.Text = I.T("Monday|30023");
                            break;

                        case 1:
                            labelNom.Text = I.T("Thursday|30024");
                            break;

                        case 2:
                            labelNom.Text = I.T("Wednesday|30025");
                            break;

                        case 3:
                            labelNom.Text = I.T("Thursday|30026");
                            break;

                        case 4:
                            labelNom.Text = I.T("Friday|30027");
                            break;

                        case 5:
                            labelNom.Text = I.T("Saturday|30028");
                            break;

                        case 6:
                            labelNom.Text = I.T("Sunday|30029");
                            break;
                        }
                        m_listeLabelsNoms.Add(labelNom);
                    }
                }
                m_scrollBar.Left   = m_panelJours.Left + 7 * (nWidthElt - 1) + 1;
                m_scrollBar.Top    = m_panelJours.Top;
                m_scrollBar.Height = 5 * (nHeightElement - 1);
            }
            SetMoisEnCours(DateTime.Now.Month, 2003);
            this.ResumeDrawing();
            Visible     = true;
            DateEnCours = m_dateEnCours;
        }