From b0886b317fd6de5fa960392b2a8a0dbb557475f5 Mon Sep 17 00:00:00 2001 From: "Javier S. Pedro" Date: Sat, 6 Apr 2013 21:20:30 +0200 Subject: creating new topics --- qml/ForumPage.qml | 10 ++++++ qml/NewTopicSheet.qml | 97 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 107 insertions(+) create mode 100644 qml/NewTopicSheet.qml (limited to 'qml') diff --git a/qml/ForumPage.qml b/qml/ForumPage.qml index 4f2b64f..6c21742 100644 --- a/qml/ForumPage.qml +++ b/qml/ForumPage.qml @@ -19,6 +19,16 @@ Page { } ToolIcon { platformIconId: "toolbar-add" + onClicked: { + var component = Qt.createComponent("NewTopicSheet.qml"); + if (component.status === Component.Ready) { + var sheet = component.createObject(forumPage, { + "board": board, + "forumId": forumId + }); + sheet.open(); + } + } } ToolIcon { platformIconId: board.busy ? "toolbar-cancle" : "toolbar-refresh" diff --git a/qml/NewTopicSheet.qml b/qml/NewTopicSheet.qml new file mode 100644 index 0000000..76cac64 --- /dev/null +++ b/qml/NewTopicSheet.qml @@ -0,0 +1,97 @@ +import QtQuick 1.1 +import com.nokia.meego 1.1 +import com.nokia.extras 1.1 +import com.javispedro.tapasboard 1.0 + +Sheet { + id: newTopicSheet + + property Board board; + property int forumId; + + anchors.leftMargin: UiConstants.DefaultMargin + anchors.rightMargin: UiConstants.DefaultMargin + + acceptButtonText: qsTr("Submit") + rejectButtonText: qsTr("Cancel") + + content: Flickable { + anchors.fill: parent + contentWidth: parent.width + contentHeight: subjectLine.height + postText.height + + Item { + id: subjectLine + anchors { + top: parent.top + left: parent.left + right: parent.right + } + height: childrenRect.height - 1 + + Label { + id: subjectLabel + anchors { + margins: UiConstants.DefaultMargin - 2 + top: parent.top + left: parent.left + } + text: qsTr("Subject:") + } + + TextArea { + id: subjectText + anchors { + top: parent.top + left: subjectLabel.right + right: parent.right + } + + platformStyle: TextAreaStyle { + background: "" + backgroundSelected: "" + backgroundDisabled: "" + textFont.bold: true + } + + placeholderText: qsTr("Write subject here") + wrapMode: TextEdit.Wrap + } + + + BorderImage { + anchors { + top: subjectText.bottom + left: parent.left + right: parent.right + } + + height: 3 + source: "image://theme/meegotouch-sheet-editor-collapsed-background" + } + } + + TextArea { + id: postText + anchors { + top: subjectLine.bottom + left: parent.left + right: parent.right + } + height: Math.max(400, implicitHeight) + + platformStyle: TextAreaStyle { + background: "image://theme/meegotouch-sheet-inputfield-background" + backgroundSelected: background + backgroundDisabled: "" + } + + placeholderText: qsTr("Write your message here") + wrapMode: TextEdit.Wrap + } + } + + onAccepted: { + board.newTopic(forumId, subjectText.text, postText.text); + } +} -- cgit v1.2.3