Salome HOME
lot 10 - warnings for DTM - untested
[modules/hydro.git] / src / HYDROGUI / HYDROGUI_DataObject.h
index 8f1582885d4b8e4cc4d5610582ae755369a834f2..12dfa7102db85e2164635dc314327b44b68441c6 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
 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 
+
 #ifndef HYDROGUI_DATAOBJECT_H
 #define HYDROGUI_DATAOBJECT_H
 
 #include <HYDROData_Entity.h>
 
-#include <LightApp_DataObject.h>
+#ifdef WIN32
+  #pragma warning( disable: 4250 )
+  #pragma warning( disable: 4251 )
+#endif
+
+#ifdef TEST_MODE
+  #include <CAM_DataObject.h>
+  enum { 
+    EntryId = CAM_DataObject::VisibilityId + 1,    //!< entry column
+    RefEntryId                     //!< reference entry column
+  };
+  #define PARENT CAM_DataObject
+#else
+  #include <LightApp_DataObject.h>
+  #define PARENT LightApp_DataObject
+#endif
 
 #include <QString>
 #include <QMap>
 #include <QPixmap>
 #include <QColor>
 
+#ifdef WIN32
+  #pragma warning( default: 4250 )
+  #pragma warning( default: 4251 )
+#endif
+
 /**
  * \class HYDROGUI_DataObject
  * \brief Module data object, used for object browser tree creation.
@@ -41,7 +58,7 @@
  * This class inherits CAM_DataObject virtually, so it is necessary to call in the class
  * constructor the CAM object constructor manually for the correct initialization
  */
-class HYDROGUI_DataObject : public LightApp_DataObject
+class HYDROGUI_DataObject : public PARENT
 {
 public:
   //! Column id
@@ -141,6 +158,8 @@ public:
    */
   bool isInOperation() const { return myIsInOperation; }
 
+  void updateBy( SUIT_DataObject* );
+
 protected:
   Handle(HYDROData_Entity) myData; ///< object from data model
   QString myParentEntry;
@@ -158,7 +177,7 @@ protected:
  * This class inherits CAM_DataObject virtually, so it is necessary to call in the class
  * constructor the CAM object constructor manually for the correct initialization
  */
-class HYDROGUI_NamedObject : public virtual LightApp_DataObject
+class HYDROGUI_NamedObject : public virtual PARENT
 {
 public:
   /**
@@ -182,6 +201,11 @@ public:
    */
   virtual QString name() const;
 
+  /**
+   * Returns the font of displayed object name.
+   */
+  virtual QFont font( const int = SUIT_DataObject::NameId ) const;
+
   /**
    * Returns the object icon.
    */
@@ -194,6 +218,8 @@ public:
    */
   bool isInOperation() const { return myIsInOperation; }
 
+  void updateBy( SUIT_DataObject* );
+
 private:
   QString myName; ///< name in the OB
   QString myParentEntry;