git-svn-id: svn://db.shs.com.ru/libs@95 a8b55f48-bf90-11e4-a774-851b48703e85
This commit is contained in:
@@ -23,11 +23,13 @@ ConnectionEdit::ConnectionEdit(QWidget * parent): QDialog(parent) {
|
||||
piForeachC (PICodeInfo::EnumeratorInfo & e, ei->members)
|
||||
ui->comboMode->addItem(PI2QString(e.name + " (" + PIString::fromNumber(e.value) + ")"), QVariant::fromValue<int>(e.value));
|
||||
}
|
||||
ui->comboMode->setCurrentIndex(ui->comboMode->count() - 1);
|
||||
ei = PICodeInfo::enumsInfo->value("PIPacketExtractor::SplitMode");
|
||||
if (ei) {
|
||||
piForeachC (PICodeInfo::EnumeratorInfo & e, ei->members)
|
||||
ui->comboSplit->addItem(PI2QString(e.name + " (" + PIString::fromNumber(e.value) + ")"), QVariant::fromValue<int>(e.value));
|
||||
}
|
||||
udevicenum = 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -167,7 +169,7 @@ void ConnectionEdit::selectionChanged() {
|
||||
break;
|
||||
}
|
||||
ui->lineDevice->setText(di->name());
|
||||
ui->linePath->setText(di->path());
|
||||
ui->linePath->setEditText(di->path());
|
||||
ui->spinDeviceDT->setValue(di->disconnectTimeout());
|
||||
}
|
||||
if (type == __CV_Filter) {
|
||||
@@ -211,9 +213,13 @@ void ConnectionEdit::applyFilter(FilterItem * b) {
|
||||
|
||||
|
||||
void ConnectionEdit::applyDevice(DeviceItem * b) {
|
||||
b->setName(ui->lineDevice->text());
|
||||
QString n = ui->lineDevice->text();
|
||||
if (n.isEmpty()) {
|
||||
n = "device" + QString::number(udevicenum);
|
||||
}
|
||||
b->setName(n);
|
||||
b->setMode(PIIODevice::DeviceMode(ui->comboMode->itemData(ui->comboMode->currentIndex()).toInt()));
|
||||
b->setPath(ui->linePath->text());
|
||||
b->setPath(ui->linePath->currentText());
|
||||
b->setDisconnectTimeout(ui->spinDeviceDT->value());
|
||||
recreateConnection();
|
||||
}
|
||||
@@ -232,7 +238,9 @@ void ConnectionEdit::recreateConnection() {
|
||||
if (loading) return;
|
||||
ui->blockView->reconnectAll();
|
||||
if (conn) delete conn;
|
||||
conn = new PIConnection(Q2PIString(ui->lineName->text()));
|
||||
PIString cn = Q2PIString(ui->lineName->text());
|
||||
if (cn.isEmpty()) conn = new PIConnection();
|
||||
else conn = new PIConnection(cn);
|
||||
QList<BlockItem*> devs = ui->blockView->allDevices();
|
||||
foreach (BlockItem * b, devs) {
|
||||
DeviceItem * di = (DeviceItem*)b;
|
||||
@@ -352,7 +360,15 @@ void ConnectionEdit::on_buttonFilterModify_clicked() {
|
||||
|
||||
void ConnectionEdit::on_buttonDeviceAdd_clicked() {
|
||||
if (!conn) return;
|
||||
applyDevice(ui->blockView->addDevice(ui->lineDevice->text(), ui->linePath->text()));
|
||||
QString n = ui->lineDevice->text();
|
||||
if (n.isEmpty()) {
|
||||
udevicenum++;
|
||||
n = "device" + QString::number(udevicenum);
|
||||
}
|
||||
QString p = ui->linePath->currentText();
|
||||
if (ui->linePath->findText(p) < 0) ui->linePath->addItem(p);
|
||||
qDebug() << "add:" << n;
|
||||
applyDevice(ui->blockView->addDevice(n, ui->linePath->currentText()));
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user