summaryrefslogtreecommitdiff
path: root/glcdskin/object.h
diff options
context:
space:
mode:
authormrwastl <mrwastl@users.sourceforge.net>2010-06-18 22:59:14 +0200
committermrwastl <mrwastl@users.sourceforge.net>2010-06-18 22:59:14 +0200
commitf5f1d102c99ef7b3f1e0aec6463a8c17d3262bad (patch)
tree8467e6ee4a260ff1c2a033838f72a5a4a8ea088b /glcdskin/object.h
parent4a7aeebfab185320694c88d6d3ff5a1537f94660 (diff)
downloadgraphlcd-base-f5f1d102c99ef7b3f1e0aec6463a8c17d3262bad.tar.gz
graphlcd-base-f5f1d102c99ef7b3f1e0aec6463a8c17d3262bad.tar.bz2
text-object: added support for alternative text / alternative condition; bug fixes: annoying update problems should now be fixed; bug fix in brightness update detection; overloadable method for getting a timestamp that is compliant to VDR timestamp (cSkinConfig::Now(), will be overloaded in vdr-plugin-graphlcd to return the value of cTimeMs::Now()); serdisp-driver: call rotate only if UpsideDown is set
Diffstat (limited to 'glcdskin/object.h')
-rw-r--r--glcdskin/object.h19
1 files changed, 12 insertions, 7 deletions
diff --git a/glcdskin/object.h b/glcdskin/object.h
index 188dd79..2e05a12 100644
--- a/glcdskin/object.h
+++ b/glcdskin/object.h
@@ -77,9 +77,9 @@ public:
};
private:
- cSkinDisplay * mDisplay;
+ cSkinDisplay * mDisplay; // parent display
cSkin * mSkin;
- eType mType;
+ eType mType; // type of object, one of enum eType
tPoint mPos1;
tPoint mPos2;
eColor mColor;
@@ -96,7 +96,7 @@ private:
cSkinString mText;
cSkinFunction * mCondition;
- uint64_t mLastChange; // last change in dynamic object (scroll, frame change, ...)
+ uint64_t mLastChange; // timestamp: last change in dynamic object (scroll, frame change, ...)
int mChangeDelay; // delay between two changes (frame change, scrolling, ...)
// special values: -2: no further looping (mScrollLoopMode == 'once')
// -1: not set (ie: not an animated image)
@@ -111,7 +111,10 @@ private:
int mScrollOffset; // scroll offset (pixels)
std::string mCurrText; // current text (for checks if text has changed)
- cSkinObjects * mObjects; // used for block objects such as <list>
+ std::string mAltText; // alternative text source for text-objects
+ cSkinFunction * mAltCondition; // condition when alternative sources are used
+
+ cSkinObjects * mObjects; // used for block objects such as <list>
public:
cSkinObject(cSkinDisplay * parent);
@@ -127,9 +130,11 @@ public:
bool ParseWidth(const std::string &Text);
bool ParseHeight(const std::string &Text);
- bool ParseScrollLoopMode(const std::string & Text);
- bool ParseScrollSpeed(const std::string & Text);
- bool ParseScrollTime(const std::string & Text);
+ bool ParseScrollLoopMode(const std::string & Text); // parse scroll mode ([never|once|always])
+ bool ParseScrollSpeed(const std::string & Text); // parse scroll speed
+ bool ParseScrollTime(const std::string & Text); // parse scroll time interval
+
+ bool ParseAltCondition(const std::string &Text); // parse condition for alternative use (eg. alternative sources)
void SetListIndex(int MaxItems, int Index);