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 bool UsingSystemTheme() const OVERRIDE;
     20   virtual gfx::ImageSkia* GetImageSkiaNamed(int id) const OVERRIDE;
     21   virtual SkColor GetColor(int id) const OVERRIDE;
     22   virtual int GetDisplayProperty(int id) const OVERRIDE;
     23   virtual bool ShouldUseNativeFrame() const OVERRIDE;
     24   virtual bool HasCustomImage(int id) const OVERRIDE;
     25   virtual base::RefCountedMemory* GetRawData(
     26       int id,
     27       ui::ScaleFactor scale_factor) const OVERRIDE;
     28   virtual NSImage* GetNSImageNamed(int id) const OVERRIDE;
     29   virtual NSColor* GetNSImageColorNamed(int id) const OVERRIDE;
     30   virtual NSColor* GetNSColor(int id) const OVERRIDE;
     31   virtual NSColor* GetNSColorTint(int id) const OVERRIDE;
     32   virtual NSGradient* GetNSGradient(int id) const OVERRIDE;
     33 
     34  private:
     35   ui::ThemeProvider* provider_;
     36   base::scoped_nsobject<NSGradient> buttonGradient_;
     37   base::scoped_nsobject<NSGradient> buttonPressedGradient_;
     38   base::scoped_nsobject<NSColor> borderColor_;
     39 };
     40 
     41 #endif  // CHROME_BROWSER_UI_COCOA_DOWNLOAD_BACKGROUND_THEME_H_
     42