File indexing completed on 2025-02-16 04:55:55

0001 /*
0002    SPDX-FileCopyrightText: 2013-2024 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 #include "sievehelpbutton.h"
0007 
0008 #include <KIO/JobUiDelegateFactory>
0009 #include <KIO/OpenUrlJob>
0010 #include <KLocalizedString>
0011 #include <QIcon>
0012 #include <QWhatsThis>
0013 #include <QWhatsThisClickedEvent>
0014 
0015 using namespace KSieveUi;
0016 SieveHelpButton::SieveHelpButton(QWidget *parent)
0017     : QToolButton(parent)
0018 {
0019     setToolTip(i18n("Help"));
0020     setIcon(QIcon::fromTheme(QStringLiteral("help-hint")));
0021 }
0022 
0023 SieveHelpButton::~SieveHelpButton() = default;
0024 
0025 bool SieveHelpButton::event(QEvent *event)
0026 {
0027     if (event->type() == QEvent::WhatsThisClicked) {
0028         auto clicked = static_cast<QWhatsThisClickedEvent *>(event);
0029         auto job = new KIO::OpenUrlJob(QUrl(clicked->href()));
0030         job->setUiDelegate(KIO::createDefaultJobUiDelegate(KJobUiDelegate::AutoHandlingEnabled, this));
0031         job->start();
0032         return true;
0033     }
0034     return QToolButton::event(event);
0035 }
0036 
0037 #include "moc_sievehelpbutton.cpp"