OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef UI_APP_LIST_COCOA_ITEM_DRAG_WINDOW_CONTROLLER_H_ | 5 #ifndef UI_APP_LIST_COCOA_ITEM_DRAG_WINDOW_CONTROLLER_H_ |
6 #define UI_APP_LIST_COCOA_ITEM_DRAG_WINDOW_CONTROLLER_H_ | 6 #define UI_APP_LIST_COCOA_ITEM_DRAG_WINDOW_CONTROLLER_H_ |
7 | 7 |
8 #import <Cocoa/Cocoa.h> | 8 #import <Cocoa/Cocoa.h> |
9 #import <QuartzCore/QuartzCore.h> | 9 #import <QuartzCore/QuartzCore.h> |
10 | 10 |
11 #include "base/memory/scoped_nsobject.h" | 11 #include "base/mac/scoped_nsobject.h" |
12 | 12 |
13 @class AppsGridViewItem; | 13 @class AppsGridViewItem; |
14 | 14 |
15 // Controller to manage the animations and transient views that are used when | 15 // Controller to manage the animations and transient views that are used when |
16 // dragging an app list item around the app list grid. When initiated, the item | 16 // dragging an app list item around the app list grid. When initiated, the item |
17 // image (only) is grown in an animation, and sticks to the mouse cursor. When | 17 // image (only) is grown in an animation, and sticks to the mouse cursor. When |
18 // released, the label is added to the image and it shrinks and moves to the | 18 // released, the label is added to the image and it shrinks and moves to the |
19 // item location in the grid. | 19 // item location in the grid. |
20 @interface ItemDragController : NSViewController { | 20 @interface ItemDragController : NSViewController { |
21 @private | 21 @private |
22 scoped_nsobject<CALayer> dragLayer_; | 22 base::scoped_nsobject<CALayer> dragLayer_; |
23 scoped_nsobject<NSButton> buttonToRestore_; | 23 base::scoped_nsobject<NSButton> buttonToRestore_; |
24 NSPoint mouseOffset_; | 24 NSPoint mouseOffset_; |
25 NSTimeInterval growStart_; | 25 NSTimeInterval growStart_; |
26 BOOL shrinking_; | 26 BOOL shrinking_; |
27 } | 27 } |
28 | 28 |
29 - (id)initWithGridCellSize:(NSSize)size; | 29 - (id)initWithGridCellSize:(NSSize)size; |
30 | 30 |
31 - (void)initiate:(AppsGridViewItem*)item | 31 - (void)initiate:(AppsGridViewItem*)item |
32 mouseDownLocation:(NSPoint)mouseDownLocation | 32 mouseDownLocation:(NSPoint)mouseDownLocation |
33 currentLocation:(NSPoint)currentLocation | 33 currentLocation:(NSPoint)currentLocation |
34 timestamp:(NSTimeInterval)eventTimestamp; | 34 timestamp:(NSTimeInterval)eventTimestamp; |
35 | 35 |
36 - (void)update:(NSPoint)currentLocation | 36 - (void)update:(NSPoint)currentLocation |
37 timestamp:(NSTimeInterval)eventTimestamp; | 37 timestamp:(NSTimeInterval)eventTimestamp; |
38 | 38 |
39 - (void)complete:(AppsGridViewItem*)item | 39 - (void)complete:(AppsGridViewItem*)item |
40 targetOrigin:(NSPoint)targetOrigin; | 40 targetOrigin:(NSPoint)targetOrigin; |
41 | 41 |
42 @end | 42 @end |
43 | 43 |
44 #endif // UI_APP_LIST_COCOA_ITEM_DRAG_WINDOW_CONTROLLER_H_ | 44 #endif // UI_APP_LIST_COCOA_ITEM_DRAG_WINDOW_CONTROLLER_H_ |
OLD | NEW |