X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModel%2FModel_Events.h;h=ac36a99611800b1ed24947455aa0912353c44d1e;hb=50a8df0c6a66da8067b16155e5ae39f8f26a7ebc;hp=09518c7917b6dfd8c1aff8ba4800a261e5967cda;hpb=459e0945822c4ffd06cfc3bc3974ee1241ca93f7;p=modules%2Fshaper.git diff --git a/src/Model/Model_Events.h b/src/Model/Model_Events.h index 09518c791..ac36a9961 100644 --- a/src/Model/Model_Events.h +++ b/src/Model/Model_Events.h @@ -1,8 +1,21 @@ -// Copyright (C) 2014-20xx CEA/DEN, EDF R&D - -// File: Model_Events.h -// Created: 10 Apr 2014 -// Author: Mikhail PONIKAROV +// Copyright (C) 2014-2020 CEA/DEN, 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, 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 +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// #ifndef Model_Events_H_ #define Model_Events_H_ @@ -12,13 +25,17 @@ #include -/// Allovs to create ModelAPI messages +/// Allows to create ModelAPI messages class Model_EventCreator : public ModelAPI_EventCreator { public: /// creates created, updated or moved messages and sends to the loop virtual void sendUpdated(const ObjectPtr& theObject, const Events_ID& theEvent, const bool isGroupped = true) const; + + /// creates created, updated or moved messages with the objects collection and sends to the loop + virtual void sendUpdated(const std::list& theObjects, const Events_ID& theEvent, + const bool isGroupped = true) const; /// creates deleted message and sends to the loop virtual void sendDeleted(const std::shared_ptr& theDoc, const std::string& theGroup) const; @@ -55,8 +72,8 @@ class Model_ObjectUpdatedMessage : public ModelAPI_ObjectUpdatedMessage /// Message that feature was deleted (used for Object Browser update) class Model_ObjectDeletedMessage : public ModelAPI_ObjectDeletedMessage { - std::shared_ptr myDoc; ///< document owner of the feature - std::set myGroups; ///< group identifiers that contained the deleted feature + ///< group identifiers that contained the deleted feature and document where they are deleted + std::list, std::string> > myGroups; /// Use ModelAPI for creation of this event. Model_ObjectDeletedMessage(const std::shared_ptr& theDoc, @@ -64,14 +81,9 @@ class Model_ObjectDeletedMessage : public ModelAPI_ObjectDeletedMessage friend class Model_EventCreator; public: - /// Returns the document that has been updated - virtual std::shared_ptr document() const - { - return myDoc; - } - /// Returns the group where the objects were deleted - virtual const std::set& groups() const + virtual const std::list, std::string> >& + groups() const { return myGroups; }