Updated DNS Lookup

This commit is contained in:
obscuren 2014-08-13 10:52:30 +02:00
parent 1fa792eae7
commit d518423b9c
4 changed files with 94 additions and 27 deletions

View File

@ -18,13 +18,8 @@ Rectangle {
Column { Column {
id: mainContractColumn id: mainContractColumn
anchors.fill: parent anchors.fill: parent
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: [ states: [
State{ State{
name: "ERROR" name: "ERROR"
@ -208,4 +203,12 @@ Rectangle {
} }
} }
} }
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"
}
}
} }

View File

@ -19,11 +19,11 @@ ApplicationWindow {
// Takes care of loading all default plugins // Takes care of loading all default plugins
Component.onCompleted: { Component.onCompleted: {
var historyView = addPlugin("./views/history.qml") var historyView = addPlugin("./views/history.qml", {title: "History"})
var newTxView = addPlugin("./views/transaction.qml") var newTxView = addPlugin("./views/transaction.qml", {title: "New Transaction"})
var chainView = addPlugin("./views/chain.qml") var chainView = addPlugin("./views/chain.qml", {title: "Block chain"})
var infoView = addPlugin("./views/info.qml") var infoView = addPlugin("./views/info.qml", {title: "Info"})
var pendingTxView = addPlugin("./views/pending_tx.qml") var pendingTxView = addPlugin("./views/pending_tx.qml", {title: "Pending", canClose: true})
// Call the ready handler // Call the ready handler
gui.done() gui.done()
@ -38,7 +38,7 @@ ApplicationWindow {
return return
} }
return mainSplit.addComponent(component, {objectName: objectName}) return mainSplit.addComponent(component, options)
} }
MenuBar { MenuBar {
@ -111,7 +111,7 @@ ApplicationWindow {
text: "Run JS file" text: "Run JS file"
onTriggered: { onTriggered: {
generalFileDialog.callback = function(path) { generalFileDialog.callback = function(path) {
lib.evalJavascriptFile(path) eth.evalJavascriptFile(path)
} }
generalFileDialog.open() generalFileDialog.open()
} }
@ -169,8 +169,6 @@ ApplicationWindow {
RowLayout { RowLayout {
Label { Label {
anchors.left: importAppButton.right
anchors.leftMargin: 5
id: walletValueLabel id: walletValueLabel
font.pixelSize: 10 font.pixelSize: 10
@ -250,7 +248,7 @@ ApplicationWindow {
return; return;
} }
menu.createMenuItem(view.iconFile, view); menu.createMenuItem(view.iconFile, view, options);
mainSplit.views.push(view); mainSplit.views.push(view);
return view return view
@ -261,8 +259,8 @@ ApplicationWindow {
********************/ ********************/
Rectangle { Rectangle {
id: menu id: menu
Layout.minimumWidth: 80 Layout.minimumWidth: 180
Layout.maximumWidth: 80 Layout.maximumWidth: 180
anchors.top: parent.top anchors.top: parent.top
color: "#252525" color: "#252525"
@ -280,11 +278,73 @@ ApplicationWindow {
} }
} }
/*
Component {
id: menuItemTemplate
Rectangle {
property var view;
property var source;
property alias title: title.text
height: 25
id: tab
anchors {
left: parent.left
right: parent.right
}
Label {
id: title
y: parent.height / 2 - this.height / 2
x: 5
font.pixelSize: 10
}
MouseArea {
anchors.fill: parent
onClicked: {
mainSplit.setView(view)
}
}
Image {
id: closeButton
y: parent.height / 2 - this.height / 2
visible: false
source: "../close.png"
anchors {
right: parent.right
rightMargin: 5
}
MouseArea {
anchors.fill: parent
onClicked: {
console.log("should close")
}
}
}
}
}
*/
function createMenuItem(icon, view, options) {
if(options === undefined) {
options = {};
}
function createMenuItem(icon, view) {
var comp = menuItemTemplate.createObject(menuColumn) var comp = menuItemTemplate.createObject(menuColumn)
comp.view = view comp.view = view
comp.source = icon comp.source = icon
/*
comp.title = options.title
if(options.canClose) {
//comp.closeButton.visible = options.canClose
}
*/
} }
ColumnLayout { ColumnLayout {
@ -459,7 +519,7 @@ ApplicationWindow {
anchors.leftMargin: 5 anchors.leftMargin: 5
text: "Import" text: "Import"
onClicked: { onClicked: {
lib.importTx(txImportField.text) eth.importTx(txImportField.text)
txImportField.visible = false txImportField.visible = false
} }
} }
@ -483,7 +543,7 @@ ApplicationWindow {
anchors.leftMargin: 10 anchors.leftMargin: 10
placeholderText: "address:port" placeholderText: "address:port"
onAccepted: { onAccepted: {
ui.connectToPeer(addrField.text) eth.connectToPeer(addrField.text)
addPeerWin.visible = false addPeerWin.visible = false
} }
} }
@ -493,7 +553,7 @@ ApplicationWindow {
anchors.leftMargin: 5 anchors.leftMargin: 5
text: "Add" text: "Add"
onClicked: { onClicked: {
ui.connectToPeer(addrField.text) eth.connectToPeer(addrField.text)
addPeerWin.visible = false addPeerWin.visible = false
} }
} }

View File

@ -31,9 +31,13 @@ ApplicationWindow {
//text: webview.url //text: webview.url
Keys.onReturnPressed: { Keys.onReturnPressed: {
var uri = this.text;
if(!/.*\:\/\/.*/.test(uri)) {
uri = "http://" + uri;
}
var reg = /(^https?\:\/\/(?:www\.)?)([a-zA-Z0-9_\-]*\.eth)(.*)/ var reg = /(^https?\:\/\/(?:www\.)?)([a-zA-Z0-9_\-]*\.eth)(.*)/
var uri = this.text;
if(reg.test(uri)) { if(reg.test(uri)) {
this.text.replace(reg, function(match, pre, domain, path) { this.text.replace(reg, function(match, pre, domain, path) {
uri = pre; uri = pre;
@ -45,7 +49,7 @@ ApplicationWindow {
} }
if(ip.length != 0) { if(ip.length != 0) {
uri += ip.join("."); uri += lookup;
} else { } else {
uri += domain; uri += domain;
} }

View File

@ -387,12 +387,12 @@ func (gui *Gui) update() {
if bytes.Compare(tx.Sender(), gui.address()) == 0 { if bytes.Compare(tx.Sender(), gui.address()) == 0 {
object.SubAmount(tx.Value) object.SubAmount(tx.Value)
gui.win.Root().Call("addTx", "post", ethpub.NewPTx(tx), "send") gui.getObjectByName("transactionView").Call("addTx", "post", ethpub.NewPTx(tx), "send")
gui.txDb.Put(tx.Hash(), tx.RlpEncode()) gui.txDb.Put(tx.Hash(), tx.RlpEncode())
} else if bytes.Compare(tx.Recipient, gui.address()) == 0 { } else if bytes.Compare(tx.Recipient, gui.address()) == 0 {
object.AddAmount(tx.Value) object.AddAmount(tx.Value)
gui.win.Root().Call("addTx", "post", ethpub.NewPTx(tx), "recv") gui.getObjectByName("transactionView").Call("addTx", "post", ethpub.NewPTx(tx), "recv")
gui.txDb.Put(tx.Hash(), tx.RlpEncode()) gui.txDb.Put(tx.Hash(), tx.RlpEncode())
} }