From 460c52653ab0dcca6f19a4f492ed2c5e4e963ab0 Mon Sep 17 00:00:00 2001 From: toma Date: Wed, 25 Nov 2009 17:56:58 +0000 Subject: Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdepim@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- karm/printdialog.cpp | 117 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 117 insertions(+) create mode 100644 karm/printdialog.cpp (limited to 'karm/printdialog.cpp') diff --git a/karm/printdialog.cpp b/karm/printdialog.cpp new file mode 100644 index 000000000..b2e4635d9 --- /dev/null +++ b/karm/printdialog.cpp @@ -0,0 +1,117 @@ +/* + * This file only: + * Copyright (C) 2003 Mark Bucciarelli + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the + * Free Software Foundation, Inc. + * 51 Franklin Street, Fifth Floor + * Boston, MA 02110-1301 USA. + * + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include // i18n +#include + +#include "printdialog.h" +#include + + +PrintDialog::PrintDialog() + : KDialogBase(0, "PrintDialog", true, i18n("Print Dialog"), Ok|Cancel, + Ok, true ) +{ + QWidget *page = new QWidget( this ); + setMainWidget(page); + int year, month; + + QVBoxLayout *layout = new QVBoxLayout(page, KDialog::spacingHint()); + layout->addSpacing(10); + layout->addStretch(1); + + // Date Range + QGroupBox *rangeGroup = new QGroupBox(1, Horizontal, i18n("Date Range"), + page); + layout->addWidget(rangeGroup); + + QWidget *rangeWidget = new QWidget(rangeGroup); + QHBoxLayout *rangeLayout = new QHBoxLayout(rangeWidget, 0, spacingHint()); + + rangeLayout->addWidget(new QLabel(i18n("From:"), rangeWidget)); + _from = new KDateEdit(rangeWidget); + + // Default from date to beginning of the month + year = QDate::currentDate().year(); + month = QDate::currentDate().month(); + _from->setDate(QDate(year, month, 1)); + rangeLayout->addWidget(_from); + rangeLayout->addWidget(new QLabel(i18n("To:"), rangeWidget)); + _to = new KDateEdit(rangeWidget); + rangeLayout->addWidget(_to); + + layout->addSpacing(10); + layout->addStretch(1); + + _allTasks = new QComboBox( page ); + _allTasks->insertItem( i18n( "Selected Task" ) ); + _allTasks->insertItem( i18n( "All Tasks" ) ); + layout->addWidget( _allTasks ); + + _perWeek = new QCheckBox( i18n( "Summarize per week" ), page ); + layout->addWidget( _perWeek ); + _totalsOnly = new QCheckBox( i18n( "Totals only" ), page ); + layout->addWidget( _totalsOnly ); + + layout->addSpacing(10); + layout->addStretch(1); +} + +QDate PrintDialog::from() const +{ + return _from->date(); +} + +QDate PrintDialog::to() const +{ + return _to->date(); +} + +bool PrintDialog::perWeek() const +{ + return _perWeek->isChecked(); +} + +bool PrintDialog::allTasks() const +{ + return _allTasks->currentItem() == 1; +} + +bool PrintDialog::totalsOnly() const +{ + return _totalsOnly->isChecked(); +} + +#include "printdialog.moc" -- cgit v1.2.1