// 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
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
//
//
// File : DisplayGUI.h
// Author : Damien COQUERET
// Module : GEOM
-// $Header:
#ifndef DISPLAYGUI_H
#define DISPLAYGUI_H
+#include "GEOMGUI.h"
#include "GEOMBase.h"
+#if defined WNT && defined WIN32 && defined SALOME_WNT_EXPORTS
+#define DISPLAYGUI_WNT_EXPORT __declspec( dllexport )
+#else
+#define DISPLAYGUI_WNT_EXPORT
+#endif
+
//=================================================================================
// class : GEOMBase_Display
// purpose :
//=================================================================================
-class DisplayGUI : public QObject
+//class QAD_ViewFrame;
+class SUIT_ViewWindow;
+class DisplayGUI : public GEOMGUI
{
- Q_OBJECT /* for QT compatibility */
-
-public :
- DisplayGUI();
+public:
+ DisplayGUI( GeometryGUI* parent );
~DisplayGUI();
- static bool OnGUIEvent(int theCommandID, QAD_Desktop* parent);
- static void BuildPresentation(const Handle(SALOME_InteractiveObject)& theIO);
-
- void OnDisplayAll(bool onlyPreviousDisplayedObject = false);
- void OnVTKDisplayOnly();
- void OnDisplayOnly();
- void OnErase();
+ // Dispatch menu command
+ bool OnGUIEvent(int theCommandID, SUIT_Desktop* parent);
- /* Method opening context for any sub shape selection */
- bool PrepareSubShapeSelection(const int SubShapeType, Standard_Integer& returnLocalContextId);
- /* Method opening context for sub shape selection on an argument shape */
- bool PrepareSubShapeSelectionArgumentShape(const TopoDS_Shape& aShape, const int SubShapeType,
- Standard_Integer& returnLocalContextId);
+ // Display all GEOM objects
+ void DisplayAll();
+ // Erase all GEOM objects
+ void EraseAll();
+ // Display selected GEOM objects
+ void Display();
+ // Display selected GEOM objects and erase other
+ void DisplayOnly();
+ // Erase selected GEOM objects
+ void Erase();
- GEOMBase* myGeomBase;
- GEOMContext* myGeomGUI;
- GEOM::GEOM_Gen_var myGeom; /* Current Geom Component */
+ // DISPLAY MODE methods : 0 - wireframe, 1 - shading
+ // Set display mode for the viewer (current viewer if <viewWindow> - 0 )
+ void SetDisplayMode( const int mode, SUIT_ViewWindow* viewWindow = 0 );
+ // Get display mode of the viewer (current viewer if <viewWindow> - 0 )
+ int GetDisplayMode( SUIT_ViewWindow* viewWindow = 0 );
+ // Invert display mode ( shadin <-> wireframe ) for the viewer
+ // (current viewer if <viewWindow> = 0 )
+ void InvertDisplayMode( SUIT_ViewWindow* viewWindow = 0 );
+ // Set display mode for selected objects in the viewer given
+ // (current viewer if <viewWindow> = 0 )
+ void ChangeDisplayMode( const int mode, SUIT_ViewWindow* viewWindo = 0 );
};
#endif