62 Base::operator=(baseObject);
71 int baseOperations = Base::GetSupportedOperations();
82 if (clonePtr->CopyFrom(*
this, mode)){
93 BaseClass2::NotifyBeforeChange(changeSet,
false);
100 BaseClass2::NotifyAfterChange(changeSet);
107 BaseClass2::NotifyBeforeChange(changeSet,
true);
114 BaseClass2::NotifyAfterChange(changeSet);
125 this->OnBeginChanges();
132 this->OnEndChanges(changeSet);
Basic implementation of a model.
This model wrapper provides a simple connection between a concrete istd::IChangeable implementation a...
virtual void EndChangeGroup(const istd::IChangeable::ChangeSet &changeSet) override
virtual void OnEndGlobalChanges(const istd::IChangeable::ChangeSet &changeSet) override
Called after global changes are finished.
imod::CModelBase BaseClass2
virtual void EndChanges(const istd::IChangeable::ChangeSet &changeSet) override
void SetBaseObject(const Base &baseObject)
virtual void BeginChanges(const istd::IChangeable::ChangeSet &changeSet) override
iser::TCopySerializedWrap< Base > BaseClass
virtual void OnBeginGlobalChanges() override
Called before global changes will be started.
virtual istd::TUniqueInterfacePtr< istd::IChangeable > CloneMe(istd::IChangeable::CompatibilityMode mode=istd::IChangeable::CM_WITHOUT_REFS) const override
virtual int GetSupportedOperations() const override
virtual void BeginChangeGroup(const istd::IChangeable::ChangeSet &changeSet) override
Set of change flags (its IDs).
CompatibilityMode
Control how relationship betweeen objects are interpreted.
@ CM_WITHOUT_REFS
External references are simple ignored.
@ SO_CLONE
Creating of copy of this object.
@ SO_OBSERVE
Observing of this object via observer-observable pattern.
Unique ownership smart pointer for interface types.
This namespace containes basic implementation of Model/Observer design pattern This package is system...
istd::TUniqueInterfacePtr< istd::IChangeable > IChangeableUniquePtr