Add a Scan confirm setting.

This commit is contained in:
Krad
2022-05-13 14:20:49 +08:00
parent 29e91699ab
commit 2803c6e2ad
3 changed files with 67 additions and 1 deletions

View File

@@ -50,6 +50,41 @@ char* JsonObject::getJsonString(const char* catergory, const char* stringName)
return second->valuestring;
}
void JsonObject::setBool(const char *catergory, const char *stringName, bool val, bool save) {
if (!loadcfg())
return;
cJSON* first = cJSON_GetObjectItem((cJSON*)json_root, catergory);
if (!first) return;
cJSON* Item = cJSON_CreateBool(val?1:0);
cJSON* valItem = cJSON_GetObjectItem(first, stringName);
if (valItem){
cJSON_ReplaceItemInObject(first, stringName, Item);
}
else{
cJSON_AddItemToObject(first, stringName , Item);
}
if (save)
{
savecfg();
}
}
bool JsonObject::getBool(const char* catergory, const char* stringName)
{
if (!loadcfg())
return nullptr;
cJSON* first = cJSON_GetObjectItem((cJSON*)json_root, catergory);
if (!first) return false;
cJSON* second = cJSON_GetObjectItem(first, stringName);
if (!second) return false;
return second->valueint;
}
char* JsonObject::getArrayNode(const char* catergory, const char* stringName, int index, const char* id)
{
if (!loadcfg())
@@ -396,6 +431,12 @@ void JsonObject::autoDHCP(bool ena)
setJsonString("address", "dhcp", str.toStdString().c_str());
}
bool JsonObject::getScanConfirm() {
return getBool("general","ScanConfirm");
}
void JsonObject::setScanConfirm(bool val) {
setBool("general","ScanConfirm", val, true);
}
IpAddr JsonObject::getDefaultIpAddr()
{
@@ -474,3 +515,5 @@ void JsonObject::setIpRouteList(const QList<QStringList>& list)
}
savecfg();
}

View File

@@ -87,6 +87,9 @@ public:
bool isDHCP();
void autoDHCP(bool);
bool getScanConfirm();
void setScanConfirm(bool val);
IpAddr getDefaultIpAddr();
void setDefaultIpAddr(const IpAddr& addr);
@@ -104,6 +107,9 @@ private:
void setJsonString(const char* catergory, const char* stringName, const char* stringValue, bool save = true);
char* getJsonString(const char* catergory, const char* stringName);
void setBool(const char* catergory, const char* stringName,bool val, bool save = true);
bool JsonObject::getBool(const char* catergory, const char* stringName);
char* getArrayNode(const char* catergory, const char* stringName, int index, const char* id);
void setArrayNode(const char* catergory, const char* stringName, int index, const char* id, const char* stringValue);
int getArraySize(const char* catergory, const char* stringName);