summaryrefslogtreecommitdiffstats
path: root/chrome/browser/cocoa/hover_close_button.h
diff options
context:
space:
mode:
authorandybons@chromium.org <andybons@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-01 15:35:46 +0000
committerandybons@chromium.org <andybons@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-07-01 15:35:46 +0000
commit31567793829b0adf833362075ba12e3aa04f201e (patch)
tree6d13ba83b38a4c5fecfcbbd2ba1a4781ef0cfb9c /chrome/browser/cocoa/hover_close_button.h
parenteaeb4f26c61a7f9def3ee2ef77c056229efb2ad5 (diff)
downloadchromium_src-31567793829b0adf833362075ba12e3aa04f201e.zip
chromium_src-31567793829b0adf833362075ba12e3aa04f201e.tar.gz
chromium_src-31567793829b0adf833362075ba12e3aa04f201e.tar.bz2
[Mac] Use Core Graphics to draw the close button used within tabs, infobars, the download shelf and other places. Delete the original pdfs. This is in line with the new top chrome refresh.
BUG=44574 TEST=none Review URL: http://codereview.chromium.org/2805055 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51367 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/cocoa/hover_close_button.h')
-rw-r--r--chrome/browser/cocoa/hover_close_button.h32
1 files changed, 24 insertions, 8 deletions
diff --git a/chrome/browser/cocoa/hover_close_button.h b/chrome/browser/cocoa/hover_close_button.h
index 7c34395..97c49ce 100644
--- a/chrome/browser/cocoa/hover_close_button.h
+++ b/chrome/browser/cocoa/hover_close_button.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2009 The Chromium Authors. All rights reserved.
+// Copyright (c) 2010 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.
@@ -6,20 +6,36 @@
#include "base/scoped_nsobject.h"
-// The standard close button for our Mac UI which is the "x"
-// that changes to the red circle with the "x" when you hover over it.
-// At this time it is used by the popup blocker, download bar, info bar
-// and tabs.
+// The standard close button for our Mac UI which is the "x" that changes to a
+// dark circle with the "x" when you hover over it. At this time it is used by
+// the popup blocker, download bar, info bar and tabs.
@interface HoverCloseButton : NSButton {
- // Tracking area for close button mouseover images.
+ @private
+ // Enumeration of the hover states that the close button can be in at any one
+ // time. The button cannot be in more than one hover state at a time.
+ enum HoverState {
+ kHoverStateNone = 0,
+ kHoverStateMouseOver = 1,
+ kHoverStateMouseDown = 2
+ };
+
+ HoverState hoverState_;
+
+ // Tracking area for close button mouseover states.
scoped_nsobject<NSTrackingArea> closeTrackingArea_;
+
+ // Bezier path for drawing the 'x' within the button.
+ scoped_nsobject<NSBezierPath> xPath_;
+
+ // Bezier path for drawing the hover state circle behind the 'x'.
+ scoped_nsobject<NSBezierPath> circlePath_;
}
// Enables or disables the |NSTrackingRect|s for the button.
- (void)setTrackingEnabled:(BOOL)enabled;
-// Sets up the button's images, tracking areas, and accessibility info
-// when instantiated via initWithFrame or awakeFromNib.
+// Sets up the button's tracking areas and accessibility info when instantiated
+// via initWithFrame or awakeFromNib.
- (void)commonInit;
// Checks to see whether the mouse is in the button's bounds and update