Home | History | Annotate | Download | only in corewm
      1 // Copyright 2013 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 UI_VIEWS_COREWM_TOOLTIP_H_
      6 #define UI_VIEWS_COREWM_TOOLTIP_H_
      7 
      8 #include "base/strings/string16.h"
      9 #include "ui/views/views_export.h"
     10 
     11 namespace aura {
     12 class Window;
     13 }
     14 
     15 namespace gfx {
     16 class Point;
     17 }
     18 
     19 namespace views {
     20 namespace corewm {
     21 
     22 // Tooltip is responsible for showing the tooltip in an appropriate manner.
     23 // Tooltip is used by TooltipController.
     24 class VIEWS_EXPORT Tooltip {
     25  public:
     26   virtual ~Tooltip() {}
     27 
     28   // Updates the text on the tooltip and resizes to fit.
     29   virtual void SetText(aura::Window* window,
     30                        const base::string16& tooltip_text,
     31                        const gfx::Point& location) = 0;
     32 
     33   // Shows the tooltip at the specified location (in screen coordinates).
     34   virtual void Show() = 0;
     35 
     36   // Hides the tooltip.
     37   virtual void Hide() = 0;
     38 
     39   // Is the tooltip visibile?
     40   virtual bool IsVisible() = 0;
     41 };
     42 
     43 }  // namespace corewm
     44 }  // namespace views
     45 
     46 #endif  // UI_VIEWS_COREWM_TOOLTIP_H_
     47