Chromium Code Reviews| Index: mojo/services/public/cpp/view_manager/view.h |
| diff --git a/mojo/services/public/cpp/view_manager/view.h b/mojo/services/public/cpp/view_manager/view.h |
| index a0bba820542167b5eb42fe2bfa7cefb126a4da92..d8f5a076845acbcd64cc99d7ec93450dc2fa2452 100644 |
| --- a/mojo/services/public/cpp/view_manager/view.h |
| +++ b/mojo/services/public/cpp/view_manager/view.h |
| @@ -6,14 +6,45 @@ |
| #define MOJO_SERVICES_PUBLIC_CPP_VIEW_MANAGER_VIEW_H_ |
| #include "base/basictypes.h" |
| +#include "base/observer_list.h" |
| +#include "mojo/services/public/cpp/view_manager/view_manager_types.h" |
| namespace mojo { |
| namespace services { |
| namespace view_manager { |
| +class ViewManager; |
| +class ViewObserver; |
| +class ViewTreeNode; |
| + |
| +// Views are owned by the ViewManager. |
| class View { |
| public: |
| + static View* Create(ViewManager* manager); |
| + |
| + void Destroy(); |
| + |
| + TransportViewId id() const { return id_; } |
| + ViewTreeNode* node() { return node_; } |
| + |
| + void AddObserver(ViewObserver* observer); |
| + void RemoveObserver(ViewObserver* observer); |
| + |
| private: |
| + friend class ViewPrivate; |
| + |
| + View(ViewManager* manager); |
|
sky
2014/05/12 21:17:58
explicit
|
| + View(); |
| + ~View(); |
| + |
| + void LocalDestroy(); |
| + |
| + TransportViewId id_; |
| + ViewTreeNode* node_; |
| + ViewManager* manager_; |
| + |
| + ObserverList<ViewObserver> observers_; |
| + |
| DISALLOW_COPY_AND_ASSIGN(View); |
| }; |