From 94a4442bd9435746a5150289344e27c8fb53587b Mon Sep 17 00:00:00 2001 From: Ivailo Monev Date: Sun, 23 Jul 2023 05:52:25 +0300 Subject: [PATCH] gwenview: port to the new KCalendarWidget class Signed-off-by: Ivailo Monev --- gwenview/lib/datewidget.cpp | 38 +++++++++++++++++++++----------------- 1 file changed, 21 insertions(+), 17 deletions(-) diff --git a/gwenview/lib/datewidget.cpp b/gwenview/lib/datewidget.cpp index e2786607..4afad695 100644 --- a/gwenview/lib/datewidget.cpp +++ b/gwenview/lib/datewidget.cpp @@ -22,11 +22,12 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Cambridge, MA 02110-1301, USA #include "moc_datewidget.cpp" // Qt -#include +#include #include +#include // KDE -#include +#include #include #include #include @@ -42,23 +43,25 @@ struct DateWidgetPrivate DateWidget* q; QDate mDate; - KDatePicker* mDatePicker; + QFrame* mCalendarFrame; + KCalendarWidget* mCalendarWidget; StatusBarToolButton* mPreviousButton; StatusBarToolButton* mDateButton; StatusBarToolButton* mNextButton; void setupDatePicker() { - mDatePicker = new KDatePicker; + mCalendarFrame = new QFrame(); + mCalendarWidget = new KCalendarWidget(mCalendarFrame); /* Use Qt::Tool instead of Qt::Window so that the bubble does not appear in the task bar */ - //mDatePicker->setWindowFlags(Qt::Tool | Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint); - mDatePicker->setWindowFlags(Qt::Popup); - mDatePicker->hide(); - mDatePicker->setFrameStyle(QFrame::StyledPanel | QFrame::Raised); + //mCalendarFrame->setWindowFlags(Qt::Tool | Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint); + mCalendarFrame->setWindowFlags(Qt::Popup); + mCalendarFrame->hide(); + mCalendarFrame->setFrameStyle(QFrame::StyledPanel | QFrame::Raised); - QObject::connect(mDatePicker, SIGNAL(dateEntered(QDate)), + QObject::connect(mCalendarWidget, SIGNAL(clicked(QDate)), q, SLOT(slotDatePickerModified(QDate))); - QObject::connect(mDatePicker, SIGNAL(dateSelected(QDate)), + QObject::connect(mCalendarWidget, SIGNAL(activated(QDate)), q, SLOT(slotDatePickerModified(QDate))); } @@ -108,7 +111,7 @@ DateWidget::DateWidget(QWidget* parent) DateWidget::~DateWidget() { - delete d->mDatePicker; + delete d->mCalendarFrame; delete d; } @@ -119,16 +122,17 @@ QDate DateWidget::date() const void DateWidget::showDatePicker() { - d->mDatePicker->setDate(d->mDate); - d->mDatePicker->adjustSize(); - const QPoint pos = mapToGlobal(QPoint(0, -d->mDatePicker->height())); - d->mDatePicker->move(pos); - d->mDatePicker->show(); + d->mCalendarWidget->setSelectedDate(d->mDate); + d->mCalendarWidget->adjustSize(); + d->mCalendarFrame->adjustSize(); + const QPoint pos = mapToGlobal(QPoint(0, -d->mCalendarFrame->height())); + d->mCalendarFrame->move(pos); + d->mCalendarFrame->show(); } void DateWidget::slotDatePickerModified(const QDate& date) { - d->mDatePicker->hide(); + d->mCalendarFrame->hide(); d->mDate = date; emit dateChanged(date); -- 2.11.0