mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-10-14 02:27:39 -04:00
Theme Editor: Added rendering support for some more tags
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27094 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
8f28c0443c
commit
deab1bb2f5
4 changed files with 55 additions and 0 deletions
|
@ -117,6 +117,18 @@ void RBScreen::setBackdrop(QString filename)
|
||||||
backdrop = 0;
|
backdrop = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void RBScreen::makeCustomUI(QString id)
|
||||||
|
{
|
||||||
|
if(namedViewports.value(id, 0) != 0)
|
||||||
|
{
|
||||||
|
QMap<QString, RBViewport*>::iterator i;
|
||||||
|
for(i = namedViewports.begin(); i != namedViewports.end(); i++)
|
||||||
|
(*i)->clearCustomUI();
|
||||||
|
namedViewports.value(id)->makeCustomUI();
|
||||||
|
namedViewports.value(id)->show();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
QColor RBScreen::stringToColor(QString str, QColor fallback)
|
QColor RBScreen::stringToColor(QString str, QColor fallback)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
|
@ -59,6 +59,7 @@ public:
|
||||||
RBImage* getImage(QString name){ return images.value(name, 0); }
|
RBImage* getImage(QString name){ return images.value(name, 0); }
|
||||||
|
|
||||||
void setBackdrop(QString filename);
|
void setBackdrop(QString filename);
|
||||||
|
void makeCustomUI(QString id);
|
||||||
|
|
||||||
static QColor stringToColor(QString str, QColor fallback);
|
static QColor stringToColor(QString str, QColor fallback);
|
||||||
|
|
||||||
|
|
|
@ -40,6 +40,12 @@ public:
|
||||||
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option,
|
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option,
|
||||||
QWidget *widget);
|
QWidget *widget);
|
||||||
|
|
||||||
|
void setBGColor(QColor color){ background = color; }
|
||||||
|
void setFGColor(QColor color){ foreground = color; }
|
||||||
|
void makeCustomUI(){ customUI = true; }
|
||||||
|
void clearCustomUI(){ customUI = false; }
|
||||||
|
|
||||||
|
|
||||||
void newline();
|
void newline();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
|
@ -592,6 +592,42 @@ void ParseTreeNode::render(const RBRenderInfo &info, RBViewport* viewport)
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case 'V':
|
||||||
|
|
||||||
|
switch(element->tag->name[1])
|
||||||
|
{
|
||||||
|
|
||||||
|
case 'b':
|
||||||
|
/* %Vb */
|
||||||
|
viewport->setBGColor(RBScreen::
|
||||||
|
stringToColor(QString(element->params[0].
|
||||||
|
data.text),
|
||||||
|
Qt::white));
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'd':
|
||||||
|
/* %Vd */
|
||||||
|
id = element->params[0].data.text;
|
||||||
|
info.screen()->showViewport(id);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'f':
|
||||||
|
/* %Vf */
|
||||||
|
viewport->setFGColor(RBScreen::
|
||||||
|
stringToColor(QString(element->params[0].
|
||||||
|
data.text),
|
||||||
|
Qt::black));
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'I':
|
||||||
|
/* %VI */
|
||||||
|
info.screen()->makeCustomUI(element->params[0].data.text);
|
||||||
|
break;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
case 'X':
|
case 'X':
|
||||||
|
|
||||||
switch(element->tag->name[1])
|
switch(element->tag->name[1])
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue