#ifndef PROCMNGFORM_H #define PROCMNGFORM_H #include #include #include #include #include #include "MonitorCommon.h" using namespace workBench; namespace Ui { class ProcMngForm; } class ProcMngForm : public QWidget { Q_OBJECT public: explicit ProcMngForm(QWidget *parent = 0); ~ProcMngForm(); signals: void sigReloadAppAndProc(); void sigStartProc(int appId,const QString procName); void sigStopProc(int appId,const QString procName); void sigRestartProc(int appId,const QString procName); void sigForceStopProc(int appId,const QString procName); public slots: void updateProcTree(); void customContext(const QPoint &pos); void procItemClicked(QTreeWidgetItem *item, int column); void checkBoxStateChange(int state); void allCheckBoxStateChange(int state); public: void initProcTree(); void updateItem(const SProcess &proc,QTreeWidgetItem *item , const QSet &appDescList ); void blockAppSignals(bool b); private: int getCurAppRdbStatus(int appId); void outLog(const std::vector &procInfo); void upDataProcTreeByDesc(const QSet &appDescList = {}); //过滤树节点 QSet retAllCheckBoxName(); //获取所有勾选的复选框的名称 void createOrUpdataCheckBox(const QSet &appDescSet ); //创建与更新复选框控件 private: Ui::ProcMngForm *ui; uint64 m_ntime; bool m_isZh; QButtonGroup *m_btnGroup; QCheckBox *m_allCheckBox; //全选复选框 }; #endif // PROCMNGFORM_H