Rename GPLv3 document as LICENSE, to fit better the GitHub requirements. Text / Licen...
[clinton/Virtual-Jaguar-Rx.git] / src / settings.cpp
index 7cf1efa..51b13f2 100644 (file)
@@ -1,20 +1,58 @@
-//
-// SETTINGS.CPP: Virtual Jaguar configuration loading/saving support
-//
-// by James Hammons
-// (C) 2010 Underground Software
-//
-// JLH = James Hammons <jlhamm@acm.org>
-//
-// Who  When        What
-// ---  ----------  ------------------------------------------------------------
-// JLH  01/16/2010  Created this log
-// JLH  02/23/2013  Finally removed commented out stuff :-P
-//
-
-#include "settings.h"
-
-// Global variables
-
-VJSettings vjs;
-
+//\r
+// SETTINGS.CPP: Virtual Jaguar configuration loading/saving support\r
+//\r
+// by James Hammons\r
+// (C) 2010 Underground Software\r
+//\r
+// JLH = James Hammons <jlhamm@acm.org>\r
+// JPM = Jean-Paul Mari <djipi.mari@gmail.com>\r
+//\r
+// Who  When        What\r
+// ---  ----------  ------------------------------------------------------------\r
+// JLH  01/16/2010  Created this log\r
+// JLH  02/23/2013  Finally removed commented out stuff :-P\r
+// JPM  09/08/2017  Added erase settings functions\r
+//\r
+\r
+#include "settings.h"\r
+#include <QSettings>\r
+\r
+// Global variables\r
+\r
+VJSettings vjs;\r
+\r
+\r
+const char *ES[] = {   "", "all", "ui", "alpine", "debugger"   };\r
+\r
+\r
+// Erase the settings by name\r
+bool EraseSettings(char *Setting)\r
+{\r
+       size_t i;\r
+\r
+       // Point on the emulator settings\r
+       QSettings settings("Underground Software", "Virtual Jaguar");\r
+\r
+       // Settings detection\r
+       if (strcmp(Setting, "all") == 0)\r
+       {\r
+               settings.remove("");\r
+               return true;\r
+       }\r
+       else\r
+       {\r
+               for (i = 2; i < SETTINGS_END; i++)\r
+               {\r
+                       if (strcmp(ES[i], Setting) == 0)\r
+                       {\r
+                               settings.beginGroup(Setting);\r
+                               settings.remove("");\r
+                               settings.endGroup();\r
+                               return true;\r
+                       }\r
+               }\r
+       }\r
+\r
+       return false;\r
+}\r
+\r