X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHYDROGUI%2FHYDROGUI_DataModel.h;h=6cb1fbb63cde7a7846e1916b8ca1d9ff97bca422;hb=cd6ea20d9a76665a24a533d0340385a335961f05;hp=060a3db56936e155a39dc47c94da2856ac9c7488;hpb=0676b7539aa0e59468673e1d3b44ea8a897aa9fc;p=modules%2Fhydro.git diff --git a/src/HYDROGUI/HYDROGUI_DataModel.h b/src/HYDROGUI/HYDROGUI_DataModel.h index 060a3db5..6cb1fbb6 100644 --- a/src/HYDROGUI/HYDROGUI_DataModel.h +++ b/src/HYDROGUI/HYDROGUI_DataModel.h @@ -1,4 +1,4 @@ -// 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 @@ -6,7 +6,7 @@ // 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 @@ -20,6 +20,7 @@ // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // + #ifndef HYDROGUI_DATAMODEL_H #define HYDROGUI_DATAMODEL_H @@ -221,14 +222,24 @@ public: bool paste(); /** - * Creates the GUI data object according to the model object. - * \param theParent a created object will be appended as a child of this object - * \param theModelObject model object - * \param theParentEntry entry of parent object + * Rename the object + */ + bool rename( Handle(HYDROData_Entity) theEntity, const QString& theName ); + + /** + * Creates the Calculation Case subtree for usage within an operation dialog. + * \param theParent a created object will be appended as a child of this GUI object + * \param theCase the calculation case model object */ void buildCaseTree( SUIT_DataObject* theParent, Handle(HYDROData_CalculationCase) theCase ); + /** + * Updates the object subtree. + * \param theObj the data model entity + */ + void updateObjectTree( Handle(HYDROData_Entity)& theObj ); + /** * Update the sequence of the objects to be copied */ @@ -275,30 +286,64 @@ protected: * \param theObject the GUI object * \param theParentEntry the entry of parent object * \param theIsBuildTree if true then build the subtree of the GUI object + * \param theIsInOperation if true then the tree is used for a browser within an operation, it is false by default */ LightApp_DataObject* buildObject( SUIT_DataObject* theParent, HYDROGUI_DataObject* theObject, const QString& theParentEntry, - const bool theIsBuildTree ); + const bool theIsBuildTree, + const bool theIsInOperation = false ); + /** + * Build object tree if the flag theIsBuildTree is true. + * \param theParent a created object will be appended as a child of this GUI object + * \param theModelObject the data model zone object + * \param theParentEntry the entry of parent object + * \param theIsBuildTree if true then build the subtree of the GUI object + * \param theIsInOperation if true then the tree is used for a browser within an operation, it is false by default + */ LightApp_DataObject* createZone( SUIT_DataObject* theParent, Handle(HYDROData_Zone) theModelObject, const QString& theParentEntry, - const bool theIsBuildTree ); + const bool theIsBuildTree , + const bool theIsInOperation = false ); + /** + * Build object tree if the flag theIsBuildTree is true. + * \param theParent a created object will be appended as a child of this GUI object + * \param theModelObject the data model region object + * \param theParentEntry the entry of parent object + * \param theIsBuildTree if true then build the subtree of the GUI object + * \param theIsInOperation if true then the tree is used for a browser within an operation, it is false by default + */ LightApp_DataObject* createRegion( SUIT_DataObject* theParent, Handle(HYDROData_Region) theModelObject, const QString& theParentEntry, - const bool theIsBuildTree ); + const bool theIsBuildTree , + const bool theIsInOperation = false ); + /** + * Build partition for object. + * \param theObject gui object for which the partition will be build + * \param theObjects sequence of builded objects + * \param thePartName name of created partition + * \param theIsCreateEmpty if true then partition will be created in any case + */ + void buildObjectPartition( SUIT_DataObject* theObject, + const HYDROData_SequenceOfObjects& theObjects, + const QString& thePartName, + const bool theIsCreateEmpty ); + /** - * Build tree of model object. + * Build tree of a model object. * \param theParent a created object will be appended as a child of this object * \param theObject gui object for which the tree will be build * \param theParentEntry entry of parent object + * \param theIsInOperation if true then the tree is used for a browser within an operation, it is false by default */ void buildObjectTree( SUIT_DataObject* theParent, SUIT_DataObject* theObject, - const QString& theParentEntry = QString() ); + const QString& theParentEntry = QString(), + const bool theIsInOperation = false ); /** * Removes data object from the tree. @@ -319,6 +364,7 @@ protected: protected: QString myStudyURL; ///< the saved/opened document URL + QByteArray myStates; }; #endif