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
11aa7da6
Commit
11aa7da6
authored
Apr 11, 2014
by
Maran
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Initial refactor for wallet qml
parent
5768b18a
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
280 additions
and
258 deletions
+280
-258
_new_contract.qml
ethereal/assets/qml/newTransaction/_new_contract.qml
+162
-0
_simple_send.qml
ethereal/assets/qml/newTransaction/_simple_send.qml
+111
-0
wallet.qml
ethereal/assets/qml/wallet.qml
+7
-258
No files found.
ethereal/assets/qml/newTransaction/_new_contract.qml
0 → 100644
View file @
11aa7da6
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
QtQuick
.
Controls
.
Styles
1.1
import
Ethereum
1.0
Component
{
id
:
newContract
Column
{
id
:
mainContractColumn
function
contractFormReady
(){
if
(
codeView
.
text
.
length
>
0
&&
txValue
.
text
.
length
>
0
&&
txGas
.
text
.
length
>
0
&&
txGasPrice
.
length
>
0
)
{
txButton
.
state
=
"READY"
}
else
{
txButton
.
state
=
"NOTREADY"
}
}
states
:
[
State
{
name
:
"ERROR"
PropertyChanges
{
target
:
txResult
;
visible
:
true
}
PropertyChanges
{
target
:
codeView
;
visible
:
true
}
},
State
{
name
:
"DONE"
PropertyChanges
{
target
:
txValue
;
visible
:
false
}
PropertyChanges
{
target
:
txGas
;
visible
:
false
}
PropertyChanges
{
target
:
txGasPrice
;
visible
:
false
}
PropertyChanges
{
target
:
codeView
;
visible
:
false
}
PropertyChanges
{
target
:
txButton
;
visible
:
false
}
PropertyChanges
{
target
:
txDataLabel
;
visible
:
false
}
PropertyChanges
{
target
:
txResult
;
visible
:
true
}
PropertyChanges
{
target
:
txOutput
;
visible
:
true
}
PropertyChanges
{
target
:
newTxButton
;
visible
:
true
}
},
State
{
name
:
"SETUP"
PropertyChanges
{
target
:
txValue
;
visible
:
true
;
text
:
""
}
PropertyChanges
{
target
:
txGas
;
visible
:
true
;
text
:
""
}
PropertyChanges
{
target
:
txGasPrice
;
visible
:
true
;
text
:
""
}
PropertyChanges
{
target
:
codeView
;
visible
:
true
;
text
:
""
}
PropertyChanges
{
target
:
txButton
;
visible
:
true
}
PropertyChanges
{
target
:
txDataLabel
;
visible
:
true
}
PropertyChanges
{
target
:
txResult
;
visible
:
false
}
PropertyChanges
{
target
:
txOutput
;
visible
:
false
}
PropertyChanges
{
target
:
newTxButton
;
visible
:
false
}
}
]
width
:
400
spacing
:
5
anchors.left
:
parent
.
left
anchors.top
:
parent
.
top
anchors.leftMargin
:
5
anchors.topMargin
:
5
TextField
{
id
:
txValue
width
:
200
placeholderText
:
"Amount"
validator
:
IntValidator
{
}
onTextChanged
:
{
contractFormReady
()
}
}
TextField
{
id
:
txGas
width
:
200
validator
:
IntValidator
{
}
placeholderText
:
"Gas"
onTextChanged
:
{
contractFormReady
()
}
}
TextField
{
id
:
txGasPrice
width
:
200
placeholderText
:
"Gas price"
validator
:
IntValidator
{
}
onTextChanged
:
{
contractFormReady
()
}
}
Label
{
id
:
txDataLabel
text
:
"Transaction data"
}
TextArea
{
id
:
codeView
anchors.topMargin
:
5
Layout.fillWidth
:
true
width
:
parent
.
width
/
2
onTextChanged
:
{
contractFormReady
()
}
}
Button
{
id
:
txButton
states
:
[
State
{
name
:
"READY"
PropertyChanges
{
target
:
txButton
;
enabled
:
true
}
},
State
{
name
:
"NOTREADY"
PropertyChanges
{
target
:
txButton
;
enabled
:
false
}
}
]
text
:
"Send"
enabled
:
false
onClicked
:
{
//this.enabled = false
var
res
=
eth
.
createTx
(
""
,
txValue
.
text
,
txGas
.
text
,
txGasPrice
.
text
,
codeView
.
text
)
if
(
res
[
1
])
{
txResult
.
text
=
"Your contract <b>could not</b> be send over the network:
\n
<b>"
txResult
.
text
+=
res
[
1
].
error
()
txResult
.
text
+=
"</b>"
mainContractColumn
.
state
=
"ERROR"
}
else
{
txResult
.
text
=
"Your contract has been submitted:
\n
"
txOutput
.
text
=
res
[
0
]
mainContractColumn
.
state
=
"DONE"
}
}
}
Text
{
id
:
txResult
visible
:
false
}
TextField
{
id
:
txOutput
visible
:
false
width
:
530
}
Button
{
id
:
newTxButton
visible
:
false
text
:
"Create an other contract"
onClicked
:
{
this
.
visible
=
false
txResult
.
text
=
""
txOutput
.
text
=
""
mainContractColumn
.
state
=
"SETUP"
}
}
Button
{
id
:
debugButton
text
:
"Debug"
onClicked
:
{
var
res
=
ui
.
debugTx
(
""
,
txValue
.
text
,
txGas
.
text
,
txGasPrice
.
text
,
codeView
.
text
)
debugWindow
.
visible
=
true
}
}
}
}
ethereal/assets/qml/newTransaction/_simple_send.qml
0 → 100644
View file @
11aa7da6
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
QtQuick
.
Controls
.
Styles
1.1
import
Ethereum
1.0
Component
{
id
:
newTransaction
Column
{
id
:
simpleSendColumn
states
:
[
State
{
name
:
"ERROR"
},
State
{
name
:
"DONE"
PropertyChanges
{
target
:
txSimpleValue
;
visible
:
false
}
PropertyChanges
{
target
:
txSimpleRecipient
;
visible
:
false
}
PropertyChanges
{
target
:
newSimpleTxButton
;
visible
:
false
}
PropertyChanges
{
target
:
txSimpleResult
;
visible
:
true
}
PropertyChanges
{
target
:
txSimpleOutput
;
visible
:
true
}
PropertyChanges
{
target
:
newSimpleTxButton
;
visible
:
true
}
},
State
{
name
:
"SETUP"
PropertyChanges
{
target
:
txSimpleValue
;
visible
:
true
;
text
:
""
}
PropertyChanges
{
target
:
txSimpleRecipient
;
visible
:
true
;
text
:
""
}
PropertyChanges
{
target
:
txSimpleButton
;
visible
:
true
}
PropertyChanges
{
target
:
newSimpleTxButton
;
visible
:
false
}
}
]
spacing
:
5
anchors.leftMargin
:
5
anchors.topMargin
:
5
anchors.top
:
parent
.
top
anchors.left
:
parent
.
left
function
checkFormState
(){
if
(
txSimpleRecipient
.
text
.
length
==
40
&&
txSimpleValue
.
text
.
length
>
0
)
{
txSimpleButton
.
state
=
"READY"
}
else
{
txSimpleButton
.
state
=
"NOTREADY"
}
}
TextField
{
id
:
txSimpleRecipient
placeholderText
:
"Recipient address"
Layout.fillWidth
:
true
validator
:
RegExpValidator
{
regExp
:
/
[
a-f0-9
]{40}
/
}
width
:
530
onTextChanged
:
{
checkFormState
()
}
}
TextField
{
id
:
txSimpleValue
placeholderText
:
"Amount"
anchors.rightMargin
:
5
validator
:
IntValidator
{
}
onTextChanged
:
{
checkFormState
()
}
}
Button
{
id
:
txSimpleButton
states
:
[
State
{
name
:
"READY"
PropertyChanges
{
target
:
txSimpleButton
;
enabled
:
true
}
},
State
{
name
:
"NOTREADY"
PropertyChanges
{
target
:
txSimpleButton
;
enabled
:
false
}
}
]
text
:
"Send"
enabled
:
false
onClicked
:
{
//this.enabled = false
var
res
=
eth
.
createTx
(
txSimpleRecipient
.
text
,
txSimpleValue
.
text
,
""
,
""
,
""
)
if
(
res
[
1
])
{
txSimpleResult
.
text
=
"There has been an error broadcasting your transaction:"
+
res
[
1
].
error
()
}
else
{
txSimpleResult
.
text
=
"Your transaction has been broadcasted over the network.
\n
Your transaction id is:"
txSimpleOutput
.
text
=
res
[
0
]
this
.
visible
=
false
simpleSendColumn
.
state
=
"DONE"
}
}
}
Text
{
id
:
txSimpleResult
visible
:
false
}
TextField
{
id
:
txSimpleOutput
visible
:
false
width
:
530
}
Button
{
id
:
newSimpleTxButton
visible
:
false
text
:
"Create an other transaction"
onClicked
:
{
this
.
visible
=
false
simpleSendColumn
.
state
=
"SETUP"
}
}
}
}
ethereal/assets/qml/wallet.qml
View file @
11aa7da6
...
@@ -108,6 +108,7 @@ ApplicationWindow {
...
@@ -108,6 +108,7 @@ ApplicationWindow {
//color: "#D9DDE7"
//color: "#D9DDE7"
color
:
"#252525"
color
:
"#252525"
ColumnLayout
{
ColumnLayout
{
y
:
50
y
:
50
anchors.left
:
parent
.
left
anchors.left
:
parent
.
left
...
@@ -187,270 +188,18 @@ ApplicationWindow {
...
@@ -187,270 +188,18 @@ ApplicationWindow {
anchors.bottomMargin
:
5
anchors.bottomMargin
:
5
id
:
newTransactionTab
id
:
newTransactionTab
Component.onCompleted
:{
Component.onCompleted
:{
addTab
(
"Simple send"
,
newTransaction
)
var
component
=
Qt
.
createComponent
(
"newTransaction/_simple_send.qml"
)
addTab
(
"Create contract"
,
newContract
)
var
newTransaction
=
component
.
createObject
(
"newTransaction"
)
}
}
Component
{
id
:
newTransaction
Column
{
id
:
simpleSendColumn
states
:
[
State
{
name
:
"ERROR"
},
State
{
name
:
"DONE"
PropertyChanges
{
target
:
txSimpleValue
;
visible
:
false
}
PropertyChanges
{
target
:
txSimpleRecipient
;
visible
:
false
}
PropertyChanges
{
target
:
newSimpleTxButton
;
visible
:
false
}
PropertyChanges
{
target
:
txSimpleResult
;
visible
:
true
}
PropertyChanges
{
target
:
txSimpleOutput
;
visible
:
true
}
PropertyChanges
{
target
:
newSimpleTxButton
;
visible
:
true
}
},
State
{
name
:
"SETUP"
PropertyChanges
{
target
:
txSimpleValue
;
visible
:
true
;
text
:
""
}
PropertyChanges
{
target
:
txSimpleRecipient
;
visible
:
true
;
text
:
""
}
PropertyChanges
{
target
:
txSimpleButton
;
visible
:
true
}
PropertyChanges
{
target
:
newSimpleTxButton
;
visible
:
false
}
}
]
spacing
:
5
anchors.leftMargin
:
5
anchors.topMargin
:
5
anchors.top
:
parent
.
top
anchors.left
:
parent
.
left
function
checkFormState
(){
if
(
txSimpleRecipient
.
text
.
length
==
40
&&
txSimpleValue
.
text
.
length
>
0
)
{
txSimpleButton
.
state
=
"READY"
}
else
{
txSimpleButton
.
state
=
"NOTREADY"
}
}
TextField
{
id
:
txSimpleRecipient
placeholderText
:
"Recipient address"
Layout.fillWidth
:
true
validator
:
RegExpValidator
{
regExp
:
/
[
a-f0-9
]{40}
/
}
width
:
530
onTextChanged
:
{
checkFormState
()
}
}
TextField
{
id
:
txSimpleValue
placeholderText
:
"Amount"
anchors.rightMargin
:
5
validator
:
IntValidator
{
}
onTextChanged
:
{
checkFormState
()
}
}
Button
{
id
:
txSimpleButton
states
:
[
State
{
name
:
"READY"
PropertyChanges
{
target
:
txSimpleButton
;
enabled
:
true
}
},
State
{
name
:
"NOTREADY"
PropertyChanges
{
target
:
txSimpleButton
;
enabled
:
false
}
}
]
text
:
"Send"
enabled
:
false
onClicked
:
{
//this.enabled = false
var
res
=
eth
.
createTx
(
txSimpleRecipient
.
text
,
txSimpleValue
.
text
,
""
,
""
,
""
)
if
(
res
[
1
])
{
txSimpleResult
.
text
=
"There has been an error broadcasting your transaction:"
+
res
[
1
].
error
()
}
else
{
txSimpleResult
.
text
=
"Your transaction has been broadcasted over the network.
\n
Your transaction id is:"
txSimpleOutput
.
text
=
res
[
0
]
this
.
visible
=
false
simpleSendColumn
.
state
=
"DONE"
}
}
}
Text
{
id
:
txSimpleResult
visible
:
false
}
TextField
{
id
:
txSimpleOutput
visible
:
false
width
:
530
}
Button
{
id
:
newSimpleTxButton
visible
:
false
text
:
"Create an other transaction"
onClicked
:
{
this
.
visible
=
false
simpleSendColumn
.
state
=
"SETUP"
}
}
}
}
Component
{
id
:
newContract
Column
{
id
:
mainContractColumn
function
contractFormReady
(){
if
(
codeView
.
text
.
length
>
0
&&
txValue
.
text
.
length
>
0
&&
txGas
.
text
.
length
>
0
&&
txGasPrice
.
length
>
0
)
{
txButton
.
state
=
"READY"
}
else
{
txButton
.
state
=
"NOTREADY"
}
}
states
:
[
State
{
name
:
"ERROR"
PropertyChanges
{
target
:
txResult
;
visible
:
true
}
PropertyChanges
{
target
:
codeView
;
visible
:
true
}
},
State
{
name
:
"DONE"
PropertyChanges
{
target
:
txValue
;
visible
:
false
}
PropertyChanges
{
target
:
txGas
;
visible
:
false
}
PropertyChanges
{
target
:
txGasPrice
;
visible
:
false
}
PropertyChanges
{
target
:
codeView
;
visible
:
false
}
PropertyChanges
{
target
:
txButton
;
visible
:
false
}
PropertyChanges
{
target
:
txDataLabel
;
visible
:
false
}
PropertyChanges
{
target
:
txResult
;
visible
:
true
}
PropertyChanges
{
target
:
txOutput
;
visible
:
true
}
PropertyChanges
{
target
:
newTxButton
;
visible
:
true
}
},
State
{
name
:
"SETUP"
PropertyChanges
{
target
:
txValue
;
visible
:
true
;
text
:
""
}
PropertyChanges
{
target
:
txGas
;
visible
:
true
;
text
:
""
}
PropertyChanges
{
target
:
txGasPrice
;
visible
:
true
;
text
:
""
}
PropertyChanges
{
target
:
codeView
;
visible
:
true
;
text
:
""
}
PropertyChanges
{
target
:
txButton
;
visible
:
true
}
PropertyChanges
{
target
:
txDataLabel
;
visible
:
true
}
PropertyChanges
{
target
:
txResult
;
visible
:
false
}
PropertyChanges
{
target
:
txOutput
;
visible
:
false
}
PropertyChanges
{
target
:
newTxButton
;
visible
:
false
}
}
]
width
:
400
spacing
:
5
anchors.left
:
parent
.
left
anchors.top
:
parent
.
top
anchors.leftMargin
:
5
anchors.topMargin
:
5
TextField
{
component
=
Qt
.
createComponent
(
"newTransaction/_new_contract.qml"
)
id
:
txValue
var
newContract
=
component
.
createObject
(
"newContract"
)
width
:
200
placeholderText
:
"Amount"
validator
:
IntValidator
{
}
onTextChanged
:
{
contractFormReady
()
}
}
TextField
{
id
:
txGas
width
:
200
validator
:
IntValidator
{
}
placeholderText
:
"Gas"
onTextChanged
:
{
contractFormReady
()
}
}
TextField
{
id
:
txGasPrice
width
:
200
placeholderText
:
"Gas price"
validator
:
IntValidator
{
}
onTextChanged
:
{
contractFormReady
()
}
}
Label
{
id
:
txDataLabel
text
:
"Transaction data"
}
TextArea
{
addTab
(
"Simple send"
,
newTransaction
)
id
:
codeView
addTab
(
"Create contract"
,
newContract
)
anchors.topMargin
:
5
Layout.fillWidth
:
true
width
:
parent
.
width
/
2
onTextChanged
:
{
contractFormReady
()
}
}
Button
{
id
:
txButton
states
:
[
State
{
name
:
"READY"
PropertyChanges
{
target
:
txButton
;
enabled
:
true
}
},
State
{
name
:
"NOTREADY"
PropertyChanges
{
target
:
txButton
;
enabled
:
false
}
}
]
text
:
"Send"
enabled
:
false
onClicked
:
{
//this.enabled = false
var
res
=
eth
.
createTx
(
""
,
txValue
.
text
,
txGas
.
text
,
txGasPrice
.
text
,
codeView
.
text
)
if
(
res
[
1
])
{
txResult
.
text
=
"Your contract <b>could not</b> be send over the network:
\n
<b>"
txResult
.
text
+=
res
[
1
].
error
()
txResult
.
text
+=
"</b>"
mainContractColumn
.
state
=
"ERROR"
}
else
{
txResult
.
text
=
"Your contract has been submitted:
\n
"
txOutput
.
text
=
res
[
0
]
mainContractColumn
.
state
=
"DONE"
}
}
}
Text
{
id
:
txResult
visible
:
false
}
TextField
{
id
:
txOutput
visible
:
false
width
:
530
}
Button
{
id
:
newTxButton
visible
:
false
text
:
"Create an other contract"
onClicked
:
{
this
.
visible
=
false
txResult
.
text
=
""
txOutput
.
text
=
""
mainContractColumn
.
state
=
"SETUP"
}
}
Button
{
id
:
debugButton
text
:
"Debug"
onClicked
:
{
var
res
=
ui
.
debugTx
(
""
,
txValue
.
text
,
txGas
.
text
,
txGasPrice
.
text
,
codeView
.
text
)
debugWindow
.
visible
=
true
}
}
}
}
}
}
}
}
Rectangle
{
Rectangle
{
id
:
networkView
id
:
networkView
property
var
title
:
"Network"
property
var
title
:
"Network"
...
...
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