path.h

00001 /**************
00002 FILE          : path.h
00003 ***************
00004 PROJECT       : SaX2 - library interface [header]
00005               :
00006 AUTHOR        : Marcus Schäfer <ms@suse.de>
00007               :
00008 BELONGS TO    : SaX2 - SuSE advanced X11 configuration 
00009               : 
00010               :
00011 DESCRIPTION   : native C++ class library to access SaX2
00012               : functionality. Easy to use interface for
00013               : //.../
00014               : - importing/exporting X11 configurations
00015               : - modifying/creating X11 configurations 
00016               : ---
00017               :
00018               :
00019 STATUS        : Status: Development
00020 **************/
00021 #ifndef SAX_PATH_H
00022 #define SAX_PATH_H 1
00023 
00024 //====================================
00025 // Includes...
00026 //------------------------------------
00027 #include "import.h"
00028 
00029 namespace SaX {
00030 //====================================
00031 // Interface class for dlopen ability
00032 //------------------------------------
00040 class SaXManipulatePathIF : public SaXException {
00041         public:
00042         virtual void setFontPath ( const QString& ) = 0;
00043         virtual void addFontPath ( const QString& ) = 0;
00044         virtual void removeFontPath ( const QString& ) = 0;
00045 
00046         public:
00047         virtual void setLoadableModule ( const QString& ) = 0;
00048         virtual void addLoadableModule ( const QString& ) = 0;
00049         virtual void removeLoadableModule ( const QString& ) = 0;
00050 
00051         public:
00052         virtual void setServerFlag ( const QString& ) = 0;
00053         virtual void addServerFlag ( const QString& ) = 0;
00054         virtual void removeServerFlag ( const QString& ) = 0;
00055 
00056         public:
00057         virtual QList<QString> getFontPaths   ( void ) = 0;
00058         virtual QList<QString> getModules     ( void ) = 0;
00059         virtual QList<QString> getServerFlags ( void ) = 0;
00060 
00061         public:
00062         virtual ~SaXManipulatePathIF ( void ) { }
00063 };
00064 //====================================
00065 // Class SaXManipulatePath...
00066 //------------------------------------
00112 class SaXManipulatePath : public SaXManipulatePathIF {
00113         private:
00114         SaXImport* mImport;
00115         int mPath;
00116 
00117         private:
00118         QList<QString> createList ( const QString& );
00119 
00120         public:
00121         void setFontPath ( const QString& );
00122         void addFontPath ( const QString& );
00123         void removeFontPath ( const QString& );
00124 
00125         public:
00126         void setLoadableModule ( const QString& );
00127         void addLoadableModule ( const QString& );
00128         void removeLoadableModule ( const QString& );
00129 
00130         public:
00131         void setServerFlag ( const QString& );
00132         void addServerFlag ( const QString& );
00133         void removeServerFlag ( const QString& );
00134 
00135         public:
00136         QList<QString> getFontPaths   ( void );
00137         QList<QString> getModules     ( void );
00138         QList<QString> getServerFlags ( void );
00139 
00140         public:
00141         SaXManipulatePath ( SaXImport*, int = 0 );
00142 };
00143 } // end namespace
00144 #endif

Generated on Mon Jun 19 12:42:49 2006 for libsax by  doxygen 1.4.6