From a88c6cba72e24bedbe609042c26fd5adb0837fb0 Mon Sep 17 00:00:00 2001 From: yjd Date: Sun, 26 Jun 2022 19:12:30 +0800 Subject: [PATCH] Update MainWindow.cpp --- src/gui/Src/Gui/MainWindow.cpp | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/src/gui/Src/Gui/MainWindow.cpp b/src/gui/Src/Gui/MainWindow.cpp index 09f1bfdb..34c898bf 100644 --- a/src/gui/Src/Gui/MainWindow.cpp +++ b/src/gui/Src/Gui/MainWindow.cpp @@ -2170,6 +2170,7 @@ void MainWindow::chooseLanguage() void MainWindow::addFavouriteItem(int type, const QString & name, const QString & description) { + bool check; if(type == 0) // Tools { char buffer[MAX_SETTING_SIZE]; @@ -2192,13 +2193,22 @@ void MainWindow::addFavouriteItem(int type, const QString & name, const QString unsigned int i; for(i = 1; BridgeSettingGet("Favourite", (QString("Command") + QString::number(i)).toUtf8().constData(), buffer); i++) { + if(QString(buffer) == name) + { + check = true; + break; + } } - BridgeSettingSet("Favourite", (QString("Command") + QString::number(i)).toUtf8().constData(), name.toUtf8().constData()); - BridgeSettingSet("Favourite", (QString("CommandShortcut") + QString::number(i)).toUtf8().constData(), description.toUtf8().constData()); - if(BridgeSettingGet("Favourite", (QString("Command") + QString::number(i + 1)).toUtf8().constData(), buffer)) + + if(!check) { - buffer[0] = 0; - BridgeSettingSet("Favourite", (QString("Command") + QString::number(i + 1)).toUtf8().constData(), buffer); + BridgeSettingSet("Favourite", (QString("Command") + QString::number(i)).toUtf8().constData(), name.toUtf8().constData()); + BridgeSettingSet("Favourite", (QString("CommandShortcut") + QString::number(i)).toUtf8().constData(), description.toUtf8().constData()); + if(BridgeSettingGet("Favourite", (QString("Command") + QString::number(i + 1)).toUtf8().constData(), buffer)) + { + buffer[0] = 0; + BridgeSettingSet("Favourite", (QString("Command") + QString::number(i + 1)).toUtf8().constData(), buffer); + } } updateFavouriteTools(); }