- add sources.
[platform/framework/web/crosswalk.git] / src / ui / base / cocoa / controls / hover_image_menu_button_cell.h
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
3 // found in the LICENSE file.
4
5 #ifndef UI_BASE_COCOA_CONTROLS_HOVER_IMAGE_MENU_BUTTON_CELL_H_
6 #define UI_BASE_COCOA_CONTROLS_HOVER_IMAGE_MENU_BUTTON_CELL_H_
7
8 #import <Cocoa/Cocoa.h>
9
10 #include "base/mac/scoped_nsobject.h"
11 #include "ui/base/ui_export.h"
12
13 // A custom NSPopUpButtonCell that permits a hover image, and draws only an
14 // image in its frame; no border, bezel or drop-down arrow. Use setDefaultImage:
15 // to set the default image, setAlternateImage: to set the button shown while
16 // the menu is active, and setHoverImage: for the mouseover hover image.
17 UI_EXPORT
18 @interface HoverImageMenuButtonCell : NSPopUpButtonCell {
19  @private
20   base::scoped_nsobject<NSImage> hoverImage_;
21   BOOL hovered_;
22 }
23
24 @property(retain, nonatomic) NSImage* hoverImage;
25 @property(assign, nonatomic, getter=isHovered) BOOL hovered;
26
27 // Return the image that would be drawn based on the current state flags.
28 - (NSImage*)imageToDraw;
29
30 // Set the default image to show on the menu button.
31 - (void)setDefaultImage:(NSImage*)defaultImage;
32
33 @end
34
35 #endif  // UI_BASE_COCOA_CONTROLS_HOVER_IMAGE_MENU_BUTTON_CELL_H_