File indexing completed on 2024-05-05 17:39:54

0001 /*
0002  *  KSysGuard, the KDE System Guard
0003  *
0004  *  SPDX-FileCopyrightText: 2022 Eugene Popov <popov895@ukr.net>
0005  *
0006  *  SPDX-License-Identifier: LGPL-2.0-or-later
0007  */
0008 
0009 #ifndef _OpenFilesTab_h_
0010 #define _OpenFilesTab_h_
0011 
0012 #include <QWidget>
0013 
0014 class QLabel;
0015 class QLineEdit;
0016 class QSortFilterProxyModel;
0017 
0018 class KMessageWidget;
0019 
0020 class OpenFilesModel;
0021 
0022 class OpenFilesTab : public QWidget
0023 {
0024     Q_OBJECT
0025 
0026 public:
0027     explicit OpenFilesTab(QWidget *parent = nullptr);
0028 
0029     void setProcessId(long processId);
0030 
0031 private Q_SLOTS:
0032     void refresh();
0033 
0034     void onProxyModelChanged();
0035     void onSearchEditEditingFinished();
0036 
0037 private:
0038     long m_processId = 0;
0039     OpenFilesModel *m_dataModel = nullptr;
0040     QSortFilterProxyModel *m_proxyModel = nullptr;
0041 
0042     KMessageWidget *m_errorWidget = nullptr;
0043     QLineEdit *m_searchEdit = nullptr;
0044     QLabel *m_placeholderLabel = nullptr;
0045 };
0046 
0047 #endif // _OpenFilesTab_h_