Home | History | Annotate | Download | only in download
      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