• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2011 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 #import <Cocoa/Cocoa.h>
6 
7 #include "base/memory/scoped_nsobject.h"
8 #include "chrome/browser/ui/cocoa/hover_button.h"
9 
10 // The standard close button for our Mac UI which is the "x" that changes to a
11 // dark circle with the "x" when you hover over it. At this time it is used by
12 // the popup blocker, download bar, info bar and tabs.
13 @interface HoverCloseButton : HoverButton {
14  @private
15   // Bezier path for drawing the 'x' within the button.
16   scoped_nsobject<NSBezierPath> xPath_;
17 
18   // Bezier path for drawing the hover state circle behind the 'x'.
19   scoped_nsobject<NSBezierPath> circlePath_;
20 
21   // Translation of the 'x' button to the middle vertically.
22   scoped_nsobject<NSAffineTransform> transform_;
23 
24   // The size of the control when the last drawRect: was called, to recenter
25   // the paths above if it changed.
26   NSSize oldSize_;
27 }
28 
29 // Sets up the button's tracking areas and accessibility info when instantiated
30 // via initWithFrame or awakeFromNib.
31 - (void)commonInit;
32 
33 @end
34