172a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen// Copyright (c) 2011 The Chromium Authors. All rights reserved.
2c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// Use of this source code is governed by a BSD-style license that can be
3c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// found in the LICENSE file.
4c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch
572a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen#include "chrome/browser/ui/views/location_bar/location_icon_view.h"
672a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen
772a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen#include "base/utf_string_conversions.h"
872a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen#include "grit/generated_resources.h"
972a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen#include "ui/base/l10n/l10n_util.h"
10c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch
11dc0f95d653279beabeb9817299e2902918ba123eKristian MonsenLocationIconView::LocationIconView(LocationBarView* location_bar)
12c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch    : ALLOW_THIS_IN_INITIALIZER_LIST(click_handler_(this, location_bar)) {
1372a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen  SetTooltipText(UTF16ToWide(l10n_util::GetStringUTF16(
1472a454cd3513ac24fbdd0e0cb9ad70b86a99b801Kristian Monsen      IDS_TOOLTIP_LOCATION_ICON)));
15c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch}
16c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch
17c407dc5cd9bdc5668497f21b26b09d988ab439deBen MurdochLocationIconView::~LocationIconView() {
18c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch}
19c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch
20c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdochbool LocationIconView::OnMousePressed(const views::MouseEvent& event) {
21c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  // We want to show the dialog on mouse release; that is the standard behavior
22c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  // for buttons.
23c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch  return true;
24c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch}
25c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch
26ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsenvoid LocationIconView::OnMouseReleased(const views::MouseEvent& event) {
27ddb351dbec246cf1fab5ec20d2d5520909041de1Kristian Monsen  click_handler_.OnMouseReleased(event);
28c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch}
29dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen
30dc0f95d653279beabeb9817299e2902918ba123eKristian Monsenvoid LocationIconView::ShowTooltip(bool show) {
31dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen  if (show) {
32dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen    SetTooltipText(UTF16ToWide(l10n_util::GetStringUTF16(
33dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen            IDS_TOOLTIP_LOCATION_ICON)));
34dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen  } else {
35dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen    SetTooltipText(L"");
36dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen  }
37dc0f95d653279beabeb9817299e2902918ba123eKristian Monsen}
38