Salome HOME
bos #29458 Salome on demand
[modules/gui.git] / src / CAM / CAM_Application.h
index 3dc79da71e57e1171fd11ef7fdf0ba3775e3cf9e..daa7624e567e1e0d5a4233adc9802daaa32c0663 100644 (file)
@@ -97,21 +97,25 @@ protected:
 
   virtual bool        abortAllOperations();
 
-private:
-  void                readModuleList();
+protected:
+  bool                appendModuleInfo( const QString& );
+  void                removeModuleInfo( const QString& );
 
 private:
-  enum { stUnknown = 0, stNoGui, stInaccessible, stReady };
-  typedef struct { 
+  enum { stInvalid = -1, stUnknown = 0, stNoGui, stInaccessible, stReady };
+  struct ModuleInfo
+  {
     QString name, title, icon, library, version, description, displayer;
     int status;
-  } ModuleInfo;
-  typedef QList<ModuleInfo> ModuleInfoList;
+    ModuleInfo() : status( stInvalid ) {}
+  };
+  void                readModuleList();
 
 private:
+  typedef QList<ModuleInfo> ModuleInfoList;
+  static ModuleInfoList myInfoList;      //!< modules info list
   CAM_Module*           myModule;        //!< active module
   ModuleList            myModules;       //!< loaded modules list
-  static ModuleInfoList myInfoList;      //!< modules info list
   bool                  myAutoLoad;      //!< auto loading flag
   bool                  myBlocked;       //!< "blocked" flag, internal usage
 };