adddelwidget 추가
srunninglistwidget 추가 git-svn-id: svn://192.168.0.12/source@298 8346c931-da38-4b9b-9d4c-e48b93cbd075
This commit is contained in:
@@ -19,13 +19,15 @@ SOURCES += main.cpp\
|
||||
sutilfunction.cpp \
|
||||
sutilclass.cpp \
|
||||
srunninglistwidget.cpp \
|
||||
stimer.cpp
|
||||
stimer.cpp \
|
||||
sadddelwidget.cpp
|
||||
|
||||
HEADERS += widget.h \
|
||||
scompanylistwidget.h \
|
||||
sutilfunction.h \
|
||||
sutilclass.h \
|
||||
srunninglistwidget.h \
|
||||
stimer.h
|
||||
stimer.h \
|
||||
sadddelwidget.h
|
||||
|
||||
FORMS += widget.ui
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE QtCreatorProject>
|
||||
<!-- Written by QtCreator 3.3.0, 2016-10-04T19:38:35. -->
|
||||
<!-- Written by QtCreator 3.3.0, 2016-10-06T19:12:06. -->
|
||||
<qtcreator>
|
||||
<data>
|
||||
<variable>EnvironmentId</variable>
|
||||
|
||||
69
EffectUI/sadddelwidget.cpp
Normal file
69
EffectUI/sadddelwidget.cpp
Normal file
@@ -0,0 +1,69 @@
|
||||
#include "sadddelwidget.h"
|
||||
#include <QPushButton>
|
||||
#include <QVBoxLayout>
|
||||
#include <QDebug>
|
||||
|
||||
SAddDelWidget::SAddDelWidget(QWidget *parent):
|
||||
m_pbtnAdd(new QPushButton(parent)), m_pbtnDel(new QPushButton(parent)),
|
||||
m_pParent(parent), m_playout(new QVBoxLayout(parent))
|
||||
|
||||
{
|
||||
initButton();
|
||||
initLayout();
|
||||
}
|
||||
|
||||
SAddDelWidget::~SAddDelWidget()
|
||||
{
|
||||
if (m_pParent == nullptr)
|
||||
{
|
||||
disconnect(m_pbtnAdd, 0, 0, 0);
|
||||
disconnect(m_pbtnDel, 0, 0, 0);
|
||||
delete m_pbtnAdd;
|
||||
delete m_pbtnDel;
|
||||
}
|
||||
}
|
||||
|
||||
void SAddDelWidget::initButton()
|
||||
{
|
||||
m_pbtnAdd->setText("->");
|
||||
m_pbtnDel->setText("<-");
|
||||
m_pbtnAdd->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
|
||||
m_pbtnDel->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
|
||||
connect(m_pbtnAdd, &QPushButton::released, this, &SAddDelWidget::slotClickedAddBtn);
|
||||
connect(m_pbtnDel, &QPushButton::released, this, &SAddDelWidget::slotClickedDelBtn);
|
||||
}
|
||||
|
||||
void SAddDelWidget::enableBtnDel(bool _enable)
|
||||
{
|
||||
m_pbtnAdd->setEnabled(_enable);
|
||||
}
|
||||
|
||||
void SAddDelWidget::enableBtnAdd(bool _enable)
|
||||
{
|
||||
m_pbtnDel->setEnabled(_enable);
|
||||
}
|
||||
|
||||
void SAddDelWidget::slotClickedAddBtn()
|
||||
{
|
||||
qDebug() << "click slotClickedAddBtn";
|
||||
emit signalClickedAddBtn();
|
||||
}
|
||||
|
||||
void SAddDelWidget::slotClickedDelBtn()
|
||||
{
|
||||
qDebug() << "click slotClickedDelBtn";
|
||||
emit signalClickedDelBtn();
|
||||
}
|
||||
|
||||
void SAddDelWidget::initLayout()
|
||||
{
|
||||
m_playout->addWidget(m_pbtnAdd);
|
||||
m_playout->addWidget(m_pbtnDel);
|
||||
}
|
||||
|
||||
QVBoxLayout* SAddDelWidget::getLayout()
|
||||
{
|
||||
return m_playout;
|
||||
}
|
||||
|
||||
|
||||
45
EffectUI/sadddelwidget.h
Normal file
45
EffectUI/sadddelwidget.h
Normal file
@@ -0,0 +1,45 @@
|
||||
#ifndef SADDDELWIDGET
|
||||
#define SADDDELWIDGET
|
||||
|
||||
#include <QObject>
|
||||
|
||||
class QPushButton;
|
||||
class QVBoxLayout;
|
||||
class QWidget;
|
||||
|
||||
|
||||
class SAddDelWidget: public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SAddDelWidget(QWidget *parent = nullptr);
|
||||
~SAddDelWidget();
|
||||
QVBoxLayout* getLayout();
|
||||
|
||||
private:
|
||||
void initButton();
|
||||
void initLayout();
|
||||
|
||||
private slots:
|
||||
void slotClickedAddBtn();
|
||||
void slotClickedDelBtn();
|
||||
|
||||
public slots:
|
||||
void enableBtnAdd(bool _enable);
|
||||
void enableBtnDel(bool _enable);
|
||||
|
||||
signals:
|
||||
void signalClickedAddBtn();
|
||||
void signalClickedDelBtn();
|
||||
|
||||
private:
|
||||
QPushButton* m_pbtnAdd;
|
||||
QPushButton* m_pbtnDel;
|
||||
QWidget* m_pParent;
|
||||
QVBoxLayout* m_playout;
|
||||
};
|
||||
|
||||
|
||||
#endif // SADDDELWIDGET
|
||||
|
||||
@@ -91,6 +91,7 @@ void SCompanyListWidget::initLayout()
|
||||
|
||||
m_playout->addWidget(m_ptableWidget);
|
||||
m_playout->addLayout(pblbutton);
|
||||
|
||||
}
|
||||
|
||||
void SCompanyListWidget::initTableWidget()
|
||||
@@ -99,6 +100,7 @@ void SCompanyListWidget::initTableWidget()
|
||||
m_ptableWidget->setSelectionBehavior(QAbstractItemView::SelectRows);
|
||||
m_ptableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers);
|
||||
m_ptableWidget->setSortingEnabled(true);
|
||||
//m_ptableWidget->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
|
||||
connect(m_ptableWidget, &QTableWidget::itemSelectionChanged,
|
||||
this, &SCompanyListWidget::slotClickedItem);
|
||||
}
|
||||
@@ -161,6 +163,7 @@ void SCompanyListWidget::refresh()
|
||||
QTableWidgetItem *itemCompany =
|
||||
new QTableWidgetItem(query.value(static_cast<int>(E_TABLE_HEADER::COMPANY) + 1).toString());
|
||||
itemCompany->setData(Qt::UserRole, query.value(0));
|
||||
m_ptableWidget->setRowHidden(nRow, false);
|
||||
|
||||
m_ptableWidget->setItem(nRow, static_cast<int>(E_TABLE_HEADER::COMPANY), itemCompany);
|
||||
m_ptableWidget->setItem(nRow, static_cast<int>(E_TABLE_HEADER::START_DATE),
|
||||
@@ -172,7 +175,6 @@ void SCompanyListWidget::refresh()
|
||||
query.value(static_cast<int>(E_TABLE_HEADER::EVENT_NUM) + 1).toInt())));
|
||||
m_ptableWidget->setItem(nRow, static_cast<int>(E_TABLE_HEADER::STATUS),
|
||||
new QTableWidgetItem(""));
|
||||
m_ptableWidget->setRowHidden(nRow, false);
|
||||
++nRow;
|
||||
}
|
||||
|
||||
@@ -297,7 +299,7 @@ QVector<QVector<QTableWidgetItem>> SCompanyListWidget::getSelectedList() const
|
||||
item.append(QTableWidgetItem(*m_ptableWidget->item(modelIndex.row(), static_cast<int>(E_TABLE_HEADER::COMPANY))));
|
||||
item.append(QTableWidgetItem(*m_ptableWidget->item(modelIndex.row(), static_cast<int>(E_TABLE_HEADER::START_DATE))));
|
||||
item.append(QTableWidgetItem(*m_ptableWidget->item(modelIndex.row(), static_cast<int>(E_TABLE_HEADER::END_DATE))));
|
||||
item.append(QTableWidgetItem(*m_ptableWidget->item(modelIndex.row(), static_cast<int>(E_TABLE_HEADER::EVENT_NUM))));
|
||||
item.append(STableWidgetItem(*m_ptableWidget->item(modelIndex.row(), static_cast<int>(E_TABLE_HEADER::EVENT_NUM))));
|
||||
items.append(item);
|
||||
}
|
||||
return items;
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
#include "srunninglistwidget.h"
|
||||
#include "sutilfunction.h"
|
||||
#include "sutilclass.h"
|
||||
|
||||
#include <QPushButton>
|
||||
#include <QString>
|
||||
#include <QVector>
|
||||
@@ -9,23 +12,37 @@
|
||||
#include <QSqlQuery>
|
||||
#include <QSqlError>
|
||||
#include <QDebug>
|
||||
#include <QDateTime>
|
||||
|
||||
namespace
|
||||
{
|
||||
QString strDatabaseName("runninglist");
|
||||
const QString strDatabaseName("runninglist");
|
||||
}
|
||||
|
||||
enum class SRunningListWidget::E_TABLE_HEADER
|
||||
{
|
||||
COMPANY = 0,
|
||||
START_DATE,
|
||||
END_DATE,
|
||||
EVENT_NUM,
|
||||
STATUS,
|
||||
LAST_UPDATE_TIME,
|
||||
MAX
|
||||
};
|
||||
|
||||
SRunningListWidget::SRunningListWidget(QWidget* parent) :
|
||||
m_pwParent(parent), m_pbtnTimerStart(new QPushButton(parent)), m_pbtnTimerStop(new QPushButton(parent)),
|
||||
m_pbtnForceStart(new QPushButton(parent)), m_pbtnForceStop(new QPushButton(parent)), m_ptableWidget(new QTableWidget(parent)),
|
||||
m_pwParent(parent), m_pbtnTimerStart(new QPushButton(parent)),
|
||||
m_pbtnTimerStop(new QPushButton(parent)), m_pbtnForceStart(new QPushButton(parent)),
|
||||
m_pbtnForceStop(new QPushButton(parent)), m_ptableWidget(new QTableWidget(parent)),
|
||||
m_playout(new QVBoxLayout(parent)), m_pslTableHeader(new QStringList)
|
||||
{
|
||||
*m_pslTableHeader << "Company" << "Start date" << "End date" << "Event Num" << "Status" << "Last Update Time";
|
||||
*m_pslTableHeader << "Company" << "Start date" << "End date"
|
||||
<< "Event Num" << "Status" << "Last Update Time";
|
||||
initButton();
|
||||
initDatabase();
|
||||
initLayout();
|
||||
initTableWidget();
|
||||
initLayout();
|
||||
resetTableHeader();
|
||||
}
|
||||
|
||||
void SRunningListWidget::initButton()
|
||||
@@ -35,105 +52,254 @@ void SRunningListWidget::initButton()
|
||||
m_pbtnTimerStart->setText("Timer Start");
|
||||
m_pbtnTimerStop->setText("Timer Stop");
|
||||
|
||||
connect(m_pbtnForceStart, &QPushButton::released, this, &SRunningListWidget::)
|
||||
connect(m_pbtnForceStart, &QPushButton::released,
|
||||
this, &SRunningListWidget::slotForceStart);
|
||||
connect(m_pbtnForceStop, &QPushButton::released,
|
||||
this, &SRunningListWidget::slotForceStop);
|
||||
connect(m_pbtnTimerStart, &QPushButton::released,
|
||||
this, &SRunningListWidget::slotTimerStart);
|
||||
connect(m_pbtnTimerStop, &QPushButton::released,
|
||||
this, &SRunningListWidget::slotTimerStop);
|
||||
}
|
||||
|
||||
|
||||
void SRunningListWidget::initDatabase()
|
||||
{
|
||||
databaseSetting(strDatabaseName);
|
||||
}
|
||||
|
||||
void SRunningListWidget::initTableWidget()
|
||||
{
|
||||
m_ptableWidget->setColumnCount(m_pslTableHeader->size());
|
||||
m_ptableWidget->setSelectionBehavior(QAbstractItemView::SelectRows);
|
||||
m_ptableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers);
|
||||
m_ptableWidget->setSortingEnabled(true);
|
||||
//m_ptableWidget->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
|
||||
connect(m_ptableWidget, &QTableWidget::itemSelectionChanged,
|
||||
this, &SRunningListWidget::slotClickedItem);
|
||||
}
|
||||
|
||||
void SRunningListWidget::initLayout()
|
||||
{
|
||||
QHBoxLayout *pblbutton = new QHBoxLayout;
|
||||
pblbutton->addWidget(m_pbtnTimerStart);
|
||||
pblbutton->addWidget(m_pbtnTimerStop);
|
||||
pblbutton->addWidget(m_pbtnForceStart);
|
||||
pblbutton->addWidget(m_pbtnForceStop);
|
||||
|
||||
m_playout->addWidget(m_ptableWidget);
|
||||
m_playout->addLayout(pblbutton);
|
||||
}
|
||||
|
||||
void SRunningListWidget::slotClickedItem()
|
||||
{
|
||||
emit signalClickItem();
|
||||
}
|
||||
|
||||
QVector<int> SRunningListWidget::getSelectedList() const
|
||||
{
|
||||
auto modelIndexes = m_ptableWidget->selectionModel()->selectedRows();
|
||||
|
||||
QVector<int> items;
|
||||
|
||||
foreach (auto& modelIndex, modelIndexes)
|
||||
{
|
||||
items.append(modelIndex.row());
|
||||
}
|
||||
return items;
|
||||
}
|
||||
|
||||
QVector<int> SRunningListWidget::getAllList() const
|
||||
{
|
||||
QVector<int> items;
|
||||
for (int i = 0; i < m_ptableWidget->rowCount(); ++i)
|
||||
{
|
||||
int num = m_ptableWidget->item(i, static_cast<int>(E_TABLE_HEADER::COMPANY))->
|
||||
data(Qt::UserRole).toInt();
|
||||
items.append(num);
|
||||
}
|
||||
return items;
|
||||
}
|
||||
|
||||
void SRunningListWidget::removeSelectedList()
|
||||
{
|
||||
QModelIndexList selectedList = m_ptableWidget->selectionModel()->selectedRows();
|
||||
for (int i = selectedList.size() - 1; i >= 0; --i)
|
||||
{
|
||||
m_ptableWidget->removeRow(selectedList[i].row());
|
||||
}
|
||||
}
|
||||
|
||||
QVBoxLayout* SRunningListWidget::getLayout() const
|
||||
{
|
||||
return m_playout;
|
||||
}
|
||||
|
||||
void SRunningListWidget::delList(int _id)
|
||||
{
|
||||
if (m_setNumber.contains(_id))
|
||||
{
|
||||
m_setNumber.remove(_id);
|
||||
for (int i = 0; i < m_ptableWidget->rowCount(); ++i)
|
||||
{
|
||||
auto item = m_ptableWidget->item(i, static_cast<int>(E_TABLE_HEADER::COMPANY));
|
||||
if (item->data(Qt::UserRole).toInt() == _id)
|
||||
{
|
||||
m_ptableWidget->removeRow(i);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void SRunningListWidget::delList(QVector<int> _ids)
|
||||
{
|
||||
foreach (auto& id, _ids)
|
||||
{
|
||||
delList(id);
|
||||
}
|
||||
}
|
||||
|
||||
void SRunningListWidget::resetTableHeader()
|
||||
{
|
||||
m_ptableWidget->clear();
|
||||
m_ptableWidget->setHorizontalHeaderLabels(*m_pslTableHeader);
|
||||
}
|
||||
|
||||
SRunningListWidget::~SRunningListWidget()
|
||||
{
|
||||
if (m_pwParent == nullptr)
|
||||
{
|
||||
disconnect(m_pbtnForceStart, &QPushButton::released,
|
||||
this, &SRunningListWidget::slotForceStart);
|
||||
disconnect(m_pbtnForceStop, &QPushButton::released,
|
||||
this, &SRunningListWidget::slotForceStop);
|
||||
disconnect(m_pbtnTimerStart, &QPushButton::released,
|
||||
this, &SRunningListWidget::slotTimerStart);
|
||||
disconnect(m_pbtnTimerStop, &QPushButton::released,
|
||||
this, &SRunningListWidget::slotTimerStop);
|
||||
disconnect(m_ptableWidget, &QTableWidget::itemSelectionChanged,
|
||||
this, &SRunningListWidget::slotClickedItem);
|
||||
|
||||
delete m_pbtnForceStart;
|
||||
delete m_pbtnForceStop;
|
||||
delete m_pbtnTimerStart;
|
||||
delete m_pbtnTimerStop;
|
||||
delete m_ptableWidget;
|
||||
delete m_playout;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void SRunningListWidget::addList(QVector<QVector<QTableWidgetItem>> items)
|
||||
{
|
||||
|
||||
foreach (auto& item, items)
|
||||
{
|
||||
int num = item[static_cast<int>(E_TABLE_HEADER::COMPANY)].data(Qt::UserRole).toInt();
|
||||
if (m_setNumber.contains(num))
|
||||
continue;
|
||||
m_setNumber.insert(num);
|
||||
m_ptableWidget->insertRow(m_ptableWidget->rowCount());
|
||||
m_ptableWidget->setItem(m_ptableWidget->rowCount() - 1,
|
||||
static_cast<int>(E_TABLE_HEADER::COMPANY),
|
||||
new QTableWidgetItem(item[static_cast<int>(E_TABLE_HEADER::COMPANY)]));
|
||||
m_ptableWidget->setItem(m_ptableWidget->rowCount() - 1,
|
||||
static_cast<int>(E_TABLE_HEADER::START_DATE),
|
||||
new QTableWidgetItem(item[static_cast<int>(E_TABLE_HEADER::START_DATE)]));
|
||||
m_ptableWidget->setItem(m_ptableWidget->rowCount() - 1,
|
||||
static_cast<int>(E_TABLE_HEADER::END_DATE),
|
||||
new QTableWidgetItem(item[static_cast<int>(E_TABLE_HEADER::END_DATE)]));
|
||||
m_ptableWidget->setItem(m_ptableWidget->rowCount() - 1,
|
||||
static_cast<int>(E_TABLE_HEADER::EVENT_NUM),
|
||||
new STableWidgetItem(item[static_cast<int>(E_TABLE_HEADER::EVENT_NUM)]));
|
||||
m_ptableWidget->setItem(m_ptableWidget->rowCount() - 1,
|
||||
static_cast<int>(E_TABLE_HEADER::STATUS),
|
||||
new QTableWidgetItem(""));
|
||||
m_ptableWidget->setItem(m_ptableWidget->rowCount() - 1,
|
||||
static_cast<int>(E_TABLE_HEADER::LAST_UPDATE_TIME),
|
||||
new QTableWidgetItem(""));
|
||||
}
|
||||
}
|
||||
|
||||
void SRunningListWidget::enableBtnTimerStart(bool enable)
|
||||
QTableWidgetItem* SRunningListWidget::findWidgetItembyID(int _id, E_TABLE_HEADER _header) const
|
||||
{
|
||||
QTableWidgetItem* item = nullptr;
|
||||
|
||||
for (int i = 0; i < m_ptableWidget->rowCount(); ++i)
|
||||
{
|
||||
QTableWidgetItem* temp = m_ptableWidget->item(i, static_cast<int>(E_TABLE_HEADER::COMPANY));
|
||||
if (temp->data(Qt::UserRole).toInt() == _id)
|
||||
{
|
||||
item = m_ptableWidget->item(i, static_cast<int>(_header));
|
||||
break;
|
||||
}
|
||||
}
|
||||
return item;
|
||||
}
|
||||
|
||||
void SRunningListWidget::enableBtnTimerStop(bool enable)
|
||||
void SRunningListWidget::enableBtnTimerStart(bool _enable)
|
||||
{
|
||||
|
||||
m_pbtnTimerStart->setEnabled(_enable);
|
||||
}
|
||||
|
||||
void SRunningListWidget::enableBtnForceStart(bool enable)
|
||||
void SRunningListWidget::enableBtnTimerStop(bool _enable)
|
||||
{
|
||||
|
||||
m_pbtnTimerStop->setEnabled(_enable);
|
||||
}
|
||||
|
||||
void SRunningListWidget::enableBtnForceStop(bool enable)
|
||||
void SRunningListWidget::enableBtnForceStart(bool _enable)
|
||||
{
|
||||
m_pbtnForceStart->setEnabled(_enable);
|
||||
}
|
||||
|
||||
void SRunningListWidget::enableBtnForceStop(bool _enable)
|
||||
{
|
||||
m_pbtnForceStop->setEnabled(_enable);
|
||||
}
|
||||
|
||||
void SRunningListWidget::setRunning(int _id)
|
||||
{
|
||||
|
||||
QTableWidgetItem* item = findWidgetItembyID(_id, E_TABLE_HEADER::STATUS);
|
||||
if (item)
|
||||
item->setText("Running");
|
||||
}
|
||||
|
||||
void SRunningListWidget::setWaiting(int _id)
|
||||
{
|
||||
|
||||
QTableWidgetItem* item = findWidgetItembyID(_id, E_TABLE_HEADER::STATUS);
|
||||
if (item)
|
||||
item->setText("Wating");
|
||||
}
|
||||
|
||||
void SRunningListWidget::setComplete(int _id)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
QVector<int> SRunningListWidget::getList()
|
||||
{
|
||||
|
||||
QTableWidgetItem* item = findWidgetItembyID(_id, E_TABLE_HEADER::LAST_UPDATE_TIME);
|
||||
if (item)
|
||||
item->setText(QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss"));
|
||||
}
|
||||
|
||||
void SRunningListWidget::slotTimerStart()
|
||||
{
|
||||
|
||||
qDebug() << "clicked TimerStart()";
|
||||
emit signalTimerStart();
|
||||
}
|
||||
|
||||
void SRunningListWidget::slotTimerStop()
|
||||
{
|
||||
|
||||
qDebug() << "clicked slotTimerStop()";
|
||||
emit signalTimerStop();
|
||||
}
|
||||
|
||||
void SRunningListWidget::slotForceStart()
|
||||
{
|
||||
|
||||
qDebug() << "clicked slotForceStart()";
|
||||
emit signalForceStart();
|
||||
}
|
||||
|
||||
void SRunningListWidget::slotForceStop()
|
||||
{
|
||||
|
||||
qDebug() << "clicked slotForceStop()";
|
||||
emit signalForceStop();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -4,13 +4,14 @@
|
||||
#include <QObject>
|
||||
#include <memory>
|
||||
#include <QVector>
|
||||
#include <QSet>
|
||||
#include <QTableWidgetItem>
|
||||
|
||||
class QPushButton;
|
||||
class QTableWidget;
|
||||
class QDateEdit;
|
||||
class QVBoxLayout;
|
||||
class QStringList;
|
||||
class QTableWidgetItem;
|
||||
|
||||
class SRunningListWidget:public QObject
|
||||
{
|
||||
@@ -32,28 +33,37 @@ private:
|
||||
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> getList();
|
||||
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();
|
||||
void setRunning(int _id);
|
||||
void setWaiting(int _id);
|
||||
void setComplete(int _id);
|
||||
|
||||
|
||||
private slots:
|
||||
void slotClickedItem();
|
||||
|
||||
signals:
|
||||
void signalTimerStart();
|
||||
void signalTimerStop();
|
||||
void signalForceStart();
|
||||
void signalForceStop();
|
||||
void signalClickItem();
|
||||
|
||||
private:
|
||||
QPushButton* m_pbtnTimerStart;
|
||||
@@ -64,6 +74,7 @@ private:
|
||||
QWidget* m_pwParent;
|
||||
QVBoxLayout *m_playout;
|
||||
std::unique_ptr<QStringList> m_pslTableHeader;
|
||||
QSet<int> m_setNumber;
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -9,12 +9,12 @@ const int TIME = 300000; // 5 minute
|
||||
STimer::STimer(): m_pTimer(new QTimer), m_nPreviousHour(-1)
|
||||
{
|
||||
m_pTimer->setInterval(TIME);
|
||||
connect(&(*m_pTimer), &QTimer::timeout, this, &checkTimeout);
|
||||
connect(&(*m_pTimer), &QTimer::timeout, this, &STimer::checkTimeout);
|
||||
}
|
||||
|
||||
STimer::~STimer()
|
||||
{
|
||||
disconnect(&(*m_pTimer), &QTimer::timeout, this, &checkTimeout);
|
||||
disconnect(&(*m_pTimer), &QTimer::timeout, this, &STimer::checkTimeout);
|
||||
}
|
||||
|
||||
STimer::STimer(int time): STimer()
|
||||
@@ -44,7 +44,7 @@ void STimer::stop()
|
||||
m_pTimer->stop();
|
||||
}
|
||||
|
||||
bool STimer::isActive() const noexcept
|
||||
bool STimer::isActive() const
|
||||
{
|
||||
return m_pTimer->isActive();
|
||||
}
|
||||
|
||||
@@ -25,7 +25,7 @@ public:
|
||||
STimer& operator=(const STimer& other) = delete;
|
||||
void start();
|
||||
void stop();
|
||||
bool isActive() const noexcept;
|
||||
bool isActive() const;
|
||||
void set(int time);
|
||||
void set(QVector<int> times);
|
||||
void unset(int time);
|
||||
|
||||
@@ -16,7 +16,7 @@ STableWidgetItem::STableWidgetItem(const QString &text, int type):
|
||||
|
||||
}
|
||||
|
||||
STableWidgetItem::STableWidgetItem(const STableWidgetItem &other):
|
||||
STableWidgetItem::STableWidgetItem(const QTableWidgetItem &other):
|
||||
QTableWidgetItem(other)
|
||||
{
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ public:
|
||||
STableWidgetItem(int type = Type);
|
||||
STableWidgetItem(const QString & text, int type = Type);
|
||||
STableWidgetItem(const QIcon & icon, const QString & text, int type = Type);
|
||||
STableWidgetItem(const STableWidgetItem & other);
|
||||
STableWidgetItem(const QTableWidgetItem & other);
|
||||
virtual bool operator<(const QTableWidgetItem & other) const override;
|
||||
};
|
||||
|
||||
|
||||
@@ -1,15 +1,28 @@
|
||||
#include "widget.h"
|
||||
#include "ui_widget.h"
|
||||
#include "scompanylistwidget.h"
|
||||
#include <QBoxLayout>
|
||||
#include "srunninglistwidget.h"
|
||||
#include "sadddelwidget.h"
|
||||
#include <QHBoxLayout>
|
||||
|
||||
Widget::Widget(QWidget *parent) :
|
||||
QWidget(parent),
|
||||
ui(new Ui::Widget)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
SCompanyListWidget *c = new SCompanyListWidget(this);
|
||||
setLayout(c->getLayout());
|
||||
QWidget *w1 = new QWidget;
|
||||
QWidget *w2 = new QWidget;
|
||||
QWidget *w3 = new QWidget;
|
||||
SCompanyListWidget *c = new SCompanyListWidget(w1);
|
||||
SRunningListWidget *d = new SRunningListWidget(w2);
|
||||
SAddDelWidget *e = new SAddDelWidget(w3);
|
||||
QHBoxLayout* mainLayout = new QHBoxLayout(this);
|
||||
|
||||
mainLayout->addWidget(w1);
|
||||
mainLayout->addWidget(w3);
|
||||
mainLayout->addWidget(w2);
|
||||
setLayout(mainLayout);
|
||||
|
||||
show();
|
||||
|
||||
c->refresh();
|
||||
|
||||
Reference in New Issue
Block a user