aboutsummaryrefslogtreecommitdiff
path: root/lib/gui/elistboxcontent.cpp
diff options
context:
space:
mode:
authorAndreas Monzner <andreas.monzner@multimedia-labs.de>2007-07-26 19:44:12 +0000
committerAndreas Monzner <andreas.monzner@multimedia-labs.de>2007-07-26 19:44:12 +0000
commit13bd9764b67721730bb77da340717d9c40e8c740 (patch)
tree93322db36a2ff9b9a4309479fa7dfeb056c2fd6f /lib/gui/elistboxcontent.cpp
parent470e1bf98764d9e0c6cdc463b2f2e1a2bb453ce8 (diff)
downloadenigma2-13bd9764b67721730bb77da340717d9c40e8c740.tar.gz
enigma2-13bd9764b67721730bb77da340717d9c40e8c740.zip
add possibility to set backgroundcolor for multicontent text entries too
Diffstat (limited to 'lib/gui/elistboxcontent.cpp')
-rw-r--r--lib/gui/elistboxcontent.cpp32
1 files changed, 22 insertions, 10 deletions
diff --git a/lib/gui/elistboxcontent.cpp b/lib/gui/elistboxcontent.cpp
index d4d8f609..cba25a18 100644
--- a/lib/gui/elistboxcontent.cpp
+++ b/lib/gui/elistboxcontent.cpp
@@ -479,7 +479,7 @@ void eListboxPythonMultiContent::paint(gPainter &painter, eWindowStyle &style, c
goto error_out;
}
- ePyObject px, py, pwidth, pheight, pfnt, pstring, pflags, pcolor, pfillColor, pborderWidth, pborderColor;
+ ePyObject px, py, pwidth, pheight, pfnt, pstring, pflags, pcolor, pbackColor, pbackColorSelected, pborderWidth, pborderColor;
/*
we have a list of tuples:
@@ -531,14 +531,20 @@ void eListboxPythonMultiContent::paint(gPainter &painter, eWindowStyle &style, c
}
if (size > 9)
{
- pfillColor = PyTuple_GET_ITEM(item, 9);
- if (pfillColor == Py_None)
- pfillColor=ePyObject();
+ pbackColor = PyTuple_GET_ITEM(item, 9);
+ if (pbackColor == Py_None)
+ pbackColor=ePyObject();
}
if (size > 10)
- pborderWidth = PyTuple_GET_ITEM(item, 10);
+ {
+ pbackColorSelected = PyTuple_GET_ITEM(item, 10);
+ if (pbackColorSelected == Py_None)
+ pbackColorSelected=ePyObject();
+ }
if (size > 11)
- pborderColor = PyTuple_GET_ITEM(item, 11);
+ pborderWidth = PyTuple_GET_ITEM(item, 11);
+ if (size > 12)
+ pborderColor = PyTuple_GET_ITEM(item, 12);
}
switch (type)
@@ -577,9 +583,15 @@ void eListboxPythonMultiContent::paint(gPainter &painter, eWindowStyle &style, c
rc &= itemrect;
painter.clip(rc);
- if (pfillColor && !selected)
+ if (pbackColor && !selected)
+ {
+ int color = PyInt_AsLong(pbackColor);
+ painter.setBackgroundColor(gRGB(color));
+ painter.clear();
+ }
+ else if (pbackColorSelected && selected)
{
- int color = PyInt_AsLong(pfillColor);
+ int color = PyInt_AsLong(pbackColorSelected);
painter.setBackgroundColor(gRGB(color));
painter.clear();
}
@@ -600,7 +612,7 @@ void eListboxPythonMultiContent::paint(gPainter &painter, eWindowStyle &style, c
int color = PyInt_AsLong(pborderColor);
painter.setForegroundColor(gRGB(color));
}
- else if (pcolor)
+ else if (pcolor) // reset to normal color
style.setStyle(painter, selected ? eWindowStyle::styleListboxSelected : eWindowStyle::styleListboxNormal);
rc.setRect(x, y, width, bwidth);
@@ -704,7 +716,7 @@ void eListboxPythonMultiContent::paint(gPainter &painter, eWindowStyle &style, c
goto error_out;
}
- if (pcolor || pborderColor || pfillColor)
+ if (pcolor || pborderColor || pbackColor || pbackColorSelected)
style.setStyle(painter, selected ? eWindowStyle::styleListboxSelected : eWindowStyle::styleListboxNormal);
}
}