示例#1
0
/*!
    Sets the \a whatsthis of page at \a index.

    \sa pageWhatsThis()
*/
void QxtConfigWidget::setPageWhatsThis(int index, const QString& whatsthis)
{
    QTableWidgetItem* item = qxt_d().item(index);
    if (item)
    {
        item->setWhatsThis(whatsthis);
    }
    else
    {
        qWarning("QxtConfigWidget::setPageWhatsThis(): Unknown index");
    }
}
EmploiDuTemps::EmploiDuTemps(QDate d, QWidget *parent) :
    QDialog(parent), lundi(d),
    ui(new Ui::EmploiDuTemps)
{
    ui->setupUi(this);
    ui->stackedWidget->setHidden(true);

    ui->labelNumero->setText(QDate::shortDayName(d.dayOfWeek())+d.toString(Qt::SystemLocaleShortDate)+" au "+QDate::shortDayName(d.addDays(6).dayOfWeek())+d.addDays(6).toString(Qt::SystemLocaleShortDate));

    ui->tableWidget->setColumnCount(7);
    QStringList jours(QDate::shortDayName(d.dayOfWeek())+d.toString(Qt::SystemLocaleShortDate));
        for (unsigned int i=1; i<7; i++) {
            jours.append((QDate::shortDayName(d.addDays(i).dayOfWeek()))+(d.addDays(i)).toString(Qt::SystemLocaleShortDate));
        }
    ui->tableWidget->setHorizontalHeaderLabels(jours);
    ui->tableWidget->verticalHeader()->setHidden(true);

    unsigned int nbRow =0;
    ui->tableWidget->setRowCount(nbRow);



    QDate jour1(d.year(), d.month(), d.day());
    QDate jour7=d.addDays(7);
    unsigned int prog = 0;


    QBrush coulEvt (QColor(191,117,255));
    QBrush coulTache (QColor(85,255,127));

    for (QDate jour=jour1; jour<jour7; jour = jour.addDays(1)){
            unsigned int nb=0;
            for(QMap<QDateTime, Programmation*>::const_iterator it = ProgrammationManager::getInstance().getProgrammations().cbegin();
                it != ProgrammationManager::getInstance().getProgrammations().cend();
                it++){
                if(it.key().date()== jour){
                    //afficher
                    QTableWidgetItem* item = new QTableWidgetItem;
                    if(it.value()->getEvenement()!=0){
                        item->setWhatsThis(it.value()->getEvenement()->getNom());
                        item->setText((*it)->getTime().toString("HH:mm")+" : "+(*it)->getEvenement()->getNom()+"\n\ndurée : "+(*it)->getDuree().stringDuree()+"\n\n");
                        item->setBackground(coulEvt);
                        prog++;
                    }
                    else if (it.value()->getTache()!=0){
                        item->setWhatsThis(it.value()->getTache()->getId());
                        item->setText((*it)->getTime().toString("HH:mm")+" : "+(*it)->getTache()->getId()+"\n\ndurée : "+(*it)->getDuree().stringDuree()+" \n\n");
                        item->setBackground(coulTache);
                        prog++;
                    }
                    if(nb>=nbRow){
                        nbRow+=5;
                        ui->tableWidget->setRowCount(nbRow);
                    }
                    ui->tableWidget->setItem(nb,(jour.dayOfWeek()-1),item);

                    nb++;
                }
            }

        }


    ui->tableWidget->resizeRowsToContents();
    if(prog==0)
        QMessageBox::information(this, "Message", "Il n'y a pas encore de programmation pour la semaine choisie.");



    QObject::connect(ui->pushButtonFermer, SIGNAL(clicked()),this,SLOT(close()));
    QObject::connect(ui->pushButtonChange, SIGNAL(clicked()),this,SLOT(changeEdt()));
    QObject::connect(ui->tableWidget, SIGNAL(cellClicked(int,int)),this,SLOT(afficheInfos(int, int)));

}
示例#3
0
//Method to set dates in Calendar
         void MonthView::SetDatesInCalendar(QDate dtStartDate, QDate dtEndDate, bool toFillData)
         {
                m_ptr_growth_animation_timer->stop();

                 int dayStartDate = dtStartDate.day();
                 int StartMonthDays = dtStartDate.daysInMonth();//Total days in selected month


                 int dayCurrMonth = 1;
                 int dayNextMonth = 1;
                   all_week_data = 0;
                 qreal week_total = 0;
                 int data = 0;
                 int sourceData = 0;

                 for(int row = 0; row < 6; row++)
                 {
                          week_total = 0; //add_Weekly_total = true;


                         for(int col = 0; col < 7; col++)
                            {

                              if ( m_vector_vector_view_selected_day_usage_values.size() != 42)
                             {
                                  data = 0 ; sourceData =0;
                              } else
                              {
                              data = (qreal)((qreal)(50 * ( m_vector_vector_view_selected_day_usage_values[(row * 7) + col ][0] + m_vector_vector_view_selected_day_usage_values[(row * 7) + col ][1] + m_vector_vector_view_selected_day_usage_values[(row * 7) + col ][2] + m_vector_vector_view_selected_day_usage_values[(row * 7) + col ][3] + m_vector_vector_view_selected_day_usage_values[(row * 7) + col ][4]  ) ))/MaxUnit     ; //    qrand() % ((ui->tblDates->rowHeight(0) + 1) - 5) + 5;
                              sourceData  = (qreal)((qreal)(50 * ( m_vector_vector_view_selected_day_usage_values[(row * 7) + col ][source_name] )))/MaxUnit;//    qrand() % (((data/2) + 1) - 2) + 2;  // data % 2;
                          }
                                //Previous Month
                                 if(dayStartDate <= StartMonthDays)
                                 {
                                          QTableWidgetItem *item = new QTableWidgetItem();

                                          int day = dayStartDate++;
                                          item->setData(0,
                                                         qVariantFromValue(StarRating(day,0,0, source_name,data,sourceData)));

                                          if(dtStartDate.day() > 1)//When 3 months are displayed in Calendar, only then prev month date is grayed out
                                          {

                                              item->setData(0,
                                                             qVariantFromValue(StarRating(0,0,0, source_name,data,sourceData)));
                                              data = 0;// Make it zero as not to be added with total
                                          }

                                          item->setTextAlignment(Qt::AlignTop | Qt::AlignRight);

                                          QDate dt(dtStartDate.year(),dtStartDate.month(), locale->toInt(QString::number(day)));
                                          QString str(dt.toString());
                                          item->setWhatsThis(str);

                                          if(dt.operator >(QDate::currentDate()))
                                           {

                                               data= 0;
                                              if(dt.month() == QDate::currentDate().month() && dt.month() == StartDate.month()) //compare to current as well as calendar's month
                                               {
                                                 item->setData(0,
                                                              qVariantFromValue(StarRating(-day,data,0, source_name,data,0)));
                                               }
                                               else
                                               {
                                                   item->setData(0,
                                                                qVariantFromValue(StarRating(0,data,0, source_name,data,0)));
                                               }
                                           }
                                          ui->tblDates->setItem(row,col,item);


                                 }
                                 else
                                 {
                                         QDate date = dtStartDate.addMonths(1);
                                         int CurrentMonthDays = date.daysInMonth();
                                         //Current month
                                         if(dayCurrMonth <= CurrentMonthDays)
                                         {
                                                  QTableWidgetItem *item = new QTableWidgetItem();
                                                  int day = dayCurrMonth++;
                                                   item->setData(0,
                                                                  qVariantFromValue(StarRating(day,0,0, source_name,data,sourceData)));


                                                  if(dtStartDate.day() == 1)//When 2 months are displayed in Calendar, only then current month date is grayed out
                                                  {

                                                      item->setData(0,
                                                                     qVariantFromValue(StarRating(0,0,0, source_name,data,sourceData)));
                                                      data = 0;// Make it zero as not to be added with total

                                                  }

                                                  item->setTextAlignment(Qt::AlignTop | Qt::AlignHCenter);
                                                  QDate dt(date.year(),date.month(), locale->toInt(QString::number(day)));
                                                  QString str(dt.toString());
                                                  item->setWhatsThis(str);

                                                  if(dt.operator >(QDate::currentDate()))
                                                   {

                                                       data= 0;
                                                      if(dt.month() == QDate::currentDate().month() && dt.month() == StartDate.month()) //compare to current as well as calendar's month
                                                       {
                                                         item->setData(0,
                                                                      qVariantFromValue(StarRating(-day,data,0, source_name,data,0)));
                                                       }
                                                       else
                                                       {
                                                           item->setData(0,
                                                                        qVariantFromValue(StarRating(0,data,0, source_name,data,0)));
                                                       }
                                                   }

                                                 ui->tblDates->setItem(row,col,item);


                                         }
                                         //Next month
                                         else
                                         {
                                                 if(dayNextMonth <= dtEndDate.day())
                                                 {
                                                         QTableWidgetItem *item = new QTableWidgetItem();
                                                         item->setForeground(QBrush(Qt::gray,Qt::SolidPattern));//Always grayed out

                                                         item->setData(0,
                                                                        qVariantFromValue(StarRating(0,0,0, source_name,data,sourceData)));

                                                         data = 0;// Make it zero as not to be added with total

                                                         item->setTextAlignment(Qt::AlignTop | Qt::AlignHCenter);
                                                         int day = dayNextMonth++;
                                                         QDate dt(dtEndDate.year(),dtEndDate.month(), locale->toInt(QString::number(day)));
                                                          QString str(dt.toString());
                                                          item->setWhatsThis(str);

                                                          if(dt.operator >(QDate::currentDate()))
                                                       {

                                                           data= 0;
                                                          if(dt.month() == QDate::currentDate().month() && dt.month() == StartDate.month()) //compare to current as well as calendar's month
                                                           {
                                                             item->setData(0,
                                                                          qVariantFromValue(StarRating(-day,data,0, source_name,data,0)));
                                                           }
                                                           else
                                                           {
                                                               item->setData(0,
                                                                            qVariantFromValue(StarRating(0,data,0, source_name,data,0)));
                                                           }
                                                       }
                                                          ui->tblDates->setItem(row,col,item);


                                                 }

                                         }

                                 }
                                 //For weekDays total
                                 if(data > 0)
                                 {
                                     week_total += (m_vector_vector_view_selected_day_usage_values[(row * 7) + col ][source_name]) ;
                                 }
  //                               week_total +=  m_vector_vector_view_selected_day_usage_values[(row * 7) + col ][0] + m_vector_vector_view_selected_day_usage_values[(row * 7) + col ][1] + m_vector_vector_view_selected_day_usage_values[(row * 7) + col ][2] + m_vector_vector_view_selected_day_usage_values[(row * 7) + col ][3] + m_vector_vector_view_selected_day_usage_values[(row * 7) + col ][4]  ;//data;
                         }


                         all_week_data += week_total;
                         QTableWidgetItem *item = new QTableWidgetItem();
                         item->setData(0,
                                        qVariantFromValue(StarRating(100,week_total,0, source_name,data,sourceData)));
                         item->setTextAlignment(Qt::AlignTop | Qt::AlignHCenter);
                          ui->tblDates->setItem(row,7,item);

                 }
                 if(toFillData)
                   {
                      m_ptr_growth_animation_timer->start();
                   }
         }