Cleaned up all the UI elements and error checking for rebase and duplicate
This commit is contained in:
@@ -291,6 +291,10 @@ QString SocketCANd::decodeFrames(QString data, int busNum)
|
|||||||
if(frameParsed.length() < 4)
|
if(frameParsed.length() < 4)
|
||||||
{
|
{
|
||||||
qDebug() << "Received frame doesn't contain any data: " << data;
|
qDebug() << "Received frame doesn't contain any data: " << data;
|
||||||
|
|
||||||
|
//todo
|
||||||
|
//this is not totally true, ive seen frames come through that look like < frame 1F020240 1664924225.371291 >
|
||||||
|
//if we found the closing token but theres no data then remove the message from the buffer
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+11
-7
@@ -358,9 +358,11 @@ void DBCMainEditor::onRebaseMessages()
|
|||||||
node = dbcFile->findNodeByName(idString);
|
node = dbcFile->findNodeByName(idString);
|
||||||
nodeRebaseEditor->setFileIdx(fileIdx);
|
nodeRebaseEditor->setFileIdx(fileIdx);
|
||||||
nodeRebaseEditor->setNodeRef(node);
|
nodeRebaseEditor->setNodeRef(node);
|
||||||
nodeRebaseEditor->refreshView();
|
if(nodeRebaseEditor->refreshView())
|
||||||
nodeRebaseEditor->setModal(true);
|
{
|
||||||
nodeRebaseEditor->show();
|
nodeRebaseEditor->setModal(true);
|
||||||
|
nodeRebaseEditor->show();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void DBCMainEditor::onDuplicateNode()
|
void DBCMainEditor::onDuplicateNode()
|
||||||
@@ -376,10 +378,12 @@ void DBCMainEditor::onDuplicateNode()
|
|||||||
idString = firstCol->text(0).split(" ")[0];
|
idString = firstCol->text(0).split(" ")[0];
|
||||||
node = dbcFile->findNodeByName(idString);
|
node = dbcFile->findNodeByName(idString);
|
||||||
nodeDuplicateEditor->setFileIdx(fileIdx);
|
nodeDuplicateEditor->setFileIdx(fileIdx);
|
||||||
nodeDuplicateEditor->setNodeRef(node);
|
nodeDuplicateEditor->setNodeRef(node);
|
||||||
nodeDuplicateEditor->refreshView();
|
if(nodeDuplicateEditor->refreshView())
|
||||||
nodeDuplicateEditor->setModal(true);
|
{
|
||||||
nodeDuplicateEditor->show();
|
nodeDuplicateEditor->setModal(true);
|
||||||
|
nodeDuplicateEditor->show();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
@@ -4,6 +4,7 @@
|
|||||||
#include <QSettings>
|
#include <QSettings>
|
||||||
#include <QKeyEvent>
|
#include <QKeyEvent>
|
||||||
#include <QColorDialog>
|
#include <QColorDialog>
|
||||||
|
#include <QMessageBox>
|
||||||
#include "helpwindow.h"
|
#include "helpwindow.h"
|
||||||
#include "utility.h"
|
#include "utility.h"
|
||||||
|
|
||||||
@@ -18,58 +19,87 @@ DBCNodeDuplicateEditor::DBCNodeDuplicateEditor(QWidget *parent) :
|
|||||||
dbcHandler = DBCHandler::getReference();
|
dbcHandler = DBCHandler::getReference();
|
||||||
dbcNode = nullptr;
|
dbcNode = nullptr;
|
||||||
|
|
||||||
connect(ui->btnDuplicate, &QPushButton::pressed,
|
connect(ui->btnDuplicate, &QPushButton::pressed,
|
||||||
[=]()
|
[=]()
|
||||||
|
{
|
||||||
|
if (dbcNode == nullptr) return;
|
||||||
|
if (lowestMsgId > 0x1FFFFFFFul) return;
|
||||||
|
|
||||||
|
uint newBase = Utility::ParseStringToNum(ui->lineNewBaseId->text());
|
||||||
|
|
||||||
|
if(newBase <= 0 || newBase > 0x1FFFFFFFul)
|
||||||
{
|
{
|
||||||
if (dbcNode == nullptr) return;
|
QMessageBox::question(this, "Invalid Address", "The new address is outside of the valid range.",
|
||||||
if (lowestMsgId > 0x1FFFFFFFul) return;
|
QMessageBox::Ok);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
uint newBase = Utility::ParseStringToNum(ui->lineNewBaseId->text());
|
if(newBase == lowestMsgId)
|
||||||
|
{
|
||||||
|
QMessageBox::question(this, "Invalid Address", "The new address is the same as the original.",
|
||||||
|
QMessageBox::Ok);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (newBase <= 0x1FFFFFFFul && newBase != lowestMsgId)
|
uint rebaseDiff = newBase - lowestMsgId;
|
||||||
|
|
||||||
|
QList<DBC_MESSAGE*> messagesForNode = dbcFile->messageHandler->findMsgsByNode(dbcNode);
|
||||||
|
if(messagesForNode.count() == 0)
|
||||||
|
{
|
||||||
|
QMessageBox::question(this, "No Messages", "The node has no messages to duplicate.",
|
||||||
|
QMessageBox::Ok);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(ui->lineNodeName->text().isEmpty())
|
||||||
|
{
|
||||||
|
QMessageBox::question(this, "No Name", "The new node needs a name before it can be created.",
|
||||||
|
QMessageBox::Ok);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
QString newNodeName = ui->lineNodeName->text();
|
||||||
|
emit createNode(newNodeName);
|
||||||
|
|
||||||
|
DBC_NODE *nodePtr = dbcFile->findNodeByName(newNodeName);
|
||||||
|
|
||||||
|
if(nodePtr == nullptr)
|
||||||
|
{
|
||||||
|
QMessageBox::question(this, "Node Invalid", "There was an problem identifying the selected node.",
|
||||||
|
QMessageBox::Ok);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i=0; i<messagesForNode.count(); i++)
|
||||||
|
{
|
||||||
|
uint newMsgId = messagesForNode[i]->ID + rebaseDiff;
|
||||||
|
|
||||||
|
if(newMsgId < 0 || newMsgId > 0x1FFFFFFFul)
|
||||||
{
|
{
|
||||||
uint rebaseDiff = newBase - lowestMsgId;
|
QMessageBox::question(this, "Invalid Address Range", "The new starting address would cause a message to be outside of the valid address range.",
|
||||||
|
QMessageBox::Ok);
|
||||||
QList<DBC_MESSAGE*> messagesForNode = dbcFile->messageHandler->findMsgsByNode(dbcNode);
|
return;
|
||||||
if(messagesForNode.count() == 0)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(ui->lineNodeName->text().isEmpty())
|
|
||||||
{
|
|
||||||
//tell!
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
QString newNodeName = ui->lineNodeName->text();
|
|
||||||
emit createNode(newNodeName);
|
|
||||||
|
|
||||||
DBC_NODE *nodePtr = dbcFile->findNodeByName(newNodeName);
|
|
||||||
|
|
||||||
if(nodePtr == nullptr)
|
|
||||||
{
|
|
||||||
//uhoh
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
for (int i=0; i<messagesForNode.count(); i++)
|
|
||||||
{
|
|
||||||
uint newMsgId = messagesForNode[i]->ID + rebaseDiff;
|
|
||||||
emit cloneMessageToNode(nodePtr, messagesForNode[i], newMsgId);
|
|
||||||
}
|
|
||||||
|
|
||||||
dbcFile->setDirtyFlag();
|
|
||||||
emit nodeAdded();
|
|
||||||
}
|
}
|
||||||
});
|
}
|
||||||
|
|
||||||
connect(ui->btnCancel, &QPushButton::pressed,
|
for (int i=0; i<messagesForNode.count(); i++)
|
||||||
[=]()
|
|
||||||
{
|
{
|
||||||
|
uint newMsgId = messagesForNode[i]->ID + rebaseDiff;
|
||||||
|
emit cloneMessageToNode(nodePtr, messagesForNode[i], newMsgId);
|
||||||
|
}
|
||||||
|
|
||||||
|
dbcFile->setDirtyFlag();
|
||||||
|
emit nodeAdded();
|
||||||
|
|
||||||
});
|
this->close();
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
connect(ui->btnCancel, &QPushButton::pressed,
|
||||||
|
[=]()
|
||||||
|
{
|
||||||
|
this->close();
|
||||||
|
});
|
||||||
|
|
||||||
installEventFilter(this);
|
installEventFilter(this);
|
||||||
}
|
}
|
||||||
@@ -144,19 +174,20 @@ void DBCNodeDuplicateEditor::showEvent(QShowEvent* event)
|
|||||||
refreshView();
|
refreshView();
|
||||||
}
|
}
|
||||||
|
|
||||||
void DBCNodeDuplicateEditor::refreshView()
|
bool DBCNodeDuplicateEditor::refreshView()
|
||||||
{
|
{
|
||||||
|
ui->lineNewBaseId->setText("");
|
||||||
|
|
||||||
if(dbcNode)
|
if(dbcNode)
|
||||||
{
|
{
|
||||||
QList<DBC_MESSAGE*> messagesForNode = dbcFile->messageHandler->findMsgsByNode(dbcNode);
|
QList<DBC_MESSAGE*> messagesForNode = dbcFile->messageHandler->findMsgsByNode(dbcNode);
|
||||||
|
lowestMsgId = 0xFFFFFFFF;
|
||||||
|
|
||||||
if(messagesForNode.count() == 0)
|
if(messagesForNode.count() == 0)
|
||||||
{
|
{
|
||||||
//??
|
return false;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
lowestMsgId = 0xFFFFFFFF;
|
|
||||||
|
|
||||||
for (int i=0; i<messagesForNode.count(); i++)
|
for (int i=0; i<messagesForNode.count(); i++)
|
||||||
{
|
{
|
||||||
if(messagesForNode[i]->ID < lowestMsgId)
|
if(messagesForNode[i]->ID < lowestMsgId)
|
||||||
@@ -165,7 +196,9 @@ void DBCNodeDuplicateEditor::refreshView()
|
|||||||
|
|
||||||
ui->lineOriginalBaseId->setText(Utility::formatCANID(lowestMsgId & 0x1FFFFFFFul));
|
ui->lineOriginalBaseId->setText(Utility::formatCANID(lowestMsgId & 0x1FFFFFFFul));
|
||||||
ui->lineNodeName->setText(dbcNode->name + QString("_Copy"));
|
ui->lineNodeName->setText(dbcNode->name + QString("_Copy"));
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
//generateSampleText();
|
return false;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ public:
|
|||||||
void showEvent(QShowEvent*);
|
void showEvent(QShowEvent*);
|
||||||
void setNodeRef(DBC_NODE *node);
|
void setNodeRef(DBC_NODE *node);
|
||||||
void setFileIdx(int idx);
|
void setFileIdx(int idx);
|
||||||
void refreshView();
|
bool refreshView();
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void updatedTreeInfo(DBC_MESSAGE *msg);
|
void updatedTreeInfo(DBC_MESSAGE *msg);
|
||||||
|
|||||||
+71
-49
@@ -4,6 +4,7 @@
|
|||||||
#include <QSettings>
|
#include <QSettings>
|
||||||
#include <QKeyEvent>
|
#include <QKeyEvent>
|
||||||
#include <QColorDialog>
|
#include <QColorDialog>
|
||||||
|
#include <QMessageBox>
|
||||||
#include "helpwindow.h"
|
#include "helpwindow.h"
|
||||||
#include "utility.h"
|
#include "utility.h"
|
||||||
|
|
||||||
@@ -18,60 +19,78 @@ DBCNodeRebaseEditor::DBCNodeRebaseEditor(QWidget *parent) :
|
|||||||
dbcHandler = DBCHandler::getReference();
|
dbcHandler = DBCHandler::getReference();
|
||||||
dbcNode = nullptr;
|
dbcNode = nullptr;
|
||||||
|
|
||||||
connect(ui->btnDoRebase, &QPushButton::pressed,
|
connect(ui->btnDoRebase, &QPushButton::pressed,
|
||||||
[=]()
|
[=]()
|
||||||
|
{
|
||||||
|
if (dbcNode == nullptr)
|
||||||
{
|
{
|
||||||
if (dbcNode == nullptr) return;
|
QMessageBox::question(this, "Node Invalid", "There was an problem identifying the selected node.",
|
||||||
if (lowestMsgId > 0x1FFFFFFFul) return;
|
QMessageBox::Ok);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
uint newBase = Utility::ParseStringToNum(ui->lineEdit->text());
|
if (lowestMsgId > 0x1FFFFFFFul)
|
||||||
|
{
|
||||||
|
QMessageBox::question(this, "No Valid Messages", "The node has no valid messages to change.",
|
||||||
|
QMessageBox::Ok);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (newBase <= 0x1FFFFFFFul && newBase != lowestMsgId)
|
uint newBase = Utility::ParseStringToNum(ui->lineNewBaseId->text());
|
||||||
|
|
||||||
|
if(newBase <= 0 || newBase > 0x1FFFFFFFul)
|
||||||
|
{
|
||||||
|
QMessageBox::question(this, "Invalid Address", "The new address is outside of the valid range.",
|
||||||
|
QMessageBox::Ok);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(newBase == lowestMsgId)
|
||||||
|
{
|
||||||
|
QMessageBox::question(this, "Invalid Address", "The new address is the same as the original.",
|
||||||
|
QMessageBox::Ok);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
uint rebaseDiff = newBase - lowestMsgId;
|
||||||
|
|
||||||
|
QList<DBC_MESSAGE*> messagesForNode = dbcFile->messageHandler->findMsgsByNode(dbcNode);
|
||||||
|
if(messagesForNode.count() == 0)
|
||||||
|
{
|
||||||
|
QMessageBox::question(this, "No Messages", "The node has no messages to change.",
|
||||||
|
QMessageBox::Ok);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i=0; i<messagesForNode.count(); i++)
|
||||||
|
{
|
||||||
|
uint newMsgId = messagesForNode[i]->ID + rebaseDiff;
|
||||||
|
|
||||||
|
if(newMsgId < 0 || newMsgId > 0x1FFFFFFFul)
|
||||||
{
|
{
|
||||||
uint rebaseDiff = newBase - lowestMsgId;
|
QMessageBox::question(this, "Invalid Address Range", "The new starting address would cause a message to be outside of the valid address range.",
|
||||||
|
QMessageBox::Ok);
|
||||||
QList<DBC_MESSAGE*> messagesForNode = dbcFile->messageHandler->findMsgsByNode(dbcNode);
|
return;
|
||||||
if(messagesForNode.count() == 0)
|
|
||||||
{
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
for (int i=0; i<messagesForNode.count(); i++)
|
|
||||||
{
|
|
||||||
messagesForNode[i]->ID += rebaseDiff;
|
|
||||||
emit updatedTreeInfo(messagesForNode[i]);
|
|
||||||
}
|
|
||||||
|
|
||||||
dbcFile->setDirtyFlag();
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i=0; i<messagesForNode.count(); i++)
|
||||||
});
|
|
||||||
|
|
||||||
connect(ui->btnCancel, &QPushButton::pressed,
|
|
||||||
[=]()
|
|
||||||
{
|
{
|
||||||
|
messagesForNode[i]->ID += rebaseDiff;
|
||||||
|
emit updatedTreeInfo(messagesForNode[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
dbcFile->setDirtyFlag();
|
||||||
|
|
||||||
});
|
this->close();
|
||||||
|
|
||||||
// connect(ui->lineOriginalBaseId, &QLineEdit::editingFinished,
|
});
|
||||||
// [=]()
|
|
||||||
// {
|
|
||||||
// if (dbcNode == nullptr) return;
|
|
||||||
// if (dbcNode->comment != ui->lineComment->text()) dbcFile->setDirtyFlag();
|
|
||||||
// dbcNode->comment = ui->lineComment->text();
|
|
||||||
// emit updatedTreeInfo(dbcNode);
|
|
||||||
// });
|
|
||||||
|
|
||||||
// connect(ui->lineMsgName, &QLineEdit::editingFinished,
|
connect(ui->btnCancel, &QPushButton::pressed,
|
||||||
// [=]()
|
[=]()
|
||||||
// {
|
{
|
||||||
// if (dbcNode == nullptr) return;
|
this->close();
|
||||||
// if (dbcNode->name != ui->lineMsgName->text()) dbcFile->setDirtyFlag();
|
});
|
||||||
// dbcNode->name = ui->lineMsgName->text();
|
|
||||||
// emit updatedTreeInfo(dbcNode);
|
|
||||||
// });
|
|
||||||
|
|
||||||
installEventFilter(this);
|
installEventFilter(this);
|
||||||
}
|
}
|
||||||
@@ -146,19 +165,20 @@ void DBCNodeRebaseEditor::showEvent(QShowEvent* event)
|
|||||||
refreshView();
|
refreshView();
|
||||||
}
|
}
|
||||||
|
|
||||||
void DBCNodeRebaseEditor::refreshView()
|
bool DBCNodeRebaseEditor::refreshView()
|
||||||
{
|
{
|
||||||
|
ui->lineNewBaseId->setText("");
|
||||||
|
|
||||||
if(dbcNode)
|
if(dbcNode)
|
||||||
{
|
{
|
||||||
QList<DBC_MESSAGE*> messagesForNode = dbcFile->messageHandler->findMsgsByNode(dbcNode);
|
QList<DBC_MESSAGE*> messagesForNode = dbcFile->messageHandler->findMsgsByNode(dbcNode);
|
||||||
|
lowestMsgId = 0xFFFFFFFF;
|
||||||
|
|
||||||
if(messagesForNode.count() == 0)
|
if(messagesForNode.count() == 0)
|
||||||
{
|
{
|
||||||
//??
|
return false;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
lowestMsgId = 0xFFFFFFFF;
|
|
||||||
|
|
||||||
for (int i=0; i<messagesForNode.count(); i++)
|
for (int i=0; i<messagesForNode.count(); i++)
|
||||||
{
|
{
|
||||||
if(messagesForNode[i]->ID < lowestMsgId)
|
if(messagesForNode[i]->ID < lowestMsgId)
|
||||||
@@ -167,7 +187,9 @@ void DBCNodeRebaseEditor::refreshView()
|
|||||||
|
|
||||||
ui->lineOriginalBaseId->setText(Utility::formatCANID(lowestMsgId & 0x1FFFFFFFul));
|
ui->lineOriginalBaseId->setText(Utility::formatCANID(lowestMsgId & 0x1FFFFFFFul));
|
||||||
ui->lineNodeName->setText(dbcNode->name);
|
ui->lineNodeName->setText(dbcNode->name);
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
//generateSampleText();
|
return false;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ public:
|
|||||||
void showEvent(QShowEvent*);
|
void showEvent(QShowEvent*);
|
||||||
void setNodeRef(DBC_NODE *node);
|
void setNodeRef(DBC_NODE *node);
|
||||||
void setFileIdx(int idx);
|
void setFileIdx(int idx);
|
||||||
void refreshView();
|
bool refreshView();
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void updatedTreeInfo(DBC_MESSAGE *msg);
|
void updatedTreeInfo(DBC_MESSAGE *msg);
|
||||||
|
|||||||
@@ -7,11 +7,17 @@
|
|||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>314</width>
|
<width>314</width>
|
||||||
<height>193</height>
|
<height>144</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
<string>Dialog</string>
|
<string>Duplicate Node</string>
|
||||||
</property>
|
</property>
|
||||||
<widget class="QWidget" name="layoutWidget">
|
<widget class="QWidget" name="layoutWidget">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
@@ -41,7 +47,14 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="1">
|
<item row="1" column="1">
|
||||||
<widget class="QLineEdit" name="lineOriginalBaseId"/>
|
<widget class="QLineEdit" name="lineOriginalBaseId">
|
||||||
|
<property name="enabled">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
<property name="readOnly">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="2" column="0">
|
<item row="2" column="0">
|
||||||
<widget class="QLabel" name="label">
|
<widget class="QLabel" name="label">
|
||||||
|
|||||||
@@ -7,11 +7,17 @@
|
|||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>303</width>
|
<width>303</width>
|
||||||
<height>159</height>
|
<height>148</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
<string>Dialog</string>
|
<string>Rebase All Node Messages</string>
|
||||||
</property>
|
</property>
|
||||||
<widget class="QWidget" name="layoutWidget">
|
<widget class="QWidget" name="layoutWidget">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
@@ -31,7 +37,14 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="1">
|
<item row="0" column="1">
|
||||||
<widget class="QLineEdit" name="lineNodeName"/>
|
<widget class="QLineEdit" name="lineNodeName">
|
||||||
|
<property name="enabled">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
<property name="readOnly">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="0">
|
<item row="1" column="0">
|
||||||
<widget class="QLabel" name="label_8">
|
<widget class="QLabel" name="label_8">
|
||||||
@@ -41,7 +54,14 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="1">
|
<item row="1" column="1">
|
||||||
<widget class="QLineEdit" name="lineOriginalBaseId"/>
|
<widget class="QLineEdit" name="lineOriginalBaseId">
|
||||||
|
<property name="enabled">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
<property name="readOnly">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="2" column="0">
|
<item row="2" column="0">
|
||||||
<widget class="QLabel" name="label">
|
<widget class="QLabel" name="label">
|
||||||
@@ -51,7 +71,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="2" column="1">
|
<item row="2" column="1">
|
||||||
<widget class="QLineEdit" name="lineEdit"/>
|
<widget class="QLineEdit" name="lineNewBaseId"/>
|
||||||
</item>
|
</item>
|
||||||
<item row="3" column="1">
|
<item row="3" column="1">
|
||||||
<widget class="QPushButton" name="btnDoRebase">
|
<widget class="QPushButton" name="btnDoRebase">
|
||||||
|
|||||||
Reference in New Issue
Block a user