Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
Geth-Modification
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
张蕾
Geth-Modification
Commits
2b967558
Commit
2b967558
authored
Feb 22, 2014
by
obscuren
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Working out UI
parent
3e8b27c9
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
63 additions
and
6 deletions
+63
-6
config.go
config.go
+1
-1
gui.go
ui/gui.go
+19
-2
wallet.qml
wallet.qml
+43
-3
No files found.
config.go
View file @
2b967558
...
...
@@ -21,7 +21,7 @@ func Init() {
flag
.
BoolVar
(
&
StartConsole
,
"c"
,
false
,
"debug and testing console"
)
flag
.
BoolVar
(
&
StartMining
,
"m"
,
false
,
"start dagger mining"
)
flag
.
BoolVar
(
&
ShowGenesis
,
"g"
,
false
,
"prints genesis header and exits"
)
flag
.
BoolVar
(
&
UseGui
,
"gui"
,
fals
e
,
"use the gui"
)
flag
.
BoolVar
(
&
UseGui
,
"gui"
,
tru
e
,
"use the gui"
)
flag
.
BoolVar
(
&
UseUPnP
,
"upnp"
,
false
,
"enable UPnP support"
)
flag
.
BoolVar
(
&
UseSeed
,
"seed"
,
true
,
"seed peers"
)
flag
.
BoolVar
(
&
GenAddr
,
"genaddr"
,
false
,
"create a new priv/pub key"
)
...
...
ui/gui.go
View file @
2b967558
...
...
@@ -56,10 +56,12 @@ func (ui *Gui) Start() {
context
:=
ui
.
engine
.
Context
()
context
.
SetVar
(
"eth"
,
ui
.
lib
)
context
.
SetVar
(
"ui"
,
&
UiLib
{
engine
:
ui
.
engine
})
context
.
SetVar
(
"ui"
,
&
UiLib
{
engine
:
ui
.
engine
,
eth
:
ui
.
eth
})
ui
.
eth
.
BlockManager
.
SecondaryBlockProcessor
=
ui
ethutil
.
Config
.
Log
.
AddLogSystem
(
ui
)
go
ui
.
setInitialBlockChain
()
go
ui
.
updatePeers
()
...
...
@@ -73,13 +75,23 @@ func (ui *Gui) setInitialBlockChain() {
ui
.
ProcessBlock
(
block
)
}
ui
.
eth
.
Start
()
}
func
(
ui
*
Gui
)
ProcessBlock
(
block
*
ethchain
.
Block
)
{
ui
.
win
.
Root
()
.
Call
(
"addBlock"
,
NewBlockFromBlock
(
block
))
}
func
(
ui
*
Gui
)
Println
(
v
...
interface
{})
{
str
:=
fmt
.
Sprintln
(
v
...
)
// remove last \n
ui
.
win
.
Root
()
.
Call
(
"addLog"
,
str
[
:
len
(
str
)
-
1
])
}
func
(
ui
*
Gui
)
Printf
(
format
string
,
v
...
interface
{})
{
str
:=
strings
.
TrimRight
(
fmt
.
Sprintf
(
format
,
v
...
),
"
\n
"
)
ui
.
win
.
Root
()
.
Call
(
"addLog"
,
str
)
}
func
(
ui
*
Gui
)
updatePeers
()
{
for
{
ui
.
win
.
Root
()
.
Call
(
"setPeers"
,
fmt
.
Sprintf
(
"%d / %d"
,
ui
.
eth
.
Peers
()
.
Len
(),
ui
.
eth
.
MaxPeers
))
...
...
@@ -89,6 +101,7 @@ func (ui *Gui) updatePeers() {
type
UiLib
struct
{
engine
*
qml
.
Engine
eth
*
eth
.
Ethereum
}
func
(
ui
*
UiLib
)
Open
(
path
string
)
{
...
...
@@ -104,6 +117,10 @@ func (ui *UiLib) Open(path string) {
}()
}
func
(
ui
*
UiLib
)
Connect
()
{
ui
.
eth
.
Start
()
}
type
Tester
struct
{
root
qml
.
Object
}
...
...
wallet.qml
View file @
2b967558
...
...
@@ -2,6 +2,7 @@ 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
GoExtensions
1.0
ApplicationWindow
{
...
...
@@ -60,20 +61,36 @@ ApplicationWindow {
}
TableView
{
id
:
blockTable
width
:
parent
.
width
height
:
100
anchors.bottom
:
parent
.
bottom
anchors.top
:
splitView
.
bottom
anchors.bottom
:
logView
.
top
TableViewColumn
{
role
:
"number"
;
title
:
"#"
;
width
:
100
}
TableViewColumn
{
role
:
"hash"
;
title
:
"Hash"
;
width
:
560
}
model
:
blockModel
onDoubleClicked
:
{
console
.
log
(
eth
.
getBlock
(
blockModel
.
get
(
row
).
hash
))
popup
.
visible
=
true
popup
.
block
=
eth
.
getBlock
(
blockModel
.
get
(
row
).
hash
)
popup
.
hashLabel
.
text
=
popup
.
block
.
hash
}
}
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
{
id
:
openAppDialog
title
:
"Open QML Application"
...
...
@@ -86,6 +103,13 @@ ApplicationWindow {
RowLayout
{
anchors.fill
:
parent
Button
{
id
:
connectButton
onClicked
:
ui
.
connect
()
text
:
"Connect"
}
Button
{
anchors.left
:
connectButton
.
right
anchors.leftMargin
:
5
onClicked
:
openAppDialog
.
open
()
text
:
"Import App"
}
...
...
@@ -107,10 +131,26 @@ ApplicationWindow {
}
}
Window
{
id
:
popup
visible
:
false
property
var
block
Label
{
id
:
hashLabel
anchors.horizontalCenter
:
parent
.
horizontalCenter
anchors.verticalCenter
:
parent
.
verticalCenter
}
}
function
addBlock
(
block
)
{
blockModel
.
insert
(
0
,
{
number
:
block
.
number
,
hash
:
block
.
hash
})
}
function
addLog
(
str
)
{
console
.
log
(
str
)
logModel
.
insert
(
0
,
{
description
:
str
})
}
function
setPeers
(
text
)
{
peerLabel
.
text
=
text
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment