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#ifndef CHROME_BROWSER_UI_COCOA_DRAGGABLE_BUTTON_H_
6#define CHROME_BROWSER_UI_COCOA_DRAGGABLE_BUTTON_H_
7
8#import <Cocoa/Cocoa.h>
9
10#import "base/mac/scoped_nsobject.h"
11#import "chrome/browser/ui/cocoa/draggable_button_mixin.h"
12
13// Class for buttons that can be drag sources. If the mouse is clicked and moved
14// more than a given distance, this class will call |-beginDrag:| instead of
15// |-performClick:|. Subclasses should override these two methods.
16@interface DraggableButton : NSButton<DraggableButtonMixin> {
17 @private
18  base::scoped_nsobject<DraggableButtonImpl> draggableButtonImpl_;
19}
20
21@property(readonly, nonatomic) DraggableButtonImpl* draggableButton;
22
23@end
24
25#endif  // CHROME_BROWSER_UI_COCOA_DRAGGABLE_BUTTON_H_
26