home *** CD-ROM | disk | FTP | other *** search
/ Clickx 115 / Clickx 115.iso / software / tools / windows / tails-i386-0.16.iso / live / filesystem.squashfs / usr / include / scribus-ng / scpaths.h < prev    next >
Encoding:
C/C++ Source or Header  |  2009-02-13  |  3.1 KB  |  97 lines

  1. /*
  2. For general Scribus (>=1.3.2) copyright and licensing information please refer
  3. to the COPYING file provided with the program. Following this notice may exist
  4. a copyright and/or license notice that predates the release of Scribus 1.3.2
  5. for which a new license (GPL+exception) is in place.
  6. */
  7. #ifndef SCPATHS_H
  8. #define SCPATHS_H
  9.  
  10. #include <QString>
  11. #include <QStringList>
  12. #include "scribusapi.h"
  13.  
  14. class SCRIBUS_API ScPaths
  15. {
  16. public:
  17.     /**
  18.      * @brief Get a reference to the ScPaths instance
  19.      *        creating it if necessary.
  20.      * @sa ScPaths::destroy()
  21.      */
  22.     static const ScPaths& instance();
  23.     /**
  24.      * @brief Destroy the ScPaths instance, if any.
  25.      * @sa ScPaths::instnace()
  26.      */
  27.     static void destroy();
  28.  
  29.     /*** The separator used between path list entries in environment variables */
  30.     static const char envPathSeparator;
  31.  
  32.     /** @brief Return path to documentation directory */
  33.     const QString& docDir() const;
  34.     /** @brief Return path to icons directory*/
  35.     const QString& iconDir() const;
  36.     /** @brief Return path to the Scribus font directory */
  37.     const QString& fontDir() const;
  38.     /** @brief Return path to lib directory containing translations,
  39.      *         keysets, etc. */
  40.     const QString& libDir() const;
  41.     /** @brief Return path to dir containing plugins. */
  42.     const QString& pluginDir() const;
  43.     /** @brief Return path to dir containing sample Python scripts */
  44.     const QString& sampleScriptDir() const;
  45.     /** @brief Return path to dir containing "official" Python scripts */
  46.     const QString& scriptDir() const;
  47.     /** @brief Return path to containing stock templates */
  48.     const QString& templateDir() const;
  49.     /** @brief Return path to the Scribus share directory */
  50.     const QString& shareDir() const;
  51.  
  52.     /** @brief Return path to the translations directory */
  53.     QString translationDir() const;
  54.     /** @brief Return path to the dicts directory */
  55.     QString dictDir() const;
  56.  
  57.     /** @brief Return paths to system font directories*/
  58.     static QStringList getSystemFontDirs(void);
  59.     /** @brief Return paths to system icc profiles directories*/
  60.     static QStringList getSystemProfilesDirs(void);
  61.     /** @brief Return paths to system create project directories*/
  62.     static QStringList getSystemCreateSwatchesDirs(void);
  63.  
  64.     /** @brief Return path to application data dir*/
  65.     static QString getApplicationDataDir(void);
  66.     /** @brief Return path to user documents*/
  67.     static QString getUserDocumentDir(void);
  68.     /** @brief Return path to directory used for temporary files*/
  69.     static QString getTempFileDir(void);
  70.     /** @brief Return path to Contents OSX subdirectory*/
  71.     QString bundleDir(void) const;
  72.  
  73. protected:
  74.     /** @brief Constructor. Use ScPaths::instance() instead. */
  75.     ScPaths();
  76.     /** @brief Destructor. Use ScPaths::destroy() instead. */
  77.     ~ScPaths();
  78.  
  79.     /** @brief Return path to a special directory, should be used only on Windows*/
  80.     static QString getSpecialDir(int folder);
  81.  
  82.     /** @brief Pointer to existing instance of ScPaths, if any. */
  83.     static ScPaths* m_instance;
  84.  
  85.     // Members to hold system paths
  86.     QString m_docDir;
  87.     QString m_iconDir;
  88.     QString m_fontDir;
  89.     QString m_libDir;
  90.     QString m_pluginDir;
  91.     QString m_sampleScriptDir;
  92.     QString m_scriptDir;
  93.     QString m_templateDir;
  94.     QString m_shareDir;
  95. };
  96. #endif
  97.