|
ACF $AcfVersion:0$
|
Basic implementation for a single model observer with binding to concrete data object interface. More...
#include <TSingleModelObserverBase.h>
Public Types | |
| typedef CSingleModelObserverBase | BaseClass |
| typedef ModelInterface | ModelType |
Public Types inherited from imod::CSingleModelObserverBase | |
| typedef imod::IModel | ModelType |
Public Member Functions | |
| TSingleModelObserverBase () | |
| ModelInterface * | GetObservedObject () const |
| Get instance of observed object. | |
| ModelInterface * | GetObjectPtr () const |
| Get instance of observed object. | |
| bool | AttachOrSetObject (ModelInterface *objectPtr) |
| Attach to model of object or set object pointer, if no connection is possible. | |
| virtual bool | OnModelAttached (imod::IModel *modelPtr, istd::IChangeable::ChangeSet &changeMask) override |
| Callback invoked when an observable model is about to be attached to this observer. | |
| virtual bool | OnModelDetached (imod::IModel *modelPtr) override |
| Callback invoked when an observable model is about to be detached from this observer. | |
Public Member Functions inherited from imod::CSingleModelObserverBase | |
| CSingleModelObserverBase () | |
| virtual | ~CSingleModelObserverBase () |
| imod::IModel * | GetObservedModel () const |
| Get access to observed model. | |
| imod::IModel * | GetModelPtr () const |
| Get access to observed model. | |
| void | EnsureModelDetached () |
| Make sure this observer is detached. | |
| void | SetObservedIds (const istd::IChangeable::ChangeSet &changeMask) |
| Set list of ID's beeing observed. | |
| virtual bool | IsModelAttached (const imod::IModel *modelPtr=NULL) const override |
| Checks if the specified model is currently attached to this observer. | |
| virtual void | BeforeUpdate (imod::IModel *modelPtr) override |
| Callback invoked before an update of the observer's content occurs. | |
| virtual void | AfterUpdate (imod::IModel *modelPtr, const istd::IChangeable::ChangeSet &changeSet) override |
| Callback invoked after an update of the observer's content occurs. | |
Public Member Functions inherited from istd::IPolymorphic | |
| virtual | ~IPolymorphic () |
Protected Member Functions | |
| virtual ModelInterface * | CastFromModel (imod::IModel *modelPtr) const |
Protected Member Functions inherited from imod::CSingleModelObserverBase | |
| void | SetModelPtr (imod::IModel *modelPtr) |
| Set internal model pointer to specified value. | |
| virtual void | OnUpdate (const istd::IChangeable::ChangeSet &changeSet) |
| Called on update of observed model. | |
Additional Inherited Members | |
Static Protected Attributes inherited from imod::CSingleModelObserverBase | |
| static const istd::IChangeable::ChangeSet | s_undoChanges |
Basic implementation for a single model observer with binding to concrete data object interface.
Definition at line 27 of file TSingleModelObserverBase.h.
| typedef CSingleModelObserverBase imod::TSingleModelObserverBase< ModelInterface >::BaseClass |
Definition at line 30 of file TSingleModelObserverBase.h.
| typedef ModelInterface imod::TSingleModelObserverBase< ModelInterface >::ModelType |
Definition at line 31 of file TSingleModelObserverBase.h.
| imod::TSingleModelObserverBase< ModelInterface >::TSingleModelObserverBase | ( | ) |
Definition at line 65 of file TSingleModelObserverBase.h.
References NULL.
| bool imod::TSingleModelObserverBase< ModelInterface >::AttachOrSetObject | ( | ModelInterface * | objectPtr | ) |
Attach to model of object or set object pointer, if no connection is possible.
Definition at line 86 of file TSingleModelObserverBase.h.
References imod::IModel::AttachObserver(), and NULL.
|
protectedvirtual |
Reimplemented in idoc::CSerializedUndoManagerComp.
Definition at line 147 of file TSingleModelObserverBase.h.
| ModelInterface * imod::TSingleModelObserverBase< ModelInterface >::GetObjectPtr | ( | ) | const |
Get instance of observed object.
GetObservedObject instead. Definition at line 79 of file TSingleModelObserverBase.h.
| ModelInterface * imod::TSingleModelObserverBase< ModelInterface >::GetObservedObject | ( | ) | const |
Get instance of observed object.
Definition at line 72 of file TSingleModelObserverBase.h.
|
overridevirtual |
Callback invoked when an observable model is about to be attached to this observer.
This method is called by the model when attempting to establish an observer relationship. The implementation should:
| modelPtr | Pointer to the model object being attached. Never nullptr. |
| changeMask | Output parameter where the observer specifies which change types it wants to be notified about. Set the appropriate change flags using changeMask.Set(changeId). An empty mask means the observer wants all changes. |
Reimplemented from imod::CSingleModelObserverBase.
Reimplemented in idoc::CSerializedUndoManagerComp, iqt2d::CSelectableSceneExtenderComp, iqtdoc::CMainWindowGuiComp, iqtgui::TGuiObserverWrap< iqtgui::CComposedGuiComp, imod::TSingleModelObserverBase< iprm::IParamsSet > >, iqtgui::TGuiObserverWrap< iqtgui::TDesignerGuiCompBase< UI, QWidget >, imod::TSingleModelObserverBase< Model > >, iqtgui::TGuiObserverWrap< iqtgui::TGuiComponentBase< QLabel >, imod::TSingleModelObserverBase< istd::IInformationProvider > >, iqtgui::TGuiObserverWrap< iqtgui::TGuiComponentBase< QTextEdit >, imod::TSingleModelObserverBase< idoc::ITextDocument > >, iqtgui::TGuiObserverWrap< iqtgui::TGuiComponentBase< QWidget >, imod::TSingleModelObserverBase< idoc::IDocumentMetaInfo > >, iqtgui::TGuiObserverWrap< iqtgui::TGuiComponentBase< QWidget >, imod::TSingleModelObserverBase< iimg::IMultiBitmapProvider > >, iqtgui::TGuiObserverWrap< TGuiComponentBase< ItemWidgetClass >, imod::TSingleModelObserverBase< ibase::IQtItemModelProvider > >, and iqtgui::TGuiObserverWrap< TGuiComponentBase< QTableView >, imod::TSingleModelObserverBase< ibase::IQtItemModelProvider > >.
Definition at line 106 of file TSingleModelObserverBase.h.
References I_IF_DEBUG, and NULL.
|
overridevirtual |
Callback invoked when an observable model is about to be detached from this observer.
This method is called when the observer-model relationship is being terminated, either explicitly or because the model is being destroyed. The implementation should clean up any state or resources related to this model.
| modelPtr | Pointer to the model object being detached |
Reimplemented from imod::CSingleModelObserverBase.
Reimplemented in idoc::CSerializedUndoManagerComp, iqt2d::CSelectableSceneExtenderComp, iqtdoc::CMainWindowGuiComp, iqtgui::TGuiObserverWrap< iqtgui::CComposedGuiComp, imod::TSingleModelObserverBase< iprm::IParamsSet > >, iqtgui::TGuiObserverWrap< iqtgui::TDesignerGuiCompBase< UI, QWidget >, imod::TSingleModelObserverBase< Model > >, iqtgui::TGuiObserverWrap< iqtgui::TGuiComponentBase< QLabel >, imod::TSingleModelObserverBase< istd::IInformationProvider > >, iqtgui::TGuiObserverWrap< iqtgui::TGuiComponentBase< QTextEdit >, imod::TSingleModelObserverBase< idoc::ITextDocument > >, iqtgui::TGuiObserverWrap< iqtgui::TGuiComponentBase< QWidget >, imod::TSingleModelObserverBase< idoc::IDocumentMetaInfo > >, iqtgui::TGuiObserverWrap< iqtgui::TGuiComponentBase< QWidget >, imod::TSingleModelObserverBase< iimg::IMultiBitmapProvider > >, iqtgui::TGuiObserverWrap< TGuiComponentBase< ItemWidgetClass >, imod::TSingleModelObserverBase< ibase::IQtItemModelProvider > >, and iqtgui::TGuiObserverWrap< TGuiComponentBase< QTableView >, imod::TSingleModelObserverBase< ibase::IQtItemModelProvider > >.
Definition at line 129 of file TSingleModelObserverBase.h.
References NULL.