1 /*
2    SPDX-FileCopyrightText: 2015-2021 Laurent Montel <montel@kde.org>
3 
4    SPDX-License-Identifier: GPL-2.0-or-later
5 */
6 
7 #include "sieveeditoremptytabwidgetlabel.h"
8 #include <KLocalizedString>
9 
SieveEditorEmptyTabWidgetLabel(QWidget * parent)10 SieveEditorEmptyTabWidgetLabel::SieveEditorEmptyTabWidgetLabel(QWidget *parent)
11     : QLabel(parent)
12 {
13     init();
14 }
15 
~SieveEditorEmptyTabWidgetLabel()16 SieveEditorEmptyTabWidgetLabel::~SieveEditorEmptyTabWidgetLabel()
17 {
18 }
19 
init()20 void SieveEditorEmptyTabWidgetLabel::init()
21 {
22     // TODO improve text
23     QString placeholderText = QStringLiteral(
24         "<html><body style=\"color:#909090; font-size:14px\">"
25         "<div align='center'>");
26     const QVector<placeHolderTextInfo> map{
27         placeHolderTextInfo(i18n("Import script:"), i18nc("Action is from file menu, import submenu", "File > Import")),
28         placeHolderTextInfo(i18n("Create Rules Graphically:"), i18nc("Action is from menu tools, submenu autogenerate script", "Tools > Autogenerate script")),
29         placeHolderTextInfo(i18n("Debug a script:"), i18nc("These action in from menu tools submenu debug sieve script", "Tools > Debug Sieve Script")),
30         placeHolderTextInfo(i18n("Import Sieve Settings:"), i18nc("Action is from tools menu, import IMAP settings", "Tools > Import IMAP settings"))};
31     addInfo(placeholderText, map);
32     placeholderText += QStringLiteral(
33         "<div></div>"
34         "</div>"
35         "</body></html>");
36     setTextFormat(Qt::RichText);
37     setText(placeholderText);
38 }
39 
addInfo(QString & placeholderText,const QVector<placeHolderTextInfo> & map)40 void SieveEditorEmptyTabWidgetLabel::addInfo(QString &placeholderText, const QVector<placeHolderTextInfo> &map)
41 {
42     for (int i = 0; i < map.size(); ++i) {
43         placeholderText += QStringLiteral(
44                                "<div style=\"font-size:20px\">%1</div>"
45                                "<div></div>"
46                                "<li>%2")
47                                .arg(map.at(i).text, map.at(i).menuInfo);
48     }
49 }
50