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