Salome HOME
untabify
[modules/geom.git] / src / GEOMGUI / GeometryGUI.h
index 36d06fd55b8a1f4d6df6ce79d0d8327c24bc49d5..2cbd9d1dd4da1c1c461239c4cfd807ee982a26c9 100644 (file)
@@ -41,6 +41,7 @@
 
 // OCCT Includes
 #include <gp_Ax3.hxx>
+#include <Graphic3d_HArray1OfBytes.hxx>
 
 // IDL headers
 #include "SALOMEconfig.h"
@@ -54,6 +55,7 @@ class GEOMGUI_OCCSelector;
 class LightApp_VTKSelector;
 class LightApp_Selection;
 class SUIT_ViewManager;
+class SalomeApp_Study;
 
 //=================================================================================
 // class    : GeometryGUI
@@ -74,6 +76,8 @@ public:
   virtual void                initialize( CAM_Application* );
   virtual QString             engineIOR() const;
 
+  static Handle(Graphic3d_HArray1OfBytes) getTexture( SalomeApp_Study*, int, int&, int& );
+
   static bool                 InitGeomGen();   //BugID IPAL9186: SRN: To be called by Python scripts
 
   static  GEOM::GEOM_Gen_var  GetGeomGen();//        { return GeometryGUI::myComponentGeom; }
@@ -81,8 +85,6 @@ public:
   static CORBA::Object_var    ClientSObjectToObject (_PTR(SObject) theSObject);
   static SALOMEDS::Study_var  ClientStudyToStudy (_PTR(Study) theStudy);
 
-  static char*                JoinObjectParameters(const QStringList& theParametersList);
-
   GEOM_Client&                GetShapeReader()    { return myShapeReader; }
   Standard_CString&           GetFatherior()      { return myFatherior; }
   //void                        SetState( const int state ) { myState = state; }
@@ -139,6 +141,7 @@ protected slots:
 private slots:
   void                        OnGUIEvent();
   void                        onWindowActivated( SUIT_ViewWindow* );
+  void                        onViewAboutToShow();
 
 signals :
   void                        SignalDeactivateActiveDialog();
@@ -160,7 +163,12 @@ private:
 
 public:
   static GEOM::GEOM_Gen_var   myComponentGeom;   // GEOM engine!!!
+
 private:  
+
+  typedef QMap<long, Handle(Graphic3d_HArray1OfBytes)> TextureMap;
+  typedef QMap<long, TextureMap> StudyTextureMap;
+  
   GUIMap                      myGUIMap;          // GUI libraries map
   QDialog*                    myActiveDialogBox; // active dialog box
   GEOM_Client                 myShapeReader;     // geom shape reader
@@ -168,6 +176,7 @@ private:
   int                         myState;           // identify a method
   gp_Ax3                      myWorkingPlane;
   QMap<int,QString>           myRules;           // popup rules
+  static StudyTextureMap      myTextureMap;      // texture map
 
   QList<GEOMGUI_OCCSelector*>  myOCCSelectors;
   QList<LightApp_VTKSelector*> myVTKSelectors;
@@ -175,7 +184,7 @@ private:
   LightApp_Displayer*         myDisplayer;
   int                         myLocalSelectionMode; //Select Only
 
-friend class DisplayGUI;
+  friend class DisplayGUI;
 };
 
 #endif