| // Copyright (c) 2013 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 CHROME_BROWSER_UI_VALIDATION_MESSAGE_BUBBLE_H_ |
| #define CHROME_BROWSER_UI_VALIDATION_MESSAGE_BUBBLE_H_ |
| |
| #include "base/memory/scoped_ptr.h" |
| #include "base/strings/string16.h" |
| |
| namespace content { |
| class RenderWidgetHost; |
| } |
| |
| namespace gfx { |
| class Rect; |
| } |
| |
| namespace chrome { |
| |
| class ValidationMessageBubble { |
| public: |
| // Open a tooltip-like window to show the specified messages. The window |
| // should not change focus state. |
| static scoped_ptr<ValidationMessageBubble> CreateAndShow( |
| content::RenderWidgetHost* widget_host, |
| const gfx::Rect& anchor_in_root_view, |
| const base::string16& main_text, |
| const base::string16& sub_text); |
| |
| // Close the window and destruct the object. |
| virtual ~ValidationMessageBubble() {} |
| |
| // Move the window to a position such that the bubble arrow points to the |
| // specified anchor. |anchor_in_root_view| is in DIP unit, and relative to |
| // RWHV for |widget_host|. |
| virtual void SetPositionRelativeToAnchor( |
| content::RenderWidgetHost* widget_host, |
| const gfx::Rect& anchor_in_root_view) = 0; |
| }; |
| |
| } // namespace chrome |
| |
| #endif // CHROME_BROWSER_UI_VALIDATION_MESSAGE_BUBBLE_H_ |