|
|
@ -8,7 +8,8 @@
|
|
|
|
#include <QDir>
|
|
|
|
#include <QDir>
|
|
|
|
|
|
|
|
|
|
|
|
#define CONFIG_PATH "config.ini"
|
|
|
|
#define CONFIG_PATH "config.ini"
|
|
|
|
|
|
|
|
#define CMDPAGEHIGHT 250
|
|
|
|
|
|
|
|
#define STATEPAGEWIDTH 250
|
|
|
|
|
|
|
|
|
|
|
|
GDDCdlg::GDDCdlg(QWidget *parent)
|
|
|
|
GDDCdlg::GDDCdlg(QWidget *parent)
|
|
|
|
: QWidget(parent)
|
|
|
|
: QWidget(parent)
|
|
|
@ -35,7 +36,7 @@ GDDCdlg::~GDDCdlg()
|
|
|
|
|
|
|
|
|
|
|
|
delete m_DlgGDDCSet;
|
|
|
|
delete m_DlgGDDCSet;
|
|
|
|
delete m_GDDCCmdDlg;
|
|
|
|
delete m_GDDCCmdDlg;
|
|
|
|
delete m_GDDCStateInfo;
|
|
|
|
delete m_GDDCStateDlg;
|
|
|
|
delete ui;
|
|
|
|
delete ui;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -52,16 +53,21 @@ void GDDCdlg::initWindow()
|
|
|
|
|
|
|
|
|
|
|
|
m_DlgGDDCSet = new GDDCSet();
|
|
|
|
m_DlgGDDCSet = new GDDCSet();
|
|
|
|
m_GDDCCmdDlg = new GDDCCmdDlg(this);
|
|
|
|
m_GDDCCmdDlg = new GDDCCmdDlg(this);
|
|
|
|
m_GDDCStateInfo = new GDDCStateInfo(this);
|
|
|
|
m_GDDCStateDlg = new GDDCStateInfo(this);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
//初始化参数
|
|
|
|
//初始化参数
|
|
|
|
void GDDCdlg::initParam()
|
|
|
|
void GDDCdlg::initParam()
|
|
|
|
{
|
|
|
|
{
|
|
|
|
|
|
|
|
pointSelectionTracking = false;
|
|
|
|
|
|
|
|
Is_openVideo = false;
|
|
|
|
|
|
|
|
isCmdPageShow = true;
|
|
|
|
|
|
|
|
isStatePageShow = true;
|
|
|
|
m_DCcmdBuffer.resize(cmdLength);
|
|
|
|
m_DCcmdBuffer.resize(cmdLength);
|
|
|
|
detectionAreaSetting = false;
|
|
|
|
detectionAreaSetting = false;
|
|
|
|
connectFlag.resize(10,false);
|
|
|
|
connectFlag.resize(10,false);
|
|
|
|
ui->pushButShowCmdArea->setIcon(QIcon(":/res/down.png"));
|
|
|
|
ui->pushButShowCmdPage->setIcon(QIcon(":/res/down.png"));
|
|
|
|
|
|
|
|
ui->pushButShowStatePage->setIcon(QIcon(":/res/right.png"));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -77,7 +83,8 @@ void GDDCdlg::initSignalSlot()
|
|
|
|
//connect(ui->pushButtonSet, QOverload<bool>::of(&QPushButton::clicked),this,&::GDDCdlg::pushButtonSet_clicked);
|
|
|
|
//connect(ui->pushButtonSet, QOverload<bool>::of(&QPushButton::clicked),this,&::GDDCdlg::pushButtonSet_clicked);
|
|
|
|
//方式四
|
|
|
|
//方式四
|
|
|
|
//connect(ui->pushButtonSet,&QPushButton::clicked,[=](bool check){pushButtonSet_clicked();});
|
|
|
|
//connect(ui->pushButtonSet,&QPushButton::clicked,[=](bool check){pushButtonSet_clicked();});
|
|
|
|
connect(ui->pushButShowCmdArea,SIGNAL(clicked()),this,SLOT(pushButShowCmdArea_clicked())); //隐藏显示按钮
|
|
|
|
connect(ui->pushButShowCmdPage,SIGNAL(clicked()),this,SLOT(pushButShowCmdPage_clicked())); //控制页面隐藏显示按钮
|
|
|
|
|
|
|
|
connect(ui->pushButShowStatePage,SIGNAL(clicked()),this,SLOT(pushButShowStatePage_clicked())); //状态页面隐藏显示按钮
|
|
|
|
connect(m_DlgGDDCSet,SIGNAL(SignalStartConnect(int)),this,SLOT(startConnect(int))); //开始连接
|
|
|
|
connect(m_DlgGDDCSet,SIGNAL(SignalStartConnect(int)),this,SLOT(startConnect(int))); //开始连接
|
|
|
|
connect(m_DlgGDDCSet,SIGNAL(SignalStopConnect(int)),this,SLOT(stopConnect(int))); //停止连接
|
|
|
|
connect(m_DlgGDDCSet,SIGNAL(SignalStopConnect(int)),this,SLOT(stopConnect(int))); //停止连接
|
|
|
|
|
|
|
|
|
|
|
@ -245,19 +252,23 @@ void GDDCdlg::resizeUI()
|
|
|
|
|
|
|
|
|
|
|
|
/******控制区位置和大小设置*****/
|
|
|
|
/******控制区位置和大小设置*****/
|
|
|
|
double cmdAreaHeight;
|
|
|
|
double cmdAreaHeight;
|
|
|
|
double cmdAreaWidth = GDDCPageWidth-250;
|
|
|
|
double cmdAreaWidth;
|
|
|
|
|
|
|
|
if(m_GDDCStateDlg->isVisible()){cmdAreaWidth = GDDCPageWidth-STATEPAGEWIDTH;}
|
|
|
|
if(m_GDDCCmdDlg->isVisible()){cmdAreaHeight = 250;}
|
|
|
|
else{cmdAreaWidth = GDDCPageWidth;}
|
|
|
|
|
|
|
|
if(m_GDDCCmdDlg->isVisible()){cmdAreaHeight = CMDPAGEHIGHT;}
|
|
|
|
else{cmdAreaHeight = 0;}
|
|
|
|
else{cmdAreaHeight = 0;}
|
|
|
|
m_GDDCCmdDlg->setGeometry(0,GDDCPageHeight-cmdAreaHeight,(int)cmdAreaWidth,(int)cmdAreaHeight);
|
|
|
|
m_GDDCCmdDlg->setGeometry(0,GDDCPageHeight-cmdAreaHeight,(int)cmdAreaWidth,(int)cmdAreaHeight);
|
|
|
|
m_GDDCCmdDlg->ui->tabWidget->setGeometry(0,0,(int)cmdAreaWidth,(int)cmdAreaHeight);
|
|
|
|
m_GDDCCmdDlg->ui->tabWidget->setGeometry(0,0,(int)cmdAreaWidth,(int)cmdAreaHeight);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*********状态区位置和大小设置***********/
|
|
|
|
/*********状态区位置和大小设置***********/
|
|
|
|
double stateAreaHeight = GDDCPageHeight;
|
|
|
|
double stateAreaHeight = GDDCPageHeight;
|
|
|
|
double stateAreaWidth;
|
|
|
|
double stateAreaWidth;
|
|
|
|
if(m_GDDCStateInfo->isVisible()){stateAreaWidth = 250;}
|
|
|
|
if(m_GDDCStateDlg->isVisible()){stateAreaWidth = STATEPAGEWIDTH;}
|
|
|
|
else{stateAreaWidth = 0;}
|
|
|
|
else{stateAreaWidth = 0;}
|
|
|
|
m_GDDCStateInfo->setGeometry(GDDCPageWidth-stateAreaWidth,0,stateAreaWidth,stateAreaHeight);
|
|
|
|
m_GDDCStateDlg->setGeometry(GDDCPageWidth-stateAreaWidth,0,stateAreaWidth,stateAreaHeight);
|
|
|
|
m_GDDCStateInfo->ui->tableViewShowIState->setGeometry(0,0,stateAreaWidth,stateAreaHeight);
|
|
|
|
m_GDDCStateDlg->ui->tableViewShowIState->setGeometry(0,0,stateAreaWidth,stateAreaHeight);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*******视频区位置和大小设置********/
|
|
|
|
/*******视频区位置和大小设置********/
|
|
|
|
double VideoAreaHeight = GDDCPageHeight-cmdAreaHeight; //视频区高度
|
|
|
|
double VideoAreaHeight = GDDCPageHeight-cmdAreaHeight; //视频区高度
|
|
|
@ -280,9 +291,13 @@ void GDDCdlg::resizeUI()
|
|
|
|
/**************设置按钮****************/
|
|
|
|
/**************设置按钮****************/
|
|
|
|
ui->pushButtonSet->setGeometry(GDDCPageWidth-stateAreaWidth-45,0,40,40);
|
|
|
|
ui->pushButtonSet->setGeometry(GDDCPageWidth-stateAreaWidth-45,0,40,40);
|
|
|
|
|
|
|
|
|
|
|
|
/**********控制指令区显示隐藏按钮********/
|
|
|
|
/**********控制页显示隐藏按钮********/
|
|
|
|
ui->pushButShowCmdArea->setGeometry((GDDCPageWidth-200)*0.5,GDDCPageHeight-cmdAreaHeight-20,40,20);
|
|
|
|
ui->pushButShowCmdPage->setGeometry(cmdAreaWidth*0.5,GDDCPageHeight-cmdAreaHeight-20,50,20);
|
|
|
|
ui->pushButShowCmdArea->raise();
|
|
|
|
ui->pushButShowCmdPage->raise();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**********状态页显示隐藏按钮********/
|
|
|
|
|
|
|
|
ui->pushButShowStatePage->setGeometry(GDDCPageWidth-stateAreaWidth-20,(stateAreaHeight-cmdAreaHeight)*0.5,20,50);
|
|
|
|
|
|
|
|
ui->pushButShowStatePage->raise();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -477,29 +492,44 @@ void GDDCdlg::UDPMessageReceive()
|
|
|
|
udpSocket->readDatagram(data.data(),data.size(),&addr,&port);
|
|
|
|
udpSocket->readDatagram(data.data(),data.size(),&addr,&port);
|
|
|
|
|
|
|
|
|
|
|
|
//吊舱状态数据更新
|
|
|
|
//吊舱状态数据更新
|
|
|
|
m_GDDCStateInfo->UDPMessageReceive(data,data.size());
|
|
|
|
m_GDDCStateDlg->UDPMessageReceive(data,data.size());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
//控制页面隐藏与显示
|
|
|
|
//控制页面隐藏与显示
|
|
|
|
void GDDCdlg::pushButShowCmdArea_clicked()
|
|
|
|
void GDDCdlg::pushButShowCmdPage_clicked()
|
|
|
|
{
|
|
|
|
{
|
|
|
|
if(isCmdAreaShow)
|
|
|
|
if(isCmdPageShow)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
m_GDDCCmdDlg->setVisible(false);
|
|
|
|
m_GDDCCmdDlg->setVisible(false);
|
|
|
|
m_GDDCStateInfo->setVisible(false);
|
|
|
|
isCmdPageShow = false;
|
|
|
|
isCmdAreaShow = false;
|
|
|
|
|
|
|
|
resizeUI();
|
|
|
|
resizeUI();
|
|
|
|
ui->pushButShowCmdArea->setIcon(QIcon(":/res/up.png"));
|
|
|
|
ui->pushButShowCmdPage->setIcon(QIcon(":/res/up.png"));
|
|
|
|
//ui->pushButton->setGeometry(this->width()/2,this->height()-50,50,50);
|
|
|
|
//ui->pushButton->setGeometry(this->width()/2,this->height()-50,50,50);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
else
|
|
|
|
{
|
|
|
|
{
|
|
|
|
m_GDDCCmdDlg->setVisible(true);
|
|
|
|
m_GDDCCmdDlg->setVisible(true);
|
|
|
|
m_GDDCStateInfo->setVisible(true);
|
|
|
|
isCmdPageShow = true;
|
|
|
|
isCmdAreaShow = true;
|
|
|
|
|
|
|
|
resizeUI();
|
|
|
|
resizeUI();
|
|
|
|
ui->pushButShowCmdArea->setIcon(QIcon(":/res/down.png"));
|
|
|
|
ui->pushButShowCmdPage->setIcon(QIcon(":/res/down.png"));
|
|
|
|
|
|
|
|
//ui->pushButton->setGeometry(this->width()/2,ui->tabWidget->height(),50,50);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
//状态页面隐藏与显示
|
|
|
|
|
|
|
|
void GDDCdlg::pushButShowStatePage_clicked()
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
if(isStatePageShow)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
m_GDDCStateDlg->setVisible(false);
|
|
|
|
|
|
|
|
isStatePageShow = false;
|
|
|
|
|
|
|
|
resizeUI();
|
|
|
|
|
|
|
|
ui->pushButShowStatePage->setIcon(QIcon(":/res/left.png"));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
m_GDDCStateDlg->setVisible(true);
|
|
|
|
|
|
|
|
isStatePageShow = true;
|
|
|
|
|
|
|
|
resizeUI();
|
|
|
|
|
|
|
|
ui->pushButShowStatePage->setIcon(QIcon(":/res/right.png"));
|
|
|
|
//ui->pushButton->setGeometry(this->width()/2,ui->tabWidget->height(),50,50);
|
|
|
|
//ui->pushButton->setGeometry(this->width()/2,ui->tabWidget->height(),50,50);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|