00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #ifndef __MUISKIN_H__
00012 #define __MUISKIN_H__
00013
00014 #include "TTUIBase.h"
00015 #include "MColorScheme.h"
00016
00017 class MFont;
00018 class MImage;
00019
00079 class MUISkin
00080 {
00081 public:
00087 enum EFontType
00088 {
00089 KButtonFont,
00090 KCheckBoxFont,
00091 KRadioButtonFont,
00092 KTitleFont,
00093 KBigFont
00094 };
00095
00097 enum EImageType
00098 {
00099 KDesktopBackground = 0,
00100 KCheckOn,
00101 KCheckOff,
00102 KCheckOnDisabled,
00103 KCheckOffDisabled,
00104 KRadioOn,
00105 KRadioOff,
00106 KRadioOnDisabled,
00107 KRadioOffDisabled,
00108 KSliderHorizontalEnabled,
00109 KSliderHorizontalDisabled,
00110 KSliderVerticalEnabled,
00111 KSliderVerticalDisabled,
00112 KBlueLabyrinth,
00113 KRedLabyrinth,
00114 KGreenLabyrinth
00115 };
00116
00117 public:
00118 virtual ~MUISkin() {};
00119
00122 virtual MColorScheme* GetColorScheme() = 0;
00123
00126 virtual MFont* GetFont( EFontType aFontType ) = 0;
00127
00134 virtual MImage* GetImage( EImageType aImageType ) = 0;
00135
00140 virtual void SetColorSchemeType( MColorScheme::EDefaultColorScheme aType ) = 0;
00141
00143 virtual MColorScheme::EDefaultColorScheme GetColorSchemeType() = 0;
00144
00145 public:
00152 static MUISkin* GetCurrentSkin();
00153
00158 static void SetCurrentSkin( MUISkin* aSkin );
00159
00169 static void SetDefaultSkinDirectory( const char* aDirectory );
00170
00174 static const char* GetDefaultSkinDirectory();
00175 };
00176
00177
00178 #endif // __MUISKIN_H__
00179