vdr  2.2.0
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
cTheme Class Reference

#include <themes.h>

Public Types

enum  { MaxThemeColors = 128 }
 

Public Member Functions

 cTheme (void)
 
 ~cTheme ()
 
const char * Name (void)
 
const char * Description (void)
 
bool Load (const char *FileName, bool OnlyDescriptions=false)
 
bool Save (const char *FileName)
 
int AddColor (const char *Name, tColor Color)
 
tColor Color (int Subject)
 

Private Member Functions

bool FileNameOk (const char *FileName, bool SetName=false)
 

Private Attributes

char * name
 
cStringList descriptions
 
char * colorNames [MaxThemeColors]
 
tColor colorValues [MaxThemeColors]
 

Detailed Description

Definition at line 17 of file themes.h.

Member Enumeration Documentation

anonymous enum
Enumerator
MaxThemeColors 

Definition at line 19 of file themes.h.

Constructor & Destructor Documentation

cTheme::cTheme ( void  )

Creates a new theme class.

Definition at line 18 of file themes.c.

References colorNames, colorValues, descriptions, and name.

cTheme::~cTheme ( )

Definition at line 26 of file themes.c.

References colorNames, MaxThemeColors, and name.

Member Function Documentation

int cTheme::AddColor ( const char *  Name,
tColor  Color 
)

Adds a color with the given Name to this theme, initializes it with Color and returns an index into the color array that can be used in a call to Color() later.

The index returned from the first call to AddColor() is 0, and subsequent calls will return values that are incremented by 1 with every call. If a color entry with the given Name already exists, its value will be overwritten with Color and the returned index will be that of the existing entry.

Definition at line 183 of file themes.c.

References Color(), colorNames, colorValues, and MaxThemeColors.

Referenced by Name().

tColor cTheme::Color ( int  Subject)

Returns the color for the given Subject.

Subject must be one of the values returned by a previous call to AddColor().

Definition at line 201 of file themes.c.

References colorValues, MaxThemeColors, and cThemes::themesDirectory.

Referenced by AddColor(), cSkinClassicDisplayMenu::Clear(), cSkinSTTNGDisplayMenu::Clear(), cSkinLCARSDisplayMenu::Clear(), cSkinClassicDisplayChannel::cSkinClassicDisplayChannel(), cSkinClassicDisplayMenu::cSkinClassicDisplayMenu(), cSkinClassicDisplayReplay::cSkinClassicDisplayReplay(), cSkinClassicDisplayTracks::cSkinClassicDisplayTracks(), cSkinLCARSDisplayChannel::cSkinLCARSDisplayChannel(), cSkinLCARSDisplayMenu::cSkinLCARSDisplayMenu(), cSkinLCARSDisplayReplay::cSkinLCARSDisplayReplay(), cSkinLCARSDisplayTracks::cSkinLCARSDisplayTracks(), cSkinLCARSDisplayVolume::cSkinLCARSDisplayVolume(), cSkinSTTNGDisplayChannel::cSkinSTTNGDisplayChannel(), cSkinSTTNGDisplayMenu::cSkinSTTNGDisplayMenu(), cSkinSTTNGDisplayMessage::cSkinSTTNGDisplayMessage(), cSkinSTTNGDisplayReplay::cSkinSTTNGDisplayReplay(), cSkinSTTNGDisplayTracks::cSkinSTTNGDisplayTracks(), cSkinSTTNGDisplayVolume::cSkinSTTNGDisplayVolume(), cSkinLCARSDisplayChannel::DrawDate(), cSkinLCARSDisplayMenu::DrawDate(), cSkinLCARSDisplayReplay::DrawDate(), cSkinLCARSDisplayMenu::DrawDevice(), DrawDeviceData(), DrawDevicePosition(), DrawDeviceSignal(), cSkinLCARSDisplayMenu::DrawDisk(), cSkinLCARSDisplayMenu::DrawFrameDisplay(), cSkinLCARSDisplayMenu::DrawInfo(), cSkinLCARSDisplayMenu::DrawLive(), cSkinLCARSDisplayMenu::DrawLiveIndicator(), cSkinLCARSDisplayMenu::DrawLoad(), cSkinLCARSDisplayMenu::DrawMainBracket(), cSkinLCARSDisplayMenu::DrawMainFrameLower(), cSkinLCARSDisplayMenu::DrawMenuFrame(), cSkinLCARSDisplayMenu::DrawPlay(), cSkinClassicDisplayMenu::DrawScrollbar(), cSkinSTTNGDisplayMenu::DrawScrollbar(), cSkinLCARSDisplayMenu::DrawScrollbar(), cSkinLCARSDisplayChannel::DrawSeen(), cSkinLCARSDisplayMenu::DrawSeen(), cSkinLCARSDisplayMenu::DrawStatusElbows(), cSkinLCARSDisplayMenu::DrawTimer(), cSkinLCARSDisplayMenu::DrawTimers(), cSkinClassicDisplayMenu::DrawTitle(), cSkinSTTNGDisplayMenu::DrawTitle(), cSkinLCARSDisplayChannel::DrawTrack(), cSkinLCARSDisplayReplay::DrawTrack(), cSkinClassicDisplayChannel::Flush(), cSkinSTTNGDisplayChannel::Flush(), cSkinClassicDisplayMenu::Flush(), cSkinSTTNGDisplayMenu::Flush(), Name(), cSkinSTTNGDisplayTracks::SetAudioChannel(), cSkinLCARSDisplayTracks::SetAudioChannel(), cSkinClassicDisplayMenu::SetButtons(), cSkinSTTNGDisplayMenu::SetButtons(), cSkinLCARSDisplayMenu::SetButtons(), cSkinClassicDisplayChannel::SetChannel(), cSkinSTTNGDisplayChannel::SetChannel(), cSkinLCARSDisplayChannel::SetChannel(), cSkinClassicDisplayReplay::SetCurrent(), cSkinSTTNGDisplayReplay::SetCurrent(), cSkinLCARSDisplayReplay::SetCurrent(), cSkinClassicDisplayMenu::SetEvent(), cSkinSTTNGDisplayMenu::SetEvent(), cSkinLCARSDisplayMenu::SetEvent(), cSkinClassicDisplayChannel::SetEvents(), cSkinSTTNGDisplayChannel::SetEvents(), cSkinLCARSDisplayChannel::SetEvents(), cSkinClassicDisplayMenu::SetItem(), cSkinSTTNGDisplayMenu::SetItem(), cSkinClassicDisplayTracks::SetItem(), cSkinLCARSDisplayMenu::SetItem(), cSkinSTTNGDisplayTracks::SetItem(), cSkinLCARSDisplayTracks::SetItem(), cSkinClassicDisplayReplay::SetJump(), cSkinSTTNGDisplayReplay::SetJump(), cSkinLCARSDisplayReplay::SetJump(), cSkinLCARSDisplayMenu::SetMenuCategory(), cSkinClassicDisplayChannel::SetMessage(), cSkinSTTNGDisplayChannel::SetMessage(), cSkinClassicDisplayMenu::SetMessage(), cSkinLCARSDisplayChannel::SetMessage(), cSkinSTTNGDisplayMenu::SetMessage(), cSkinClassicDisplayReplay::SetMessage(), cSkinClassicDisplayMessage::SetMessage(), cSkinLCARSDisplayMenu::SetMessage(), cSkinSTTNGDisplayReplay::SetMessage(), cSkinSTTNGDisplayMessage::SetMessage(), cSkinLCARSDisplayReplay::SetMessage(), cSkinLCARSDisplayMessage::SetMessage(), cSkinSTTNGDisplayReplay::SetMode(), cSkinLCARSDisplayReplay::SetMode(), cSkinClassicDisplayReplay::SetProgress(), cSkinSTTNGDisplayReplay::SetProgress(), cSkinLCARSDisplayReplay::SetProgress(), cSkinClassicDisplayMenu::SetRecording(), cSkinSTTNGDisplayMenu::SetRecording(), cSkinLCARSDisplayMenu::SetRecording(), cSkinLCARSDisplayReplay::SetRecording(), cSkinClassicDisplayMenu::SetText(), cSkinSTTNGDisplayMenu::SetText(), cSkinLCARSDisplayMenu::SetText(), cSkinClassicDisplayReplay::SetTitle(), cSkinLCARSDisplayMenu::SetTitle(), cSkinSTTNGDisplayReplay::SetTitle(), cSkinLCARSDisplayReplay::SetTitle(), cSkinClassicDisplayReplay::SetTotal(), cSkinSTTNGDisplayReplay::SetTotal(), cSkinLCARSDisplayReplay::SetTotal(), cSkinClassicDisplayVolume::SetVolume(), cSkinSTTNGDisplayVolume::SetVolume(), and cSkinLCARSDisplayVolume::SetVolume().

const char * cTheme::Description ( void  )

Returns a user visible, single line description of this theme.

The actual text shouldn't be too long, so that it can be fully displayed in the Setup/OSD menu.

Definition at line 75 of file themes.c.

References descriptions, I18nCurrentLanguage(), and name.

Referenced by cMenuSetupOSD::cMenuSetupOSD(), cThemes::Descriptions(), cThemes::Load(), and Name().

bool cTheme::FileNameOk ( const char *  FileName,
bool  SetName = false 
)
private

Definition at line 33 of file themes.c.

References esyslog, isempty(), and name.

Referenced by Load(), and Save().

bool cTheme::Load ( const char *  FileName,
bool  OnlyDescriptions = false 
)
const char* cTheme::Name ( void  )
inline

Definition at line 30 of file themes.h.

References AddColor(), Color(), Description(), Load(), name, and Save().

Referenced by cThemes::Load(), and cThemes::Save().

bool cTheme::Save ( const char *  FileName)

Saves the theme data to the given file.

FileName must be in the form "<skin>-<theme>.theme", where <skin> is the name of the skin this theme applies to, and <theme> is the actual theme name, which will be used to identify this theme in the 'setup.conf', and is normally not seen by the user. It should consist of only lowercase letters and digits.

Definition at line 160 of file themes.c.

References cSafeFile::Close(), colorNames, colorValues, descriptions, FileNameOk(), I18nLanguageCode(), I18nLanguages(), MaxThemeColors, cSafeFile::Open(), and cVector< T >::Size().

Referenced by cThemes::Descriptions(), Name(), and cThemes::Save().

Member Data Documentation

char* cTheme::colorNames[MaxThemeColors]
private

Definition at line 23 of file themes.h.

Referenced by AddColor(), cTheme(), Load(), Save(), and ~cTheme().

tColor cTheme::colorValues[MaxThemeColors]
private

Definition at line 24 of file themes.h.

Referenced by AddColor(), Color(), cTheme(), Load(), and Save().

cStringList cTheme::descriptions
private
char* cTheme::name
private

Definition at line 21 of file themes.h.

Referenced by cTheme(), Description(), FileNameOk(), Name(), and ~cTheme().


The documentation for this class was generated from the following files: