plugeth/cmd/mist/assets/qml/views/whisper.qml

76 lines
1.4 KiB
QML
Raw Normal View History

2014-12-15 16:09:27 +00:00
import QtQuick 2.0
import QtQuick.Controls 1.0;
import QtQuick.Layouts 1.0;
import QtQuick.Dialogs 1.0;
import QtQuick.Window 2.1;
import QtQuick.Controls.Styles 1.1
import Ethereum 1.0
Rectangle {
id: root
property var title: "Whisper Traffic"
2014-12-15 16:09:27 +00:00
property var menuItem
objectName: "whisperView"
anchors.fill: parent
property var identity: ""
Component.onCompleted: {
identity = shh.newIdentity()
console.log("New identity:", identity)
2014-12-16 18:55:57 +00:00
var t = shh.watch({}, root)
}
2014-12-22 12:23:11 +00:00
function onShhMessage(message, i) {
2014-12-22 09:58:28 +00:00
whisperModel.insert(0, {from: message.from, payload: eth.toAscii(message.payload)})
2014-12-15 16:09:27 +00:00
}
RowLayout {
id: input
anchors {
left: parent.left
leftMargin: 20
top: parent.top
topMargin: 20
}
2014-12-15 16:09:27 +00:00
TextField {
id: to
placeholderText: "To"
}
TextField {
id: data
placeholderText: "Data"
}
TextField {
id: topics
placeholderText: "topic1, topic2, topic3, ..."
}
Button {
text: "Send"
onClicked: {
2014-12-22 13:59:52 +00:00
shh.post([eth.toHex(data.text)], "", identity, topics.text.split(","), 500, 50)
2014-12-15 16:09:27 +00:00
}
}
}
TableView {
id: txTableView
anchors {
top: input.bottom
topMargin: 10
bottom: parent.bottom
left: parent.left
right: parent.right
}
2014-12-22 09:58:28 +00:00
TableViewColumn{ id: fromRole; role: "from" ; title: "From"; width: 300 }
TableViewColumn{ role: "payload" ; title: "Payload" ; width: parent.width - fromRole.width - 2 }
model: ListModel {
id: whisperModel
}
}
2014-12-15 16:09:27 +00:00
}