| 1443 | } |
| 1444 | |
| 1445 | void MainWindow::addInstance(QString url) |
| 1446 | { |
| 1447 | QString groupName; |
| 1448 | do |
| 1449 | { |
| 1450 | QObject* obj = sender(); |
| 1451 | if(!obj) |
| 1452 | break; |
| 1453 | QAction *action = qobject_cast<QAction *>(obj); |
| 1454 | if(!action) |
| 1455 | break; |
| 1456 | auto map = action->data().toMap(); |
| 1457 | if(!map.contains("group")) |
| 1458 | break; |
| 1459 | groupName = map["group"].toString(); |
| 1460 | } while(0); |
| 1461 | |
| 1462 | if(groupName.isEmpty()) |
| 1463 | { |
| 1464 | groupName = APPLICATION->settings()->get("LastUsedGroupForNewInstance").toString(); |
| 1465 | } |
| 1466 | |
| 1467 | NewInstanceDialog newInstDlg(groupName, url, this); |
| 1468 | if (!newInstDlg.exec()) |
| 1469 | return; |
| 1470 | |
| 1471 | APPLICATION->settings()->set("LastUsedGroupForNewInstance", newInstDlg.instGroup()); |
| 1472 | |
| 1473 | InstanceTask * creationTask = newInstDlg.extractTask(); |
| 1474 | if(creationTask) |
| 1475 | { |
| 1476 | instanceFromInstanceTask(creationTask); |
| 1477 | } |
| 1478 | } |
| 1479 | |
| 1480 | void MainWindow::on_actionAddInstance_triggered() |
| 1481 | { |