1 /* 2 SPDX-FileCopyrightText: 2013-2021 Laurent Montel <montel@kde.org> 3 4 SPDX-License-Identifier: LGPL-2.0-or-later 5 */ 6 #include "sievehelpbutton.h" 7 8 #include <KIO/JobUiDelegate> 9 #include <KIO/OpenUrlJob> 10 #include <KLocalizedString> 11 #include <QIcon> 12 #include <QWhatsThis> 13 #include <QWhatsThisClickedEvent> 14 15 using namespace KSieveUi; SieveHelpButton(QWidget * parent)16SieveHelpButton::SieveHelpButton(QWidget *parent) 17 : QToolButton(parent) 18 { 19 setToolTip(i18n("Help")); 20 setIcon(QIcon::fromTheme(QStringLiteral("help-hint"))); 21 } 22 ~SieveHelpButton()23SieveHelpButton::~SieveHelpButton() 24 { 25 } 26 event(QEvent * event)27bool SieveHelpButton::event(QEvent *event) 28 { 29 if (event->type() == QEvent::WhatsThisClicked) { 30 auto clicked = static_cast<QWhatsThisClickedEvent *>(event); 31 auto job = new KIO::OpenUrlJob(QUrl(clicked->href())); 32 job->setUiDelegate(new KIO::JobUiDelegate(KJobUiDelegate::AutoHandlingEnabled, this)); 33 job->start(); 34 return true; 35 } 36 return QToolButton::event(event); 37 } 38