StyleSheet QStyleSheetStyle::getDefaultStyleSheet() const { StyleSheet sheet; StyleRule styleRule; BasicSelector bSelector; Selector selector; Declaration decl; Value value; Pseudo pseudo; AttributeSelector attr; // pixmap based style doesn't support any features bool styleIsPixmapBased = baseStyle()->inherits("QMacStyle") || baseStyle()->inherits("QWindowsXPStyle") || baseStyle()->inherits("QGtkStyle") || baseStyle()->inherits("QS60Style"); /*QLineEdit { -qt-background-role: base; border: native; -qt-style-features: background-color; }*/ { SET_ELEMENT_NAME(QLatin1String("QLineEdit")); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_PROPERTY(QLatin1String("-qt-background-role"), QtBackgroundRole); ADD_VALUE(Value::KnownIdentifier, Value_Base); ADD_DECLARATION; SET_PROPERTY(QLatin1String("border"), Border); ADD_VALUE(Value::KnownIdentifier, Value_Native); ADD_DECLARATION; SET_PROPERTY(QLatin1String("-qt-style-features"), QtStyleFeatures); ADD_VALUE(Value::Identifier, QString::fromLatin1("background-color")); ADD_DECLARATION; ADD_STYLE_RULE; } /*QLineEdit:no-frame { border: none; }*/ { SET_ELEMENT_NAME(QLatin1String("QLineEdit")); ADD_PSEUDO(QLatin1String("no-frame"), PseudoClass_Frameless); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_PROPERTY(QLatin1String("border"), Border); ADD_VALUE(Value::KnownIdentifier, Value_None); ADD_DECLARATION; ADD_STYLE_RULE; } /*QFrame { border: native; }*/ { SET_ELEMENT_NAME(QLatin1String("QFrame")); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_PROPERTY(QLatin1String("border"), Border); ADD_VALUE(Value::KnownIdentifier, Value_Native); ADD_DECLARATION; ADD_STYLE_RULE; } /*QLabel, QToolBox { background: none; border-image: none; }*/ { SET_ELEMENT_NAME(QLatin1String("QLabel")); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_ELEMENT_NAME(QLatin1String("QToolBox")); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_PROPERTY(QLatin1String("background"), Background); ADD_VALUE(Value::KnownIdentifier, Value_None); ADD_DECLARATION; SET_PROPERTY(QLatin1String("border-image"), BorderImage); ADD_VALUE(Value::KnownIdentifier, Value_None); ADD_DECLARATION; ADD_STYLE_RULE; } /*QGroupBox { border: native; }*/ { SET_ELEMENT_NAME(QLatin1String("QGroupBox")); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_PROPERTY(QLatin1String("border"), Border); ADD_VALUE(Value::KnownIdentifier, Value_Native); ADD_DECLARATION; ADD_STYLE_RULE; } /*QToolTip { -qt-background-role: window; border: native; }*/ { SET_ELEMENT_NAME(QLatin1String("QToolTip")); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_PROPERTY(QLatin1String("-qt-background-role"), QtBackgroundRole); ADD_VALUE(Value::KnownIdentifier, Value_Window); ADD_DECLARATION; SET_PROPERTY(QLatin1String("border"), Border); ADD_VALUE(Value::KnownIdentifier, Value_Native); ADD_DECLARATION; ADD_STYLE_RULE; } /*QPushButton, QToolButton { border-style: native; -qt-style-features: background-color; //only for not pixmap based styles }*/ { SET_ELEMENT_NAME(QLatin1String("QPushButton")); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_ELEMENT_NAME(QLatin1String("QToolButton")); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_PROPERTY(QLatin1String("border-style"), BorderStyles); ADD_VALUE(Value::KnownIdentifier, Value_Native); ADD_DECLARATION; if (!styleIsPixmapBased) { SET_PROPERTY(QLatin1String("-qt-style-features"), QtStyleFeatures); ADD_VALUE(Value::Identifier, QString::fromLatin1("background-color")); ADD_DECLARATION; } ADD_STYLE_RULE; } /*QComboBox { border: native; -qt-style-features: background-color background-gradient; //only for not pixmap based styles -qt-background-role: base; }*/ { SET_ELEMENT_NAME(QLatin1String("QComboBox")); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_PROPERTY(QLatin1String("border"), Border); ADD_VALUE(Value::KnownIdentifier, Value_Native); ADD_DECLARATION; if (!styleIsPixmapBased) { SET_PROPERTY(QLatin1String("-qt-style-features"), QtStyleFeatures); ADD_VALUE(Value::Identifier, QString::fromLatin1("background-color")); ADD_VALUE(Value::Identifier, QString::fromLatin1("background-gradient")); ADD_DECLARATION; } SET_PROPERTY(QLatin1String("-qt-background-role"), QtBackgroundRole); ADD_VALUE(Value::KnownIdentifier, Value_Base); ADD_DECLARATION; ADD_STYLE_RULE; } /*QComboBox[style="QPlastiqueStyle"][readOnly="true"], QComboBox[style="QCleanlooksStyle"][readOnly="true"] { -qt-background-role: button; }*/ if (baseStyle()->inherits("QPlastiqueStyle") || baseStyle()->inherits("QCleanlooksStyle")) { SET_ELEMENT_NAME(QLatin1String("QComboBox")); ADD_ATTRIBUTE_SELECTOR(QLatin1String("readOnly"), QLatin1String("true"), AttributeSelector::MatchEqual); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_PROPERTY(QLatin1String("-qt-background-role"), QtBackgroundRole); ADD_VALUE(Value::KnownIdentifier, Value_Button); ADD_DECLARATION; ADD_STYLE_RULE; } /*QAbstractSpinBox { border: native; -qt-style-features: background-color; -qt-background-role: base; }*/ { SET_ELEMENT_NAME(QLatin1String("QAbstractSpinBox")); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_PROPERTY(QLatin1String("border"), Border); ADD_VALUE(Value::KnownIdentifier, Value_Native); ADD_DECLARATION; SET_PROPERTY(QLatin1String("-qt-style-features"), QtStyleFeatures); ADD_VALUE(Value::Identifier, QString::fromLatin1("background-color")); ADD_DECLARATION; SET_PROPERTY(QLatin1String("-qt-background-role"), QtBackgroundRole); ADD_VALUE(Value::KnownIdentifier, Value_Base); ADD_DECLARATION; ADD_STYLE_RULE; } /*QMenu { -qt-background-role: window; }*/ { SET_ELEMENT_NAME(QLatin1String("QMenu")); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_PROPERTY(QLatin1String("-qt-background-role"), QtBackgroundRole); ADD_VALUE(Value::KnownIdentifier, Value_Window); ADD_DECLARATION; ADD_STYLE_RULE; } /*QMenu::item { -qt-style-features: background-color; }*/ if (!styleIsPixmapBased) { SET_ELEMENT_NAME(QLatin1String("QMenu")); ADD_PSEUDO(QLatin1String("item"), PseudoClass_Unknown); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_PROPERTY(QLatin1String("-qt-style-features"), QtStyleFeatures); ADD_VALUE(Value::Identifier, QString::fromLatin1("background-color")); ADD_DECLARATION; ADD_STYLE_RULE; } /*QHeaderView { -qt-background-role: window; }*/ { SET_ELEMENT_NAME(QLatin1String("QHeaderView")); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_PROPERTY(QLatin1String("-qt-background-role"), QtBackgroundRole); ADD_VALUE(Value::KnownIdentifier, Value_Window); ADD_DECLARATION; ADD_STYLE_RULE; } /*QTableCornerButton::section, QHeaderView::section { -qt-background-role: button; -qt-style-features: background-color; //if style is not pixmap based border: native; }*/ { SET_ELEMENT_NAME(QLatin1String("QTableCornerButton")); ADD_PSEUDO(QLatin1String("section"), PseudoClass_Unknown); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_ELEMENT_NAME(QLatin1String("QHeaderView")); ADD_PSEUDO(QLatin1String("section"), PseudoClass_Unknown); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_PROPERTY(QLatin1String("-qt-background-role"), QtBackgroundRole); ADD_VALUE(Value::KnownIdentifier, Value_Button); ADD_DECLARATION; if (!styleIsPixmapBased) { SET_PROPERTY(QLatin1String("-qt-style-features"), QtStyleFeatures); ADD_VALUE(Value::Identifier, QString::fromLatin1("background-color")); ADD_DECLARATION; } SET_PROPERTY(QLatin1String("border"), Border); ADD_VALUE(Value::KnownIdentifier, Value_Native); ADD_DECLARATION; ADD_STYLE_RULE; } /*QProgressBar { -qt-background-role: base; }*/ { SET_ELEMENT_NAME(QLatin1String("QProgressBar")); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_PROPERTY(QLatin1String("-qt-background-role"), QtBackgroundRole); ADD_VALUE(Value::KnownIdentifier, Value_Base); ADD_DECLARATION; ADD_STYLE_RULE; } /*QScrollBar { -qt-background-role: window; }*/ { SET_ELEMENT_NAME(QLatin1String("QScrollBar")); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_PROPERTY(QLatin1String("-qt-background-role"), QtBackgroundRole); ADD_VALUE(Value::KnownIdentifier, Value_Window); ADD_DECLARATION; ADD_STYLE_RULE; } /*QDockWidget { border: native; }*/ { SET_ELEMENT_NAME(QLatin1String("QDockWidget")); ADD_BASIC_SELECTOR; ADD_SELECTOR; SET_PROPERTY(QLatin1String("border"), Border); ADD_VALUE(Value::KnownIdentifier, Value_Native); ADD_DECLARATION; ADD_STYLE_RULE; } sheet.origin = StyleSheetOrigin_UserAgent; sheet.buildIndexes(); return sheet; }