Salome HOME
bos #29458 Salome on demand
[modules/gui.git] / src / Qtx / QtxResourceMgr.h
index 6abab30100c71d21ec4b00239827dbd5cf35a9ce..3694ae9d6968c42ddf0a022ccad36de9442edd7b 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2014  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2022  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
@@ -53,6 +53,8 @@ class QTX_EXPORT QtxResourceMgr
 {
   class IniFormat;
   class XmlFormat;
+  class JsonFormat;
+  class SalomexFormat;
   class Resources;
 
 public:
@@ -71,6 +73,7 @@ public:
   } WorkingMode;
 
 public:
+  QtxResourceMgr();
   QtxResourceMgr( const QString&, const QString& = QString() );
   virtual ~QtxResourceMgr();
 
@@ -86,7 +89,7 @@ public:
   void             clear();
 
   WorkingMode      workingMode() const;
-  void             setWorkingMode( WorkingMode );
+  WorkingMode      setWorkingMode( WorkingMode );
 
   bool             value( const QString&, const QString&, int& ) const;
   bool             value( const QString&, const QString&, double& ) const;
@@ -105,7 +108,7 @@ public:
   bool             booleanValue( const QString&, const QString&, const bool = false ) const;
   QFont            fontValue( const QString&, const QString&, const QFont& = QFont() ) const;
   QColor           colorValue( const QString&, const QString&, const QColor& = QColor() ) const;
-  QString          stringValue( const QString&, const QString&, const QString& = QString() ) const;
+  QString          stringValue( const QString&, const QString&, const QString& = QString(), const bool = true ) const;
   QByteArray       byteArrayValue( const QString&, const QString&, const QByteArray& = QByteArray() ) const;
   QLinearGradient  linearGradientValue( const QString&, const QString&, const QLinearGradient& = QLinearGradient() ) const;
   QRadialGradient  radialGradientValue( const QString&, const QString&, const QRadialGradient& = QRadialGradient() ) const;
@@ -141,6 +144,10 @@ public:
   QString          option( const QString& ) const;
   void             setOption( const QString&, const QString& );
 
+  QStringList      constants() const;
+  QString          constant( const QString& ) const;
+  void             setConstant( const QString&, const QString& );
+
   QPixmap          defaultPixmap() const;
   virtual void     setDefaultPixmap( const QPixmap& );
 
@@ -157,12 +164,14 @@ public:
   void             removeTranslators( const QString& );
   void             loadTranslator( const QString&, const QString& );
   void             loadTranslators( const QString&, const QStringList& );
+  void             addTranslator( const QString&, QTranslator* );
 
   QString          path( const QString&, const QString&, const QString& ) const;
 
   bool             load();
   bool             import( const QString& );
   bool             save();
+  bool             addResource( const QString& );
 
   QStringList      sections() const;
   QStringList      sections(const QRegExp&) const;
@@ -173,7 +182,11 @@ public:
 
   void             refresh();
 
+  QString          language( const QString& = QString() ) const;
+
 protected:
+  virtual QString  defaultLanguage() const;
+
   virtual void     setDirList( const QStringList& );
   virtual void     setResource( const QString&, const QString&, const QString& );
 
@@ -198,6 +211,7 @@ private:
   QStringList      myDirList;                 //!< list of resources directories
   FormatList       myFormats;                 //!< list of formats
   OptionsMap       myOptions;                 //!< options map
+  OptionsMap       myConstants;               //!< constants map
   ResList          myResources;               //!< resources list
   bool             myCheckExist;              //!< "check existance" flag
   TransListMap     myTranslator;              //!< map of loaded translators