Updated assets & moved messages
This commit is contained in:
parent
cbf162ca64
commit
9a11a94894
@ -15,7 +15,7 @@
|
||||
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
||||
// MA 02110-1301 USA
|
||||
|
||||
var bigInt = (function () {
|
||||
var BigNumber = (function () {
|
||||
var base = 10000000, logBase = 7;
|
||||
var sign = {
|
||||
positive: false,
|
||||
@ -73,7 +73,7 @@ var bigInt = (function () {
|
||||
var isValid = (base == 16 ? /^[0-9A-F]*$/ : /^[0-9]+$/).test(text);
|
||||
if (!isValid) throw new Error("Invalid integer");
|
||||
if (base == 16) {
|
||||
var val = bigInt(0);
|
||||
var val = BigNumber(0);
|
||||
while (text.length) {
|
||||
v = text.charCodeAt(0) - 48;
|
||||
if (v > 9)
|
||||
@ -89,19 +89,19 @@ var bigInt = (function () {
|
||||
value.push(+text.slice(divider));
|
||||
text = text.slice(0, divider);
|
||||
}
|
||||
var val = bigInt(value, s);
|
||||
var val = BigNumber(value, s);
|
||||
if (first) normalize(first, val);
|
||||
return val;
|
||||
}
|
||||
};
|
||||
|
||||
var goesInto = function (a, b) {
|
||||
var a = bigInt(a, sign.positive), b = bigInt(b, sign.positive);
|
||||
var a = BigNumber(a, sign.positive), b = BigNumber(b, sign.positive);
|
||||
if (a.equals(0)) throw new Error("Cannot divide by 0");
|
||||
var n = 0;
|
||||
do {
|
||||
var inc = 1;
|
||||
var c = bigInt(a.value, sign.positive), t = c.times(10);
|
||||
var c = BigNumber(a.value, sign.positive), t = c.times(10);
|
||||
while (t.lesser(b)) {
|
||||
c = t;
|
||||
inc *= 10;
|
||||
@ -119,7 +119,7 @@ var bigInt = (function () {
|
||||
};
|
||||
};
|
||||
|
||||
var bigInt = function (value, s) {
|
||||
var BigNumber = function (value, s) {
|
||||
var self = {
|
||||
value: value,
|
||||
sign: s
|
||||
@ -129,11 +129,11 @@ var bigInt = (function () {
|
||||
sign: s,
|
||||
negate: function (m) {
|
||||
var first = m || self;
|
||||
return bigInt(first.value, !first.sign);
|
||||
return BigNumber(first.value, !first.sign);
|
||||
},
|
||||
abs: function (m) {
|
||||
var first = m || self;
|
||||
return bigInt(first.value, sign.positive);
|
||||
return BigNumber(first.value, sign.positive);
|
||||
},
|
||||
add: function (n, m) {
|
||||
var s, first = self, second;
|
||||
@ -141,8 +141,8 @@ var bigInt = (function () {
|
||||
else second = parse(n, first);
|
||||
s = first.sign;
|
||||
if (first.sign !== second.sign) {
|
||||
first = bigInt(first.value, sign.positive);
|
||||
second = bigInt(second.value, sign.positive);
|
||||
first = BigNumber(first.value, sign.positive);
|
||||
second = BigNumber(second.value, sign.positive);
|
||||
return s === sign.positive ?
|
||||
o.subtract(first, second) :
|
||||
o.subtract(second, first);
|
||||
@ -157,7 +157,7 @@ var bigInt = (function () {
|
||||
sum -= carry * base;
|
||||
result.push(sum);
|
||||
}
|
||||
return bigInt(result, s);
|
||||
return BigNumber(result, s);
|
||||
},
|
||||
plus: function (n, m) {
|
||||
return o.add(n, m);
|
||||
@ -178,7 +178,7 @@ var bigInt = (function () {
|
||||
var minuend = (borrow * base) + tmp - b[i];
|
||||
result.push(minuend);
|
||||
}
|
||||
return bigInt(result, sign.positive);
|
||||
return BigNumber(result, sign.positive);
|
||||
},
|
||||
minus: function (n, m) {
|
||||
return o.subtract(n, m);
|
||||
@ -223,7 +223,7 @@ var bigInt = (function () {
|
||||
sum -= carry * base;
|
||||
result.push(sum);
|
||||
}
|
||||
return bigInt(result, s);
|
||||
return BigNumber(result, s);
|
||||
},
|
||||
times: function (n, m) {
|
||||
return o.multiply(n, m);
|
||||
@ -233,9 +233,9 @@ var bigInt = (function () {
|
||||
if (m) (first = parse(n)) && (second = parse(m));
|
||||
else second = parse(n, first);
|
||||
s = first.sign !== second.sign;
|
||||
if (bigInt(first.value, first.sign).equals(0)) return {
|
||||
quotient: bigInt([0], sign.positive),
|
||||
remainder: bigInt([0], sign.positive)
|
||||
if (BigNumber(first.value, first.sign).equals(0)) return {
|
||||
quotient: BigNumber([0], sign.positive),
|
||||
remainder: BigNumber([0], sign.positive)
|
||||
};
|
||||
if (second.equals(0)) throw new Error("Cannot divide by zero");
|
||||
var a = first.value, b = second.value;
|
||||
@ -248,8 +248,8 @@ var bigInt = (function () {
|
||||
}
|
||||
result.reverse();
|
||||
return {
|
||||
quotient: bigInt(result, s),
|
||||
remainder: bigInt(remainder, first.sign)
|
||||
quotient: BigNumber(result, s),
|
||||
remainder: BigNumber(remainder, first.sign)
|
||||
};
|
||||
},
|
||||
divide: function (n, m) {
|
||||
@ -268,7 +268,7 @@ var bigInt = (function () {
|
||||
var a = first, b = second;
|
||||
if (b.lesser(0)) return ZERO;
|
||||
if (b.equals(0)) return ONE;
|
||||
var result = bigInt(a.value, a.sign);
|
||||
var result = BigNumber(a.value, a.sign);
|
||||
|
||||
if (b.mod(2).equals(0)) {
|
||||
var c = result.pow(b.over(2));
|
||||
@ -377,9 +377,9 @@ var bigInt = (function () {
|
||||
return o;
|
||||
};
|
||||
|
||||
var ZERO = bigInt([0], sign.positive);
|
||||
var ONE = bigInt([1], sign.positive);
|
||||
var MINUS_ONE = bigInt([1], sign.negative);
|
||||
var ZERO = BigNumber([0], sign.positive);
|
||||
var ONE = BigNumber([1], sign.positive);
|
||||
var MINUS_ONE = BigNumber([1], sign.negative);
|
||||
|
||||
var fnReturn = function (a) {
|
||||
if (typeof a === "undefined") return ZERO;
|
||||
@ -392,6 +392,6 @@ var bigInt = (function () {
|
||||
})();
|
||||
|
||||
if (typeof module !== "undefined") {
|
||||
module.exports = bigInt;
|
||||
module.exports = BigNumber;
|
||||
}
|
||||
|
||||
|
@ -2,11 +2,13 @@
|
||||
<html>
|
||||
|
||||
<head>
|
||||
<script type="text/javascript" src="js/bignumber.js/bignumber.min.js"></script>
|
||||
<script type="text/javascript" src="../bignumber.min.js"></script>
|
||||
<script type="text/javascript" src="../dist/ethereum.js"></script>
|
||||
<script type="text/javascript">
|
||||
|
||||
console.log("hello world");
|
||||
var web3 = require('web3');
|
||||
console.log(web3)
|
||||
web3.setProvider(new web3.providers.HttpSyncProvider('http://localhost:8080'));
|
||||
|
||||
function watchBalance() {
|
||||
@ -25,6 +27,11 @@
|
||||
});
|
||||
}
|
||||
|
||||
var request = new XMLHttpRequest();
|
||||
request.open('POST', "http://localhost:8080", false);
|
||||
request.send({});
|
||||
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
|
@ -45,9 +45,9 @@ ApplicationWindow {
|
||||
|
||||
mainSplit.setView(wallet.view, wallet.menuItem);
|
||||
|
||||
try {
|
||||
newBrowserTab("http://google.com");
|
||||
} catch(e) { console.log(e); }
|
||||
console.log("starting browser")
|
||||
newBrowserTab("http://etherian.io");
|
||||
console.log("done")
|
||||
|
||||
// Command setup
|
||||
gui.sendCommand(0)
|
||||
|
@ -1,11 +1,10 @@
|
||||
import QtQuick 2.0
|
||||
import QtWebEngine 1.0
|
||||
//import QtWebEngine.experimental 1.0
|
||||
import QtQuick.Controls 1.0;
|
||||
import QtQuick.Controls.Styles 1.0
|
||||
import QtQuick.Layouts 1.0;
|
||||
import QtWebEngine 1.0
|
||||
//import QtWebEngine.experimental 1.0
|
||||
import QtQuick.Window 2.0;
|
||||
import Ethereum 1.0
|
||||
|
||||
Rectangle {
|
||||
id: window
|
||||
@ -64,17 +63,6 @@ Rectangle {
|
||||
}
|
||||
|
||||
Component.onCompleted: {
|
||||
webview.url = "http://etherian.io"
|
||||
}
|
||||
|
||||
function messages(messages, id) {
|
||||
// Bit of a cheat to get proper JSON
|
||||
var m = JSON.parse(JSON.parse(JSON.stringify(messages)))
|
||||
webview.postEvent("eth_changed", id, m);
|
||||
}
|
||||
|
||||
function onShhMessage(message, id) {
|
||||
webview.postEvent("shh_changed", id, message)
|
||||
}
|
||||
|
||||
Item {
|
||||
@ -129,6 +117,8 @@ Rectangle {
|
||||
}
|
||||
iconSource: "../../bug.png"
|
||||
onClicked: {
|
||||
// XXX soon
|
||||
return
|
||||
if(inspector.visible == true){
|
||||
inspector.visible = false
|
||||
}else{
|
||||
@ -155,13 +145,23 @@ Rectangle {
|
||||
WebEngineView {
|
||||
objectName: "webView"
|
||||
id: webview
|
||||
// anchors.fill: parent
|
||||
anchors {
|
||||
left: parent.left
|
||||
right: parent.right
|
||||
bottom: parent.bottom
|
||||
top: divider.bottom
|
||||
}
|
||||
|
||||
onLoadingChanged: {
|
||||
console.log(url)
|
||||
if (loadRequest.status == WebEngineView.LoadSucceededStatus) {
|
||||
webview.runJavaScript(eth.readFile("bignumber.min.js"));
|
||||
webview.runJavaScript(eth.readFile("dist/ethereum.js"));
|
||||
}
|
||||
}
|
||||
onJavaScriptConsoleMessage: {
|
||||
console.log(sourceID + ":" + lineNumber + ":" + JSON.stringify(message));
|
||||
}
|
||||
}
|
||||
|
||||
Rectangle {
|
||||
@ -193,6 +193,7 @@ Rectangle {
|
||||
top: sizeGrip.bottom
|
||||
bottom: root.bottom
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
states: [
|
||||
|
@ -21,12 +21,9 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
|
||||
"github.com/ethereum/go-ethereum/core"
|
||||
"github.com/ethereum/go-ethereum/core/types"
|
||||
"github.com/ethereum/go-ethereum/event"
|
||||
"github.com/ethereum/go-ethereum/javascript"
|
||||
"github.com/ethereum/go-ethereum/state"
|
||||
"github.com/ethereum/go-ethereum/ui/qt"
|
||||
"github.com/ethereum/go-ethereum/xeth"
|
||||
@ -113,13 +110,15 @@ func (app *ExtApplication) mainLoop() {
|
||||
case core.NewBlockEvent:
|
||||
app.container.NewBlock(ev.Block)
|
||||
|
||||
case state.Messages:
|
||||
for id, filter := range app.filters {
|
||||
msgs := filter.FilterMessages(ev)
|
||||
if len(msgs) > 0 {
|
||||
app.container.Messages(msgs, id)
|
||||
/* TODO remove
|
||||
case state.Messages:
|
||||
for id, filter := range app.filters {
|
||||
msgs := filter.FilterMessages(ev)
|
||||
if len(msgs) > 0 {
|
||||
app.container.Messages(msgs, id)
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -129,6 +128,7 @@ func (self *ExtApplication) Watch(filterOptions map[string]interface{}, identifi
|
||||
}
|
||||
|
||||
func (self *ExtApplication) GetMessages(object map[string]interface{}) string {
|
||||
/* TODO remove me
|
||||
filter := qt.NewFilterFromMap(object, self.eth)
|
||||
|
||||
messages := filter.Find()
|
||||
@ -143,4 +143,6 @@ func (self *ExtApplication) GetMessages(object map[string]interface{}) string {
|
||||
}
|
||||
|
||||
return string(b)
|
||||
*/
|
||||
return ""
|
||||
}
|
||||
|
@ -398,14 +398,6 @@ func (gui *Gui) setup() {
|
||||
gui.setPeerInfo()
|
||||
}()
|
||||
|
||||
// Inject javascript files each time navigation is requested.
|
||||
// Unfortunately webview.experimental.userScripts injects _after_
|
||||
// the page has loaded which kind of renders it useless...
|
||||
//jsfiles := loadJavascriptAssets(gui)
|
||||
gui.getObjectByName("webView").On("navigationRequested", func() {
|
||||
//gui.getObjectByName("webView").Call("injectJs", jsfiles)
|
||||
})
|
||||
|
||||
gui.whisper.SetView(gui.getObjectByName("whisperView"))
|
||||
|
||||
gui.SendCommand(update)
|
||||
|
@ -21,7 +21,6 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"errors"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
@ -32,7 +31,6 @@ import (
|
||||
|
||||
"github.com/ethereum/go-ethereum/core/types"
|
||||
"github.com/ethereum/go-ethereum/ethutil"
|
||||
"github.com/ethereum/go-ethereum/javascript"
|
||||
"github.com/ethereum/go-ethereum/state"
|
||||
"github.com/ethereum/go-ethereum/xeth"
|
||||
"github.com/howeyc/fsnotify"
|
||||
@ -147,6 +145,7 @@ func (app *HtmlApplication) NewBlock(block *types.Block) {
|
||||
}
|
||||
|
||||
func (self *HtmlApplication) Messages(messages state.Messages, id string) {
|
||||
/* TODO remove me
|
||||
var msgs []javascript.JSMessage
|
||||
for _, m := range messages {
|
||||
msgs = append(msgs, javascript.NewJSMessage(m))
|
||||
@ -155,6 +154,7 @@ func (self *HtmlApplication) Messages(messages state.Messages, id string) {
|
||||
b, _ := json.Marshal(msgs)
|
||||
|
||||
self.webView.Call("onWatchedCb", string(b), id)
|
||||
*/
|
||||
}
|
||||
|
||||
func (app *HtmlApplication) Destroy() {
|
||||
|
@ -23,11 +23,11 @@ package main
|
||||
import (
|
||||
"bytes"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"path"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
"github.com/ethereum/go-ethereum/core"
|
||||
"github.com/ethereum/go-ethereum/core/types"
|
||||
"github.com/ethereum/go-ethereum/crypto"
|
||||
"github.com/ethereum/go-ethereum/eth"
|
||||
@ -35,8 +35,6 @@ import (
|
||||
"github.com/ethereum/go-ethereum/event/filter"
|
||||
"github.com/ethereum/go-ethereum/javascript"
|
||||
"github.com/ethereum/go-ethereum/miner"
|
||||
"github.com/ethereum/go-ethereum/state"
|
||||
"github.com/ethereum/go-ethereum/ui/qt"
|
||||
"github.com/ethereum/go-ethereum/xeth"
|
||||
"gopkg.in/qml.v1"
|
||||
)
|
||||
@ -313,34 +311,50 @@ func (self *UiLib) ToAscii(data string) string {
|
||||
|
||||
/// Ethereum filter methods
|
||||
func (self *UiLib) NewFilter(object map[string]interface{}, view *qml.Common) (id int) {
|
||||
/* TODO remove me
|
||||
filter := qt.NewFilterFromMap(object, self.eth)
|
||||
filter.MessageCallback = func(messages state.Messages) {
|
||||
view.Call("messages", xeth.ToJSMessages(messages), id)
|
||||
}
|
||||
id = self.filterManager.InstallFilter(filter)
|
||||
return id
|
||||
*/
|
||||
return 0
|
||||
}
|
||||
|
||||
func (self *UiLib) NewFilterString(typ string, view *qml.Common) (id int) {
|
||||
/* TODO remove me
|
||||
filter := core.NewFilter(self.eth)
|
||||
filter.BlockCallback = func(block *types.Block) {
|
||||
view.Call("messages", "{}", id)
|
||||
}
|
||||
id = self.filterManager.InstallFilter(filter)
|
||||
return id
|
||||
*/
|
||||
return 0
|
||||
}
|
||||
|
||||
func (self *UiLib) Messages(id int) *ethutil.List {
|
||||
/* TODO remove me
|
||||
filter := self.filterManager.GetFilter(id)
|
||||
if filter != nil {
|
||||
messages := xeth.ToJSMessages(filter.Find())
|
||||
|
||||
return messages
|
||||
}
|
||||
*/
|
||||
|
||||
return ethutil.EmptyList()
|
||||
}
|
||||
|
||||
func (self *UiLib) ReadFile(p string) string {
|
||||
content, err := ioutil.ReadFile(self.AssetPath(path.Join("ext", p)))
|
||||
if err != nil {
|
||||
guilogger.Infoln("error reading file", p, ":", err)
|
||||
}
|
||||
return string(content)
|
||||
}
|
||||
|
||||
func (self *UiLib) UninstallFilter(id int) {
|
||||
self.filterManager.UninstallFilter(id)
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user