File indexing completed on 2024-06-16 04:57:17
0001 /* 0002 This file is part of KOrganizer. 0003 0004 SPDX-FileCopyrightText: 2001 Cornelius Schumacher <schumacher@kde.org> 0005 0006 SPDX-License-Identifier: GPL-2.0-or-later WITH Qt-Commercial-exception-1.0 0007 */ 0008 0009 #include "kowhatsnextview.h" 0010 #include <QVBoxLayout> 0011 0012 KOWhatsNextView::KOWhatsNextView(QWidget *parent) 0013 : KOrg::BaseView(parent) 0014 , mView(new EventViews::WhatsNextView(this)) 0015 { 0016 auto topLayout = new QVBoxLayout(this); 0017 topLayout->addWidget(mView); 0018 0019 connect(mView, &EventViews::EventView::incidenceSelected, this, &KOrg::BaseView::incidenceSelected); 0020 0021 connect(mView, &EventViews::EventView::showIncidenceSignal, this, &KOrg::BaseView::showIncidenceSignal); 0022 0023 connect(mView, &EventViews::EventView::editIncidenceSignal, this, &KOrg::BaseView::editIncidenceSignal); 0024 0025 connect(mView, &EventViews::EventView::deleteIncidenceSignal, this, &KOrg::BaseView::deleteIncidenceSignal); 0026 0027 connect(mView, &EventViews::EventView::cutIncidenceSignal, this, &KOrg::BaseView::cutIncidenceSignal); 0028 0029 connect(mView, &EventViews::EventView::copyIncidenceSignal, this, &KOrg::BaseView::copyIncidenceSignal); 0030 0031 connect(mView, &EventViews::EventView::pasteIncidenceSignal, this, &KOrg::BaseView::pasteIncidenceSignal); 0032 0033 connect(mView, &EventViews::EventView::toggleAlarmSignal, this, &KOrg::BaseView::toggleAlarmSignal); 0034 0035 connect(mView, &EventViews::EventView::toggleTodoCompletedSignal, this, &KOrg::BaseView::toggleTodoCompletedSignal); 0036 0037 connect(mView, &EventViews::EventView::copyIncidenceToResourceSignal, this, &KOrg::BaseView::copyIncidenceToResourceSignal); 0038 0039 connect(mView, &EventViews::EventView::moveIncidenceToResourceSignal, this, &KOrg::BaseView::moveIncidenceToResourceSignal); 0040 0041 connect(mView, &EventViews::EventView::dissociateOccurrencesSignal, this, &KOrg::BaseView::dissociateOccurrencesSignal); 0042 0043 connect(mView, qOverload<>(&EventViews::WhatsNextView::newEventSignal), this, qOverload<>(&KOWhatsNextView::newEventSignal)); 0044 0045 connect(mView, qOverload<const QDate &>(&EventViews::WhatsNextView::newEventSignal), this, qOverload<const QDate &>(&KOWhatsNextView::newEventSignal)); 0046 0047 connect(mView, 0048 qOverload<const QDateTime &>(&EventViews::WhatsNextView::newEventSignal), 0049 this, 0050 qOverload<const QDateTime &>(&KOWhatsNextView::newEventSignal)); 0051 0052 connect(mView, 0053 qOverload<const QDateTime &, const QDateTime &>(&EventViews::WhatsNextView::newEventSignal), 0054 this, 0055 qOverload<const QDateTime &, const QDateTime &>(&KOWhatsNextView::newEventSignal)); 0056 0057 connect(mView, &EventViews::EventView::newTodoSignal, this, &KOrg::BaseView::newTodoSignal); 0058 0059 connect(mView, &EventViews::EventView::newSubTodoSignal, this, &KOrg::BaseView::newSubTodoSignal); 0060 0061 connect(mView, &EventViews::EventView::newJournalSignal, this, &KOrg::BaseView::newJournalSignal); 0062 } 0063 0064 KOWhatsNextView::~KOWhatsNextView() = default; 0065 0066 int KOWhatsNextView::currentDateCount() const 0067 { 0068 return mView->currentDateCount(); 0069 } 0070 0071 void KOWhatsNextView::updateView() 0072 { 0073 mView->updateView(); 0074 } 0075 0076 void KOWhatsNextView::showDates(const QDate &start, const QDate &end, const QDate &dummy) 0077 { 0078 mView->showDates(start, end, dummy); 0079 } 0080 0081 void KOWhatsNextView::showIncidences(const Akonadi::Item::List &incidenceList, const QDate &date) 0082 { 0083 mView->showIncidences(incidenceList, date); 0084 } 0085 0086 void KOWhatsNextView::changeIncidenceDisplay(const Akonadi::Item &, Akonadi::IncidenceChanger::ChangeType) 0087 { 0088 updateView(); 0089 } 0090 0091 CalendarSupport::CalPrinterBase::PrintType KOWhatsNextView::printType() const 0092 { 0093 // If up to three days are selected, use day style, otherwise week 0094 if (currentDateCount() <= 3) { 0095 return CalendarSupport::CalPrinterBase::Day; 0096 } else { 0097 return CalendarSupport::CalPrinterBase::Week; 0098 } 0099 } 0100 0101 void KOWhatsNextView::calendarAdded(const Akonadi::CollectionCalendar::Ptr &calendar) 0102 { 0103 mView->addCalendar(calendar); 0104 } 0105 0106 void KOWhatsNextView::calendarRemoved(const Akonadi::CollectionCalendar::Ptr &calendar) 0107 { 0108 mView->removeCalendar(calendar); 0109 } 0110 0111 #include "moc_kowhatsnextview.cpp"