Salome HOME
Debug visu.py; add visu_split_views.py as example of view parameters management
[modules/visu.git] / src / VISU_I / VISU_View_i.hh
index a76f0c573de1b10278a8506ee81cfc6a8d799446..ae1f245b18a8c0028d32415012a5a9970a17d10b 100644 (file)
@@ -31,6 +31,8 @@
 
 class QWidget;
 
+class VisuGUI_TableDlg;
+
 class SalomeApp_Application;
 
 class SUIT_ViewManager;
@@ -46,42 +48,66 @@ namespace VISU
   class View_i : public virtual POA_VISU::View,
                  public virtual Storable
   {
-    SalomeApp_Application *myApplication;
-
   public:
-    QWidgetmyWorkspace;
-    SUIT_ViewWindowmyViewWindow;
+    QWidget         *myWorkspace;
+    SUIT_ViewWindow *myViewWindow;
 
   protected:
-    SUIT_ViewManager* myViewManager;
+    SalomeApp_Application *myApplication;
+    SUIT_ViewManager      *myViewManager;
 
     View_i (SalomeApp_Application *theApplication,
            SUIT_ViewManager* theViewManager);
     virtual ~View_i();
 
   public:
-    virtual void ShowPart( VISU::View::ViewRepresentation ViewRepr, CORBA::Boolean state  );
+    virtual void ShowPart( VISU::View::ViewRepresentation ViewRepr, CORBA::Boolean state );
     virtual CORBA::Boolean IsPartShown( VISU::View::ViewRepresentation ViewRepr );
+
+    // Begin: New methods for view parameters management
+    virtual void SplitRight();
+    virtual void SplitLeft();
+    virtual void SplitBottom();
+    virtual void SplitTop();
+
+    virtual void OnTop();
+
+    virtual void Attract   (VISU::View_ptr theView);
+    virtual void AttractAll(VISU::View_ptr theView);
+
+    virtual void SetRelativePositionInSplitter(CORBA::Double thePosition);
+    virtual void SetRelativeSizeInSplitter(CORBA::Double theSize);
+
+    virtual void SetRelativePositionX(CORBA::Double thePosition);
+    virtual void SetRelativePositionY(CORBA::Double thePosition);
+
+    virtual void SetRelativeSizeX(CORBA::Double theSize);
+    virtual void SetRelativeSizeY(CORBA::Double theSize);
+    // End: New methods for view parameters management
+
+    // Begin: Old methods for view parameters management, they don't work now
     virtual void SetViewWidth(CORBA::Long Width);
     virtual void SetViewHeight(CORBA::Long Height);
     virtual CORBA::Long GetViewWidth();
     virtual CORBA::Long GetViewHeight();
     virtual void SetViewPositionHorizontal(VISU::View::ViewPosition ViewPosHor);
     virtual void SetViewPositionVertical(VISU::View::ViewPosition ViewPosVer);
-
     virtual void SetRelativePosition( CORBA::Double x, CORBA::Double y );
     virtual void SetRelativeSize( CORBA::Double x, CORBA::Double y );
-
-    virtual void SetBackground(const SALOMEDS::Color& theColor);
-    virtual SALOMEDS::Color GetBackground();
     virtual void Minimize();
     virtual void Restore();
     virtual void Maximize();
+    // End: Old methods for view parameters management, they don't work now
+
+    virtual void SetBackground(const SALOMEDS::Color& theColor);
+    virtual SALOMEDS::Color GetBackground();
+
     virtual void EraseAll();
     virtual void DisplayAll();
     virtual void Erase(PrsObject_ptr thePrsObj);
     virtual void Display(PrsObject_ptr thePrsObj);
     virtual void DisplayOnly(PrsObject_ptr thePrsObj);
+
     virtual void Update();
 
     virtual CORBA::Boolean SavePicture(const char* theFileName);
@@ -140,8 +166,6 @@ namespace VISU
     virtual void DisplayOnly (PrsObject_ptr thePrsObj);
     virtual void Update();
 
-    virtual CORBA::Boolean SavePicture (const char* theFileName);
-
     virtual void FitAll();
 
     virtual void Close();
@@ -169,7 +193,7 @@ namespace VISU
 
     virtual void Close();
   protected:
-    //SALOMEGUI_TableDlg* myView;
+    VisuGUI_TableDlg* myView;
   public:
     virtual Storable* Create (VISU::Table_ptr theTable);
   };
@@ -203,8 +227,6 @@ namespace VISU
     virtual void DisplayOnly (PrsObject_ptr thePrsObj);
     virtual void Update();
 
-    virtual CORBA::Boolean SavePicture (const char* theFileName);
-
     //View3D interface
     virtual void FitAll();
     virtual void SetView (VISU::View3D::ViewType theType);