+/// Alone instance of the creator per application
+Model_EventCreator MY_CREATOR;
+
+/////////////////////// CREATOR /////////////////////////////
+void Model_EventCreator::sendUpdated(const ObjectPtr& theObject, const Events_ID& theEvent,
+ const bool isGroupped) const
+{
+ std::shared_ptr<Model_ObjectUpdatedMessage> aMsg(
+ new Model_ObjectUpdatedMessage(theObject, theEvent));
+ Events_Loop::loop()->send(aMsg, isGroupped);
+}
+
+void Model_EventCreator::sendDeleted(const std::shared_ptr<ModelAPI_Document>& theDoc,
+ const std::string& theGroup) const
+{
+ std::shared_ptr<Model_ObjectDeletedMessage> aMsg(
+ new Model_ObjectDeletedMessage(theDoc, theGroup));
+ Events_Loop::loop()->send(aMsg, true);
+}
+
+void Model_EventCreator::sendReordered(const std::shared_ptr<ModelAPI_Feature>& theReordered) const
+{
+ std::shared_ptr<Model_OrderUpdatedMessage> aMsg(
+ new Model_OrderUpdatedMessage(theReordered));
+ Events_Loop::loop()->send(aMsg, true);
+}
+
+Model_EventCreator::Model_EventCreator()
+{
+ ModelAPI_EventCreator::set(this);