ModifyConstraintTwoActivitiesConsecutiveForm::ModifyConstraintTwoActivitiesConsecutiveForm(QWidget* parent, ConstraintTwoActivitiesConsecutive* ctr): QDialog(parent) { setupUi(this); okPushButton->setDefault(true); connect(okPushButton, SIGNAL(clicked()), this, SLOT(ok())); connect(cancelPushButton, SIGNAL(clicked()), this, SLOT(cancel())); connect(swapPushButton, SIGNAL(clicked()), this, SLOT(swap())); centerWidgetOnScreen(this); restoreFETDialogGeometry(this); QSize tmp5=firstActivitiesComboBox->minimumSizeHint(); Q_UNUSED(tmp5); QSize tmp6=secondActivitiesComboBox->minimumSizeHint(); Q_UNUSED(tmp6); firstActivitiesComboBox->setMaximumWidth(maxRecommendedWidth(this)); secondActivitiesComboBox->setMaximumWidth(maxRecommendedWidth(this)); this->_ctr=ctr; weightLineEdit->setText(CustomFETString::number(ctr->weightPercentage)); updateActivitiesComboBox(); constraintChanged(); }
ModifyConstraintActivityPreferredRoomForm::ModifyConstraintActivityPreferredRoomForm(QWidget* parent, ConstraintActivityPreferredRoom* ctr): QDialog(parent) { setupUi(this); okPushButton->setDefault(true); connect(cancelPushButton, SIGNAL(clicked()), this, SLOT(cancel())); connect(okPushButton, SIGNAL(clicked()), this, SLOT(ok())); centerWidgetOnScreen(this); restoreFETDialogGeometry(this); QSize tmp5=roomsComboBox->minimumSizeHint(); Q_UNUSED(tmp5); QSize tmp6=activitiesComboBox->minimumSizeHint(); Q_UNUSED(tmp6); activitiesComboBox->setMaximumWidth(maxRecommendedWidth(this)); this->_ctr=ctr; weightLineEdit->setText(CustomFETString::number(ctr->weightPercentage)); permLockedCheckBox->setChecked(this->_ctr->permanentlyLocked); updateActivitiesComboBox(); updateRoomsComboBox(); }
ModifyConstraintActivityPreferredTimeSlotsForm::ModifyConstraintActivityPreferredTimeSlotsForm(QWidget* parent, ConstraintActivityPreferredTimeSlots* ctr): QDialog(parent) { setupUi(this); okPushButton->setDefault(true); connect(preferredTimesTable, SIGNAL(itemClicked(QTableWidgetItem*)), this, SLOT(itemClicked(QTableWidgetItem*))); connect(okPushButton, SIGNAL(clicked()), this, SLOT(ok())); connect(cancelPushButton, SIGNAL(clicked()), this, SLOT(cancel())); connect(teachersComboBox, SIGNAL(activated(QString)), this, SLOT(filterChanged())); connect(studentsComboBox, SIGNAL(activated(QString)), this, SLOT(filterChanged())); connect(subjectsComboBox, SIGNAL(activated(QString)), this, SLOT(filterChanged())); connect(activityTagsComboBox, SIGNAL(activated(QString)), this, SLOT(filterChanged())); connect(setAllAllowedPushButton, SIGNAL(clicked()), this, SLOT(setAllSlotsAllowed())); connect(setAllNotAllowedPushButton, SIGNAL(clicked()), this, SLOT(setAllSlotsNotAllowed())); centerWidgetOnScreen(this); restoreFETDialogGeometry(this); QSize tmp1=teachersComboBox->minimumSizeHint(); Q_UNUSED(tmp1); QSize tmp2=studentsComboBox->minimumSizeHint(); Q_UNUSED(tmp2); QSize tmp3=subjectsComboBox->minimumSizeHint(); Q_UNUSED(tmp3); QSize tmp4=activityTagsComboBox->minimumSizeHint(); Q_UNUSED(tmp4); QSize tmp5=activitiesComboBox->minimumSizeHint(); Q_UNUSED(tmp5); activitiesComboBox->setMaximumWidth(maxRecommendedWidth(this)); this->_ctr=ctr; weightLineEdit->setText(CustomFETString::number(ctr->weightPercentage)); teachersComboBox->addItem(""); for(int i=0; i<gt.rules.teachersList.size(); i++){ Teacher* tch=gt.rules.teachersList[i]; teachersComboBox->addItem(tch->name); } teachersComboBox->setCurrentIndex(0); subjectsComboBox->addItem(""); for(int i=0; i<gt.rules.subjectsList.size(); i++){ Subject* sb=gt.rules.subjectsList[i]; subjectsComboBox->addItem(sb->name); } subjectsComboBox->setCurrentIndex(0); activityTagsComboBox->addItem(""); for(int i=0; i<gt.rules.activityTagsList.size(); i++){ ActivityTag* st=gt.rules.activityTagsList[i]; activityTagsComboBox->addItem(st->name); } activityTagsComboBox->setCurrentIndex(0); studentsComboBox->addItem(""); for(int i=0; i<gt.rules.yearsList.size(); i++){ StudentsYear* sty=gt.rules.yearsList[i]; studentsComboBox->addItem(sty->name); for(int j=0; j<sty->groupsList.size(); j++){ StudentsGroup* stg=sty->groupsList[j]; studentsComboBox->addItem(stg->name); if(SHOW_SUBGROUPS_IN_COMBO_BOXES) for(int k=0; k<stg->subgroupsList.size(); k++){ StudentsSubgroup* sts=stg->subgroupsList[k]; studentsComboBox->addItem(sts->name); } } } studentsComboBox->setCurrentIndex(0); updateActivitiesComboBox(); preferredTimesTable->setRowCount(gt.rules.nHoursPerDay); preferredTimesTable->setColumnCount(gt.rules.nDaysPerWeek); for(int j=0; j<gt.rules.nDaysPerWeek; j++){ QTableWidgetItem* item=new QTableWidgetItem(gt.rules.daysOfTheWeek[j]); preferredTimesTable->setHorizontalHeaderItem(j, item); } for(int i=0; i<gt.rules.nHoursPerDay; i++){ QTableWidgetItem* item=new QTableWidgetItem(gt.rules.hoursOfTheDay[i]); preferredTimesTable->setVerticalHeaderItem(i, item); } Matrix2D<bool> currentMatrix; currentMatrix.resize(gt.rules.nHoursPerDay, gt.rules.nDaysPerWeek); //bool currentMatrix[MAX_HOURS_PER_DAY][MAX_DAYS_PER_WEEK]; for(int i=0; i<gt.rules.nHoursPerDay; i++) for(int j=0; j<gt.rules.nDaysPerWeek; j++) currentMatrix[i][j]=false; for(int k=0; k<ctr->p_nPreferredTimeSlots_L; k++){ if(ctr->p_days_L[k]==-1 || ctr->p_hours_L[k]==-1) assert(0); int i=ctr->p_hours_L[k]; int j=ctr->p_days_L[k]; if(i>=0 && i<gt.rules.nHoursPerDay && j>=0 && j<gt.rules.nDaysPerWeek) currentMatrix[i][j]=true; } for(int i=0; i<gt.rules.nHoursPerDay; i++) for(int j=0; j<gt.rules.nDaysPerWeek; j++){ QTableWidgetItem* item= new QTableWidgetItem(); item->setTextAlignment(Qt::AlignCenter); item->setFlags(Qt::ItemIsSelectable|Qt::ItemIsEnabled); if(SHOW_TOOLTIPS_FOR_CONSTRAINTS_WITH_TABLES) item->setToolTip(gt.rules.daysOfTheWeek[j]+QString("\n")+gt.rules.hoursOfTheDay[i]); preferredTimesTable->setItem(i, j, item); if(!currentMatrix[i][j]) item->setText(NO); else item->setText(YES); colorItem(item); } preferredTimesTable->resizeRowsToContents(); connect(preferredTimesTable->horizontalHeader(), SIGNAL(sectionClicked(int)), this, SLOT(horizontalHeaderClicked(int))); connect(preferredTimesTable->verticalHeader(), SIGNAL(sectionClicked(int)), this, SLOT(verticalHeaderClicked(int))); preferredTimesTable->setSelectionMode(QAbstractItemView::NoSelection); tableWidgetUpdateBug(preferredTimesTable); setStretchAvailabilityTableNicely(preferredTimesTable); }
AddConstraintActivityPreferredStartingTimeForm::AddConstraintActivityPreferredStartingTimeForm(QWidget* parent): QDialog(parent) { setupUi(this); addConstraintPushButton->setDefault(true); connect(addConstraintPushButton, SIGNAL(clicked()), this, SLOT(addCurrentConstraint())); connect(closePushButton, SIGNAL(clicked()), this, SLOT(close())); connect(teachersComboBox, SIGNAL(activated(QString)), this, SLOT(filterChanged())); connect(studentsComboBox, SIGNAL(activated(QString)), this, SLOT(filterChanged())); connect(subjectsComboBox, SIGNAL(activated(QString)), this, SLOT(filterChanged())); connect(activityTagsComboBox, SIGNAL(activated(QString)), this, SLOT(filterChanged())); centerWidgetOnScreen(this); restoreFETDialogGeometry(this); QSize tmp1=teachersComboBox->minimumSizeHint(); Q_UNUSED(tmp1); QSize tmp2=studentsComboBox->minimumSizeHint(); Q_UNUSED(tmp2); QSize tmp3=subjectsComboBox->minimumSizeHint(); Q_UNUSED(tmp3); QSize tmp4=activityTagsComboBox->minimumSizeHint(); Q_UNUSED(tmp4); QSize tmp5=activitiesComboBox->minimumSizeHint(); Q_UNUSED(tmp5); QSize tmp6=dayComboBox->minimumSizeHint(); Q_UNUSED(tmp6); QSize tmp7=startHourComboBox->minimumSizeHint(); Q_UNUSED(tmp7); activitiesComboBox->setMaximumWidth(maxRecommendedWidth(this)); teachersComboBox->addItem(""); for(int i=0; i<gt.rules.teachersList.size(); i++){ Teacher* tch=gt.rules.teachersList[i]; teachersComboBox->addItem(tch->name); } teachersComboBox->setCurrentIndex(0); subjectsComboBox->addItem(""); for(int i=0; i<gt.rules.subjectsList.size(); i++){ Subject* sb=gt.rules.subjectsList[i]; subjectsComboBox->addItem(sb->name); } subjectsComboBox->setCurrentIndex(0); activityTagsComboBox->addItem(""); for(int i=0; i<gt.rules.activityTagsList.size(); i++){ ActivityTag* st=gt.rules.activityTagsList[i]; activityTagsComboBox->addItem(st->name); } activityTagsComboBox->setCurrentIndex(0); studentsComboBox->addItem(""); for(int i=0; i<gt.rules.yearsList.size(); i++){ StudentsYear* sty=gt.rules.yearsList[i]; studentsComboBox->addItem(sty->name); for(int j=0; j<sty->groupsList.size(); j++){ StudentsGroup* stg=sty->groupsList[j]; studentsComboBox->addItem(stg->name); for(int k=0; k<stg->subgroupsList.size(); k++){ StudentsSubgroup* sts=stg->subgroupsList[k]; studentsComboBox->addItem(sts->name); } } } studentsComboBox->setCurrentIndex(0); updatePeriodGroupBox(); updateActivitiesComboBox(); }
ModifyConstraintActivityPreferredStartingTimeForm::ModifyConstraintActivityPreferredStartingTimeForm(QWidget* parent, ConstraintActivityPreferredStartingTime* ctr): QDialog(parent) { setupUi(this); okPushButton->setDefault(true); connect(okPushButton, SIGNAL(clicked()), this, SLOT(ok())); connect(cancelPushButton, SIGNAL(clicked()), this, SLOT(cancel())); connect(teachersComboBox, SIGNAL(activated(QString)), this, SLOT(filterChanged())); connect(studentsComboBox, SIGNAL(activated(QString)), this, SLOT(filterChanged())); connect(subjectsComboBox, SIGNAL(activated(QString)), this, SLOT(filterChanged())); connect(activityTagsComboBox, SIGNAL(activated(QString)), this, SLOT(filterChanged())); centerWidgetOnScreen(this); restoreFETDialogGeometry(this); QSize tmp1=teachersComboBox->minimumSizeHint(); Q_UNUSED(tmp1); QSize tmp2=studentsComboBox->minimumSizeHint(); Q_UNUSED(tmp2); QSize tmp3=subjectsComboBox->minimumSizeHint(); Q_UNUSED(tmp3); QSize tmp4=activityTagsComboBox->minimumSizeHint(); Q_UNUSED(tmp4); QSize tmp5=activitiesComboBox->minimumSizeHint(); Q_UNUSED(tmp5); QSize tmp6=dayComboBox->minimumSizeHint(); Q_UNUSED(tmp6); QSize tmp7=startHourComboBox->minimumSizeHint(); Q_UNUSED(tmp7); activitiesComboBox->setMaximumWidth(maxRecommendedWidth(this)); this->_ctr=ctr; weightLineEdit->setText(CustomFETString::number(ctr->weightPercentage)); teachersComboBox->addItem(""); for(int i=0; i<gt.rules.teachersList.size(); i++){ Teacher* tch=gt.rules.teachersList[i]; teachersComboBox->addItem(tch->name); } teachersComboBox->setCurrentIndex(0); subjectsComboBox->addItem(""); for(int i=0; i<gt.rules.subjectsList.size(); i++){ Subject* sb=gt.rules.subjectsList[i]; subjectsComboBox->addItem(sb->name); } subjectsComboBox->setCurrentIndex(0); activityTagsComboBox->addItem(""); for(int i=0; i<gt.rules.activityTagsList.size(); i++){ ActivityTag* st=gt.rules.activityTagsList[i]; activityTagsComboBox->addItem(st->name); } activityTagsComboBox->setCurrentIndex(0); studentsComboBox->addItem(""); for(int i=0; i<gt.rules.yearsList.size(); i++){ StudentsYear* sty=gt.rules.yearsList[i]; studentsComboBox->addItem(sty->name); for(int j=0; j<sty->groupsList.size(); j++){ StudentsGroup* stg=sty->groupsList[j]; studentsComboBox->addItem(stg->name); if(SHOW_SUBGROUPS_IN_COMBO_BOXES) for(int k=0; k<stg->subgroupsList.size(); k++){ StudentsSubgroup* sts=stg->subgroupsList[k]; studentsComboBox->addItem(sts->name); } } } studentsComboBox->setCurrentIndex(0); updatePeriodGroupBox(); updateActivitiesComboBox(); if(ctr->day>=0 && ctr->day<gt.rules.nDaysPerWeek) dayComboBox->setCurrentIndex(ctr->day); else dayComboBox->setCurrentIndex(-1); if(ctr->hour>=0 && ctr->hour<gt.rules.nHoursPerDay) startHourComboBox->setCurrentIndex(ctr->hour); else startHourComboBox->setCurrentIndex(-1); permLockedCheckBox->setChecked(this->_ctr->permanentlyLocked); constraintChanged(); }
AddConstraintActivityPreferredTimeSlotsForm::AddConstraintActivityPreferredTimeSlotsForm(QWidget* parent): QDialog(parent) { setupUi(this); addConstraintPushButton->setDefault(true); connect(preferredTimesTable, SIGNAL(itemClicked(QTableWidgetItem*)), this, SLOT(itemClicked(QTableWidgetItem*))); connect(addConstraintPushButton, SIGNAL(clicked()), this, SLOT(addConstraint())); connect(closePushButton, SIGNAL(clicked()), this, SLOT(close())); connect(teachersComboBox, SIGNAL(activated(QString)), this, SLOT(filterChanged())); connect(studentsComboBox, SIGNAL(activated(QString)), this, SLOT(filterChanged())); connect(subjectsComboBox, SIGNAL(activated(QString)), this, SLOT(filterChanged())); connect(activityTagsComboBox, SIGNAL(activated(QString)), this, SLOT(filterChanged())); connect(setAllAllowedPushButton, SIGNAL(clicked()), this, SLOT(setAllSlotsAllowed())); connect(setAllNotAllowedPushButton, SIGNAL(clicked()), this, SLOT(setAllSlotsNotAllowed())); centerWidgetOnScreen(this); restoreFETDialogGeometry(this); QSize tmp1=teachersComboBox->minimumSizeHint(); Q_UNUSED(tmp1); QSize tmp2=studentsComboBox->minimumSizeHint(); Q_UNUSED(tmp2); QSize tmp3=subjectsComboBox->minimumSizeHint(); Q_UNUSED(tmp3); QSize tmp4=activityTagsComboBox->minimumSizeHint(); Q_UNUSED(tmp4); QSize tmp5=activitiesComboBox->minimumSizeHint(); Q_UNUSED(tmp5); activitiesComboBox->setMaximumWidth(maxRecommendedWidth(this)); teachersComboBox->addItem(""); for(int i=0; i<gt.rules.teachersList.size(); i++){ Teacher* tch=gt.rules.teachersList[i]; teachersComboBox->addItem(tch->name); } teachersComboBox->setCurrentIndex(0); subjectsComboBox->addItem(""); for(int i=0; i<gt.rules.subjectsList.size(); i++){ Subject* sb=gt.rules.subjectsList[i]; subjectsComboBox->addItem(sb->name); } subjectsComboBox->setCurrentIndex(0); activityTagsComboBox->addItem(""); for(int i=0; i<gt.rules.activityTagsList.size(); i++){ ActivityTag* st=gt.rules.activityTagsList[i]; activityTagsComboBox->addItem(st->name); } activityTagsComboBox->setCurrentIndex(0); studentsComboBox->addItem(""); for(int i=0; i<gt.rules.yearsList.size(); i++){ StudentsYear* sty=gt.rules.yearsList[i]; studentsComboBox->addItem(sty->name); for(int j=0; j<sty->groupsList.size(); j++){ StudentsGroup* stg=sty->groupsList[j]; studentsComboBox->addItem(stg->name); if(SHOW_SUBGROUPS_IN_COMBO_BOXES) for(int k=0; k<stg->subgroupsList.size(); k++){ StudentsSubgroup* sts=stg->subgroupsList[k]; studentsComboBox->addItem(sts->name); } } } studentsComboBox->setCurrentIndex(0); updateActivitiesComboBox(); preferredTimesTable->setRowCount(gt.rules.nHoursPerDay); preferredTimesTable->setColumnCount(gt.rules.nDaysPerWeek); for(int j=0; j<gt.rules.nDaysPerWeek; j++){ QTableWidgetItem* item=new QTableWidgetItem(gt.rules.daysOfTheWeek[j]); preferredTimesTable->setHorizontalHeaderItem(j, item); } for(int i=0; i<gt.rules.nHoursPerDay; i++){ QTableWidgetItem* item=new QTableWidgetItem(gt.rules.hoursOfTheDay[i]); preferredTimesTable->setVerticalHeaderItem(i, item); } for(int i=0; i<gt.rules.nHoursPerDay; i++) for(int j=0; j<gt.rules.nDaysPerWeek; j++){ QTableWidgetItem* item=new QTableWidgetItem(YES); item->setTextAlignment(Qt::AlignCenter); item->setFlags(Qt::ItemIsSelectable | Qt::ItemIsEnabled); colorItem(item); if(SHOW_TOOLTIPS_FOR_CONSTRAINTS_WITH_TABLES) item->setToolTip(gt.rules.daysOfTheWeek[j]+QString("\n")+gt.rules.hoursOfTheDay[i]); preferredTimesTable->setItem(i, j, item); } preferredTimesTable->resizeRowsToContents(); connect(preferredTimesTable->horizontalHeader(), SIGNAL(sectionClicked(int)), this, SLOT(horizontalHeaderClicked(int))); connect(preferredTimesTable->verticalHeader(), SIGNAL(sectionClicked(int)), this, SLOT(verticalHeaderClicked(int))); preferredTimesTable->setSelectionMode(QAbstractItemView::NoSelection); tableWidgetUpdateBug(preferredTimesTable); setStretchAvailabilityTableNicely(preferredTimesTable); }