MCPcopy Create free account
hub / github.com/danoon2/Boxedwine / init

Method init

source/ui/data/globalSettings.cpp:82–159  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

80bool GlobalSettings::enabledCachedReadFiles = false;
81
82void GlobalSettings::init(int argc, const char **argv) {
83 GlobalSettings::largeFontBold = nullptr;
84 GlobalSettings::largeFont = nullptr;
85 GlobalSettings::mediumFont = nullptr;
86 GlobalSettings::defaultFont = nullptr;
87 GlobalSettings::sectionTitleFont = nullptr;
88 GlobalSettings::iconFontsLoaded = false;
89 GlobalSettings::availableFileSystemVersions.clear();
90 GlobalSettings::demos.clear();
91 GlobalSettings::fileSystemVersions.clear();
92 GlobalSettings::components.clear();
93
94 GlobalSettings::dataFolderLocation = KNativeSystem::getLocalDirectory();
95 if (Fs::nativePathSeperator.length()==0) {
96 Fs::nativePathSeperator = GlobalSettings::dataFolderLocation.charAt(GlobalSettings::dataFolderLocation.length()-1);
97 }
98 GlobalSettings::dataFolderLocation = GlobalSettings::dataFolderLocation.substr(0, GlobalSettings::dataFolderLocation.length()-1);
99 GlobalSettings::exePath = Fs::getNativeParentPath(BString::copy(argv[0]));
100 GlobalSettings::exeFilePath = BString::copy(argv[0]);
101 if (!Fs::doesNativePathExist(GlobalSettings::dataFolderLocation)) {
102 Fs::makeNativeDirs(GlobalSettings::dataFolderLocation);
103 }
104 GlobalSettings::configFilePath = GlobalSettings::dataFolderLocation.stringByApppendingPath("boxedwine.ini");
105 ConfigFile config(GlobalSettings::configFilePath);
106 GlobalSettings::dataFolderLocation = config.readString(B("DataFolder"), GlobalSettings::dataFolderLocation);
107 GlobalSettings::dataFolderLocation = GlobalSettings::dataFolderLocation.replace("//", "/");
108 GlobalSettings::dataFolderLocation = GlobalSettings::dataFolderLocation.replace("\\\\", "\\");
109 GlobalSettings::theme = config.readString(B("Theme"), B("Dark"));
110 GlobalSettings::defaultResolution = config.readString(B("DefaultResolution"), B("1024x768"));
111 GlobalSettings::defaultScale = config.readInt(B("DefaultScale"), 100);
112 GlobalSettings::defaultVsync = config.readInt(B("DefaultVsync"), VSYNC_DEFAULT);
113 GlobalSettings::fontScale = (float)config.readInt(B("FontScale"), 100) / 100.0f;
114 GlobalSettings::fileUrls.push_back(config.readString(B("FilesURL"), B("http://www.boxedwine.org/v2/" BOXEDWINE_VERSION_STR "/filesV2.xml")));
115 for (int i = 1; i < 10; i++) {
116 BString name = "FilesURL" + BString::valueOf(i + 1);
117 BString url = config.readString(name, B(""));
118 if (url.length()) {
119 GlobalSettings::fileUrls.push_back(url);
120 }
121 }
122 GlobalSettings::lastScreenCx = config.readInt(B("WindowWidth"), 0);
123 GlobalSettings::lastScreenCy = config.readInt(B("WindowHeight"), 0);
124 GlobalSettings::lastScreenX = config.readInt(B("WindowX"), 0);
125 GlobalSettings::lastScreenY = config.readInt(B("WindowY"), 0);
126#ifdef __MACH__
127 GlobalSettings::defaultOpenGL = config.readInt(B("OpenGL"), OPENGL_TYPE_LLVM_PIPE);
128#else
129 GlobalSettings::defaultOpenGL = config.readInt(B("OpenGL"), OPENGL_TYPE_DEFAULT);
130#endif
131 GlobalSettings::enabledAutomation = config.readBool(B("EnableAutomation"), false);
132 GlobalSettings::enabledCachedReadFiles = config.readBool(B("EnabledCachedReadFiles"), false);
133
134 if (!Fs::doesNativePathExist(configFilePath)) {
135 saveConfig();
136 }
137 GlobalSettings::startUp();
138
139 U32 width = 0;

Callers

nothing calls this directly

Calls 11

BFunction · 0.85
charAtMethod · 0.80
substrMethod · 0.80
replaceMethod · 0.80
readIntMethod · 0.80
readBoolMethod · 0.80
clearMethod · 0.45
lengthMethod · 0.45
readStringMethod · 0.45
push_backMethod · 0.45

Tested by

no test coverage detected