// Copyright (c) 2012 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.

#ifndef UI_VIEWS_CONTROLS_BUTTON_MENU_BUTTON_DELEGATE_H_
#define UI_VIEWS_CONTROLS_BUTTON_MENU_BUTTON_DELEGATE_H_
#pragma once

namespace gfx {
class Point;
}

namespace views {

class View;

////////////////////////////////////////////////////////////////////////////////
//
// MenuButtonDelegate
//
// An interface that allows a component to tell a View about a menu that it
// has constructed that the view can show (e.g. for MenuButton views, or as a
// context menu.)
//
////////////////////////////////////////////////////////////////////////////////
class MenuButtonDelegate {
 public:
  // Creates and shows a menu at the specified position. |source| is the view
  // the MenuButtonDelegate was set on.
  virtual void RunMenu(View* source, const gfx::Point& point) = 0;

 protected:
  virtual ~MenuButtonDelegate() {}
};

}  // namespace views

#endif  // UI_VIEWS_CONTROLS_BUTTON_MENU_BUTTON_DELEGATE_H_

// Copyright (c) 2012 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.

#ifndef UI_VIEWS_CONTROLS_BUTTON_MENU_BUTTON_DELEGATE_H_
#define UI_VIEWS_CONTROLS_BUTTON_MENU_BUTTON_DELEGATE_H_
#pragma once

#include "ui/views/views_export.h"

namespace gfx {
class Point;
}

namespace views {

class View;

////////////////////////////////////////////////////////////////////////////////
//
// MenuButtonDelegate
//
// An interface that allows a component to tell a View about a menu that it
// has constructed that the view can show (e.g. for MenuButton views, or as a
// context menu.)
//
////////////////////////////////////////////////////////////////////////////////
class VIEWS_EXPORT MenuButtonDelegate {
 public:
  // Creates and shows a menu at the specified position. |source| is the view
  // the MenuButtonDelegate was set on.
  virtual void RunMenu(View* source, const gfx::Point& point) = 0;

 protected:
  virtual ~MenuButtonDelegate() {}
};

}  // namespace views

#endif  // UI_VIEWS_CONTROLS_BUTTON_MENU_BUTTON_DELEGATE_H_

Fix win builder by tagging MenuButtonDelegate with VIEWS_EXPORT.
views: Fix win builder by tagging MenuButtonDelegate with VIEWS_EXPORT.

BUG=117092
TBR=sky@chromium.org

Review URL: https://chromiumcodereview.appspot.com/9647003

git-svn-id: de016e52bd170d2d4f2344f9bf92d50478b649e0@125656 0039d316-1c4b-4281-b951-d872f2087c98
