summaryrefslogtreecommitdiff
path: root/render.h
diff options
context:
space:
mode:
authorlordjaxom <lordjaxom>2004-05-31 19:56:56 +0000
committerlordjaxom <lordjaxom>2004-05-31 19:56:56 +0000
commitb968a310699595ff139278440ae278aebf112c1f (patch)
tree1944e18832ee3f7420634db6a607aec6c35b76e8 /render.h
parent377ef2b18a6499a1ef0e540a74c4e54317efee85 (diff)
downloadvdr-plugin-text2skin-b968a310699595ff139278440ae278aebf112c1f.tar.gz
vdr-plugin-text2skin-b968a310699595ff139278440ae278aebf112c1f.tar.bz2
- "Background" may be initialized with a color nowv0.0.1-rc1
- fixed channel name/number display - added parameter type (to store logo's filetype) - "Timebar", "Progressbar" and "Volumebar": Background is only drawn if bg is specified - fixed timebar (was running backwards) - renamed "Progressbar" to "Replaybar" for more consistency - renamed "Logo" to "ChannelLogo" - introduced items "Language" (for audio language texts or symbols) and "Image" (foreground images) - adopted SKINS document (SKINS.de is not up-to-date yet) - introduced item "MenuTitle" - introduced items "MenuRed", "MenuGreen", "MenuYellow" and "MenuBlue" - activated message items for display in menu - introcuded parameter "arc" and item "Slope" - fixed possible segfault in Item=Message - implemented items "SymbolReplaying" and "SymbolRadio" - added "text" parameter for all text like Items (explanation follows) - added "SymbolPlay", "SymbolPause", "SymbolFastFwd", "SymbolFastRew", "SymbolSlowFwd", "SymbolSlowRew" items.
Diffstat (limited to 'render.h')
-rw-r--r--render.h67
1 files changed, 44 insertions, 23 deletions
diff --git a/render.h b/render.h
index 57ce493..75f4026 100644
--- a/render.h
+++ b/render.h
@@ -1,16 +1,20 @@
/*
- * $Id: render.h,v 1.3 2004/05/23 19:20:26 lordjaxom Exp $
+ * $Id: render.h,v 1.10 2004/05/31 19:54:12 lordjaxom Exp $
*/
#ifndef VDR_TEXT2SKIN_RENDER_H
#define VDR_TEXT2SKIN_RENDER_H
-#include <vector>
+#define __STL_CONFIG_H
#include <vdr/osd.h>
#include <vdr/skins.h>
+#undef __STL_CONFIG_H
#include "data.h"
+#include <vector>
+#include <string>
using std::vector;
+using std::string;
class cChannel;
class cEvent;
@@ -27,12 +31,11 @@ private:
eSkinSection mSection;
cOsd *mOsd;
- // TODO: rename or restructure items
// channel display
const cChannel *mChannel;
- int mNumber;
- const cEvent *mPresent;
- const cEvent *mFollowing;
+ int mChannelNumber;
+ const cEvent *mChannelPresent;
+ const cEvent *mChannelFollowing;
// volume display
int mVolumeCurrent;
@@ -40,34 +43,51 @@ private:
bool mVolumeMute;
// replay display
- const char *mReplayTitle;
+ string mReplayTitle;
bool mReplayPlay;
bool mReplayForward;
int mReplaySpeed;
int mReplayCurrent;
int mReplayTotal;
- const char *mReplayCurrentText;
- const char *mReplayTotalText;
- const char *mReplayJump;
+ const cMarks *mReplayMarks;
+ string mReplayCurrentText;
+ string mReplayTotalText;
+ string mReplayJump;
// message display
eMessageType mMessageType;
- const char *mMessageText;
+ string mMessageText;
// menu
struct MenuItem {
- const char *mName;
- bool mSelectable;
- bool operator!=(const MenuItem &b) { return b.mName != mName || b.mSelectable != mSelectable; }
+ string name;
+ bool sel;
+ bool operator!=(const MenuItem &b) { return b.name != name || b.sel != sel; }
};
- const char *mTitle;
- vector<MenuItem> mItems;
- int mCurrent;
+ string mMenuTitle;
+ vector<MenuItem> mMenuItems;
+ int mMenuCurrent;
+ string mMenuRed;
+ string mMenuGreen;
+ string mMenuYellow;
+ string mMenuBlue;
protected:
+ // Basic operations
+ void DrawBackground(const POINT &Pos, const SIZE &Size, const tColor *Bg, const tColor *Fg, const string &Path);
+ void DrawImage(const POINT &Pos, const SIZE &Size, const tColor *Bg, const tColor *Fg, const string &Path);
+ void DrawText(const POINT &Pos, const SIZE &Size, const tColor *Fg, const string &Text, const cFont *Font, int Align);
+ void DrawRectangle(const POINT &Pos, const SIZE &Size, const tColor *Fg);
+ void DrawEllipse(const POINT &Pos, const SIZE &Size, const tColor *Fg, int Arc);
+ void DrawSlope(const POINT &Pos, const SIZE &Size, const tColor *Fg, int Arc);
+ void DrawProgressbar(const POINT &Pos, const SIZE &Size, int Current, int Total, const tColor *Fg, const tColor *Bg, const cMarks *Marks = NULL);
+ void DrawMark(const POINT &Pos, const SIZE &Size, bool Start, bool Current, bool Horizontal);
+
void DisplayBackground(cText2SkinItem *Item);
- void DisplayLogo(cText2SkinItem *Item);
+ void DisplayChannelLogo(cText2SkinItem *Item);
+ void DisplayLanguage(cText2SkinItem *Item);
void DisplayText(cText2SkinItem *Item);
+ void DisplayImage(cText2SkinItem *Item);
void DisplayDateTime(cText2SkinItem *Item);
void DisplayDate(cText2SkinItem *Item);
void DisplayTime(cText2SkinItem *Item);
@@ -76,6 +96,7 @@ protected:
void DisplayChannelName(cText2SkinItem *Item);
void DisplayRectangle(cText2SkinItem *Item);
void DisplayEllipse(cText2SkinItem *Item);
+ void DisplaySlope(cText2SkinItem *Item);
void DisplayTimebar(cText2SkinItem *Item);
void DisplayPresentTime(cText2SkinItem *Item);
void DisplayPresentTitle(cText2SkinItem *Item);
@@ -86,16 +107,16 @@ protected:
void DisplaySymbol(cText2SkinItem *Item);
void DisplayVolumebar(cText2SkinItem *Item);
void DisplayMute(cText2SkinItem *Item);
- void DisplayProgressbar(cText2SkinItem *Item);
+ void DisplayReplaybar(cText2SkinItem *Item);
void DisplayReplayTitle(cText2SkinItem *Item);
void DisplayReplayCurrent(cText2SkinItem *Item);
void DisplayReplayTotal(cText2SkinItem *Item);
void DisplayReplayJump(cText2SkinItem *Item);
- void DisplayMessageStatus(cText2SkinItem *Item);
- void DisplayMessageInfo(cText2SkinItem *Item);
- void DisplayMessageWarning(cText2SkinItem *Item);
- void DisplayMessageError(cText2SkinItem *Item);
+ void DisplayMessage(cText2SkinItem *Item);
void DisplayMenuItems(cText2SkinItem *Item);
+ void DisplayMenuTitle(cText2SkinItem *Item);
+ void DisplayMenuColorbutton(cText2SkinItem *Item);
+ void DisplayMenuMessage(cText2SkinItem *Item);
public:
cText2SkinRender(cText2SkinData *Data, eSkinSection Section);