da5846dcd5e028d978020ceff2c9ef68877a9056
[toast/confclerk.git] / src / gui / daynavigatorwidget.h
1 /*
2  * Copyright (C) 2010 Ixonos Plc.
3  * Copyright (C) 2011 Philipp Spitzer, gregor herrmann
4  *
5  * This file is part of ConfClerk.
6  *
7  * ConfClerk is free software: you can redistribute it and/or modify it
8  * under the terms of the GNU General Public License as published by the Free
9  * Software Foundation, either version 2 of the License, or (at your option)
10  * any later version.
11  *
12  * ConfClerk is distributed in the hope that it will be useful, but
13  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
14  * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
15  * more details.
16  *
17  * You should have received a copy of the GNU General Public License along with
18  * ConfClerk.  If not, see <http://www.gnu.org/licenses/>.
19  */
20 #ifndef DAYNAVIGATORWIDGET_H
21 #define DAYNAVIGATORWIDGET_H
22
23 #include "ui_daynavigatorwidget.h"
24 #include <QObject>
25 #include <QDate>
26
27 /*#include <QPainter>*/
28 /*#include <QLabel>*/
29
30 /*class QFontMetrics;*/
31
32 /*class VerticalLabel : public QWidget*/
33 /*{*/
34
35 /*public:*/
36 /*VerticalLabel(QWidget *aParent = NULL)*/
37 /*: QWidget(aParent)*/
38 /*, mText("")*/
39 /*{*/
40 /*mFont = QLabel().font();*/
41 /*}   */
42
43 /*void paintEvent(QPaintEvent *)*/
44 /*{   */
45 /*QPainter p(this);*/
46 /*drawRotatedText(&p, 270, width()/2, height()/2, mText);*/
47 /*}   */
48
49 /*void drawRotatedText(QPainter *aPainter, qreal aDegrees, int x, int y, const QString &aText)*/
50 /*{   */
51
52 /*aPainter->save();*/
53 /*aPainter->setFont(mFont);*/
54 /*aPainter->translate(x, y); */
55 /*aPainter->rotate(aDegrees);*/
56 /*QFontMetrics fm(mFont);*/
57 /*QRect r = fm.boundingRect(aText);*/
58 /*aPainter->drawText(-r.width()/2, fm.descent()/2, aText);*/
59 /*aPainter->restore();*/
60 /*}   */
61
62 /*void setText(const QString &aText)*/
63 /*{*/
64 /*mText = aText;*/
65 /*update();*/
66 /*}*/
67
68 /*private:*/
69 /*QString mText;*/
70 /*QFont mFont;*/
71 /*};*/
72
73 class DayNavigatorWidget : public QWidget, private Ui::DayNavigatorWidget
74 {
75     Q_OBJECT
76     public:
77         DayNavigatorWidget(QWidget *aParent = NULL);
78         ~DayNavigatorWidget() {}
79         void setDates(const QDate &aStartDate, const QDate &aEndDate);
80     protected:
81         void paintEvent(QPaintEvent *);
82     private slots:
83         void prevDayButtonClicked();
84         void nextDayButtonClicked();
85     signals:
86         void dateChanged(const QDate &aDate);
87     private:
88         QDate mStartDate;
89         QDate mEndDate;
90         QDate mCurDate;
91         QFontMetrics *mFontMetrics;
92 };
93
94 #endif /* DAYNAVIGATORWIDGET_H */
95