[Metrics] Make MetricsStateManager take a callback param to check if UMA is enabled.
[chromium-blink-merge.git] / chrome / browser / ui / cocoa / location_bar / translate_decoration.h
blob19756e9bc9dd6ae720b8dd1fbb28035a9f13f002
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 CHROME_BROWSER_UI_COCOA_LOCATION_BAR_TRANSLATE_DECORATION_H_
6 #define CHROME_BROWSER_UI_COCOA_LOCATION_BAR_TRANSLATE_DECORATION_H_
8 #import <Cocoa/Cocoa.h>
10 #include "chrome/browser/ui/cocoa/location_bar/image_decoration.h"
12 class CommandUpdater;
13 @class TranslateBubbleController;
15 // Translate icon on the right side of the field. This appears when
16 // translation is available on the current page. This icon is lit when
17 // translation is already done, otherwise not lit.
18 class TranslateDecoration : public ImageDecoration {
19 public:
20 explicit TranslateDecoration(CommandUpdater* command_updater);
21 virtual ~TranslateDecoration();
23 // Toggles the icon on or off.
24 void SetLit(bool on);
26 // Implement |LocationBarDecoration|
27 virtual bool AcceptsMousePress() OVERRIDE;
28 virtual bool OnMousePressed(NSRect frame, NSPoint location) OVERRIDE;
29 virtual NSString* GetToolTip() OVERRIDE;
30 virtual NSPoint GetBubblePointInFrame(NSRect frame) OVERRIDE;
32 private:
33 // For showing the translate bubble up.
34 CommandUpdater* command_updater_; // Weak, owned by Browser.
36 DISALLOW_COPY_AND_ASSIGN(TranslateDecoration);
39 #endif // CHROME_BROWSER_UI_COCOA_LOCATION_BAR_TRANSLATE_DECORATION_H_