// Copyright (c) 2011 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. #import "chrome/browser/ui/cocoa/hover_image_button.h" #include "base/memory/scoped_nsobject.h" #include "grit/generated_resources.h" #include "ui/base/l10n/l10n_util.h" @implementation HoverImageButton - (void)drawRect:(NSRect)rect { if (hoverState_ == kHoverStateMouseDown && pressedImage_) { [super setImage:pressedImage_.get()]; [super setAlphaValue:pressedOpacity_]; } else if (hoverState_ == kHoverStateMouseOver && hoverImage_) { [super setImage:hoverImage_.get()]; [super setAlphaValue:hoverOpacity_]; } else { [super setImage:defaultImage_.get()]; [super setAlphaValue:defaultOpacity_]; } [super drawRect:rect]; } - (void)setDefaultImage:(NSImage*)image { defaultImage_.reset([image retain]); } - (void)setDefaultOpacity:(float)opacity { defaultOpacity_ = opacity; } - (void)setHoverImage:(NSImage*)image { hoverImage_.reset([image retain]); } - (void)setHoverOpacity:(float)opacity { hoverOpacity_ = opacity; } - (void)setPressedImage:(NSImage*)image { pressedImage_.reset([image retain]); } - (void)setPressedOpacity:(float)opacity { pressedOpacity_ = opacity; } @end