MCPcopy Create free account
hub / github.com/TheForceEngine/TheForceEngine / writeToDisk

Function writeToDisk

TheForceEngine/TFE_Settings/settings.cpp:309–341  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

307 }
308
309 bool writeToDisk(bool writeDefaultSettings)
310 {
311 static char settingFilePath[TFE_MAX_PATH];
312 if (writeDefaultSettings)
313 {
314 strcpy(settingFilePath, s_defaultSettingsPath);
315 }
316 else
317 {
318 strcpy(settingFilePath, s_settingsPath);
319 }
320 FileStream settings;
321 if (settings.open(settingFilePath, Stream::MODE_WRITE))
322 {
323 writeWindowSettings(settings);
324 writeGraphicsSettings(settings);
325 writeEnhancementsSettings(settings);
326 writeHudSettings(settings);
327 writeSoundSettings(settings);
328 writeSystemSettings(settings);
329 writeA11ySettings(settings);
330 writeGameSettings(settings);
331 writePerGameSettings(settings);
332 writeCVars(settings);
333 settings.close();
334
335 return true;
336 }
337 char msgBuffer[4096];
338 sprintf(msgBuffer, "Cannot write 'settings.ini' to '%s',\nmost likely Documents/ has been set to read-only, is located on One-Drive (currently not supported), or has been added as a Controlled Folder if running on Windows.\n https://www.tenforums.com/tutorials/87858-add-protected-folders-controlled-folder-access-windows-10-a.html", s_settingsPath);
339 TFE_System::postErrorMessageBox(msgBuffer, "Permissions Error");
340 return false;
341 }
342
343 // Get and set settings.
344 TFE_Settings_Window* getWindowSettings()

Callers 9

sdlInitFunction · 0.85
menuReturnFunction · 0.85
drawFunction · 0.85
setSettingsTemplateFunction · 0.85
initFunction · 0.85
shutdownFunction · 0.85
autodetectGamePathsFunction · 0.85
setSoundVolumeConsoleFunction · 0.85
setMusicVolumeConsoleFunction · 0.85

Calls 13

writeWindowSettingsFunction · 0.85
writeGraphicsSettingsFunction · 0.85
writeHudSettingsFunction · 0.85
writeSoundSettingsFunction · 0.85
writeSystemSettingsFunction · 0.85
writeA11ySettingsFunction · 0.85
writeGameSettingsFunction · 0.85
writePerGameSettingsFunction · 0.85
writeCVarsFunction · 0.85
postErrorMessageBoxFunction · 0.85
openMethod · 0.45

Tested by

no test coverage detected