All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
LabelViewRepositoryObserver.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 
6 #include "Labels.h"
7 #include "Types.h"
8 
9 #include "LabelViewRepository.h"
10 
11 namespace Eegeo
12 {
13  namespace Labels
14  {
16  {
17  public:
19 
21 
22  void OnItemAdded(const ILabelViewRepository::ObserverType::ItemType& item)
23  {
24  m_repositoryChanged = true;
25  }
26 
27  void OnItemRemoved(const ILabelViewRepository::ObserverType::ItemType& item)
28  {
29  m_repositoryChanged = true;
30  }
31 
32  bool HasChanged() const
33  {
34  return m_repositoryChanged;
35  }
36 
37  void Reset()
38  {
39  m_repositoryChanged = false;
40  }
41 
42  private:
43  ILabelViewRepository& m_labelViewRepository;
44  bool m_repositoryChanged;
45  };
46  }
47 }