clean up
This commit is contained in:
		@@ -15,7 +15,7 @@
 | 
				
			|||||||
	along with go-ethereum.  If not, see <http://www.gnu.org/licenses/>.
 | 
						along with go-ethereum.  If not, see <http://www.gnu.org/licenses/>.
 | 
				
			||||||
*/
 | 
					*/
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * @authors
 | 
					 * @authors:
 | 
				
			||||||
 * 	Jeffrey Wilcke <i@jev.io>
 | 
					 * 	Jeffrey Wilcke <i@jev.io>
 | 
				
			||||||
 * @date 2014
 | 
					 * @date 2014
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -63,6 +63,15 @@ func LoadExtension(path string) (uintptr, error) {
 | 
				
			|||||||
	return ptr.Interface().(uintptr), nil
 | 
						return ptr.Interface().(uintptr), nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
*/
 | 
					*/
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
						vec, errr := LoadExtension("/Users/jeffrey/Desktop/build-libqmltest-Desktop_Qt_5_2_1_clang_64bit-Debug/liblibqmltest_debug.dylib")
 | 
				
			||||||
 | 
						fmt.Printf("Fetched vec with addr: %#x\n", vec)
 | 
				
			||||||
 | 
						if errr != nil {
 | 
				
			||||||
 | 
							fmt.Println(errr)
 | 
				
			||||||
 | 
						} else {
 | 
				
			||||||
 | 
							context.SetVar("vec", (unsafe.Pointer)(vec))
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
var guilogger = logger.NewLogger("GUI")
 | 
					var guilogger = logger.NewLogger("GUI")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -112,9 +121,10 @@ func NewWindow(ethereum *eth.Ethereum, config *ethutil.ConfigManager, clientIden
 | 
				
			|||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func (gui *Gui) Start(assetPath string) {
 | 
					func (gui *Gui) Start(assetPath string) {
 | 
				
			||||||
 | 
					 | 
				
			||||||
	defer gui.txDb.Close()
 | 
						defer gui.txDb.Close()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						guilogger.Infoln("Starting GUI")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// Register ethereum functions
 | 
						// Register ethereum functions
 | 
				
			||||||
	qml.RegisterTypes("Ethereum", 1, 0, []qml.TypeSpec{{
 | 
						qml.RegisterTypes("Ethereum", 1, 0, []qml.TypeSpec{{
 | 
				
			||||||
		Init: func(p *xeth.JSBlock, obj qml.Object) { p.Number = 0; p.Hash = "" },
 | 
							Init: func(p *xeth.JSBlock, obj qml.Object) { p.Number = 0; p.Hash = "" },
 | 
				
			||||||
@@ -132,16 +142,6 @@ func (gui *Gui) Start(assetPath string) {
 | 
				
			|||||||
	context.SetVar("gui", gui)
 | 
						context.SetVar("gui", gui)
 | 
				
			||||||
	context.SetVar("eth", gui.uiLib)
 | 
						context.SetVar("eth", gui.uiLib)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/*
 | 
					 | 
				
			||||||
		vec, errr := LoadExtension("/Users/jeffrey/Desktop/build-libqmltest-Desktop_Qt_5_2_1_clang_64bit-Debug/liblibqmltest_debug.dylib")
 | 
					 | 
				
			||||||
		fmt.Printf("Fetched vec with addr: %#x\n", vec)
 | 
					 | 
				
			||||||
		if errr != nil {
 | 
					 | 
				
			||||||
			fmt.Println(errr)
 | 
					 | 
				
			||||||
		} else {
 | 
					 | 
				
			||||||
			context.SetVar("vec", (unsafe.Pointer)(vec))
 | 
					 | 
				
			||||||
		}
 | 
					 | 
				
			||||||
	*/
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	// Load the main QML interface
 | 
						// Load the main QML interface
 | 
				
			||||||
	data, _ := ethutil.Config.Db.Get([]byte("KeyRing"))
 | 
						data, _ := ethutil.Config.Db.Get([]byte("KeyRing"))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -160,7 +160,6 @@ func (gui *Gui) Start(assetPath string) {
 | 
				
			|||||||
		panic(err)
 | 
							panic(err)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	guilogger.Infoln("Starting GUI")
 | 
					 | 
				
			||||||
	gui.open = true
 | 
						gui.open = true
 | 
				
			||||||
	win.Show()
 | 
						win.Show()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -245,7 +244,7 @@ func (gui *Gui) CreateAndSetPrivKey() (string, string, string, string) {
 | 
				
			|||||||
	return gui.eth.KeyManager().KeyPair().AsStrings()
 | 
						return gui.eth.KeyManager().KeyPair().AsStrings()
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func (gui *Gui) setInitialChainManager() {
 | 
					func (gui *Gui) setInitialChain(ancientBlocks bool) {
 | 
				
			||||||
	sBlk := gui.eth.ChainManager().LastBlockHash
 | 
						sBlk := gui.eth.ChainManager().LastBlockHash
 | 
				
			||||||
	blk := gui.eth.ChainManager().GetBlock(sBlk)
 | 
						blk := gui.eth.ChainManager().GetBlock(sBlk)
 | 
				
			||||||
	for ; blk != nil; blk = gui.eth.ChainManager().GetBlock(sBlk) {
 | 
						for ; blk != nil; blk = gui.eth.ChainManager().GetBlock(sBlk) {
 | 
				
			||||||
@@ -255,10 +254,6 @@ func (gui *Gui) setInitialChainManager() {
 | 
				
			|||||||
	}
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
type address struct {
 | 
					 | 
				
			||||||
	Name, Address string
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
func (gui *Gui) loadAddressBook() {
 | 
					func (gui *Gui) loadAddressBook() {
 | 
				
			||||||
	view := gui.getObjectByName("infoView")
 | 
						view := gui.getObjectByName("infoView")
 | 
				
			||||||
	nameReg := gui.pipe.World().Config().Get("NameReg")
 | 
						nameReg := gui.pipe.World().Config().Get("NameReg")
 | 
				
			||||||
@@ -385,11 +380,11 @@ func (self *Gui) getObjectByName(objectName string) qml.Object {
 | 
				
			|||||||
func (gui *Gui) update() {
 | 
					func (gui *Gui) update() {
 | 
				
			||||||
	// We have to wait for qml to be done loading all the windows.
 | 
						// We have to wait for qml to be done loading all the windows.
 | 
				
			||||||
	for !gui.qmlDone {
 | 
						for !gui.qmlDone {
 | 
				
			||||||
		time.Sleep(500 * time.Millisecond)
 | 
							time.Sleep(300 * time.Millisecond)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	go func() {
 | 
						go func() {
 | 
				
			||||||
		go gui.setInitialChainManager()
 | 
							go gui.setInitialChain(false)
 | 
				
			||||||
		gui.loadAddressBook()
 | 
							gui.loadAddressBook()
 | 
				
			||||||
		gui.loadMergedMiningOptions()
 | 
							gui.loadMergedMiningOptions()
 | 
				
			||||||
		gui.setPeerInfo()
 | 
							gui.setPeerInfo()
 | 
				
			||||||
@@ -493,14 +488,7 @@ func (gui *Gui) update() {
 | 
				
			|||||||
			case <-generalUpdateTicker.C:
 | 
								case <-generalUpdateTicker.C:
 | 
				
			||||||
				statusText := "#" + gui.eth.ChainManager().CurrentBlock.Number.String()
 | 
									statusText := "#" + gui.eth.ChainManager().CurrentBlock.Number.String()
 | 
				
			||||||
				lastBlockLabel.Set("text", statusText)
 | 
									lastBlockLabel.Set("text", statusText)
 | 
				
			||||||
 | 
					 | 
				
			||||||
				miningLabel.Set("text", "Mining @ "+strconv.FormatInt(gui.uiLib.miner.GetPow().GetHashrate(), 10)+"Khash")
 | 
									miningLabel.Set("text", "Mining @ "+strconv.FormatInt(gui.uiLib.miner.GetPow().GetHashrate(), 10)+"Khash")
 | 
				
			||||||
				/*
 | 
					 | 
				
			||||||
					if gui.miner != nil {
 | 
					 | 
				
			||||||
						pow := gui.miner.GetPow()
 | 
					 | 
				
			||||||
						miningLabel.Set("text", "Mining @ "+strconv.FormatInt(pow.GetHashrate(), 10)+"Khash")
 | 
					 | 
				
			||||||
					}
 | 
					 | 
				
			||||||
				*/
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
				blockLength := gui.eth.BlockPool().BlocksProcessed
 | 
									blockLength := gui.eth.BlockPool().BlocksProcessed
 | 
				
			||||||
				chainLength := gui.eth.BlockPool().ChainLength
 | 
									chainLength := gui.eth.BlockPool().ChainLength
 | 
				
			||||||
@@ -510,7 +498,6 @@ func (gui *Gui) update() {
 | 
				
			|||||||
					dlWidget         = gui.win.Root().ObjectByName("downloadIndicator")
 | 
										dlWidget         = gui.win.Root().ObjectByName("downloadIndicator")
 | 
				
			||||||
					dlLabel          = gui.win.Root().ObjectByName("downloadLabel")
 | 
										dlLabel          = gui.win.Root().ObjectByName("downloadLabel")
 | 
				
			||||||
				)
 | 
									)
 | 
				
			||||||
 | 
					 | 
				
			||||||
				dlWidget.Set("value", pct)
 | 
									dlWidget.Set("value", pct)
 | 
				
			||||||
				dlLabel.Set("text", fmt.Sprintf("%d / %d", blockLength, chainLength))
 | 
									dlLabel.Set("text", fmt.Sprintf("%d / %d", blockLength, chainLength))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -549,7 +536,6 @@ NumGC:      %d
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
func (gui *Gui) setPeerInfo() {
 | 
					func (gui *Gui) setPeerInfo() {
 | 
				
			||||||
	gui.win.Root().Call("setPeers", fmt.Sprintf("%d / %d", gui.eth.PeerCount(), gui.eth.MaxPeers))
 | 
						gui.win.Root().Call("setPeers", fmt.Sprintf("%d / %d", gui.eth.PeerCount(), gui.eth.MaxPeers))
 | 
				
			||||||
 | 
					 | 
				
			||||||
	gui.win.Root().Call("resetPeers")
 | 
						gui.win.Root().Call("resetPeers")
 | 
				
			||||||
	for _, peer := range gui.pipe.Peers() {
 | 
						for _, peer := range gui.pipe.Peers() {
 | 
				
			||||||
		gui.win.Root().Call("addPeer", peer)
 | 
							gui.win.Root().Call("addPeer", peer)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -18,8 +18,10 @@
 | 
				
			|||||||
package main
 | 
					package main
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import (
 | 
					import (
 | 
				
			||||||
 | 
						"fmt"
 | 
				
			||||||
	"os"
 | 
						"os"
 | 
				
			||||||
	"runtime"
 | 
						"runtime"
 | 
				
			||||||
 | 
						"time"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	"github.com/ethereum/go-ethereum"
 | 
						"github.com/ethereum/go-ethereum"
 | 
				
			||||||
	"github.com/ethereum/go-ethereum/cmd/utils"
 | 
						"github.com/ethereum/go-ethereum/cmd/utils"
 | 
				
			||||||
@@ -38,6 +40,7 @@ func run() error {
 | 
				
			|||||||
	// precedence: code-internal flag default < config file < environment variables < command line
 | 
						// precedence: code-internal flag default < config file < environment variables < command line
 | 
				
			||||||
	Init() // parsing command line
 | 
						Init() // parsing command line
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						tstart := time.Now()
 | 
				
			||||||
	config := utils.InitConfig(VmType, ConfigFile, Datadir, "ETH")
 | 
						config := utils.InitConfig(VmType, ConfigFile, Datadir, "ETH")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	utils.InitDataDir(Datadir)
 | 
						utils.InitDataDir(Datadir)
 | 
				
			||||||
@@ -51,14 +54,11 @@ func run() error {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
		os.Exit(1)
 | 
							os.Exit(1)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					 | 
				
			||||||
	keyManager := utils.NewKeyManager(KeyStore, Datadir, db)
 | 
						keyManager := utils.NewKeyManager(KeyStore, Datadir, db)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// create, import, export keys
 | 
						// create, import, export keys
 | 
				
			||||||
	utils.KeyTasks(keyManager, KeyRing, GenAddr, SecretFile, ExportDir, NonInteractive)
 | 
						utils.KeyTasks(keyManager, KeyRing, GenAddr, SecretFile, ExportDir, NonInteractive)
 | 
				
			||||||
 | 
					 | 
				
			||||||
	clientIdentity := utils.NewClientIdentity(ClientIdentifier, Version, Identifier)
 | 
						clientIdentity := utils.NewClientIdentity(ClientIdentifier, Version, Identifier)
 | 
				
			||||||
 | 
					 | 
				
			||||||
	ethereum = utils.NewEthereum(db, clientIdentity, keyManager, UseUPnP, OutboundPort, MaxPeer)
 | 
						ethereum = utils.NewEthereum(db, clientIdentity, keyManager, UseUPnP, OutboundPort, MaxPeer)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if ShowGenesis {
 | 
						if ShowGenesis {
 | 
				
			||||||
@@ -75,7 +75,10 @@ func run() error {
 | 
				
			|||||||
	utils.RegisterInterrupt(func(os.Signal) {
 | 
						utils.RegisterInterrupt(func(os.Signal) {
 | 
				
			||||||
		gui.Stop()
 | 
							gui.Stop()
 | 
				
			||||||
	})
 | 
						})
 | 
				
			||||||
	utils.StartEthereum(ethereum, UseSeed)
 | 
						go utils.StartEthereum(ethereum, UseSeed)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						fmt.Println("ETH stack took", time.Since(tstart))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// gui blocks the main thread
 | 
						// gui blocks the main thread
 | 
				
			||||||
	gui.Start(AssetPath)
 | 
						gui.Start(AssetPath)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user