X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_Tool.h;h=90756880a9589c23d1cf8e1fbf7635d33585ec86;hb=cf931a8000d1843ac95a937aa5903523ff066cf1;hp=4ea4039edd77b2fec67829cf454ccb8205fad0db;hpb=e423cfd15575a1feb27386b5516bd0c83bed5fe9;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_Tool.h b/src/HYDROGUI/HYDROGUI_Tool.h index 4ea4039e..90756880 100644 --- a/src/HYDROGUI/HYDROGUI_Tool.h +++ b/src/HYDROGUI/HYDROGUI_Tool.h @@ -19,343 +19,46 @@ #ifndef HYDROGUI_TOOL_H #define HYDROGUI_TOOL_H -#include - -#include -#include - -#include -#include -#include -#include - -#include - -// IDL includes -#include -#include CORBA_SERVER_HEADER(GEOM_Gen) - -class SUIT_ViewManager; -class OCCViewer_ViewFrame; - -class HYDROGUI_DataModel; -class HYDROGUI_Module; -class HYDROGUI_Prs; - +#include +#include + +class TCollection_AsciiString; +class HYDROData_Document; +class Image_PixMap; +class TCollection_HAsciiString; +class TCollection_HExtendedString; class QDockWidget; -class Handle(HYDROData_Document); +class QImage; +class QWidget; -/** - * \class HYDROGUI_Tool - * \brief This class contains several useful methods. - */ -class HYDROGUI_Tool +namespace HYDROGUI_Tool { -public: - /** - * \brief Convert \a TCollection_AsciiString to \a QString - */ - static QString ToQString( const TCollection_AsciiString& ); - - /** - * \brief Convert \a TCollection_ExtendedString to \a QString - */ - static QString ToQString( const TCollection_ExtendedString& ); - - /** - * \brief Convert \a Handle_TCollection_HAsciiString to \a QString - */ - static QString ToQString( const Handle(TCollection_HAsciiString)& ); - - /** - * \brief Convert \a Handle_TCollection_HExtendedString to \a QString - */ - static QString ToQString( const Handle(TCollection_HExtendedString)& ); - - /** - * \brief Convert \a QString to \a TCollection_AsciiString - */ - static TCollection_AsciiString ToAsciiString( const QString& ); - - /** - * \brief Convert \a QString to \a TCollection_ExtendedString - */ - static TCollection_ExtendedString ToExtString( const QString& ); - - /** - * \brief Convert \a QString to \a Handle_TCollection_HAsciiString - */ - static Handle(TCollection_HAsciiString) ToHAsciiString( const QString& ); - - /** - * \brief Convert \a QString to \a Handle_TCollection_HExtendedString - */ - static Handle(TCollection_HExtendedString) ToHExtString( const QString& ); - - /** - * \brief Get the active study id. - * \return active study id - */ - static int GetActiveStudyId(); - - /** - * \brief Get path to the temporary directory. - * \param theToCreate flag used to create a directory if it doesn't exist - * \return path - */ - static QString GetTempDir( const bool theToCreate ); - - /** - * \brief Set the specified view manager to be active on the desktop. - * \param theModule module - * \param theViewManager view manager - */ - static void SetActiveViewManager( HYDROGUI_Module* theModule, - SUIT_ViewManager* theViewManager ); - - /** - * \brief Returns TRUE if object can be shown on the viewer. - * \param theObject data model object to check - * \param theViewerType viewer type - */ - static bool IsObjectHasPresentation( const Handle(HYDROData_Entity)& theObject, - const QString& theViewerType = "" ); - -/** - * \brief Get sub-objects to build presentations. - * \param theModule module - * \param theSeq sequence of sub-objects - */ - static void GetPrsSubObjects( HYDROGUI_Module* theModule, - HYDROData_SequenceOfObjects& theSeq ); - - /** - * \brief Get presentation built for specified data object. - * \param theObj data object - * \param theObjects list of existing presentations - * \return presentation - */ - static HYDROGUI_Prs* GetPresentation( const Handle(HYDROData_Entity)& theObj, - const GraphicsView_ObjectList& theObjects ); - - /** - * \brief Get list of HYDRO presentations from the specified viewport. - * \param theViewPort viewport - * \return list of HYDRO presentations - */ - static GraphicsView_ObjectList GetPrsList( GraphicsView_ViewPort* theViewPort ); - - /** - * \brief Get list of the selected data objects. - * \param theModule module - * \return list of the selected data objects - */ - static HYDROData_SequenceOfObjects GetSelectedObjects( HYDROGUI_Module* theModule ); - - /** - * \brief Get the selected data object (first in the selected list). - * \param theModule module - * \return selected data object - */ - static Handle(HYDROData_Entity) GetSelectedObject( HYDROGUI_Module* theModule ); - - /** - * \brief Get the geometry data objects from document. - * \param theModule module - * \return sequence of data objects - */ - static HYDROData_SequenceOfObjects GetGeometryObjects( HYDROGUI_Module* theModule ); - - /** - * \brief Get kind of objects the selected partition contains. - * \param theModule module - * \return object kind - */ - static ObjectKind GetSelectedPartition( HYDROGUI_Module* theModule ); + QString ToQString( const TCollection_AsciiString& ); + QString ToQString( const TCollection_ExtendedString& ); + QString ToQString( const Handle(TCollection_HAsciiString)& ); + QString ToQString( const Handle(TCollection_HExtendedString)& ); + TCollection_AsciiString ToAsciiString( const QString& ); + TCollection_ExtendedString ToExtString( const QString& ); + Handle(TCollection_HAsciiString) ToHAsciiString( const QString& ); + Handle(TCollection_HExtendedString) ToHExtString( const QString& ); + + QString GetTempDir( const bool theToCreate ); + + QDockWidget* WindowDock( QWidget* wid ); + + QStringList FindExistingObjectsNames( const Handle(HYDROData_Document)& theDoc, + const ObjectKind theObjectKind, + bool isCheckValidProfile = false ); + QString GetCoordinateString( const double theNumber, bool isInLocale ); - /** - * \brief Find the data object with the specified name. - * \param theModule module - * \param theName name - * \param theObjectKind kind of object - * \return data object - */ - static Handle(HYDROData_Entity) FindObjectByName( HYDROGUI_Module* theModule, - const QString& theName, - const ObjectKind theObjectKind = KIND_UNKNOWN ); - - /** - * \brief Find the data objects with the specified names. - * \param theModule module - * \param theNames list of names - * \param theObjectKind kind of object - * \return list of data objects - */ - static HYDROData_SequenceOfObjects FindObjectsByNames( HYDROGUI_Module* theModule, - const QStringList& theNames, - const ObjectKind theObjectKind = KIND_UNKNOWN ); - - /** - * \brief Generate name for new object. - * \param theModule module - * \param thePrefix name prefix - * \param theUsedNames list of already used names - * \param theIsTryToUsePurePrefix if true - the prefix will be returned if the name equal to the prefix is not busy - * \return generated name - */ - static QString GenerateObjectName( HYDROGUI_Module* theModule, - const QString& thePrefix, - const QStringList& theUsedNames = QStringList(), - const bool theIsTryToUsePurePrefix = false ); - - /** - * \brief Get id of the active view. - * \param theModule module - * \return view id - */ - static size_t GetActiveViewId( HYDROGUI_Module* theModule, - const QString& theViewId = QString() ); - - /** - * \brief Get id of the active GraphicsView view. - * \param theModule module - * \return view id - */ - static size_t GetActiveGraphicsViewId( HYDROGUI_Module* theModule ); - - /** - * \brief Get id of the active OCC view. - * \param theModule module - * \return view id - */ - static size_t GetActiveOCCViewId( HYDROGUI_Module* theModule ); - - /** - * \brief Get list of ids of existing GraphicsView views. - * \param theModule module - * \return list of view ids - */ - static QList GetGraphicsViewIdList( HYDROGUI_Module* theModule ); - - /** - * \brief Get list of ids of existing OCC views. - * \param theModule module - * \return list of view ids - */ - static QList GetOCCViewIdList( HYDROGUI_Module* theModule ); - - - /** - * \brief Change OCC viewer action visibility. - * \param theViewFrame OCC viewer frame - * \param theActionId an action index, which state should be changed - * \param isShown the action visibility state - */ - static void setOCCActionShown( OCCViewer_ViewFrame* theViewFrame, - const int theActionId, - const bool isShown ); - - /** - * \brief Change OCC viewer action visibility for all opened views. - * \param theActionId an action index, which state should be changed - * \param isShown the action visibility state - */ - static void setOCCActionShown( HYDROGUI_Module* theModule, - const int theActionId, - const bool isShown ); - - /** - * \brief Get the list of references (recursively) for the specified data object - * \param theObj data object - * \param theRefObjects list of reference objects - * \param theRefNames list of reference object names - */ - static void GetObjectReferences( const Handle(HYDROData_Entity)& theObj, - HYDROData_SequenceOfObjects& theRefObjects, - QStringList& theRefNames ); - - /** - * \brief Get the list of back-references for the specified object - * \param theModule module - * \param theObj data object - * \return list of back-reference objects - */ - static HYDROData_SequenceOfObjects GetObjectBackReferences( HYDROGUI_Module* theModule, - const Handle(HYDROData_Entity)& theObj ); - - /** - * \brief Get the map of back-references for the specified list of objects - * \param theModule module - * \param theObjectNames names of objects - * \return map of back-reference objects - */ - static QMap GetObjectsBackReferences( HYDROGUI_Module* theModule, - const QStringList& theObjectNames ); - - /** - * \brief Get father dock window for widget - * \param wid widget - * \return dock window - */ - static QDockWidget* WindowDock( QWidget* wid ); - - /** - * \brief Generates the filling color for intersected zone - * \param theModule module - * \param theZoneNames list of intersected zones - * \return result color - */ - static QColor GenerateFillingColor( HYDROGUI_Module* theModule, - const QStringList& theZoneNames ); - - /** - * \brief Generates the filling color for intersected zone - * \param theDoc model document - * \param theZoneNames list of intersected zones - * \return result color - */ - static QColor GenerateFillingColor( const Handle(HYDROData_Document)& theDoc, - const QStringList& theZoneNames ); - - /** - * \brief Find names of existing objects of the given kind. - * \param theDoc model document - * \param theObjectKind kind of object - * \return list of names - */ - static QStringList FindExistingObjectsNames( const Handle(HYDROData_Document)& theDoc, - const ObjectKind theObjectKind, - bool isCheckValidProfile = false ); - - /** - * \brief Converts coordinate value to string. - * \param theNumber coordinate as a number - * \return coordinate as a string - */ - static QString GetCoordinateString( const double theNumber, bool isInLocale ); - - /** - * \brief Converts Qt QImage object to OCCT Image_PixMap object. - * \param theImage QImage object - * \return Image_PixMap object - */ - static Handle(Image_PixMap) Pixmap( const QImage& theImage ); - - /** - * \brief Get the selected GEOM objects. - * \param theModule the module - * \param theTypes the acceptable GEOM object types - * \return list of GEOM objects entries - */ - static QStringList GetSelectedGeomObjects( HYDROGUI_Module* theModule, - QList theTypes ); - - /** - * \brief Delete the GEOM objects. - * \param theModule the module - * \param theEntries the GEOM objects entries - */ - static void DeleteGeomObjects( HYDROGUI_Module* theModule, const QStringList& theEntries ); + Handle(Image_PixMap) Pixmap( const QImage& theImage ); + + void GetObjectReferences( const Handle(HYDROData_Entity)& theObj, + HYDROData_SequenceOfObjects& theRefObjects, + QStringList& theRefNames ); + HYDROData_SequenceOfObjects GetObjectBackReferences( const Handle(HYDROData_Entity)& theObj ); + QMap GetObjectsBackReferences + ( const Handle(HYDROData_Document)& theDocument, const QStringList& theObjectNames ); }; #endif