Minor updates to the UI
This commit is contained in:
parent
5ac875b097
commit
ded013b7a7
|
@ -44,59 +44,104 @@ Rectangle {
|
|||
gui.setCustomIdentifier(text)
|
||||
}
|
||||
}
|
||||
|
||||
TextArea {
|
||||
objectName: "statsPane"
|
||||
width: parent.width
|
||||
height: 200
|
||||
selectByMouse: true
|
||||
readOnly: true
|
||||
font.family: "Courier"
|
||||
}
|
||||
}
|
||||
|
||||
property var addressModel: ListModel {
|
||||
id: addressModel
|
||||
}
|
||||
TableView {
|
||||
id: addressView
|
||||
RowLayout {
|
||||
id: logLayout
|
||||
width: parent.width
|
||||
height: 200
|
||||
anchors.bottom: logLayout.top
|
||||
TableViewColumn{ role: "name"; title: "name" }
|
||||
TableViewColumn{ role: "address"; title: "address"; width: 300}
|
||||
anchors.bottom: parent.bottom
|
||||
|
||||
model: addressModel
|
||||
itemDelegate: Item {
|
||||
Text {
|
||||
anchors {
|
||||
left: parent.left
|
||||
right: parent.right
|
||||
leftMargin: 10
|
||||
verticalCenter: parent.verticalCenter
|
||||
}
|
||||
color: styleData.textColor
|
||||
elide: styleData.elideMode
|
||||
text: styleData.value
|
||||
font.pixelSize: 11
|
||||
MouseArea {
|
||||
acceptedButtons: Qt.LeftButton | Qt.RightButton
|
||||
propagateComposedEvents: true
|
||||
anchors.fill: parent
|
||||
onClicked: {
|
||||
addressView.selection.clear()
|
||||
addressView.selection.select(styleData.row)
|
||||
TableView {
|
||||
id: addressView
|
||||
width: parent.width
|
||||
height: 200
|
||||
anchors {
|
||||
left: parent.left
|
||||
right: logLevelSlider.left
|
||||
bottom: parent.bottom
|
||||
top: parent.top
|
||||
}
|
||||
TableViewColumn{ role: "name"; title: "name" }
|
||||
TableViewColumn{ role: "address"; title: "address"; width: 300}
|
||||
|
||||
if(mouse.button == Qt.RightButton) {
|
||||
contextMenu.row = styleData.row;
|
||||
contextMenu.popup()
|
||||
property var addressModel: ListModel {
|
||||
id: addressModel
|
||||
}
|
||||
|
||||
model: addressModel
|
||||
itemDelegate: Item {
|
||||
Text {
|
||||
anchors {
|
||||
left: parent.left
|
||||
right: parent.right
|
||||
leftMargin: 10
|
||||
verticalCenter: parent.verticalCenter
|
||||
}
|
||||
color: styleData.textColor
|
||||
elide: styleData.elideMode
|
||||
text: styleData.value
|
||||
font.pixelSize: 11
|
||||
MouseArea {
|
||||
acceptedButtons: Qt.LeftButton | Qt.RightButton
|
||||
propagateComposedEvents: true
|
||||
anchors.fill: parent
|
||||
onClicked: {
|
||||
addressView.selection.clear()
|
||||
addressView.selection.select(styleData.row)
|
||||
|
||||
if(mouse.button == Qt.RightButton) {
|
||||
contextMenu.row = styleData.row;
|
||||
contextMenu.popup()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Menu {
|
||||
id: contextMenu
|
||||
property var row;
|
||||
|
||||
MenuItem {
|
||||
text: "Copy"
|
||||
onTriggered: {
|
||||
copyToClipboard(addressModel.get(this.row).address)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Menu {
|
||||
id: contextMenu
|
||||
property var row;
|
||||
Slider {
|
||||
id: logLevelSlider
|
||||
value: gui.getLogLevelInt()
|
||||
anchors {
|
||||
right: parent.right
|
||||
top: parent.top
|
||||
bottom: parent.bottom
|
||||
|
||||
MenuItem {
|
||||
text: "Copy"
|
||||
onTriggered: {
|
||||
copyToClipboard(addressModel.get(this.row).address)
|
||||
}
|
||||
rightMargin: 5
|
||||
leftMargin: 5
|
||||
topMargin: 5
|
||||
bottomMargin: 5
|
||||
}
|
||||
|
||||
orientation: Qt.Vertical
|
||||
maximumValue: 5
|
||||
stepSize: 1
|
||||
|
||||
onValueChanged: {
|
||||
gui.setLogLevel(value)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -104,6 +149,8 @@ Rectangle {
|
|||
property var logModel: ListModel {
|
||||
id: logModel
|
||||
}
|
||||
|
||||
/*
|
||||
RowLayout {
|
||||
id: logLayout
|
||||
width: parent.width
|
||||
|
@ -147,6 +194,7 @@ Rectangle {
|
|||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
function addDebugMessage(message){
|
||||
debuggerLog.append({value: message})
|
||||
|
|
|
@ -6,6 +6,7 @@ import (
|
|||
"fmt"
|
||||
"math/big"
|
||||
"os"
|
||||
"runtime"
|
||||
"strconv"
|
||||
"strings"
|
||||
"time"
|
||||
|
@ -412,6 +413,7 @@ func (gui *Gui) update() {
|
|||
|
||||
peerUpdateTicker := time.NewTicker(5 * time.Second)
|
||||
generalUpdateTicker := time.NewTicker(1 * time.Second)
|
||||
statsUpdateTicker := time.NewTicker(5 * time.Second)
|
||||
|
||||
state := gui.eth.StateManager().TransState()
|
||||
|
||||
|
@ -488,6 +490,10 @@ func (gui *Gui) update() {
|
|||
pow := gui.miner.GetPow()
|
||||
miningLabel.Set("text", "Mining @ "+strconv.FormatInt(pow.GetHashrate(), 10)+"Khash")
|
||||
}
|
||||
|
||||
case <-statsUpdateTicker.C:
|
||||
gui.setStatsPane()
|
||||
|
||||
}
|
||||
}
|
||||
}()
|
||||
|
@ -507,6 +513,28 @@ func (gui *Gui) update() {
|
|||
reactor.Subscribe("peerList", peerChan)
|
||||
}
|
||||
|
||||
func (gui *Gui) setStatsPane() {
|
||||
var memStats runtime.MemStats
|
||||
runtime.ReadMemStats(&memStats)
|
||||
|
||||
statsPane := gui.getObjectByName("statsPane")
|
||||
statsPane.Set("text", fmt.Sprintf(`###### Ethereal 0.6.4 (%s) #######
|
||||
|
||||
CPU: # %d
|
||||
Goroutines: # %d
|
||||
CGoCalls: # %d
|
||||
|
||||
Alloc: %d
|
||||
Heap Alloc: %d
|
||||
|
||||
CGNext: %x
|
||||
NumGC: %d
|
||||
`, runtime.Version(), runtime.NumCPU, runtime.NumGoroutine(), runtime.NumCgoCall(),
|
||||
memStats.Alloc, memStats.HeapAlloc,
|
||||
memStats.NextGC, memStats.NumGC,
|
||||
))
|
||||
}
|
||||
|
||||
func (gui *Gui) CopyToClipboard(data string) {
|
||||
//clipboard.WriteAll("test")
|
||||
fmt.Println("COPY currently BUGGED. Here are the contents:\n", data)
|
||||
|
|
|
@ -71,7 +71,6 @@ func main() {
|
|||
// This is a bit of a cheat, but ey!
|
||||
os.Setenv("QTWEBKIT_INSPECTOR_SERVER", "127.0.0.1:99999")
|
||||
|
||||
//qml.Init(nil)
|
||||
qml.Run(run)
|
||||
|
||||
var interrupted = false
|
||||
|
|
Loading…
Reference in New Issue