Thermostat pour piloter jusqu'à 4 radiateurs avec fil pilote
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

81 lines
2.1 KiB

// SPDX-License-Identifier: GPL-3.0-or-later
/*
* Qt mutizone MQTT thermostat
*
* Copyright (C) 2020 Richard Genoud
*
*/
#include <QApplication>
#include <QPushButton>
#include <QCalendarWidget>
#include <QVBoxLayout>
#include <QHBoxLayout>
#include <QSizePolicy>
#include <QLocale>
#include "settings.h"
#include "holiday_dlg.h"
HolidayDlg::HolidayDlg(QWidget *parent, Qt::WindowFlags f) :
QWidget(parent, f)
{
QVBoxLayout *middleLayout = new QVBoxLayout;
QHBoxLayout *mainLayout = new QHBoxLayout;
m_cal.setGridVisible(true);
m_cal.setMinimumDate(QDate::currentDate());
m_cal.setDateEditEnabled(false);
QSizePolicy *szPolicy = new QSizePolicy(QSizePolicy::Minimum,
QSizePolicy::MinimumExpanding,
QSizePolicy::PushButton);
QPushButton *next_btn = new QPushButton("+", this);
QPushButton *prev_btn = new QPushButton("-", this);
QPushButton *ok_btn = new QPushButton(tr("Ok"), this);
QPushButton *cancel_btn = new QPushButton(tr("Cancel"), this);
QFont font = next_btn->font();
font.setPointSize(12);
font.setBold(true);
next_btn->setFont(font);
prev_btn->setFont(font);
ok_btn->setFont(font);
cancel_btn->setFont(font);
m_cal.setFont(font);
next_btn->setSizePolicy(*szPolicy);
prev_btn->setSizePolicy(*szPolicy);
ok_btn->setSizePolicy(*szPolicy);
cancel_btn->setSizePolicy(*szPolicy);
middleLayout->addWidget(prev_btn);
middleLayout->addWidget(next_btn);
middleLayout->addWidget(ok_btn);
middleLayout->addWidget(cancel_btn);
mainLayout->addWidget(&m_cal);
mainLayout->addLayout(middleLayout);
connect(next_btn, SIGNAL(clicked(void)), &m_cal, SLOT(showNextMonth(void)));
connect(prev_btn, SIGNAL(clicked(void)), &m_cal, SLOT(showPreviousMonth(void)));
connect(ok_btn, SIGNAL(clicked(void)), this, SLOT(validate_holiday_mode(void)));
connect(cancel_btn, SIGNAL(clicked(void)), this, SIGNAL(close_holiday_dlg(void)));
this->setLayout(mainLayout);
}
HolidayDlg::~HolidayDlg()
{
}
void HolidayDlg::validate_holiday_mode(void)
{
emit holiday_mode(m_cal.selectedDate());
emit close_holiday_dlg();
}
/* vim: set tabstop=8 shiftwidth=8 softtabstop=0 noexpandtab: */