File indexing completed on 2024-05-12 05:12:46
0001 /* 0002 SPDX-FileCopyrightText: 2017-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #include "jobtrackersearchwidget.h" 0008 0009 #include <KLocalizedString> 0010 #include <QCheckBox> 0011 #include <QComboBox> 0012 #include <QHBoxLayout> 0013 #include <QLineEdit> 0014 0015 JobTrackerSearchWidget::JobTrackerSearchWidget(QWidget *parent) 0016 : QWidget(parent) 0017 , mSearchLineEdit(new QLineEdit(this)) 0018 , mSelectColumn(new QComboBox(this)) 0019 , mSelectOnlyError(new QCheckBox(i18n("Show Only Errors"), this)) 0020 { 0021 auto mainLayout = new QHBoxLayout(this); 0022 mainLayout->setObjectName(QLatin1StringView("mainlayout")); 0023 mainLayout->setContentsMargins(0, 0, 0, 0); 0024 0025 mSearchLineEdit->setObjectName(QLatin1StringView("searchline")); 0026 mSearchLineEdit->setClearButtonEnabled(true); 0027 mSearchLineEdit->setPlaceholderText(i18n("Search...")); 0028 mainLayout->addWidget(mSearchLineEdit); 0029 connect(mSearchLineEdit, &QLineEdit::textChanged, this, &JobTrackerSearchWidget::searchTextChanged); 0030 0031 mSelectOnlyError->setObjectName(QLatin1StringView("selectonlyerror")); 0032 mainLayout->addWidget(mSelectOnlyError); 0033 connect(mSelectOnlyError, &QCheckBox::toggled, this, &JobTrackerSearchWidget::selectOnlyErrorChanged); 0034 0035 mSelectColumn->setObjectName(QLatin1StringView("selectcolumn")); 0036 mainLayout->addWidget(mSelectColumn); 0037 mSelectColumn->addItem(i18n("All Columns"), -1); 0038 mSelectColumn->addItem(i18n("Job ID"), 0); 0039 mSelectColumn->addItem(i18n("Created"), 1); 0040 mSelectColumn->addItem(i18n("Wait time"), 2); 0041 mSelectColumn->addItem(i18n("Job duration"), 3); 0042 mSelectColumn->addItem(i18n("Job Type"), 4); 0043 mSelectColumn->addItem(i18n("State"), 5); 0044 mSelectColumn->addItem(i18n("Info"), 6); 0045 connect(mSelectColumn, &QComboBox::currentIndexChanged, this, &JobTrackerSearchWidget::slotColumnChanged); 0046 } 0047 0048 JobTrackerSearchWidget::~JobTrackerSearchWidget() = default; 0049 0050 void JobTrackerSearchWidget::slotColumnChanged(int index) 0051 { 0052 QVariant var = mSelectColumn->itemData(index); 0053 if (var.isValid()) { 0054 Q_EMIT columnChanged(var.toInt()); 0055 } 0056 } 0057 0058 #include "moc_jobtrackersearchwidget.cpp"