00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef SCHEME_H
00029 #define SCHEME_H
00030
00031 #include "..\..\util\Paint.h"
00032 #include "..\..\Font.h"
00033
00034 namespace ui
00035 {
00036 namespace theme
00037 {
00038 namespace defaulttheme
00039 {
00040 class Scheme
00041 {
00042 public:
00043 virtual util::Paint * getTitleBarSelected() const = 0;
00044 virtual util::Paint * getTitleBarDeselected() const = 0;
00045 virtual util::Paint * getPushableRaisedBackground() const = 0;
00046 virtual util::Paint * getPushableLoweredBackground() const = 0;
00047 virtual util::Paint * getDefaultBackground() const = 0;
00048 virtual util::Paint * getTextBackground() const = 0;
00049 virtual util::Paint * getTextColor() const = 0;
00050 virtual util::Paint * getMenuBarBackground() const = 0;
00051 virtual util::Paint * getHighlight() const = 0;
00052
00053 virtual util::Paint * getMenuSelectedBackground() const = 0;
00054 virtual util::Paint * getMenuDeselectedBackground() const = 0;
00055
00056 virtual Font * getDefaultFont() const = 0;
00057
00058 virtual ~Scheme() {};
00059
00060 };
00061
00062 class SchemeManager
00063 {
00064 public:
00065
00066 static SchemeManager &getInstance()
00067 {
00068 static SchemeManager obj;
00069 return obj;
00070 }
00071 Scheme * getScheme() const;
00072 void setScheme(Scheme *s);
00073 private:
00074 SchemeManager();
00075 ~SchemeManager();
00076 SchemeManager(const SchemeManager&);
00077 SchemeManager& operator=(const SchemeManager&);
00078 Scheme *scheme;
00079 };
00080 }
00081 }
00082 }
00083
00084 #endif