aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorobscuren <geffobscura@gmail.com>2014-05-30 19:28:31 +0800
committerobscuren <geffobscura@gmail.com>2014-05-30 19:28:31 +0800
commite7c9b86a5aba022afd812f1a4fb554ee17a74bbd (patch)
treee97e2f32ef93c330395b901e56688e6a232db06b
parent0938b56829b9cbe8804a4ca85b14534908dbdfbc (diff)
downloaddexon-e7c9b86a5aba022afd812f1a4fb554ee17a74bbd.tar.gz
dexon-e7c9b86a5aba022afd812f1a4fb554ee17a74bbd.tar.zst
dexon-e7c9b86a5aba022afd812f1a4fb554ee17a74bbd.zip
Improved UI
* Added mining button
-rw-r--r--ethereal/assets/qml/wallet.qml148
-rw-r--r--ethereal/config.go5
-rw-r--r--ethereal/ethereum.go8
-rw-r--r--ethereal/ui/gui.go14
-rw-r--r--utils/cmd.go2
5 files changed, 47 insertions, 130 deletions
diff --git a/ethereal/assets/qml/wallet.qml b/ethereal/assets/qml/wallet.qml
index 2ab1f31de..4ad4cd7f6 100644
--- a/ethereal/assets/qml/wallet.qml
+++ b/ethereal/assets/qml/wallet.qml
@@ -10,6 +10,8 @@ import Ethereum 1.0
ApplicationWindow {
id: root
+ property alias miningButtonText: miningButton.text
+
width: 900
height: 600
minimumHeight: 300
@@ -27,13 +29,6 @@ ApplicationWindow {
}
Menu {
- title: "Tools"
- MenuItem {
- text: "Muted"
- shortcut: "Ctrl+e"
- onTriggered: ui.muted("")
- }
-
MenuItem {
text: "Debugger"
shortcut: "Ctrl+d"
@@ -50,11 +45,6 @@ ApplicationWindow {
addPeerWin.visible = true
}
}
-
- MenuItem {
- text: "Start"
- onTriggered: ui.connect()
- }
}
Menu {
@@ -310,8 +300,15 @@ ApplicationWindow {
}
statusBar: StatusBar {
+ height: 30
RowLayout {
- anchors.fill: parent
+ Button {
+ id: miningButton
+ onClicked: {
+ eth.toggleMining()
+ }
+ text: "Start Mining"
+ }
Button {
property var enabled: true
@@ -335,20 +332,22 @@ ApplicationWindow {
anchors.leftMargin: 5
id: walletValueLabel
}
+ }
- Label {
- anchors.right: peerImage.left
- anchors.rightMargin: 5
- id: peerLabel
- font.pixelSize: 8
- text: "0 / 0"
- }
- Image {
- id: peerImage
- anchors.right: parent.right
- width: 10; height: 10
- source: ui.assetPath("network.png")
- }
+ Label {
+ y: 7
+ anchors.right: peerImage.left
+ anchors.rightMargin: 5
+ id: peerLabel
+ font.pixelSize: 8
+ text: "0 / 0"
+ }
+ Image {
+ y: 7
+ id: peerImage
+ anchors.right: parent.right
+ width: 10; height: 10
+ source: ui.assetPath("network.png")
}
}
@@ -546,94 +545,6 @@ ApplicationWindow {
font.pointSize: 12
text: "<h2>Ethereal</h2><br><h3>Development</h3>Jeffrey Wilcke<br>Maran Hidskes<br>"
}
-
- }
-
- ApplicationWindow {
- id: debugWindow
- visible: false
- title: "Debugger"
- minimumWidth: 600
- minimumHeight: 600
- width: 800
- height: 600
-
-
- Item {
- id: keyHandler
- focus: true
- Keys.onPressed: {
- if (event.key == Qt.Key_Space) {
- ui.next()
- }
- }
- }
- SplitView {
- anchors.fill: parent
- property var asmModel: ListModel {
- id: asmModel
- }
- TableView {
- id: asmTableView
- width: 200
- TableViewColumn{ role: "value" ; title: "" ; width: 100 }
- model: asmModel
- }
-
- Rectangle {
- anchors.left: asmTableView.right
- anchors.right: parent.right
- SplitView {
- orientation: Qt.Vertical
- anchors.fill: parent
-
- TableView {
- property var memModel: ListModel {
- id: memModel
- }
- height: parent.height/2
- width: parent.width
- TableViewColumn{ id:mnumColmn ; role: "num" ; title: "#" ; width: 50}
- TableViewColumn{ role: "value" ; title: "Memory" ; width: 750}
- model: memModel
- }
-
- SplitView {
- orientation: Qt.Horizontal
- id: debugSplitView
- TableView {
- property var debuggerLog: ListModel {
- id: debuggerLog
- }
- TableViewColumn{ role: "value"; title: "Debug messages" }
- model: debuggerLog
- }
- TableView {
- property var stackModel: ListModel {
- id: stackModel
- }
- height: parent.height/2
- width: parent.width
- TableViewColumn{ role: "value" ; title: "Stack" ; width: debugSplitView.width }
- model: stackModel
- }
- }
- }
- }
- }
- statusBar: StatusBar {
- RowLayout {
- anchors.fill: parent
- Button {
- property var enabled: true
- id: debugNextButton
- onClicked: {
- ui.next()
- }
- text: "Next"
- }
- }
- }
}
function addDebugMessage(message){
@@ -887,15 +798,6 @@ ApplicationWindow {
mainContractColumn.state = "SETUP"
}
}
-
- Button {
- id: debugButton
- text: "Debug"
- onClicked: {
- var res = ui.debugTx("", txValue.text, txGas.text, txGasPrice.text, codeView.text)
- debugWindow.visible = true
- }
- }
}
}
diff --git a/ethereal/config.go b/ethereal/config.go
index 3864126db..535640518 100644
--- a/ethereal/config.go
+++ b/ethereal/config.go
@@ -6,7 +6,8 @@ import (
var Identifier string
var StartConsole bool
-var StartMining bool
+
+//var StartMining bool
var StartRpc bool
var RpcPort int
var UseUPnP bool
@@ -24,7 +25,7 @@ var AssetPath string
func Init() {
flag.StringVar(&Identifier, "i", "", "Custom client identifier")
flag.BoolVar(&StartConsole, "c", false, "debug and testing console")
- flag.BoolVar(&StartMining, "m", false, "start dagger mining")
+ //flag.BoolVar(&StartMining, "m", false, "start dagger mining")
flag.BoolVar(&StartRpc, "r", false, "start rpc server")
flag.BoolVar(&ShowGenesis, "g", false, "prints genesis header and exits")
flag.BoolVar(&UseUPnP, "upnp", false, "enable UPnP support")
diff --git a/ethereal/ethereum.go b/ethereal/ethereum.go
index 30187d956..2867e30d4 100644
--- a/ethereal/ethereum.go
+++ b/ethereal/ethereum.go
@@ -108,9 +108,11 @@ save these words so you can restore your account later: %s
os.Exit(0)
}
- if StartMining {
- utils.DoMining(ethereum)
- }
+ /*
+ if StartMining {
+ utils.DoMining(ethereum)
+ }
+ */
if StartRpc {
utils.DoRpc(ethereum, RpcPort)
diff --git a/ethereal/ui/gui.go b/ethereal/ui/gui.go
index 7c37e2d62..d6430d1fe 100644
--- a/ethereal/ui/gui.go
+++ b/ethereal/ui/gui.go
@@ -8,6 +8,7 @@ import (
"github.com/ethereum/eth-go/ethdb"
"github.com/ethereum/eth-go/ethpub"
"github.com/ethereum/eth-go/ethutil"
+ "github.com/ethereum/go-ethereum/utils"
"github.com/go-qml/qml"
"math/big"
"strings"
@@ -101,6 +102,19 @@ func (gui *Gui) Start(assetPath string) {
gui.eth.Stop()
}
+func (gui *Gui) ToggleMining() {
+ var txt string
+ if gui.eth.Mining {
+ utils.StopMining(gui.eth)
+ txt = "Start mining"
+ } else {
+ utils.StartMining(gui.eth)
+ txt = "Stop mining"
+ }
+
+ gui.win.Root().Set("miningButtonText", txt)
+}
+
func (gui *Gui) showWallet(context *qml.Context) (*qml.Window, error) {
component, err := gui.engine.LoadFile(gui.uiLib.AssetPath("qml/wallet.qml"))
if err != nil {
diff --git a/utils/cmd.go b/utils/cmd.go
index f8b7b5fe2..e1fc0fc00 100644
--- a/utils/cmd.go
+++ b/utils/cmd.go
@@ -33,8 +33,6 @@ func DoMining(ethereum *eth.Ethereum) {
addr := keyPair.Address()
go func() {
- ethutil.Config.Log.Infoln("Miner started")
-
miner = ethminer.NewDefaultMiner(addr, ethereum)
// Give it some time to connect with peers