Index: chrome/browser/ui/webui/demo_ui/reuse/reuse_demo.cc |
diff --git a/chrome/browser/ui/webui/demo_ui/reuse/reuse_demo.cc b/chrome/browser/ui/webui/demo_ui/reuse/reuse_demo.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..690e5a583934d009d6bb9716dfd83411423aade3 |
--- /dev/null |
+++ b/chrome/browser/ui/webui/demo_ui/reuse/reuse_demo.cc |
@@ -0,0 +1,39 @@ |
+// Copyright 2015 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#include "chrome/browser/ui/webui/demo_ui/reuse/reuse_demo.h" |
+ |
+ReuseDemo::ReuseDemo() { |
+} |
+ |
+ReuseDemo::~ReuseDemo() { |
+ GetLeftEvents()->RemoveObserver(this); |
+ GetRightEvents()->RemoveObserver(this); |
+} |
+ |
+void ReuseDemo::OnAfterChildrenReady() { |
+ GetLeftEvents()->AddObserver(this); |
+ GetRightEvents()->AddObserver(this); |
+ EventsCounterChanged(); |
+} |
+ |
+void ReuseDemo::EventsCounterChanged() { |
+ GetContextEditor().SetInteger( |
+ kContextKeyTotalClicks, |
+ GetLeftEvents()->GetEventCounter() + GetRightEvents()->GetEventCounter()); |
+} |
+ |
+EventsDemo* ReuseDemo::GetLeftEvents() const { |
+ return static_cast<EventsDemo*>(gen::ReuseDemoViewModel::GetLeftEvents()); |
+} |
+ |
+EventsDemo* ReuseDemo::GetRightEvents() const { |
+ return static_cast<EventsDemo*>(gen::ReuseDemoViewModel::GetRightEvents()); |
+} |
+ |
+void ReuseDemo::Register() { |
+ SetFactory( |
+ [](content::BrowserContext*) |
+ -> gen::ReuseDemoViewModel* { return new ReuseDemo(); }); |
+} |