MCPcopy Create free account
hub / github.com/clementgallet/libTAS / load

Method load

src/program/Config.cpp:214–409  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

212}
213
214void Config::load(const std::filesystem::path& gamepath) {
215
216 /* Open the general preferences */
217 std::filesystem::path generalPath = configdir / "libTAS.ini";
218 QSettings general_settings(QString(generalPath.c_str()), QSettings::IniFormat);
219 general_settings.setFallbacksEnabled(false);
220
221 int size = general_settings.beginReadArray("recent_gamepaths");
222 if (size > 0)
223 recent_gamepaths.clear();
224 for (int i = 0; i < size; ++i) {
225 general_settings.setArrayIndex(i);
226 std::string path = general_settings.value("gamepath").toString().toStdString();
227 recent_gamepaths.push_back(path);
228 }
229 general_settings.endArray();
230
231#ifdef __unix__
232 debugger = general_settings.value("debugger", debugger).toInt();
233#elif defined(__APPLE__) && defined(__MACH__)
234 debugger = DEBUGGER_LLDB;
235#endif
236 strace_events = general_settings.value("strace_events").toString().toStdString();
237 allow_downloads = general_settings.value("allow_downloads", allow_downloads).toInt();
238
239 ffmpegoptions = general_settings.value("ffmpegoptions", ffmpegoptions.c_str()).toString().toStdString();
240
241 char *path;
242 if (general_settings.contains("datadir")) {
243 datadir = general_settings.value("datadir").toString().toStdString();
244 }
245 else {
246 path = getenv("XDG_DATA_HOME");
247 if (path) {
248 datadir = path;
249 }
250 else {
251 datadir = getenv("HOME");
252 datadir /= ".local";
253 datadir /= "share";
254 }
255 datadir /= "libTAS";
256 }
257
258 std::filesystem::path subpath;
259
260 subpath = datadir / "steam";
261 steamuserdir = general_settings.value("steamuserdir", subpath.c_str()).toString().toStdString();
262
263 subpath = datadir / "movie";
264 tempmoviedir = general_settings.value("tempmoviedir", subpath.c_str()).toString().toStdString();
265
266 subpath = datadir / "states";
267 savestatedir = general_settings.value("savestatedir", subpath.c_str()).toString().toStdString();
268
269 subpath = datadir / "ramsearch";
270 ramsearchdir = general_settings.value("ramsearchdir", subpath.c_str()).toString().toStdString();
271

Callers 1

mainFunction · 0.45

Calls 8

getenvFunction · 0.85
valueMethod · 0.80
default_hotkeysMethod · 0.80
reassign_hotkeyMethod · 0.80
reassign_inputMethod · 0.80
c_strMethod · 0.45
clearMethod · 0.45
emptyMethod · 0.45

Tested by

no test coverage detected