+ if (selected)
+ {
+ if (pforeColorSelected)
+ {
+ int color = PyInt_AsLong(pforeColorSelected);
+ painter.setForegroundColor(gRGB(color));
+ }
+ /* if we have a local foreground color set, use that. */
+ else if (local_style && local_style->m_foreground_color_selected_set)
+ painter.setForegroundColor(local_style->m_foreground_color_selected);
+ }
+ else
+ {
+ if (pforeColor)
+ {
+ int color = PyInt_AsLong(pforeColor);
+ painter.setForegroundColor(gRGB(color));
+ }
+ /* if we have a local foreground color set, use that. */
+ else if (local_style && local_style->m_foreground_color_set)
+ painter.setForegroundColor(local_style->m_foreground_color);
+ }
+}
+
+static ePyObject lookupColor(ePyObject color, ePyObject data)
+{
+ if (color == Py_None)
+ return ePyObject();
+
+ if ((!color) && (!data))
+ return color;
+
+ unsigned int icolor = PyInt_AsLong(color);
+
+ /* check if we have the "magic" template color */
+ if ((icolor & 0xFF000000) == 0xFF000000)