TChangeDelegator.h
Go to the documentation of this file.
1 #ifndef istd_TChangeDelegator_included
2 #define istd_TChangeDelegator_included
3 
4 
5 // ACF includes
7 
8 
9 namespace istd
10 {
11 
12 
19 template <class Base>
21  public Base,
22  public CChangeDelegator
23 {
24 public:
25  typedef Base BaseClass;
27 
29  explicit TChangeDelegator(istd::IChangeable* slavePtr);
30 
31  // reimplemented (istd::IChangeable)
32  virtual void OnBeginChanges();
33  virtual void OnEndChanges(const istd::IChangeable::ChangeSet& changeSet);
34 };
35 
36 
37 // public methods
38 
39 template <class Base>
41 {
42 }
43 
44 
45 template <class Base>
47 {
48  BaseClass2::SetSlavePtr(slavePtr);
49 }
50 
51 
52 // pseudo-reimplemented (istd::IChangeable)
53 
54 template <class Base>
56 {
57  BaseClass2::OnBeginChanges();
58 
59  BaseClass::OnBeginChanges();
60 }
61 
62 
63 template <class Base>
65 {
66  BaseClass::OnEndChanges(changeSet);
67 
68  BaseClass2::OnEndChanges(changeSet);
69 }
70 
71 
72 } // namespace istd
73 
74 
75 #endif // !istd_TChangeDelegator_included
76 
Binder of some istd::IChangeable implementation and changing delegator.
virtual void OnBeginChanges()
Callback function for begin change event.
CChangeDelegator BaseClass2
Common interface for data model objects, which can be changed.
Definition: IChangeable.h:24
Set of change flags (its IDs).
Definition: IChangeable.h:30
Delegates calls of IChangeable methods to the given slave.
virtual void OnEndChanges(const istd::IChangeable::ChangeSet &changeSet)
Callback function for end change event.

© 2007-2017 Witold Gantzke and Kirill Lepskiy