File indexing completed on 2024-05-26 04:46:54
0001 /* 0002 SPDX-FileCopyrightText: 2022-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #include "grammalecteurlrequesterwidget.h" 0008 #include <KLocalizedString> 0009 #include <QFileDialog> 0010 #include <QHBoxLayout> 0011 #include <QLineEdit> 0012 #include <QToolButton> 0013 #if QT_VERSION >= QT_VERSION_CHECK(6, 4, 0) 0014 #include <KLineEditEventHandler> 0015 #endif 0016 0017 using namespace TextGrammarCheck; 0018 GrammalecteUrlRequesterWidget::GrammalecteUrlRequesterWidget(QWidget *parent) 0019 : QWidget{parent} 0020 , mLineEdit(new QLineEdit(this)) 0021 { 0022 auto mainLayout = new QHBoxLayout(this); 0023 mainLayout->setObjectName(QStringLiteral("mainLayout")); 0024 mainLayout->setContentsMargins({}); 0025 0026 mLineEdit->setObjectName(QStringLiteral("mLineEdit")); 0027 mainLayout->addWidget(mLineEdit); 0028 #if QT_VERSION >= QT_VERSION_CHECK(6, 4, 0) 0029 KLineEditEventHandler::catchReturnKey(mLineEdit); 0030 #endif 0031 auto selectUrlButton = new QToolButton(this); 0032 selectUrlButton->setText(QStringLiteral("...")); 0033 selectUrlButton->setObjectName(QStringLiteral("selectUrlButton")); 0034 mainLayout->addWidget(selectUrlButton); 0035 0036 connect(selectUrlButton, &QToolButton::clicked, this, [this]() { 0037 const QString path = QFileDialog::getOpenFileName(this, i18n("Select Path")); 0038 mLineEdit->setText(path); 0039 }); 0040 } 0041 0042 GrammalecteUrlRequesterWidget::~GrammalecteUrlRequesterWidget() = default; 0043 0044 void GrammalecteUrlRequesterWidget::setPath(const QString &path) 0045 { 0046 mLineEdit->setText(path); 0047 } 0048 0049 QString GrammalecteUrlRequesterWidget::path() const 0050 { 0051 return mLineEdit->text(); 0052 } 0053 0054 void GrammalecteUrlRequesterWidget::setPlaceholderText(const QString &text) 0055 { 0056 mLineEdit->setPlaceholderText(text); 0057 } 0058 0059 #include "moc_grammalecteurlrequesterwidget.cpp"