void WSearchLineEdit::setup(const QDomNode& node, const SkinContext& context) { // Background color QColor bgc(255,255,255); QString bgColorStr; if (context.hasNodeSelectString(node, "BgColor", &bgColorStr)) { bgc.setNamedColor(bgColorStr); setAutoFillBackground(true); } QPalette pal = palette(); pal.setBrush(backgroundRole(), WSkinColor::getCorrectColor(bgc)); // Foreground color m_fgc = QColor(0,0,0); QString fgColorStr; if (context.hasNodeSelectString(node, "FgColor", &fgColorStr)) { m_fgc.setNamedColor(fgColorStr); } bgc = WSkinColor::getCorrectColor(bgc); m_fgc = QColor(255 - bgc.red(), 255 - bgc.green(), 255 - bgc.blue()); pal.setBrush(foregroundRole(), m_fgc); setPalette(pal); }
void WRecordingDuration::setup(const QDomNode& node, const SkinContext& context) { WLabel::setup(node, context); connect(m_pRecordingManager, SIGNAL(durationRecorded(QString)), this, SLOT(refreshLabel(QString))); connect(m_pRecordingManager, SIGNAL(isRecording(bool)), this, SLOT(slotRecordingInactive(bool))); // When we're recording show text from "InactiveText" node QString inactiveText; if (context.hasNodeSelectString(node, "InactiveText", &inactiveText)) { m_inactiveText = inactiveText; } else { m_inactiveText = QString("--:--"); } // Set inactiveText here already because slotRecordingInactive // is refreshed first when we start recording setText(m_inactiveText); }
void WLabel::setup(const QDomNode& node, const SkinContext& context) { // Colors QPalette pal = palette(); //we have to copy out the palette to edit it since it's const (probably for threadsafety) QDomElement bgColor = context.selectElement(node, "BgColor"); if (!bgColor.isNull()) { m_qBgColor.setNamedColor(context.nodeToString(bgColor)); pal.setColor(this->backgroundRole(), WSkinColor::getCorrectColor(m_qBgColor)); setAutoFillBackground(true); } m_qFgColor.setNamedColor(context.selectString(node, "FgColor")); pal.setColor(this->foregroundRole(), WSkinColor::getCorrectColor(m_qFgColor)); setPalette(pal); // Text if (context.hasNodeSelectString(node, "Text", &m_skinText)) { setText(m_skinText); } // Font size QString strFontSize; if (context.hasNodeSelectString(node, "FontSize", &strFontSize)) { int fontsize = strFontSize.toInt(); // TODO(XXX) "Helvetica" should retrain the Qt default font matching, verify that. setFont(QFont("Helvetica", fontsize, QFont::Normal)); } // Alignment QString alignment; if (context.hasNodeSelectString(node, "Alignment", &alignment)) { alignment = alignment.toLower(); if (alignment == "right") { setAlignment(Qt::AlignRight | Qt::AlignVCenter); } else if (alignment == "center") { setAlignment(Qt::AlignHCenter | Qt::AlignVCenter); } else if (alignment == "left") { setAlignment(Qt::AlignLeft | Qt::AlignVCenter); } else { qDebug() << "WLabel::setup(): Alignment =" << alignment << " unknown, use right, center or left"; } } // Adds an ellipsis to truncated text QString elide; if (context.hasNodeSelectString(node, "Elide", &elide)) { elide = elide.toLower(); if (elide == "right") { m_elideMode = Qt::ElideRight; } else if (elide == "middle") { m_elideMode = Qt::ElideMiddle; } else if (elide == "left") { m_elideMode = Qt::ElideLeft; } else if (elide == "none") { m_elideMode = Qt::ElideNone; } else { qDebug() << "WLabel::setup(): Alide =" << elide << "unknown, use right, middle, left or none."; } } }