-// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2015 CEA/DEN, EDF R&D, OPEN CASCADE
//
// Copyright (C) 2003-2007 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.
+// version 2.1 of the License, or (at your option) any later version.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
class HYDROGUI_Shape;
class Handle(AIS_InteractiveContext);
class OCCViewer_ViewManager;
+class OCCViewer_Viewer;
/**
* \class HYDROGUI_OCCDisplayer
virtual QString GetType() const;
/**
- * \brief Add the top z layer and returns its index.
+ * \brief Add the z layer for preview and returns its index.
* \param theMgr OCC view manager
*/
- int AddTopZLayer( OCCViewer_ViewManager* theMgr );
+ int AddPreviewZLayer( OCCViewer_ViewManager* theMgr );
/**
* \brief Removes the z layer.
void RemoveZLayer( OCCViewer_ViewManager* theMgr,
const int theLayer );
+ void SetToUpdateColorScale();
+
protected:
/**
* \brief Erase all viewer objects.
*/
void purgeObjects( const int theViewerId );
+ void UpdateColorScale( const OCCViewer_Viewer* );
+
private:
/**
* \brief Creates new OCC shape.
* \param theViewerId viewer identifier
- * \param theContext context of OCC viwer
+ * \param theContext context of OCC viewer
* \param theObject data model object
* \return pointer to new created shape
*/
HYDROGUI_Shape* createShape( const int theViewerId,
const Handle(AIS_InteractiveContext)& theContext,
const Handle(HYDROData_Entity)& theObject );
+
+ /**
+ * \brief Display the specified object.
+ * \param theObject the object to display
+ * \param theViewer the viewer for displaying
+ * \param theIsForced the flag used to update the object shape
+ * \return true in case of success
+ */
+ bool Display( const Handle(HYDROData_Entity)& theObject,
+ const OCCViewer_Viewer* theViewer,
+ const bool theIsForced );
+
+ /**
+ * \brief Set Z layer to the shape corresponding to the HYDRO data object.
+ * \param theViewer the viewer for Z layer setting
+ * \param theObject the HYDRO object
+ * \param theZLayerId the Z layer ID
+ */
+ void SetZLayer( const OCCViewer_Viewer* theViewer,
+ const Handle(HYDROData_Entity)& theObject,
+ const int theZLayerId );
+
+private:
+ bool myToUpdateColorScale;
};
#endif