84 lines
1.9 KiB
C++
84 lines
1.9 KiB
C++
#ifndef SRUNNINGLISTWIDGET
|
|
#define SRUNNINGLISTWIDGET
|
|
|
|
#include <QWidget>
|
|
#include <memory>
|
|
#include <QVector>
|
|
#include <QSet>
|
|
#include <QTableWidgetItem>
|
|
|
|
class QPushButton;
|
|
class QTableWidget;
|
|
class QDateEdit;
|
|
class QVBoxLayout;
|
|
class QStringList;
|
|
|
|
class SRunningListWidget:public QWidget
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
enum class E_TABLE_HEADER;
|
|
|
|
|
|
public:
|
|
SRunningListWidget(QWidget* parent = nullptr);
|
|
QVBoxLayout* getLayout() const;
|
|
void delList(int _id);
|
|
void delList(QVector<int> _ids);
|
|
~SRunningListWidget();
|
|
|
|
private:
|
|
void initButton();
|
|
void initTableWidget();
|
|
void initDatabase();
|
|
void initLayout();
|
|
void resetTableHeader();
|
|
QTableWidgetItem* findWidgetItembyID(int _id, E_TABLE_HEADER _header) const;
|
|
|
|
|
|
public slots:
|
|
void addList(QVector<QVector<QTableWidgetItem>> items);
|
|
QVector<int> getSelectedList() const;
|
|
QVector<int> getAllList() const;
|
|
void enableBtnTimerStart(bool enable);
|
|
void enableBtnTimerStop(bool enable);
|
|
void enableBtnForceStart(bool enable);
|
|
void enableBtnForceStop(bool enable);
|
|
void setRunning(int _id);
|
|
void setWaiting(int _id);
|
|
void setComplete(int _id);
|
|
void removeSelectedList();
|
|
|
|
void slotTimerStart();
|
|
void slotTimerStop();
|
|
void slotForceStart();
|
|
void slotForceStop();
|
|
|
|
|
|
private slots:
|
|
void slotClickedItem();
|
|
|
|
signals:
|
|
void signalTimerStart();
|
|
void signalTimerStop();
|
|
void signalForceStart();
|
|
void signalForceStop();
|
|
void signalClickItem();
|
|
|
|
private:
|
|
QPushButton* m_pbtnTimerStart;
|
|
QPushButton* m_pbtnTimerStop;
|
|
QPushButton* m_pbtnForceStart;
|
|
QPushButton* m_pbtnForceStop;
|
|
QTableWidget* m_ptableWidget;
|
|
QWidget* m_pwParent;
|
|
QVBoxLayout *m_playout;
|
|
std::unique_ptr<QStringList> m_pslTableHeader;
|
|
QSet<int> m_setNumber;
|
|
};
|
|
|
|
|
|
|
|
#endif // SRUNNINGLISTWIDGET
|
|
|