171 lines
4.6 KiB
C++
171 lines
4.6 KiB
C++
#include "CFesCtrlSim.h"
|
|
#include "ui_CFesCtrlSim.h"
|
|
#include "CActiveWindow.h"
|
|
|
|
CFesCtrlSim::CFesCtrlSim(QWidget *parent) :
|
|
QWidget(parent),
|
|
ui(new Ui::CFesCtrlSim),
|
|
ptrSimAoDlg(Q_NULLPTR),
|
|
ptrSimDoDlg(Q_NULLPTR),
|
|
ptrSimMoDlg(Q_NULLPTR),
|
|
ptrDefCmdDlg(Q_NULLPTR)
|
|
{
|
|
ui->setupUi(this);
|
|
}
|
|
|
|
CFesCtrlSim::~CFesCtrlSim()
|
|
{
|
|
if(ptrSimAoDlg != NULL)
|
|
{
|
|
delete ptrSimAoDlg;
|
|
}
|
|
if(ptrSimDoDlg != NULL)
|
|
{
|
|
delete ptrSimDoDlg;
|
|
}
|
|
if(ptrSimMoDlg != NULL)
|
|
{
|
|
delete ptrSimMoDlg;
|
|
}
|
|
if(ptrDefCmdDlg != NULL)
|
|
{
|
|
delete ptrDefCmdDlg;
|
|
}
|
|
delete ui;
|
|
}
|
|
|
|
void CFesCtrlSim::Init(bool isConnected)
|
|
{
|
|
if(isConnected)
|
|
{
|
|
m_ConnectFlag = CN_CommConnect;
|
|
}else
|
|
{
|
|
m_ConnectFlag = CN_CommDisconnect;
|
|
}
|
|
initVariable();
|
|
initSignalAndSlot();
|
|
initView();
|
|
}
|
|
|
|
void CFesCtrlSim::slotActiveWindow()
|
|
{
|
|
setActiveWindow(ui->tabWidget->currentIndex());
|
|
}
|
|
|
|
void CFesCtrlSim::initVariable()
|
|
{
|
|
ptrSimAoDlg = new SimAoDlg((int)E_ACTIVE_WINDOW_FES_AO_CTRL,this);
|
|
ptrSimAoDlg->SetConnectFlags(m_ConnectFlag);
|
|
}
|
|
|
|
void CFesCtrlSim::initSignalAndSlot()
|
|
{
|
|
connect(ui->tabWidget,&QTabWidget::currentChanged,this,&CFesCtrlSim::setActiveWindow);
|
|
}
|
|
|
|
void CFesCtrlSim::initView()
|
|
{
|
|
QGridLayout *gridLayout = new QGridLayout(ui->tab);
|
|
gridLayout->setSpacing(6);
|
|
gridLayout->setContentsMargins(0, 0, 0, 0);
|
|
gridLayout->addWidget(ptrSimAoDlg, 0, 0, 1, 1);
|
|
|
|
ui->tabWidget->removeTab(3);
|
|
}
|
|
|
|
void CFesCtrlSim::setActiveWindow(int current)
|
|
{
|
|
switch (current) {
|
|
case 0:
|
|
if(ptrSimAoDlg == NULL)
|
|
{
|
|
ptrSimAoDlg = new SimAoDlg((int)E_ACTIVE_WINDOW_FES_AO_CTRL,this);
|
|
ptrSimAoDlg->SetConnectFlags(m_ConnectFlag);
|
|
QGridLayout *gridLayout = new QGridLayout(ui->tab);
|
|
gridLayout->setSpacing(6);
|
|
gridLayout->setContentsMargins(0, 0, 0, 0);
|
|
gridLayout->addWidget(ptrSimAoDlg, 0, 0, 1, 1);
|
|
}
|
|
CActiveWindow::instance()->setActiveWindow((int)E_ACTIVE_WINDOW_FES_AO_CTRL);
|
|
ptrSimAoDlg->OnRTURefresh();
|
|
break;
|
|
case 1:
|
|
if(ptrSimDoDlg == NULL)
|
|
{
|
|
ptrSimDoDlg = new SimDoDlg((int)E_ACTIVE_WINDOW_FES_DO_CTRL,this);
|
|
ptrSimDoDlg->SetConnectFlags(m_ConnectFlag);
|
|
QGridLayout *gridLayout = new QGridLayout(ui->tab_2);
|
|
gridLayout->setSpacing(6);
|
|
gridLayout->setContentsMargins(0, 0, 0, 0);
|
|
gridLayout->addWidget(ptrSimDoDlg, 0, 0, 1, 1);
|
|
}
|
|
CActiveWindow::instance()->setActiveWindow((int)E_ACTIVE_WINDOW_FES_DO_CTRL);
|
|
ptrSimDoDlg->OnRTURefresh();
|
|
break;
|
|
case 2:
|
|
if(ptrSimMoDlg == NULL)
|
|
{
|
|
ptrSimMoDlg = new SimMoDlg((int)E_ACTIVE_WINDOW_FES_MO_CTRL,this);
|
|
ptrSimMoDlg->SetConnectFlags(m_ConnectFlag);
|
|
QGridLayout *gridLayout = new QGridLayout(ui->tab_3);
|
|
gridLayout->setSpacing(6);
|
|
gridLayout->setContentsMargins(0, 0, 0, 0);
|
|
gridLayout->addWidget(ptrSimMoDlg, 0, 0, 1, 1);
|
|
}
|
|
CActiveWindow::instance()->setActiveWindow((int)E_ACTIVE_WINDOW_FES_MO_CTRL);
|
|
ptrSimMoDlg->OnRTURefresh();
|
|
break;
|
|
case 3:
|
|
if(ptrDefCmdDlg == NULL)
|
|
{
|
|
ptrDefCmdDlg = new DefCmdDlg((int)E_ACTIVE_WINDOW_FES_CUSTOM_CTRL,this);
|
|
ptrDefCmdDlg->SetConnectFlags(m_ConnectFlag);
|
|
QGridLayout *gridLayout = new QGridLayout(ui->tab_4);
|
|
gridLayout->setSpacing(6);
|
|
gridLayout->setContentsMargins(0, 0, 0, 0);
|
|
gridLayout->addWidget(ptrDefCmdDlg, 0, 0, 1, 1);
|
|
}
|
|
CActiveWindow::instance()->setActiveWindow((int)E_ACTIVE_WINDOW_FES_CUSTOM_CTRL);
|
|
ptrDefCmdDlg->OnRTURefresh();
|
|
break;
|
|
default:
|
|
CActiveWindow::instance()->setActiveWindow((int)E_ACTIVE_WINDOW_FES);
|
|
break;
|
|
}
|
|
}
|
|
|
|
void CFesCtrlSim::OnNetConnect()
|
|
{
|
|
m_ConnectFlag =CN_CommConnect;
|
|
|
|
if(ptrSimAoDlg!=NULL)
|
|
ptrSimAoDlg->SetConnectFlags(m_ConnectFlag);
|
|
|
|
if(ptrSimDoDlg!=NULL)
|
|
ptrSimDoDlg->SetConnectFlags(m_ConnectFlag);
|
|
|
|
if(ptrSimMoDlg!=NULL)
|
|
ptrSimMoDlg->SetConnectFlags(m_ConnectFlag);
|
|
|
|
if(ptrDefCmdDlg!=NULL)
|
|
ptrDefCmdDlg->SetConnectFlags(m_ConnectFlag);
|
|
}
|
|
|
|
void CFesCtrlSim::OnNetDisConnect()
|
|
{
|
|
m_ConnectFlag =CN_CommDisconnect;
|
|
|
|
if(ptrSimAoDlg!=NULL)
|
|
ptrSimAoDlg->SetConnectFlags(m_ConnectFlag);
|
|
|
|
if(ptrSimDoDlg!=NULL)
|
|
ptrSimDoDlg->SetConnectFlags(m_ConnectFlag);
|
|
|
|
if(ptrSimMoDlg!=NULL)
|
|
ptrSimMoDlg->SetConnectFlags(m_ConnectFlag);
|
|
|
|
if(ptrDefCmdDlg!=NULL)
|
|
ptrDefCmdDlg->SetConnectFlags(m_ConnectFlag);
|
|
}
|