Skip to content

Commit 8b0b33c

Browse files
committed
Closes #1464
1 parent 8587705 commit 8b0b33c

File tree

1 file changed

+33
-8
lines changed

1 file changed

+33
-8
lines changed

src/Interface/Application/Port.cc

Lines changed: 33 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -350,15 +350,40 @@ void PortWidget::doMouseRelease(Qt::MouseButton button, const QPointF& pos, Qt::
350350

351351
void PortWidget::pickConnectModule()
352352
{
353-
QInputDialog qid;
354-
qid.setWindowTitle("Connect new module here");
355-
qid.setLabelText("New module to connect:");
356-
qid.setComboBoxItems(menu_->compatibleModules());
357-
qid.setOption(QInputDialog::UseListViewForComboBoxItems, true);
358-
auto ok = qid.exec();
359-
if (ok == QDialog::Accepted)
353+
if (isInput())
360354
{
361-
menu_->portPicked(qid.textValue());
355+
QInputDialog qid;
356+
qid.setWindowTitle("Connect new module here");
357+
qid.setLabelText("New module to connect:");
358+
qid.setComboBoxItems(menu_->compatibleModules());
359+
qid.setOption(QInputDialog::UseListViewForComboBoxItems, true);
360+
if (qid.exec() == QDialog::Accepted)
361+
{
362+
menu_->portPicked(qid.textValue());
363+
}
364+
}
365+
else
366+
{
367+
QDialog dialog;
368+
dialog.setWindowTitle("Connect new module(s) here");
369+
QVBoxLayout form(&dialog);
370+
form.addWidget(new QLabel("New module(s) to connect:"));
371+
372+
QListWidget list;
373+
list.addItems(menu_->compatibleModules());
374+
list.setSelectionMode(QAbstractItemView::MultiSelection);
375+
form.addWidget(&list);
376+
377+
QDialogButtonBox buttonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel, Qt::Horizontal, &dialog);
378+
form.addWidget(&buttonBox);
379+
connect(&buttonBox, SIGNAL(accepted()), &dialog, SLOT(accept()));
380+
connect(&buttonBox, SIGNAL(rejected()), &dialog, SLOT(reject()));
381+
382+
if (dialog.exec() == QDialog::Accepted)
383+
{
384+
Q_FOREACH(QListWidgetItem* lineEdit, list.selectedItems())
385+
menu_->portPicked(lineEdit->text());
386+
}
362387
}
363388
}
364389

0 commit comments

Comments
 (0)