| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -30,7 +30,6 @@ EditDlg::EditDlg(int idx, QWidget *parent, Qt::WindowFlags f) : QWidget(parent, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					{ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						Settings *s = Settings::getInstance(); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						const struct Room r = s->getRoom(idx); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						const struct Program *p = NULL; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						QString sheet; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						QString text; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -98,87 +97,99 @@ EditDlg::EditDlg(int idx, QWidget *parent, Qt::WindowFlags f) : QWidget(parent, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						m_progsLayout = new QVBoxLayout; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						for (int i = 0; i < m_progs.count(); i++) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							p = &(m_progs.at(i)); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							QHBoxLayout *progLayout = add_prog_layout(&(m_progs.at(i)), i); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							m_progsLayout->addLayout(progLayout); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							QHBoxLayout *progLayout = new QHBoxLayout; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						topLayout->addLayout(m_progsLayout); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							text = QString(""); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							if (p->temperature == FORCE_OFF) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								text += QString("-"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							} else { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								if (p->temperature == FORCE_ON) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									text += QString("+"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								} else { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									text += QString::number(p->temperature); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							text += QString("°C"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						topLayout->addLayout(btnLayout); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						this->setLayout(topLayout); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					QHBoxLayout *EditDlg::add_prog_layout(const struct Program *p, int idx) | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					{ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						QString sheet; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						QString text; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							QLabel *prog_temperature = new QLabel(QString(text)); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							set_font(prog_temperature); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							progLayout->addWidget(prog_temperature, 0, Qt::AlignHCenter); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						QHBoxLayout *progLayout = new QHBoxLayout; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							text = QString(""); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							if (p->DoW == 0) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								text += QString("-"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						QSizePolicy *szPolicy = new QSizePolicy(QSizePolicy::Minimum, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
											QSizePolicy::MinimumExpanding, | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
											QSizePolicy::PushButton); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						text = QString(""); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						if (p->temperature == FORCE_OFF) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							text += QString("-"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						} else { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							if (p->temperature == FORCE_ON) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								text += QString("+"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							} else { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								bool isFirst = true; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								for (int j = 0; j < 7; j++) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									if (p->DoW & (1 << j)) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										if (isFirst) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
											isFirst = false; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										} else { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
											text += QString("/"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								text += QString::number(p->temperature); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						text += QString("°C"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						QLabel *prog_temperature = new QLabel(QString(text)); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						set_font(prog_temperature); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						progLayout->addWidget(prog_temperature, 0, Qt::AlignHCenter); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						text = QString(""); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						if (p->DoW == 0) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							text += QString("-"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						} else { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							bool isFirst = true; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							for (int j = 0; j < 7; j++) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								if (p->DoW & (1 << j)) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									if (isFirst) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										isFirst = false; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									} else { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										text += QString("/"); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										switch (j) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										case 0: text += QString(tr("Mo")); break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										case 1: text += QString(tr("Tu")); break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										case 2: text += QString(tr("We")); break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										case 3: text += QString(tr("Th")); break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										case 4: text += QString(tr("Fr")); break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										case 5: text += QString(tr("Sa")); break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										case 6: text += QString(tr("Su")); break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
										} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									switch (j) { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									case 0: text += QString(tr("Mo")); break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									case 1: text += QString(tr("Tu")); break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									case 2: text += QString(tr("We")); break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									case 3: text += QString(tr("Th")); break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									case 4: text += QString(tr("Fr")); break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									case 5: text += QString(tr("Sa")); break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									case 6: text += QString(tr("Su")); break; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
									} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							QLabel *prog_DoW = new QLabel(QString(text)); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							set_font(prog_DoW); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							progLayout->addWidget(prog_DoW, 0, Qt::AlignHCenter); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							text = QString(""); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							text += p->start_time.toString(QString(" HH:mm")); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							text += p->end_time.toString(QString("-HH:mm")); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						QLabel *prog_DoW = new QLabel(QString(text)); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						set_font(prog_DoW); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						progLayout->addWidget(prog_DoW, 0, Qt::AlignHCenter); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							QLabel *prog_time= new QLabel(QString(text)); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							set_font(prog_time); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							progLayout->addWidget(prog_time, 0, Qt::AlignHCenter); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						text = QString(""); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						text += p->start_time.toString(QString(" HH:mm")); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						text += p->end_time.toString(QString("-HH:mm")); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							QPushButton *edit_btn = new QPushButton(tr("Edit"), this); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							QPushButton *delete_btn = new QPushButton(tr("Delete"), this); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						QLabel *prog_time= new QLabel(QString(text)); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						set_font(prog_time); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						progLayout->addWidget(prog_time, 0, Qt::AlignHCenter); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							set_font(edit_btn); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							set_font(delete_btn); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						QPushButton *edit_btn = new QPushButton(tr("Edit"), this); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						QPushButton *delete_btn = new QPushButton(tr("Delete"), this); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							edit_btn->setSizePolicy(*szPolicy); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							delete_btn->setSizePolicy(*szPolicy); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						set_font(edit_btn); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						set_font(delete_btn); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							edit_btn->setProperty("idx", i); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							delete_btn->setProperty("idx", i); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						edit_btn->setSizePolicy(*szPolicy); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						delete_btn->setSizePolicy(*szPolicy); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							connect(delete_btn, SIGNAL(clicked(void)), this, SLOT(delete_prog_clicked(void))); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						edit_btn->setProperty("idx", idx); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						delete_btn->setProperty("idx", idx); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							progLayout->addWidget(edit_btn, 0, Qt::AlignHCenter); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							progLayout->addWidget(delete_btn, 0, Qt::AlignHCenter); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						connect(delete_btn, SIGNAL(clicked(void)), this, SLOT(delete_prog_clicked(void))); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							m_progsLayout->addLayout(progLayout); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						topLayout->addLayout(m_progsLayout); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						progLayout->addWidget(edit_btn, 0, Qt::AlignHCenter); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						progLayout->addWidget(delete_btn, 0, Qt::AlignHCenter); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						topLayout->addLayout(btnLayout); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						this->setLayout(topLayout); | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						return progLayout; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					} | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					void EditDlg::set_font(QWidget *widget) | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				
					
  |