void WStatusLight::setup(QDomNode node, const SkinContext& context) { // Number of states. Add one to account for the background. setNoPos(context.selectInt(node, "NumberPos") + 1); // Set pixmaps for (int i = 0; i < m_pixmaps.size(); ++i) { // Accept either PathStatusLight or PathStatusLight1 for value 1, QString nodeName = QString("PathStatusLight%1").arg(i); if (context.hasNode(node, nodeName)) { QString mode = context.selectAttributeString( context.selectElement(node, nodeName), "sizemode", "FIXED"); setPixmap(i, context.getSkinPath(context.selectString(node, nodeName)), SizeModeFromString(mode)); } else if (i == 0 && context.hasNode(node, "PathBack")) { QString mode = context.selectAttributeString( context.selectElement(node, "PathBack"), "sizemode", "FIXED"); setPixmap(i, context.getSkinPath(context.selectString(node, "PathBack")), SizeModeFromString(mode)); } else if (i == 1 && context.hasNode(node, "PathStatusLight")) { QString mode = context.selectAttributeString( context.selectElement(node, "PathStatusLight"), "sizemode", "FIXED"); setPixmap(i, context.getSkinPath(context.selectString(node, "PathStatusLight")), SizeModeFromString(mode)); } else { m_pixmaps[i].clear(); } } }
void WStatusLight::setup(const QDomNode& node, const SkinContext& context) { // Number of states. Add one to account for the background. setNoPos(context.selectInt(node, "NumberPos") + 1); // Set pixmaps for (int i = 0; i < m_pixmaps.size(); ++i) { // Accept either PathStatusLight or PathStatusLight1 for value 1, QString nodeName = QString("PathStatusLight%1").arg(i); QDomElement statusLightNode; if (context.hasNodeSelectElement(node, nodeName, &statusLightNode) || (i == 0 && context.hasNodeSelectElement(node, "PathBack", &statusLightNode)) || (i == 1 && context.hasNodeSelectElement(node, "PathStatusLight", &statusLightNode))) { setPixmap(i, context.getPixmapSource(statusLightNode), context.selectScaleMode(statusLightNode, Paintable::FIXED)); } else { m_pixmaps[i].clear(); } } }
WStatusLight::WStatusLight(QWidget * parent) : WWidget(parent), m_iPos(0) { setNoPos(0); }