aboutsummaryrefslogtreecommitdiffstats
path: root/wallet.qml
diff options
context:
space:
mode:
Diffstat (limited to 'wallet.qml')
-rw-r--r--wallet.qml177
1 files changed, 135 insertions, 42 deletions
diff --git a/wallet.qml b/wallet.qml
index b18614801..6ee6ff110 100644
--- a/wallet.qml
+++ b/wallet.qml
@@ -3,18 +3,18 @@ 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
ApplicationWindow {
id: root
- width: 800
+ width: 900
height: 600
minimumHeight: 300
title: "Ethereal"
-
toolBar: ToolBar {
id: mainToolbar
@@ -43,22 +43,6 @@ ApplicationWindow {
}
}
- SplitView {
- id: splitView
- height: 200
- anchors.top: parent.top
- anchors.right: parent.right
- anchors.left: parent.left
-
- TextArea {
- id: codeView
- width: parent.width /2
- }
-
- TextArea {
- readOnly: true
- }
- }
MenuBar {
Menu {
@@ -85,42 +69,133 @@ ApplicationWindow {
onTriggered: ui.connect()
}
}
+
+ Menu {
+ title: "Help"
+ MenuItem {
+ text: "About"
+ onTriggered: {
+ aboutWin.visible = true
+ }
+ }
+ }
+
}
property var blockModel: ListModel {
id: blockModel
}
+ function setView(view) {
+ mainView.visible = false
+ transactionView.visible = false
+ view.visible = true
+ }
- TableView {
- id: blockTable
- width: parent.width
- anchors.top: splitView.bottom
- anchors.bottom: logView.top
- TableViewColumn{ role: "number" ; title: "#" ; width: 100 }
- TableViewColumn{ role: "hash" ; title: "Hash" ; width: 560 }
+ SplitView {
+ anchors.fill: parent
+
+
+ Rectangle {
+ id: menu
+ width: 200
+ anchors.bottom: parent.bottom
+ anchors.top: parent.top
+ color: "#D9DDE7"
+
+ GridLayout {
+ columns: 1
+ Button {
+ text: "Main"
+ onClicked: {
+ setView(mainView)
+ }
+ }
+ Button {
+ text: "Transactions"
+ onClicked: {
+ setView(transactionView)
+ }
+ }
+ }
+
+ }
- model: blockModel
+ property var txModel: ListModel {
+ id: txModel
+ }
- onDoubleClicked: {
- popup.visible = true
- popup.block = eth.getBlock(blockModel.get(row).hash)
- popup.hashLabel.text = popup.block.hash
+ Rectangle {
+ id: transactionView
+ visible: false
+ anchors.right: parent.right
+ anchors.left: menu.right
+ anchors.bottom: parent.bottom
+ anchors.top: parent.top
+ TableView {
+ id: txTableView
+ anchors.fill: parent
+ TableViewColumn{ role: "hash" ; title: "#" ; width: 150 }
+ TableViewColumn{ role: "value" ; title: "Value" ; width: 100 }
+ TableViewColumn{ role: "address" ; title: "Address" ; }
+
+ model: txModel
+ }
}
- }
- property var logModel: ListModel {
- id: logModel
- }
+ Rectangle {
+ id: mainView
+ anchors.right: parent.right
+ anchors.bottom: parent.bottom
+ anchors.top: parent.top
+ SplitView {
+ id: splitView
+ height: 200
+ anchors.top: parent.top
+ anchors.right: parent.right
+ anchors.left: parent.left
+
+ TextArea {
+ id: codeView
+ width: parent.width /2
+ }
+
+ TextArea {
+ readOnly: true
+ }
+ }
+
+ TableView {
+ id: blockTable
+ width: parent.width
+ anchors.top: splitView.bottom
+ anchors.bottom: logView.top
+ TableViewColumn{ role: "number" ; title: "#" ; width: 100 }
+ TableViewColumn{ role: "hash" ; title: "Hash" ; width: 560 }
+
+ model: blockModel
- TableView {
- id: logView
- width: parent.width
- height: 150
- anchors.bottom: parent.bottom
- TableViewColumn{ role: "description" ; title: "log" }
+ onDoubleClicked: {
+ popup.visible = true
+ popup.block = eth.getBlock(blockModel.get(row).hash)
+ popup.hashLabel.text = popup.block.hash
+ }
+ }
- model: logModel
+ property var logModel: ListModel {
+ id: logModel
+ }
+
+ TableView {
+ id: logView
+ width: parent.width
+ height: 150
+ anchors.bottom: parent.bottom
+ TableViewColumn{ role: "description" ; title: "log" }
+
+ model: logModel
+ }
+ }
}
FileDialog {
@@ -146,7 +221,6 @@ ApplicationWindow {
text: "Import App"
}
- Label { text: "0.0.1" }
Label {
anchors.right: peerImage.left
anchors.rightMargin: 5
@@ -201,6 +275,25 @@ ApplicationWindow {
}
}
+ Window {
+ id: aboutWin
+ visible: false
+ title: "About"
+ minimumWidth: 300
+ maximumWidth: 300
+ maximumHeight: 200
+ minimumHeight: 200
+
+ Text {
+ font.pointSize: 18
+ text: "Eth Go"
+ }
+
+ }
+
+ function addTx(tx) {
+ txModel.insert(0, {hash: tx.hash, address: tx.address, value: tx.value})
+ }
function addBlock(block) {
blockModel.insert(0, {number: block.number, hash: block.hash})