File indexing completed on 2025-01-12 10:33:12
0001 /* 0002 SPDX-FileCopyrightText: 2023-2024 Laurent Montel <montel.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 code based on kdenlive 0006 */ 0007 0008 #include "needupdateversionwidget.h" 0009 #include "ruqolawidgets_debug.h" 0010 #include <KLocalizedString> 0011 #include <QAction> 0012 0013 NeedUpdateVersionWidget::NeedUpdateVersionWidget(QWidget *parent) 0014 : KMessageWidget(parent) 0015 { 0016 setVisible(false); 0017 #if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) 0018 setPosition(KMessageWidget::Header); 0019 #endif 0020 setCloseButtonVisible(true); 0021 auto action = new QAction(i18n("Disable version check"), this); 0022 addAction(action); 0023 connect(action, &QAction::triggered, this, &NeedUpdateVersionWidget::slotDisableVersionCheck); 0024 } 0025 0026 NeedUpdateVersionWidget::~NeedUpdateVersionWidget() = default; 0027 0028 void NeedUpdateVersionWidget::setObsoleteVersion(NeedUpdateVersionUtils::ObsoleteVersion obsolete) 0029 { 0030 switch (obsolete) { 0031 case NeedUpdateVersionUtils::ObsoleteVersion::Unknown: 0032 qCWarning(RUQOLAWIDGETS_LOG) << "Unknown value: seems to be a bug"; 0033 break; 0034 case NeedUpdateVersionUtils::ObsoleteVersion::OlderThan6Months: 0035 setMessageType(KMessageWidget::Information); 0036 setText(i18n("Your version is older than 6 months, we encourage you to upgrade.")); 0037 animatedShow(); 0038 break; 0039 case NeedUpdateVersionUtils::ObsoleteVersion::OlderThan12Months: 0040 setMessageType(KMessageWidget::Warning); 0041 setText(i18n("Your version is older than 1 year, we strongly encourage you to upgrade.")); 0042 animatedShow(); 0043 break; 0044 case NeedUpdateVersionUtils::ObsoleteVersion::NotObsoleteYet: 0045 // It's ok 0046 break; 0047 } 0048 } 0049 0050 void NeedUpdateVersionWidget::slotDisableVersionCheck() 0051 { 0052 NeedUpdateVersionUtils::disableCheckVersion(); 0053 animatedHide(); 0054 } 0055 0056 #include "moc_needupdateversionwidget.cpp"