33 #include "YSettings.h"
34 #include "YUIException.h"
36 #define YUILogComponent "ui"
38 #include "Libyui_config.h"
42 std::string YSettings::progSubDir =
"";
43 std::string YSettings::progIconDir =
"";
44 std::string YSettings::progThemeDir =
"";
45 std::string YSettings::progLocaleDir =
"";
47 YSettings::YSettings()
51 YSettings::~YSettings ()
57 if ( progSubDir.empty() )
59 progSubDir = directory;
60 yuiMilestone () <<
"Set progSubDir to \"" << directory <<
"\"" << endl;
61 yuiMilestone () <<
"progSubDir is now locked." << endl;
65 yuiMilestone () <<
"Can't set progSubDir to \"" << directory <<
"\"" << endl;
66 yuiMilestone () <<
"It is locked to: \"" << progSubDir <<
"\"" << endl;
67 YUI_THROW (
YUIException (
"progSubDir is locked to: \"" + progSubDir +
"\"" ) );
73 yuiMilestone () <<
"progSubDir: \"" << progSubDir <<
"\"" << endl;
81 if ( progIconDir.empty() )
83 progIconDir = directory;
84 yuiMilestone () <<
"Set progIconDir to \"" << directory <<
"\"" << endl;
85 yuiMilestone () <<
"progIconDir is now locked." << endl;
89 yuiMilestone () <<
"Can't set progIconDir to \"" << directory <<
"\"" << endl;
90 yuiMilestone () <<
"It is locked to: \"" << progIconDir <<
"\"" << endl;
91 YUI_THROW (
YUIException (
"progIconDir is locked to: \"" + progIconDir +
"\"" ) );
97 if (progIconDir.size())
99 yuiMilestone () <<
"progIconDir: \"" << progIconDir <<
"\"" << endl;
102 else if (progSubDir.size())
103 return progSubDir +
"/icons/";
105 return THEMEDIR
"/icons/";
110 if ( progThemeDir.empty() )
112 progThemeDir = directory;
113 yuiMilestone () <<
"Set progThemeDir to \"" << directory <<
"\"" << endl;
114 yuiMilestone () <<
"progThemeDir is now locked." << endl;
118 yuiMilestone () <<
"Can't set progThemeDir to \"" << directory <<
"\"" << endl;
119 yuiMilestone () <<
"It is locked to: \"" << progThemeDir <<
"\"" << endl;
120 YUI_THROW (
YUIException (
"progThemeDir is locked to: \"" + progThemeDir +
"\"" ) );
126 if (progThemeDir.size())
128 yuiMilestone () <<
"progThemeDir: \"" << progThemeDir <<
"\"" << endl;
131 else if (progSubDir.size())
134 return progSubDir +
"/theme/current/wizard/";
137 return THEMEDIR
"/current/wizard/";
143 if ( progLocaleDir.empty() )
145 progLocaleDir = directory;
146 yuiMilestone () <<
"Set progLocaleDir to \"" << directory <<
"\"" << endl;
147 yuiMilestone () <<
"progLocaleDir is now locked." << endl;
151 yuiMilestone () <<
"Can't set progLocaleDir to \"" << directory <<
"\"" << endl;
152 yuiMilestone () <<
"It is locked to: \"" << progLocaleDir <<
"\"" << endl;
153 YUI_THROW (
YUIException (
"progLocaleDir is locked to: \"" + progLocaleDir +
"\"" ) );
159 if (progLocaleDir.size())
161 yuiMilestone () <<
"progLocaleDir: \"" << progLocaleDir <<
"\"" << endl;
162 return progLocaleDir;
164 else if (progSubDir.size())
167 return progSubDir +
"/locale/";
170 return "/usr/share/locale/";