X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_Module.h;h=8780c389adf3488c66f0f626d97dfe01a39e1dc1;hb=a0964e8c4caecf35f149dbc669714901c5fd2336;hp=4cf3a97bfbeaffa47d808822fb0426f121b7b5bb;hpb=11a04ed9cc6369f95bc23df31fff226decd69d10;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_Module.h b/src/HYDROGUI/HYDROGUI_Module.h index 4cf3a97b..8780c389 100644 --- a/src/HYDROGUI/HYDROGUI_Module.h +++ b/src/HYDROGUI/HYDROGUI_Module.h @@ -1,8 +1,4 @@ -// 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 -// +// Copyright (C) 2014-2015 EDF-R&D // 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 @@ -25,13 +21,19 @@ #include -#include +#ifdef WIN32 + #pragma warning ( disable: 4251 ) +#endif +#include #include #include -class QGraphicsSceneMouseEvent; +#ifdef WIN32 + #pragma warning ( default: 4251 ) +#endif +class QGraphicsSceneMouseEvent; class GraphicsView_Viewer; class OCCViewer_Viewer; class SVTK_Viewer; @@ -39,6 +41,8 @@ class SVTK_Viewer; class SUIT_ViewWindow; class SUIT_ViewManager; +class Handle(HYDROData_StricklerTable); + class HYDROGUI_DataModel; class HYDROGUI_Displayer; class HYDROGUI_OCCDisplayer; @@ -62,12 +66,8 @@ class HYDROGUI_Module : public LightApp_Module CT_ArrowCursor = 0, CT_UpArrowCursor, CT_CrossCursor, - CT_IBeamCursor, CT_WaitCursor, - CT_BusyCursor, - CT_ForbiddenCursor, - CT_PointingHandCursor, - CT_WhatsThisCursor, + CT_IBeamCursor, CT_SizeVerCursor, CT_SizeHorCursor, CT_SizeBDiagCursor, @@ -75,6 +75,10 @@ class HYDROGUI_Module : public LightApp_Module CT_SizeAllCursor, CT_SplitVCursor, CT_SplitHCursor, + CT_PointingHandCursor, + CT_ForbiddenCursor, + CT_WhatsThisCursor, + CT_BusyCursor, CT_OpenHandCursor, CT_ClosedHandCursor, CT_User @@ -113,6 +117,8 @@ public: typedef QList ListOfVTKPrs; typedef QMap ViewId2ListOfVTKPrs; + typedef QMap ViewId2StricklerTable; + public: HYDROGUI_Module(); virtual ~HYDROGUI_Module(); @@ -151,6 +157,9 @@ public: void setObjectVisible( const int theViewId, const Handle(HYDROData_Entity)& theObject, const bool theState ); + + virtual void preferencesChanged( const QString&, const QString& ); + /** * Set IsToUpdate flag for all presentations of the given object to recompute them during * the next viewer(s) updating. @@ -202,6 +211,50 @@ public: QStack& getActiveOperations(); HYDROGUI_Operation* activeOperation(); + /** + * Returns the cursor defined for edition operations in module preferences. + * \return specific cursor + */ + QCursor getPrefEditCursor() const; + + void clearCache(); + + /** + * Returns Strickler table used for Land Cover scalar map coloring in the given view. + * @param theViewId the view id + * @return the Strickler table used for scalar map coloring of Land Covers in the given view; + null - if scalar map coloring is off for the view + */ + Handle(HYDROData_StricklerTable) getLandCoverColoringTable( const int theViewId ) const; + + /** + * Set Strickler table to be used for Land Cover scalar map coloring in the given view. + * @param theViewId the view id + * @param theTable the Strickler table + */ + void setLandCoverColoringTable( const int theViewId, + const Handle(HYDROData_StricklerTable)& theTable ); + /** + * Set Land Cover scalar map coloring mode off for the given view. + * @param theViewId the view id + */ + void setLandCoversScalarMapModeOff( const int theViewId ); + + /** + * Check if Land Cover scalar map coloring mode is on in the given view. + * @param theViewId the view id + * @return true if the mode is on, false if the mode is off + */ + bool isLandCoversScalarMapModeOn( const int theViewId ) const; + + /** + * Set object as removed. + * @param theObject the removed object + */ + void setObjectRemoved( const Handle(HYDROData_Entity)& theObject ); + + void enableLCMActions(); + protected: CAM_DataModel* createDataModel(); @@ -277,6 +330,8 @@ private: bool myIsUpdateEnabled; QStringList myGeomObjectsToImport; ///< entries of GEOM objects to be imported + + ViewId2StricklerTable myLandCoverColoringMap; }; #endif