File indexing completed on 2024-12-08 04:34:35

0001 /*
0002    SPDX-FileCopyrightText: 2023-2024 Laurent Montel <montel.org>
0003 
0004    SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #include "servererrorinfomessagewidget.h"
0008 #include "accountmanager.h"
0009 #include "ruqola.h"
0010 #include "servererrorinfohistory/servererrorinfomessagehistorydialog.h"
0011 #include <KLocalizedString>
0012 #include <QDebug>
0013 
0014 ServerErrorInfoMessageWidget::ServerErrorInfoMessageWidget(QWidget *parent)
0015     : KMessageWidget(parent)
0016 {
0017     setVisible(false);
0018     setCloseButtonVisible(true);
0019     setMessageType(Error);
0020     setPosition(KMessageWidget::Header);
0021 
0022     setText(i18n("Server errors reported. %1", QStringLiteral("<a href=\"show_errors\">%1</a>").arg(i18n("(Show Errors)"))));
0023     connect(this, &KMessageWidget::linkActivated, this, &ServerErrorInfoMessageWidget::slotLinkActivated);
0024 }
0025 
0026 ServerErrorInfoMessageWidget::~ServerErrorInfoMessageWidget() = default;
0027 
0028 void ServerErrorInfoMessageWidget::slotLinkActivated(const QString &contents)
0029 {
0030     if (contents == QLatin1String("show_errors")) {
0031         ServerErrorInfoMessageHistoryDialog dlg(this);
0032         dlg.addServerList(Ruqola::self()->accountManager()->accountNamesSorted());
0033         dlg.exec();
0034     }
0035 }
0036 
0037 #include "moc_servererrorinfomessagewidget.cpp"