Home | History | Annotate | Download | only in base
      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 UI_BASE_DEFAULT_THEME_PROVIDER_H_
      6 #define UI_BASE_DEFAULT_THEME_PROVIDER_H_
      7 
      8 #include <vector>
      9 
     10 #include "base/basictypes.h"
     11 #include "base/compiler_specific.h"
     12 #include "ui/base/theme_provider.h"
     13 #include "ui/base/ui_base_export.h"
     14 
     15 namespace ui {
     16 class ResourceBundle;
     17 }
     18 
     19 namespace ui {
     20 
     21 class UI_BASE_EXPORT DefaultThemeProvider : public ThemeProvider {
     22  public:
     23   DefaultThemeProvider();
     24   virtual ~DefaultThemeProvider();
     25 
     26   // Overridden from ui::ThemeProvider:
     27   virtual bool UsingSystemTheme() const OVERRIDE;
     28   virtual gfx::ImageSkia* GetImageSkiaNamed(int id) const OVERRIDE;
     29   virtual SkColor GetColor(int id) const OVERRIDE;
     30   virtual int GetDisplayProperty(int id) const OVERRIDE;
     31   virtual bool ShouldUseNativeFrame() const OVERRIDE;
     32   virtual bool HasCustomImage(int id) const OVERRIDE;
     33   virtual base::RefCountedMemory* GetRawData(
     34       int id,
     35       ui::ScaleFactor scale_factor) const OVERRIDE;
     36 
     37 #if defined(OS_MACOSX)
     38   virtual NSImage* GetNSImageNamed(int id) const OVERRIDE;
     39   virtual NSColor* GetNSImageColorNamed(int id) const OVERRIDE;
     40   virtual NSColor* GetNSColor(int id) const OVERRIDE;
     41   virtual NSColor* GetNSColorTint(int id) const OVERRIDE;
     42   virtual NSGradient* GetNSGradient(int id) const OVERRIDE;
     43 #endif
     44 
     45  private:
     46   DISALLOW_COPY_AND_ASSIGN(DefaultThemeProvider);
     47 };
     48 
     49 }  // namespace ui
     50 
     51 #endif  // UI_BASE_DEFAULT_THEME_PROVIDER_H_
     52