1 /*
2 SPDX-FileCopyrightText: 2017-2021 Laurent Montel <montel@kde.org>
3
4 SPDX-License-Identifier: GPL-2.0-or-later
5 */
6
7 #include "jobtrackersearchwidget.h"
8
9 #include <QCheckBox>
10 #include <QComboBox>
11 #include <QHBoxLayout>
12 #include <QLineEdit>
13
JobTrackerSearchWidget(QWidget * parent)14 JobTrackerSearchWidget::JobTrackerSearchWidget(QWidget *parent)
15 : QWidget(parent)
16 {
17 auto mainLayout = new QHBoxLayout(this);
18 mainLayout->setObjectName(QStringLiteral("mainlayout"));
19 mainLayout->setContentsMargins(0, 0, 0, 0);
20
21 mSearchLineEdit = new QLineEdit(this);
22 mSearchLineEdit->setObjectName(QStringLiteral("searchline"));
23 mSearchLineEdit->setClearButtonEnabled(true);
24 mSearchLineEdit->setPlaceholderText(QStringLiteral("Search..."));
25 mainLayout->addWidget(mSearchLineEdit);
26 connect(mSearchLineEdit, &QLineEdit::textChanged, this, &JobTrackerSearchWidget::searchTextChanged);
27
28 mSelectOnlyError = new QCheckBox(QStringLiteral("Show Only Errors"), this);
29 mSelectOnlyError->setObjectName(QStringLiteral("selectonlyerror"));
30 mainLayout->addWidget(mSelectOnlyError);
31 connect(mSelectOnlyError, &QCheckBox::toggled, this, &JobTrackerSearchWidget::selectOnlyErrorChanged);
32
33 mSelectColumn = new QComboBox(this);
34 mSelectColumn->setObjectName(QStringLiteral("selectcolumn"));
35 mainLayout->addWidget(mSelectColumn);
36 mSelectColumn->addItem(QStringLiteral("All Columns"), -1);
37 mSelectColumn->addItem(QStringLiteral("Job ID"), 0);
38 mSelectColumn->addItem(QStringLiteral("Created"), 1);
39 mSelectColumn->addItem(QStringLiteral("Wait time"), 2);
40 mSelectColumn->addItem(QStringLiteral("Job duration"), 3);
41 mSelectColumn->addItem(QStringLiteral("Job Type"), 4);
42 mSelectColumn->addItem(QStringLiteral("State"), 5);
43 mSelectColumn->addItem(QStringLiteral("Info"), 6);
44 connect(mSelectColumn, &QComboBox::currentIndexChanged, this, &JobTrackerSearchWidget::slotColumnChanged);
45 }
46
~JobTrackerSearchWidget()47 JobTrackerSearchWidget::~JobTrackerSearchWidget()
48 {
49 }
50
slotColumnChanged(int index)51 void JobTrackerSearchWidget::slotColumnChanged(int index)
52 {
53 QVariant var = mSelectColumn->itemData(index);
54 if (var.isValid()) {
55 Q_EMIT columnChanged(var.toInt());
56 }
57 }
58