desktop_background_view.h revision 5821806d5e7f356e8fa4b058a389a808ea183019
1// Copyright (c) 2012 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.
4
5#ifndef ASH_DESKTOP_BACKGROUND_DESKTOP_BACKGROUND_VIEW_H_
6#define ASH_DESKTOP_BACKGROUND_DESKTOP_BACKGROUND_VIEW_H_
7
8#include "ash/desktop_background/desktop_background_resources.h"
9#include "ui/gfx/image/image_skia.h"
10#include "ui/views/context_menu_controller.h"
11#include "ui/views/view.h"
12#include "ui/views/widget/widget_delegate.h"
13
14namespace ash {
15namespace internal {
16
17class DesktopBackgroundView : public views::WidgetDelegateView,
18                              public views::ContextMenuController {
19 public:
20  DesktopBackgroundView();
21  virtual ~DesktopBackgroundView();
22
23 private:
24  // Overridden from views::View:
25  virtual void OnPaint(gfx::Canvas* canvas) OVERRIDE;
26  virtual bool OnMousePressed(const ui::MouseEvent& event) OVERRIDE;
27
28  // Overridden from views::ContextMenuController:
29  virtual void ShowContextMenuForView(views::View* source,
30                                      const gfx::Point& point) OVERRIDE;
31
32  DISALLOW_COPY_AND_ASSIGN(DesktopBackgroundView);
33};
34
35}  // namespace internal
36}  // namespace ash
37
38#endif  // ASH_DESKTOP_BACKGROUND_DESKTOP_BACKGROUND_VIEW_H_
39