Updating trunk VERSION from 2139.0 to 2140.0
[chromium-blink-merge.git] / athena / activity / activity_widget_delegate.h
blob70dcf8b3a47a28cb66082af81996851f4d765dbc
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef ATHENA_ACTIVITY_ACTIVITY_WIDGET_DELEGATE_H_
6 #define ATHENA_ACTIVITY_ACTIVITY_WIDGET_DELEGATE_H_
8 #include "base/macros.h"
9 #include "ui/views/widget/widget_delegate.h"
11 namespace athena {
12 class ActivityViewModel;
14 // A default WidgetDelegate for activities.
15 // TODO(oshima): Allow AcitivyViewModel to create custom WidgetDelegate.
16 class ActivityWidgetDelegate : public views::WidgetDelegate {
17 public:
18 explicit ActivityWidgetDelegate(ActivityViewModel* view_model);
19 virtual ~ActivityWidgetDelegate();
21 // views::WidgetDelegate:
22 virtual base::string16 GetWindowTitle() const OVERRIDE;
23 virtual void DeleteDelegate() OVERRIDE;
24 virtual views::Widget* GetWidget() OVERRIDE;
25 virtual const views::Widget* GetWidget() const OVERRIDE;
26 virtual views::View* GetContentsView() OVERRIDE;
27 virtual views::ClientView* CreateClientView(views::Widget* widget) OVERRIDE;
28 virtual views::NonClientFrameView* CreateNonClientFrameView(
29 views::Widget* widget) OVERRIDE;
31 private:
32 ActivityViewModel* view_model_;
34 DISALLOW_COPY_AND_ASSIGN(ActivityWidgetDelegate);
37 } // namespace athena
39 #endif // ATHENA_ACTIVITY_ACTIVITY_WIDGET_DELEGATE_H_