forked from cerc-io/plugeth
Improved UI
* Added mining button
This commit is contained in:
parent
0938b56829
commit
e7c9b86a5a
@ -10,6 +10,8 @@ import Ethereum 1.0
|
|||||||
ApplicationWindow {
|
ApplicationWindow {
|
||||||
id: root
|
id: root
|
||||||
|
|
||||||
|
property alias miningButtonText: miningButton.text
|
||||||
|
|
||||||
width: 900
|
width: 900
|
||||||
height: 600
|
height: 600
|
||||||
minimumHeight: 300
|
minimumHeight: 300
|
||||||
@ -27,13 +29,6 @@ ApplicationWindow {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Menu {
|
Menu {
|
||||||
title: "Tools"
|
|
||||||
MenuItem {
|
|
||||||
text: "Muted"
|
|
||||||
shortcut: "Ctrl+e"
|
|
||||||
onTriggered: ui.muted("")
|
|
||||||
}
|
|
||||||
|
|
||||||
MenuItem {
|
MenuItem {
|
||||||
text: "Debugger"
|
text: "Debugger"
|
||||||
shortcut: "Ctrl+d"
|
shortcut: "Ctrl+d"
|
||||||
@ -50,11 +45,6 @@ ApplicationWindow {
|
|||||||
addPeerWin.visible = true
|
addPeerWin.visible = true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
MenuItem {
|
|
||||||
text: "Start"
|
|
||||||
onTriggered: ui.connect()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Menu {
|
Menu {
|
||||||
@ -310,8 +300,15 @@ ApplicationWindow {
|
|||||||
}
|
}
|
||||||
|
|
||||||
statusBar: StatusBar {
|
statusBar: StatusBar {
|
||||||
|
height: 30
|
||||||
RowLayout {
|
RowLayout {
|
||||||
anchors.fill: parent
|
Button {
|
||||||
|
id: miningButton
|
||||||
|
onClicked: {
|
||||||
|
eth.toggleMining()
|
||||||
|
}
|
||||||
|
text: "Start Mining"
|
||||||
|
}
|
||||||
|
|
||||||
Button {
|
Button {
|
||||||
property var enabled: true
|
property var enabled: true
|
||||||
@ -335,20 +332,22 @@ ApplicationWindow {
|
|||||||
anchors.leftMargin: 5
|
anchors.leftMargin: 5
|
||||||
id: walletValueLabel
|
id: walletValueLabel
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Label {
|
Label {
|
||||||
anchors.right: peerImage.left
|
y: 7
|
||||||
anchors.rightMargin: 5
|
anchors.right: peerImage.left
|
||||||
id: peerLabel
|
anchors.rightMargin: 5
|
||||||
font.pixelSize: 8
|
id: peerLabel
|
||||||
text: "0 / 0"
|
font.pixelSize: 8
|
||||||
}
|
text: "0 / 0"
|
||||||
Image {
|
}
|
||||||
id: peerImage
|
Image {
|
||||||
anchors.right: parent.right
|
y: 7
|
||||||
width: 10; height: 10
|
id: peerImage
|
||||||
source: ui.assetPath("network.png")
|
anchors.right: parent.right
|
||||||
}
|
width: 10; height: 10
|
||||||
|
source: ui.assetPath("network.png")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -546,94 +545,6 @@ ApplicationWindow {
|
|||||||
font.pointSize: 12
|
font.pointSize: 12
|
||||||
text: "<h2>Ethereal</h2><br><h3>Development</h3>Jeffrey Wilcke<br>Maran Hidskes<br>"
|
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){
|
function addDebugMessage(message){
|
||||||
@ -887,15 +798,6 @@ ApplicationWindow {
|
|||||||
mainContractColumn.state = "SETUP"
|
mainContractColumn.state = "SETUP"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Button {
|
|
||||||
id: debugButton
|
|
||||||
text: "Debug"
|
|
||||||
onClicked: {
|
|
||||||
var res = ui.debugTx("", txValue.text, txGas.text, txGasPrice.text, codeView.text)
|
|
||||||
debugWindow.visible = true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -6,7 +6,8 @@ import (
|
|||||||
|
|
||||||
var Identifier string
|
var Identifier string
|
||||||
var StartConsole bool
|
var StartConsole bool
|
||||||
var StartMining bool
|
|
||||||
|
//var StartMining bool
|
||||||
var StartRpc bool
|
var StartRpc bool
|
||||||
var RpcPort int
|
var RpcPort int
|
||||||
var UseUPnP bool
|
var UseUPnP bool
|
||||||
@ -24,7 +25,7 @@ var AssetPath string
|
|||||||
func Init() {
|
func Init() {
|
||||||
flag.StringVar(&Identifier, "i", "", "Custom client identifier")
|
flag.StringVar(&Identifier, "i", "", "Custom client identifier")
|
||||||
flag.BoolVar(&StartConsole, "c", false, "debug and testing console")
|
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(&StartRpc, "r", false, "start rpc server")
|
||||||
flag.BoolVar(&ShowGenesis, "g", false, "prints genesis header and exits")
|
flag.BoolVar(&ShowGenesis, "g", false, "prints genesis header and exits")
|
||||||
flag.BoolVar(&UseUPnP, "upnp", false, "enable UPnP support")
|
flag.BoolVar(&UseUPnP, "upnp", false, "enable UPnP support")
|
||||||
|
@ -108,9 +108,11 @@ save these words so you can restore your account later: %s
|
|||||||
os.Exit(0)
|
os.Exit(0)
|
||||||
}
|
}
|
||||||
|
|
||||||
if StartMining {
|
/*
|
||||||
utils.DoMining(ethereum)
|
if StartMining {
|
||||||
}
|
utils.DoMining(ethereum)
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
if StartRpc {
|
if StartRpc {
|
||||||
utils.DoRpc(ethereum, RpcPort)
|
utils.DoRpc(ethereum, RpcPort)
|
||||||
|
@ -8,6 +8,7 @@ import (
|
|||||||
"github.com/ethereum/eth-go/ethdb"
|
"github.com/ethereum/eth-go/ethdb"
|
||||||
"github.com/ethereum/eth-go/ethpub"
|
"github.com/ethereum/eth-go/ethpub"
|
||||||
"github.com/ethereum/eth-go/ethutil"
|
"github.com/ethereum/eth-go/ethutil"
|
||||||
|
"github.com/ethereum/go-ethereum/utils"
|
||||||
"github.com/go-qml/qml"
|
"github.com/go-qml/qml"
|
||||||
"math/big"
|
"math/big"
|
||||||
"strings"
|
"strings"
|
||||||
@ -101,6 +102,19 @@ func (gui *Gui) Start(assetPath string) {
|
|||||||
gui.eth.Stop()
|
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) {
|
func (gui *Gui) showWallet(context *qml.Context) (*qml.Window, error) {
|
||||||
component, err := gui.engine.LoadFile(gui.uiLib.AssetPath("qml/wallet.qml"))
|
component, err := gui.engine.LoadFile(gui.uiLib.AssetPath("qml/wallet.qml"))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -33,8 +33,6 @@ func DoMining(ethereum *eth.Ethereum) {
|
|||||||
addr := keyPair.Address()
|
addr := keyPair.Address()
|
||||||
|
|
||||||
go func() {
|
go func() {
|
||||||
ethutil.Config.Log.Infoln("Miner started")
|
|
||||||
|
|
||||||
miner = ethminer.NewDefaultMiner(addr, ethereum)
|
miner = ethminer.NewDefaultMiner(addr, ethereum)
|
||||||
|
|
||||||
// Give it some time to connect with peers
|
// Give it some time to connect with peers
|
||||||
|
Loading…
Reference in New Issue
Block a user