fix: partially resolved #800, rewrite ImportWindow required

This commit is contained in:
QwQ 2020-07-29 15:34:34 +08:00
parent c4f5bb07df
commit 02aa656197
3 changed files with 8 additions and 7 deletions

View File

@ -1 +1 @@
5816
5817

View File

@ -54,7 +54,7 @@ ImportConfigWindow::~ImportConfigWindow()
{
}
QMultiHash<QString, CONFIGROOT> ImportConfigWindow::SelectConnection(bool outboundsOnly)
QMultiMap<QString, CONFIGROOT> ImportConfigWindow::SelectConnection(bool outboundsOnly)
{
// partial import means only import as an outbound, will set outboundsOnly to
// false and disable the checkbox
@ -62,7 +62,7 @@ QMultiHash<QString, CONFIGROOT> ImportConfigWindow::SelectConnection(bool outbou
routeEditBtn->setEnabled(!outboundsOnly);
groupCombo->setEnabled(false);
this->exec();
QMultiHash<QString, CONFIGROOT> conn;
QMultiMap<QString, CONFIGROOT> conn;
for (const auto &connEntry : connectionsToNewGroup.values())
{
conn += connEntry;
@ -71,7 +71,7 @@ QMultiHash<QString, CONFIGROOT> ImportConfigWindow::SelectConnection(bool outbou
{
conn += connEntry;
}
return result() == Accepted ? conn : QMultiHash<QString, CONFIGROOT>{};
return result() == Accepted ? conn : QMultiMap<QString, CONFIGROOT>{};
}
int ImportConfigWindow::PerformImportConnection()

View File

@ -15,7 +15,7 @@ class ImportConfigWindow
explicit ImportConfigWindow(QWidget *parent = nullptr);
~ImportConfigWindow();
int PerformImportConnection();
QMultiHash<QString, CONFIGROOT> SelectConnection(bool outboundsOnly);
QMultiMap<QString, CONFIGROOT> SelectConnection(bool outboundsOnly);
void processCommands(QString command, QStringList commands, QMap<QString, QString> args) override
{
const static QMap<QString, int> indexMap{
@ -53,6 +53,7 @@ class ImportConfigWindow
void updateColorScheme() override;
QMap<QString, QString> linkErrors;
//
QHash<GroupId, QMultiHash<QString, CONFIGROOT>> connectionsToExistingGroup;
QHash<QString, QMultiHash<QString, CONFIGROOT>> connectionsToNewGroup;
// Use hash here since the order is not important.
QHash<GroupId, QMultiMap<QString, CONFIGROOT>> connectionsToExistingGroup;
QMap<QString, QMultiMap<QString, CONFIGROOT>> connectionsToNewGroup;
};