diff --git a/share/qtcreator/qmldesigner/propertyeditor/Qt/FlagedButton.qml b/share/qtcreator/qmldesigner/propertyeditor/Qt/FlagedButton.qml
new file mode 100644
index 0000000000000000000000000000000000000000..dc0e978d21b7a5d7faeb7bed2af1d5f17dbf93b8
--- /dev/null
+++ b/share/qtcreator/qmldesigner/propertyeditor/Qt/FlagedButton.qml
@@ -0,0 +1,46 @@
+import Qt 4.7
+import Bauhaus 1.0
+
+QPushButton {
+    id: flagedButton
+    property bool flagActive: false
+    property variant backendValue    
+    property variant theValue: backendValue.value;   
+    property bool blueHigh: false    
+    property bool baseStateFlag: isBaseState;
+    
+    onBaseStateFlagChanged: {
+        evaluate();
+    }
+    
+    property bool isInModel: backendValue.isInModel;
+    onIsInModelChanged: {
+        evaluate();
+    }
+    property bool isInSubState: backendValue.isInSubState;
+    onIsInSubStateChanged: {
+        evaluate();
+    }        
+    
+    onTheValueChanged: {        
+        evaluate();
+    }
+    
+     function evaluate() {
+        if (!enabled) {
+            fontSelector.setStyleSheet("color: "+scheme.disabledColor);
+        } else {
+            if (baseStateFlag) {
+                if (backendValue != null && backendValue.isInModel)
+                    flagActive = true;
+                else
+                    flagActive = false;
+            } else {
+                if (backendValue != null && backendValue.isInSubState)
+                    flagActive = true;
+                else
+                    flagActive = false;
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/share/qtcreator/qmldesigner/propertyeditor/Qt/FontStyleButtons.qml b/share/qtcreator/qmldesigner/propertyeditor/Qt/FontStyleButtons.qml
new file mode 100644
index 0000000000000000000000000000000000000000..fa18d11d11fe0bf7f7e40de9b2e5b911299d137c
--- /dev/null
+++ b/share/qtcreator/qmldesigner/propertyeditor/Qt/FontStyleButtons.qml
@@ -0,0 +1,115 @@
+import Qt 4.7
+import Bauhaus 1.0
+
+QGroupBox {
+    id: fontStyleButtons
+
+    property int buttonWidth: 46
+    layout: HorizontalLayout {
+        topMargin: 6
+
+        QWidget {
+            fixedHeight: 32
+
+            FlagedButton {
+                checkable: true
+                iconSize.width: 24;
+                iconSize.height: 24;
+                fixedWidth: buttonWidth
+                width: fixedWidth
+                fixedHeight: 28
+                height: fixedHeight
+                styleSheetFile: "styledbuttonleft.css";
+                checked: backendValues.font_bold.value;
+                backendValue: backendValues.font_bold;
+
+                iconFromFile: flagActive ? "images/bold-h-icon.png" : "images/bold-icon.png"
+
+                onClicked: {
+                    backendValues.font_bold.value = checked;
+                }
+
+                ExtendedFunctionButton {
+                    backendValue:   backendValues.font_bold;
+                    y: 7
+                    x: 2
+                }
+            }
+            FlagedButton {
+                x: buttonWidth
+                checkable: true
+                fixedWidth: buttonWidth
+                width: fixedWidth
+                fixedHeight: 28
+                iconSize.width: 24;
+                iconSize.height: 24;
+                height: fixedHeight
+                iconFromFile: flagActive ? "images/italic-h-icon.png" : "images/italic-icon.png"
+
+                styleSheetFile: "styledbuttonmiddle.css";
+                checked: backendValues.font_italic.value;
+                backendValue: backendValues.font_italic;
+
+                onClicked: {
+                    backendValues.font_italic.value = checked;
+                }
+
+                ExtendedFunctionButton {
+                    backendValue:   backendValues.font_italic
+                    y: 7
+                    x: 2
+                }
+            }
+            FlagedButton {
+                x: buttonWidth * 2
+                checkable: true
+                fixedWidth: buttonWidth
+                width: fixedWidth
+                fixedHeight: 28
+                iconSize.width: 24;
+                iconSize.height: 24;
+                height: fixedHeight
+                iconFromFile:  flagActive ? "images/underline-h-icon.png" : "images/underline-icon.png"
+
+                styleSheetFile: "styledbuttonmiddle.css";
+                checked: backendValues.font_underline.value;
+                backendValue: backendValues.font_underline;
+
+                onClicked: {
+                    backendValues.font_underline.value = checked;
+                }
+
+                ExtendedFunctionButton {
+                    backendValue:   backendValues.font_underline;
+                    y: 7
+                    x: 2
+                }
+            }
+            FlagedButton {
+                x: buttonWidth * 3
+                checkable: true
+                fixedWidth: buttonWidth
+                width: fixedWidth
+                fixedHeight: 28
+                iconSize.width: 24;
+                iconSize.height: 24;
+                height: fixedHeight
+                iconFromFile: flagActive ? "images/strikeout-h-icon.png" : "images/strikeout-icon.png"
+
+                styleSheetFile: "styledbuttonright.css";
+                checked: backendValues.font_strikeout.value;
+                backendValue: backendValues.font_strikeout;
+
+                onClicked: {
+                    backendValues.font_strikeout.value = checked;
+                }
+
+                ExtendedFunctionButton {
+                    backendValue:   backendValues.font_strikeout;
+                    y: 7
+                    x: 2
+                }
+            }
+        }
+    }
+}