1 // Copyright (c) 2012 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_DOWNLOAD_BACKGROUND_THEME_H_ 6 #define CHROME_BROWSER_UI_COCOA_DOWNLOAD_BACKGROUND_THEME_H_ 7 8 #import <Cocoa/Cocoa.h> 9 10 #include "base/mac/scoped_nsobject.h" 11 #include "ui/base/theme_provider.h" 12 13 class BackgroundTheme : public ui::ThemeProvider { 14 public: 15 BackgroundTheme(ui::ThemeProvider* provider); 16 virtual ~BackgroundTheme(); 17 18 // Overridden from ui::ThemeProvider: 19 virtual gfx::ImageSkia* GetImageSkiaNamed(int id) const OVERRIDE; 20 virtual SkColor GetColor(int id) const OVERRIDE; 21 virtual bool GetDisplayProperty(int id, int* result) const OVERRIDE; 22 virtual bool ShouldUseNativeFrame() const OVERRIDE; 23 virtual bool HasCustomImage(int id) const OVERRIDE; 24 virtual base::RefCountedMemory* GetRawData( 25 int id, 26 ui::ScaleFactor scale_factor) const OVERRIDE; 27 virtual NSImage* GetNSImageNamed(int id) const OVERRIDE; 28 virtual NSColor* GetNSImageColorNamed(int id) const OVERRIDE; 29 virtual NSColor* GetNSColor(int id) const OVERRIDE; 30 virtual NSColor* GetNSColorTint(int id) const OVERRIDE; 31 virtual NSGradient* GetNSGradient(int id) const OVERRIDE; 32 33 private: 34 ui::ThemeProvider* provider_; 35 base::scoped_nsobject<NSGradient> buttonGradient_; 36 base::scoped_nsobject<NSGradient> buttonPressedGradient_; 37 base::scoped_nsobject<NSColor> borderColor_; 38 }; 39 40 #endif // CHROME_BROWSER_UI_COCOA_DOWNLOAD_BACKGROUND_THEME_H_ 41