Skip to content
Snippets Groups Projects
Commit 5570aa75 authored by Mirko Wächter's avatar Mirko Wächter
Browse files

fixed kinematicunit gui dialog: combobox update was not correctly handled

parent 63116cf7
No related branches found
No related tags found
No related merge requests found
......@@ -49,10 +49,11 @@ KinematicUnitConfigDialog::KinematicUnitConfigDialog(QWidget* parent) :
connect(this->ui->buttonBox, SIGNAL(accepted()), this, SLOT(verifyConfig()));
ui->buttonBox->button(QDialogButtonBox::Ok)->setDefault(true);
proxyFinder = new IceProxyFinder<KinematicUnitInterfacePrx>(this);
proxyFinder->setSearchMask("*");
proxyFinder->setSearchMask("*Unit");
ui->gridLayout->addWidget(proxyFinder, 0, 1, 1, 2);
connect(proxyFinder->getUi()->cbProxyName, SIGNAL(currentIndexChanged(int)), this, SLOT(selectionChanged(int)));
connect(proxyFinder->getUi()->cbProxyName, SIGNAL(editTextChanged(QString)), this, SLOT(proxyNameChanged(QString)));
}
KinematicUnitConfigDialog::~KinematicUnitConfigDialog()
......@@ -88,20 +89,13 @@ void KinematicUnitConfigDialog::verifyConfig()
}
}
void KinematicUnitConfigDialog::selectionChanged(int nr)
void KinematicUnitConfigDialog::updateSubconfig(std::string kinematicUnitName)
{
ARMARX_LOG << "Selected entry:" << nr;
ui->labelTopic->setText("");
ui->labelRobotModel->setText("");
ui->labelRNS->setText("");
if (nr < 0)
{
return;
}
std::string kinematicUnitName = proxyFinder->getUi()->cbProxyName->currentText().toStdString();
try
{
ARMARX_INFO << "Connecting to KinematicUnitProxy " << kinematicUnitName;
KinematicUnitInterfacePrx kinematicUnitInterfacePrx = getProxy<KinematicUnitInterfacePrx>(kinematicUnitName);
std::string topicName = kinematicUnitInterfacePrx->getReportTopicName();
std::string robotNodeSetName = kinematicUnitInterfacePrx->getRobotNodeSetName();
......@@ -114,7 +108,30 @@ void KinematicUnitConfigDialog::selectionChanged(int nr)
{
ARMARX_INFO << "Could not connect to KinematicUnitProxy " << kinematicUnitName;
}
}
void KinematicUnitConfigDialog::selectionChanged(int nr)
{
ARMARX_LOG << "Selected entry:" << nr;
ui->labelTopic->setText("");
ui->labelRobotModel->setText("");
ui->labelRNS->setText("");
if (nr < 0)
{
return;
}
std::string kinematicUnitName = proxyFinder->getUi()->cbProxyName->currentText().toStdString();
updateSubconfig(kinematicUnitName);
}
void KinematicUnitConfigDialog::proxyNameChanged(QString kinematicUnitName)
{
ui->labelTopic->setText("");
ui->labelRobotModel->setText("");
ui->labelRNS->setText("");
updateSubconfig(kinematicUnitName.toStdString());
}
......
......@@ -65,6 +65,10 @@ namespace armarx
void verifyConfig();
void selectionChanged(int nr);
void proxyNameChanged(QString);
protected slots:
void updateSubconfig(std::string kinematicUnitName);
private:
IceProxyFinderBase* proxyFinder;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment