File indexing completed on 2025-02-16 04:49:25
0001 /* 0002 SPDX-FileCopyrightText: 2019-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #include "markdowncreatelinkwidget.h" 0008 #include <KLocalizedString> 0009 #include <QFormLayout> 0010 #include <QLineEdit> 0011 0012 MarkdownCreateLinkWidget::MarkdownCreateLinkWidget(QWidget *parent) 0013 : QWidget(parent) 0014 , mTitle(new QLineEdit(this)) 0015 , mLink(new QLineEdit(this)) 0016 { 0017 auto mainLayout = new QFormLayout(this); 0018 mainLayout->setObjectName(QLatin1StringView("mainlayout")); 0019 mainLayout->setContentsMargins({}); 0020 0021 mTitle->setObjectName(QLatin1StringView("title")); 0022 mTitle->setClearButtonEnabled(true); 0023 mLink->setObjectName(QLatin1StringView("link")); 0024 mLink->setClearButtonEnabled(true); 0025 0026 connect(mTitle, &QLineEdit::textChanged, this, &MarkdownCreateLinkWidget::slotEnableButton); 0027 connect(mLink, &QLineEdit::textChanged, this, &MarkdownCreateLinkWidget::slotEnableButton); 0028 0029 mainLayout->addRow(i18n("Title:"), mTitle); 0030 mainLayout->addRow(i18n("Link:"), mLink); 0031 } 0032 0033 MarkdownCreateLinkWidget::~MarkdownCreateLinkWidget() = default; 0034 0035 void MarkdownCreateLinkWidget::slotEnableButton() 0036 { 0037 Q_EMIT enabledOkButton(!mTitle->text().trimmed().isEmpty() && !mLink->text().trimmed().isEmpty()); 0038 } 0039 0040 QString MarkdownCreateLinkWidget::linkStr() const 0041 { 0042 if (mTitle->text().trimmed().isEmpty() && mLink->text().trimmed().isEmpty()) { 0043 return {}; 0044 } 0045 return QStringLiteral("[%1](%2)").arg(mTitle->text().trimmed(), mLink->text().trimmed()); 0046 } 0047 0048 #include "moc_markdowncreatelinkwidget.cpp"