Commit 0461150b authored by Daniel Molkentin's avatar Daniel Molkentin Committed by Eike Ziller
Browse files

WelcomeScreen: Reintroduce custom widgets.

Change-Id: Ib9ec14702e4cbebf57493ac6cc0092d74a29d63c
Reviewed-on: http://codereview.qt.nokia.com/1382

Reviewed-by: default avatarQt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: default avatarEike Ziller <eike.ziller@nokia.com>
parent da4833cd
......@@ -8,6 +8,7 @@ OTHER_FILES = develop.qml \
newssupport.qml \
welcomescreen.qml \
widgets/Button.qml \
widgets/CheckBox.qml \
widgets/Feedback.qml \
widgets/RatingBar.qml \
widgets/ExampleBrowser.qml \
......
......@@ -31,47 +31,50 @@
**************************************************************************/
import Qt 4.7
import "../components/custom" as Custom
BorderImage {
property string text
property string image
property int iconSize : innerImg.sourceSize.height
signal clicked;
id: root
source: "qrc:/welcome/images/btn_26.png"
height: innerImg.height + 16
Custom.Button {
id: button
border.left: 5; border.top: 5
border.right: 5; border.bottom: 5
width: Math.max(100, labelItem.contentsWidth+20)
height: 32
Image{
id: innerImg
height: root.iconSize
width: root.iconSize
anchors.verticalCenter: label.verticalCenter
anchors.right: label.left
anchors.rightMargin: 4
visible: root.image != ""
source: root.image
}
background: BorderImage {
source: {
if (pressed)
return "qrc:/welcome/images/btn_26_pressed.png"
else
if (containsMouse)
return "qrc:/welcome/images/btn_26_hover.png"
else
return "qrc:/welcome/images/btn_26.png"
}
Text {
id: label;
anchors.left: innerImg.right
anchors.right: parent.right
text: root.text
border { left: 5; right: 5; top: 5; bottom: 5 }
}
MouseArea { id: mouseArea; anchors.fill: parent; hoverEnabled: true; onClicked: root.clicked() }
states: [
State {
id: pressedState; when: mouseArea.pressed;
PropertyChanges { target: root; source: "qrc:/welcome/images/btn_26_pressed.png" }
},
State {
id: hoverState; when: mouseArea.containsMouse
PropertyChanges { target: root; source: "qrc:/welcome/images/btn_26_hover.png" }
label: Item {
property int contentsWidth : row.width
Row {
id: row
spacing: 4
anchors.centerIn: parent
property int contentsWidth : row.width
Image {
id: image
source: iconSource
anchors.verticalCenter: parent.verticalCenter
fillMode: Image.Stretch //mm Image should shrink if button is too small, depends on QTBUG-14957
}
Text {
id:text
color: textColor
anchors.verticalCenter: parent.verticalCenter
text: button.text
horizontalAlignment: Text.Center
}
}
]
}
Keys.onSpacePressed:clicked()
}
import QtQuick 1.0
import "../components/custom" as Custom
Custom.CheckBox{
id:checkbox
property string text
property string hint
height:20
width: Math.max(110, backgroundItem.rowWidth)
background: Item {
property int rowWidth: row.width
Row {
id: row
anchors.verticalCenter: parent.verticalCenter
spacing: 4
BorderImage {
source: "qrc:welcome/images/lineedit.png";
width: 16;
height: 16;
border.left: 4;
border.right: 4;
border.top: 4;
border.bottom: 4
Image {
source: "qrc:welcome/images/checked.png";
width: 10; height: 10
anchors.centerIn: parent
visible: checkbox.checked
}
}
Text {
text: checkbox.text
}
}
Keys.onSpacePressed:checked = !checked
}
}
......@@ -40,7 +40,7 @@ Item {
width: parent.width
height: lineEdit.height
Components.TextField {
LineEdit {
Behavior on width { NumberAnimation{} }
placeholderText: !checkBox.checked ? qsTr("Search in Tutorials") : qsTr("Search in Tutorials, Examples and Demos")
focus: true
......@@ -49,7 +49,7 @@ Item {
onTextChanged: examplesModel.filterRegExp = RegExp('.*'+text, "im")
}
Components.CheckBox {
CheckBox {
id: checkBox
text: qsTr("Show Examples and Demos")
checked: false
......@@ -60,7 +60,7 @@ Item {
onCheckedChanged: examplesModel.showTutorialsOnly = !checked;
}
Components.Button {
Button {
id: tagFilterButton
property string tag
Behavior on width { NumberAnimation{} }
......
......@@ -47,7 +47,7 @@ BorderImage {
// whitelist
property bool _hasDesktopTheme: welcomeMode.platform() === "linux"
Components.Button {
Button {
id: openProjectButton
text: qsTr("Open Project...")
iconSource: _hasDesktopTheme ? "image://desktoptheme/document-open" : ""
......@@ -58,7 +58,7 @@ BorderImage {
anchors.verticalCenter: parent.verticalCenter
}
Components.Button {
Button {
id: createProjectButton
text: qsTr("Create Project...")
iconSource: _hasDesktopTheme ? "image://desktoptheme/document-new" : ""
......@@ -70,7 +70,7 @@ BorderImage {
}
Components.Button {
Button {
id: feedbackButton
text: qsTr("Feedback")
iconSource: "qrc:welcome/images/feedback_arrow.png"
......
......@@ -31,32 +31,21 @@
**************************************************************************/
import QtQuick 1.0
import "../components/custom" as Custom
FocusScope {
Custom.TextField {
id: root
signal textChanged
property alias text : input.text
height:input.font.pixelSize*1.8
BorderImage {
leftMargin: 6
rightMargin: 6
topMargin: 6
bottomMargin: 6
background: BorderImage {
anchors.fill: parent
source: "img/lineedit.png"
source: "qrc:welcome/images/lineedit.png"
border.left: 5; border.top: 5
border.right: 5; border.bottom: 5
TextInput {
id: input
property string defaultText
anchors.verticalCenter: parent.verticalCenter
anchors.left: parent.left
anchors.right: parent.right
anchors.leftMargin: 4
anchors.rightMargin: 4
color: "grey"
text: defaultText
font.pointSize: 12
clip: true
onActiveFocusChanged: activeFocus ? state = 'active' : state = ''
onTextChanged: if (text != defaultText) root.textChanged();
states: [ State { name: "active"; PropertyChanges { target: input; color: "black"; text: "" } } ]
}
}
}
......@@ -36,6 +36,6 @@ Row {
property int rating : 2
property int totalRating: 3
Repeater { id: rep1; model: rating; Image { source: "img/face-star.png"; width: 22 } }
Repeater { id: rep2; model: totalRating-rating; Image { source: "img/draw-star.png"; width: 22 } }
Repeater { id: rep1; model: rating; Image { source: "qrc:welcome/images/face-star.png"; width: 22 } }
Repeater { id: rep2; model: totalRating-rating; Image { source: "qrc:welcome/images/draw-star.png"; width: 22 } }
}
......@@ -26,5 +26,9 @@
<file>images/background_center_frame_v2.png</file>
<file>images/tab_hover.png</file>
<file>images/rc_combined_transparent.png</file>
<file>images/checked.png</file>
<file>images/lineedit.png</file>
<file>images/draw-star.png</file>
<file>images/face-star.png</file>
</qresource>
</RCC>
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment