3500/AddChannel.cpp

115 lines
3.9 KiB
C++

#include "AddChannel.h"
#include "ui_AddChannel.h"
#include <QListView>
CAddChannel::CAddChannel(QWidget *parent) :
QWidget(parent),
ui(new Ui::CAddChannel)
{
ui->setupUi(this);
InitChannelInfo();
}
CAddChannel::~CAddChannel()
{
delete ui;
}
void CAddChannel::InitChannelInfo()
{
ui->comboBox_channel->setView(new QListView());
qDebug() <<"InitChannelInfo"<< g_ChannelBaseInfo.size()<< endl;
for (int i = 0; i < g_ChannelBaseInfo.size(); i++) {
if(g_ChannelBaseInfo[i].channelType != "DI" && g_ChannelBaseInfo[i].channelType != "DO"
&& g_ChannelBaseInfo[i].channelType != "AIRGAP")
ui->comboBox_channel->addItem(g_ChannelBaseInfo[i].channelName);
}
}
void CAddChannel::on_pushButton_confirm_clicked()
{
QString strChannelName = ui->comboBox_channel->currentText();
int i = 0;
for (i = 0; i < g_ChannelBaseInfo.size(); i++) {
if(strChannelName == g_ChannelBaseInfo[i].channelName){
break;
}
}
QString strCharac = ui->comboBox_charac->currentText();
QString str = strChannelName + "," + strCharac;
emit addChannel_sg(g_ChannelBaseInfo[i],strCharac);
this->close();
}
void CAddChannel::on_pushButton_cancel_clicked()
{
this->close();
}
void CAddChannel::on_comboBox_channel_currentTextChanged(const QString &arg1)
{
qDebug() << arg1 << endl;
int i = -1;
for (i = 0; i < g_ChannelBaseInfo.size(); i++) {
if(arg1 == g_ChannelBaseInfo[i].channelName){
break;
}
}
qDebug() << g_ChannelBaseInfo[i].channelType << endl;
ui->comboBox_charac->clear();
//ui->comboBox_charac->addItem("偏置电压");
ui->comboBox_charac->addItem("最大正向峰值");//m/s^2
ui->comboBox_charac->addItem("最大负向峰值");//m/s^2
if(g_ChannelBaseInfo[i].channelType == "ACCELEROMETER")
{
ui->comboBox_charac->addItem("诊断峰峰值");
ui->comboBox_charac->addItem("监测保护峰峰值");
ui->comboBox_charac->addItem("有效值");
ui->comboBox_charac->addItem("推导峰值");
ui->comboBox_charac->addItem("峰值");
ui->comboBox_charac->addItem("速度峰值");
ui->comboBox_charac->addItem("速度有效值");
ui->comboBox_charac->addItem("峰值因子");
}else if(g_ChannelBaseInfo[i].channelType == "VELOCITY"){
ui->comboBox_charac->addItem("诊断峰峰值");
ui->comboBox_charac->addItem("监测保护峰峰值");
ui->comboBox_charac->addItem("峰值");
ui->comboBox_charac->addItem("有效值");
ui->comboBox_charac->addItem("推导峰值");
ui->comboBox_charac->addItem("位移峰值");
ui->comboBox_charac->addItem("位移有效值");
ui->comboBox_charac->addItem("峰值因子");
}else if(g_ChannelBaseInfo[i].channelType == "PROXIMETER"){
ui->comboBox_charac->addItem("诊断峰峰值");
ui->comboBox_charac->addItem("监测保护峰峰值");
ui->comboBox_charac->addItem("峰值");
ui->comboBox_charac->addItem("有效值");
ui->comboBox_charac->addItem("推导峰值");
ui->comboBox_charac->addItem("峰值因子");
ui->comboBox_charac->addItem("平均值");
}else if(g_ChannelBaseInfo[i].channelType == "TACHOMETER"){
ui->comboBox_charac->addItem("转速");
ui->comboBox_charac->addItem("平均值");
}else if(g_ChannelBaseInfo[i].channelType == "THRUST"){
ui->comboBox_charac->addItem("平均值");
ui->comboBox_charac->addItem("有效值");
}else if(g_ChannelBaseInfo[i].channelType == "FAST_VOLTAGE"){
ui->comboBox_charac->addItem("平均值");
ui->comboBox_charac->addItem("有效值");
}else if(g_ChannelBaseInfo[i].channelType == "SLOW_CURRENT" ||
g_ChannelBaseInfo[i].channelType == "PULSE_CURRENT"){
ui->comboBox_charac->addItem("平均值");
}
}