summaryrefslogtreecommitdiff
path: root/xml
diff options
context:
space:
mode:
Diffstat (limited to 'xml')
-rw-r--r--xml/display.c6
-rw-r--r--xml/display.h6
-rw-r--r--xml/function.h8
-rw-r--r--xml/string.c7
-rw-r--r--xml/string.h11
5 files changed, 24 insertions, 14 deletions
diff --git a/xml/display.c b/xml/display.c
index a64fe1c..a8268c4 100644
--- a/xml/display.c
+++ b/xml/display.c
@@ -1,5 +1,5 @@
/*
- * $Id: display.c,v 1.3 2005/01/02 20:16:00 lordjaxom Exp $
+ * $Id: display.c,v 1.4 2005/01/26 20:40:08 lordjaxom Exp $
*/
#include "xml/display.h"
@@ -9,9 +9,9 @@ static const std::string DisplayNames[] =
"replaySmall", "menu" };
cxDisplay::cxDisplay(cxSkin *parent):
+ mSkin(parent),
mType((eType)__COUNT_DISPLAY__),
- mNumWindows(0),
- mSkin(parent)
+ mNumWindows(0)
{
}
diff --git a/xml/display.h b/xml/display.h
index c7a617a..319cc7e 100644
--- a/xml/display.h
+++ b/xml/display.h
@@ -1,5 +1,5 @@
/*
- * $Id: display.h,v 1.4 2005/01/02 20:16:00 lordjaxom Exp $
+ * $Id: display.h,v 1.5 2005/01/26 20:40:08 lordjaxom Exp $
*/
#ifndef VDR_TEXT2SKIN_DISPLAY_H
@@ -29,15 +29,15 @@ public:
};
private:
+ cxSkin *mSkin;
eType mType;
txWindow mWindows[MAXOSDAREAS];
int mNumWindows;
int mNumMarquees;
cxObjects mObjects;
- cxSkin *mSkin;
public:
- cxDisplay(cxSkin *parent);
+ cxDisplay(cxSkin *Parent);
static const std::string &GetType(eType Type);
bool ParseType(const std::string &Text);
diff --git a/xml/function.h b/xml/function.h
index 72b887c..bef62b7 100644
--- a/xml/function.h
+++ b/xml/function.h
@@ -1,5 +1,5 @@
/*
- * $Id: function.h,v 1.8 2005/01/11 18:17:46 lordjaxom Exp $
+ * $Id: function.h,v 1.9 2005/01/26 20:40:08 lordjaxom Exp $
*/
#ifndef VDR_TEXT2SKIN_XML_FUNCTION_H
@@ -14,6 +14,9 @@
#define MAXPARAMETERS 512
+class cxObject;
+class cxSkin;
+
class cxFunction {
public:
enum eType {
@@ -37,6 +40,7 @@ public:
};
private:
+ cxObject *mObject;
cxSkin *mSkin;
eType mType;
cxString mString;
@@ -49,7 +53,7 @@ protected:
cxType FunPlugin(const cxType &Param) const;
public:
- cxFunction(cxSkin *Skin);
+ cxFunction(cxObject *Parent);
cxFunction(const cxString &String);
cxFunction(const cxFunction &Src);
~cxFunction();
diff --git a/xml/string.c b/xml/string.c
index dec59a1..de4f703 100644
--- a/xml/string.c
+++ b/xml/string.c
@@ -1,5 +1,5 @@
/*
- * $Id: string.c,v 1.14 2005/01/25 14:14:43 lordjaxom Exp $
+ * $Id: string.c,v 1.15 2005/01/26 20:38:45 lordjaxom Exp $
*/
#include "xml/string.h"
@@ -54,8 +54,9 @@ std::string txToken::Token(const txToken &Token)
cxString::tStringList cxString::mStrings;
-cxString::cxString(cxSkin *Skin, bool Translate):
- mSkin(Skin),
+cxString::cxString(cxObject *Parent, bool Translate):
+ mObject(Parent),
+ mSkin(Parent->Skin()),
mTranslate(Translate)
{
mStrings.push_back(this);
diff --git a/xml/string.h b/xml/string.h
index 50bc996..3ccaf8b 100644
--- a/xml/string.h
+++ b/xml/string.h
@@ -1,5 +1,5 @@
/*
- * $Id: string.h,v 1.15 2005/01/21 20:41:23 lordjaxom Exp $
+ * $Id: string.h,v 1.16 2005/01/26 20:38:45 lordjaxom Exp $
*/
#ifndef VDR_TEXT2SKIN_XML_STRING_H
@@ -191,6 +191,7 @@ inline bool operator< (const txToken &A, const txToken &B)
: A.Type < B.Type;
}
+class cxObject;
class cxSkin;
class cxString {
@@ -198,22 +199,26 @@ private:
typedef std::vector<cxString*> tStringList;
static tStringList mStrings;
+ cxObject *mObject;
+ cxSkin *mSkin;
std::string mText;
std::string mOriginal;
std::vector<txToken> mTokens;
- cxSkin *mSkin;
bool mTranslate;
public:
static void Reparse(void);
- cxString(cxSkin *Skin, bool Translate);
+ cxString(cxObject *Parent, bool Translate);
~cxString();
bool Parse(const std::string &Text, bool Translate = false);
cxType Evaluate(void) const;
void SetListIndex(uint Index, int Tab);
+
+ cxObject *Object(void) const { return mObject; }
+ cxSkin *Skin(void) const { return mSkin; }
};
inline void cxString::SetListIndex(uint Index, int Tab)