00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #include "path.h"
00022
00023 namespace SaX {
00024
00025
00026
00027 SaXManipulatePath::SaXManipulatePath (SaXImport* in, int path) {
00028
00033
00034 if ( ! in ) {
00035 excNullPointerArgument ();
00036 qError (errorString(),EXC_NULLPOINTERARGUMENT);
00037 return;
00038 }
00039 if ( in->getSectionID() != SAX_PATH ) {
00040 excPathImportBindFailed ( in->getSectionID() );
00041 qError (errorString(),EXC_PATHIMPORTBINDFAILED);
00042 return;
00043 }
00044 mImport = in;
00045 mPath = path;
00046 mImport -> setID ( mPath );
00047 }
00048
00049
00050
00051
00052 void SaXManipulatePath::setFontPath (const QString& path) {
00053
00056
00057 if (! mImport) {
00058 return;
00059 }
00060 mImport -> setItem ( "FontPath",path );
00061 }
00062
00063
00064
00065
00066 void SaXManipulatePath::addFontPath (const QString& path) {
00067
00070
00071 if (! mImport) {
00072 return;
00073 }
00074 QString val;
00075 QString key ("FontPath");
00076 if (! mImport -> getItem (key).isEmpty()) {
00077 val = mImport -> getItem (key);
00078 }
00079 QTextOStream (&val) << "," << path;
00080 mImport -> setItem ( key,val );
00081 }
00082
00083
00084
00085
00086 void SaXManipulatePath::removeFontPath (const QString& path) {
00087
00091
00092 if (! mImport) {
00093 return;
00094 }
00095 QString val (path);
00096 QString key ("FontPath");
00097 if (! mImport -> getItem (key).isEmpty()) {
00098 mImport -> removeItem (key,val);
00099 }
00100 }
00101
00102
00103
00104
00105 void SaXManipulatePath::setLoadableModule (const QString& module) {
00106
00109
00110 if (! mImport) {
00111 return;
00112 }
00113 mImport -> setItem ( "ModuleLoad",module );
00114 }
00115
00116
00117
00118
00119 void SaXManipulatePath::setDisableModule (const QString& module) {
00120
00123
00124 if (! mImport) {
00125 return;
00126 }
00127 mImport -> setItem ( "ModuleDisable",module );
00128 }
00129
00130
00131
00132
00133 void SaXManipulatePath::addLoadableModule (const QString& module) {
00134
00137
00138 if (! mImport) {
00139 return;
00140 }
00141 QString val;
00142 QString key ("ModuleLoad");
00143 if (! mImport -> getItem (key).isEmpty()) {
00144 val = mImport -> getItem (key);
00145 }
00146 QTextOStream (&val) << "," << module;
00147 mImport -> setItem ( key,val );
00148 }
00149
00150
00151
00152
00153 void SaXManipulatePath::addDisableModule (const QString& module) {
00154
00157
00158 if (! mImport) {
00159 return;
00160 }
00161 QString val;
00162 QString key ("ModuleDisable");
00163 if (! mImport -> getItem (key).isEmpty()) {
00164 val = mImport -> getItem (key);
00165 }
00166 QTextOStream (&val) << "," << module;
00167 mImport -> setItem ( key,val );
00168 }
00169
00170
00171
00172
00173 void SaXManipulatePath::removeLoadableModule (const QString& module) {
00174
00178
00179 if (! mImport) {
00180 return;
00181 }
00182 QString val (module);
00183 QString key ("ModuleLoad");
00184 if (! mImport -> getItem (key).isEmpty()) {
00185 mImport -> removeItem (key,val);
00186 }
00187 }
00188
00189
00190
00191
00192 void SaXManipulatePath::removeDisableModule (const QString& module) {
00193
00197
00198 if (! mImport) {
00199 return;
00200 }
00201 QString val (module);
00202 QString key ("ModuleDisable");
00203 if (! mImport -> getItem (key).isEmpty()) {
00204 mImport -> removeItem (key,val);
00205 }
00206 }
00207
00208
00209
00210
00211 void SaXManipulatePath::setServerFlag (const QString& flag) {
00212
00215
00216 if (! mImport) {
00217 return;
00218 }
00219 mImport -> setItem ( "ServerFlags",flag );
00220 }
00221
00222
00223
00224
00225 void SaXManipulatePath::addServerFlag (const QString& flag) {
00226
00229
00230 if (! mImport) {
00231 return;
00232 }
00233 QString val;
00234 QString key ("ServerFlags");
00235 if (! mImport -> getItem (key).isEmpty()) {
00236 val = mImport -> getItem (key);
00237 }
00238 QTextOStream (&val) << "," << flag;
00239 mImport -> setItem ( key,val );
00240 }
00241
00242
00243
00244
00245 void SaXManipulatePath::removeServerFlag (const QString& flag) {
00246
00250
00251 if (! mImport) {
00252 return;
00253 }
00254 QString val (flag);
00255 QString key ("ServerFlags");
00256 if (! mImport -> getItem (key).isEmpty()) {
00257 mImport -> removeItem (key,val);
00258 }
00259 }
00260
00261
00262
00263
00264 QList<QString> SaXManipulatePath::getFontPaths (void) {
00265
00268
00269 if (! mImport) {
00270 QList<QString>* nope = new QList<QString>;
00271 return *nope;
00272 }
00273 QString paths = mImport -> getItem ("FontPath");
00274 return createList (paths);
00275 }
00276
00277
00278
00279
00280 QList<QString> SaXManipulatePath::getModules (void) {
00281
00284
00285 if (! mImport) {
00286 QList<QString>* nope = new QList<QString>;
00287 return *nope;
00288 }
00289 QString modules = mImport -> getItem ("ModuleLoad");
00290 return createList (modules);
00291 }
00292
00293
00294
00295
00296 QList<QString> SaXManipulatePath::getServerFlags (void) {
00297
00300
00301 if (! mImport) {
00302 QList<QString>* nope = new QList<QString>;
00303 return *nope;
00304 }
00305 QString modules = mImport -> getItem ("ServerFlags");
00306 return createList (modules);
00307 }
00308
00309
00310
00311
00312 QList<QString> SaXManipulatePath::createList ( const QString& data) {
00313
00316
00317 if (data.isEmpty()) {
00318 QList<QString>* nope = new QList<QString>;
00319 return *nope;
00320 }
00321 QList<QString> result;
00322 QStringList dataList = QStringList::split ( ",", data );
00323 for (QStringList::Iterator it=dataList.begin(); it!=dataList.end();++ it) {
00324 QString item(*it);
00325 result.append (item);
00326 }
00327 return result;
00328 }
00329 }