Salome HOME
Merge remote-tracking branch 'origin/BR_1321_ECW' into BR_DEMO
[modules/hydro.git] / src / HYDROGUI / HYDROGUI_Tool.h
index 29bd4de731d59b217ca4db26dee8a50d42a157c5..90756880a9589c23d1cf8e1fbf7635d33585ec86 100644 (file)
@@ -1,12 +1,8 @@
-// Copyright (C) 2007-2013  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
-// 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
 #ifndef HYDROGUI_TOOL_H
 #define HYDROGUI_TOOL_H
 
-#include <HYDROData_Object.h>
+#include <HYDROData_Entity.h>
+#include <QString>
 
-#include <GraphicsView_Defs.h>
+class TCollection_AsciiString;
+class HYDROData_Document;
+class Image_PixMap;
+class TCollection_HAsciiString;
+class TCollection_HExtendedString;
+class QDockWidget;
+class QImage;
+class QWidget;
 
-class SUIT_ViewManager;
+namespace HYDROGUI_Tool
+{
+  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& );
 
-class HYDROGUI_DataModel;
-class HYDROGUI_Module;
-class HYDROGUI_Prs;
+  QString GetTempDir( const bool theToCreate );
 
-/**
- * \class HYDROGUI_Tool
- * \brief This class contains several useful methods.
- */
-class HYDROGUI_Tool
-{
-public:
-  /**
-   * \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 );
+  QDockWidget* WindowDock( QWidget* wid );
 
-  /**
-   * \brief Get sub-objects to build presentations.
-   * \param theGUIModel data model
-   * \param theViewerId viewer id
-   * \param theSeq sequence of sub-objects
-   */
-  static void                     GetPrsSubObjects( const HYDROGUI_DataModel* theGUIModel,
-                                                    const int theViewerId,
-                                                    HYDROData_SequenceOfObjects& theSeq );
+  QStringList FindExistingObjectsNames( const Handle(HYDROData_Document)& theDoc, 
+                                        const ObjectKind theObjectKind, 
+                                        bool isCheckValidProfile = false );
+  QString GetCoordinateString( const double theNumber, bool isInLocale );
+  
+  Handle(Image_PixMap) Pixmap( const QImage& theImage );
 
-  /**
-   * \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_Object)& theObj,
-                                                   const GraphicsView_ObjectList& theObjects );
+  void GetObjectReferences( const Handle(HYDROData_Entity)& theObj,
+                            HYDROData_SequenceOfObjects& theRefObjects,
+                            QStringList& theRefNames );
+  HYDROData_SequenceOfObjects GetObjectBackReferences( const Handle(HYDROData_Entity)& theObj );
+  QMap<QString,HYDROData_SequenceOfObjects> GetObjectsBackReferences
+    ( const Handle(HYDROData_Document)& theDocument, const QStringList& theObjectNames );
 };
 
 #endif