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
c43ea30e
Commit
c43ea30e
authored
May 12, 2014
by
obscuren
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Refactored some code and fixed #37
parent
5d15563e
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
214 additions
and
155 deletions
+214
-155
first_run.qml
ethereal/assets/qml/first_run.qml
+131
-131
gui.go
ethereal/ui/gui.go
+83
-24
No files found.
ethereal/assets/qml/first_run.qml
View file @
c43ea30e
...
@@ -61,7 +61,7 @@ ApplicationWindow {
...
@@ -61,7 +61,7 @@ ApplicationWindow {
text
:
"Restore"
text
:
"Restore"
enabled
:
false
enabled
:
false
onClicked
:
{
onClicked
:
{
var
success
=
eth
.
importAndSetPrivKey
(
txPrivKey
.
text
)
var
success
=
lib
.
importAndSetPrivKey
(
txPrivKey
.
text
)
if
(
success
){
if
(
success
){
importedDetails
.
visible
=
true
importedDetails
.
visible
=
true
restoreColumn
.
visible
=
false
restoreColumn
.
visible
=
false
...
@@ -139,7 +139,7 @@ ApplicationWindow {
...
@@ -139,7 +139,7 @@ ApplicationWindow {
id
:
newKey
id
:
newKey
text
:
"I don't have an account yet"
text
:
"I don't have an account yet"
onClicked
:
{
onClicked
:
{
var
res
=
eth
.
createAndSetPrivKey
()
var
res
=
lib
.
createAndSetPrivKey
()
mnemonicInput
.
text
=
res
[
0
]
mnemonicInput
.
text
=
res
[
0
]
addressInput
.
text
=
res
[
1
]
addressInput
.
text
=
res
[
1
]
privkeyInput
.
text
=
res
[
2
]
privkeyInput
.
text
=
res
[
2
]
...
...
ethereal/ui/gui.go
View file @
c43ea30e
...
@@ -25,6 +25,7 @@ type Gui struct {
...
@@ -25,6 +25,7 @@ type Gui struct {
// The public Ethereum library
// The public Ethereum library
lib
*
EthLib
lib
*
EthLib
uiLib
*
UiLib
txDb
*
ethdb
.
LDBDatabase
txDb
*
ethdb
.
LDBDatabase
...
@@ -75,11 +76,12 @@ func (gui *Gui) Start(assetPath string) {
...
@@ -75,11 +76,12 @@ func (gui *Gui) Start(assetPath string) {
// Expose the eth library and the ui library to QML
// Expose the eth library and the ui library to QML
context
.
SetVar
(
"eth"
,
gui
)
context
.
SetVar
(
"eth"
,
gui
)
uiLib
:
=
NewUiLib
(
gui
.
engine
,
gui
.
eth
,
assetPath
)
gui
.
uiLib
=
NewUiLib
(
gui
.
engine
,
gui
.
eth
,
assetPath
)
context
.
SetVar
(
"ui"
,
uiLib
)
context
.
SetVar
(
"ui"
,
gui
.
uiLib
)
// Load the main QML interface
// Load the main QML interface
data
,
_
:=
ethutil
.
Config
.
Db
.
Get
([]
byte
(
"KeyRing"
))
data
,
_
:=
ethutil
.
Config
.
Db
.
Get
([]
byte
(
"KeyRing"
))
/*
var err error
var err error
var component qml.Object
var component qml.Object
firstRun := len(data) == 0
firstRun := len(data) == 0
...
@@ -115,6 +117,63 @@ func (gui *Gui) Start(assetPath string) {
...
@@ -115,6 +117,63 @@ func (gui *Gui) Start(assetPath string) {
gui.win.Wait()
gui.win.Wait()
gui.eth.Stop()
gui.eth.Stop()
*/
var
win
*
qml
.
Window
var
err
error
if
len
(
data
)
==
0
{
win
,
err
=
gui
.
showKeyImport
(
context
)
}
else
{
win
,
err
=
gui
.
showWallet
(
context
)
}
if
err
!=
nil
{
ethutil
.
Config
.
Log
.
Infoln
(
"FATAL: asset not found: you can set an alternative asset path on on the command line using option 'asset_path'"
)
panic
(
err
)
}
win
.
Show
()
win
.
Wait
()
gui
.
eth
.
Stop
()
}
func
(
gui
*
Gui
)
showWallet
(
context
*
qml
.
Context
)
(
*
qml
.
Window
,
error
)
{
component
,
err
:=
gui
.
engine
.
LoadFile
(
gui
.
uiLib
.
AssetPath
(
"qml/wallet.qml"
))
if
err
!=
nil
{
return
nil
,
err
}
win
:=
gui
.
createWindow
(
component
)
go
gui
.
setInitialBlockChain
()
go
gui
.
readPreviousTransactions
()
go
gui
.
update
()
return
win
,
nil
}
func
(
gui
*
Gui
)
showKeyImport
(
context
*
qml
.
Context
)
(
*
qml
.
Window
,
error
)
{
context
.
SetVar
(
"lib"
,
gui
.
lib
)
component
,
err
:=
gui
.
engine
.
LoadFile
(
gui
.
uiLib
.
AssetPath
(
"qml/first_run.qml"
))
if
err
!=
nil
{
return
nil
,
err
}
return
gui
.
createWindow
(
component
),
nil
}
func
(
gui
*
Gui
)
createWindow
(
comp
qml
.
Object
)
*
qml
.
Window
{
win
:=
comp
.
CreateWindow
(
nil
)
gui
.
win
=
win
gui
.
uiLib
.
win
=
win
db
:=
&
Debugger
{
gui
.
win
,
make
(
chan
bool
)}
gui
.
lib
.
Db
=
db
gui
.
uiLib
.
Db
=
db
return
gui
.
win
}
}
func
(
gui
*
Gui
)
setInitialBlockChain
()
{
func
(
gui
*
Gui
)
setInitialBlockChain
()
{
...
...
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