Salome HOME
PAL9828 - regression of Plot2d legend
[modules/visu.git] / src / VISUGUI / VisuGUI.h
index 4c5d475ea2198ca9023c28174d6fa86c72434180..87240116486c64870e66b995bf4859ca0a702d59 100644 (file)
@@ -1,28 +1,28 @@
 //  VISU VISUGUI : GUI of VISU component
 //
 //  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  This library is free software; you can redistribute it and/or 
-//  modify it under the terms of the GNU Lesser General Public 
-//  License as published by the Free Software Foundation; either 
-//  version 2.1 of the License. 
-// 
-//  This library is distributed in the hope that it will be useful, 
-//  but WITHOUT ANY WARRANTY; without even the implied warranty of 
-//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
-//  Lesser General Public License for more details. 
-// 
-//  You should have received a copy of the GNU Lesser General Public 
-//  License along with this library; if not, write to the Free Software 
-//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
-// 
-//  See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org 
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  This library is free software; you can redistribute it and/or
+//  modify it under the terms of the GNU Lesser General Public
+//  License as published by the Free Software Foundation; either
+//  version 2.1 of the License.
+//
+//  This library is distributed in the hope that it will be useful,
+//  but WITHOUT ANY WARRANTY; without even the implied warranty of
+//  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+//  Lesser General Public License for more details.
+//
+//  You should have received a copy of the GNU Lesser General Public
+//  License along with this library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
+//
+//  See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
 //
 //
 //
 //  File   : VisuGUI.h
-//  Author : Laurent CORNABE & Hubert ROLLAND 
+//  Author : Laurent CORNABE & Hubert ROLLAND
 //  Module : VISU
 //  $Header$
 
 
 #include "SalomeApp_Module.h"
 
-#include "SALOME_InteractiveObject.hxx"
-
-#include "VISUConfig.hh"
-
-#include "SALOMEconfig.h"
-#include CORBA_SERVER_HEADER(SALOMEDS)
-#include CORBA_SERVER_HEADER(VISU_Gen)
-#include CORBA_SERVER_HEADER(MED_Gen)
-
-class SUIT_Desktop;
-
-namespace VISU{
-  class ScalarMap_i;
-}
+class SUIT_ViewManager;
 
 class VisuGUI: public SalomeApp_Module
 {
   Q_OBJECT;
+
 public:
 
   VisuGUI();
   virtual ~VisuGUI();
 
+  virtual LightApp_Displayer*    displayer();
   virtual void initialize( CAM_Application* );
   virtual void windows( QMap<int, int>& ) const;
   virtual void viewManagers( QStringList& ) const;
+
   virtual QString engineIOR() const;
 
   virtual void  studyActivated();
 
   virtual void  contextMenuPopup( const QString& theClient, QPopupMenu* theMenu, QString& theTitle );
 
+  virtual void createPreferences();
+  virtual void preferencesChanged( const QString&, const QString& );
+
+  virtual
+  SUIT_ViewManager*
+  getViewManager(const QString& theType, 
+                const bool theIsCreate);
+
 public slots:
   virtual bool deactivateModule( SUIT_Study* );
   virtual bool activateModule( SUIT_Study* );
@@ -72,6 +70,7 @@ protected slots:
   void OnExploreMEDFile();
   void OnImportTableFromFile();
   void OnExportTableToFile();
+  void OnImportMedField();
 
   void OnCreateMesh();
   void OnCreateScalarMap();
@@ -81,16 +80,23 @@ protected slots:
   void OnCreateCutPlanes();
   void OnCreateCutLines();
   void OnCreateStreamLines();
+  void OnCreatePlot3D();
   void OnCreateManyMesh();
   void OnCreatePlot2dView();
 
-  void OnEditPrs();
-  void OnDeletePrs();
+  void OnEditScalarMap();
+  void OnEditDeformedShape();
+  void OnEditCutPlanes();
+  void OnEditCutLines();
+  void OnEditIsoSurfaces();
+  void OnEditVectors();
+  void OnEditStreamLines();
+  void OnEditPlot3D();
 
-  void OnDisplayPrs();
-  void OnDisplayOnlyPrs();
-  void OnErasePrs();
-  void OnEraseAll();
+  virtual void OnDisplayPrs();
+  virtual void OnDisplayOnlyPrs();
+  virtual void OnErasePrs();
+  virtual void OnEraseAll();
 
   void OnMakeSurfaceframe();
   void OnMakeInsideframe();
@@ -99,6 +105,9 @@ protected slots:
   void OnMakePoints();
   void OnMakeShrink();
 
+  void OnSetShadingOn();
+  void OnSetShadingOff();
+
   void OnChangeColor();
   void OnChangeWireframeColor();
   void OnChangeOpacity();
@@ -106,39 +115,45 @@ protected slots:
 
   void OnShowTable();
   void OnCreateTable();
-  void OnDeleteObject();
+  void OnDeleteObjects();
   void OnPlotData();
   void OnCurveProperties();
   void OnClearContainer();
   void OnEditContainer();
 
+  void OnMergeScalarBars();
+  void OnFreeScalarBars();
+
   void OnSaveViewParams();
   void OnRestoreViewParams();
-  void OnDeleteViewParams();
 
   void OnRename();
+  void OnClippingPlanes();
   void OnSweep();
   void OnTimeAnimation();
+  void OnShowAnimation();
 
   void OnCopyPresentation();
 
   void OnSelectionInfo();
 
-  void OnScaling();
+  void OnTranslatePrs();
+  void OnArrangeActors();
 
+  void OnScaling();
+  void OnCubeAxes();
 
 protected:
-  virtual SalomeApp_Selection* createSelection() const;
+  virtual LightApp_Selection* createSelection() const;
 
-  void ErasePrs (CORBA::Object_ptr theObject, bool theUpdate = true);
-  void ChangeRepresentation (VISU::PresentationType theType);
-  void CreateMesh (const Handle(SALOME_InteractiveObject)& theIO);
+private:
+  void createActions();
+  void createMenus();
+  void createToolBars();
+  void createPopupMenus();
 
 private:
-  void                         createActions();
-  void                         createMenus();
-  void                         createToolBars();
-  void                         createPopupMenus();
+  LightApp_Displayer*  myDisplayer;
 };
 
 #endif