Warning, file /plasma/libksysguard/processui/processdetails/ProcessDetailsDialog.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

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 _ProcessDetailsDialog_h_
0010 #define _ProcessDetailsDialog_h_
0011 
0012 #include <QDialog>
0013 #include <QPersistentModelIndex>
0014 
0015 class KMessageWidget;
0016 
0017 namespace KSysGuard
0018 {
0019 class Process;
0020 }
0021 
0022 class GeneralTab;
0023 class MemoryMapsTab;
0024 class OpenFilesTab;
0025 
0026 class ProcessDetailsDialog : public QDialog
0027 {
0028     Q_OBJECT
0029 
0030 public:
0031     explicit ProcessDetailsDialog(QWidget *parent = nullptr);
0032 
0033     void setModelIndex(const QModelIndex &index);
0034 
0035 private Q_SLOTS:
0036     void onBeginRemoveProcess(KSysGuard::Process *process);
0037     void onProcessChanged(KSysGuard::Process *process);
0038 
0039 private:
0040     const KSysGuard::Process* getProcess() const;
0041     long getProcessId() const;
0042     QVariantMap getProcessData() const;
0043 
0044     QPersistentModelIndex m_index;
0045 
0046     KMessageWidget *m_warningWidget = nullptr;
0047     GeneralTab *m_generalTab = nullptr;
0048     MemoryMapsTab *m_memoryMapsTab = nullptr;
0049     OpenFilesTab *m_openFilesTab = nullptr;
0050 };
0051 
0052 #endif // _ProcessDetailsDialog_h_